Wat een besturingssysteem doet
Verschillen die een programmeur merkt
Volg je een handleiding die op de computer van iemand anders is geschreven, dan werkt vroeg of laat een pad, opdracht of installatiestap niet. Dat is ontmoedigend. Veel beginners trekken dan de verkeerde conclusie: dat ze het verkeerde besturingssysteem hebben gekozen en echte programmeurs iets anders gebruiken.
Ze hebben niet verkeerd gekozen, en er bestaat geen besturingssysteem voor de echte programmeur. Wat tussen platforms verschilt, zijn de zichtbare interface en standaardinstellingen. Een paar van die verschillen verklaren de meeste problemen.
Standaardinstellingen verschillen, taken blijven
Een handleiding gaat meestal uit van de zichtbare standaardinstellingen van de schrijver. Vensternamen, menuplaatsen, schrijfwijzen voor bestandslocaties, installatiestappen en getypte opdrachten kunnen verschillen, ook als twee computers hetzelfde werk proberen te doen. Namen als PowerShell, zsh en Bash zijn nuttige aanwijzingen over het platform, geen drie verschillende soorten computergebruik. Hoofdstuk 5 introduceert de shell-laag uitgebreider.
Zie zo’n verschil als een aanwijzing over de instructie, niet als een oordeel over je computer. Zoek uit welk platform en hulpmiddel de schrijver gebruikte en zoek vervolgens de overeenkomstige instructie voor jouw systeem. Een later hoofdstuk behandelt de verschillen op de opdrachtregel zodra je de gedeelde ideeën erachter kent.
Een op Windows geschreven handleiding zegt dat je een genoemd Windows-hulpmiddel moet openen. Je Mac heeft geen hulpmiddel met die naam. Wat is de beste eerste conclusie?
Eisen tellen zwaarder dan overgeleverde wijsheden
Sommige projecten vereisen wel een bepaald besturingssysteem, hulpmiddel of programma. Het meeste programmeerwerk voor beginners niet. De nuttige vraag is of je beoogde project een eis heeft waaraan je huidige inrichting niet kan voldoen.
Dat brengt ons bij de vraag waar dit hoofdstuk steeds omheen draaide. Wanneer is een platformverschil een goede reden om van leercomputer te veranderen?