Yeah don’t let this stop you! If you do the side project for fun and/or learning, just go ahead and build stuff. Don’t look at other projects too soon so you give space to your own creativity. But perhaps compare stuff in a later stage.
This is a great perspective. I have definitely fallen into this meme’s sentiment many times. You have to remind yourself that it doesn’t matter.
give space to your own creativity
This is key. One will inevitably make many different design and UX decisions vs whatever preexisting projects are out there, making one’s project more suited to at least a few contexts than anything preexisting.
In addition to being plain demotivating, looking at other stuff too early basically encourages one to just make the same decisions as others, becoming much more like just a second implementation of what already exists.
Someday people might look at your project and become demotivated at their own, and the cycle continues
For me it usually stops when I mentally calculate how much work it requires, and I realize I’d rather just play video games.
Yeah I'm at that stage too. I used to have a lot of time for projects but as an adult, I really have to be selective with my time and energy.
This is where ChatGPT and Codium.ai has been a godsend for me. Something that would have taken me a few hours to 1+ days to iterate on is now reduced down to anywhere from minutes to an hour. I don't even always see it all the way through to completion, but just knowing that I can iterate on some version of it so quickly is often motivation enough to get started.
If you're paying for the Plus subscription, GPT-4 with Code Interpreter is absolutely OP. Did you know you can hand it a zip file as a way of giving it multiple files at once?
I’ve been using GPT4 actually, and I agree it’s a godsend for lazy people like me. Haven’t been using it lately because all my ideas right now involves fine tuning LLMs, which I can’t financially justify at the moment.
If you're looking for original ideas... I have bad news for you
They come from unique problems
But now you have the opportunity to build it in Rust or Typescript! /s
This but unironically
This is my project. There are many like it, but this one is mine.
My project is my best work. It is my life. I must master it as I must master my life.
Without me, my project is useless. Without my project, I am useless.
Take off the /s and do it!!
I really need to learn Rust...
It's difficult but worth the time if you have it. No other language creates programs with such guarantees for not having common memory bugs and performance like c.
You will get there one day, I believe in you :)
Who cares if it already exists, just make it.
Also consider the possibility when the other, more popular projects got enshittified. Now the fleeing users have an option to switch to your project. It actually happened on one of my side project. I made it because I want to try building my own version of X. It got ~2000 users, but later down the road, X got sold to a new shitty owner that waste no time to enshittify it, and my side project suddenly grow to 20,000 users overnight.
This makes me want to revive some of my comatose projects.
third panel: end up doing it anyway because it's fun
This is the correct answer
or you realize that the idea fundamentally wouldnt work. i wanted to build a lemmy music recognition bot until i remembered lemmy has no videos lmao
A Minecraft rewrite in Rust with a very specific engine and goals certainly hadn't been done... right?..
Guess that depends on what your goal is. Are you doing it for fun? Or for money? If it's the latter it's all in the marketing.
Steve Jobs said "you don't have to do it better, just different".
Turns out that fruit doesn't cure cancer either
Yeah Apple's marketing is incredible
Most times I find that these projects are either old or badly made (often both). If you’re inspired and you feel like you can make them better, then go for it.
An artist isn’t going to refrain from painting a portrait of a dog if other artists have already painted dog portraits, so why should you?
Then a while later you go back and look at what you did and realize it's old and badly made.
Then you pat yourself on the back for inspiring the next dev that comes across your project
If it brings you joy, you should make the 27th implementation of neofetch in rust.
What? There's already 26?!
<types rm -fr neofetch-turbo while drying up tears>
I can't believe I've never seen rm -fr
instead of rm -rf
. "remove for real" is instantly my new method of deleting directories.
That doesn't stop the Javascript frameworks.
Instead, you can try to extend the existing project with new features, possibly improving your code reading skills and discovering new practices
I've built little things that already have a solution when that other solution either didn't do it the way I had in mind or did more things than I needed it to. It really depends on how you're valuing your time and knowledge/experience in the end.
Sometimes starting from someone else's code and stripping only to the functions you need is fun!
That's how you find that one variable that isn't used anywhere but breaks everything if you remove it.
Then you fill the fucking code with print statements because you don't know to use debug, realize the variable feeds some stupid fucking function that does nothing but has to be there and a few hours later comment out said print statements and just re add the variable.
You know, it occurs to me that doing that with print really isn't any different than the accepted method of debug logging other than where the output is directed to.
Try to add 100+ things to make it very big project, then dropped without even completing 10% of to-do list.
Eventually you get a better idea to start the same project from scratch, then drop it.
If it sounded cool to do, I do it anyway, and keep it to myself. Never have to clean that shit up. Unfinished? Who gives a fuck, I did it, job sorted.
If it sounded like it needed to exist... thank god, someone else did it for me! Not my problem. git clone, next idea.
A project doesn't have to be unique as a whole. You can always take an already existing idea and add your own twist to it (new UI, new feature, better optimisation, etc). What's important is actually doing something instead of being stuck in an infinite loop of brainstorming idea.
Learning is the main point of taking on a side project. Whether it's original or not doesn't matter
Execution is what matters, not ideas. Anyone can half-ass an idea and say “I did it first” but whoever comes along and does it right is who gets remembered.
Think of it this way: If there’s loads of implementations of an idea, it means there’ss already a market/need for it!
I came up with idea where instead of typing stuff like "5/6" "6*9" into the terminal, you could have gui interface.
Programmer Humor
Post funny things about programming here! (Or just rant about your favourite programming language.)
Rules:
- Posts must be relevant to programming, programmers, or computer science.
- No NSFW content.
- Jokes must be in good taste. No hate speech, bigotry, etc.