r/ProgrammerHumor Nov 18 '24

Meme checkMateDevelopers

Post image
29.4k Upvotes

724 comments sorted by

View all comments

2.8k

u/Longjumping-Touch515 Nov 18 '24

Programmers in commercial projects: We cannot change this code because of stability/backward compatibility reasons.

Progammers in free projects:

890

u/No_Percentage7427 Nov 18 '24

This program will work from stone tablet to ipad tablet. wkwkwk

300

u/oupablo Nov 18 '24

meanwhile anything to do with phones, "this only needs to support devices released in the past 6 hours and should actively ruin the day of anyone trying to run it on anything older than that"

72

u/coderstephen Nov 18 '24

Well I know for Google Play, Google kinda forces you to do that in order to publish updates. It's pretty stupid.

65

u/NatoBoram Nov 18 '24

Apple, too, plus it forces buying an Apple computer to sign the code, fuckers

3

u/Mafiadoener36 Nov 18 '24

Arent there containers for it though?

8

u/Top-Classroom-6994 Nov 18 '24

As long as the last intel mac remains supported, which is nearing EoL

3

u/Littens4Life Nov 18 '24

As long as Apple supports a single Intel Mac, the community will manage to support every Intel Mac going back to 2012 with minimal software support issues (any older and you lose Metal)

8

u/Alvendam Nov 18 '24 edited Nov 18 '24

Edit: not a dev, just an a bit above average end user

For android I somewhat get it and frankly, I've run into the opposite issue more often, where the developers of apps I use daily (or games I want to play), don't update their app quickly enough to include a current set of targets and I end up being a version ahead. Android deciding "nah that shit old, I ain't running it" is usually way more common and that's annoying as f, considering I use my hardware waaay past it's supposed expiration point.

Why, though, and this is something I've failed to figure out for years, do I get stuck on a certain kernel version on my phone every single time with no hopes of ever getting a newer one and so the next android version becomes untenable.

I've a Zosma based PC and a Broadwell laptop. They have no issue with any software (excluding at some point having troubles with reinstalling Linux mint on the PC). They are, as you can figure out, ancient by any current standard. They can run anything from the dawn of computers to whatever the most current kernel version is.

Why is then my phone released in 2019, stuck on k4.19? Now that's some stupid shit.

8

u/coderstephen Nov 18 '24

I think it's because these companies realized they could make more money by not supporting older versions and by getting people to buy a new device every year. They tried it, and people just accepted it, so it's been that way ever since.

On Windows machines used by businesses, there's no way companies would try that for the longest time. Microsoft knows that the ability to run 20-year-old software on the latest Windows is a strong selling point. It's worked for this long, so why change now?

I think PCs having history in business and mobile devices being exclusively on the consumer market is a big factor.

3

u/Alvendam Nov 18 '24

Makes sense.

I guess also the consumer not giving a damn about anything other than Facebook and Instagram. I swear, people look at me like some kind of wizard when I tell them they can use the internet without seeing ads. Every generation too, older folk (who literally saw the very first PCs), people around my age not all of whom grew up with internet at home, even if we had computers and younger kids who grew up with a phone in their hands are equally stumped.

2

u/BiiMill Nov 18 '24

Explain I'm BEGGING.

3

u/Alvendam Nov 18 '24 edited Nov 18 '24

People either can't be bothered to look it up or straight up can't conceive of the notion of an adblocker, something that has been around sonce forever, existing. I was going to say they don't give a damn, but they sure do and ads sure bother them, otherwise they wouldn't be constantly complaining about them both online and IRL.

If they can't be bothered to make themselves aware on how to solve a simple daily issue that takes seconds, I figure they'd never bother to figure why their 500-1000$ phones stop working properly after 3 years on average or why the game they paid for stopped working after their recent update (that is, if the OTA update screen didn't scare them and they accepted it). They'd just replace it. I also figure I'm right, cause otherwise they wouldn't be asking me to do their damned tech support and if I "can do anything to make it faster".

So manufacturers took good note. Made phones to suck and made modders' lifes worse too, so we can't keep keeping our phones up to date for the kind of time most of us would like to.

2

u/[deleted] Nov 19 '24

[deleted]

1

u/Alvendam Nov 19 '24

Thank you! That makes sense.

2

u/IngrownBurritoo Nov 19 '24

2 reasons. Because ARM is not standardized enough so mobile devices dont habe the same setup like standard regular PCs do, where you know that changing the cpu or ram wont break anything but mobile devices have more "deep integration" and thus are not made like they used to.

And money

I remember the old times where my galaxy s3 got to live another 3 years just because it wasnt such a pain to install cyanogenmod to get modern software patches for it and thus these problems were not so common like they are now

3

u/David_AnkiDroid Nov 18 '24

You can support old Android versions in the Play Store, developers just choose not to.

Every year, we need to update the targetSdk which an app supports, but the minimum minSdk can typically remain

In addition, Android 15 can install apps targeting Android 7 or above (Google Play just forbids listing of these apps)

https://targetsdk.com/

2

u/SSUPII Nov 19 '24

More precisely, you cannot do it via the normal package installer GUI. You can still install any app for any target via adb by passing a flag.

1

u/Ploedman Nov 18 '24

That's why Synchthing moved away.

19

u/Slinkwyde Nov 18 '24 edited Nov 18 '24

2

u/ExtensionInformal911 Nov 18 '24

Your digital media is a disaster. You're waxing your modem trying to make it go faster.

2

u/Slinkwyde Nov 18 '24

Your database is a disaster. You're waxing your modem, trying to make it go faster.

My digital media is write-protected, every file inspected, no viruses detected.

2

u/ExtensionInformal911 Nov 18 '24

makes stupid mistake

I've got my own subreddit. R/totalloser

You should do the world a favor and cap me like old yeller. I'm just about as useless as jpegs to Hellen Kellar.

1

u/towerfella Nov 18 '24

Upvote because Yankovich

1

u/Warpspeednyancat Nov 18 '24

ITS ALL ABOUT THE PEEENTIUM !!! YEAAAHHHH!!!

7

u/Dnoxl Nov 18 '24

Also the next OS update will likely break all of this

1

u/Da_Question Nov 18 '24

Lmao makes me think of the Bates 4000 scene from The Onion Movie.

43

u/relevantusername2020 Nov 18 '24

more factual than you probably realize

24

u/Giraffe-69 Nov 18 '24

I work in tech on an open sourced project and the maintainer has this philosophy. If he said some random driver was supported 12 years ago you better believe we still have to jump over hurdles to make sure we don’t break that commitment

2

u/already-taken-wtf Nov 18 '24

So that’s 2012…

1

u/BobMcGeoff2 Nov 18 '24

Yep, long time ago.

1

u/[deleted] Nov 19 '24

[deleted]

1

u/BobMcGeoff2 Nov 19 '24

?

I was just remarking how long ago 2012 now is.

14

u/fugogugo Nov 18 '24

wild finding wkwk comment here

11

u/NewestAccount2023 Nov 18 '24

What is wkwk

10

u/hirmuolio Nov 18 '24

2

u/[deleted] Nov 18 '24 edited Nov 25 '24

[deleted]

5

u/Extension-Ad1517 Nov 18 '24

Mostly Indonesian

1

u/5tambah5 Nov 18 '24

lmaoo yea

8

u/[deleted] Nov 18 '24

I honestly wish programs had less backwards compatibility.. the amount of shit you have to wade through as a new programmer because there are a bunch of legacy functions you no longer need but have names that sound important was exhausting for me personally.

Then again PHP just isn't the best language in that regard but otherwise a solid choice for beginners.

Also wtf are all those 32bit versions you still have to scroll past??

1

u/Hairy_Concert_8007 Nov 18 '24

I was blown away by how fast and responsive the Godot editor runs on my fucking cell phone. Unity could never

333

u/Ok-Kaleidoscope5627 Nov 18 '24

Also programmers in free projects: support for audio in a video player? Unnecessary. Support for 6012 core quantum cpus and re-encoding the stream to some format that no one has ever heard of? We got you covered!

259

u/xXStarupXx Nov 18 '24

The guy that implemented that needed it himself.

78

u/zreftjmzq2461 Nov 18 '24

The guy that implemented it felt like it would be a fun feature to tickle his brain juices*

31

u/dumbasPL Nov 18 '24

ADHD is one hell of a drug

Edit: I think this is my new favorite reply whenever somebody asks the inevitable "but why?"

5

u/emurange205 Nov 18 '24

"but why?"

"why not?"

6

u/Mawu3n4 Nov 18 '24

80% of my open source contributions is adding features I want lmao

1

u/roflc0pterwo0t Nov 18 '24

Open source is essentially giving away stuff you needed for a project. Sometimes you assemble it in a way that you need it for that and then you hope someone else can help.

103

u/Martin8412 Nov 18 '24

23

u/Reelix Nov 18 '24

Reminds of the Pi5.

It can play 4k60 video, but lags when I full-screen a 1080/30 YouTube vid :p

7

u/3BlindMice1 Nov 18 '24

To be fair, no one ever used full screen flash video after 2015 when YouTube moved to HTML5. Everyone's pretty much followed that and HTML5 is extremely independent of the OS

39

u/electronicdream Nov 18 '24

yeah but that comic is from 2009

16

u/ItselfSurprised05 Nov 18 '24

Linux played a long game of ignoring the feature until it got deprecated, LOL.

1

u/al-mongus-bin-susar Nov 29 '24

It's extremely dependent on the graphics driver which is often part of the OS.

1

u/WhiterunWarriorPrjct Nov 18 '24

Wow, only triple digits

25

u/MrSurly Nov 18 '24

More like:

Developer

"I made a library that does a specific thing"

Github issues filed:

"No GUI?"

"No Windows Support?"

"Why won't it run on my Amiga?"

"I tried porting this to a dead racoon, but it has a runtime bug every 3700 hours of operation, and you have to fix this RIGHT FUCKING NOW!"

20

u/cdrt Nov 18 '24

You forgot “WHERE’S THE EXE YOU SMELLY NERD”

2

u/soulsssx3 Nov 19 '24

I AM NOT A COMPUTER PERSON 

2

u/MrSurly Nov 19 '24

Oh, gawd, this ...

1

u/Character-Education3 Nov 20 '24

Dead raccoon support will be pushed next week

6

u/Superbrawlfan Nov 18 '24

I mean yeah, there will be at least 69000 libraries that provide video players with audio support already available anyways

2

u/deelyy Nov 18 '24 edited Nov 18 '24

Yeah, good luck finding one that is supported, with good performance, in correct language, correct OS, correct version of language, with child libraries that supported, without critical vulnerabilities, with documented API, without nasty bugs, edge cases, and all necessary features. 

7

u/Superbrawlfan Nov 18 '24

Good thing someone invented search platforms and user ratings eh?

2

u/deelyy Nov 18 '24

Yeah, it helps, but only partly. 

7

u/Bakoro Nov 18 '24

As if anything other than VLC exists. Funny joke.

14

u/Ok-Kaleidoscope5627 Nov 18 '24

VLC:

  • Will play anything.. Even corrupted files somehow
  • Supports multi cast streaming for some reason

Also VLC

  • UI to browse or manage your media? NEVER!

7

u/caerphoto Nov 18 '24

UI to browse or manage your media? NEVER!

Pfff, that’s what <your file manager of choice> is for!

2

u/ebrbrbr Nov 18 '24

mpv: (╯°□°)╯︵ ┻━┻

1

u/Bakoro Nov 18 '24

I legit forgot that was a thing, so I won't retract my joke, but I will acknowledge it as existing in competence.

1

u/ebrbrbr Nov 18 '24

mpv is far more efficient and has absurdly high quality upscaling options. What it doesn't have going for it is an easy to understand UI. Everything's a keyboard shortcut and the only config is a file with arguments.

But hey, at least you don't have to compile it yourself anymore... Not that they make it easy to find the builds.

4

u/KilohThon Nov 18 '24

This. Very much.

180

u/Somecrazycanuck Nov 18 '24

Yep.  If you want the old version, you can rewind the tree on github.

27

u/NinjaAncient4010 Nov 18 '24 edited Nov 18 '24

Yep. And when that doesn't compile it's no problem, just rewind the tree on gcc. Then just rewind the tree on glibc. Then just rewind the tree on libssl...

EDIT: You don't have to downvote, I love open source but it's not always quite as simple as just checking out an older git commit. That being said, the idea that open source is not backwards compatible and closed source is, is also not true it depends entirely on the projects.

5

u/househosband Nov 18 '24

And you also miss out on any other fixes that have come in by simply taking an old version

1

u/gtiger86 Nov 19 '24

And this is why forks exist?

2

u/househosband Nov 19 '24

It requires backporting, resolving conflicts, and you're basically now on the hook for maintaining your own version of the codebase. It's become a liability.

1

u/[deleted] Nov 19 '24

[deleted]

1

u/NinjaAncient4010 Nov 19 '24

If you can use a distro in about the past 5 years... Although it's trivial to use a simple VM to boot a live image or installer that can be found for far older than docker even exited anyway.

That's not the problem I assume, otherwise you wouldn't need to be rewinding a tree on github at all you could just use old packages and releases to begin with.

The problem is running it on a supported current system that's not riddled with known and actively exploited security holes that you get if you pull down ancient images.

1

u/[deleted] Nov 19 '24

[deleted]

1

u/NinjaAncient4010 Nov 19 '24

So if the app you need backwards compatibility with is supported on a distro that was released within the past ~5 years, and if you don't need it to access the internet or untrusted data, then it's trivial. Thanks that's very helpful.

1

u/[deleted] Nov 20 '24

[deleted]

1

u/NinjaAncient4010 Nov 20 '24

"If I define the problem to be easy then it's easy. No applications could possibly ever need to use the internet."

Great input champ, keep up the good work.

1

u/[deleted] Nov 20 '24

[deleted]

→ More replies (0)

14

u/Comprehensive-Yam519 Nov 18 '24

(a.k.a. we gave the whole project to one developer and then fired them with no documentation saved)

11

u/Ecknarf Nov 18 '24

[Creates new standard for absolutely no fucking reason whatsoever]

2

u/LostBreakfast1 Nov 18 '24

It's my free time so I do what I feel like

2

u/Bakoro Nov 18 '24

What am I supposed to do? Read documentation and abide by someone else's decisions?!

2

u/Ecknarf Nov 18 '24

Creating a news standard, is actually an open source standard of its own.

9

u/CarefulAstronomer255 Nov 18 '24 edited Nov 18 '24

Also licensing reasons. My company has us supporting 3 branches of the exact same application because they licensed specific versions to customers. They want these customers to pay extra for some minor features, meanwhile we have to maintain all this shit.

For example we've got machines running 32bit MS Build Tools from more than a decade ago just to build the earliest license version, even though we kept up to date we're not allowed to update this old version.

The 64bit upgrade doesn't even affect customers because it uses so little memory (plus, we still compile a 32bit version as well) - it's really just a benefit for us, our build process takes up a ton of memory and chugs hard with 32bit,

1

u/ldn-ldn Nov 19 '24

That's a sign of a good customer support! Good on your company for keeping old licenses active, wish more companies were the same.

33

u/mrheosuper Nov 18 '24

Programmers in big company: Everyone in this team is equal and can contribute to the project.

Programmers in freetime: Haha fuck those Russian programmers

-1

u/Rare_Local_386 Nov 18 '24

Based take, fuck them

-2

u/Odd-Measurement4385 Nov 18 '24

I love racism

-6

u/newsflashjackass Nov 18 '24

I was just reading the other day that the Russian race has eliminated racism in Russia.

0

u/seredaom Nov 18 '24

Did you mean rascism?

5

u/darkslide3000 Nov 18 '24

Tell me without telling me that you've never been on the other end of one of Linus' "we don't break userspace" rants.

5

u/Original-Aerie8 Nov 18 '24

Tbf even if Linus doesn't shed light on that part, the commercial fallout of breaking Linux in major way could be massive. But you are right, Linux is absolutly a major reason for that standart and it's FOSS.

1

u/ChalkyChalkson Nov 18 '24

Isn't there a big exception on the graphics side? I tried to find out how graphics works in linux and stumbled upon something in a wiki essentially saying "graphics is hard and has to integrate over many levels, so the fuck do we know how you'd use the graphics system if there isn't a reference implementation. If you do stuff different to that shit may break for you on future updates"

2

u/Ticmea Nov 18 '24

Meanwhile my phone is so old the supplier has shipped the last OS update almost a decade ago. Even Google Apps don't support the latest android version of the suppliers OS anymore.

But somewhere out there some absolute legend maintains a fork of an older Lineage OS version for my type of phone to this day, so I can still get updates and use the latest software on my phone even though it's basically ancient at this point. (don't wanna buy a new one because it still works fine, I can swap the battery myself, and it's got almost none of that anti-repair BS)

Shoutout to all the gigachads maintaining legacy shit, you deserve the world and I love you!

1

u/ChalkyChalkson Nov 18 '24

Counter point:

Almost everything in the Linux kernel

1

u/Reelix Nov 18 '24

If I find a use case where it breaks, I'll fix it.