Getting rid of the semi-professionals

Last week, two blog entries caught my eye because they discussed a problem I've started to notice, too. In Reflection Jeremy Keith bemoaned the lack of blog comment quality for the umpteenth time; while in The HTML 5 circus Roger Johansson explained that he temporarily left the HTML WG mailing list because there were too many people who just shouted at others without making any positive contribution.

Jeremy and Roger are talking about the same problem. There are quite a few semi-professional web developers who have excellent knowledge of the web standards but spend their time shouting at other people on blogs, forums, or mailing lists, and they are taking over most public spaces of the web standards movement with their ideologically pure drivel; proving the Greater Internet Fuckwad Theory beyond any possible doubt. We ought to get rid of them, but I don't know how.

Who are these semi-professionals? How do they differ from professionals?

Semi-professionals

I define professionals as web developers who follow the web standards and have a professional attitude in their work. Semi-professionals are those web developers who adhere to only one of these criteria (and amateurs adhere to neither criterion).

That means we can split the semi-professionals into two groups: web developers who don't follow the standards, and web developers who don't have a professional attitude.

People who don't follow the standards

The first group is easily dealt with: it's going to disappear slowly over the next three years or so.
Once you start to earn serious money by making websites, you should conform to high requirements; most importantly standards compliance. If web developers continue to ignore the standards I'm all in favour of gently nudging them out of the web development trade from 2010 or so onwards.

That may sound harsh; so be it. Improving the quality of our profession means weeding out the undesirables—eventually.

Unprofessional people

That deals with one group of semi-professionals. Getting rid of the other group will unfortunately be much more difficult.

Briefly, this group consists of people who are standards-aware (in fact, they occasionally have a greater knowledge of the arcana of the standards than professionals) but have an amateurish attitude. It's this group that infests the blogosphere, mailing list and forums with their ideologically pure but aggressive posts; it's this group that Jeremy and Roger denounce.

Three criteria

Let's try to define this troublesome group. As far as I can see three criteria are important:

lack of concern for limitations;

laziness;

and lack of experience in a paid job

The first criterion is the definition of this group; while most, but not all, semi-professionals also exhibit the traits of the two other criteria.

Limitations

The first criterion is that semi-professionals have (or wish to have) no experience with limitations that may affect the perfect standard compliance of websites. The ideological purity that they've invested themselves with prevents them from handling such limitations.

A simple example is unencoded ampersands; as soon as one creeps up, your HTML doesn't validate any more. Sometimes this problem is just outside the reach of a web developer; back-end systems may spew out all kinds of junk code, and sometimes project budget and planning simply leave no time to do anything about it.

Other examples include cutting-edge designs that require some extra HTML tags; theoretically questionable but practically necessary changes in the HTML specification; or helping browser vendors to get their priorities straight by splitting their standards compliance issues into urgent problems that should be solved right away and less urgent problems that can wait a while more.

All these limitations have to do with leaving part of the standards out of the picture if the situation warrants it. Finding the right balance between standards compliance and external factors is a crucial part of a professional's skillset, but, blinded by the light of ideological purity, semi-professionals are aggressively unable to appreciate that fact.

In fact, semi-professionals denounce true professionals for trying to work in the real world, and instead congratulate themselves with their intransigence and feel that others should follow their example—and never mind practicalities. Meanwhile they don't have anything to show for themselves except for a bunch of worthless comments.

Laziness

Second, the vast majority of semi-professionals is lazy. They feel that a few harsh blog comments or forum postings suffice to put them on the map as "real" professionals, but they will never start their own blog and offer a series of high-quality postings.

In fact, there seems to be a sort of five-minute rule: semi-professionals usually take about five minutes (or ten, or whatever, but in any case not hours) to write their "contributions". Compare that, for instance, to the eight to ten hours I spent writing this post.

Semi-professionals will never take that much time, and as a result their posts far less interesting than thoughtful blog posts or articles written by true professionals.

Their laziness also shows in another way: some semi-professionals don't read the posts they're supposed to be criticising. I regularly encounter comments to my posts and ideas that clearly show the writer has only read part of the article, because the original article deals with (part of) his critique. Again, there seems to be a sort of five-minute rule.

Do semi-professionals have an attention deficit disorder? Apparently, yes.

Note: this is the behaviour of the majority of semi-professionals. Some do take the time and trouble of creating interesting sites and blog posts, and are quite attentive (sometimes even too attentive).

No working experience

Finally, few semi-professionals seem to actually earn their money as web developers.

I've been searching for good freelancers for about three years now, and I received about 100 applications. Many applicants are professionals, or people who only need a bit of experience to blossom into professionals; some applicants (those I refused) don't know web standards. No semi-professionals have ever applied, though. (I'm probably too ideologically flawed for them.)

This lack of practical experience is perfectly understandable. Practical work means compromising, and as we just saw semi-professionals are unable to do that.

Note: again, this is the behaviour of the majority of semi-professionals. Some do have paid jobs in web development—though one is left to wonder how they can ever take on large projects if they refuse to compromise.

Why?

Why do semi-professionals behave as they behave? Why all the aggressiveness, the total lack of attention, and the absolute refusal to compromise?

I don't really know, and I'm going to resist the temptation to play amateur psychologist and point to uncertainty as a cause for their behaviour. To get more insight in the murky ways their minds work you can study the comments below; no doubt some semi-professionals will rise to the occasion by aiming their daily dose of shouting at me and this post.

Endangering the web standards movement?

In daily professional practice these problems do not matter a lot. As soon as a job applicant starts to shout semi-professional drivel you just say KTHXBY to him (rarely her) and hire a true professional instead. (Besides, semi-professionals never apply for jobs anyway.)

Instead, semi-professionals endanger the web standards movement. As I said above, the semi-professionals' aggressive shouting may scare away thoughtful would-be professionals, and it hampers the work of serious W3C Working Groups.

(Incidentally, I've started to wonder if opening up the HTML WG mailing list for all comers was a good idea. It was definitely the noble thing to do, but asking prospective members for professional credentials before allowing them on the list might have increased the level of discussions a bit.)

Mind the gap

Serious professionals, as well as those web developers aspiring to become true professionals, will start to pay less and less attention to blog comments, mailing list and forums, because these public spaces of the web standards movement are infested by semi-professionals. Professionals do pay attention to serious blog postings or articles, but writing those is outside the semi-professionals' mental horizon.

Unfortunately this process has positive feedback: the more semi-professionals scream, the less professionals visit public spaces, which causes the semi-professionals to scream even harder because they (correctly) imagine themselves ignored.

For aspiring web developers, the most obvious counter-measure is concentrating on the blogs of serious, sober-minded professionals, and especially the blogs of those professionals that are well-known.

Essentially, therefore, the shouting of the semi-professionals causes a gap between themselves and true professionals. This may strengthen the process of aristocratisation that I feel is currently taking place in the web standards movement.

In a way, anything that gets rid of the semi-professionals is good enough for me. Nonetheless, excessive power for the aristocracy is something to be avoided, but something we're probably going to get nonetheless, thanks to the semi-professionals.

Conclusion

I feel that by their ideologically pure, sneering, amateurish attitude semi-professionals force the web standards movement in the direction of more aristocracy than is healthy. This will change the movement considerably; maybe for better, but probably for worse. I don't see a real solution, either; most of the semi-professionals will resist any attempt to coax them into more constructive behaviour.

How do we get rid of the semi-professionals? I don't know; I even doubt it can be done, except by rigid aristocratisation, which I don't like.

Comments

Nice post! Regarding the laziness, there seem to be two compounding factors: lack of passion and overwork.

I find those with passion about the subject will train themself and dig to find the answer. This is how most of us learned to understand the W3C spec. There are many in the profession who are not passionate about the craft.

The overwork is another killer, as many projects have a limited time to accomplish a certain task or project. If a developer is not fully up on craft or standards this makes things really painful for them. Many when they have downtime dive into the discussion and just rant (few seem to use that time to educate themselves, but they want to be vocal and let their pain out).

Many of the people in this category came into web development thinking it was easy and they could do it. Many were told they were doing a great job (mostly by people who did not understand what should have been done). This makes it really hard to change the mindset because they think they are great.

Nicely put. I've hit a point after so many years in this profession, that I have grown tired of arguing the same issues, repeatedly trying to explain the need for balance to those who have the religious zeal of standards without the hard-fought understanding of reality. I no longer subscribe to lists like CSS-D, much less HTML WG, though I have a deep and abiding interest in the core topics. While I miss a lot of the thoughtful interactions and debates, I have found it hard to keep up with them amidst the noise and have decided to focus my time elsewhere in the hopes that I can contribute in selective places.

Thanks for writing such thoughtful articles - your post on the aristocracy was perceptive, demonstrating that while our industry is very young, history has plenty of examples from which we can learn.

Quite an unfair way to put people with an ADD; that they are pricks. I'd say the 5-10 minute posts you talk about are more likely a result of a combination of lack of interest, respect, and will.

ADDs do not affect peoples personaleties directly.

On the subject of this post — I do agree with most of your opinions. However, about not doing paid work, I don't know about your background but I do not have any good education on my paper at all, and I haven't found any education here in Sweden to prove my skills that I'd actually would want on my papers. Being all self-taught and having no connections finding work has been really hard, especially as a pure front-ender, but now I've got an internship that's going really well.

I think that there might be plenty more people like me who have a hard time getting paid work that doesn't suck completely.

But sure, there are plenty of pricks out there who haven't got the faintest clue that you can't spend a whole day working out the perfect customized borders that'll scale perfectly without any additional mark-up, et cetera.

The first group will only go away if no new developers are introduced into the industry (which is clearly false). New developers will follow a traditional developmental life cycle wrt standards:
1) Ignorant failure. They don't follow standards and don't realize there is such a thing.
2) Cognizant failure. They are aware of standards, but are not able to produce consistently standards-compliant code.
3) Cognizant success. They produce compliant code but have to think hard about it.
4) Ignorant success. They effortlessly produce compliant code. They no longer even have to think about it.

Developers at stage 1 && 2 are capable of building successful web products (most web sites are not complaint). As long as you can get it done without following the standard, there will be non-standard code.

Excellent post. The most annoying aspect that I find with the semi-pros is their ability to skew the perceptions of clients. Between the rhetoric of the semi-pros and the ignorance of the amateurs, clients can often become quite confused about web design and development. They typically don't realize their mistake in hiring a semi-pro or amateur until it's too late. It can be a real chore trying to find a project where the client is willing to pay professional prices for professional work and hasn't already blown half the budget on a failed "low cost" amateur or semi-pro effort.

I hate to be the naysayer here, since I generally love this blog and all of your work, ppk, but all you're doing here is saying we have a problem, but not offering much in the way of a fix. Isn't that part of what you're bemoaning the semi-professionals for? Granted, you did it with a lot more style and substance, but how does this help, really?

More importantly, how is this problem any different in the web standards space than in the political space?

The Internet is an open forum, intended (today, at least) to be open to one and all.

Welcome to Democracy.

What you're proposing is changing democracy so that only those with highly valued opinions and proper etiquette are allowed. There's only one solution to that: close off those forums where the signal to noise ratio is irreparably low because of all these "semi-professionals". Whether you consider this walling off to be a positive step or a negative one, YMMV.

Sorry for the being the lone dissenter here. I agree this situation is a nuisance, but I think it's a problem with PEOPLE, not PROCESS. It has nothing to do with technology, web or otherwise.

Anybody for setting up a global concert to fight against Loud And Obnoxious People? :)

"all you're doing here is saying we have a problem, but not offering much in the way of a fix."

True. I don't have a fix. I just want to get the problem out in the open.

"What you're proposing is changing democracy so that only those with highly valued opinions and proper etiquette are allowed."

Yes, it could come to that.
One of the things I'm trying to decide is whether Aristocracy, and not Democracy, is the natural state of the Web. Even if the answer is Yes, I'm still not sure if I like it, but we've got to face the possibility.

"I think it's a problem with PEOPLE, not PROCESS."

Absolutely. Aristocracy and Democracy aren't a process; they're in people's minds. The *result* of them being in people's mind may be a process (closing off useless forums, or creating more in a spirit of openness), but people come first.

Not sure how familiar you are with the Vietnam War protests of the 1970s, but for some reason I could just picture a group of sign-wielding semi-professionals marching around outside your front door shouting the following:

"Hey hey, PPK! How many errors on your site today?!"

Seriously though, I agree with you that this is a problem and that an obvious solution does not exist. I'm certainly not in favor of further aristocracy, but that appears to be where we're headed.

Speaking personally, I can sort of relate to where these people are coming from because I drank the same Kool-aid about five years ago. However I've been employed full-time as a Web developer from that time through the present and realized fairly quickly that pragmatism is far more effective than misguided idealism. Successive approximation is the name of the game for the real pros in this field. Full standards compliance should be a goal, not a requirement.

If you think *this* is the problem: ignore them. If someone cannot see past the error count of the validator, leave them alone. By definition they are lazy, have no jobs or experience, that means they do make any new web sites out there, only noise on those existing.

However... This is not the first time I see real-world, back-ends and ampersands mentioned. Maybe that ampersand can be fixed in 5 minutes by fixing some template?
It is unprofessional not to do so then. It is also unprofessional to spend on it two days when there's is more important stuff waiting. But! How do such horrible-code-producing back-ends come into existence, and is anyone going to take care of that, or just sigh "that's the real world" and move on?

Attitude towards our work will. And sometimes it involves fixing unencoded ampersand, sometimes–pressing vendors to improve their CMSes, sometimes just listening to the annoying boy pointing out that king has no clothes, and we just try to sweep our own professional laziness under the carpet of the "real-world".

Maybe there is only one solution: embrace them! Personally I think it is a good thing that some people stay hungry and foolish and have a somewhat idealistic—yet maybe unrealistic—view upon designing for the web. I think everyone was young once (I myself still am). And the group of people you are talking about probably still have to grow into a corporate way of working. This may take months, up to several years. It is not a change that happens overnight. The "amateur stage" might just be a fase they grow out of. Like puberty :).

But that does not necessarily mean the "amateur community" is all bad. I think it is much too easy to simply say "they have to go", "they are infesting our mailing lists and blog comments" and so forth. Maybe they are the indirect source of inspiration for others. Maybe they are going to to be the Jeffrey Zeldman or Peter-Paul Koch of the future.

I agree it is not all good and we do not live in a perfect world, but the "amateur web developer" might just sometimes be a reason for change, and change never harmed anyone.

A possible step towards a solution might be to gather professionals on a 'board' (as it is already basically approached by conferences etc). As I see it in medicine a good way to set standards (and to observe if they are used in a professional way) is to arise public awareness by propagating 'best practice guidance'. This might be achieved by appearing as a platform in media (any type - on & offline) which are read by decision makers, meet with key companies to initiate a 'awareness campaign" and all the other means we know from lobbying, marketing and politics.

PPK great post! I personally dealt with a boss who did not follow web standards, and constantly got into arguments with him about using tables for layouts, and so on. The one point I would like to bring up though deals with the growth of this industry. I understand why we must get rid of people who are lazy, ignore limitations or ignore standards, but there is somewhat of a catch in the third criterion for unprofessional people. Lacking in paid job experience can stem from two braches, in my opinion. First, obviously, due to laziness. Second, because a person is newer to the industry, and has yet to break through, but has the required knowledge, skill and work ethic. We must aid this second group. Sadly enough, professionals such as yourself will not be around forever. It is important, in my opinion, to find these young people and allow them to begin to thrive in the industry. If one wants to keep the industry moving in the direction it is moving, one must give the people who lack experience the experience they need. These young people are the future of the industry, and it is important to send them in the right direction.

I agree with Jordan West here. As an 'amateur' (or maybe even semi-pro) myself I seriously fall under your three criteria, well maybe not laziness, I'm not going to say that from myself.

Your first and last criteria are the same to me: a lack in job experience leads to a lack of concern for limitations, as one can only learn that when having a job. Maybe I'm wrong here, I'd like to know.

Furthermore I find these words not really motivating but rather scaring. Like you've put it, there's not really a sign of embracement of those not professional yet.

For example your five minute rule for writing a post: I find myself guilty of that quite often. But isn't that a matter of personal preference? Not everyone has the time or need to write long articles about technical things and not everyone considers his own words important enough. Why would I try to write or reiterate things that others have done much better?

You won't hear me commenting a lot on blogs as I know that I'm not even near the knowledge the most authors have, but as I read this, I fear it will never be good enough.

This is not a critique on you or your professionalism, as I like this blog a lot.
Just the 2 cents of an amateur/- almost semi-pro.

"If one wants to keep the industry moving in the direction it is moving, one must give the people who lack experience the experience they need."

Totally true. However, right now it seems that there's a huge demand for standards-aware web developers (at least, here in Holland; I'm not sure about other countries), so people who aspire to become professionals can find a job relatively easily, provided that they know the standards.

I'm not trying to put down those who haven't yet found a job-they can turn into professionals quite easily-but I am wondering about those who don't even try.

Lately I've heard several stories of not-quite-professionals who simply sent out a few letters, were invited by several companies, and had a job in a matter of weeks.

So people who lack experience could try to find a job; and once you've got a job you usually turn into a true professional within a few months.

Mind the third group ;) "The Pragmatists". Those who know the webstandards and their disciplines well, but realize that most of their clients don't give a horses arse and won't pay for it either (usually the enterprise sector). There's a wealth of superb front-end developers that fall under this category and simply lack the motivation to express themselves or to get involved in heated debates.

A fourth group can be labelled the starters. If you don't invest in starters and want to weed them out as "semi-proffesionals", the pool will eventually deplete.

As an unlabeled individual who has stopped commenting in most cases (I just want to work) let me say the following:

I love what I do as a back-end developer and CSS "dude"; however, I'm getting a familiar feeling - the same I had in 2001 when I threw down my gloves on the "professional" web. More I read the less I want to do.

People who rant about how many errors occur through the validators of the W3C don't know the limitations of those validators and should be ignored (you have to declare a background color if declaring a font color to validate even if your background is trans).

I don't have a degree for what I do - I just love to do it. I love being able to take, what is essentially, gibberish and turn it into something usable.

If the aristocracy begins to take over too much more, there will be no room for people like me.

I just try not to worry or fight too much anymore - instead I just focus on doing the best job I am capable of at the time I do it.

I will make mistakes (or not use the "best" method) - but, we're all learning here - even the semi-professionals from whom we sometimes can garner a pearl or two.

I'm afraid I disagree. Web standards are not intrinsically benevolent to (accessibility to one side). They're just benevolent to our profession, they reduce the pain. Sloppy coding isn't like sloppy surgery or amateur plumbing. No-one gets hurt. No-one suffers. It's offensive in the way bad acting is offensive: most people don't notice, and it's got to be really really bad to spoil your enjoyment.

Web Standards aren't analogous to grammar and spelling in writing - I think many standardistas wish they were. Rather, they're analogous to following the user-manual for the printing-press for your precious document. It's important to you (and me) but for the consumer?

If Gutenburg's first press had been some invention wherein anyone who had to print anything had to go on a two-year course to learn how to print 'the right way' - well, we'd be seriously impoverished. But instead people quickly realised that all you had to do to print something was a sharp knife and a block of wood, and hey it might look a bit rubbish and partly illegible and you didn't ink it properly... but hey, look, it's almost like a book!

Yes, we should push to make our lives easier; no, we shouldn't pretend it's about anything else but making our lives easier.

Hello, semi-professional web developer here. Like most of you I started because of curiosity and interest years back but never got into standards, scripting and server side programming until the past two years.

I've recently got a hold of some clients, and am starting a web blog/web portfolio. All this has led me to realize how easy it looks from the outside but how hard it is once you start working.

Practicality is door, and laziness is the poison. Knowledge, when used properly, is the key as well as the antidote.

To reply to the question at the end:
It will only be a matter of time before we upgrade from "web2.0"(How I hate that phrase) to something in between the private and public focus. I'm excited to see what the change will look like and wonder when it will come.

@Alistair Potts:
I disagree. Web Standards are just like grammar and spelling in writing, where (X)HTML and CSS are some of the languages. You can make spelling errors (invalid code), use dialects (proprietary code) or even expressions that mean something else (table layouts and such) and still the end result will be clear for most end users.
That's why it's so easy to start using these techniques. Which is great of course. But if you want to address all your end users (both humans and agents) in the most unambiguous way you can, then you better try to stick to the rules, using Web Standards. I think that is what you may expect from any professional front-end developer.

vanderwal has a very interesting point when he says that the semi-professional may come into the game of we development thinking it was easy. Some people I know who are not web developers are under the impression that it is incredibly easy - just open up dreamweaver and plonk around like you were in Word and you have a fully functional online community. I guess we all come into web development not having a clue how complex it can be and the standards and practices you need to adhere to and follow to create solid sites and apps. I guess the semi-pros could be the ones who never want to admit that there is so much more to web development than they know?

I'm also in favour of 'gently nudging' out the amature 'professional web developers' out of the picture, but I can't see it ever happeneing. Clients alsways want the cheap Dreamweaver-osCommere rubish because they don't know about the industry and that the cheap rubish is wasted money.

And that's why not everything can be according to the standards.
People get what they pay for. And not everybody's willing to pay a lot, so they get less standards and more osCommerce, which is the standards-hell.
Does that make anyone an amateur or semi-pro?

I think we're in danger of forgetting that the html and scripting is the means to an end, not the end itself.

Pretty much everyone reading this blog is going to be clued up on standards etc. We're like the PhDs of the html community. But if my 'PhD' were in English and not html, would we say that "semi-professionals" shouldn't be allowed to talk English any more? Because that's what it amounts too.

Like I said - no-one's getting hurt by sloppy or substandard html. ppk - relax! :)

As I read it PPK is mainly worried about the unprofessionals, the ones that have the knowlegde of a professional, but behave in an unprofessional manner. Other semi-professionals will be forced to upgrade their skills anyway.

Even though I agree that scripting is a means to an end, those that don't understand your dialect/expressions will get 'hurt' by sloppy or substandard HTML.

But of course all levels of HTML/CSS will always be 'allowed', from sloppy to state of the art. A professional developer though, should always try to deliver the best code (s)he possibly can, given the circumstances. And therefor knowlegde of the Web Standards is important.

People are increasingly busy for survival, so usually they cannot care much about the standards or things like that. They just focus on finishing the job. Anyway, you have mentioned some good points. :)

i think the web-standard-thingy will be only a matter of time the market will justice it. it seems that f.e. google will focus more and more on sites with "valide code", especially by the top-keywords where the air is very "thin" and right is, clients will only pay for things that they understand and that have an noticeable effect (f.e. good ranking), so if in future the high quality, valide code would make it much better than the crappy code then the clients would pay more to get the desired effect and the "semi-pros" must learn to deal with valide code to have the chance of getting some clients or they are out of the game ... just easy as evolution :)

interesting thoughts dan, i agree with you, it seems that professionals must manage in future much more than "only" develop valide code, they have to look at things like searchengine-friendly code and of cause high usability with excellent userfriendly navigations and the clients will pay for it, if they realise that their websites will only have success if all components are avaible.

Probably not physically in a way that leaves bruises, though sloppy UI engineering can certainly cause RSI.

But I'd say people do get hurt. Those who are shut out because of sloppy or substandard HTML are when they encounter sites that only work in certain browsers and sites that use sloppy, substandard _inaccessible_ HTML. And web developers get "hurt" when they have to spend twice the time they should have because they have to clean up someone else's sloppy, substandard HTML before they can make use of it.

As a political science student, ideology can make people very hardline. But how does this fit with the web standards? Politics is essentially the struggle for power. Essentially, the "Unprofessionals" are "battling" against other groups for power to determine the standards movement. It's quite obvious "Unprofessionals" battle others others. They rather fight and lose than compromise. They see compromise as even worse than outright loss, because compromise itself compromises their ideology. It's better, they say, to lose outright, because at least you are still following your ideology.

What we need is consensus, not competition. It's hard enough as it is to get others to follow web standards.

Also, this isn't "Democracy". It's "whoever yells the loudest". They do not represent the majority of individuals who make web pages, who do not know about web standards. They do not represent Professionals, who often know about web standards, but realize they must use non-standard code to get their work done. They do not represent the less hardline people that believe in standards and follow them strictly, but do not aggressively and petulantly insist everyone else is wrong. Like I said, they are just small group of willful individuals. That's all they are.