Ask HN: How do you come up with side project ideas in 2024?
Hi everyone. For the longest time I've been wanting to get a few ideas of my own that I've written down actually built up and deployed.
I wanted something that I could maybe make some beer money off being useful for people, and something that could use an actual back-end to improve my back-end skills. I wanted to consolidate my Rust (or Golang) skills as well.
But whenever I write something down, I get a bit carried away when implementing it and never really finish much. I also discard a lot of ideas because they end up being too simple (and too front-end-ish overall). I'm starting to think the root of the issue could be the ideas themselves that are too lackluster.
So I know this has been asked before (I've combed over those old threads countless times and they've been helpful), but I'm curious to hear more thoughts on the subject.
110 comments
[ 22.1 ms ] story [ 3317 ms ] threadI have a simple setup with pg+drizzle+zod+trpc. I don't like the libraries that much, but it overral works very well.
I'd prefer something simpler, more ergonomic of all those components, but the basiline is that for now.
Carry on, boatmate!
I would suggest going ahead with one of your ideas (if you can't pick, roll dice, pick a note out of a hat, etc) and take it to MVP.
Finishing things can just be a habit, anxiety and perfectionism are the enemies of getting things done. You also don't know what will or will not be successful. Focus less on what you think will happen and more on getting things done. Do it once or twice before you worry about how good an idea is or how much potential it has.
- Find old datasets (hn.algolia.com "datasets", use huggingface, search arxiv)
- Use weird search engines, e.g. exa.ai (searches based on embeddings vs. google's pagerank/keywords) + google dorks. weird input = weird output
- mix 2 ideas you see - look at showcase channels on discord and pages on random frameworks, things people are building at Buildspace
- Find old facebook groups with lots of grumpy members posting regularly
These are just random strategies I use before I make things I post on twitter (https://twitter.com/joshelgar), but they work pretty well for coming up with fun projects.
Frankly all those FB groups (min. names) are probably in the GPT training set, just a case of finding good prompts to get inspiration.
Idea is 5%, finishing is 95%. I say take one of your previous projects and see what it takes to call one of them finished. Do it. It will change your outlook.
I too recommend giving your previous project ideas a fresh look.
No idea is too simple. Apple has been iterating on the iPhone timer for like 10 years.
Ship a simple idea that people want and will use. Feedback will make it complicated and more work, don't worry.
First ideas usually suck. It is the second, third, fourth ideas that will get traction.
Thinking of unique idea is usually a kind of procrastination. There are lot of apps that just suck. Copy the idea and make it better, faster, cheaper, intuitive. DM potential users.
Follow problems that bother you and subjects that fascinate you. Those criteria are far more important than product viability or even becoming fluent in tech-du-jour
Look for something that sucks (for example, a decent and free restaurant QR menu web app) and make a better one.
Look for an extremely difficult thing and implement a minimal proof of it.
Look for overpriced services and make a free/cheaper version. (for example: how to create a "add to my calendar" event link that can be sent in a email)
Another thing: write. Write your stupid again and iterate on it. Ask GPT about your it. Ask your friends. Look at it again after two weeks. Make project drafting a project per se. Do it again and again for different ideas. Steal other people ideas, make them better.
This is a great idea, there's a lot of things that people want and that exist but suck.
What do you find extremely satisfying working on in programming?
Do you write all the time? It works for me! I keep journalling my ideas in a markdown README.md file publicly on GitHub since 2013. While I was writing I felt inspired by an idea and actually felt I desired to try write some code to implement this idea.
I encourage you! You can write your thoughts down and do small achievable things repeatedly.
I recommend using replit to get an environment quick and ready for programming in. When I was a child I wanted to be an inventor because I liked the idea of creating things.
My interest is low level things such as JIT compilers, database internals and distributed systems.
see my profile for what I've done with this strategy and my programming side projects.
1. Have problem
2. Look into preexisting solutions for problem
3. Analyze each solution to see if it fully solves the problem in the way I need
4. If none do, make side project
Sometimes, I have many side projects. Sometimes, I have none. My GitHub activity graph reflects this.
I get a lot of ideas for project at work, maybe my hobby prototypes get turned into something we run in production, maybe it doesn't. It's all good, it's about the process and learning for me, not really about making money.
That comment of yours about your parent comment also sounds healthy, not lame :)
Stop. You’re doing it wrong. Money is the crassest reason to do anything.
Stop the fucking hustle. Make art.
I have a list that just seems to never end of things I want to make for myself. Even simple stuff like a web based notes app where I store my own data. Or the RSS reader I made for myself. I don't care about making money or getting users at first. I make it for myself, and if it's production ready I'll let other people use it.
Also don't be afraid to be the only person using some kind of project tracking implementation like a kanban or whatever with milestones and self-imposed deadlines.
It seems most side-projects that turn into money-generating projects are made by people who got some idea they're passionate about, rather than people looking for a way to make money (unless their passion is actually the making-money part itself).
For myself, my side-projects revolve around stuff I think is neat, probably the only thing that ever had some potential to make money (and actually did a little bit until I realized making money was not my hobby) was the finalkey.net password manager.
1. How do I finish something?
2. How do I create something other people will find useful?
3. How do I monetize my hobbies?
4. What should I make with Rust?
What answers do you think you need? Maybe you already have the answers. If you wish to do something, do it.
I would suggest only a framework that is essentially to think in prototypes.
1. Focus on quantity, not quality. Make 10-20 things.
2. Think simply. Do some small planning at the outset. Don't expand scope.
3. Release early and often. - Set a schedule, follow it. Release whatever you have when the time is elapsed.
4. Define your goals and measure results in some objective form.
5. After you complete this cycle, find a combination of what you enjoyed and what others are using/enjoying and iterate again.
It’s harder if you think about building for the masses. It’s easy if you think about building for yourself.
But yeah everyone gets creative block sometimes when you’re not on a roll already.
It’s actually crazy the breadth and depth of research that is out there. And in computers, it’s not like math where it’s proven to end here with this proof or whatever. People are just writing papers about something they made. There’s tons of room to get in there and do something new.
Heh. Same :)
And with combining existing different app ideas or features into new ones (meaningfully), it gets even better. No dearth at all. An excess, actually, as you said.
>It’s actually crazy the breadth and depth of research that is out there.
Totally. Speaks to my point above.
>And in computers, it’s not like math where it’s proven to end here with this proof or whatever.
Ha ha, true. But there are also corollaries, which can sometimes become theorems in their own right.
Joint QED, bro :)
This depends on the nature project, no?
I've been working for years on advancing the state-of-the-art for spatio-temporal comb filter design for NTSC (SD)TV signals and I've made good progress along the way, but at no point did my project give me additional itches to scratch.
I came up with this project the same way that most come to me: I solved a problem that I had and then polished it enough that I could release it publicly. I also wanted an excuse to learn SwiftUI and it felt like a good place to do that.
I haven't made much money off of it, but that's fine because I really only built it for myself.
That's a pretty great example of finding some existing app, focusing on one aspect of that app, and making it better.
I just try to solve problems. Lots of problems have already been solved satisfactorily if not perfectly. And many more need solving but I don’t have the skills. So I’m looking for the set of problems that need solving that I might be able to help with, and focus on that, but it’s a really small set.
In my experience cool ideas are happy accidents that tend to show up as a side effect of doing something else. The more stuff I make, the more likely I am to have a good idea.