Programming: Love It or Leave It

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…

I suggest you to quit what you are doing (you’ll probably call it a job, I call it cubicle slavery). If your job doesnt gives you the time to have a life outside the 8am-5pm period you are not living, you are merely surviving.

I run a team of 6 programmers which is part of a company that employs 5k programmers of all ages, flavors and colors. I haven’t seen a overweight hermit loser in years, I know only two guys that wave weight related problems and those are caused by a glandular disieasse.

Here is my list of hobbies:

  • Digital Painting.
  • Basketball.
  • Gym.
  • Active Member of the Foundation for Reason and Science.
  • Makeup bed time stories for my children (I have 2).
  • I go at least 2 times a week to the movies with my wife followed by a long dinner to discuss the picture we just saw.
  • World of Warcraft (I have a lvl 70 tier 5 Enhancement Orc Shaman) and I run a rapidly growing guild The Order of the Lidless Eye =) .

Did I mention I live in a 3 world country which happens to be the 2nd most obese of the world? (Mexico).

I don’t think that your current state is caused by your problem or as you call it programming job.

The bottom line is… you don’t need to sacrifice the really important things in life to make a solid programing career, you just need love (to endure asshole-ness) and a bit of discipline (to grow).

Well, I love coding. Love it to bits.

But I suspect that the code I write is horrible code. I don’t love the coding so much as I love making things with code.

It is a big distinction to make. I love my job, (web programming) and my particular work environment means I have so much freedom (too much I bet) I can basically do implementations however I want. Which leads me into implementing very similar things in a plethora of the methods in which it can be implemented in the coding environment I use (not all methods are ‘good’). In short, what I make is all over the place unreadable crap (I am being brutally honest with myself here give me a break! :).

If I were working in a team (and did the work I am doing now - I doubt I would be as unstructured if I were in a team), and my team members loved coding, I think I would be the person they would claim has no business coding, but it’s not for lack of love for programming. So it isn’t so much lack of love of the job/coding, but perhaps lack of respect for the code that I spit out in my attempt to come up with a solution for my problems.

Isn’t this just about being good at your job, regardless of industry? How attentive you are, thorough and generally interested in the task you do? Most programmers out there aren’t having to solve Google/Microsoft/John Carmack type problems. Of course you can be thorough and attentive but still not have the formal training or experience to know what you’re doing, or to do it properly which is again not related to a particular industry.

I read almost every comment so far and the impression I get is that everyone would be better of if people were capable of self-regulating and not willing to do overtime and take other BS from people.

I saved this comment from another site that seems fitting here with regards to getting respect for you and the people in the industry:

If you work slavishly then people think you are powerless and do it out of desperation, in the manner of begging. For example, if you work 12 hours it is because you believe your 8 hours is not good enough, so you have to compensate for your shit skills by working more along the lines of well I am not that productive per hour, so let me work more hours in desperate hopes that my employer will notice me and at least refrain from firing me, or at least put me in the back of the line when firing. It’s a fear-based, victim, loser mentality. And funny enough, if you stop doing it, people value you more. If you kill yourself for the company, you get fired with the rest of the workaholic office flotsam.

It’s the exact same dynamic that exists between men and women. Men who are desperate for women and who bend over backward to please women are despised by women. Women hate the nice guy. And the corps hate the nice employee too for the same reason.

I know this from experience. When I was nice, I got zero respect and my only reward was an ever-increasing workload and responsibility with the ever decreasing decision making power. So if something ever went wrong it was my fault, even though I had no decision making power to do it better or even just plain differently. I was a nervous wreck on hastening to take my place 6ft under with no other motivation besides fear. When I realized how pathetic that was, for me and for others around me (even for the corp itself), I changed and never looked back. I’d rather die free than be a slave

i do not have the patience right now to read all the comments so i apologize if it’s been said by someone else.

i find myself on the other side of that same coin. i would like to be a programmer. i am a programmer. i love to program. i just can not find a decent job.
i apologize to joel tho, i will not work for no pay. i will not work under crappy conditions where i have a 19 monitor that’s been in the company longer than me and the person i actually filled in for.

regardless, the situation in germany is quite different from the one in america. i don’t have any formal education and therefore it’s almost impossible for me to get a job as a programmer even if i could outperform their average hire by a factor of 2.

I do not agree sooo much: I started Linux for fun, but my plans were to dominate the world some day… buaaaahhhh ah ah ah ah.

So now I am becoming a millionaire, but it was all planned from the beginning!!

Linus T.

And another thing…
I wonder how many are self-proclamed WONDERFUL programmers here, reading the answers in the blog…

everyone think to be much better than the colleagues in their company…

Linus T

I will note that the best programmers I’ve known have all had a
lifelong passion for what they do

Some of the worst programmers I’ve known have had that same passion. Some of the best I’ve known barely look at a computer out of working hours. Passion is neither necessary nor sufficient to become an expert programmer. It might make you a happy programmer, but that’s not at all the same thing.

So I might be a little biased.

Indubitably.

The reasoning here sounds suspiciously like:

I have attribute A. I’m a good programmer, therefore all good programmers must have attribute A.

There are 2 major problems with that - one a flaw in logic, one a possibly dubious assumption :slight_smile:

I started my programming since 1996 when I joined Kathmandu University in Nepal and my friends who were already perfect in programming taught me a lot. Currently, i am a blogger, research analyst, code reviewer, and Quality Assurance Expert.
Still I use Netbeans to keep up the programming spirits high and regularizing unit testing.

I agree with you. However if you were in another Country, you might think different. You can live your life well as a developer in US, UK or in some developed country but it could be different in others.

I think we are working for 2 things: Money and Passion. In my country (Vietnam), It’s quite hard to satisfy both of them if you do coding the rest of your life. Everyone wants to reach the higher position to have better salary although they could leave his/her passionate job. For instance, salary of a Project Manager often 2 times higher than a Developer’s salary so who doesn’t want to be a PM? :D.

Anyway, it’s interesting article.

hey –

dont behave so scholarly about the work you do.I am a programmer too and thats fine- far too many people are interested in this industry.Its the same in other industries too.Not every gets to do what he/she likes to do.Sometimes the circumstances ( the money) drag people into this profession.I am not talking about USA but there are third world countries such as China and India with some outstanding talents while others have entered through circumstances(the need to uplift for money)

I mean ,you are a great programmer.fine.Stay humble.Learn to appreciate these people.If programming is a great profession,it will evolve by itself( like the dotcom bubble).Things that go up,come down.US has had to face recession.why? why did this thing happened? but it will improve itself…so programmers are brainy.fine.but be considerate to others too.Above all,its more important to be HUMAN and not programming robots.Thats all.

If I did not program for a career I would do it as a hobby.

I believe that might be what Joel meant when he said they would do it for free.

I love programming and solving puzzles because doing so gives me the possibility of making life better for everyone alive, and especially my family and everyone I love in this world, and on top of that for giving tools to the next generation to expand upon my knowledge to do the same to greater extent, with less effort, and more time to spend not working and with family, caring for each other and doing works of charity and making sure we look after our neighbors. Yes, I love programming, but only so much as it is a means to the end described above. Besides this, it is of no purpose or enjoyment.

Wow, gotta love the 180 from your own column here: http://www.codinghorror.com/blog/archives/000586.html

So are you your job or aren’t you? Maybe you’re not but everyone else is supposed to be. Buddy, when the whole world stinks, smell your upper lip.

But, most people in the world simply can’t handle the deep dark
reaches of the computer-machine. I mean, come on, let’s face it.

So, for the people reading this, start designing stuff that people
want to buy. And that stuff better be useful. Because the public
demands good software.

This comment got my attention. At the risk of sound like a know-it-all – don’t you see these 2 paragraphs contradict one another?

Not that I suggest those in the know start selling crap because customers can’t tell the difference…

But do you really think the business-minded or 90% of people in general care about how the code looks? Or how beautiful it is? Or even what it really does (as opposed to what it looks like it does, or the GUI looks like) ?

Perhaps I should thank them for not caring, since it opens a niche for those who do.

But Because the public demands good software. are you kidding???
Good as opposed to great, complete, honest, efficient, consistent, clear, moral maybe…

Seems to me more like:

Moral, adj. Conforming to a local and mutable standard of right. Having the quality of general expediency.

Immoral, adj. Inexpedient. Whatever in the long run and with regard to the greater number of instances men find to be generally inexpedient comes to be considered wrong, wicked, immoral.

Someone please tell me why I’m wrong, I’d love to hear it.

I understand if there’s no market for what you are coding, there is no incentive (but you can do something else to fund your hobby).

But just because there is a market for something does not make the code better. In fact, I’d argue it tends to make it worse.

At the risk of anyone following my advice ending up homeless because they followed their dreams/hobby instead of what was popular –

dear god, please don’t think the code you see at work is all there is!

No economic boom or downturn is going to stop ‘handicapped’ programmers from getting into the field. The state of the industry is that you can higher a construction worker to do programming as long as they have a couple of years of experience. So, you have flocks of people with all kinds of certificates and no formal education getting jobs that they have no business doing.

The worst thing of all is that after such despicable nonsense, we have companies that have the courage to call their programmers ‘software engineers’ when they ought to be sued for even attempting to use the term ‘engineer’.

The industry will not change and you will still have the majority of the projects being behind schedule or never completed because you have idiots working on them. And the only way to change that is to strengthen the curriculum for computer science and finally turn programming into a certifiable engineering profession. Unfortunately we’re as far away from that as we are from reaching another galaxy in the universe.

I fear I have become troll-feeder.

@Cook-a-doodle: the 13 colonies were united by a common ideology. America is different from many countries in that until recently a huge portion of its inhabitants were immigrants. Even now I think most inhabitants aren’t much more than first or second generation. Those immigrants usually had a choice about entering the USA in the first place. They chose to go to a place where there is a certain constitution. That constitution is supposed to enshrine freedom, and one of those freedoms is that if you don’t like the country you can go somewhere else. Not every country allows that for its citizens.

Getting back to the topic, the job market is reasonably free. You can do other things if you don’t want to be a programmer. There is a huge range of jobs available directly related to computing.

Getting onto a theological bent though, I think it’s OK to have doubts. Try other things if you want, see what life is like without programming. Maybe you will love something else more. Programming is just a life-choice and does not affect your eternity. Though as a community, coders should be welcoming and should love the prodigal.

I have to say that I don’t love coding. I like it. I love my family, I love my Saviour, I love music. But I do like coding and solving puzzles. I enjoy making computers do what I tell them. I know I can do things with computers that others can’t. I don’t know what else I would do for a living though. On the other hand, I do want to be a better programmer. I do want to learn more about design patterns and the best way to use C#'s features. I have the design patterns book and I look it up when I need to. I have Code Complete and I am getting through it slowly. I just don’t have the same drive and passion as the coding superstars.

I’ve been programming since I bought my VIC-20 in 1983.

I think that this would be a great career if you were working for yourself, doing what you love…

But if you work for a PHB at a big corp, the job can be frustrating.

To be a great software developer is to be a sharp sword – a tool for the manipulative, deceitful courtiers. You love the sharpness of your intellect and the power of your design. But the day you differ with your master is the day she’ll put you away they’ll put you away to rot.

Have you been a programmer before the Internet days? Because I’m under the impression that the majority of web programmers are lacking skills when compared to desktop ones. Probably cause they’re used so much to filling their application with free code from the web, code they don’t bother studying.