Nou, ik ben wel een lezer, maar de meeste technishe boeken die ik lees, wordt ik maar half-weg doorgegaan omdat gewoon zitten en lezen is bijna nooit de bedoeling :) Dan kom je weg met veel stomme feiten over kleine dingen (en dan denken mensen dat je erg slim bent :P), maar niet hoe je Iets Bouwt. Dus voor veel mensen, en zeker mensen zoals jij, zijn de 'cookbooks' en referencies de beste boeken. Of, natuurlijk, vervangen met internets.
Hoe ik goed HTML, CSS, enz had geleerd: veel bouwen. Veel, veel bouwen.
Mijn eerste jaar, moest ik een site bouwen (eerste site ooit) van een domme afbeelding die ik had getekent (ja, toen wist ik echt nix :), duurt ong. 8 uur per dag 5 dagen in de week, maanden lang; en elke andere tag of property was er iets die niet werkte ofzo. Opzoeken. Iets geleerd, verder gaan, tegen een fout gekomen, opzoeken. Lather, rinse, repeat.
Over tijd, als je dit doet, vind je een paar dingen:
- waar je beste infomatie bronnen zijn. Voor mij in het begin was het nog iets gelezen in een paar boeken (ik had een SitePoint book met een CSS reference in de achterkant die ik kon alphabetische opzoeken; Zen of CSS door Molly en Dave Shea hadden voorbeelden van technieken die ik moest her-opzoeken als ik wist dat ik 'm wilde gebruiken), maar werdt steeds meer internet sites.
- hoe je de W3C (en andere) specs leest. Toen ik begonnen was, was alles HTML4, en die specs betekende nix voor mij. Iemand op een forum kwam met een soort uitleg hoe je deze moeten lezen, en daarna heb ik *veel* meer van de specs zelfs geleerd. Waar tags mogen zitten, wat doet user agents default, welke properties mogen ze hebben...
- steeds meer vind je dat je niet de basis dingen vaak opzoeken, maar nieuwere dingen of technieken die je niet veel gebruikt. Als dit gebeurdt, weet je dat je groeit in front-end en op de juiste pad bent.
- dat om over code met mensen online te bespreken is belangrijk, want daar leer je waar je toe moet gaan. Argumenten met andere mensen heeft mijn code erg verandert over de tijd. Je begint zelfs advies over dingen uit te geven aan nieuwere mensen want jij heeft nu ervaring met een bepaalde bug of browser of techniek, dan weet je dat je groeit in front-end en op de juiste pad bent :)
- hoe je debugging tools gebruiken. Van de punten boven leer je sneller wat de mogelijk problemen zijn als je tegen een fout komt, maar zonder debugging skills wordt het te lang om de oorsprong te vinden. Toen ik begonnen was, denk ik dat er geen in-browser debugging tools waren, en ik teste alle javascript met print statements en alle CSS met de 'gooi er een vieze achtergrond kleurtje op alle grote divs' trukjes.
Als laatste raad ook aan wat Edwin heeft gezegt: voor artikelen over technieken, how-to's, tricks, enz zijn er veel front-enders op de twitters die artikelen URLs tweeten. Ook op forums hebben mensen URLs naar bepaalde artikelen geplaatst waar iets was zo goed uitgelegd.