Last Monday I invited all Dutch front-end programmers to become members of my soon-to-be-founded Guild of Front-End programmers. I also promised to publish some more information in English.
This entry covers the certification we're planning to introduce. While reading it, please remember that all items I describe below are just plans right now (some of them my personal ones). They may still be voted down by the certification committee or the Guild members.
(lang="nl" interstitial: Mensen die meer informatie willen, kunnen onze huidige plannen bekijken en/of zich inschrijven voor de aankondigingslijst.)
The purpose of the Guild is to further professionalise the front-end programming discipline within the Netherlands (and possibly in other Dutch-speaking regions of the world; but I'm not going to do that without some kind of local initiative. I'm busy enough as it is).
The most important (or at least most visible) part of this professionalisation will be our certification. We want to issue certificates to good, standards-aware front-end programmers, so that non-specialists can easily see whether a certain person knows what he's doing. (That means we have to decide what knowledge and skills a good front-ender needs; more on this below.)
The question is whether potential employers or clients will be interested. Without some sort of recognition from outside the web development community the certificates will remain colourful bits of paper that are fun to hang on your wall but don't serve any real purpose.
It turns out that there is quite a bit of outside interest in this certificate. Without such interest the Guild would be just another nice-but-failed initiative. With it, it has the chance to grow into something considerably more interesting.
As I wrote a while ago, the Dutch government recently decided that all national ministry sites will have to comply with the Web Guidelines before the end of 2010. Although they have no requirement to do so, quite a few Dutch governmental bodies on all levels have decided or will decide in the near future to comply with the Guidelines.
They have one huge problem: finding standards-aware front-end programmers.
During an April meeting in The Hague, with various stakeholders of the Web Guidelines present, I heard this complaint not once but three times—and every time most attendees nodded wisely bud sadly. I saw this problem coming back in September 2004, so I wasn't particularly surprised. In fact, I started to see a possible solution: certification.
There are some very knowledgeable and standards-aware groups within branches of the Dutch government, most notably the ICTU (the initiator of the Guidelines), the web team of the Ministry of Health, and the web team of the municipality of Stadskanaal, and they're more than willing to help other government branches solve their web problems. (In fact, this is part of ICTU's official mission.)
Now suppose that these people would, quite unofficially, advise government branches who want to implement the Guidelines to work only with certified front-end programmers? That would give a certificate considerable value.
In fact, if this strategy succeeds it might mean that web companies that work for the government will employ only certified web developers in three or four years time. Government sites would be created only by people who actually know the web standards. Wouldn't that be interesting?
I feel that this scenario can work. There's no certainty, of course, but right now it seems as if the certification is worth the work we're putting into it.
I'd more or less foreseen that certain standards-aware people within the government would eventually become stakeholders, though I was pleased by the speed with which they agreed with my plans. The next external stakeholder took me completely by surprise, though.
Out of the blue, the chairman of the PIBN, which unites the about 40 largest Dutch website creation companies, told me he was very interested in our certification ideas. One of the PIBN's missions is making the website industry more transparent to non-specialists, and a certification for front-end programmers is an obvious way of helping that process along. He even hinted at making the employment of certified front-enders mandatory (or at least strongly advisable) for member companies.
Besides, the PIBN readily agreed to sponsor the Guild's founding conference (18 September, Pakhuis De Zwijger, Amsterdam)—an offer that was very welcome because I didn't yet have the faintest idea how to raise the necessary money.
Finally, Lost Boys, info.nl, Fabrique, and Mangrove, all PIBN members, have offered us hospitality for our Guild meetings. Convincing them to offer us a bit of food and drink, as well as the use of a beamer for our presentations, was no problem at all.
So the Guild and its certification have two external stakeholders instead of just one. That increases our chances of success.
Thanks to the support of key government people and large web companies, the certificate may end up to have some real value for front-end programmers.
That raises some questions. How do you get a certificate? How do you test front-end development knowledge and skills? Which knowledge and skills should you test?
The short answer is: we don't know yet. We're trying to find out.
My original idea was the following:
I am putting this criterion to a member vote, and currently a majority of 24 to 19 members favours stricter entry norms such as valid code, knowledge of semantics, and separation of structure and presentation. The eventual criteria may therefore be stricter than I originally planned.
We will continue to take votes at our Delft and Rotterdam meetings, so I still have a chance to convince new members of my original idea. (If you want to vote, come over. Details here.)
Eventually we have to decide what 'front-end technologies' are, and which level of skill is required for obtaining a certificate.
What about Flash? Flash is definitely a front-end technology, but a quick show of hands during the first meeting showed that there were only a few Flash developers present. Besides, I myself know next to nothing of Flash.
Fortunately Bobby van der Sluis is willing to take the lead in this area. Currently he's working on a plan, which he'll probably unveil during our August meeting in Rotterdam.
(Incidentally, one of the questions I asked during the meetings was "Do you see any problems in Flash development that the Guild should address?" The majority of Flash developers replied "Accessibility". So that's clear.)
Then there are the rarer front-end technologies such as SVG and XSLT. Right now I don't have the faintest idea what we're going to do with them. Fortunately we don't need to take that decision right now.
Finally, there's the matter of context. A good front-ender should know something of accessibility, usability, graphic design, interaction design, and back-end programming. But should knowledge of these areas be part of the certification requirements? Right now I don't know, and here, too, we're going to postpone taking a decision.
Once we've defined which front-end technologies we have to test, we have to decide what to test for. How do you determine if someone is a good front-ender?
I've been holding interviews with freelance front-enders for nearly three years now, and I've developed a simple rough-and-ready test to evaluate these freelancers' CSS skills. I show them a design and ask "How would you implement this?"
Now there are certain answers I expect to hear, but every once in a while one of my candidates surprises me by proposing a technique I never thought of. So I learn something new from, say, one in every five freelancers I interview.
More in general, I feel that the certification process is not about giving the "right" answers, but about showing yourself to be capable to propose a CSS strategy. That presupposes good knowledge of CSS (you have to know that
float exists before you can propose using it), and also a general state of mind that allows you to quickly sort through the possibilities and select a viable one.
Let's take an example: a design with a masthead and a three-column layout below it. Let's say I ask a fictitious certification candidate how he would implement it, and he doesn't give the answer I consider ideal.
I recently read Andy Clarke's book Transcending CSS, and he convinced me that absolute positioning is the best way to go. Absolute positioning allows you to put your HTML elements in any order, and totally revise that order when the CSS kicks in.
As a result, you can optimise your HTML for non-CSS browsers (content first, then navigation), but in your CSS you re-order the HTML so that it becomes visually appealing (navigation left, content centered). So personally I believe
position: absolute is the way to go.
During his examination, however, our fictitious candidate proposes a
float-based strategy. He encloses the three columns in
<div>s, floats them, gives them a
width, and proposes a faux columns-like technique for the background colours.
That does not conform to the strategy I feel is ideal. Does that mean the candidate is wrong? Of course it doesn't.
float-based strategies are still very popular (more so than absolute positioning strategies, I'd say), and will result in a tableless site where structure is properly separated from presentation. Our fictitious candidate has shown himself capable of proposing a good CSS strategy and has shown knowledge of current techniques. As far as I'm concerned he has passed the examination.
We haven't yet decided on the exact form the examinations are going to take. Recently, however, I proposed the following:
Let me stress that this is just a preliminary plan. It can be voted down by the certification committee, and later by the members. Nonetheless, it strikes me personally as the best way to examine candidates.
For now you have enough information to digest. Later I'll publish more entries about other Guild plans.
This is the blog of Peter-Paul Koch, web developer, consultant, and trainer.
You can also follow
him on Twitter or Mastodon.
If you like this blog, why not donate a little bit of money to help me pay my bills?
Comments are closed.
1 Posted by Jordan West on 9 July 2007 | Permalink
PPK, I think what you are doing is a really great thing for programming. I was thinking the other day actually that a major web orginization such as the W3C should try to create some sort of certification system. I think it would boost the quality of companies if they competed to say that they were W3C certified. For example, the company i work for advertises constantly that they are Microsoft Platinum Certified Members because a certain number of employees are micrsoft certified in certain technologies. It would be cool if the W3C did this too. Also, it would be great if the orginization handed out awards for things like most standards compliant web browser. That way browsers would work harder to be more compliant, so they could say they are "W3C's 2008 Most Web Standards Compliant Browser" or something like that. I know it would be a lot to organize, but i think that since front-end web based programming has grown so much, obviously, there needs to be some sort of certification for it.
2 Posted by Ralph on 9 July 2007 | Permalink
Interesting. Regarding the example of the CSS test, I think there's one thing that defines what the "right" strategy is: the (X)HTML.
If you show him/her the design AND the content [s]he would be working with (or, at least, the unstyled version), then the decision will be easier to evaluate (but then again, not necessarily straight-forward).
The point, I guess, would be: how could you test this if you were to 'automatize' the tests? (which, I think, is a step you will need to take eventually).
3 Posted by Tino Zijdel on 10 July 2007 | Permalink
Ralph: I don't understand how (X)HTML is a "strategy", let alone the "right" one: HTML4.01 is almost 10 years old and doesn't reflect current implementations nor authors' needs and XHTML1.x being nothing more than the XML-serialization of HTML4.01 has failed miserably in the marketplace because it isn't served as an XML-application in most cases (like this site).
The only "right" strategy right now is knowing your public and catering to them in the best way possible (whatever that may be).
4 Posted by Brian LePore on 10 July 2007 | Permalink
While I agree a good front-ender should know something of accessibility, usability, and interaction design, I don't really feel that a guild of front-end programmers should focus on graphic design, and back-end programming. Yes, a good front end person should know something of those fields, but I don't think they should be tested on them in order to prove themselves as a front end programmer and believe that it would greatly widen your burden on testing.
PPK: Was your example on absolute positioning being best a hypothetical one, or did Andy's book really convince you of this? I'm not disagreeing, just curious.
Now, who has the initiative to propose a similar guild here in the states/international?
5 Posted by Sander Aarts on 10 July 2007 | Permalink
"Now, who has the initiative to propose a similar guild here in the states/international?"
I think you just did. Now go for it! ;-)
6 Posted by Brady J. Frey on 10 July 2007 | Permalink
Anyone interested in working on a US version? I'd be happy to offer writing and other support as needed. brady at dotfive.com... hmmm, maybe pop up a site soon, hold on...
7 Posted by ppk on 10 July 2007 | Permalink
Yes, I do believe position: absolute is the best way. (Other people will disagree, of course.)
8 Posted by Ralph on 10 July 2007 | Permalink
@Tino, I meant that by knowing (something of) the (X)HTML [s]he will be working with, then [s]he will come up with a CSS "strategy" (approach) to achieve the desired design, again, for that (X)HTML.
Regarding the absolute positioned approach, the only reason I wasn't convinced was that basically no content can follow those elements (because of the overlapping). In his example, he used a JS routine to achieve this, but I'm one to believe that CSS problems should be solved with CSS (same applies to conditional comments, no [X]HTML should be used to solve CSS issues). JS *should not be required* by (almost) any site.
@PPK, any possibility you add some basic formatting tags (maybe ala BBCode) such as 'i', 'b' and/or 'u'?
9 Posted by Albo P. Fossa on 11 July 2007 | Permalink
Certification? Good idea. Usability/accessibility must be key. Are language skills important, or are they client's property, alone (Krug, q.v.)? Your standard, ability to code a table-less page, needs quantification: tables have their place! Lastly, we may note that many W3 pages do not meet W3 standards (e.g. WAI pages vs. WAI standards...)
10 Posted by Franck on 11 July 2007 | Permalink
"position:absolute;" is far from being the best way, in my opinion. It's not flexible at all and this is a big problem on frequently updated sites.
Good luck !
11 Posted by Alper Çugun on 11 July 2007 | Permalink
Funny thing about the 3 column layout question.
There are so many ways of doing this -most of them with their detractors- that you will end up in a debate. I think you're right. It is more important that somebody can explain how they got there than that they can recite a standard layout verbatim.
But still, what does it say to the state of this profession that there is no straight forward way to achieve something as basic as a 3 column layout?
12 Posted by Sander Aarts on 11 July 2007 | Permalink
I think it says that it's not as easy as it may seem. That's why it is important that is seen as a specialism of its own right, just like backend development or visual design.
13 Posted by tavi on 11 July 2007 | Permalink
maybe we should stop talking about standards the web is open - eventually websites and programs will run with what works. The word will get out with what works. Right now, just let it run free - standards will work themselves.
14 Posted by James on 11 July 2007 | Permalink
I agree that certification of individuals is good. But, to be honest, most people browsing the web probably wouldn't care about that. It's good for the trade, but not much else.
However, I'd really like to see certification of browsers. Many people care a great deal about having the latest TV set or stereo, but don't know anything about their web browser. We need to find a way to get consumers educated about their browsers the same way they educate themselves about their stereos and HDTVs.
One way to achieve that is for someone to create a CSS Badge that only renders properly when the browser supports the standards correctly. Sort of like the Acid2 test, except instead of a big smiley face, it would say something like "CSS3 - Where Available". The badge would render well in Mozilla, Opera and Safari, etc. Bad browsers (like IE6, for instance) would show a disheveled badge.
Clicking on the badge would bring you to a beautifully designed page educating the public on the best browsers.
It would be similar to the "Dolby Surround" and "HDTV" badges that you often see on TV shows. Those were industry sanctioned badges that encouraged people to buy new TV sets. There's no reason why we can't do the same thing with web browsers.
15 Posted by Gary Barber on 12 July 2007 | Permalink
@James I like the idea of certifying browsers. Teh concept is sound. However not so much the rendering button, would be better making it "certified for the Web", KIS People don't know how it works. Its the masses you have to appeal to, not the web industry.
@PPK so many have tried this, so many have failed. what makes this attempt any different. Why should I invest my time in certification with one body to find them out of favor in a fw years time. The testing does not concern me, but the detail of the organisation of any certification body does. Are we learning from the mistakes of the past or are we just going to repeat them over and over.
16 Posted by Sander Aarts on 12 July 2007 | Permalink
Can you name some who have tried this (and failed)?
I'm interested in the guild, which is not only about certification by the way, and would like to know in what ways this attempt is similar or differs from previous ones.
17 Posted by Jack on 12 July 2007 | Permalink
I would only use absolute positioning for like the h1 page description, and other elements that need to be put in the right semantic order in the xhtml template. Not for the columns, cuz its only more work and more CSS code, so it aint the right way imo to use absolute positioning for all elements.
18 Posted by dudester on 12 July 2007 | Permalink
Why do we need certifications? Shouldn't a person's portfolio be their certification? Its easy to look at the front-end of a site and see if it was done with tables. If someone doesn't have a portfolio or a collection of URLS, then don't bother with them. If that isn't enough have them put together some sample site as a test during a interview with the best candidates.
19 Posted by annex on 12 July 2007 | Permalink
I'm not sure if you're aware of the HTML Writers Guild, which is an international group that offers members (and non-members for a higher price) training and certification. They are not hugely successful (in that employers don't seem to search by this certification), but they might be a good resource to help with local certification in conjunction with gouvernment parameters.
I fully support the idea to bring certification to the profession to set good apart from copy-cats and wysiwyg'ers. Today perhaps private clients may not always want a compliant site, but in my experience most clients do, if they are made aware of it, and some even require w3 compliance and, in the US 508 compliance.
I wish I wasn't a single mom, 3 jobs to survive, artist with ZERO spare time to get involved and make this project international.
At any rate, I will try to keep an eye out and help as I can.
20 Posted by Jonathan Worent on 12 July 2007 | Permalink
When you talked of certifications I immediately thought of the World Organization of Webmasters (WOW) [www.webprofessionals.org]. They bring together Web Professionals, Companies (not just tech companies) Government and Education. Check 'em out their international too.
21 Posted by Ben Gerrissen on 13 July 2007 | Permalink
Great initiative, will sign up for it when I find more time. ;)
Fact of the matters, there is no single good technique, but like the symbiosys of js, html, css and flash, it's a collection of techniques each having it's pro's and cons.
22 Posted by Ralph on 13 July 2007 | Permalink
I just visited "The HTML Writers Guild", and I got the impression I would only be scammed by them.
They have no useful information on their instructors, and it's arguable whether they use a semantic code or not (and they have no clue on what indentation is). Do I want to be evaluated by them? I don't think so.
Web Professionals (why is it "WOW" again?) looks a lot better, at least their site tells me their not completely lost on what they're preaching, and now I want to learn more about them.
23 Posted by Chris McKee on 16 July 2007 | Permalink
I do personally believe that if your going to create yet another certification process that you should aim globally. The best certificates are the one that can be recognised worldwide and are easily recognised by businesses.
Personally the idea of having to take yet another exam after years of education and degrees would be off-putting, but if in the end it leads to a higher quality web and means I end up working with people who haven't just walked in from a art/design course with no idea about html, then I'd probably love it.
24 Posted by Lon on 17 July 2007 | Permalink
Volgens de webrichtlijnen is 1 tabel voor layout doeleinden geoorloofd (R-pd.11.9).
Aangezien je met tabellen beter tig-koloms layout structuren kunt bouwen dan zonder, zou ik de webrichtlijnen volgen en een tabel inzetten.
Ben ik nu geslaagd?
25 Posted by Sander Aarts on 17 July 2007 | Permalink
Jij wel hoor...
26 Posted by Lon on 18 July 2007 | Permalink
Wat ik maar wil zeggen is dat een opdrachtgever beter kan eisen dat de opdrachtnemer werk aflevert dat voldoet aan de webrichtlijnen, indien dat wenselijk is voor die opdrachtgever, dan dat die opdrachtgever afgaat op een certificatiesysteem dat enorm mode-gevoelig is en opgesteld is door amateurs.
Want laten we eerlijk zijn: we zijn allemaal amateurs op dit gebied. Front-enders zijn per definitie amateurs, aangezien het gebied zo nieuw en onontgonnen is dat niemand nog precies weet hoe en wat en aangezien dit gebied avontuurlijke mensen aantrekt.
Niks mis met amateurs. Niks mis met experimenteren. Niks mis met creativiteit en pragmatisme. En niks mis met webrichtlijnen.
Een certificatiesysteem kan dat allemaal niet bijbenen.
En dit certificatiesysteem riekt wel heel erg naar willekeur en oubolligheid.
OK, shoot me maar weer.
27 Posted by Sander Aarts on 18 July 2007 | Permalink
"dit certificatiesysteem" bestaat nog niet, dus je riekt wellicht iets anders [no offence ;-)]
Er zullen toch vast wel een aantal niveaus te bedenken zijn waarvoor je bepaalde minimale benodigde kennis kunt vereisen. Misschien zitten daar de allerlaatste ontwikkelingen nog niet bij, maar bijvoorbeeld wel die van vorig jaar. Aangezien een hoop ontwikkelaars heel wat verder in de tijd zijn blijven stilstaan kan dat dus toch voor onderscheid zorgen.
Als je een normale opleiding afrond wil dat ook niet zeggen dat je alles van je gehele vakgebied weet. Zeker de allerlaatste ontwikkelingen zijn waarschijnlijk niet opgenomen geweest in die studie, maar je hebt wel een behoorlijke basis, eventueel aangevuld met een eigen specialisatie.
Ben persoonlijk wel benieuwd naar de criteria die gaan gelden. Er zal ook nog heel wat over gediscussieerd gaan worden vermoed ik.
28 Posted by Ingo Chao on 3 August 2007 | Permalink
- A - an European certification with strong localized initiatives
- B - localized certifications with a huge process of consolidation efforts afterwards.
If there is some agreement with this, the Dutch Cell of this European Guild could become the igniting idea. A next step could be to invite people locally, and start working on this.
No, I do not want endless debates and conferences and such. This certification is a chance for all to work in the European market.
29 Posted by ppk on 3 August 2007 | Permalink
Yes, my plan was always to allow other groups in other countries to copy our efforts. However, I'm not going to take any personal steps; I'll await local initiatives. (And I'm afraid that, even if local initiatives crop up within the next few months, I won't have time to help them.)
30 Posted by Aukcje on 5 August 2007 | Permalink
I love the idea of "W3C's 2008 Most Web Standards Compliant Browser" suggested by Jordan in first coment.