this post was submitted on 24 Feb 2025
379 points (99.5% liked)

Programmer Humor

20885 readers
556 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 2 years ago
MODERATORS
 

Good old Udemy Elixr/Pheonix courses being irrelevant within 6 months but still trying to con people by saying they're updated to current year.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 45 points 1 week ago (7 children)

Man don't get me started. I went to college in the 10's

I remember when I was trying to learn android development kid and android 5 was just released and all the tutorials that existed were basically immediately deprecated. God what a frustrating time.

We learned node in class and I learned angularjs in my free time because it was the new shiny thing lol. Went to pick it up 2 years later, come to find out EVERYTHING I learned was deprecated.

[–] [email protected] 27 points 1 week ago (1 children)

Google seem to be particularly bad at this. They did the same with Tensorflow. It was kind of the de facto deep learning framework until Google decided to deprecate everything. Everyone responded by switching to Torch instead.

[–] eager_eagle 12 points 1 week ago

IMO tensorflow always had a worse API than PyTorch. There's even the legendary issue "I fucking hate tensorflow", now unfortunately censored as spam lol.

Tensorflow died because devs never bothered improving that. While PyTorch always had an increasing number of features and high level capabilities, TF has always felt like a lower level tool that only made sense choosing if you needed to run models for inference in other platforms. PyTorch Lightning on top of it was a great touch for researchers.

[–] HereIAm 14 points 1 week ago (1 children)

Android is the worst environment I've ever worked in. Concurrency? Use Threads! No wait, we got handlers and loopers now. Oh wait sorry, we're doing coroutines this year.

Now let's do DI with Koin. But ooh google released their own version with Dagger, but oh no! It's clunky to use, so well slap some more stuff in top and call it Hilt!

Networking, persistent storage, UI, permission flows, any other API they have follow the same pattern of new shiny thing, oh it didn't turn out very good, here's a new thing to replace the old. Congrats, every blog and SO answer is now outdated. Even the build system has gone from Maven to Gradle in Groovy to Gradle using Kotlin.

And don't get me started on Android Studio itself. The worst IDE I've ever touched. Any changes to the manifest and now you need to manually sync the project. Be prepared to create a shortcut to gradle's cache folder for easy deleting whenever it shits the bed.

Fuck Android development, I hope I'll never have to touch it again after this job.

[–] idunnololz 3 points 1 week ago* (last edited 1 week ago) (1 children)

Lmao. I love Android development but I've been doing it since froyo so I might have Stockholm syndrome.

I love shiny new toys :D. Kotlin as a language is p. good. The flip side to changing standards all the time is that stuff sometimes gets better :D.

Threads to coroutines was a huge improvement IMO.

[–] HereIAm 3 points 6 days ago* (last edited 6 days ago)

I agree kotlin can be a cool language sometimes. And I'm sure it's been a more gradual journey if you've worked with it while it's been evolving. But man, jumping in at Android 10/11 having to remain compatible with 7 (we've moved up to a minimum of 10 now thankfully) with how much background services and file storage permissions changed right around that time was an extreme headache to work around.

But I definitely prefer C#'s async/await Tasks than trying to wrap my head around all the various coroutine scopes, runBlocking and all that jazz. I know they are very similar concepts, but there's just something with coroutines that isn't clicking in my head.

[–] eager_eagle 8 points 1 week ago

I wrote an app in 2016 and maintained it for some 3 years. Every year there would be a number of deprecated things that required code changes and it was a pretty simple app. I only imagine the amount of work more complicated apps demand.

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

this is exactly what turned me away from learning android properly.

even simple tutorials for calculator apps would be broken and i had no idea where to even start

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

Fwiw, I think Android is starting to get to a good place now with Kotlin, Compose and the MVVM-architecture.

The old days were completely wild though

[–] jagged 1 points 1 week ago

Thankfully we have Flutter to fill the gaps in usable developer experience these days.

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

I had an app development course in university and probably the most valuable tip our professor gave us was to limit the timeframe for search results to the last year

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

You must not have React'd well to that.

[–] [email protected] 2 points 1 week ago

Learn the fundamentals and try to use as few libraries as possible, is always my approach.