5 ms·
Woah. 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 pr
by cousin_it 17y ago
Woah. 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.
- gdp 17y agoYou're talking about programming and creating programs. That would be a really, really useless certification.
- bfung 17y agoThat would be a really, really useless certification. Please explain? The ancestor post by huhtenberg says he obtained certification for Visual Basic although he never wrote a single line of it before. My suggestion for the certification process is to actually use the skill at question, and using that as a basis for obtaining the paper that says "Yes, I can do this proficiently", where the skill in question is software development, not memorizing book knowledge. Why not test software development by making the test taker develop software?
- gdp 17y agoBecause there is no objective measure for "quality" within an individual implementation within a language. The best we can hope for is some guarantee that people know what the tools and techniques available to them are, and that they know the factors that influence software quality. That would be more valuable than being language certified.
- huhtenberg 17y agoBack when I worked for a large networking hardware company, we tried it a couple of times. It didn't work, people cheat. We asked to implement a splay tree container in C. Got back clean and working code, followed up with phone interviews, then brought these guys in (from another city) only to discover they didn't know what the offsetof() was. Even though it was used in the code they have submitted.
- gdp 17y agoNo, hiring on the basis of a certification would be silly. Declining to hire on the basis of a lack of certification might not be. Here's a basic idea. It might be one of many: Software x has been developed in the following way (explained here). Which of the following are not valid statements about x? 1) x is free of defects 2) We can have confidence that x will work under these circumstances <...> 3) ... I mean, sure, you would need to contrive a proper example, but that is the kind of thing I am advocating. It should be a test that a competent developer who actually thinks about quality at all should be able to pass without much in the way of study or "extra work". People who do not think about the quality of the software they produce would need to learn about these issues.
- timwiseman 17y agoI don't think you should hire on the basis of any certification, but they make an excellent flag as to whether someon should get the interview. Even in screening resumes it absolutely should not be your only deciding factor, but it is one good factor to look for when going through large stacks of resumes.
- theli0nheart 17y agoI wholeheartedly disagree. Programmers can learn to be great at what they do by _doing_. How many doctors do you think could learn what they know without going to medical school? None. This is why you must have an MD to practice medicine. Programming has no barrier to entry. One of the only ways to see how well someone can write code is by actually looking at their code. There's no shortcut, for better or for worse.
- timwiseman 17y agoEverything you said is right. The best way to judge a programmer is through a combination of talking with them, reviewing their code, and using a finished product they made. With that said, most hiring managers are deluged the moment they announce a job opening. You cannot practically do a code review on every applicant. When staring at a stack of resumes you need to be able to tell who is worth the time to do an interview and possibly a code review on. When I see a certification on a resume, it tells me a couple of things: 1. They studied at least enough to pass that test. As someone who has passed many of these tests, I am well aware that for most certifications this is a low bar indeed, but that is more than the nothing that many resumes have, especially for entry level positions. 2. They care enough to take the time to do this. I know they are doing it primarily to impress hiring managers, so again this is a low bar but it is more than nothing. Especially when dealing with entry level candidates, it is a valuable data point in determining who gets an interview. I would never recommend making a hiring decision based on it, but, especially at the entry level, it is a good way to help pick out people for interviews and possible code reviews.
- deleted 17y ago[deleted]
- Sidnicious 17y ago"Who certifies the certifiers?"
- skolor 17y agoA similar anecdote (although not directly related to programming): I got my MCSA while in high school. When Microsoft offer the Dreamspark certifications, I jumped on the free upgrade test, and went and took it. I spent an hour or so studying for it, and got >900. Does that mean I am qualified to manage a Windows 2008 domain? Maybe. What it does mean, however, is that I am at least somewhat familiar with the tools that are available. While this may not be the same situation for programming certifications, I know for a fact that the MSCx certs have been helpful. While I don't know the ins and outs of maintaining a server, I am consistently shocked when I talk to a "server guy" who doesn't understand Active Directory structure at all, or the various types of inheritance that go on in Windows. I may not know everything, but at least I know what I don't know. That, I think, is the biggest benefit of a certification. It may not show what you do or do not know, but it does show that you at least know of the topics, which is more than can be said about many people.
- halo 17y agoThey aren't incompatible viewpoints. As a thought exercise, imagine a job that requires a qualification that has little-to-nothing to do with the actual profession. This would both artificially increase the barrier to entry for people with skills but no qualification, while decreasing the barrier to entry to those without skills who have passed the qualification.
- cousin_it 17y agoYou have a point. Thanks.