Touch-typing for programmerere: derfor er ikke kodefarten bare WPM

En rask skriver kan fortsatt være en treg koder

Det er en vanlig overraskelse: noen som måler 90+ WPM på vanlige engelske ord, setter seg ned for å skrive kode og føler seg ikke raskere enn en som ligger på 50. Årsaken er enkel — en standard skrivetest består nesten bare av små bokstaver og mellomrom. Kode gjør ikke det. En typisk linje JavaScript eller Python er full av tegn en ordbasert test så vidt berører: hakeparenteser, parenteser, understrek, anførselstegn, likhetstegn, kolon — pluss stadig skifting mellom små og store bokstaver for camelCase, og strekk opp til tallraden for symboler.

Hver av disse er en liten forsinkelse. Gang det med tusenvis av linjer i uken, og det blir et reelt gap mellom «rask skriver» og «rask koder».

Tegnene som faktisk bremser deg

  • Parenteser, hakeparenteser og krøllparenteser — ( ) [ ] { } — ligger i kantene av øverste rad, kronglete for lillefingre som sjelden går dit i vanlig tekst.
  • Shift-tunge symboler — _ = + : " — krever en holdt modifiseringstast, som er en annen bevegelse enn å skrive en vanlig bokstav.
  • camelCase og snake_case — stadig små skift mellom store og små bokstaver (eller strekk etter understrek) som ordbaserte skrivetester aldri trener.
  • Innrykk — to eller fire ledende mellomrom per linje, skrevet riktig og konsekvent, noe et flytende avsnitt med ord aldri ber deg om.

Ingen av disse er vanskelige hver for seg. Det som mangler, er repetisjon — de fleste trener dem rett og slett aldri slik de trente alfabetet på skolen.

Hvorfor en vanlig skrivetest ikke fikser dette

Ordbaserte skrivetester henter fra en bank med vanlige ord — nyttig for rå fart og nøyaktighet, men ordbankene er per design stort sett vanlig tekst med små bokstaver. Du kan maksimere WPM-en på en slik test og likevel fomle hver gang du skriver !== eller strekker deg etter en avsluttende krøllparentes tre linjer lenger ned. Ferdigheten er genuint annerledes, og den trenger sin egen øving.

Å øve spesifikt på kodeskriving

Det er nettopp dette gapet kodeskrivespillet er laget for — det henter ekte JavaScript- og Python-linjer, ikke tilfeldige ord, og det skiller mellom store og små bokstaver og mellomrom, akkurat som en ekte editor. Noen måter å få mest mulig ut av det:

  1. Ikke hopp over innrykket. De ledende mellomrommene er en del av linjen og en del av øvelsen — å skrive dem riktig, hver gang, er halve poenget.
  2. Les før du skriver. Kode har forutsigbare former — en ( betyr nesten alltid at en ) kommer, en { at en } kommer. Å forutse dem kutter ned på småpausene som summerer seg opp.
  3. La lillefingeren lære kantene av tastaturet. Parenteser og symboler klumper seg i ytterkantene av øverste rader; målrettet øving er det som flytter dem fra «lete etter den» til muskelminne.
  4. Øv på begge språk hvis du bruker begge. Pythons kolon-og-innrykk-stil og JavaScripts klamme-og-semikolon-stil trener litt ulike reflekser.

Det bygger på det grunnleggende

Symboløvelser fungerer best oppå solide grunnferdigheter — leter du fortsatt etter bokstavtastene, bør du starte med touch-typing-leksjonene først, inkludert den egne leksjonen for programmerersymboler som dekker krøllparenteser, hakeparenteser og sammenligningsoperatorer spesielt. Når det grunnleggende er automatisk, er kodespesifikk øving det som lukker resten av gapet mellom WPM-scoren din og hvor fort du faktisk føler at du skriver ekte kode.