This is something which effects all workplaces alike, but I would like to have input from a technical community.

How do you deal with apathy? What techniques have worked best for you, and how best can you keep your interest in the long term? All input is appreciated.

+17  A: 

This used to bother me, but now I just don't care.

Isn't this just the definition of apathy? Not caring?
Andrei Rinea
Yes, yes it is. Welcome to the joke.
Aaron Maenpaa
Wow i feel exactly the same!
kudor gyozo
+2  A: 

Getting more sleep helps decrease apathy.

Brian Knoblauch
+2  A: 

For personal apathy, one solution is to move to different jobs. One advantage we have has as technology workers is we can work in a variety of business lines but still use our core knowledge base. This allows you to learn a lot about different industries and helps keep problems fresh.

For just within a company solutions, mixing up teams so people are working with different people and different areas of an application are good solutions. Have people that always develop UI's get some database time for example.

Trevor Redfern
+1  A: 

You need to move in new directions and be self-motivaed. It's not going to come from outside of you. Find an old PC lying around and install some flavor of linux. Make it do something useful in your spare time.

Or, take a vacation.

Take the vacation.
Andrei Rinea
+2  A: 

Try searching SO for 'motivation' there's a heap of discussion about this already:



Rally people around a common cause.

It could be eliminating a "smell" in the systems you develop.

In short, do stuff together, it is easy to get isolated in our line of work, and then the sense of meaningless shows up like a letter in the mail.

Mats Wiklander

Apathy may be a sign that its time to consider moving on to a new job where you either have the opportunity to expand your knowledge or to work on projects that make more of a difference.


Peer pressure. self-imposed if necessary.

If joining a gym, bring in a buddy. If thinking about some large (lets hope, useful) purchase; brag about it BEFORE you buy. Commit to things before you know 100% you can deliver.


+2  A: 

I think this happens to everyone atleast once. (I guess)

Sometimes, the best you can do is to not do anything at all [Take a break.]

Sometimes, all you can do is just hang in there [Dont give up just because you hit a patch.]

Sometimes, its not you, its them. [Cow-orc-ers]

Sometimes, its best to confront them. ["You really need to get your act straight."]

Sometimes, its best to just let them be. ["Whatever."]

Sometimes, the problem isnt really work, but other things in your life. [Having a Social life sucks.]

Often, it helps to have distractions/ other things going. [Having a Social life helps.]

Never, however does thinking that you are helpless work. [Apathy tends to feed itself.]

+12  A: 

Apathy in the work place stems primarily from feeling helpless to affect change or outcome. At their heart, developers are problem solvers, and expect, or at least hope, to be part of the solution. Typically, they want to take responsibility. People without any control or input will either decide they are not responsible, or worse, they feel responsible and unable to do anything about it. If deadlines are arbitrarily set, or direction constantly changes for change sake, or input is summarily set aside without giving logical reasons, then apathy will result.

The various agile methodologies emphasize communication and choice. I always liked Kent Beck's analogy of the three legged stool, that a team is made up of developers, customers, and managers. Each group is part of the team, has responsibilities and rights, and that includes input into the decisions around the project and it's outcome.

So, the keys I think to fighting apathy are: clear direction, open communication, everyone has skin in the game in terms of responsibilities, and respected input.

+2  A: 

Doing things that you know how to do, everyday, won't be motivating. To put some "carrot in front of the rabbit" you could create some goals to achieve.


1 - Reduce the code needed in 10%, but keeping it clear;

2 - Try to finish a task in 25% less time;

3 - Make a function / program use less memory, less time, less something...