Hacker News new | ask | show | jobs
Ask HN: Where do you get your ideas?
9 points by DoritosMan 4861 days ago
I want to start programming but I would like to learn through doing instead of just following meaningless tutorials or reading boring books. So HN, where do you get your ideas for projects?
7 comments

A few options :

1) Questions you want to answer... I had a question about the quality of two investment strategies so I'm in the process of solving them in R (where I'm proficient) and then later Python (where I'm learning)

2) Problems that have been posed... Euler problems may be the best for this http://projecteuler.net/problems

3) Finally, as others have said, real world problems that you or those you know have themselves. One thing I would like is an easy drop down wiki-style notes editor that has tree organization, that solution exists in multiple forms but not for free on OSX that I've found so it's something that I've considered building and open sourcing if I get back into compiled languages.

One anecdote : I share you're feeling about reading boring books, I'd rather do something real. I taught myself R by solving real problems one by one. An acquaintance is the opposite, he prefers to read the books, work through examples, play with them to be sure he understands them, and continue on. In the end he was able to show me a ton about optimizing code (as well as explain why certain things were slow). Just be aware that you might be skipping something intangible by skipping the book.

Usually when I need something and I can't find a simple/suitable solution I take that as an idea to write something on my own.

I mostly program "on demand".

So focus on tasks you often do that you could automate or programs you use that you think are way too heavy for what you need them for until you find something.

Keep in mind that you have to start with the (language independent) basics no matter how boring books and online resources are.

There was a good thread on here recently about Solving Problems your Parents have: http://news.ycombinator.com/item?id=5232716

I tend to solve problems that I have, sometimes others. Or, if I interested in something and believe it might do okay, then I build it.

Finding problems that need fixing in the world, creatively solving them with technology.
I would find an open source project you find interesting and hack on that for a while. It will allow you to learn from code that others have written, while also creating your own.

I ran a website a while back that ran on TikiWiki, and I learned a lot by hacking on its internals. I think it's hard to start from scratch, so seeing other people's working code can be useful. However, partly it's personal preference also. There is a downside to open source, which is that you might start off learning bad habits or learning from poorly written code.

Something which you think you can do better.

Doesn't matter if you can do it right away, but you probably have a passion and know the process/concept and want to improve on it; from there you have a good idea on what you want to do, so now its a matter to research the coding to accomplish it. With such you might also figure out that certain platforms languages are well or worse suited for what you want to accomplish.

Meditation helps