Teach Your Programmers Well



Email    print   
January 15, 2005 —  (Page 1 of 2)
Regardless of what people say about how they develop software, the best way to find real priorities is to look at the departmental budget. Things get particularly interesting when the perceived needs of the managers are not reflected in those budgets.

Enterprise Systems just published an interesting budget survey based on the voluntary replies of 250 subscribers, half of which are senior management. (You can see this survey at www.esj.com/surveys/itbudget2004.aspx.)

In that study, the disconnect between needs and spending struck me forcibly in two areas: training and staffing. The top four areas where the managers were planning to reduce spending were desktop software, desktop hardware, staff head count and training.

Cutting out unnecessary hardware and software purchases doesn’t seem like a bad idea, but cutting head count and training is a problem, especially when you compare these cuts with the top three items in the “What new IT initiatives are on your IT wish list?” category: staff salaries, staff training and staff head count. The No. 1 item in the “What one skill does your IT department need to develop most?” category is “technical proficiency.”

To quote astronaut James Lovell: “Houston, we have a problem.”

I strongly believe that you can’t produce even moderately acceptable software without excellent programmers. I also believe that it takes longer to develop mediocre programs than it does to produce good ones, and mediocrity is the best you’ll get out of an untrained staff.

Though excellence is important, it’s not innate. You achieve excellence by superb training and constant practice. By superb training, I mean classes taught in the flesh by experts in the field, not online courseware churned out by some education mill. The online stuff is no better than reading a book—it’s not useless, but you get what you pay for.

Unfortunately, our university system falls down on the superb-training front. A degree is, more and more, a job requirement, but most experienced programmers consider someone fresh out of school to be useless when it comes to doing real work. Programmers don’t become productive until they’ve worked on nontrivial projects for at least a few years, but even those years don’t guarantee an excellent programmer. Since our universities aren’t doing the job, you’d expect employers to make up the difference by training their workforce. Most companies don’t do that, so the programmers who work for those companies never get better—they just get older.




Pages 1 2 


Share this link: http://sdt.bz/28367
 
Most Read Latest News Blog Resources

Add comment


Name*
Email*  
Country     


  • Comment
Loading




close
NEXT ARTICLE
Teach Your Children Well
Is there anything less useful than a newly minted college graduate? Whether in programming, electrical engineering or journalism, book learning Read More...
 
 
 
 
News on Monday
more>>
SharePoint Tech Report
more>>


   

 
 

Download Current Issue
FEBRUARY 2012 PDF ISSUE

Need Back Issues?
DOWNLOAD HERE

Want to subscribe?


 
blogs tab
Are you at risk for burnout?
Burnout is a severe problem and it can strike at any time. Here's how to tell if you are nearing the edge.
02/09/2012 02:16 PM EST

Agility, mom, and apple pie
If we're to evaluate the state-of-the-art in software development, we should start with the values espoused in the Agile Manifesto.
02/07/2012 11:57 AM EST

RIM woos developers with free tablet
How do you get more apps ported to the BlackBerry PlayBook? By giving every developer a free tablet, of course!
02/04/2012 01:57 PM EST

GitHire: Use Headhunters to Find Your Perfect Programmer
Are you a hiring manager tired of scouring the job boards? Check out this new service that will find 5 people interested in your jobs.
02/03/2012 12:17 PM EST

Facebook claims hacker cred
Facebook's SEC S-1 filing form includes a short essay on the Hacker Way by Mark Zuckerberg himself.
02/02/2012 08:26 AM EST

Ryan Dahl steps down
Ryan Dahl, creator of Node.js, steps back from his position as gatekeeper for the project.
02/01/2012 04:58 PM EST

 
Events calendar tab
2/13/2012 to 2/16/2012
Santa Clara
TechWeb

2/26/2012 to 2/29/2012
San Francisco
BZ Media

2/27/2012 to 3/2/2012
San Francisco
RSA

3/4/2012 to 3/7/2012
Las Vegas
IBM Tivoli

3/5/2012 to 3/9/2012
San Francisco
TechWeb