Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

As programmers, many (most?) of us have an inner creative "spark". We love thinking of new, useful ways to accomplish tasks. Many of us have even dreamed a few ideas we thought could be viable businesses, or even change the way people go about their daily routine.

However, many of us also work in a corporate environment where we are told which projects to work on and when to work on them. Personally, this can feel suffocating at times. If you have an idea you think could be world changing (or at least effect a lot of people), how do you get passionate about work that is dictated to you?

Even if you don't have the next "big idea", many of us still want to unleash some inner creativity. How do you do this in an environment that seems to be counter-productive to that creativity?

share|improve this question

closed as off topic by Gaurav, bigown Dec 10 '10 at 13:33

Questions on Programmers Stack Exchange are expected to relate to software development within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here. If this question can be reworded to fit the rules in the help center, please edit the question.

very good question, +10 if I could –  Mamta D Dec 10 '10 at 4:01
Please follow this proposal for that kind of question: Organization aspects –  bigown Dec 10 '10 at 13:33

8 Answers 8

up vote 18 down vote accepted

One place I worked a bunch of designers were complaining that they couldn't do great creative work when all the clients were banks and the like and the briefs were very restrictive.

One of the producers replied: "Anyone can do great work when there are no constraints, the mark of those who are really talented is that they can do great work when they're heavily constrained".

It's not a constraint, it's a challenge. Apply your creativity to doing great work in a non-ideal situation and to produce brilliant solutions to the problems in front of you.

Only when you're confident you're doing that consistently should you start seeing the situation as the limiting factor - until that point you're just not growing and pushing in the right directions.

share|improve this answer
+1 good answer: change the way you perceive the world. After all, perception is reality. –  therobyouknow Dec 8 '10 at 16:26
I really wish I could remember who it was who said this. She was a producer at Razorfish in London in around 1999 and it's honestly one of the smartest things I've ever heard someone say professionally. Developers traditionally don't have much truck with designers / producers in a lot of respects but from that day I changed my tune on that completely. –  Jon Hopkins Dec 8 '10 at 16:28
Isn't that like using Cognitive dissonance to improve your morale but doing it to yourself dilbert.com/strips/comic/1992-08-09 –  Conrad Frix Dec 8 '10 at 16:34
@Conrad - That would depend on whether you see it as true or not. If you genuinely believe that constraints are a challenge to overcome then there is no deception. If you just tell yourself this to try and make yourself happy then it would be. For me I believe it's absolutely true - any idiot can be competent if there are no limits placed on them, the great people thrive whatever the limits. –  Jon Hopkins Dec 8 '10 at 16:38
@Jeff and @Bob - if you look over there in the distance. That tiny tiny thing you can just about see... That's the topic... ;-) –  Jon Hopkins Dec 8 '10 at 22:35

You really have only four reasonable options in order of difficulty.

  • Participate in communities
  • Do your own projects on your own time.
  • Quit your job and start your own business
  • Get your boss to let you work on your projects you want to do.

The first two are pretty straight forward (and you're already doing the first one). The last one isn't actually as hard as it seems. The hard part is finding something you want to do. Once you've done that all you have to is follow Eric Brechner's advice given on his post Controlling your boss for fun and profit which breaks down to presenting the following four items

  1. Identify a problem
  2. Define the solution
  3. Call out Issues and their mitigations
  4. Next steps
share|improve this answer

go opensource with your idea (that, of course, if you don't care about monetizing what you develop; even with this, you can later get money by doing consulting).

this way you will leverage time and research for your idea through a community.

seems the most accessible way to start...

share|improve this answer
+1 but be careful about your employer claiming rights over your work even if developed in your own time, in some countries this may apple. –  therobyouknow Dec 9 '10 at 12:37
*apply, not apple :) freudian slip? –  therobyouknow Dec 9 '10 at 12:45

Volunteer. Do voluntary work helping others using your skills. You never know where it would lead. Help friends who aren't technical. Learn about your business, try to apply why you are employed makes you useful to them, to your own projects. Read Passionate Programmer - at oreilly.com

share|improve this answer

I would argue that structure doesn't impair creativity; it's instead a prerequisite. I'll explain why after a few examples.

  1. I used to work at an investment bank the dress code was suits and more suits. Looking at people's ties there was like walking through an art gallery.
  2. Compare a Jackson Pollock painting to a Monet.
  3. Shakespeare wrote entire plays in blank verse.
  4. Classical music left traditional scales and keys behind at the beginning of the 20th century. That decision almost killed it, and it was only the "Pops" that kept it alive.

Jon Hopkins had a great quote in his answer, but I think the quote doesn't go far enough. Some structure is necessary for any communication to be possible, and anything creative involves communication. So if there are no constraints at all, you're not being creative, just random.

One final point: the most common meaning of the word "masterpiece" is an excellent creative work of art. The original meaning is an original independent piece of work that was a rite of passage in becoming a master craftsman.

share|improve this answer

You can enjoy programming, do what you're told and get paid for it, and have a fulfilling life, but all those things don't have to come from your job. We've gone overboard in the notion that our job has to be everything in our life. Sometimes in order to get paid you have to do things you or anyone else doesn't want to do. Think about it; a fun job that pays lots of money is probably not hiring.

Be creative by finding creative ways to work within the limitations you're given. It's a matter of perspective. There isn't one redeeming quality to your company and the work you do to make it work? Most people who saved the world rarely got paid for it.

share|improve this answer
+1 "We've gone overboard in the notion that our job has to be everything in our life" which goes against the mantra peddled by countless self-help books out there. Though I would say that our job takes up much of our time, Mon-Fri each day, leaving scarce energy and time for other things. Scarce it may be, but there is sometime. Perhaps the questioner here could reconsider your needs from a job, sites such as zenhabits.net and mnmlist.com can help you reassess what's important in your life. –  therobyouknow Dec 9 '10 at 12:38

I think there is a balance to strike here, I have done some corporate jobs and though you can't "pick" the software you wnat to do you can do the software you are given in a creative way. Remember with business types it's all about the look. I hate to say it but many times i have been treated more harshly if the app wokred great but looked bad than if it looked good and had some bugs.

Now, on the other hand if oyu think there is an app that has potential to help your business you will have to do it on the side and once others see what you can provide, they will trust you more to make such decisions. It's the same throughout the company usually. You have to work extra to prove yourself.

share|improve this answer

do your job professionally and efficiently

When an actor comes to me and wants to discuss his character, I say, 'It's in the script.' If he says, 'But what's my motivation?, ' I say, 'Your salary.' --Alfred Hitchcock

be creative on your own time

EDIT: if your creative insights let you do your job more efficiently, great. Otherwise if you feel "stifled" and the paycheck is insufficiently motivating, find another job, or create your own.

EDIT 2: Seth Godin has a relevant post on this today

share|improve this answer
Most people don't work just for the salary. The fact that you're paying someone to be there only gets you so far. –  Jason Baker Dec 8 '10 at 17:14
@Jason: partially true, but you were hired to do a job, so do it, professionally and efficiently. The quote was a joke. –  Steven A. Lowe Dec 8 '10 at 17:20
+1 @Jason Baker (Motivational Theories: Hertzberg's hygiene factors, Porter and Lawler, Maslow, Taylorism, Fordism...) +1 @Steven A. Lowe correct, putting oneself in shoes of employer, we pay others for things, fixing cars, plumbing, building, we expect from them as our employers expect from us. –  therobyouknow Dec 9 '10 at 12:43

Not the answer you're looking for? Browse other questions tagged or ask your own question.