1

Onderwerp: Basiskennis van een frontend developer

In de blogpost over de ideeën van de onderwijscommissie hebben we het over de basiskennis die een webdeveloper nodig heeft. Basisvaardigheden zijn die zaken waarvan we zeker weten dat ze over vijf jaar nog steeds relevant zijn, als een eerstejaars afstudeert. Actionscript is bijvoorbeeld geen basisvaardigheid, maar programmeren wel. Misschien is progressive enhancement een basisvaardigheid? Performance? Ik weet het niet precies, en daar is deze thread voor bedoeld.
Als het mogelijk blijkt te zijn om een aantal échte basisdingen te benoemen, dan is het ook beter mogelijk om samen te werken met de disciplines om ons heen: als we kunnen uitleggen dat het eigenlijk om vier of vijf principes draait bij frontend-development, dan kunnen die wellicht ook behandeld worden in de curricula van designers. En omgekeerd kunnen wij de basisprincipes van design de revue laten passeren. Vandaar deze excercitie. Ik kijk uit naar het resultaat, als dat er al is (-:

2

Re: Basiskennis van een frontend developer

Wat volgens mij noodzakelijk is kennis hebben van html, javascript en css. Daarnaast kennis van de protocollen zoals http, ssl, etc.
Als laatste kennis van client-side architectuur (JS-architectuur, rest, etc).

In mijn opleiding heb ik van html, js en css matig les in gehad en de rest niets. Inmiddels ik deze kennis ingehaald, maar ik zie het wel als een gemis dat ze niet beter zijn behandeld. In de plaats daarvan heb ik les gekregen in ASP en Flash hmm. Niet echt technologieën die het gered hebben.

3 Laatst bewerkt door Sander van Lambalgen (05-11-2013 23:43:01)

Re: Basiskennis van een frontend developer

  • HTTP (iig status codes, caching headers) en REST inderdaad; zijn echt musts die nog te vaak ontbreken.

  • Version management (zowel klassiek als distributed) inclusief een paar vaak voorkomende branching modellen. (Het eerste is wel algemeen bekend, maar het tweede totaal niet.)

  • Semantiek. Zowel de obvious basis in HTML elementen, maar ook in het nadenken over de betekenis van dingen. (Niet twee type boxjes in een design zien en die klakkeloos visueel namaken, maar bij de ontwerper navragen welke types content het ene type boxje vergen, en welke het andere, zodat je die kennis in betekenisvolle classnames kan opnemen.)

  • Control characters en escape codes (taalonafhankelijk). Zodat je snapt waarom je hier < en & gebruikt, en daar \\, en dus ook XSS kan voorkomen.

  • URL opbouw. Snappen wat protocol-relatieve links zijn, hoe een querystring is opgebouwd, etc

(Hrm, maar dit zijn dingen voor voor front-end developers zelf, niet wat je wil overdragen aan gerelateerde vakgebieden. Daarvoor zou ik hiervan alleen semantiek en misschien URL opbouw proberen over te brengen. En dan begrip van de onbekendheid van het output-medium (je *weet* niet welke van css, js, images, geolocation, cookies, etc uitstaan. Je weet niet welke fonts beschikbaar zijn, noch wat de schermresolutie is, noch wat de standaardgrootte van het gebruikte font is). Je maakt een site gebaseerd op de 90% die "standaardinstellingen" gebruiken, maar denkt na over hoe de 10% het zullen ervaren. Als dat begrip bestaat bij gerelateerde vakgebieden, dan is de rest invulling van details.)

4

Re: Basiskennis van een frontend developer

Goede punten, Sander. Vooral ook goed dat je het onderscheid maakt tussen wat wellicht relevant is voor omliggende vakgebieden. Ik denk zelf overigens dat veel van jouw punten wel degelijk interessant zijn voor sommige van de gerelateerde vakgebieden. Misschien niet direct voor designers, maar voor meer back-end georiënteerde developers en beheerders toch zeker wel.

Een punt wat ik nog wel mis is *de browser*. Is het niet van belang dat een front-end developer de browser begrijpt? Lijkt me van belang, zeker als het gaat over dingen als performance, toch? Of is dat misschien toch te tijdelijk?

5

Re: Basiskennis van een frontend developer

Natuurlijk het centraal stellen van de gebruiker: toegankelijkheid (WCAG2) mag niet ontbreken in de basiskennis. Nu wordt toegankelijkheid nog vaak als kostbaar bestempeld, terwijl een goede frontender dit standaard levert (toch?). Usability hoeft naar mijn mening geen basiskennis te zijn.

Ik denk dat het goed is dat een frontender een keer te maken krijgt met meerder talen zoals php en java. En zelfs een keer meekijkt in een .net ontwikkelomgeving om te zien tegen welke problemen de backender aan loopt om goede HTML uit te poepen. Wederzijds begrip tussen front- en backender kan leiden tot een beter product.


Een stage bij een overheidsinstelling, waar vaak nog met zogenaamd verouderde browsers wordt gewerkt, kan ook helpen.

6 Laatst bewerkt door Frances de Waal (06-11-2013 11:02:40)

Re: Basiskennis van een frontend developer

Mijn lijstje voor de basiskennis van een frontender: om te beginnen een uitgebreide en degelijke kennis van HTML en CSS, semantiek, toegankelijkheid en responsive design. Vervolgens basiskennis JS/jQuery, een klein beetje PHP en kennis van het optimaliseren van een webpagina (bandbreedtegebruik, snelheid, accugebruik). Als laatste maar niet minste het checken in de verschillende browsers en vervolgens toepassen van goede oplossingen. Uiteraard dat alles met kennis en behoud van zoveel mogelijk goede gewoontes...

Mijn ervaring met lesgeven op het HBO is dat het onderwijs externe docenten uit de praktijk nodig heeft om deze kennis over te brengen. Het is voor docenten in vaste dienst onmogelijk om bij te blijven op een terrein dat zich zo snel ontwikkelt. Goed initiatief om hier vanuit Fronteers een bijdrage aan te leveren!

7 Laatst bewerkt door Verena Ruf (07-11-2013 14:52:57)

Re: Basiskennis van een frontend developer

Ik zou hier nog aan toevoegen: Logica en basiskennis programmeren, omdat er een bepaalde manier van denken voor nodig is. Bovendien het herkennen van de structuur van je code en van een website om te vermijden dat je drie keer hetzelfde schrijft. Dit zijn vaardigheden die niet alleen voor javascript of php, maar ook voor mogelijke toekomstige technologieën belangrijk zijn.


p.s. Ik zie net dat het forum nog op zomertijd loopt. Ik dacht al: Het is toch nog niet zo laat? Is dat te repareren?

Edit: Ben er nu achtergekomen dat je dat in je profiel kunt instellen. De vraag mag dus gewoon negeerd worden.

8

Re: Basiskennis van een frontend developer

Ik had deze vraag ook op het intranet gesteld. En daar kreeg ik een flink aantal punten terug:

De punten die een programmeur een vakman maken. Niet compleet maar misschien toch helpful:
- Server, Netwerk, Hosting
- Design Patterns
- Architectuur principes
- Unit testing

en
- Performance
- Accessibility
- Maintainability
- Readability
- Modularity
- Use standards
- Creativity

En verder nog:
- Security
- Typografie

9

Re: Basiskennis van een frontend developer

in onze opleiding (www.devine.be) vinden we volgende zaken belangrijk

- semantiek & standards compliant code
- performance
- toegankelijkheid

10

Re: Basiskennis van een frontend developer

Hoe denken jullie over technieken die met het internet of things te maken hebben of mogelijk maken. Arduino, Raspberry PI, sensory interfaces etc.

11

Re: Basiskennis van een frontend developer

Regexen. Een heel specifische vaardigheid, maar wordt gebruikt in veel plekken:
- programeren
- URL rewriting/mod_rewrite
- is vaak the basis van globs en andere niet-per-se-regex matching zoals attribute selectors

Anders, ben ik eens met Verena en Jules.  Logische denken maak veel dingen makkelijker. Security en Accessibility zijn zo vaak "afterthoughts", dat maakt ze duur en zorgt er voor problemen die je niet wil.

30 posts! En ik sluit af.  Fijne nieuwjaar!