Fog Creek Software
Discussion Board




Programming as an unstable "life stage"?

I just wanted to lob another incendiary device into an otherwise peaceful environment. :-)

First: are the "best" developers always contract or job-hoppers?

I've always observed that the "best" developers either free-lance or work in a variety of full time employment positions without really settling down. This is not an absolute. I've known some contractors who were absolute duds, but it seems to be quite rare.


"Best" is, of course, a subjective criteria. My definition of "best" includes: quickness (both of learning as well as "doing"); real productivity in terms of debugged and correctly functioning lines of code and overall functions; versatility (ability to master several different development environments); interest in and grasp of emerging technologies; and ability to see how their work fits into the bigger (business) picture. These qualities have almost always been absent in the full time programmers I've known in the past 10-15 years.

The 'unstable' types I am describing are the opposite of the "stable" types, that latter who take the traditional view of employment as a long term proposition.


What I've observed with the compulsively stable developers are that they tend to believe that whatever their employer does in the development arena is the universe of software development, and they often have no grasp that there is a larger world out there than the priorities of their own workplace.  This 'truncation' appears to be as much self protective as it is a natural outgrowth of not being challenged to learn and grow. I've also observed that the very long term type employees in this industry tend to be clueless about the business environment of development.  Example, when you tell them what headhunters are really like, they look at you like you're speaking science fiction.


This premise kind of ties into the "programmers who don't know other basic technology" thread that was current a few weeks ago. An example: an older fellow I know who has done xBase and Delphi stuff for years at a client has no clue about open source, Linux, or the emerging economic commodity nature of programming with the offshoring "craze." He makes sure to keep his interests "in check" with his overbearing boss/employer's prejudices. Years ago I knew a (supposedly gifted) career FTE Windows programmer who "only" did C. I told him that in C++, each HWND (window) is an object, to whet his appetite. Absolutely no grasp. a few years later, he is telling me all about how in C++, every window is wrapped by an object, as though I had never heard it before. Duh...


I think that the abilities that "unstable and prolific" developers are endowed with are both a blessing and a curse. The "curse" is simply that of being too intelligent to be tied down to a limited variety of work, so you keep having to find new work. So, if you're smarter than most of the people that you could likely work for, one eventually winds up going into contracting, due among other things to the interpersonal tensions that this disparity causes.


Ah, but some here will say "write your own product", then you don't have any masters or employers. I've considered that myself. However, the search for the "next big thing" is something that many in our industry have become obsessed with, somewhat self destructively, I feel. My feeling is that software has pretty much become a commodity, and taking 3-6 months off to write the Next Great Program is a losing and extremely high risk proposition unless you're very, very fortunate. Note that Microsoft is working very hard to move out of the product sphere into a subscription model. The smaller developer just doesn't have that degree of clout.


So, I'm personally looking to get out of programming. I am looking at being slammed down to 'rookie' status if I choose to move into another development platform to replace the stuff that now is unsalable in the programming services area. In my mid-40's, I've had it with the immatures pukes in this industry sitting in the middle of the current language fad with their attitude of moral superiority. It's become quite demeaning to be shoved to the bottom of the pile by the "human commodity experts" in HR and recruiting.


But, enough rant. In general, here is what I am wondering: does ANYONE who programs computers for a living find ANY reliable, long term benefits to being in this arena?  Besides Bill Gates, I mean. It doesn't really affect the conclusions I've drawn over the years but I would be interested in hearing if other developers have managed to defy the force of career gravity.

Bored Bystander
Friday, June 20, 2003

Bored,

Having read the forums for awhile it seems clear that at least ten of the other readers make a decent living from products or services they developed.  Joel and Eric Sink being the two most obvious.

Product development IS a risk, but not so risky if you can find a way to develop mutiple products to increase the chances of success!

Scot
Friday, June 20, 2003

"In general, here is what I am wondering: does ANYONE who programs computers for a living find ANY reliable, long term benefits to being in this arena?"

- I get paid $120/hr and didn't have to go to law or medical school

- I can work whatever hours I want

- I don't have to worry about getting killed on the job

- I'm doing something that is both creative and useful to others

old School
Friday, June 20, 2003

Personally I've always been one to seek out new things to learn and I did that whilst I was a full time employee. I switched to consulting to avoid being promoted out of what I enjoy doing...

It may just be that free-lance developers are forced to learn more just to stay in the game. I need to second guess what skills I'll need next year and make sure I have them, I also need to focus on being good enough at my core skills to make sure I keep landing work... I work at my skills all the time, many of the guys that work full time for my clients don't do this. That's fine by me, I enjoy spending lots of my 'spare' time on learning stuff...

As a side effect I've got faster at what I do. After all, I spend more time practicing than the guys who only do a 9-5... I got better at focussing and achieving results quickly. I think this may be because, even though I'm a bit of a geek, I don't want to spend ALL of my evening in front of my PC (no, really, I don't). When I'm learning on my own time I need to get a good bang for my buck and once I learned how you cant stop...

I agree that trying to get into selling product is a risky thing to do. A lot of up front investment and no guarentee that the market will want what you have when you're done... Right now I'm trying a slightly different approach, giving away product and selling services. Though perhaps this is even higher risk... I dunno.

I have a large body of code that I have already developed as part of work that has been done for several clients (I tend to try and get my contracts worded in such a way that I retain the IP rights on the stuff that isn't related to their business - they seem to like it as I can deliver quicker and I charge them less). So now I give some of that away (for example - http://www.lenholgate.com/archives/000088.html ) and lots of people take it and say nothing and some take it and send emails saying thank you and some send emails saying we like this, please quote for adding these features... If they've already downloaded your stuff for free and then you give them a choice to have their changes done cheaper if you retain the IP then most seem to jump at the chance. So I get more code that I can use with other clients and, if I want to, give away... Not sure I'd convince anyone that this is a valid business plan, but heh, it pays the rent and lets me seed the gound with things I WANT to work on...

As for reliable long term benefits, I love what I do. I'd do it if people didn't pay me and yet they do. What more benefit do I need?

Len Holgate
Friday, June 20, 2003

Complaning won't help. Look for the common thread in all your previous jobs and change it.

Tom Vu
Friday, June 20, 2003

Dear Mr. Bystander:

I once knew a man who looked over his fence and noticed that his neighbor's grass was greener than his.  Outraged that somebody had out-done him, he immediately went to the home and garden store and bought some fertilizer and set up a sprinkler system.  He even went further than his neighbor and planted several beds of flowers!  His yard is now photographed for television commercials broadcast worldwide.  Amazing isn't it!

At any rate, please return my garden hose when you get a chance.

Please, won't you be my neighbor,


AnyMouse

P.S.  You think I'm joking.  I'm not.

AnyMouse
Friday, June 20, 2003

>However, the search for the "next big thing" is something that many in our industry have become obsessed with, somewhat self destructively, I feel.

You don't need to create the "next big thing" to be successful.  As a one-person operation, huge sales are not necessary to make it worthwhile.  You can write something that sells 4000 copies a year at $25 each (on the Internet so your marginal costs are near zero), and that's $100,000.  Many people have done something like that.  You don't need to write the next Winamp or PGP.

T. Norman
Friday, June 20, 2003

"So, I'm personally looking to get out of programming"

Bored, I really think this is very normal, I like you, am in my early forties and have been developing software for about 20 years give or take a few. Like you I have been a contractor for quite some time (1987), and have worked around a bit. I know that at times it can really be a piss off, and really at the risk of offending some of the more eager, well, a bit ho hum actually, and generally not that complex(apart from .NET Datagrid which induces vomiting). Generally, you can only console yourself with your hourly rate, which thankfully, is fittingly much higher than the full time project manager with superiority issues (I've met a few too).

Otherwise I think you are a victim of human nature, only a passion could make something worth doing for 20+ years, and I truly cannot get that passionate about machine instructions.

Realist
Friday, June 20, 2003

Bored,
Do you have a blog? (uh, besides here...)

I'd read it.

;-)

Lauren B.
Monday, June 23, 2003

*  Recent Topics

*  Fog Creek Home