For to uker siden annonserte GitHub at de har tenkt å legge ned teksteditoren Atom. Jeg må innrømme at jeg for noen år siden prøvde å bruke den en stund, men at jeg aldri ble ordentlig venner med den. Ikke alle editorer passer for alle, sånn er det bare.
Men IDE-er er et interessant fenomen som man kan ha mange og sterke meninger om, som Vi versus Emacs.
En måte for å lære mye om IDE-er, og sette pris på deres funksjonalitet, er å hoppe ut av dem, og programmere litt fra en enkel teksteditor.
Jeg kan anbefale enhver utvikler å prøve det ut en gang iblant, si, en gang i året, men kanskje helst utenfor arbeidstid…
Før var den Norges fjerde mest brukte editor. Nå forsvinner den til fordel for VSCode
Back to basics
Siste gang jeg prøvde meg på programmering fra en vanlig teksteditor var da jeg satt på en litt eldre laptop. Jo, jeg skulle bare kjøpt meg en ny en, og det skulle jeg i hvert fall ha gjort før disken røk, men det er en annen historie.
Hardware-messig var den i hvert fall så utdatert at det etter hvert ble vanskelig å kjøre en IDE på den. Men selv om det er tungvint å skrive kode på en laptop der mye går som sirup, var opplevelsen av å bruke en teksteditor istedenfor en IDE egentlig veldig forfriskende.
For det første manglet det selvfølgelig en masse støtte til alle nøkkelordene og basiskonstruksjonene for programmeringsspråket jeg brukte.
Men finnes det en bedre måte å få repetert disse basale tingene på enn nettopp å måtte taste dem tegn for tegn inn i en teksteditor som ikke hjelper deg med oppgaven i det hele tatt?
Samtidig gjenoppdager man hvorfor man egentlig liker programmeringsspråket som man en gang i tiden bestemte seg for å satse på.
Derfor valgte han Emacs over Vim: - Diskuterer ikke editorer, men ideologi
Håndverk krever mer planlegging
Litt avhengig av hvor enkel teksteditoren er, kan det hende at også auto-complete mangler. Og når den mangler, blir man fort overrasket over hvor mye avstemning det egentlig ligger i en gjennomsnittlig klasse basert på felt- og metodenavn.
Dette blir man enda mer konfrontert med når man på et tidspunkt kommer til konklusjonen at man skal endre navnet på en klasse, en metode eller et felt.
Etter et par slike øvelser tenker man seg litt mer om før man navngir ting, for så å innse at det burde man vel egentlig alltid gjøre.
«Det har kanskje gjort det for lett å gi et foreløpig navn til en klasse eller en metode, fordi det er så enkelt å endre på det senere.»
Korrekt navngivning er noe av det vanskeligste som finnes innenfor programmering, og noen ganger kan man lure på om vi ikke har gjort oss selv en bjørnetjeneste ved å gjøre det så lett i IDE-ene å endre navn på ting.
Det har kanskje gjort det for lett til å gi et foreløpig navn til en klasse eller en metode, fordi det er så enkelt å endre på det senere, men så kommer aldri tiden for å sette seg ned og vurdere hva som er et godt navn fordi man bare løper videre til neste programmeringsoppgave. Også i hobbyprosjekter.
Se 35 norske utvikleres favoritt-editorer, plugins, verktøy og tjenester
Kjedelige oppgaver
Av de litt mer kjedelige ting som man må ta tak i selv når man bare bruker en teksteditor, kan jeg nevne formattering og opprydding av ubrukte imports og lignende.
Og kopierer eller flytter man kode fra en klasse til en annen i en IDE, så følger alle nødvendige imports automatisk med, ble jeg litt mer klar over. Akkurat disse tingene er det helt greit å kunne slippe i en IDE, og trenger man ellers ikke repetisjon på i en teksteditor.
Også er det kompilering, og ikke minst inkrementell kompilering og kjøring av enhetstester.
Også her gjelder det å skjerpe seg for å spare mye tid i en teksteditor, og lære seg triksene for å kunne kjøre et begrenset sett med enhetstester når man er i gang med en liten økt på en klasse. Men uten auto-complete og oppslag mot API-ene rett inn i IDE-en, blir det en del feilkompileringer på grunn av argumenter som mangler eller står i feil rekkefølge.
Til gjengjeld er det ikke så dumt å bla litt rundt i dokumentasjonen til basisklassene igjen, og gjenoppdage noen nyttige metoder som man ellers ikke bruker så ofte.
Jetbrains nye Fleet skal være neste generasjons IDE
Som å gå i stedet for buss
Akkurat som man plutselig legger mye mer merke til alle husene, trærne og andre ting ved siden av veien når man en dag går til fots eller sykler istedenfor å ta buss eller kjøre bil, er det en liten gjenoppdagelsesreise å bruke en teksteditor istedenfor en IDE for å programmere.
Det tar ekstra tid, og man skal kanskje helst ikke gjøre denne øvelsen i et stort prosjekt innenfor arbeidstiden.
Men man blir minnet på hvor mye magi det etter hvert har blitt bygget inn i IDE-er, og setter også litt mer pris på den igjen etterpå. Og så er det heller ikke en ulempe at man kan komme litt tettere på programmeringsspråket igjen.
Kanskje en fin øvelse som man kose seg med på en regnværsdag i sommerferien?