What came first, the programmer or the code?

alphacyberranger@lemmy.world to Programmer Humor@programming.dev – 1228 points –
43

Yes, because till University, you’re trying to learn something new. And the best way to learn is by doing.

At work, all you’re trying to do is save money (for the corporation). Best way to do that is to reuse, recycle.

It's more complex than that.

In the real world we're not all working on the same assignment...even if it feels like it sometimes.

1 more...
1 more...

Anyone can copy code. Making the copied code work well in your own codebase, and fixing it when it doesn't, is what requires skill and experience.

When I was 8 I was making a "video game" (a complete bundle of code trash πŸ˜‰) and I would copy people's code and everything would melt down. I would spend hours debugging just to realize I needed to pass an extra argument or indent or something.

Today I'm better at my job. I am now the one writing confusing function APIs 😈

It's no exaggeration sometimes it takes a dozen different how-to blogs and stack overflows to find an example where somebody has exactly what you need and nothing more. So many people add so much fluff and unusual structures that the thing they're claiming the code does can't even be found.

When I get helper functions from stack overflow or similar, I normally add a comment with a link to the article, mostly for my own sake so if there's any problems later I can re-read the article to get more info, or use it to try and find other solutions.

You’re supposed to do that anyway. Code on SO is licensed as CC BY-SA, which requires attribution.

I used to do that on complete copy and paste parts.

Now we aren't allowed to do so. If stackoverflow.com is used you have to adjust the answer so that in court your code will not be a copy. They are afraid of users licenseing their code afterward.

2 more...

For JS shit I usually have to rewrite them because they aren't production quality in terms of readability. Still really useful for getting answers on obscure stuff

The quality is definitely varying, the hardest part is to find a example that fits what you expect, or looks like it can be refactored into what you need.

2 more...

well using someone's code properly licensed isn't plagiarism

a fair few of my uni classes were like take this guys code and make it do this, which were like 4 lines changes

"Here's this header file that implements 99% of the mathematics, because I'm not paid to teach mathematics."

Ironically I learned a lot more about linear algebra from that header file than from my actual teacher.

I just saw a "faster linear algebra" package scroll by on pacman. I almost pulled up the source/documentation.

The only thing that stopped me was that I have about 199 things more relevant to my usage than linear algebra.

Plagiarism isn't just using someone else's work. It's when you use someone else's work and claim it was your own. The programmers aren't plagiarizing as they're being freely admitting it's not their work.

If you've ever copied and pasted code from StackOverflow without mentioning the author, linking the creative commons license, and linking to the author's account you've technically violated the creative commons license and I'd argue you've technically plagiarized.

Does anyone care? No, not really.

Just don't tell your Legal department.

Uh oh. So you think legal might be on to us, like, existing?

I know I’m safe though because every line of code I have ever written came to me in a vision as I stared at a flat white wall.

flat white wall

Hey guys, look at this light mode user! My wall is dark mode. 😎

In a serious note, a developer should be aware of how licenses work. Just copy pasting from Stack Overflow likely breaks the defaults license. You could open up yourself or your company to serious legal trouble. And it really isn't ethical. I wouldn't want code I shared in a certain context be stolen by a large corporation and make them money

Lol! I figured a plain white wall was as featureless as you could get for something to stare at while you mentally conjure code.

And since I’m in the office today (voluntarily!) there is literally a white wall to stare at above my monitors! But there is also a window slightly to the side, so my β€œstaring blankly while totally thinking of something that will help the company” game is strong.

Dark mode is definitely the way to go though. I have three monitors and one phone in front of me, and 3/4 currently show a dark background in the application on them.

All code already exists in Plato's world of perfect abstractions. Programmers merely view this ideal world darkly and scribble what imperfect algorithms they can vaguely remember.

Stackoverflow is platonism for the masses, a means by which to copy perfect code from "programmers."

The "other programmers" are dead. There is no perfect algorithm. And so we must become programmers unto ourselves...

Public domain? Creative commons? MIT? BSD? GPL? You mean I'm allowed to use these things without failing?

Unless there's a bug. Then it is my code and I have to fix it. Immediately. No, I don't want to discuss my thought process for "why I made that decision" I want to fix it. Why are we having a chat about milk pouring technique while it is dripping off the fucking table. Prod is burning and you want to fiddle! (Meanwhile this is a minor bug that nobody has ever actually complained about but just the knowledge that it was my fault...)

I have a suspicion that the reason universities crack down on plagiarism this hard (to the point of outright making up offenses like β€˜self plagiarism’), is that it’s the only form scientific misconduct that is easy to prove and investigate.

If you are wondering if it’s true, just look at how long it took for Hendrik Schon to get caught. And even then, the smoking gun was reusing (fake) graphs in a publication.

They crack down on plagerism because they're trying to teach and assess you, not whoever you copied from. If they wanted copied answers, they could just photocopy the answers for you and save everyone a lot of effort.

The real world may be different, but the idea is to get the knowledge and, more importantly, the way of thinking about your particular subject, into your head. Once you know that, you know what to copy.

I was trying to make a larger point about the concept of plagiarism as a form of scientific misconduct. In a teaching setting you are just perpetrating exam fraud and should get nailed to the wall.

Ah, fair enough, I think I misunderstood your point.

Yes, plagiarism as scientific rather than academic misconduct is cracked down on hard. As you said, it's easy to prove, and, I suspect they don't like the idea of having their own work copied without attribution.

1 more...
1 more...

It is called a programming language. I guess repeating some sentences or even the idea for a story is normal when you write a book or code a program.

There are also a lot of recurring problems, obscure bugs, performance enhancements that someone has already solved. Software development should care about completing a task, not inventing the wheel (or an image upload) the millionth time.

It's often the lawyer and the corp who care about suing than the programmers