As a several year veteran in the government contractor space and from personal experience as a configuration manager, I strongly disagree this this. I've seen poor and mediocre programmers survive as programmers well toward retirement age. Part of the reason is that programming isn't the only skill that they provide. They provide domain knowledge on the systems which the gov (mil and civilian) rely. Then us poor sods have to clean up after them and clean up after them, and hold their hands on radical new ideas like object oriented programming. I could really rant on this topic if I wanted to.
Another perspective: I mean, how many coders do you know that make it through a few years working who have NOT developed some significant domain knowledge?
http://thedailywtf.com/articles/up-or-out-solving-the-it-tur...
FWIW, I think there's enough people in this audience that wouldn't be happy holding on to a job they aren't particularly interested in keeping up to date on, simply because they have the domain knowledge to make them "safe". I could be wrong though.
* The higher-up the position, the longer the curve. Changes tend to occur much more slowly at the top. For example, a basic “refactoring” of a department’s teams could take well over a year to implement.
* The greater the skill, the shorter the curve. Ambition and skill go hand-in-hand, and ambitious individuals tend to want swift changes, and quickly lose motivation when these don’t happen.
* The larger the company, the shorter the curve. Large teams are generally not receptive to ideas from the new guy, leaving a large part of contribution (i.e. past experience) wasted. Furthermore, promotions are often based on tenure, not skill.
* The smaller the company, the longer the curve. Smaller companies, on the other hand, are more receptive to change, allowing one to contribute past experiences for a long while.
* The less skill-demanding the company, the significantly longer the curve. Not all companies need top talent. For example, the company who needs only maintainers of an ancient COBOL application might be best fit with curves that are closer to the value convergence."
Notice what happens when you're very skilled in a large company?
When you talk about government and government contracting you are discussing an entirely different world devoid from reality.
Of course, I may be biased since I work as a contractor.
I'm not suggesting contractors beat their children. I am saying that if one wants to move up within a government contracting company they will reach a point when they will have to push a course of action that is not in the best interest of the government at which point the individuals and company are indistinguishable.
In the 80s and early 90s, affordable computers existed but there wasn't so much you could do with one. The list of activities looked something like:
1) Play Choplifter 2) Play Loderunner 3) Learn BASIC
Programming was a natural thing to attempt to do since there was little else you could use a computer for at that time.
- A menu-driven File Management system because I was sick of typing commands.
- Checkbook management system to make balancing my account easier
- Heating & Cooling timer thermostat control
- More stuff I can't remember any more
Oh, by the way, they were all written in BASIC!
Your implication is exactly backwards, from what I've observed. People who learned programming as a kid for the joy of it are much more likely to be good programmers. People who went into it for job training are much more likely to suck.
I agree with you, but I also started learning to program with a Commodore 64 when I was six, so I'm probably a bit biased. :)
Software and technology more than ever is everywhere and becoming so deeply embedded in our lives that the demands for great programmers shall continue to grow to feed those needs.
It surprises me to read this, when most other times all I seem to read about is how a "shortage of engineers" exists in the world.
While I've always loved programming, before I even got a PC (14 years ago, loved the idea so much that I started reading a book about programming in Basic before I had access to one) ... I really hate the industry (at least the local one).
Life would be a lot easier for me if programming was a hobby in my spare time. But as it goes, I'm doing a lot of work on projects that I don't like, and when going home I don't have enough energy left to work on things I love.
I don't think I'll ever give up programming though.
Never underestimate the stupidity and shortsightedness of a bad manager.