views:

945

answers:

11

I was talking to my dad about careers and he said that you may be passionate about IT right now, but when you work for a long time you will lose that passion and see your job as a means to earning money and no longer a hobby. He also went on to say he really enjoyed programming but lost that passion.

My dad got a degree in computer science and an msc in database design. He spent a decade writing C and designing Oracle systems, so he's certainly got the life and technical experience (not recent) to comment.

Programming is the one thing I can do without any of my disadvantages effecting my performance. I had a passion for playing pool - strictly a hobby - but lost it and as a result I always lose. No surprise as I no longer want to play and writing code seems to be the hobby which has taken over (and not just because coding will be my livelihood, I just enjoy writing code to do interesting things). I hadn't achieved everything or had the ability to pull off every shot in pool, but I am not able to pull off everything in coding either. I still have a lot to achieve professionally and technically. Maybe when I can, I would get bored?

What do you guys reckon? How do you keep the passion (good question for experienced coders who have been coding for 10 years+).

+2  A: 

Coding can get boring, but never design.

Get a career where you are always designing in software instead just coding it.

Software is still very young, there are many things that still need to be discovered or built. For example, right now our concurrency models in C++ and Java are hard to use. If you have the passion, you can figure out how to make concurrency design easy.

Pyrolistical
A: 

I still write code for fun, but less frequently than when I was a teenager. It's like creative writing -- don't try to force it, just wait for inspiration to come.

There's a lot more to software engineering than just the code. You can find satisfaction in other areas of your career. Satisfaction is different from "fun."

You can feel a sense of achievement from creating a well-engineered software solution that is high-quality and meets the customers' needs. You can enjoy the feeling of teamwork working with people you respect and trust. You can feel good when you mentor someone more junior.

Also see a related question, "How do you pull yourself out of a programming slump?"

Bill Karwin
thanks for the link - fortunately im not in a slump and have more ideas than time. :)
dotnetdev
+3  A: 

The very fact that you can't achieve it all is what drives me. I've been developing for 4 years and the constant learning is what drives me. I'm heavily focused in the .Net world, and every time I check out a different framework (eg Ruby/Rails) I get excited about something new to learn. Not necessarily be an expert in it, but to witness new/different ways of achieving the same results.

In a way I look at completing a project like a computer game (don't hold that against me). In both you can come to the finale in different ways. I know that I completed Fallout 3 in a unique way that probably no one else did. The same can be said more my apps. Sure I follow some guidelines and best practices but I still produce a result in my own way.

Scott Muc
+45  A: 

After coding for 30+ years I can tell you several things.

One. Passion comes and goes. Call it "slump" and you see it for what it is -- temporary. Call it passion and you get confused about time and waxing and waning of interest.

Bored is a choice you have to make. Interest is when you actually look at what you're doing from a coaching/training perspective. Become your own coach. Improve you own performance. Find role models. Study them.

Two. Dwell on your "disadvantages" and they take over your life. Let them go. You're free of them only if YOU give yourself permission to move on.

Three. Careers come and go. Technology comes and goes. The coding I'm doing now is nothing like the coding I did 30 years ago. You can learn new stuff. Or you can lament the passing of the old stuff. My advice: plan to keep running to stay one step ahead of the state of the art.

Four. Go back to pool and play for fun. Winning is overrated. Growing and improving are where the action is.

S.Lott
I'd vote this up even more if I could, very sound advice.
Patrick Cuff
+1 Great advice!
Nimbuz
Most of the above also applies to marriage ;-) Maybe not the advice about pool.
Andy Dent
A: 
Leonidas
A: 

I changed industries for a few years during the dot com boom. I enjoyed the new challenge of writing scripts and web pages to interact with our sales and accounting systems, and I especially enjoyed when my team could bring a new business partner live...there was an immediate contribution to the revenue stream. The downside was a 24/7 business model. I burned out pretty fast as the Blackberry went off all day and all night.

I went back to the industry where I started and felt rejuvenated. The web/database skills I learned in this assignment transferred because we were now using Intranet servers to manage and report on our build and test engines. I also made it a point to team up with a really good architect. We worked well together and I could accomplish a lot after running my ideas past him.

To sum up, I would say look for chances to add new skills. I also agree with the person who mentioned design work as adding a level of interest.

Michael Mathews
A: 

Thanks for the replies.

I'm constantly coding and learning new things to improve my repetoire. I never stay still, and that drives me. In fact, I'm in a constant chase as I pursue experience and knowledge.

dotnetdev
+1  A: 

"Achieved it all"? Who on earth has done that?

I went the other way. I had a terrific run in mechanical engineering that I enjoyed for 16 years before switching to software development. I still had lots to learn, and I had hardly "achieved it all", but it started to have that "time to make the doughnuts" feeling.

Making a switch was scary, but it's been very rewarding. I've had to learn non-stop ever since making the jump, and it's been a pleasure to meet and work with so many young, smart people.

Alan Kay is a member here now. Wouldn't it be interesting to get his view. Alan, if you're watching this thread, please do weigh in.

duffymo
+1  A: 

I've had, lost and regained my passion more than a few times over my career of developing for a few companies. Here are a few key factors in helping to find that drive:

  • People environment -> Do you work with people who make you want to be a better developer? Do they support you advancing in your craft and how much of an impact does this have? Is there a process here that rewards you for getting better? Do you have mentors to assist you in getting better?

  • Technical environment -> Do you work with powerful machines so that you can get things done in a timely manner? Is your monitor, keyboard, and mouse all working well for you? What tools do you have that make your job easier or more fun?

  • Self-motivation -> Do you want to be a better developer or programmer? What are you doing to achieve this? What do you get out of doing this more and more? What aspects of the work you do are what you want to keep doing, next year and the year after that? For myself, the web has evolved quite a bit in the last 10 years and I'm excited to see what does the next 10 bring.

  • Methodology -> Do you have a process for yourself of how you use new technologies and research these things so that you can bring them into your professional workplaces and successfully use tem?

I have to second that S. Lott's answer as this is what I've seen in many ways over the past decade where I have had my highs and lows. Sometimes it is this cool power that we have and other times it is just something I do to have the money to pay the bills, which is rather pessimistic on the latter and can be a symptom of depression.

JB King
+2  A: 

One point to add is look to why you're passionate about what you are. I can't speak to everyone else's passion but for me programming is a language to express my passion for understanding and solving problems - that's very different than being passionate about programming. You have to look to yourself for the answers about what draws you along the path you follow. Once you understand what inspires your passion, you will understand much more how to keep that passion alive.

BenAlabaster
A: 

"There's more than one way to do it" is pretty much the mantra of the field. I've worked with at least five primary languages, three or four architectures, and an enormous amount of third party libraries.

I've only been doing this ten years, and I've burned out at least once. When things get boring, I switch to a different job, or a different position at the same company. I played a lot of pool years ago, and if you can run a table of 8-ball or 9-ball regularly, you've pretty much done it all. Technical professions are massively more diversified; spend two years in each specialization, and you'll still never do it all.

The only thing I miss is that I don't enjoy coding as a hobby nearly as much anymore; there are other things I like to do at night a lot more than trying more code. I'm ordering an Arduino to fix that, as it's completely unlike the code I write during the day, although there's a huge overlap of skillsets.

Dean J