views:

522

answers:

9

I want to develop something at home but I cannot think of anything at all. I do not want to write anything that has been written before... What is a good way to find ideas for projects?

A: 

I always get good ideas when I don't have the time to work on them. Maybe if you do your work and wait some time, you'll get that "Hey, this would be cool" idea.

So this is my contribution different from "Find an interesting opensource project" ;)

Roman Plášil
happens to me too!
Tim
+10  A: 

As a tool developer at an animation studio, the first thing I do is look for redundancy and repetition. If someone is doing the same task more than once, I usually ask myself how I might be able to turn that into an automated task.

Another idea is to simply ask people. You'll have to be careful with this one, since people will come up with the craziest, most complex, hyper-specific-to-their-own-task ideas.

Don't feel that everything you make has to be totally original. There's always room to improve on an existing concept or design. Take a piece of software you use, but doesn't work well, and try to make a better version of it. There's also the option of bringing an existing concept to a platform that doesn't have it yet.

Lastly, look at your own work. What do you do a lot of? Could you speed it up? What are really undesirable tasks you do every day? Could you automate them? If not, could you make them more fun to do? Perhaps if you're having trouble coming up with ideas, an idea tracker would be a good place to start. Something to store ideas when they come to you so you can work on them when you're not busy.

Soviut
+1  A: 

Read, talk to people, listen to podcasts. Find something that interests you in the meantime and write it. Is there some feature that is missing or that you wish you had in one of the apps you use? Fill that need.

When you are at other businesses during the day note inefficiencies of any kind. Figure out how to solve those. Most likely there are already solutions, but thinking in that way makes it easier to start analyzing it all.

Here's a free idea I don't have time to work on:

combine license plate recognition (in a controlledenvironment - not just police scanning or toll booth use) with:

  • fleet management -- when a truck/car is pulled into a bay, the service history and all the parts required get displayed onto the technician's computer. (video/photo capture of the license plate reads the car. This can also be done with a scanner and magnetic device.)

  • security for house or garage -- open or close gate, etc. This one has been done, but added for another example

Do you have a friend or family member that is a small business owner? They are typically overwhelmed with lots of problems to solve and no time to address them. Again, most of these are solved with existing products, but there may be markets that are untapped, overpriced.

Joel's company has a request out there for an iphone app integration with fogbugz.
http://www.fogcreek.com/FogBugz/blog/post/FogBugz-iPhone-Spec.aspx again, many people have lots of ideas and no time. Hook up with them somehow.

http://fairsoftware.net/home is another web site - probably others like it as well.

Tim
+1  A: 

If you work at a software development company - go visit the customers that actually use your product. Apart from telling you all the features they want in your product, they surprisingly often also have great ideas on functionality that easily could constitute products of its own right. (Of course, if the idea infringes on the business area of your employer, you might need to have a discussion with your boss before investing too much work into it...)

norheim.se
+3  A: 

First accept that everything has been written before. Then ask, can I write it better?

Make sure you actualy write it better though, otherwise you end up with "Batman Forever"

Mike Robinson
Batman Forever would have been way better if Bruce Campbell had been Batman instead.
Greg D
lots of stuff out there has not been written.
Tim
What the answer is conveying is that you'll be waiting for a long time if you're looking for a truly original idea. By working on slightly less original ideas, you'll generally stumble upon an original one.
Soviut
+1  A: 

There's a lot to be said for doing something someone else has done, but doing it better. There's a lot of profit to be found in that technique, too. :)

For example, consider the free TodoList software. A useful tool, to be sure, and awfully feature-heavy, but the interface is ugly and painful. Suppose you take some of the ideas from that software, trimmed them into a neater package, and created a competing tool with fewer features and a less-intimidating interface? It'd be a good tool, it'd be something that you know there's demand for, and you'd be innovating the front end.

Good luck on your search for a new hobby project!

Greg D
+2  A: 

first of all, i only have 45 rep so i cant comment yet, but i thnk mike robinson should get response of the year.

now on to my answer:

In "pragmatic thinking and learning", Andy Hunt talks about keeping a journal to write stuff down in. I started doing this, and I find that I am able to come up with more stuff more quickly now. I am finding my ideas are coming to me mostly while doing idle activity (such as brushing my teeth), rather than sitting down and pressuring myself into coming up with that "awesome idea". Even if it is pure garbage, it doesnt hurt to write it down just to get it "out of the way".

I would also suggest trying to get better at quickly prototyping stuff with a scripting language.

A: 

I have the opposite problem. I wish had more time for all the ideas I have. Like, AdBlock that not simply removes ads but reworks the site structure to expand it in place of existing ads. Or a file manager/console that doesn't suck like FAR. Or add-in to Visual Studio that can fix some bugs for me (like undeclared variable). Or an e-mail client that's thin and integrated with the above file manager.

Just be more critical and see how current software sucks. Then make it better.

mannicken
+1  A: 
  1. If you're open to potentially receiving some pretty off-the-wall suggestions, try asking your non-technical friends and relations what (small!) things they'd like to see their computer do.

  2. Always keep an eye out for anything that you do repeatedly that could possibly be automated.

  3. Write a compiler/interpreter, if you haven't. It's very instructive. It doesn't have to be the Next Big Language, but try shooting for something that you could do your daily scripting in. (Or the automation from suggestion 2.)

Ben Blank