a companion discussion area for blog.codinghorror.com

Programming: Love It or Leave It


I can’t understand some people, i’m half-way through a 5-year university education which contains alot of software-development. Some of the people constantly keep whining about how boring it is. Well…then GTFO, for your own sake, if you don’t like it now you will not like it later. I agree that some courses might suck but some people realy whine all the time.

If I tell my classmates that i’ve made a homepage on my free time they look strange on me. I have to finish the sentence with of course i get some cash from banners on it to get some understanding :confused:


@Daniel: Freelancing is a risky business. Right now I know I get paid the same amount of salary every month (leaving aside possible bonus payments). Whether the company is doing well or not, this is not my business; they’ll have to pay me anyway. It is not my business to make sure it runs well, it is my business to write a piece of software and make it work well, so the company can sell it. I don’t have to decide what to code, I don’t have to make contracts with other companies and decide about prices - and I don’t want to do this. I’m happy to just write my code; that’s all I want. And what could be better than doing what you want to do and even getting paid for it? For me getting paid for coding is like for other people getting paid for watching TV, playing WoW, or partying all night long - not that I mind doing any of this either (except WoW, not my kind of game), but I’m happy to only do this occasionally; if I had to do this 5 days a week, it would soon become just a job and all fun of it would be gone. Make your job your hobby. As a freelancer only about 50% of my work was coding, the other 50% was managing my one-man business (finding projects to work on, making contracts with companies, making up my mind what software to write next, etc.) and that would make it just a job, not a hobby.

I considered taking part in coding contests - problem is: You usually need to be a fast coder to compete in such contests. I never said I’m a fast coder. Speed is something my manager cares for, I care for high quality code. Writing the same software in half of the time but with twice the bugs only causes twice the support costs and in the end the company pays more than the shorter development time has ever saved them. Sometimes even I have time pressure and must go for compromises (not coding as good as I could just to save time) - however even my company learned from mistakes and nowadays we rather cut on features if we run out of time than cutting on quality. Cutting on quality never pays off. You probably think I’m a fast coder because I said I can solve the same problem other people need 4 hours in only 2. This is not because I am fast, this is because they are slow, that is a big difference! I’m only average on speed.


I used to be a web developer. I got downsized in March 2007. I enjoy programming and continue to do it during my spare time, but I didn’t enjoy spending a lot of time on something only to be told it’s not what the customer wants even though they previously told you they did.

I moved over to IT where I stayed until April 2008. I enjoy building computers and setting up networks, but I didn’t enjoy having to deal with other people’s stupid problems.

I decided to try a completely different direction and worked in a warehouse for a few months as a shipper/forklift driver. It was a little like defragging a hard drive and never making much progress, though I blame that on the company and not on all warehouses in general.

Last month I started working for a manufacturing company and I’m loving every minute of it. My job is to investigate all the processes and make sure the company is profitable. It has the problem-solving fun of programming, but the path from A to B is a little more straightforward. It also requires significant knowledge and experience with software development, because software problems are what causes A to lead to C when you were expecting B. I spend most of my day in Microsoft Excel with an ODBC connection to the database.


Sometimes, people just need to be challenged.

The line between a good programmer and an average one tends to settle around the point where work goes from assignment to interest. An average programmer will receive a task, complete it, then consider the work done. Good programmers will receive a task, see how to complete it, then think about ways to make it better.

Allot of this can come from environment. I’ve know a few good programmers who became average due to dulling from a mountain of dull assignments. Things change when they actually receive a challenge. Not in the form of do something hard, but in the form of do something better. The worst thing a manager can do is just accept an easy answer without challenging their developers to ‘do it better.’


All great companies to work for have great management and leadership.

One should leave the field, any field, if it isn’t what they want to do with their life, and it is causing them distress. The field of computer science doesn’t have a special lock on that part of the human experience. One may do all the right things, in the right way, but an uncertain economic future, and the associated fear, is a reality that saps positive potential. I don’t think this person, in this profession, is alone he their sentiments. As far as ageism goes, that has to change for ALL fields.

All that has been said, could also be said about any profession. I’m thinking an accountant’s or lawyer’s work doesn’t change much over the years? How about a Research Scientist? A teacher? (On the side, most of those fields are more difficult to outsource) It is great to have passion for one’s work, but let’s make no mistake about it, everyone SHOULD be getting paid for their contribution to the business. Musicians, I’m sure, are passionate about making music, but if they don’t get paid, they are creating an environment that may impede their ability to make music, or at least the music they want to make in the future.

Some say, what makes programming, or do we call it information technology, or computer science, or engineering different, is the perceived ease of entry and the lack of serious professional accreditation with state and national organizations and political leadership. The field of computer science in a lot of cases also requires a fundamental knowledge of another field, whether it be law, accounting, construction, geology, biomedical, chemistry… Also there’s specialization considerations: database administration, system administration, application programmer, design, tech support, hardware, networking… In a large shop, you may be very specialized. In a small shop, you may be doing all those jobs.

And then theres, Most folks are about as happy as they make up their minds to be. - Abraham Lincoln


Thank you for pointing out one of the greatest features of capitalism: weeding out the jokers and fakers in the industry that have no business being in it.

I can’t help but wonder (and fear) that someday anyone who calls themselves a programmer will have to go through some crazy government union or certification to legally have that title.

I highly encourage anyone thinking of getting out of software development to do so immediately.


@other Daniel:

doesn’t sound too different to me.

I have done big projects in the past. My biggest project was N64 Emulator that took me 4 years of my life. I learned about dynamic recompilation, x86 asm, MIPS asm, C, C++, Direct3D and even a little team building :wink: But due to job and studies I don’t have much time to work on big projects. I’d love work on Open Source projects that I use daily, like making OpenOffice and Swing look right on Gnome, improve Wine, speed up Gnome, make GTK look right on Windows. But it takes a long time to make yourself familiar with each of those separate projects. I guess that’s why I like Project Euler at the moment - you concentrate on something small and after an hour or so (depending on the problem) you found a solution and have learned something new. Once I am finished with my studies I want to work on a big fun project again :slight_smile:

The list of things I want to do exists but is not too big, at least not with computer related things (Piano, Italian, driving motorcycles) :wink:


You know, i’ve been doing programming for almost 10 years, and I do love it. I’ll always love it. But I’ve thought about a second career and leaving the industry myself. Part of its the pointy haired bosses and the corporate BS, part of it is those other people have no business programming. Part of it is clients who will waste $10,000 to save $100. But if I left, I’d still do open source work and hobby projects like non-profits. Its not that we’re all spoiled, its that sometimes you get tired of dealing with the same set of problems over and over, most of which have nothing to do with programming or technology at all.


And how old are you guys? How many have broken that 35 year old barrier. Well, I’m 50 and I’ve been doing this back when the Apple II represented the latest and greatest in hardware technology. I remember standing in awe at a brand new Compaq 386 super machine running a 32 megahertz processor and 4 megabytes of memory. That machine was all decked out and cost our company almost $30k. Which represented almost my entire paycheck back then.

Here’s my big issue: This career moves too damn fast. I’ve learned Cobol, ZModem protocol, Kermit, C, various proprietary languages, 8085A assembly, Pascal, CP/M, CP/M 86, MS-DOS, Awk, Perl, SCCS, RCS, and many other technologies that most have never heard of. Every few years, I am learning something brand new. Every few years, my competition gets younger and younger. They come out of college knowing the stuff I am trying to learn this year. I simply can’t keep up.

I am tired. I am old. If this was nature, I would be one of those lumbering dinosaurs watching those furry little mammals zip around under my feet waiting for that asteroid to take me away.

Yet, I am still here. Why? Because nothing pays as well. I could probably earn my paycheck at thousands of other occupations. I’m bright, talented, hard working, and imaginative. Yet, almost everything else would mean a 40% to 50% salary cut. Plus, with my job, I also get to run around sans tie and probably could get away without pants if I really wanted. I work from home when I don’t want to get up in the morning. I can leave my job in the middle of the day to go holiday shopping and no one complains.

We are the elite of the elite. We have more say and power in our jobs than anyone else in the entire history of mankind. I get to spec out the latest and greatest hardware. If I want to spend a week learning a new programming language, I can. We wear what we want, and pretty much set our own hours. We gaggle in the hallways like jacked up geese and talk about the latest video game. It is not only allowed, but expected. Maybe with all that talking, we’ll come up with the next killer idea.

Of course, I do work about 60 or so hours per week at a minimum. I get up in the middle of the night to handle crises. And, I have rare skills that people are desperate to pay for. But, damnit, I simply can’t keep throwing out everything I learned every other year just to remain current in this industry. After so long a career, most people would end up being the storehouse of vital knowledge. The guru of all things relevant. Instead, I am just an attic filled with the worthless junk of the past. Anyone needs to setup a UUCP network? I’m your man!

No, not everyone who wonders whether or not they should be in this job should quit. It is a tough, tough field, and more and more people are coming in. My 17 year old son is working on the next new web idea. It is actually quite good, and really has a good chance of taking off. He has already hired and overseen several development teams, and it is very likely he’ll be your next boss.

And, there are thousands of other highly technically savvy 17 year olds right behind him willing to take your jobs and boss you around. The last generation of computer geniuses dropped out of college to become billionaires. This generation isn’t even waiting to get into college before they redefine the field right from under you.

Welcome to the future. You are now free to panic.


Try being an analyst or designer instead.


What about those who like to program every day, but doesn’t work in the industry? I’ve been programming since the age of 6. Started out with Basic on a VIC20. Moved to assembler on an 800XL. Learned C and Pascal on an ST. In junior high, at the age of 12, the school board hired me to come in during teacher conventions and teach teachers on the operation of CopyII+ on an Apple][ (the only time I’ve ever been paid for something to do with computers) I was the first person at my high school to ever be put ahead a grade in computers and given credit retroactively. In college I was 99.5% of the time the first one done in labs and would receive 100% on every, yes every lab, and an average of 85-100% on assignments. College is also where I gained a love of LISP, Scheme, Euphoria, PERL. Then I dropped out due to financial reasons. I’ve tried getting jobs that have anything to do with computers and have been turned down nonstop. Employers don’t want 1/2 a degree where I’m living. So I gave up trying to find a job working with computers and now I drive a semi for a living, and come home everyday to do what I love. Just the other day I created my own read-only DOS in assembler that’s 362 bytes long for loading and executing binary files. Now I’m working on a full-featured multi-platform app using the wxWidgets library. I’m hoping it’ll win me 500 Euro in a programming contest next year. That would make it the 2nd time I’ve ever been paid for doing something on a computer… I’m 34 now…


Programming is great and I love doing it. I agree with Joel’s breakdown too. Whenever I get down on my job and starting freaking out, I just go and talk to my friends that aren’t in the tech biz. Shit, my wife is a special ed. teacher (violent kids, not stupid kids) and she can’t go to the bathroom unless there is another adult in the room, which she’ll have to request.

I’m not a active person, so the whole sit-and-get-paid thing works well for me. Programming challenges me everyday almost and I agree with Jeff in that my position is far from in jeopardy (from what I can tell). I’m happy with what I make (but more is always nice!) and any day I complain my wife corrects me, and rightly so. If you’re thinking about giving up programming/development, then I’d say it’s not much of a passion for you and you should look at another job.


I had the chance to do some hiring myself briefly. I had them do a simple test where they would fill in the blanks in a program to make it do what the program was supposed to do. I also had them explain parts of the program I had already written so I could gauge their understanding of simple constructs and some more advanced things.

The main agenda of the test was: ‘can you solve a problem’. It really had little to do with actual programming skills, but it would reveal readiness to gain the skills and understand programming under my guidance. It worked out great and we were able to build a good million lines of software that is now very stable and workable even after 5-6 years of continuous development.

Regardless of my efforts to improve hiring practices, it all went to dead ears and the managers hired all kinds of ‘degenerates’ to build the software and architecture in the most critical projects you could imagine. In the process they wasted millions upon millions of dollars under the protection of the management, leaving a legacy that few of us are now left to deal with.

So, while you can point your finger at the programmers, it’s really the fault of clueless managers who hire the wrong people that is the cause of so many problems! If you hire the wrong managers, then you really have problems.

  1. Hire the right managers (is harder than hiring right programmers).
  2. Hire the right programmers.
  3. And for God’s sake, don’t hire friends, and their friends who then protect each other and create all kinds of political camps inside your organization and destroy everything.


One problem…if only the people who loved programming became programmers, I doubt there would be enough programmers around to tackle everything. Think of all the mediocre business systems that would go unfed and unloved.


Daniel Lehmann: Interesting. I might actually try it!


I think one of the great things about working on open source is that you emdo/em get to work with a lot of people who would do it whether or not they are being paid.

I’ve had occasional thoughts of going into some other industry, though. I’d love to work outside, or go more places, or just be able to leave my computer off for days and days at a time emif I wanted to/em. Not saying that I always want to. :slight_smile: It would just be nice to have the option.



Truth is, outsourcing IS taking a toll on this industry AND on our nation. I continually hear the whining of local and state politicians about things like jobs and tax revenue shortfalls.

When someone says how are we going to create new jobs? or where are we going to get the revenue to fix our roads, bridges and light our streets?, etc - all I can say is BRING BACK THE JOBS! Get them back from India, China and wherever else they’ve been sent to but corporate America.

It isnt rocket science. The more highly paid people that are working in the US, the more tax revenue the states and Federal gov’t will earn… the more JOBS that will be put back so they will stop whining about where they went - as if they dont know.

And I am not talking about just programming jobs. This can be applied to manufacturing jobs and factory jobs in milling, furniture, clothing and the like. Medical tech jobs. Financial advice and expert opinion jobs. Customer service and call center jobs. BRING THEM ALL BACK.

I am not anti-globalist or protectionist by any stretch. This is logic-101. Common Sense. When your local representative begins whining about jobs and lacking tax revenues - ask him why our nations large companies HAVE TO outsource our jobs! You want jobs and more tax revenue? Then bring back the jobs. I dont think the droves of people who are forced into Target or Borders jobs are going to cover the taxes that they used to pay the state and fed. I dont think they’re going to be able to put food on the table for their families without sucking off the government nipple. We’re going BACKWARD in this nation. We used to produce things… MAKE things. Now we dont do squat compared to the 40’s and 50’s and 60’s…

And no, they DONT provide better products. Not by any stretch. Less expensive, maybe. Thats debatable. I’ve rarely come across a product that doesnt have at least 2 or 3 design flaws in either packaging or in the product itself. And no, these companies ARE NOT saving any money. The Bank of America’s and American Express’ and Citicorp’s and so forth wouldnt be looking for BAILOUT money if these outsourcing projects actually worked for them.

Programming needs to come back to where there are PLENTY of out of work people - the USA. I know far too many unemployed programmers who were thrown to the curb because there are people in India who will do the same work for 1/4 of the pay and THEY will live like kings on that pay. We cant. I know far too many who have had their skills rust out, while seeking work. Trying to start their own business but cant - not when you’re in debt because you put $4 gas in your car going to interviews all last year and had to still feed your family.

I know way too many of these people. TRUST ME. I speak with experience.

Our nation better get a hold of itself soon, or we’ll continue the BS that we’ve been handing our citizens to the point where the only jobs WILL be do you want fries with that? type jobs.

It has NOTHING to do with being good or not. It has more to do with certain circumstances, some of which are location. And NO, some people cant just pick up and move an entire family.


Veteran wrote:
I can’t help but notice that people who went into careers other than software
development (management, marketing, law, medical, journalism, administration
… ) end up progressing much quicker and have more time for their private lives.

Bang on. I’ve made this exact point multiple times in queries about the low incidence of women in the field. For whatever reason, I think women generally aren’t stupid enough to enter a field that provides less respect and renumeration than other professions for the same amount of required brainpower. There are tons of female doctors and lawyers.

Perhaps its because women already have to deal with lack of respect growing up more than guys, so they notice this about our profession before making the career choice.


I lost 3 weeks of pay as an independent contractor in 2001 when the company went bankrupt. It would have cost me more $$$ to fight for it in bankruptcy court. This was also after puting in 90-120 hour weeks on the project that was supposed to save them.

I thought if I had to get back into this industry, I would end up in the funny farm, so I became a fishing guide. Excellent work, but after a few years of not making ANY money, I am back.

Though I am a little wiser now (a few years older than 35). You won’t catch me working more than 50 hrs a week for ANY reason. I see pages of jobs available every day, so when my boss gets a little antsy about my attitude, I simply slip him a copy.


All that being said, there’s a strong smell of arrogance elitism in this discussion - particularly in that linked thread on the JoS board. There seems to be very little toleration or respect for day job coders - those who are competent and professional but aren’t rock stars or especially passionate about programming. I would agree that technical incompetents probably should seek alternative careers!
Nobody would require a car mechanic, a chef or even a lawyer or doctor to be a rock star in their profession before accepting they could do a good job. Of course if they are such, they can command higher salaries and better working conditions, but it’s surely an individual choice whether they want to do this?

VERY well said.

I enjoy programming as a JOB. I think it’s a great way to make a living. However, I do not understand those people that eat, drink, breathe, and sleep code. Don’t you have any other hobbies or interests besides coding? There’s more to life than sitting in front of a computer 24/7.