Je codeert nu al een tijdje, en je bent eindelijk op het punt gekomen dat het begint te klikken. Je begrijpt hoe je klassen maakt, methoden aanroept, de documentatie leest en je code debugt.
Je zwengelt die volgende grote functie er in een mum van tijd uit!
Dan dringt het tot je door: Documentatie! Testen! O mijn god, wat heb ik gedaan!
Je hebt net de “Uitdaging van de Halfgevorderde Programmeur” meegemaakt – je zult er met oefening beter in worden, maar er zijn een paar dingen die je helpen.
1) Zoek een editor die je bevalt en leer hem gebruiken
Persoonlijk geef ik de voorkeur aan Emacs omdat al mijn tekstbewerking in buffers gebeurt in plaats van in vensters, zodat alles altijd gemakkelijk te vinden is, ongeacht aan welk bestand ik werk of waar ik me in dat bestand bevind. Je hoeft ook niet veel tijd te besteden aan het leren van je editor als je iets in deeltijd doet – probeer er om de paar dagen een uur in te steken tot je er echt vertrouwd mee bent. Als Emacs niet je ding is, geen probleem – er zijn veel goede opties in de *nix wereld, maar als je op Windows zit stel ik Sublime Text voor.
2) Word goed met je debugger
Dit is een van de dingen die vooral anders zijn aan programmeren – het is niet gewoon wat woorden intikken en een resultaat krijgen. Het is kunnen volgen wat er gebeurt vanaf het moment dat de computer het programma begint uit te voeren tot het je uiteindelijk die waarde of dat voorwerp teruggeeft dat je zocht. Hoewel dit oefening vergt, helpt het gebruik van een debugger het proces te bespoedigen, omdat je daarmee vooruit kunt springen naar waar je maar wilt en op elk moment kunt bekijken welk deel van je code je interesseert.
3) Lees! Veel!
Lees vooral boeken of websites/blogs van mensen die al een tijdje meelopen, en lees ook buiten het programmeren. Deze mensen hebben veel verschillende manieren gezien om problemen op te lossen, veel interessante code geschreven door andere programmeurs in verschillende stijlen. Je leert er een heleboel handige trucjes van die je helpen je werk efficiënter te doen.
4) Raak betrokken bij open source projecten
Open bron is belangrijk omdat het een plek is waar beginners terecht kunnen en kunnen beginnen te leren hoe projecten in de echte wereld werken: Ze zijn rommelig! Er zijn meerdere medewerkers die de dingen allemaal net iets anders doen! Mensen kibbelen op mailinglijsten! Software wordt onder verschillende licenties uitgebracht om verschillende redenen! Dit is niet de academische ivoren toren – dit is programmeren op zijn best.
Als je niet weet waar je moet beginnen, probeer dan wat kleinere problemen bij gevestigde projecten aan te pakken. Er worden Open Source vrijdagen georganiseerd door GitHub om beginners te helpen betrokken te raken, en je kunt altijd kijken wat voor problemen mensen op het project zelf hebben geopend als er een actieve gemeenschap is.
5) Leer hoe je profiling tools gebruikt
Profiling helpt je uit te zoeken waar je programma zijn tijd aan besteedt, zodat je je kunt concentreren op het sneller maken ervan zonder al te veel moeite te verspillen. Zelfs als je net met programmeren begint, is de kans groot dat er al een profiler op je computer geïnstalleerd is – probeer er een te zoeken met de naam “time” of iets dergelijks. Als al het andere mislukt, Google dan eens rond of iemand er een geschreven heeft in je voorkeurstaal en plaats een link in de commentaren!
6) Oefen met het schrijven van leesbare code
In welke taal je ook schrijft, houd de stijl zo consequent mogelijk als je gaat. Dat betekent dat je overal spaties en accolades omheen gebruikt, en het betekent dat je een opmaakconventie kiest (bv. whitespace-significant of niet) en je daar dan de hele tijd zonder uitzondering aan houdt. Consistentie is gemakkelijker te begrijpen voor mensen die je code lezen – ze hoeven niet elke keer dat ze een bestand openen uit te zoeken hoe het er uit moet zien!