As software developers we all know that motivation matters. Without it we could just stare into the monitor all day long and do nothing. There are some tricks to get yourself motivated like talking to people or doing the fun part of the project, but they do not always work.

In the mean time I started to notice that I am most productive when I could see the person who is appreciating my work. The user, who is using the software and enjoying it. Because if there's none, what's the point of writing this code?

So I was wondering, what makes you be at your top, is it the users, your fellow coders or maybe the money you get?

PS. I know there's quite a few questions about motivation but they all about overcoming current situation. What I want to hear is what makes you come to the office every day, what you enjoy the most in your job, what makes you want to write this code and do it as fast as you possible could.


Honestly, and this may sound corny, but the thrill of piecing together a relatively complex solution and watching it run. There's nothing quite like seeing an application doing what it's intended to do and knowing I wrote it (or contributed).


The overwhelming desire not to get fired.


StackOverflow reputation points.

Seriously, StackOverflow has increased my motivation. I'm so happy that I can answer questions that other people have asked.

At work, I enjoy helping my coworkers on programming problems. This site is a natural extension of that joy.


My curiosity to learn new things, as programming is constantly a learning experience. Getting paid for it is just a plus.


Finding elegant and robust solutions to challenging problems.


Mostly the sex


Professionalism motivates me. Not just doing something because I get paid to do it. Rather, doing something well because it's your craft. By far I am not the greatest programmer in the world. Often times I'm astonished at how little I know and how much there is to learn. But, I take pride in being able to take someone's problem and build their solution "out of thin air". We're creators. I'm motivated by looking at each creation and how they get better and better as I become a better and better programmer.


Money, thank you for the question :)


I like the appreciation.


There are a couple of big motivators for me:

1) Solving a puzzle, problem or riddle. Figuring out a solution from scratch has a certain amount of "coolness" for me, even if no one else wants to know the solution.

2) Getting a "Thank you" from someone for what I do. This can be end users, fellow developers, testers, business analysts, project managers, team leads or anyone that appreciates my contributions which may be finding a bug, fixing a bug, implementing a feature or taking something that was in someone's head and bringing it to life. "It's ALIVE!!!" being one of the more dramatic responses I've heard in my life.


For me it's the challenge of solving difficult problems with lots of risk.


I buy myself a new pair of cuff links every time I get a program I have written into production. My motivation is that I'm sick of wearing t-shirts.


The thrill of seeing a completed product in the wild knowing I helped make that product - especially if its got any Geek creed and affords me braggin' rights.


As a student, I don't have an office to go to, nor do I have to come in every single day. However I still believe that what I do applies.

The way I motivate myself is the challenge, I find that I am easily bored and thus need something that will captivate me and hold me until the last minute. I have started many projects and never finished them mainly because once I am over the initial investment, excitement of learning something new I have lost interest.

That being said, I have also finished many projects because of the sheer interest and pleasure it gives me to have finished something, not only that but generally it means the projects go out and get used by people who are then able to appreciate the work I put in. To appreciate the minor things I have cared to make sure work just right.

But most of all, it is for me. I know that I have created something and that thereby I know something new, and know how to tackle yet another problem. As a computer geek I continuously want to know, want to figure things out and best of all do them.

Really, I don't need to motivate myself. I just NEVER want to stop learning!


A "big" motivation is that what I'm doing will save someone like me pain - someone like me, but not actually me.

There's also a "small" one that is always effective. It's a bit embarrassing to admit, but it's important for me not to lose sight of it:

  • I like it that when I do this, that happens.

It's a very child-like, basic joy. I think of it as the "fischer-technic activity center" motivation. But with enough little steps like that, you can reach any destination. It's cool to make stuff that works like that, and it can get very complex. But that's the motivation.


I work at a smallish software company - less than 30 people and a development team of 6.

1) The entreprenurial spirit of what we are building. Knowing that every additional feature we add is going to have immediate impact to the bottom line (or at least we are hoping it will). At a company this size you feel as if what you are doing is making a difference when you see the customer leads coming in and how what you are doing directly relates to the bottom line.

2) The pride that comes along with doing something "cool" and other people are the team appreciating your work. And in return learning from the team members doing the same things. We have a great team and are always pushing each other to get better.


Another motivation for me is my programming blog. Whenever I complete a task, I blog about it. Over time, the number of posts on my blog has increased and I get many comments from other people.

Its motivating that what my programming skills can help other people. Some are even motivated to program because of my posts. Which, in turn, motivates me to continue programming. Circular reasoning.


In the words of Emperor Palpintine... "Power! Unlimited Power!" I like telling bits what to do :-)

On a more serious note just the intellectual challenge of it all. So far this week I have written an google phone app, a simple REST based server for the phone to connect to, and started on an iPhone port of the app (it is spring break... either do that or mark midterm exams :-) all things I have never done before.

That and the free beer (wanders off to find a beer... remembers to check on students making an R2-D2 out of Lego NXTs... probably the beer will have to wait... curses night school course that runs over spreing break! :-)


I drift between being motivated by getting a job finished on or before a deadline, and the satisfaction of finally figuring out a problem I have been troubleshooting for hours, but I think the biggest motivation for me is the feeling of momentum when you peak a learning curve on a new api, language, or idea, and really start feeling like you speak the language you are typing.

I guess the point at which I close the api reference on the other monitor and just start typing.

  1. Having a customer say "Wow".
  2. Providing good jobs to fellow developers (maybe we'll hire a sales person too someday).
  3. Not having to work for a company run by accountants or lawyers or outside investors or Wall Street or Washington DC.
  4. Getting paid to do something I would do for free if I had to.
  5. The idea of creating software that is eventually used by hundreds of millions or even billions of people (yes, this is lofty, but it cannot hurt to aim high and we have the advantage that very large companies build our software into their software so who knows).

car payments and rent


The creation of something. I like the feeling of building something by myself and that it can be useful for someone else.


Knowing that in ten years, the code I'm writing right now will still be useful.

If you are a stone mason, or carpenter .. the fruits of your labor will likely out live you. A building you worked on will likely still be standing when you are long gone.

That kind of satisfaction is very hard to achieve in programming, so when I'm actually paid to write general purpose libraries that aren't tied to some specific fad, I become more enthused.

My second favorite sweet spot is having someone much more experienced than I am look at my code and say 'I like how you did this ...' I've worked on a lot of open source software, feedback from the users is great and I love knowing that someone else enjoys my work. Yet, feedback from peers all around the world (especially if positive) is a really big thrill.

Finally (and this is rare), finishing up a 12 hour coding frenzy and having it 'just compile and run' the first time you run 'make'. No typos, no leaks, you just wrote 5k lines of code from scratch, a Makefile, etc and everything 'just works' the first time. I can count the YEARS since that last happened to me .. but when it does, \o/ :)


After a series of jobs developing cool applications that never shipped or were canceled before completion, my motivation was to work on a project that would be used by (as be useful to) a lot of people. I also want to make a direct contribution to the success of my company.


To me, software is like art ... it can be a beautiful thing that I've made out of my mind ... it gives me an enormous sense of satisfaction and it's just an amazing thing to be able to do for a living.


I thirst for knowledge and love solving puzzles. In short, I yearn to be a "Jack of all syntax, Master of all concepts." =)


Watching what I do affect how businesses and people work.


I like to see DB grows, I like to see log get bigger...I like to see my code come to life.


Kicking ass and taking names.

While programming allows me to make tools I need (for music-making, life) and pays the bills (for eating), getting a difficult/large problem and using programming-fu to resolve it quickly/elegantly/smartly is what makes me go to my office laptop every day of the week.


Money, first. Software is by far my most marketable and profitable skillset.

Then art. The art of problem solving, the art of software, the beauty of code.


I really agree with your point about being able to show your work to someone and be appreciated for it.

This is one reason I've been doing a lot of front-end development lately. One thing I found with my back-end jobs (not implying that this is always the case) was that while my work was complex and varied, it wasn't visible to the business or the customers.

Whereas with front-end or presentation-layer development, I get feedback and feel involved with the product and the customers. It's like I'm part of the business, not just someone sitting in a cubicle typing away for 40 hours a week.

External approval isn't everything though. It's great when after all the mental mountain climbing you get to the top of "Mount Everest" and feel a sense of power over your work. And it's transformational - the more problems you solve, the better you get at solving problems.

  1. Money (we need that for living)
  2. Challenge
  3. Knowledge
  4. I love brainstorming
  5. Proud
  6. Regards and thanks from our client :D


free internet connection (in my country it isn't cheap) LOL


An appreciation from user!!!


I have nothing better to do.


As a writer, you can almost never make or create some concrete thing directly. However, this does not apply to a programmer. A programmer, when (s)he is writing, is making or creating a very concrete thing: software directly. Just this fact only gets me motivated to write program everyday.

  1. Dream
  2. Think
  3. Build
  4. Admire your power

My motivation is the creativity.


what motivates me is other great programmers, and that if I put in the effort I will become just as great as them some day.

I am also motivated by seeing people appreciate my software (this has only happened once for me so far, and it was great to be getting feedback directly from them).


Don't know about motivation but when I see how crappy software is and how much better I do it in my private project it definitely helps to increase self-estimation and confidence.


Being appreciated and respected as an expert. I want to be able to help others with tricky questions and be admired for good solutions, clean code etc.


I like seeing people use and enjoy the stuff I write. After I release an application and real people - people I don't even know! - start using it and providing feedback, I get a huge boost in motivation.

Web development probably attracts a lot of people like me.

  • Money
  • Fame
  • Doing something exceptional
  • Doing something better than others, something new

What I want to hear is what makes you come to the office every day

That's easy, "my boss". Otherwise I hate going to office 75% of the time.


Programming is art. I cannot draw or play a musical instrument, but I can let my creative juices run free on the computer and make something WAY cooler than a painting or song. (IMHO)


Paying the bills.



(That is all I have to say Stackoverflow char counter.)


I refuse to be beaten by a defect.

I love the challenge involved in figuring out how to implement something which, more often than not, has no real specification (and, if it does, has an innacurate specification).

But mostly, I love looking at a piece of software, seeing something amazing, and wondering, "How in the blazes did they do that?" and then running off to figure it out on my own.

I live for the thrill I get when I finally figure out how to do something, or fix something, or all the unit tests pass after a long, long, long battle with things we thought we'd never do. It's exhilerating.

All of these things motivate me. I suppose I should be motivated by a phat paycheck. But I do it because I'm a geek, and I love what I do.


Ha, my first StackOverflow post, just to answer this question.

I love being able to design something, put it together, and then knowing that it works the way it should.

Watching customers use the software is a nice feeling, but I get a kick out of thinking creatively to build code objects that satisfy the requirements as simply as possible.