views:

818

answers:

23

Accountants, lawyers, doctors (and many other professions) have respected professional bodies that are responsible for awarding chartered status to the members. Through this mechanism, they gain trust and respect and can demonstrate that they adhere to a code of standards and ethics, and maintain their skills to keep them current.

Programming has a similarly large body of knowledge and a similar need for study and continual development. It is far younger a discipline than any of the examples quoted, but is of growing consequence to business, the economy, and most areas of life.

Will programming eventually become as respected a profession with a powerful professional body? (Lawyer and accountant jokes aside!) Should we be aiming for this?

Possibly similar to this question.

+1  A: 

Some countries already have somehing like this.

In the Netherlands you can be registered. But you need to be invited which (I think) is an error in the system.

I'm not sure if this helps. Besides, if a customer loses faith in a software company, he is free to go elsewhere for another project.

Gamecat
+15  A: 

Only if you wish to kill the profession. Credentialism only serves to prevent entry into the field. The only real benefit to members of such organizations is to prevent competition. Look at how many start ups have people with little or no formal training. Would the world be better off without Microsoft, Dell, or Google to name a few?

Jim C
or credentials give credit to those in a field allowing those who use them to know they're trustworthy (or they're more likely to be trustworthy). Overall I agree with what you say but you have a very cynical view of it.
PintSizedCat
I am sure many will label me as a cynic. I prefer to think of it as experienced. I certainly have seen this in other areas.
Jim C
Isn't this the point of professional certifications? If you'd like an objective display that you know your stuff, get some certification that you can put on your business card that tells people. Essentially, that's all a professional organization membership would do as well.
rwmnau
To support Jim's view, just look at doctors. If they didn't have the professional body limiting entry (AMA determines number of spots in all med schools), I'm sure basic services would be cheaper.
dbkk
Credentials don't prove you know what you're doing. It just proves that you can find a way to pass a test and that you have enough money to buy your way into the professional organization.
Brian Knoblauch
I'm also certain that the snake oil salesmen and new age nutjobs would start billing themselves as "Doctors", and the national health would get even worse, as we decended into a dark age. You have to accredit to know who's competent without doing an exhaustive survey of someone.
Paul Nathan
Jim C, I couldn't have said it better myself. +1
rmeador
If anyone's truly interested in a brief, but interesting read on Credentialism, please pick up a copy of "Dark Age Ahead" by the late Jane Jacobs. There's a chapter on why all of our college and university degrees already are credentials in the sense you're talking about.
Chris Cameron
@Jim C: When I look at the number of accountants or lawyers in the world, I don't see professions being killed by credentialism! :)
freshr
@freshr, the professions haven't been killed off, but their integrity has. Does anyone trust lawyers or accountants (other than family friends) at all anymore?
Brian Knoblauch
@Jim C: Professional accreditation is usually done by an independent body that represents the profession - Doctors are not accredited by Glaxo-Smithkline-Wellcome or Pzifer. The companies you mention are perpetuating skills on their platform for economic purposes, rather than taking an independent view for the good of the profession.
JBRWilkinson
+7  A: 

If you are interested in this topic, I can recommend the book "After The Gold Rush: Creating a True Profession Of Software Engineering". Not by Neil Young, but by Steve McConnell, the same guy that wrote "Code Complete".

anon
A: 

Programming is in many ways a design activity. You cannot award a design status. Actually, you can but it won't mean anything.

Absolutely avoid this. Otherwise the industry will be set back through huge bureaucracy.

User
What about architects? They get prizes and admiration for their design.
Aaron Digulla
+1  A: 

At first, I was tempted to dismiss the question but when thinking more about it, there is something. Doctors, for example, must follow the Hippocratic Oath. Lawyers will lose their job when they are found to be corrupt.

On the other hand, most developers I've met so far don't really care for networking or having a political body to watch over them. So what's in it for us? Surely, it would be cool if the script kiddies and the crackers would need to go through some kind of assessment process before allowing them to start crashing computers on the other side of the globe. Unfortunately, I don't think that this genie can be pressed back into the bottle.

Therefore, I still think that things like SourceForge and StackOverflow are better suited to our needs: To build a reputation among ourselves and to heck with the rest of the world. If they can't or won't install security patches as we advise, why should we feel mercy for their cries after losing their data?

Aaron Digulla
+4  A: 

I once read an amazing article on a nation wide magazine written by a famous economist (in my country) and it summary it said:

  • I have a degree in economics.
  • I have 3 phds.
  • I have a second degree in management.
  • I teach a post graduated course at the university XXX.
  • I am not registered at the economist professional body (don't know if it's the write translation but you get the point.), so I cannot legally sign any projects. When I have to I just ask one of my STUDENTS to sign for me.

I guess this shows what I think of this matter.

Sergio
You have reminded me of a quote from - I think it's - P.J. O'Rourke on the accuracy of economic methods "Economists have predicted eleven out of the last three recessions" :)
Binary Worrier
We have engineering physics profs that aren't allowed to change a light bulb in their desklamp.
Martin Beckett
+1  A: 

I believe this will happen if and only if:

  • Programmer compensation goes up. The average lawyer earns 3-4 times what the average programmer does. That's why so many people apply to law school. There is simply not enough money involved to induce people to study Comp Sci.
  • Demand for programmers goes down. Though the current economy has shaken things up a bit, there's still far greater demand than supply for programmers.
  • Offshoring is no longer common practice. There are very good reasons to hire a lawyer locally. Those reasons don't apply to programmers, which is one big reason so many programming jobs go overseas.

I honestly don't see any of these happening any time soon. Professional credentials create barriers to entry of the sort we simply don't need right now.

rtperson
+1  A: 

A professional body acts as both a barrier to entry, and a seal of approval. In law, and medicine, (I don't know about the others), the bodies are national.

Given that the IT sector invented the internet, and the transnational spirit that that encourages, I'm not sure if there is space for multiple national bodies to arise.

This would leave space for a single global standards body?

But what would be the point of its existence - a certification body to assert an equivalence of training? From a business point of view, either you are small enough to only be employing people from an education system you understand, or you're big enough to understand multiple systems.

jamesh
+4  A: 

I don't think in the general sense the idea will ever have merit. Consider:

  • The discipline is so varied. What makes a good embedded developer has little to do with what makes a good web developer, or shrink wrap developer, or line of business developer, or data base developer, etc.
  • what makes a good web developer, for example, is very different what made a good web developer even a few years ago, and accepted practices vary widely from place to place or platform to platform.

However, I feel there is a need/market/desire for a credentialing process for programmers that build systems for use in medical equipment or the space program, to name a couple examples. In short: systems where the software could endanger human life.

The problem here is that as soon as such a process is created, about 50 other places that don't really need this process will start enacting policies that require these programmers: military and other government agencies come to mind, as do things like ISO9001 certification.

Thus the market would drive up prices for these programmers. You'll start seeing a lot of people gaming the system, and if there's one thing programmers are good at, it's gaming these systems.

In the end, the credential wouldn't really matter. You'd have companies hire uncredentialled programmers for positions that require the credential, only to send them to a two week training course teaching them how to pass the credential requirements. Every CS university would have a course in how to do the credentialing. It would be meaningless, and serve only to limit access to the profession.

Joel Coehoorn
+4  A: 

No. Anybody can download a basic compiler and start programming their very own "Hello, World" program, and nobody is hurt physically, legally, or otherwise by that. Medicine, law, and accounting, to use your examples, all have very real legal or physical consequences when an amateur starts practicing on their own without proper training and licensing.

There's a pretty obvious difference in consequence between an untrained, unlicensed programmer writing code and an unlicensed doctor performing surgery or an untrained lawyer representing somebody in court. The untrained programmer might not write the best code, but it's not very likely that their customer is going to wind up dead or in prison as a result.

Jeromy Irvine
you never know :)
Robert Gould
Ok, Lets through out the obvious ones. Engineering has Licensing, or for that matter so does Plumbers and Electricians. And on the consequence side, I would also counter, Missile Control systems, Nuclear Control, Air Flight Control. Robot controls. Banking Market systems. yep can cause harm.
DouglasH
@DouglasH, yes, and improper Engineering, Plumbing, and Electrical work can all have serious physical side effects, both to person and property. (Some risks are greater than others, of course.) As far as Missile Control, etc., there's a reason why I said "not very likely" and opposed to "never".
Jeromy Irvine
To a lot of people, the fact that anybody can download a compiler and start programming is the problem in the first place. The barrier to entry is so low that any schmuck can get a book from the store, play around with stuff and then call themselves a programmer and land a job.
Wayne M
Wayne-M, that is actually what is so great about computing. I think that is a bit pompous. You seems to suggest we should put up articifial barriers. Do you happen to enjoy bureaucracy? Perhaps you should join some sort of Eastern Europe governmental agancy.
BobbyShaftoe
Actually I'm one of those "anybody can get a book" people myself. My point was a lot of folks dislike the idea and think it drives down wages because someone self-taught can land an equivalent job for less money and still say they're a programmer.
Wayne M
+6  A: 
skiphoppy
Actually, licensing ensures that we know professionals are minimally compentent.
Paul Nathan
"In other words, the general public is ignorant and shouldn't have the power to force crazy ideas like licensing onto others, taking away their freedom and prosperity" I agree however, how do you decide that one person is ignorant or not ? You licence him as "Not ignorant"... hard issue.
Nicolas Dorier
Slashene, just don't allow people to have power over other people's business transactions, and the problem is solved.
skiphoppy
Paul, please support your assertion.
skiphoppy
I disagree with the extremism here. If I'm going in for brain surgery, I *like* the idea that some respected organization has given its imprimatur to my surgeon. The notion that the market is perfectly self-regulating is being heartily undermined right now by the market itself.
rtperson
It is not the *ignorant* public that is forcing licensing on everyone. It is our wonderful elected officials who know exactly what they are doing. Securing those multi-million dollar jobs/paybacks after their public life is finished.
Dunk
rtperson, if you're going in for brain surgery, then conduct due diligence. Nothing about compulsory professional organizations for every practitioner from brain surgeon to toenail fungus cleaner assists that at all. Voluntary organizations work fine.
skiphoppy
and, rtperson, there is no free market right now, so any ideas about the free market can't possibly be being undermined. Please read a basic economics textbook before making assertions.
skiphoppy
@skiphoppy: How do you know what I've read and what I haven't? The problem with zealots like yourself is that it's absolutely impossible to have a reasonable conversation with one. But you're making that point better than I ever could.
rtperson
I think that it's self-evident. But there's no arguing with a libertarian who cannot give up his share of the commons.
Paul Nathan
rtperson: one who is educated in economics will recognize that the US economy, particularly the lending industry, was heavily regulated prior to the meltdown. The amount of regulation has only increased since then. You cannot make any assertion about a free market on the basis of that data.
rmeador
@rmeador: no, but one who is educated in economics *and* history can reasonably assert that unregulated markets are prone to exactly the same sorts of meltdowns: cf the British Banking Crisis of 1878.
rtperson
Britain did not have an unregulated market in 1878. They had the very mercantilist system that America's system was based on. Central banking, etc., if I understand correctly. http://mises.org/story/3167
skiphoppy
Check it out, in 1870 the Bank of England existed, and had authority over interest rates: http://en.wikipedia.org/wiki/Bank_of_England . That's not an unregulated market.
skiphoppy
So, since mercantilist systems have been around since the 17th century, what's your counterexample? Navajos trading pelts? The Knights Templar? Crying that the system is broken is easy to do. Can you find name me one existing system that follows your principles?
rtperson
The principles can be derived logically. The last two books linked to in my post do exactly that. This is not an experimental science; it is an exercise in provable logic. You've already demonstrated misconceptions, such as thinking 1878 Britain was a free market. Please try reading those books.
skiphoppy
A: 

No. We don't even have a single standard of practice--how could you possibly enforce one?

catfood
+3  A: 

The accreditation process would simply not be able to keep up with the field...

Marc Gravell
upvote for remember to checking community wiki (not that it matters, for the same reason).
Joel Coehoorn
Well, since I commented on the post that this should *be* a wiki, it would be inappropriate for me not to have ;-p
Marc Gravell
Well, I don't think there should be such licensing regime; however, I don't think your reasoning holds. Other fields such as medicine advance at very rapid pace and require clinicians to undergo continual learning and examination.
BobbyShaftoe
Paul Nathan
Bobby - but how fast do other engineering fields advance? how long would it take the engineering institutes to aprove a new programming language?
Martin Beckett
+1  A: 

So only graduates of Java Schools would be allowed to program?
Or you could have the industry run it, so a few $$$ to MSFT for your VBA professional engineer certificate and you're all set.
It would get rid of Linux, Apache, C, the Web etc.

Unless of course it was possible to write code in other countries. You could call it "out-shoring", or "off-shoring" or something!

Martin Beckett
A: 

Accountants, lawyers, doctors (and many other professions) have respected professional bodies that are responsible for awarding chartered status to the members. Through this mechanism, they gain trust and respect and can demonstrate that they adhere to a code of standards and ethics, and maintain their skills to keep them current.

The truth is that through this mechanism, entrenched interests create barriers to entry in a market that they want to continue to control.

The way to establish trust and respect is through the competition mechanism of the free market. Programmers who meet needs will be rewarded; those that suck or harm or defraud their clients will go out of business

As long as somebody's willing to continue to pay for a particular programming service, it obviously meets their needs to their satisfaction. Businesses don't need a programmers' guild telling them whether or not their programmers meet their needs.

skiphoppy
Your application of "free market" principles cannot apply at the level of individual programmers due to the lack of quality information about the competency of an individual. Previous employers are extremely hesitant to give meaningful references due to legal liability issues.
freshr
rotfl; try to read an economics textbook some time, freshr. Economics is all about the actions of individuals. The market has lots of great mechanisms for propagating information about individual persons and businesses.
skiphoppy
btw, if you're dealing with restrictions on the freedom of speech, then you're not dealing with a free market.
skiphoppy
You seem keen to advertise your grasp of economics. In the absence of any way to verify it, I'm glad to defer to your superior knowledge.
freshr
freshr, grab one of the books in my other post and start reading. You don't need to know anything about my grasp of economics; start studying for yourself.
skiphoppy
Well, if you want to play this game, your statement "As long as somebody's willing to continue to pay for a particular programming service, it obviously meets their needs to their satisfaction" does not logically follow. It is quite possible and common that such services are not satisfactory.
BobbyShaftoe
If that is so, Bobby, why would they continue to pay for it? Obviously it is more satisfactory than any alternative. I'm not talking about paying first time; I'm talking about _continuing_ to pay for it.
skiphoppy
Some times people are stuck between a rock and a hard place and they don't know what else to do or there aren't a lot of good options. It's certainly not necessarily about being satisfied. There is where some of the "free market" jibber jabber goes to far.
BobbyShaftoe
Mandatory certification does not increase the number of good options available. If you're stuck between a rock and a hard place, and paying for substandard work is what you deem to be your best option, then all mand. cert. does is eliminate your best option. It doesn't increase supply or quality.
skiphoppy
Mandatory certification does not necessarily limit your best option; you're just playing with three or four different concepts and throwing them together. My issue is with your Panglossian view of the free market.
BobbyShaftoe
Mandatory certification doesn't make the best option affordable. If you can't afford it b/c you're "stuck between a rock and a hard place," mand. cert. is still not going to help. All it does is eliminate the cheaper options of less quality.
skiphoppy
A: 

I think there is a vast difference in the manner professions like Accountants, Doctors work and the way the software profession works (I better not comment on the legal profession). Doctors and Accountants are a methodical lot. The community has grown on the foundation of methodical practice.

Its not that Software profession has not tried to build methodologies but then it has evolved more on the creative side where programmers have found it best to break the rules and get things done. Also the element of risk as it is apparent in the accountancy or medical profession is not easily visible in the software profession. Programmers hardly think of risk before they start building things. The assumption mostly is that it can be changed later if it doesn't get the job done.

That said I think software must as a first step try to emulate its better organized cousin - the hardware industry. That is where we better be aiming at.

gnlogic
I wouldn't think of it in terms of rule-breaking. The thing about programming is you should ALWAYS be doing creative work. Routine work is for the machines to do. Thus ideally every single thing you do is NEW and innovative, which is hard to regulate correctly.
catfood
Agreed catfood. That "rule-breaking" comes from something I'd been into lately ;-). Doesn't apply to the professional software industry as such.
gnlogic
+1  A: 

I'm going to be contrary and say that a professional accrediting body would do a lot for the field of software engineering and move it from software soloing, with the bugs we know and love, towards creating an actual professionalism and engineering discipline. Yes, that serves to keep out the hyper-independent.

Frankly, most of the complaints I read on SO stem from a lack of professional skill and ignorance about other people. An accrediting body, properly set up, would serve as a filter to keep the semi-competent and hacks out, and ensure solid engineering practices taught and used.

Paul Nathan
+1 for sticking your neck out on the wrong side of what to some people is clearly a religious discussion. I disagree with you -- enforced credentials would weed out some of my more talented co-workers -- but I admire your cojones.
rtperson
There is an artist mentality programmers often have. But artistic creative process and engineering process are two different things. So a professional association would demarcate the existing divide between the artist and the engineer. I strongly advocate that product software should be engineered.
Paul Nathan
+3  A: 

Professional bodies are always started with the best intent of ensuring that certain level of knowledge, quality and ethics will be professed by the members of certain occupation.

The problem is that there's essentially no external control over such organizations. After all, there's no else suited to govern the profession than the people that are most knowledgeable in it. Yet these same people are the most likely to be biased and put the interest of their guild above the interest of the society.

If left unchecked, professional bodies quickly erode in a protectionist organisations that are only aiming at ensuring the demand for professionals is bigger than the supply by creating artificial barriers to entry and raising the cost. In essence, they become an elitist type of unionized organization, aiming to protect the status quo, maximise the profit of their members, and prevent the profession from commoditization.

Franci Penov
A: 

I despise professional licenses (required by law). Their sole purpose is to deny competition and dramatically increase costs. If I have a cold or flu, I don’t need to see a doctor (around $200), just give me somebody that will prescribe this year’s batch of medication. After all, the doctor is just prescribing what the salesperson told them to prescribe this year. If I have a friend that is willing to do all the grunt work of going to small claims court for me, then I should be able to pay them to do it rather than a lawyer (around $1000). They shouldn’t be deemed illegally practicing law without a license.

How much more reasonable would these professionals’ prices be if licensing were not required? I could then choose whether to use someone with a license or not and that licensed practitioner's price would be far closer to the actual worth of their services.

On the other hand, if we had a professional software developer’s license then I assume that malpractice would go along with that license. Thus, the quality level of software done by licensed professionals should greatly improve along with dramatically higher prices. However, this would also have the side-effect of dramatically lowering the number of people who could qualify to develop software. Innovation would most likely suffer. Many developers would be driven out of the business because of malpractice. We would have to schedule several weeks a year for court time defending ourselves for any bugs we create.

In short, I don’t think we should be pushing to license software developers. We should actually be pushing to remove much of the bureaucracy of licensing that is already in place.

Dunk
You can be serious. You actually think that doctors just willy nilly pass out what sales people tell them to? You think that a layman can prescribe himself the proper medication? As for lawyers, you could pay someone subtantial sums of money in a serious criminal case and lose and go to jail because
BobbyShaftoe
of an incompetent defense. These are serious issues. I think these assertions are pretty stupid.
BobbyShaftoe
Some situations require more expertise. Go to a certified doctor or lawyer for those situations. There are other times when a doctor or lawyer is overkill. Let people make there own decisions on when those times should be, not the politicians who are just looking to line their own pockets.
Dunk
Yes, I do believe that doctors pass out what the salespeople tell them to. They're called all expense paid Hawaiian Medical Conferences.
Dunk
Conspiracy theory much?
Paul Nathan
How is stating the obvious a conspiracy theory? Let's see...pass laws so only person A can practice skill X that every one needs. Logical conclusion, Person A makes more money, everyone else gets less choices and lighter wallets. If you think the politicians care a bit about you unless you can...
Dunk
do something for them (like big wads of money) then let me know what drugs you take so I can partake also.
Dunk
Your logic is pretty bad. People who pass those laws don't necessarily benefit from those arbitrary individuals who hold those certifications. Actually, even if they did, it does not mean that is not the proper state of affairs, logically.
BobbyShaftoe
A quick search on the internet found $80 million in political donations from lawyers and $160 million from the health profession in 2008 alone. I fail to see your logic that those passing the laws don't necessarily benefit. That doesn't include the huge salaries after the political career is over.
Dunk
+1  A: 

This is an interesting question, but for other reasons. Most users only notice what we do when we do it wrong, the rest of the time most users aren't even aware that effort and experience are requried to make computers do what they do. What is really lacking is a group of professional bodies letting people know just what it is we do. Other engineering disciplines have this - electrical/electronic, civil, mechanical, etc. Software is often absorbed into the electronics field. Until people understand how difficult software is, we're going to be constantly undervalued:

3D IM Client - year and a half for a few thousand USD.

Company Portfolio $500 for about 90 days work.

Captcha Solver $250 to automatically solve captchas.

(Oh, and thanks Jeff et al for putting SO together so quick, it makes the rest of us look bad ;-) )

But to answer the question, no, programmers should not need to be part of professional bodies to practice. Work experience is always the most important factor. But, professional bodies could make our life as programmers better.

Skizz

Skizz
@Skizz: It's good to see that coders haven't undervalued themselves in regards to projects you've outlined.
_ande_turner_
+3  A: 

I think, perhaps, the biggest difference between a programmer and a doctor or lawyer is that programmers have the luxury of QA and UAT (I know it doesn't always seem like a luxury, but it is). Computer programs can be dangerous. They can delete databases and backups, they can inadvertently expose critical information to the public, and all manner of manifestations of malfeasance or ineptitude. However, a prudent company realizes this and thus will not send an application to production until it is fully tested, security audited, etc. If the program is defective, then it's back to the drawing board to correct the error.

Doctors, lawyers, and accountants do not have testing. If the doctor is a quack who accidentally kills you, it happens "in production." Thus, before you go to a doctor you want to be certain that this doctor has the necessary skills to perform the task he is given, and the best way to scale this process to to have official accreditation. It's a necessary evil for doctors, lawyers, architects, and accountants, but completely unnecessary for software engineers.

MrGumbe
A: 

Don't think it's necessary for someone to be part of a professional body to code, but it would definitely be nice to have more professional bodies that test code and certify their use in certain fields or in high-risk situations.

If a website is handling my credit card information and there's a certification from a well-recognized professional body assuring its safety, I'd feel a lot better about it.

Rei Miyasaka
A: 

I'm in favor of it. But there would have to be some kind of "Bar" exam and I just don't know how that could be implemented for programmers, software engineers, etc...

kirk.burleson