by nidnogg on 2/13/24, 7:24 PM with 108 comments
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.
by BigParm on 2/13/24, 8:26 PM
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.
by 65 on 2/13/24, 8:17 PM
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.
by kebsup on 2/13/24, 8:57 PM
For example, I've seen a lot of gif memes on the internet, in which the text was always very badly jumping around and it was very difficult to make them. So I've spent a few hundreds of hours making https://gifmemes.io. (actually as my bc. project :D)
Another project I'm working on right now comes from my frustrations with language learning apps. I don't care about leaderboards/scores/trophies/chatting with ai or whatever. I JUST want to learn enough vocabulary to be able to listen to podcasts and watch Netflix in German. So Anki might be good, right? But it just was so combursome to use, creating the cards or finding good decks. So I'm creating https://vokabeln.io, it's like Anki, but "AI" enhanced. Sentences, word explanations and audios are generated, so adding new words is super easy.
by breadchris on 2/13/24, 8:47 PM
by mlboss on 2/13/24, 7:59 PM
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.
by mayilian on 2/26/24, 5:06 PM
Throughout my life I had several projects that I've never launched. This time I decided to go till the end and launch this app: https://play.google.com/store/apps/details?id=com.dutchspeak...
Last year I've been preparing for Dutch Speaking Exams without a tutor (using Babbel and ChatGPT) and I really neede a dedicated app to quickly prepare me for the exam. So this project was born from the my actual need I had.
During implementation though I figured that it's easier to come up with new ideas (as working on something spawns ideas or at least ideas of pivoting).
by joshelgar on 2/13/24, 7:36 PM
- 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.
by Gigachad on 2/14/24, 12:59 AM
At my job I spend a week building a feature that overnight gets used by thousands of people. While on a side project I end up spending the same time setting up the framework and login page that will be used by maybe 2 people before they get bored.
Instead I made my side projects art related. Drawing, sewing, cosplay props and stuff. Feels good to spend a weekend and finish something cool that I can give to someone. Vs spending the weekend grinding away at trying to configure docker and CI.
by internetter on 2/13/24, 8:10 PM
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.
by tacone on 2/13/24, 7:34 PM
by nicbou on 2/14/24, 4:58 AM
For example, merging your residence permit application documents into 5 PDFs under 12 MB so that the immigration office will accept them. I also made tools to fill needlessly confusing forms, to find appointments at the citizens' office, and to generate resignation letters. I also built tax and health insurance calculators.
To give a broader answer, become a domain expert in something that isn't tech. You will quickly see a million small things that could be improved with a bit of programming.
by ipaddr on 2/14/24, 12:03 AM
Do you want to make something other people will use?
Do you want to make something other people will buildon?
You've put too many rules/restrictions and you really only want to work on the fun part but then you judge yourself harshly for not finishing to some state you haven't defined.
A good business idea might be mostly frontend. The tools don't matter when you your goal is a successful product. Using golang or javascript is not important.
A great business idea that must be implemented using mostly golang backend code that will stretch you as a developer where you can just work on the fun parts is like winning 3 lotteries at once.
by tlow on 2/13/24, 8:26 PM
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.
by labarilem on 2/17/24, 12:07 PM
- makes it more fun for me - feels lees like another job - users won't be exploited
If you only need beer money to keep the project running, there are good chances you can keep it running for free too. There are lots of cool free services out there for starting out (eg. Vercel).
For example, I've just built and deployed https://calcolomassimale.it/ on Vercel for free: a 1-Rep Max calculator for strength exercises. There are several tools like this out there but:
- most are in english - italian tools are clunky/have too much useless text for SEO purposes/use old and ugly interfaces
The idea in this case comes from a simple personal need.
by ozten on 2/13/24, 7:52 PM
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.
by noman-land on 2/14/24, 2:22 AM
The final product is the goal and the faster you can come up with a single through-line, a "steel thread" that gets you from nothing to something usable and fun, the better off you will be.
Basically I don't think you should leave your first weekend of working on a project without something fun to show from it.
Aggressively prune your idea down to the barest essence, the absolute minimum functioning thing. Cheat. Cut corners. Fake stuff. Keep it ugly. So that after the first weekend you can show something to someone that is cool.
It doesn't have to be complex, or use fancy tech. Think of ways to combine unusual things. Think of ways to stitch together weird pieces of other tech.
Think about the craziest, most insane, impossible, lunatic ideas, and then slowly walk backwards back to the sane. Not the other way around.
by em-bee on 2/14/24, 1:19 AM
for my own projects i discovered the same thing you did, that most projects just don't need any complex backend work. i pretty much stopped backend work for my projects a decade ago, because all the interesting parts of the projects were in the frontends.
contributing to FOSS projects gets you out of that dilemma, because you get to work on projects that are larger than what your personal one-person projects usually end up being, and thus have much more complexity that require a custom backend.
to earn a bit of money, look for projects that offer bounties to solve specific problems.
by wiwoworld on 2/15/24, 1:33 PM
E.g. during the COVID almost nothing worked and I was stuck at home curious if there is still anything happening around me? And I literally wanted to see on the map if there was anything in my neighborhood at all. But none of the existing solutions worked for me. So I decided to make my own. So I've created https://wiwo.world/map. There you can find things that are happening nearby.
With me the problem is more with the consistency of the executions rather than the idea itself.
As I wrote in another comment I often abandon a project for the next one.
Honestly, I do thing the execution is much more difficult and important than the idea. For example in our above project we have tons of ideas what other features to include but we want to make it with the active feedback by the users and we have a huge struggle to find any early adopters, mainly because we have never searched for such before.
One other controversial but possible approach is just to ask AI for ideas.
Or maybe you can take a look at all the existing products and see how you can improve one of them in your own way.
Unfortunately however, as I said above, most of the time, people fail when it comes time for the execution.
by shylalp on 2/14/24, 8:51 PM
by colechristensen on 2/13/24, 7:34 PM
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.
by poisonborz on 2/13/24, 8:58 PM
by sevagh on 2/13/24, 7:51 PM
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.
by andher on 2/13/24, 9:18 PM
The one I've been working on for a while is solving PITA leetcode style interview prep. I just don't do well in prepping without some kind of mock environment. To reference from a previous comment I made:
" I'm building https://comp.lol. It's AI powered mock coding interviews, FAANG style. Looking for alpha testers when I release, sign up if you wanna try it out or just wanna try some mock coding. If its slow to load, sorry, everything runs on free tiers right now. I really dislike doing leetcode prep, and I can't intuitively understand the solutions by just reading them. I've found the best way for me to learn is to seriously try the problem (timed, interview like conditions), and be able to 'discuss' with the interviewer without just jumping to reading the solution. Been using and building this as an experiment to try prepping in a manner I like.
It's not a replacement for real mock interviews - I think those are still the best, but they're expensive and time consuming. I'm hoping to get 80% of the benefit in an easier package.
I just put a waitlist in case anyone wants to try it out and give me feedback when I get it out
Gonna apologize in advance about the copywriting. Was more messing around for my own amusement, will probably change later"
by mortylen on 2/13/24, 8:35 PM
by samsquire on 2/13/24, 8:09 PM
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.
by jbs789 on 2/13/24, 8:43 PM
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.
by duranduran on 2/13/24, 11:33 PM
When the pandemy started, I got really serious about learning guitar. I started guitar lessons and eventually hit a wall with trying to grok music theory. I was involuntarily given the opportunity to work on a side project (thanks google), so I picked something that I felt would keep me interested for a while. That kicked off this: https://app.bars.ai
It's very very far from being done, let alone useful. It originally started with little scripts that I had been writing, and it slowly evolved into a website, fancier css, APIs, etc. I've been using it as my little test bed for experimenting with new stuff.
by pavel_lishin on 2/13/24, 8:54 PM
My current "side project" will never make me beer money; it's a one-off character sheet page/app I'm developing as a favor to a friend. In exchange, he's probably going to write some music for me in the future. But I don't really care about that; it's an interesting project to work on, there's a clear feedback loop (in the form of a Discord channel where I regularly publish an updated version and the other players tell me what they like, don't like, and need next), and it's actually solving a real-life problem.
by alain34 on 2/13/24, 10:22 PM
by dusted on 2/13/24, 8:23 PM
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.
by zy0n911 on 2/14/24, 12:53 AM
Not so long ago I created https://goswitchboard.io/ as a way to automatically organise my downloads and movie folders on my machines.
I've since made it into a pro version which I've had a few sales from, nothing considerable, but enough to pay a small monthly hosting bill.
Alas, find something that irks you in your day to day development or work and build for it :)
by aaronbrethorst on 2/13/24, 8:38 PM
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.
by jamal-kumar on 2/13/24, 8:18 PM
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.
by johncoltrane on 2/13/24, 7:39 PM
by qup on 2/14/24, 6:08 PM
by elevatedastalt on 2/13/24, 7:53 PM
by austin-cheney on 2/14/24, 8:41 AM
by blueboo on 2/13/24, 8:07 PM
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
by seabirdman on 2/14/24, 11:43 AM
by Kaykay66 on 2/15/24, 1:25 AM
by hgs3 on 2/13/24, 11:35 PM
by sebnun on 2/14/24, 11:18 AM
by darkest_ruby on 2/13/24, 9:07 PM
by oooyay on 2/13/24, 7:53 PM
by _boffin_ on 2/13/24, 9:46 PM
- What are the things that make you go, "hmm, that's interesting"
- What are the things that you wish that were, but aren't
- What do you want to learn about
by postatic on 2/13/24, 8:55 PM
by thewizardofaus on 2/13/24, 8:56 PM
by tacone on 2/13/24, 8:07 PM
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.
by heavyset_go on 2/13/24, 8:49 PM
by SAI_Peregrinus on 2/14/24, 3:40 AM
by sufficer on 2/13/24, 8:01 PM
by DarrenDev on 2/13/24, 8:53 PM
Is there really nothing you can think of from a business or work perspective that you need, that could be better, that your colleagues or managers need?
Really?
A couple of hours ago I posted a list of 7 tools I wanted in my particular area. I'll be posting this to LinkedIn tomorrow where I expect some real debate to kick off amongst my followers.
https://darrendevitt.com/7-fhir-tools-businesses-need/
It took me 5 minutes to write this list and every one of them is a product that companies I work with would pay money for.
It's not something I think about often - I'm already working on another app - but I'm active in my field and I ask questions, so seeing what's missing is not difficult.
What's missing in your field? It's that simple.
by waprin on 2/13/24, 9:33 PM
Otherwise, you're going to do all this work, and then you're going to think of where to share it, and at that point you'll probably wish you had thought of this key step in advance.
Stuff built for "everyone" will rarely work because "everyone" is too broad an audience and too hard to reach.
Similarly, while Hacker News is a good place to post a project, it's very easy to get lost in the sea of /new and get zero attention, which could set yourself up for disappointment if that's your only distribution channel. It's better to have a smaller channel you have a higher probabilty of reaching -> think a small Discord, a small subreddit that's easy to get on the front page of, a small Facebook group, a small old-school forum. If you're part of any community on X/Mastodon that can work but I wouldn't stress about it if you're not, as there's many alternatives.
Hopefully, these are all communities that you want to be a part of and are active in. A lot of self-promotion can be forgiven in communities if you're otherwise an active member who contributes in many non-promotional ways.
The repeatability is important because that lets you iterate. Even if you front-page Hacker News, that's great, but you'll get a ton of traffic for a few hours but then you go an improve things and want another pass of attention, you can't really front-page again soon.
Of course, the most important thing is to stay motivated and keep pushing. I personally get motivated by other people caring about my project, paying for my project, etc and you sound similar based on your question, so that's why I'm giving you tips on accomplishing that. But many other people get motivated just because it's a really interesting challenge or it solves a huge problem in their life. Know thyself and what motivates you and pick a project you won't quit.
I will also note that you seem to want two contradicting things. You want to improve your Rust and you want to make money. For a given project, I'd focus on one goal or the other. And if you want to make money, frontend development is often important, HN condescending attitudes towards frontend notwithstanding. However, if your goal is just beer money just a popular repo might get that with Github sponsors.
Finally, you said you discard ideas because they're too simple. That is the most backwards logic you stated. You should be discarding ideas that are too complicated. Simple is great. Simple is the dream. Simple is unfortunately almost never easy. But one illuminating exercise is go back to popular Github repos and go to their very first commit and you'll see very often they started absurdly simple. As an example, DHH wrote the Rails frameworks in a couple weeks and a thousand lines of code and that became the dominant web framework for a decade. If your project gets popular , the complexity will inevitably arrive, there's no need to start looking for it from the start.
by jonathankoren on 2/13/24, 8:10 PM
Stop. You’re doing it wrong. Money is the crassest reason to do anything.
Stop the fucking hustle. Make art.
by costco on 2/14/24, 1:34 AM
by cx42net on 2/23/24, 2:43 PM
First, to be fully transparent, I'm going to talk about my service, https://getfernand.com (A customer support service focused on being fast and stress-free). I prefer to share that first rather than lying to you about sneaky plugging my service.
Now, that being said, let's talk about ... Fernand. As you might have guessed, it's not a ground-breaking service. There are already hundreds of competitors out there doing the. Exact. Same. Thing.
So why did we go and build another one. To be honest? It's because of the market. It is:
1. Validated. 2. Big. 3. Complex 4. The big ones aren't getting praise right now.
That's why we decided to go that road. Granted, it requires a crazy amount of work, and the to-do pile doubles every time we remove an item, but still, it's a market so broad that you can't be stuck on the ideas.
But why does it relate to your question? Easy. Nowadays, it's nearly impossible to start something NEW, something that no one else is doing. Seriously, if you go and pitch a VC firm about your new project that you are alone on the market doing ("and that's why we can't evaluate the market for"), they'll think you haven't done your homework correctly. That's all. (and they'll be right.)
So it leaves you with doing something that already exists. Now, for this, you have a few options:
1. Going on a market where there are not many competitors. This can be interesting because you can easily become a leader on this market. But there might not be many competitors for a reason. Pouring your heart and soul onto something that will have a slow growth (if any) to a very limited market is ... well ..., it depends on if it's your heart that is driving. 2. Going against a proven market. This will be harder. Way harder. But you'll have a better chance of growing and getting at least a small fraction of the market. If you can get 0.5% of a billion $ market, it is still 5M$!
That was kind of the reflection we had for Fernand. I manage other services (ImprovMX.com - email forwarding, and PDFShift.io - HTML to PDF conversion API ... another shameless plug ... damn!), and they are both very critical. One hour of downtime feels like an eternity. So, we sat down with my partner and discussed a service that wouldn't be that critical. We explored different possibilities and decided to land on a Customer support service.
Of course, if you go against a market by providing the exact same product as everyone else, it will be even harder, if not impossible, to stand out. For us, we decided to focus solely on small (1-10) SaaS services with a sensitivity to stress and by offering a clutter-free and very fast product (wow, so much keywords).
To go back to my initial list of 4 points, they were the driving decisions on why to go against the Customer support market:
1. Validated: Because we know that the market is proven. It won't crash tomorrow, and it is only expected to grow over time. Not like NFTs :D 2. Big: So we can hope that if we only get a tiny drop of that market, it will be enough to sustain our lives. We aren't looking to become millionaires, just to be paid building stuff. 3. Complex, so the entry barrier is higher. A big market that you can enter by building something in two days means having a ton of newcomers frequently, which will include, at some point, people reaching out to you asking if you want to acquire them. If the entry-level is high, you'll have more chance to establish yourself for the long run (and in the Customer Support tool, it is; you need an inbox, a knowledge base, and a chat system, AT LEAST). 4. That one's a bonus. Intercom is frequently criticized because of its pricing. So, on top of our USP(s), we also decided that pricing should be simple and straightforward. (we were past users of Intercom, and it is so irritating to have a ton of options with the "upgrade to have this feature" button almost everywhere!). For GetFernand.com, you have all the features for everyone, and only those who can respond pay for their seat, that's all.
Sorry I got a little carried away, but =>
TDLR:
For me, if you want to build a project that will bring beer money (I love beer!), I'd focus on going against big markets and try to make a small dent in them. Find a unique selling point and try to swim between the giant, getting the crumbs and growing from there. You can enter an easy market, but know the competition at the low end (newcomers) will be harder.
Of course this is my point of view.
<3