Darrell Norton's Blog [MVP]

Sponsors

The Lounge

News

  • Darrell Norton pic

    MVP logo

    View Darrell Norton's profile on LinkedIn

    Currently Reading:

    weewar.com

Advertisement

Images in this post missing? We recently lost them in a site migration. We're working to restore these as you read this. Should you need an image in an emergency, please contact us at imagehelp@codebetter.com
How to fix the software development industry

Jay has some musings on Bob Reselman's Coding Slave book. If you've read Coding Slave (now a free download), you'll realize Bob was proposing one method of fixing the current state of software development by proposing a programmers guild. Jay offers two suggestions, work-life balance and religion/spirituality. And Steve McConnell thinks it should be industry certification.

In order to propose a solution, we have to look at the problem in more depth. A programmers guild wouldn't work due to a prisoners' dilemma problem. If everyone cooperates, we can do great things. But the individual motivations ALWAYS reward not cooperating. Someone will say, if I don't work for the programmers guild, I can get a little less money for a lot less work because I don't have to follow those procedures and don't have to pay dues. And some company somewhere will take a defector up on that offer. Work-life balance generally works only for employees with family. Younger employees are generally motivated by money, and dedicated developers are motivated by recognition, with all good software developers being motivated by the technical challenge. And unlike medicine, where the backers of certification are usually the state board, the IEEE certification is backed by training companies (Can you say conflict of interest? I knew you could.).

No, the foundational problem is money. Everyone has heard the "great programmers are 10 times more productive" thing. And everyone that quotes this immediately follows it up with "and since you only have to pay them twice as much, great programmers are a steal!" Even though great programmers are motivated by more than money, who reading this wouldn't mind a little extra cash in their paycheck? Right.

In addition to paying great programmers more, we need to pay crappy, or maybe "less sophisticated", programmers much less. The reason that companies only want to pay 10x productive programmers 2x as much is because of all the "dead wood" that they have to pay too much for. Haven't you ever had a negative producer on your team? Just remember that the company was paying them almost as much as they were paying you, and all they were doing was slowing you down. It upsets companies just as much as it bothers you.

Check out the following figure of value and salary. The red area is wasted money. This is the salary and benefits companies pay for people that are not contributing as much value as they are extracting from the system. (As an aside, nature has a term for life forms that do not give back to the host....)  The purple area is the unvalued contribution, also known as the CEO's bonus zone. The bigger the purple area, the bigger the CEO's bonus.

What the industry needs to do is to bring the two lines more into alignment. For example, in the following image the salary line is more closely matched to the contributed value line. This means great programmers get paid a lot more. This also means that bad programmers get paid a lot less. This would force out of the market those programmers that expect to be paid a lot but that contribute very little.

Some might argue that the lines should match exactly. This will never happen since nobody, programmers nor businesses, have perfect information about the value line. Also, there will still be some entrants into the market that will be paid slightly more than they are worth, because they will be expected to move up the curve quickly. This is analogous to sports rookies getting paid obscene amounts of money when they won't take their team to the Super Bowl for 4 more years.

So that's my proposal for improving the software development industry. How exactly we go about doing that is another matter.


Posted 03-29-2005 6:51 AM by Darrell Norton
Filed under:

[Advertisement]

Comments

Eric Wise wrote Fixing the software development industry
on 03-29-2005 8:21 AM
Darrell has posted his opinion on how to address some of the problems in the software industry today...
Bob Reselman wrote re: How to fix the software development industry
on 03-29-2005 9:45 AM
Nice analysis.

Allow me to share a small amount of my thinking on the Guild idea. It seems as if there are some present day Guilds that work well, The Screen Actors Guild, The Screen Writers Guild and the Directors Guild for example. Granted, these guilds exist in a project based industry, film. And, once the project is over, the employees 'go away'. It seems as if software projects just go on, and on, and on, until they ship (somehow) or someone pulls the plug.

You bring up some interesting thoughts on the nature of human motivation. I am very interested to know your thinking on this question: What do you suppose motivates (motivated) an artist such as Van Gogh, Jackson Pollock or Charles Ives? Pollock made some money for his art, but Van Gogh and Ives made not a cent from an endeavor to which they devoted their lives. I wonder, is there something intrinsically motivating in the act of creation?

Is is possible that some software developers approach making software as an art form?

Again, nice analysis.
Steve Eichert wrote How to fix the software development industry
on 03-29-2005 10:05 AM
How to fix the software development industry
Sahil Malik wrote re: How to fix the software development industry
on 03-29-2005 10:58 AM
Have a company run purely by consultants and profit sharing. Thats how you fix this problem.
Thomas goes .NET wrote Die Rettung naht
on 03-30-2005 2:12 PM
John Rusk wrote re: How to fix the software development industry
on 04-01-2005 7:15 PM
Good post.

Do you have a follow up post on how to identify great programmers? ;-)

I thought Paul Graham' comments on the subject were very good - that the only way to identify a great programmer is to work with them, and even then it's still difficult. If it's that hard for one geek to measure the skill of another (and I believe it is) then imagine how hard it is for a non-geek manager to figure out where the "value line" is....

Paul Graham's article is here, in case you missed it: http://www.paulgraham.com/gh.html
Darrell Norton wrote re: How to fix the software development industry
on 04-04-2005 9:50 AM
John - I haven't written my follow-up blog post yet. There's been some good discussion going on by Steve Eichert and others (check the trackbacks above, and if someone doesn't see theirs, please send me the link!) and I'm waiting to see what direction it goes.

I like Paul Graham's essay, in fact I like most of what he writes. And it jibes with what other successful people write regarding hiring. :)
John Rusk wrote re: How to fix the software development industry
on 04-06-2005 1:41 AM
>There's been some good discussion going on by Steve Eichert and others

Ah, they were all shown as Anonymous. I would have followed the link earlier if you'd put your name on it Steve :-)
Douglas Reilly wrote re: How to fix the software development industry
on 04-06-2005 6:47 AM
The lack of career paths for really good developers, who wish to remain developers, is a topic I have more than passing interest in. I have posted an article here:

http://www.red-gate.com/other/coder_opinion.htm

On exactly that topic. I think finding a way to reward great talent, and keep that talent doing what it wants to, will go a long way towards fixing a lot of what ails the software development business.
Darrell Norton wrote re: How to fix the software development industry
on 04-07-2005 7:21 AM
Doug - I agree.
Steve wrote re: How to fix the software development industry
on 04-08-2005 6:16 AM
Not sure why that came through as Anonymous, perhaps that's how Community Server handles it?
Darrell Norton wrote re: How to fix the software development industry
on 04-08-2005 8:03 AM
We've had some problems with CS, but we've worked most of them out.
Rui Quintino wrote Entrevistas e carreiras na
on 04-25-2005 3:06 PM
Terry Oldberg wrote re: How to fix the software development industry
on 06-05-2005 12:30 PM
I have data bearing on the topic of programmer productivity, salary and personnel selection in software companies that may interest you. Predicting productivity is the object of the scientific field of Personnel Selection. Research in this field has revealed that the expected value of a job candidate's labor varies linearly with the product of: A) the standard deviation of productivity in the occupational field B) the candidate's value for the predictor that is used to predict the candidate's productivity and C) the predictive validity of the quantity that is used to predict the candidate's productivity. My Web site contains a prediction of my productivity (http://www.oldberg.biz/honors.htm) and provides data suggesting that it is quite unlikely that an software firm could hire a more productive employee. Another page on my Web site (http://www.oldberg.biz/performanceappraisal.htm) demonstrates that my supervisor rated my productivity at the top of the scale at my most recent performance appraisal.

This material has been posted at my Web site for a year and a half. I always reference it in appyling for programming jobs. The result?: my salary has remained at $0 during this period, for nobody has hired me.

Personnel Selection science has established the predictive validities of a number of different predictors of a candidate's productivity. ("Predictive validity" is the correlation coefficient between a predictor and productivity; its value varies between -1 and 1.) Age has a predictive validity very close to 0. Score in an unstructured interview is only slightly better. College grades and years of college have low prodictive validities. What works best is a linear combination of IQ and integrity score. I find, however, that hiring managers seek data on my score on the predictors that have low predictive validity and exhibit no interest at all in the predictors that have high predictive validity.

I conclude from all of the above that the vast majority of hiring managers are completely ignorant of findings in Personnel Selection science and rely on intuition in selecting employees.
Brendan Tompkins [admin] wrote CodeBetter.Com Year In Review...
on 12-21-2005 1:33 PM
It’s been one year since CodeBetter.Com first opened it’s doors and  I can hardly believe...
Brendan Tompkins [admin] wrote CodeBetter.Com Year In Review...
on 12-21-2005 1:33 PM
It’s been one year since CodeBetter.Com first opened it’s doors and I can hardly believe it’s been that long. I’ve been reflecting on where to go from here, and looking back at the highlights from the last year. I’m pretty damn proud of the guys cranking out all of these posts, and pretty damn thankful for all of you out there who have participated, in this community. You’ve kept us in line, helped us learn, and spread the word. Our RSS subscriptions put us up there as one of the most subscribed to .NET blogging sites in the world.
Brendan Tompkins [admin] wrote CodeBetter.Com Year In Review...
on 12-21-2005 1:35 PM
It’s been one year since CodeBetter.Com first opened it’s doors and I can hardly believe it’s been that long. I’ve been reflecting on where to go from here, and looking back at the highlights from the last year. I’m pretty damn proud of the guys cranking out all of these posts, and pretty damn thankful for all of you out there who have participated, in this community. You’ve kept us in line, helped us learn, and spread the word. Our RSS subscriptions put us up there as one of the most subsc
Brendan Tompkins [admin] wrote CodeBetter.Com Year In Review...
on 12-21-2005 1:44 PM
It’s been one year since CodeBetter.Com first opened it’s doors and I can hardly believe it’s been that long. I’ve been reflecting on where to go from here, and looking back at the highlights from the last year. I’m pretty damn proud of the guys cranking out all of these posts, and pretty damn thankful for all of you out there who have participated, in this community. You’ve kept us in line, helped us learn, and spread the word. Our RSS subscriptions put us up there as one of the most subsc
Brendan Tompkins [admin] wrote CodeBetter.Com Year In Review...
on 12-21-2005 1:45 PM
It’s been one year since CodeBetter.Com first opened it’s doors and I can hardly believe it’s been that long. I’ve been reflecting on where to go from here, and looking back at the highlights from the last year. I’m pretty damn proud of the guys cranking out all of these posts, and pretty damn thankful for all of you out there who have participated, in this community. You’ve kept us in line, helped us learn, and spread the word. Our RSS subscriptions put us up there as one of the most subsc
Brendan Tompkins [admin] wrote CodeBetter.Com Year In Review...
on 12-21-2005 1:46 PM
It’s been one year since CodeBetter.Com first opened it’s doors and I can hardly believe it’s been that long. I’ve been reflecting on where to go from here, and looking back at the highlights from the last year. I’m pretty damn proud of the guys cranking out all of these posts, and pretty damn thankful for all of you out there who have participated, in this community. You’ve kept us in line, helped us learn, and spread the word. Our RSS subscriptions put us up there as one of the most subsc
Brendan Tompkins [admin] wrote CodeBetter.Com Year In Review...
on 12-21-2005 3:40 PM
It’s been one year since CodeBetter.Com first opened it’s doors and I can hardly believe it’s been that long. I’ve been reflecting on where to go from here, and looking back at the highlights from the last year. I’m pretty damn proud of the guys cranking out all of these posts, and pretty damn thankful for all of you out there who have participated in this community. You’ve kept us in line, helped us learn, and spread the word. Our RSS subscriptions put us up there as one of the most subsc
Brendan Tompkins [admin] wrote CodeBetter.Com Year In Review...
on 01-13-2006 10:29 AM
It’s been one year since CodeBetter.Com first opened it’s doors and I can hardly believe it’s been that long. I’ve been reflecting on where to go from here, and looking back at the highlights from the last year. I’m pretty damn proud of the guys cranking out all of these posts, and pretty damn thankful for all of you out there who have participated in this community. You’ve kept us in line, helped us learn, and spread the word. Our RSS subscriptions put us up there as one of the most subsc
Brendan Tompkins [admin] wrote CodeBetter.Com Year In Review...
on 01-13-2006 10:29 AM
It’s been one year since CodeBetter.Com first opened it’s doors and I can hardly believe it’s been that long. I’ve been reflecting on where to go from here, and looking back at the highlights from the last year. I’m pretty damn proud of the guys cranking out all of these posts, and pretty damn thankful for all of you out there who have participated in this community. You’ve kept us in line, helped us learn, and spread the word. Our RSS subscriptions put us up there as one of the most subsc