What counts as boring? That’s a little tricky. “Boring” should not be conflated with “bad.” There is technology out there that is both boring and bad. You should not use any of that. But there are many choices of technology that are boring and good, or at least good enough. MySQL is boring. Postgres is boring. PHP is boring. Python is boring. Memcached is boring. Squid is boring. Cron is boring.
Jag kommer på mig själv med att prata om "boring tech" ganska ofta, särskilt när jag sitter i samtal med kollegor som hittar något nytt och skinande som vore roligt att testa. Den är från 2015, men är verkligen otroligt relevant.
T ex så tar den upp konceptet med Innovation tokens. Den pratar även om unknowns, och unknown unknowns.
When choosing technology, you have both known unknowns and unknown unknowns.
A known unknown is something like: we don’t know what happens when this database hits 100% CPU.
An unknown unknown is something like: geez it didn’t even occur to us that writing stats would cause GC pauses.
Även denna tankelek och prov på kreativitet är värd att bokmärka artikeln för, och diskutera med sitt team.
One of the most worthwhile exercises I recommend here is to consider how you would solve your immediate problem without adding anything new. First, posing this question should detect the situation where the “problem” is that someone really wants to use the technology. If that is the case, you should immediately abort.
It can be amazing how far a small set of technology choices can go. The answer to this question in practice is almost never “we can’t do it,” it’s usually just somewhere on the spectrum of “well, we could do it, but it would be too hard”. If you think you can’t accomplish your goals with what you’ve got now, you are probably just not thinking creatively enough.
The problem with modern web dev summed up in a tweet:
The problem isn't frameworks themselves, but the fervent euphoria around them, where a privileged majority gets to say "this is a best practice, learn it", while ignoring the unsustainable burnout that sort of churn invites.
En tråd som belyser något jag själv känt, men haft svårt att sätta orden på: att det faktiskt kostar något att försöka hänga med på frameworks.
Jag har likt @malchata också rätt många år i yrket, och har flera gånger investerat massor av tid och ork på att lära mig något - bara för att bli tvungen att helt kasta bort kunskaperna och ersätta dem med nya.
Det jag har kommit att eftersträva, och även råda andra att göra, är att ställa frågan Vad gör X som jag inte redan har i verktygslådan? X är i detta fall
ett nytt ramverk,
ett nytt bibliotek,
Ett nytt API,
En ny paradigm,
ett nytt programmeringsspråk eller
En vidareutbyggnad/återupptäckelse av något av ovantående.
En annan viktig fråga att ställa sig är Är det möjligt att lösa problem/behov Y utan att introducera något nytt, och hur svårt är det i så fall? Om X inte har ett tydligt övertag eller glasklar fördel, så är det förmodligen inte värt besväret.
En blandning av magkänsla, fingertoppskänsla och omvärldsbevakning gör att jag avfärdar en majoritet av alla X som trendar. Jag lutar mig tillbaka, iakttar vad som händer och är sällan först på bollen på något - även om jag gärna bekantar mig med X rätt tidigt, så undviker jag att försöka göra riktiga saker med X.
Några exempel.
Saker jag ägnat tusentals timmar åt, som inte längre är relevant: PHP4-5, ASP, XHTML, tabellbaserad layout, diverse Google-API:er, CSS sprites, CSS sliding doors, ActionScript/Flash, buggar i IE6.
Saker jag lärt mig från grunden sedan mycket länge sedan, och fortfarande har fördelar av: Progressive enhancement, Prototyp-arv och scopes i JavaScript, CSS Grids, Elixir/OTP, sass, BEM.
Kunskaper jag vet är på väg bort, men haft stor nytta av att använda mig av: layout med CSS floats, Python 2 unicode, Angular, React+Redux.
Utmärkta exempel på att använda CSS custom properties →
In practice, component definitions have way more styles than just colours. There’s a bunch of box-model properties, maybe a display, and possibly text styling instructions. In any case, a lot of lines of CSS.
If you use custom properties only for those CSS properties that will change you give future CSS developers a much better and quicker insight in how your component works. If the definition uses a custom property that means the property may change in some circumstances. If it uses a fixed definition you know it’s a constant.
CSS custom properties är något som jag själv försöker tillämpa så mycket jag kan i projekt. Denna artikel öppnade några dörrar till och gör det än tydligare att det är skillnad på Sass-variabler och CSS Custom Properties: man ska kombinera dem, inte välja en av dem.
Tyvärr måste vi meddela att även årets upplaga av Gefle Metal Festival måste skjutas upp. På grund av den pågående pandemin är det inte möjligt att genomföra ett stort evenemang i sommar. Viktigast av allt är säkerheten för vår publik, personal och artister och det är något vi aldrig kommer att kompromissa med.
En mörk torsdag, sannerligen. Inom loppet av ett par timmar ställdes ytterligare två festivaler in.
Gefle Metal Festival hade tänkt att växa till en tredagarsfestival, och har haft helt fantastiska line-ups de två år de tvingats ställa in. I årets upplaga hade jag främst sett fram emot Amon Amarth, Mgła och Tribulation.
Min förhoppning är att festivalen orkar ligga på vila ytterligare ett år.
So far 2021 is not developing favourably for live events. Thanks to your support we have managed to stand through the last year and were hoping that this summer we’d welcome you at the Brutal Assault as you all know it. We have worked hard to make the anniversary something special. Unfortunately, the Covid situation has not improved much and therefore we are left with no other choice than to move the 25th edition to next year.
En mörk torsdag. Jag hade hoppats att Brutal Assault skulle ha en chans med tanke på att det ligger senare på sommaren, men verkligheten är för bitter och hård.
Jag har verkligen sett fram emot att få se extremmetal-band spela på ett militärfort från 1800-talet i Tjeckien, i form av en Roadtrip i Europa med Wacken som första stopp, och en hemresa som korsade Polen. I årets upplaga såg jag mest fram emot Evoken, Uada och Winterfylleth.
A genuine problem in tech is that we’ve created a culture where people switch jobs too often to experience the consequences of their product & technical decisions let alone have to fix them. pic.twitter.com/vN100EDlow
En läsvärd tråd på Twitter, som bland mycket annat tar upp en av de främsta anledningarna till att folk byter jobb ofta: Det kommer att ge bäst löneutveckling. Vi har med andra ord ett läge där folk uppmuntras (genom lön) till att skotta massa kod utan att behöva ta långsiktigt ansvar, eftersom de ändå slutar och byter jobb.
Ingen av våra textböcker rekommenderar nedstängning av skolor, idrott, restauranger, kultur eller andra essentiella delar av samhället vid smittoutbrott. Varken WHO eller något enskilt land hade nedstängningar i sina beredskapsplaner före 2020. Kinas auktoritära styre gjorde en brutal lockdown, som märkligt nog spred sig till västvärldens demokratier. I dag vet vi från forskning och officiell statistik att metoden inte skyddar riskgrupperna. Tvärtom orsakar lockdown sjukdom, död och stora skador på ekonomin. År 2020 kommer gå till historien som året då vi begick världshistoriens största misstag för folkhälsan.
Känns inte så lyckat att hela världen tappade huvudet så totalt. Faktaresistensen segrar.