this post was submitted on 23 Jul 2023
673 points (96.3% liked)

Programmer Humor

32724 readers
302 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS
 
top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 113 points 1 year ago* (last edited 1 year ago) (3 children)

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.

[–] [email protected] 35 points 1 year ago

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.

[–] [email protected] 12 points 1 year ago* (last edited 1 year ago)

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.

[–] [email protected] 4 points 1 year ago (1 children)

Someday people might look at your project and become demotivated at their own, and the cycle continues

load more comments (1 replies)
[–] [email protected] 71 points 1 year ago (2 children)

For me it usually stops when I mentally calculate how much work it requires, and I realize I’d rather just play video games.

[–] [email protected] 15 points 1 year ago

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.

[–] [email protected] 6 points 1 year ago (1 children)

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?

[–] [email protected] 4 points 1 year ago

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.

[–] [email protected] 62 points 1 year ago (1 children)

If you're looking for original ideas... I have bad news for you

[–] [email protected] 14 points 1 year ago

They come from unique problems

[–] [email protected] 40 points 1 year ago (3 children)

But now you have the opportunity to build it in Rust or Typescript! /s

[–] [email protected] 18 points 1 year ago

This but unironically

[–] [email protected] 10 points 1 year ago

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!!

[–] [email protected] 8 points 1 year ago (2 children)

I really need to learn Rust...

[–] [email protected] 6 points 1 year ago* (last edited 1 year ago)

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.

[–] [email protected] 5 points 1 year ago* (last edited 1 year ago)

You will get there one day, I believe in you :)

[–] [email protected] 31 points 1 year ago* (last edited 1 year ago) (2 children)

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.

[–] [email protected] 6 points 1 year ago

This makes me want to revive some of my comatose projects.

load more comments (1 replies)
[–] [email protected] 24 points 1 year ago (2 children)

third panel: end up doing it anyway because it's fun

[–] [email protected] 8 points 1 year ago (2 children)

4th panel, you did a great job but nobody gives a shit

load more comments (2 replies)
[–] [email protected] 7 points 1 year ago

This is the correct answer

[–] [email protected] 21 points 1 year ago

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

[–] [email protected] 18 points 1 year ago (1 children)

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.

[–] [email protected] 8 points 1 year ago (2 children)

Steve Jobs said "you don't have to do it better, just different".

[–] [email protected] 10 points 1 year ago

Turns out that fruit doesn't cure cancer either

[–] [email protected] 3 points 1 year ago

Yeah Apple's marketing is incredible

[–] [email protected] 17 points 1 year ago (1 children)

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?

[–] [email protected] 7 points 1 year ago (1 children)

Then a while later you go back and look at what you did and realize it's old and badly made.

[–] [email protected] 5 points 1 year ago

Then you pat yourself on the back for inspiring the next dev that comes across your project

[–] [email protected] 15 points 1 year ago (1 children)

A Minecraft rewrite in Rust with a very specific engine and goals certainly hadn't been done... right?..

load more comments (1 replies)
[–] [email protected] 10 points 1 year ago (1 children)

If it brings you joy, you should make the 27th implementation of neofetch in rust.

[–] [email protected] 9 points 1 year ago* (last edited 1 year ago) (1 children)

What? There's already 26?!

<types rm -fr neofetch-turbo while drying up tears>

[–] [email protected] 10 points 1 year ago (1 children)

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.

[–] [email protected] 3 points 1 year ago (3 children)

I've been doing -fr like forever. Don't know why

load more comments (3 replies)
[–] [email protected] 9 points 1 year ago

That doesn't stop the Javascript frameworks.

[–] [email protected] 8 points 1 year ago* (last edited 1 year ago)

Instead, you can try to extend the existing project with new features, possibly improving your code reading skills and discovering new practices

[–] [email protected] 8 points 1 year ago (2 children)

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.

[–] [email protected] 8 points 1 year ago (1 children)

Sometimes starting from someone else's code and stripping only to the functions you need is fun!

[–] [email protected] 8 points 1 year ago (1 children)

That's how you find that one variable that isn't used anywhere but breaks everything if you remove it.

[–] [email protected] 7 points 1 year ago (1 children)

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.

[–] [email protected] 6 points 1 year ago

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.

[–] [email protected] 5 points 1 year ago

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.

[–] [email protected] 6 points 1 year ago

Learning is the main point of taking on a side project. Whether it's original or not doesn't matter

[–] [email protected] 6 points 1 year ago (1 children)

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.

load more comments (1 replies)
[–] [email protected] 6 points 1 year ago (1 children)

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.

[–] [email protected] 3 points 1 year ago

when i created a side project, someone else already did it but they had a flaw in their design, so i created my version to fix the flaw

[–] [email protected] 6 points 1 year ago

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.

[–] [email protected] 5 points 1 year ago

Think of it this way: If there’s loads of implementations of an idea, it means there’ss already a market/need for it!

[–] [email protected] 4 points 1 year ago

I came up with idea where instead of typing stuff like "5/6" "6*9" into the terminal, you could have gui interface.

load more comments
view more: next ›