a companion discussion area for blog.codinghorror.com

Programming: Love It or Leave It


#161

Oh Yes, I Love programming and yes I was ready to do programming even I was not being paid and I did this many times. I am programming when I was just 9 year old. But now I have family and I need money. So I am really happy to be paid for my passion of programming.

Sometimes, I think, if I was not a programmer then what else can I do? Oh man, you won’t believe me, I am really zero in everything else. I can’t do anything else to earn good money.

BUT I LOVE PROGRAMMING. And thanks to my Boss for paying me for my passion :slight_smile:


#162

If having outside interests and concerns equates to being a bad programmer, I suppose I am a bad programmer, and I would guess most other female programmers also falls into this category. I completed degrees in computer science in college because for me it was always easy and enjoyable similar to doing logic puzzles or playing scrabble. I sometimes read coding-related books and blogs, but am more interested in process and new concepts than in memorizing technical details. As a team lead, my favorite days at work are still those including an animated design debate, or pairing with a teammember to help them through a tough problem.

Yet I’m ultimately more interested in technology for the sake of human freedom and happiness than technology to fool around and create yet-another-imperfect-thingamabob, and I am potentially interested in other careers if I find one that lets me more effectively help those in extreme poverty than earning a good salary and living simply to give the rest to charity. I don’t go home at night and program (well only sometimes, and only because it has practical application for my family’s small business), and I don’t believe coding is the only possible career for me. Instead I spend time with family and friends, I draw, I play soccer and hike, I volunteer, and I read across a variety of subjects/genres- biology, physics, math, economics, linguistics, multicultural literature and poetry, religious studies.

I don’t expect to be a rock-star technologist when I don’t spend every waking hour coding, but then, in my current consulting job I am already more technical than most, and it doesn’t take rock-star-skills to write good-enough code for most business applications.

Also while we’re on the subject, am I the only person here who knows my own code is imperfect and sometimes IS the ugly code I will refactor and improve over time as I find ways to extend and reuse it? Am I the only person who sometimes enjoys the challenge of wrapping tests around ugly legacy code and pushing/pulling it into a prettier shape? Where do you all work? because I have yet to meet a fellow-coder that can create unimpeachable code without several times collaboratively reworking it.


#163

Interesting post and comments

I would be programming even if I didn’t get paid for it. We are pretty spoiled in our line of work. My friends are always envious that I enjoy my job. A lot of people go to work every day and just count the hours till they can go home. If you are a programmer and you feel this way, you shouldn’t be a coder. Either that, or you just need to find a new company to work for. If you are a good coder, I don’t think there is anything to fear in this economy (yet). There are still a good amount of job postings out there. Employers are just more particular having learned their lesson during the dot com.

For people complaining about the bureaucracy and the politics, that’s just the way it is dude. I’m sure some places suck more than others, but there is always going to be a certain level of red tape and politics in every company. I notice a lot of genius coders often lack the people skills to deal with common work place situations. Building up your people skills can do just as much good for you as good coding skills.

@Jason - I agree with you. I am a web developer and I will admit that my programming pales in comparison to a software developer that programs at the C level. Languages for the web are often much more forgiving of bad code. As a matter of fact, you can probably blame the web for spawning so many bad coders.


#164

I don’t trust programmers who haven’t done some open source programming.

If you don’t want to do programming for free, you have no place on my team. But we pay well anyway.


#165

At 9pm on December 31st I was still on my computer reading articles on error handling in stored procedures and skimming through Code Complete. My wife forced me go to the store and buy some beer and chips to celebrate new year’s eve.

I don’t just love to code, I think I was built for it.


#166

Great post.

I completely agree. i’ve worked with some terrible programmers.

These days where I work we won’t employ anybody until they go through a minimum 3 hour practical test (we give them a PC, a compiler, a problem, and they have to come up with an executing solution). And the code has to be reviewed by the peers. If anybody objects or says that guys is an idiot or I can’t work with him then, no hire. (I’ve learned something from Joel, here).

Seeing as I’m the manager, I deliberately keep out of the practical test process and evaluation.

And I’ve just spent my Christmas break writing a program that will soon go up as a free download for people with NAS drives who want backup. Because I bought a NAS drive and the software that came with it is utter crap.

I’ll write software for free.


#167

I don’t trust programmers who haven’t done some open source programming.

Get a life nerd.


#168

These days where I work we won’t employ anybody until they go through a minimum 3 hour practical test (we give them a PC, a compiler, a problem, and they have to come up with an executing solution). And the code has to be reviewed by the peers. If anybody objects or says that guys is an idiot or I can’t work with him then, no hire. (I’ve learned something from Joel, here).

LOL what a bunch of nerds.


#169

From my observations, a disproportionately and noticeably high number of successful programmers have weak family/community relationships, poor health (usually in the form of obesity), and narrow social circles

Why do some people think you have to waste all of your time working extremely long hours at a job or have family/community relationships? Haven’t you heard of hobbies? It is possible for a single to pursue happiness without working himself to death.


#170

I agree with the above poster. Just because you don’t have a family or kids doesn’t mean you should be expected to work extremely long hours. What rubbish.


#171

Programming is fun. Programming is satisfying. However, programming, like law or medicine, is one of those professions where you are tacitly compelled to work long hours (50+ per week) for salaried positions. If you don’t then you are relegated to the sidelines, which take the form of boring projects, unprestigious organizations, lower hourly wages, censure, and (in economic times like these) unemployment.

There is no shortage of work for those willing to put in 50+ hours of work week in and week out in programming, law, or medicine. There is a shortage of work for those only willing to work regular hours because they have other preferences and obligations for their time. Few programming shops run like Fog Creek or 37 Signals in with respect to working hours.

From my observations, a disproportionately and noticeably high number of successful programmers have weak family/community relationships, poor health (usually in the form of obesity), and narrow social circles. This is bad news for those that value these things. (I am not saying that all programmers have all of these, but the number is noticeably high, and I am one of the fat ones). Putting in 12-20 hours of work a week on top of full-time hours means that you are not spending that time developing family and community relationships and your health. Furthermore, few programmers make the kind of money that would attract a mate in spite of the long hours (unlike medicine, law, or Wall Street). This does not make such programmers bad people or losers, any more than is a programmer who works regular hours (until he is laid off in a downturn) but who develops family and community relationships and keeps his health.

It comes down to personal values and choice. If you value family and community relationships and your personal health, then programming in salaried jobs is a tough and undesirable career. However, if it is your sole passion and you don’t value these other things, then by all means there will never be a shortage of work.

I know doctors, lawyers and programmers who have taken a hit in their careers because they won’t work more than regular full time hours, and they have consciously chosen to pursue family and community relationships and their health. They’re all capable, but they are also healthy and obviously participate in family and community.

As a programmer you probably enjoy your job. As long as you are able to choose a job that balances that with your aspirations of family/community relationships and health, you will want to stay with it. However, if you are forced to choose between one or the other even though you value both, you should probably get out, or find something that would make you happier. Or you could choose the career and sacrifice the health and relationships.

For Joel, I would bet that $75k is a low wage for Manhattan given the cost of living. Also, most software folks don’t invent, design, and engineer the future. They actually fix what others have invented, designed, and engineered. Still fun, but not as exciting as the former.


#172

I love programming, been doing it since childhood, and took programming jobs as it made sense to get paid for it. I generally outstrip the abilities of my coworkers wherever I work, but I have for a while now wondered if choosing it as a career is what I really want.


#173

As someone who’s loved programming since I was very young, may I ask what’s wrong with a careerist gold digger? This isn’t a competition for some intellectual snob award. There’s stuff that needs to get done, and the theory goes that a free market will pay people more to do that work, which will encourage more people to do it. But that doesn’t seem to be the way it happens. So things don’t end up getting done, but you get to maintain your ego. Ironically, it’s partly that misplaced pride that stops other people from getting into the field, particularly in the case of women.

If a field in high demand can’t motivate a reasonably bright person to take a well-paying position right out of school, then the problem is the field, not the person.


#174

I dunno, I like programming because it’s easy once you know where to find which piece of code. Most things you want have allready been written before you and are just waiting to be picked up.

When I work on something new, I always use the same structures I used on previous programs. Sometimes I even just copy-paste, since it’s all that needs to be done.

The quote, above, from a poster is what a former boss stated as being a coder not a programmer. A coder will just toss bits and pieces of code together to make something work, and not always very well. Also, as mentioned, they tend to use the same structure for everything they do. A programmer will write the code appropriate to the job and make sure it is clean and easily readable by others.

There’s nothing wrong with reusing some code but just tossing bits of code together and kind of making it work. But,a real programmer will take pride in what they do and how well it works and looks.


#175

[offtopic]

Hurgh. Nice article, but why add this patriotic picture of America? Unlike a profession - which you should love or leave - you can change a country. From within. Like … becoming independent, abolishing slavery, shutting down certain prisons …

[/offtopic]


#176

Well, I am not a programmer, and I love my job. I get paid well too. I work at a National Lab :slight_smile:


#177

I still look at programming as a job. I have many other interest other than programming, I love computers but programming is how I earn my living.

I would never do it for free, unless you count college :slight_smile: i listen to the joker on this one… if you’re good at something, never do it for free.

i know i’m not a great programmer, I’d never be able to work for apple or microsoft or google. I don’t want to. I do my .NET business apps, and get paid well and i’m good to go on that.


#178

Great article.


#179

I like programming because it involves creativity, logic and rational thinking. It is like art.


#180

I always have this welcome chat with every new programmer that joins the team I belong to, and one of the thing I tell them is this:

The ones that endure in this craft are the ones that once exhausted of coding, replenish their stamina building some more code

We always complain about tight schedules and the omnipresent asshole driven development… but to be honest I firmly believe that those bad things are precisely the spice of this business, its our version of extreme spots.

I’m not claiming that this is the best way to do things and that we should keep things the way they are, hell no! My point is that being a programmer is also being a helpless perfectionist. We are never happy with the current state of things.

Just try this exercise… try to remember how things were on your first or second job, specifically try to remember the kind of decisions you boss used to make and the face he used when he let you know that you should threw away your weekend plans because he had just promised something unreachable to someone really important. Now picture the same scene in you current job (for a lot of us that means a 15 to 20 year leap)… do you get my point know?

The current asshole is a joke when compered with the asshole when you started. This is not because asshole-ness tends to disappear in time (on the contrary), its because YOU have changed and you have altered your environment with that, the same asshole doesn’t appears the same to a pimpled-mayonnaise made-trainee than to a old fanged wolf-carved in stone-hell forged-developer. And we have new toys that make things easier and on top of that, we have managed to create a really strong global front (there is always someone on Bangalore, Mexico or New Zeland willing to help you with that tricky maneuver at 3:00 am your time).

Personally I feel really lucky to be in the front line trench of the keyboard war, this is may passion.

So throw us some more blind decision making assholes, we can chew them for breakfast.

(sorry for the broken english, Im not from around)