- Er det lov å være lei av React i 2019?

Jørgen er skuffa over 2019, og lei av både Windows og React. Men 2020 tror han skal bli bedre.

Fagredaktør Jørgen Jacobsen i kode24 vil kaste Windows-PC-en tilbake på søpleskrenten. 📸: Privat
Fagredaktør Jørgen Jacobsen i kode24 vil kaste Windows-PC-en tilbake på søpleskrenten. 📸: Privat Vis mer

For et års tid siden satt og og skrev mine kodeplaner for 2019. På slutten av året må jeg innrømme at jeg er litt skuffa.

Jeg har ikke kodet noe i Python, ikke bygd noen Vue-applikasjon, ikke bygd en Kotlin- eller Switch-app, ei heller satt opp noe som helst i Azure.

Jeg har "safet" med MongoDB-base fra mlab.com, jQuery, og ikke minst Create-React-App; akkurat som i 2018. Jeg forstår fortsatt ikke hvordan Webpack funker. Og vet du hva? Jeg har egentlig ikke dårlig samvittighet for det.

Fordi jeg synes kode24 fungerer ganske bra. Og jeg tror dere lesere blåser en lang marsj i om det er jQuery eller en next-level React-applikasjon med et fancy hooks-basert mønster og Apollo GraphQL som tegner artikkelen. Så lenge brukeropplevelsen er god.

Når det er sagt, så har jeg lyst til å bli bedre i 2020, så her er min evaluering av året som har gått.

Nei takk, Windows

Det er litt rart å tenke på, men jeg har tilbrakt nesten hele 2019 med Windows 10 som mitt utviklermiljø. Tanken var at jeg skulle teste å kjøre samme oppsett som kode24-redaktør Ole Petter, som har brukt en Windows-PC som sin arbeidsstasjon i hele sin karriere, for å gjøre det lettere for oss å kode sammen.

Jeg har kjørt Mac OS som mitt miljø tilsvarende lenge, men jeg var nysgjerrig på hva den tiende utgaven av vinduene kunne tilby.

Dermed ble jobb-Mac-en min liggende hjemme, og gaming-PC-en min, som jeg aldri brukte, flytta inn på Hasle.

I starten gikk det faktisk ganske bra. Og Windows har noen klare fordeler: Explorer er overlegen Finder, spesielt når man jobber med stier og liker å kopiere og lime dem. Operativsystemet føles raskere og mer minimalistisk enn Mac OS. Windows har innebygd sidestilling av vinduer, og Adobe-pakka fungere om mulig enda bedre enn på rivalen fra Apple.

Til årets påskekrim samarbeidet vi om nettsiden Porsgrunn.zone, som vi bygde i Gatsby, med statiske nettsider. Det gikk strålende.

«Hvert jæskla oppsett tar utgangspunkt i at du kjører Mac OS.»

Men så kom problemene krypende. Forhåndsvisning av Photoshop-filer for eksempel, det har ikke Windows. Den klarer ikke engang å åpne flere PSD-filer samtidig ved å høyreklikke. Prøver du å dra filene ned på ikonet i menyen, slik du er vant til fra Mac OS, ja da blir de festet et sted i limbo.

Og skal du lese et tutorial? Lykke til! Hvert jæskla oppsett tar utgangspunkt i at du kjører Mac OS. Med mindre du skal kode .net da, som jeg kanskje burde gjort? Det får bli en annen gang. Jeg hører gode ting om Blazor.

For ikke å snakke om Git. Git er et salig rot i Windows. Hvert fall hvis du liker å bruke SSH-nøkler. og du må ikke finne på å veksle mellom Powershell og terminalen Git tilbyr. Da ber du om forviklinger.

Skal du stoppe en Node-prosess fra Powershell, sier du? 🤷, sier jeg.

Legger man til Windows sitt hårreisende elendige kontrollpanel, som er en slags blanding av ny og gammel design sauset sammen til en uspiselig lapskaus av bark og gråstein, er det fort gjort å få litt hjemlengsel til Apple sin trygge havn. Windows-brukere har visstnok utviklet en evne til å overse alt rælet i Windows, men det klarer ikke jeg.

Når hvert bidige kort i maskinen din i tillegg insisterer på å ha sitt eget program for innstillinger som du må grave frem - Nvidia-kortet ba meg opprette en konto for å endre én innstilling - ja, da blir jeg ekstra furten.

Utover høsten gled jeg sakte tilbake til gode gamle Mac OS, og når det ble tid for å lage årets kodekalender, tok jeg Mac-en med på jobb, røsket ut Windows-maskinen fra min eksterne monitor og storkoste meg med å være tilbake.

Ja, Mac OS har sterke meninger. Ja, du må følge dem for å ha det fint. Men da, ja, da har du tidenes utviklermiljø for webutvikling.

Jeg savner Angular, litt

Er det lov å si at jeg har blitt litt lei av React i 2019? Det føles som å banne i kjerka, fordi React er et av de kjæreste rammeverkene for utviklere om dagen.

Jeg kom ganske sent til React-toget. På starten av 2017 holdt jeg på med Angular og et kronglete Grunt-byggesteg som jeg hadde grodd fast i. For bare to år siden skrev jeg omsider min første React-applikasjon.

React sin enkle komponent-strategi med JSX-templates føltes lynraskt å utvikle på, sett i forhold til Angulars overkompliserte komponenter og rotete templates. Ikke minst den fantastiske Create-React-App med hot-reloading og pakking av filer.

Men, etter hvert som jeg bygde mer avanserte ting begynte irritasjonene å melde seg. For hva skal man bruke for HTTP-requests? Er det Axios? Fetch? Apollo og Graphql, kanskje?

Hva med tilstandsstyring? Redux? MobX? Eller en kombinasjon av Hooks og Context, eller det siste som står i en tweet fra Dan Abramov?

Må jeg overvåke twitteren til Kent C. Dodds eller alle i Bekk for å vite om jeg ikke driter meg ut med noe utdatert rammeverk som er totalt ukult? Kan jeg fortsatt bruke React-Router? Styled-Components?

«Jeg savner et skikkelig massivt rammeverk, jeg, med sterke meninger.»

Jeg savner et skikkelig massivt rammeverk, jeg, med sterke meninger. Hvor jeg kan fokusere på å bygge idéen jeg har i hodet - som tross alt er det eneste jeg vil - istedenfor å bruke ukesvis på å teste og bytte mellom hauger av bibliotek og rammeverk.

Gjør det meg til en dårlig utvikler? Kanskje. Men det driter jeg egentlig i, kjenner jeg.

For jeg vil bare ha fart. Jeg vil ha et rammeverk som lar meg raskest mulig gi noe nytt til brukeren. Derfor savner jeg et rammeverk hvor noen har tatt alle de underliggende valgene for meg, så jeg kan fokusere på å bygge min greie på toppen. Litt som Unity gjør for spillutvikling.

Det gjorde Angular, og det var vakkert.

Men jeg liker jo enkelheten til React bedre da, det skal sies. Og jeg liker følelsen av å være nærmere vanlig JavaScript, selv om React er på vei til å utvikle sitt eget stammespråk på lik linje med Angular.

Og tro det eller ei, Angular er ikke dødt, langt der i fra. Angular 2 sitt offisielle community på Reddit har nesten 40.000 medlemmer. Så kanskje jeg burde gi det en sjanse til? Jeg skal hvert fall ta en titt i 2020, tror jeg.

Og så kommer jeg sikkert tilbake til React, fordi det er jo det alle bruker.

Bedre brukeropplevelse

Så nå sitter jeg her, tilbake i Mac OS, med React som rammeverk. Hva kan jeg gjøre for at 2020 skal bli et mer tilfredstillende kodeår?

Jeg vet at jeg må leke mer med Next.js. Helt ærlig føles det som den mest fornuftige utviklingen av React om dagen.

Men det jeg virkelig har lyst til i 2020, er å finne ut av hvordan jeg kan gi dere lesere en enda bedre brukeropplevelse på kode24. Hvorfor skal jeg bruke året på å refaktorere kode mellom ymse rammeverk, og skrive om CSS og ting og tang uten at dere merker noen forskjell på kode24.no?

Hvorfor skal jeg refaktorere REST-endepunktene våre til GraphQL, og bryte opp hele nettsiden i atom-komponenter, når dere ikke merker filla forskjell?

Jeg savner noe nytt på weben. Hvor er det neste rammeverket som skal revolusjonere brukeropplevelsen slik jQuery, Bootstrap og Single-Page-Applications gjorde tidligere dette tiåret?

En ting jeg skal starte med, er tilgjengelighet. I mine øyne er dette kanskje den klareste knaggen for å gi en bedre opplevelse på nettet i 2020, som alle utviklere bør være opptatt av. Kristoffer Nordstöm skrev en ypperlig artikkel om WCAG 2.1 på kode24 i starten av året, den skal jeg plukke opp igjen.

kode24 har dessuten en elendig Lighthouse-score. Det skal vi fikse i 2020.

Men hva mer kan jeg gjøre for å forbedre brukeropplevelsen? Det vil jeg gjerne høre om fra dere.

Derfor spør jeg: Hvilke planer har du for å gi brukerne dine en bedre web-opplevelse i 2020?