5 december 2022
Een gratis website
Het is Sinterklaasavond. Surprises vind ik altijd het leukste, omdat ze zelfgemaakt zijn. Er zit zichtbaar tijd en aandacht in. Ik hielp mijn zoon dit jaar met het maken van zijn surprise. Samen maakten we een viool in de schuur van opa. We zaagden en timmerden en uiteindelijk hadden we warempel iets dat leek op een viool. We waren allebei heel blij en trots. Zelf dingen maken… heerlijk!
In mijn dagelijkse leven maak ik ook de hele dag dingen. Ik bouw websites. Dat doe ik al zeker 15 jaar, dag-in dag-uit en daar geniet ik nog altijd enorm van. Dat moment dat het af is is het mooiste… dat je ernaar kijkt en tevreden bent. En dat je dan denkt: ja, dat heb ik mooi gemaakt! Dat is puur geluk.
Ik maakte altijd Wordpress-websites, maar die bestaan uit duizenden files met allerlei afhankelijkheden. Om een Wordpress website te kunnen bouwen (en hosten) moet je bovendien behoorlijk wat van databases en hosting weten. Daarom besloot ik op een gegeven moment over te stappen op iets simpelers. Dat betekende echter wel dat ik ook iets nieuws moest gaan leren. Terwijl ik dat leerde merkte ik dat ik een enorme behoefte heb om alles wat ik leer te delen. Misschien dat ik daarmee anderen wil inspireren… maar het kan ook zijn dat ik het wil delen om ervoor te zorgen dat ik het zelf niet vergeet… of simpelweg om er erkenning voor te krijgen.
Hoe dan ook… het heeft ertoe geleid dat ik twee websites heb opgezet: jekyllcodex.org en hugocodex.org. Het zijn vergelijkbare websites waarop ik uitleg hoe je (mijns inziens) het beste een website kunt bouwen met repsectievelijk ‘Jekyll’ en ‘Hugo’. Jekyll en Hugo zijn twee website ‘generatoren’ die ieder gebouwd zijn in hun eigen programmeertaal. Voor Jekyll is dat ‘Ruby’ en voor Hugo is dat ‘Go’. Ik heb in beide programmeertalen echter nog nooit een letter geprogrammeerd, dus weet dat dat geen vereiste is. De output is simpele HTML en CSS en daar was het me om te doen. Om deze te genereren gebruiken Jekyll en Hugo ieder een andere template-taal. Daar ben ik wel zeer bedreven in. In het geval van Jekyll is dat ‘Liquid’ en in het geval van Hugo is dat de ‘Go templating language’. Het aanleren van deze laatste taal ging bepaald niet vanzelf, maar ik kan er inmiddels aardig mee uit de voeten.
Recent keek ik eens terug op al deze bedrijvigheid en ik realiseerde me dat ik vooral bezig ben geweest om mijn eigen leerproces te faciliteren. Ik heb er op een vrij succesvolle manier voor gezorgd dat ik gemotiveerd bleef. Natuurlijk zijn er flink wat programmeurs die mijn code in de loop der jaren hebben (her)gebruikt, maar die zijn toch waarschijnlijk op een paar handen te tellen. Al met al misschien een zinnige exercitie, maar het had niet zoveel te maken met dat plezier in die schuur. Het was echt een stuk ingewikkelder dan gewoon een zaag pakken en ergens beginnen…
Toen liep ik tegen een project aan van Adam Newbold. Hij had een website gemaakt bestaande uit één enkele CSS file en één enkele HTML file. Geen Ruby, Go of ingewikkelde templating taal; geen frameworks, geen javascript of andere ingewikkelde dingen… gewoon twee files. Je kon de HTML file in je browser slepen en dan deed de website het. Hij had meerdere pagina’s (althans, zo leek het) en bovendien kon je hem gratis hosten op Github. Gewoon de files naar je browser slepen in Github en je had een website op je eigen URL! Hoe langer ik erover nadacht hoe enthousiaster ik werd.
Direct zag ik ook de parallel met het knutselen in de schuur. Dat stuk hout en die zaag, dat waren deze twee files. Ik had een interview gegeven over ‘Artisanal web development’ bij CloudCannon… maar nu pas viel het kwartje. DIT was het ultieme vakmanschap. Dit is met een beitel een blok hout te lijf gaan, zonder powertools en er dan gewoon op het oog iets moois van maken. Dit was de kracht van de eenvoud. Dit was de enso van het web development.
Iedereen kan een surprise maken en hem vervolgens een likje verf geven. Zo kan ook iedereen ook een HTML file schrijven en er een paar kleurtjes aan toekennen (via CSS). Natuurlijk heb je voor het laatste wel een beetje basiskennis HTML nodig, maar dat kun je in een dag of twee leren.
Ik hoor je denken: je kunt ook gewoon een website ‘bij elkaar klikken’ die iemand anders voor je heeft gebouwd (bijvoorbeeld in Wordpress). Dat is waar, maar dat is zeker niet gratis en het heeft niets met die schuur te maken. Bovendien heb je geen idee hoe het werkt, dus als iets niet goed werkt of stuk gaat kun je hem niet repareren.
Nee… ik wil mensen laten zien hoe ze, net als Adam, zelf een website kunnen maken. Niet zoals ik eerder deed, op die technische websites voor programmeurs, maar meer zoals met die surprise in de schuur, voor niet-programmeurs. Ik wil inspireren en laten zien wat er allemaal kan met slechts twee files en met alleen HTML en CSS. Dat is dan ook mijn nieuwe missie voor 2023… en het begint hier. Op deze pagina staat een remake van de website/homepage van Matt Mullenweg (de baas van Wordpress)… tevens een knipoog naar hoe het (voor mij) allemaal begon.
() Joost van der Schee