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.
If you like this blog, why not donate a little bit of money to help me pay my bills?
Comments are closed.