Jakten på det perfekte rammeverk: – Det er en evig runddans!

– Samtidig som jeg sparer tid ved å kode på toppen av en haug med abstraksjonslag, savner jeg å lage litt mer fra bunnen av, skriver Kurt Lekanger i ukens nyhetsbrev.

Så lite tid, så mange rammeverk! Kurt i kode24 liker å kode, men noen ganger hadde det vært deilig å frigjøre seg litt fra rammeverkene, synes han. 📸: Ole Petter Baugerød Stokke
Så lite tid, så mange rammeverk! Kurt i kode24 liker å kode, men noen ganger hadde det vært deilig å frigjøre seg litt fra rammeverkene, synes han. 📸: Ole Petter Baugerød Stokke Vis mer

I en moderne applikasjon skrevet i for eksempel React, er det så mange abstraksjonslag at få utviklere har full oversikt over alt som foregår "under panseret".

Takket være React og metarammeverk som Next.js kan utviklere fokusere på funksjonalitet og UI, mens rammeverket håndterer tilstand, ruting og kommunikasjon med eksterne API-er. Legger du til Tailwind og et UI-bibliotek som Radix UI eller shadcn/ui blir det også enkelt å lage visuelt tiltalende applikasjoner uten du trenger å være utdannet designer.

Jeg elsker hvordan moderne rammeverk og biblioteker lar meg konsentrere meg om produktet jeg skal lage – og hvordan de gjør det mulig for meg å komme mye raskere i mål.

I likhet med gjengen som nylig startet et nettverk for sideprosjekter, har også jeg en masse sideprosjekter på gang. Noen av sideprosjektene håper jeg å tjene noen kroner på, og for disse velger jeg alltid de løsningene som tar meg raskest mulig til målet med et best mulig sluttresultat – jeg velger "kjedelig teknologi".

Men samtidig som jeg sitter og koder på toppen av en haug med abstraksjonslag for å komme fort i mål, savner jeg det å lage noe fra bunnen av. Eller i hvert fall litt mer fra bunnen av.

Jeg hører stadig oftere utviklere snakke om at de synes React (og Next.js) er "over-engineered". Det er rett og slett for mye "magi" som utvikleren ikke enkelt har kontroll på – for eksempel relatert til caching. Det er fint når det fungerer – når det ikke fungerer kan det være et sant helvete å finne årsaken til problemene.

«Det skulle ikke forbause meg om vi om et par år klager over at Astro har blitt "overengineered", slik noen klager over at React og Next.js er det i dag.»

Og det fører kanskje til at vi får nye rammeverk og nye måter å løse ting på. Og at funksjonalitet man tidligere måtte ha rammeverk til – som Signals – finner veien inn i standard JavaScript.

Denne uken har det vært en slags "lanseringsuke" for Astro, der de blant annet annonserte et tettere samarbeid med Netlify – som blir offisiell deployment-partner.

Jeg tror utvikleres stadige søken etter det perfekte rammeverk, og kanskje noe som er litt mindre komplekst enn Next.js, er noe av grunnen til at Astro-rammeverket har vokst kraftig i popularitet de siste tre årene.

Men nå kommer altså nyheter om at også Astro vil gjøre litt mer på serveren, og noe på klienten – med "Server Islands". Noen av idéene minner kanskje om ting vi har sett før i for eksempel React og Next.js.

Det skulle ikke forbause meg om vi om et par år klager over at det er Astro som er "overengineered", slik noen klager over at React og Next.js er det i dag.

Og så prøver noen å finne på noe enda enklere igjen. Det er en evig runddans!

Ukas beste saker på kode24:

📚 Astro og Netlify går sammen: – Eksepsjonelt rammeverk

Netlify blir offisiell "deployment partner" og spytter inn penger i Astro-rammeverket.

🧤 GitLab kan få nye eiere om få uker

Sykdom kan bidra til at toppsjefen i GitLab tar valget om å selge seg ut, antyder analytiker. Han peker på to tungvektere som kan være interessert i å kjøpe.

🍹 Aslak lagde app for å bli kvitt Facebook: «Men kommer meg ikke helt ut!»

– Events var et produkt jeg følte det burde finnes et uavhengig alternativ til, sier utvikleren Aslak Hollund, som nå har gitt ut "Shera".

🥼 Supermaven: Hevder denne kodeassistenten er både raskere og bedre enn Copilot

Vi har prøvd å bytte ut GitHub Copilot med Supermaven – som skal være verdens første med et kontekstvindu på 1 million tokens.

🥤 Advarer om aldrende open source-miljø: – Trenger våkne øyne og utviklere med overskudd

Konferanser som tidligere var en vei inn til open source-miljøet, er nå først og fremst for de erfarne, mener Steven J. Vaughan.

🍒 Utviklere mener de kaster bort tid – uenige med sjefene om løsning

En ny rapport fra Atlassian viser at utviklere mister mye tid på grunn av ineffektivitet i organisasjonen, men sjefene har helt andre løsninger på problemet enn utviklerne.

📒 Ny rapport om kostnad og nytte ved AI: – Vil ta tid før vi ser store gevinster

I en ny rapport problematiserer investeringsbanken Goldman Sachs kostnad og nytte av generativ AI. – Vi trenger realistisk vurdering av AI-relaterte forventninger, sier Morten Goodwin om funnene.

🍄 Stadig flere etterspør utviklere som kan Azure

Mer interesse for Azure, økt etterspørsel etter fullstack og en potensiell oppsving i horisonten. Det er tegnene Witted ser etter første halvår av 2024.

💮 Lagde gratis båtapp i Flutter: – Var drit lei all masingen

Nils Larsgård liker å følge med på båter langs norskekysten, men var lei mas om oppgraderinger fra MarineTraffic. Da lagde han like godt sin egen app.

God helg

Før vi tar helg, har jeg en aldri så liten innrømmelse: Jeg savner å kode nærmere jernet – for å bruke et uttrykk de som koder nærme jernet bruker . Eller gjør de egentlig det? Jeg ville i hvert fall sagt det, hvis jeg hadde kodet nærme jernet.

Ikke bare "flytte rundt på noen piksler med CSS" som arrogante "ekte programmerere" ville sagt. Men den "gode, gamle" kodingen der du faktisk måtte skjønne hvordan en prosessor fungerte for å kunne lage noe fornuftig. Sa jeg Commodore 64?!

Samtidig som jeg sitter og lager ting i Next.js som takket være andres innsats – de som har laget UI-bibliotekene – ser bedre ut enn noe jeg kunne laget selv, så husker jeg godt hvor moro det var å kode på noe litt mer lavnivå.

Jeg merker jeg blir misunnelig på utviklere som får lov til å sitte og kode i C++ for å lage styringssystemene til pantemaskiner eller andre ting. Eller lage simulatorer for CPU-er! Om jeg er smart nok til å drive med det, vet jeg ikke – men gøy virker det i hvert fall.

Jeg tror rett og slett det er på tide med noen nye sideprosjekter. Kanskje jeg må lære meg Rust – for eksempel via Googles gratis Rust-kurs? Kjøpe meg noen duppeditter jeg kan programmere?

Forslag til morsomme hobbyprosjekter jeg kan drive med i helgene mottas med takk!

God helg!
– Kurt 🤓