8 ms·
Joe the Developer doesn’t need a certificate
- duncanj 17y agoIf only these opinions were carried in the WSJ, FT, etc.
- gdp 17y agoJoe the Developer is entrusted with writing code that can cost people money and cause damage. In some cases, it can endanger lives and businesses. Joe the Developer doesn't need a certificate, but "we the people" (as in the people who have his software inflicted upon them) would rather he did. The certification argument seems to forget whose benefits from certification. It's not the developer - it's the people who are able to ensure that there is a baseline level of competence among software developers entrusted with certain kinds of development work. I'm all for certification.
- TallGuyShort 17y agoIdeally, I would agree with you. But at the same time, when I think of the people I know who have certifications, I'm pretty sure I wouldn't trust any of them to write code I would depend on for anything. The systems for certification that are in place today, are IMHO, lacking real credibility. There will always be people who try to beat the system, because they DO see a certification as something that benefits them - it gets them a job. As long as that's the case - I place a lot more emphasis on my personal experience with a person, than what certifications they can show me.
- gdp 17y agoI agree that the existing certification programs may be lacking, but I don't think that negates the need for them. It just means we need to come up with better certifications.
- nathanb 17y agoThere will always be ways to game the certification process by teaching the test. And there will always be talented, passionate developers who don't test well or don't see the need to memorize something that Google could reveal in a single search or who just think that the certification process is bollocks. Requiring certification would, it seems to me, make it more difficult to determine which developers to trust. Just because Joe has a piece of paper saying that he knows X, Y, and Z doesn't mean that Joe isn't going to take shortcuts that end up costing the company thousands or millions of dollars (or human lives!). Because Joe has this piece of paper, companies may be lulled into thinking that they don't need to test him as hard or give him as long a trial period before entrusting him with critical systems.
- gdp 17y ago> And there will always be talented, passionate developers who don't test well or don't see the need to memorize something that Google could reveal in a single search or who just think that the certification process is bollocks. Any certification process that simply involved rote learning or which could be googled wouldn't be worth the paper it is written on. I'm certainly not advocating that. > Just because Joe has a piece of paper saying that he knows X, Y, and Z doesn't mean that Joe isn't going to take shortcuts that end up costing the company thousands or millions of dollars (or human lives!). Sure, certification doesn't do away with the need for QA and internal processes. It just ensures that anyone producing software that targets certain markets will have a basic understanding of which corners they are cutting. The government, for example, could mandate that they will prefer suppliers who have a certain percentage of certified developers. Playing an averages game, that at least means that somebody in the company is going to know when corners are being cut, rather than just having a group of people hacking along. > Because Joe has this piece of paper, companies may be lulled into thinking that they don't need to test him as hard or give him as long a trial period before entrusting him with critical systems. As I said before, the assurances provided by certification are not for the benefit of employers, they are for the benefit of users. If your hypothetical company actually did this, then they would be a very dumb company.
- 17y ago
- roedog88 17y agoWhat about certifying the software that Joe the developer creates, rather than Joe the developer? This is the approach the FAA takes with DO178B for the flight software on the jet planes that we ride. These are very large projects, using hundreds of developers. The quality of the team members varies. Half are below average for the population at large. Adding certification on top of this doesn't change the fact that half the developers will be below average. The projects are too large.
- gdp 17y ago> What about certifying the software that Joe the developer creates, rather than Joe the developer? There's a simple reason why - it costs x to certify 1 developer, and y to certify a piece of software. For most software, "y" is still too expensive to offset the potential damage caused by software failure (compared to a jetliner, where the potential cost is huge). A programmer may create hundreds or even thousands of pieces of software during a career. Average x over that number of projects, and it's negligible. Multiply that number by y, and you have an enormous figure. Also, the cost of certifying a piece of software to provide any kind of assurances of quality is time consuming and expensive. Compare this to a certification that shows that anyone who wants to claim to be a "software engineer" actually knows the first thing about software engineering, and is at least capable of producing software in a systematic way. It's just like we license drivers once and assume that that basic level of competency will ensure "quality driving" on a variety of road types. We don't certify each driver for each road individually.
- roedog88 17y agoI think the idea that certifying developers and not certifying safety critical software is a non starter. On safety critical projects, certification will add to existing and onerous validation and verification costs. The process requirements on these projects (DO-178B) call for an organization to institute a systematic way of developing software across the project that everyone on the project follows. An additional certification for each individual is not necessary. Either they can follow the process or they are reassigned.
- axod 17y ago>> "Joe the Developer is entrusted with writing code that can cost people money and cause damage. In some cases, it can endanger lives and businesses." That's what tests are for.
- jefffoster 17y agoBut the tests are only as good as the person writing them.
- gdp 17y agoNo, tests ensure certain functional behaviour under one input. Certification would ensure that Joe is capable of writing tests that actually test anything, for example.
- HeyLaughingBoy 17y agoNO, that's what proper design & development process is for. Testing is only a (small) part of that process and as we've known for decades, you can't test quality into a product. Hell, just a few minutes ago, someone brought me a piece of code that has been HAMMERED on for the last nine months and it still has a bug that wasn't noticed until today! gdp is right: certifications are useful if they are rigorous, targeted and demand useful knowledge and training I doubt most developers would say that licensing pilots or physicians is useless but that's essentially the same thing as claiming that certifying programmers is useless.
- axod 17y agoNot really. Pilots and Physicians are trusted with peoples lives. Most software is just fun stuff that makes peoples lives slightly better. Only a small amount of software is 'mission critical'. If software breaks, it usually doesn't cause the loss of life.
- amalcon 17y agoWhen a pilot or a physician makes a mistake, there is no chance for someone else to correct it. That's why these professions (physicians especially) require expensive certifications, and continuing expenses to keep these certifications current. Engineers are probably a better comparison: while engineers do have expensive certifications, they aren't the ones doing most of the engineering. Instead, they're the ones verifying that the engineering (done mostly by non-certified engineers) meets the design requirements.
- swombat 17y agoThe certification argument seems to forget whose benefits from certification. It's not the developer - it's the people who are able to ensure that there is a baseline level of competence among software developers entrusted with certain kinds of development work. You're making one huge assumption here: that the certification actually certifies anything at all. As a matter of fact, it does not. Certifications are useless. Having or not having a certification is no indication of presence or lack of programming skill. I'll go further, though. The certifications do you, as the public who makes use of developer services, a disservice. They imply that someone has verified and certified "a baseline level of competence" - but that implication is a fabrication, a lie. All the certifications do, effectively, is give people who shouldn't be in programming jobs working for people who shouldn't be hiring programmers.
- gdp 17y ago> You're making one huge assumption here: that the certification actually certifies anything at all. As a matter of fact, it does not. Certifications are useless. Having or not having a certification is no indication of presence or lack of programming skill. Bet you're not a fan of driver licensing either, right? 'cause a driver license is no indication of the presence or absence of driving skill, either. Oh, wait, yes it is.
- swombat 17y agoDriving is a far simpler skill than programming. The fact is, most people in the world are capable of driving a car, after proper tuition. Most people in the world are incapable of developing quality software, after any amount of tuition. I think one huge problem with software engineering is that hardly anyone within the industry can even agree about what the "gold standard" should be. In those circumstances, it's extremely hard to figure out what a "proper" certification should entail. Even decent certifications end up being opinionated pieces of paper that don't really mean anything to most of the industry. Fundamentally, programming is about problem-solving. Beyond an IQ test, I'm not sure how you can certify that effectively.
- 17y ago
- mgrouchy 17y agoI would argue that certification has very little do with the quality of software that a developer would produce or a baseline level of competence. We generally hope that a degree would give you a baseline level of competence, but I'm not sure that is entirely true either.
- gdp 17y agoDegree programs that contain certain requirements could be accredited as being equivalent to a certain certification. Not all degrees programmes include even the first thing about software engineering - they have plenty of programming, but nothing that would actually ensure that people have a systematic approach to software development.
- cema 17y agoThis is basically a CYA ("cover your ass") argument. It seems to be a correct one. Which explains the (mostly negative) attitude to certifications from the community.
- cousin_it 17y agoWoah. People usually oppose certification because it creates barriers to entry. (In particular, I subscribe to this point of view even though I'm a long-time programmer.) Now this guy opposes certification for the opposite reason - that it makes entry into the profession too easy. In a better world this would've been some kind of clever postmodern provocative trick, like Alan Sokal or whatever, but something tells me this is for real.
- huhtenberg 17y agoAn anecdote. Back in late 90s I managed to get second best score in the country (for that year) in Visual Basic exam under Microsoft Certified Solution Developer program. The catch was that I had have never written a single line in Visual Basic nor had I have any substantial database development experience. So, yeah, it is entirely possible to get certified and not know a thing about a certification subject. Guy's got a point.
- gdp 17y agoThat's just an example of a bad certification process. Being able to provide an example of bad certification does not invalidate the entire concept.
- derefr 17y agoCan you give an example of a good certification process for developers? I can't think of a one I would hire based upon.
- bfung 17y agoHow about making the person taking the certification create working, readable programs, and have them submit their answers electronically. Like how programming assignments were in college, except without the rife copying between the participants. I think this test would weed out many people from the very beginning.
- henning 17y ago> Joe the Plumber heard that you can make more money programming than plumbing and decided to suddenly become a programmer. Where did Joe the Plumber get that misinformation?
- RyanMcGreal 17y agoFrom a certified developer.
- gloob 17y agoFrom a developer certifier.
- synnik 17y agoI've always said that certifications are a base level of competence for a job, not a proof of expertise. When a senior dev rants about how they don't need a certificate, I agree, but counter them with the question: If certificates are so easy to get and meaningless, why haven't you bothered to get them? Note: I can think of a number of reasonable answers why not... but their response to that question is often enlightening as to exactly what kind of dev they are.
- HeyLaughingBoy 17y agoand meaningless Aren't you answering your own question here?
- cschneid 17y agoIn my opinion, they signal different things to different hiring entities. To a big corp, it signals that you play by the rules, and that a 3rd party has vouched for you. To a small company, it signals that you don't learn by yourself, and expect things spoonfed. I'm not saying either is wrong, but they are different mindsets, large companies have more need to order than small companies.
- timwiseman 17y agoTo a small company, it signals that you don't learn by yourself, and expect things spoonfed. I don't think they say that at all. Now, I do get that impression about some people that list tons of training classes on their resume (especially the ones that list training classes without an accompanying certification). Personally, I hold an MCBDA, MCITP, and A+ certifications. I pepared for the MCDBA and MCITP on my own through a combination of books, websites, and hands on toying with the systems. I prepared for the A+ in a peer group. I have had a mentor that taught me a tremendous amount, but I never took formal classes for any of it, or expected any of it to be spoonfed.
- zmimon 17y ago> certifications are a base level of competence for a job Unfortunately some of the certified people I've met have been so genuinely awful that I don't think you can even claim that. I tend to be with the article author on this one - people tend to get certified because they are unable to compete in other ways and want to bolster their resume.
- johnohara 17y agoA former field service rep of mine now runs ads on the local cable news channel selling mortgage refinancing packages. I was sitting there one night thinking 'I know that guy.' And I did. He looks good on tv too. Lost some weight, big smile, nice clothes, smooth delivery -- same as when he used to say, "I not really sure, let me call Colorado and escalate this."
- mosburger 17y agoI've always wondered if the "barrier to entry" was a way to stem the tide of offshoring of IT jobs. If it somehow becomes more difficult for people outside the United States or Europe to become "certified", and large companies start insisting that their work be done by "certified" developers, you'd effectively make it more difficult to hire offshore developers. Of course, that assumes that it is more difficult to become certified overseas, and I doubt that would ultimately be the case. It'd probably still be financially advantageous for outsourcing firms to invest in the means to certify offshore developers.
- igrekel 17y agoActually from my experience with offshore companies, they often provide more certified developers and architects and they use this number or ration as a selling point. Sadly I cannot point to any source or statistic to support this.
- wildjim 17y agoDidn't Microsoft used to use a "quota" system for their certification, too? They determined how many people, per country, they would allow to be certified, and if too many got the passing mark, the raised the requirement "appropriately" for following exam-takers; but not based on bell-curve stat's, etc, etc.
- anonjon 17y agojust unionize already.
- c00p3r 17y agoMany people got certificates because it is very hard, difficult and annoying for them to show their abilities or repeat a moderate-difficult task. Active developer with daily practice does not required any certifying papers. Good developer even didn't hide his code. Piles of high quality code. Look at the people who bring us linux, freebsd, openbsd and thousand other projects.
- igrekel 17y agoMy personal uneasiness with certifications is partly due to the fact that so many people in IT organizations were fired without credentials. There are technical or college or even graduate degrees in subject related to what needs to be done in IT. It is just sad that after ignoring them for so long, they now turn to these commercial offerings who often don't focus on the real problems at hand in the sense that the problem is rarely technical. That and also that several people (and I don't want to generalize because they aren't all like that) I have met with such certifications have belief that there is a "one true way" or recipe of doing things and are uneasy to adapt or step out of this course. Maybe it creates in these people the false conviction that there is an infallible answer to all problems.
- mikeytown2 17y agoHaving previously been a CCNA, I would say that Cisco has some of the best certificates around. If you have a CCIE cert nearly every door is open to you.
- nitrogen 17y agoIt's my view that certification is an attempt by non-programmers to find some substitute metric that allows them to measure a programmer's worth instead of using the only metric that should matter, the quality of their actual work. I'm not convinced that this is necessary or even possible. Could someone please explain to me why a market-based meritocracy for programmers isn't good enough? The good programmers either establish a reputation and references by doing quality work for other companies, or they can provide examples of code they wrote independently. I think that the lack of mandatory certification is one thing that has allowed software to become such a vibrant field. It's as much an artistic or creative profession as an engineering profession. For the jobs that require engineering precision, a developer's work (or an artist-for-hire's portfolio) should be sufficient qualification.