Framing libraries as cheat sheets is hilarious
It’s kinda fun to think of programming as magic.
And “libraries” as grimoires/tomes .It’s surprising how far you can go with the analogy.
My best comment ever in Reddit was describing Lord of the Rings as programming.
Some time ago:
- Me: “Programming is fun, but user interfaces are a PITA”
- CS student: “What!? The algorithms I’m given to solve are really complicated!”
- After a year on a job: “I hate testing user interfaces…”
Some other day:
- Me: “Programming is mostly copy&paste”
- Engineering student: “What!? We have to come up with a new solution for every problem!”
- After a year on a job: “I don’t program anymore, just copy&paste…”
Told ya.
Programming is mostly copy&paste
I don’t know what y’all are working on but these comments always scare me …
No matter what you work on, programming is one of:
- Check the documentation for a library, copy&paste the interface call, fill in the blanks.
- Pick the best algorithm for the case at hand, copy&paste, change a few variable names.
- Get out your snippets archive, copy&paste the one you need.
- Write some boilerplate, copy&paste over and over, then fill in the blanks.
- Look up how someone else solved your problem, replicate it in a way that doesn’t look like copy&paste.
- Once in a blue moon, come up against an actually novel problem, spend some days figuring out the best way to solve it… then copy&paste the solution back into the project.
Doesn’t matter what you’re working on, in the end it’s mostly copy&paste 😂
I work on compilers (we can’t/don’t even have access to the C++ standard library in my case)… Most of the time, Google can’t help me ⚰️😅
It was definitely a bit more copy and paste when I was working on web applications… But even then, most of the code I was writing was fairly novel / more application and database architecture problems than trying tying libraries together.
What are databases, other than glorified MS Access (¹)? 😜
But seriously, if you’re working on compilers, then your “target users” are way different than the average thing: you have actual problems to solve, and can stick to the CLI.
Most copy&paste begins the closer to a GUI you get. Modern web interfaces, have also become a string of libraries and frameworks.
(¹: once upon a time… I tried to explain to a client, why there was no way on Earth to make their in-house MS Access solution compatible with personal data protection requirements for medical data, like 100% access control and logging. I failed… then some years later saw a story about the same problem on Coding Horror; still wonder if it was the same guy who got some other poor soul to try and go through with it, or if it was a more widespread problem at the time when personal data protection laws got enacted)
I’ve never found a problem that can’t be exacerbated with Microsoft Access.
Hmm, is this a new take on the “Stop Doing Math” meme?
Me: Spends 4 hours making a pause menu… “I wish this was true… This man has not met the hell of a 50 state, 100 elif statement…”
Amateur Coders code: " We don’t do this because its easy, we do this because we thought it would be easy"
We do what we can, because we must!
It’s like if farmers were just letting plants do all the work, instead of manually assembling the potatoes themselves
deleted by creator
It’s like the joke about the invoice charging 0.10$ for a screw and 100$ for knowing which screw to replace.
Coding is easy. Software engineering not so much.
I love SwiftOnSecurity.
LLMs will replace the programmers right before they replace the satarists.
The best scene in a terrible movie.
The job of a programmer is to reintroduce a bug that was fixed in the last patch.
Merge needs some stomp, yeah, mine stomp yours.
edit: note, this is a good thing, cause then we both have unlimited supply of tickets.
The biggest scam about programmers is they barely program
He’s got a point, though, the further you go, the less time you spend inputting code. Although some people prefer to continue going head first and then remaking everything.
That is a lot of fun to do, most times. Also I need to provide for my family and the guys who pay my salary want their stupid features implemented like yesterday.
I half agree about fun, think it depends on how often clients want some weird shit done yesterday, it becomes a nightmare if it happens too often :(
Over the past month I feel like all I’ve been doing is writing tech design documents for systems I don’t actually know anything about because I haven’t had the opportunity to go in and do anything with them.
Fortunately I’ve finally managed to reach the point where everyone agrees that we should just start implementing the basics and see how that goes rather than try to plan it all out ahead of time since we’re surely going to have to throw out the later plans once we see what we’re actually dealing with.
like with many jobs you’re learning to only do the work that matters, and oftentimes when you can avoid doing work that actually improves the product.
There’s a reason why construction workers aren’t making their own planks and nails, that would be horribly time consuming, inefficient, and they’d probably make shitty planks.
Not trying to become an expert in everything was the most important decision I made so far, I think
Absolutely. I barely touch code anymore, but I talk about how to touch code a lot.
Why don’t they program using spreadsheets? Are they stupid?
@ElCanut geee, I wonder how did they make Microsoft Access.
There’s an intern inside the server that checks every transaction by hand
Spoken like a true normie 👍
Can ya please go back to the Drop-Down thingy for your license? It’s already annoying on its own, but it gets even more so when Voyager adds the Link-Preview
Dropdown doesn’t work for at least 2 clients. This is the best I can do.
If it really does bother you, block me 🤷
ok
You know what’s funny, the two clients that don’t support your dropdown/spoiler for anti-commercial licences were commercial closed-source Lemmy clients.
I say sod them and go back to your dropdown.
why would someone go out of their way to use closed source lemmy clients?
please don’t, it literally fills half the screen for me
Hey, how do you get the creative Commons attribution to automatically appear under your comments?
Unfortuately, it’s manual :) Keyboard shortcut to put the text into the clipboard and then paste it into the comment.
If you're on linux using X11
#!/usr/bin/env nix-shell #!nix-shell -i bash --packages xautomation xclip sleep 0.2 printf '[Anti Commercial-AI license](https://creativecommons.org/licenses/by-nc-sa/4.0/)' | xclip -selection clipboard #(echo '::: spoiler Anti Commercial AI thingy #[CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/) # #Inserted with a keystroke running this script on linux with X11 #```bash' #cat "$0" #echo '``` #:::') | xclip -selection clipboard xte "keydown Control_L" "key V" "keyup Control_L"
genuine c/programmerhumor
Sometimes it feels like most of my job nowadays is deleting code now.
To me, there is no greater high than seeing big negative numbers on a commit. Deleting stuff is the most satisfying experience in programming. A commit with +10, -142 is mint.
Be careful with that one. I’m not sure about your experience level, but a mistake newer (and some more experienced) programmers often make is taking DRY too far.
It’s easy to “dry” something up to the point where it’s spaghetti that’s overly clever about how it reduces lines of code resulting in some crazy inheritance hierarchy even you (the author) are afraid to change a few years down the road.
There are of course other times when someone just copy and pasted e.g. sort logic all over the code base … but that sort of thing is relatively rare