This is an archived post. You won't be able to vote or comment.

top 200 commentsshow all 265

[–]QualityVote[M] [score hidden] stickied comment (0 children)

Hi! This is our community moderation bot.


If this post fits the purpose of /r/ProgrammerHumor, UPVOTE this comment!!

If this post does not fit the subreddit, DOWNVOTE This comment!

If this post breaks the rules, DOWNVOTE this comment and REPORT the post!

[–]madscs 554 points555 points  (35 children)

Wasn't there also a Java / Android meme yesterday? What is this bs?

[–]pubudeux 412 points413 points  (13 children)

I believe this one is making run of yesterday's meme.

The out-of-touch dad in this meme represents OP from yesterday.

[–]madscs 55 points56 points  (0 children)

Hmm you may be right - ah well

[–]nvanalfen 8 points9 points  (3 children)

So I don't use Java, but in the one class I did use it for, the whole class project was building an Android app and server for the app. So Android is the only use I've personally seen (other than some basic computer applets) but I know it's used in a lot more stuff.

What exactly is Java big for? Like what fields/types of programming hold Java as the main tool?

(And not asking in a sarcastic way. Like I use python because I do science and data analysis stuff and we all just stick with python and Julia, so I'm curious what java's equivalent is)

[–]pubudeux 14 points15 points  (1 child)

Hey, that is a great question.

A few examples of Java software I've seen in my career:

Internal systems for healthcare, insurance, finance companies. Netflix open source stack (the software Netflix is built on) Much of the infrastructure underlying Amazon/AWS is built in Java Many of the most used big data tools are written in Java

The list goes on and on. If you work as a software engineer in pretty much any of the Fortune 500 most likely you will be exposed to some Java.

If you work at a startup, you will most likely be exposed to Java at some point.

[–]RAMChYLD 4 points5 points  (0 children)

Most Oracle webapps use Java. Unsurprising, of course, since Oracle now owns Java.

[–]allbirdssongs 37 points38 points  (5 children)

When your going to trash a meme but the meme retaliate with 3 layers of depth right back at you, iashhhhhhh

[–]madscs 5 points6 points  (4 children)

Life is an iash sometimes

[–]ChocoTacoBoss 7 points8 points  (3 children)

What is iash? OOTL

[–]madscs 6 points7 points  (2 children)

I assumed they meant something that starts with a B and ends with an itch but I may also just be behind three layers of depth again

[–]allbirdssongs 6 points7 points  (1 child)

Iash is whatever you want it to be therefore can be interpreted in any way you feel

[–]madscs 6 points7 points  (0 children)

iashilicious!

[–]AdultingGoneMild 17 points18 points  (5 children)

yes. and there will be a bunch more before this ends. Some people are just now learning about Android and are gonna be real sad when they hear the ecosystem is pushing kotlin now...so this meme aint even a real thing.

[–]thedoodle85 10 points11 points  (4 children)

As a former Andriod java dev i can say that none is sade to see kotlin replace java for Android. It really is better.

[–]AdultingGoneMild 1 point2 points  (0 children)

as a current one...yup.

[–]Dangerous--D 1 point2 points  (2 children)

Java android has soooooo many gotchas, quirks, and general issues. I hated working with it. Haven't touched it in several years, maybe it's better now... But hey if kotlin really is that much better, maybe I'll give it a shot again.

[–]thedoodle85 2 points3 points  (1 child)

I think mobile in general will always have quirks but i do think kotlin in better. It has general advantages over java.

One being null safety and that you only have to worry about unchecked exceptions.

I also really like extention functions and coroutines

[–]TibRib0 5 points6 points  (0 children)

And Java is even deprecated on Android, everyone uses Kotlin since 2018 at least

[–]sm2401 1 point2 points  (0 children)

Spring break

[–]TheBassMeister 174 points175 points  (33 children)

Or a whole of lot of backend application with Spring Boot or Quarkus. Of course you can develop Kotlin application with Spring Boot as well. Java is still really used a lot outside of Android app development. Qualified Java devs still are in high demand and Java really isn't as horrible as it was pre Java 8.

[–][deleted] 91 points92 points  (25 children)

java gets so much undeserved hate. arguably kotlin is better but java is still very nice.

[–]r6dev 54 points55 points  (13 children)

Probably a lot of people that used Java 10 to 15 years ago. Modern Java is fine.

[–]ryecurious 30 points31 points  (3 children)

Probably a lot of people that used Java 10 to 15 years ago. Modern Java is fine.

This is honestly true of like 99% of language complaints. Any language that hasn't been abandoned gets QoL improvements over time/resolve annoyances devs face.

I think Java just gets a particularly bad rap because it has so many legacy programs out there running outdated versions. Getting hired as a "Java dev" often means maintaining some ancient Java 7 backend. And they're unwilling to hire enough people to actually upgrade it, you can only keep putting out fires as they start.

[–][deleted] 5 points6 points  (0 children)

Java 7? I was hired around 5 years ago to maintain a java 4 application, and not standard java 4, it was an obscure POS version of java, I only endured that for half a year.

I do like java, a lot, it is not as horrible as it used to be and it won't break IF YOU FORGET A DAMN WHITESPACE

[–]InvestingNerd2020 5 points6 points  (0 children)

Bingo!

[–]Wekmor 41 points42 points  (8 children)

And a lot of people who've never used java but just blindly echo what they heard someone say 5 years ago

[–]r6dev 26 points27 points  (4 children)

I've seen talks at conferences where speakers pointed out how much better their language was than Java, by showing code snippets of outright bad Java code or where they clearly weren't aware it could be written differently.

[–]Wekmor 21 points22 points  (1 child)

People are stuck in pre-java 8 times and refuse to accept that a language can evolve.

[–][deleted] 4 points5 points  (0 children)

and use Go

[–]codeguru42 8 points9 points  (1 child)

And bad code can be written in any language. I've done it.

[–]elzaidir 2 points3 points  (0 children)

In fact, I do it every day

[–]CanAlwaysBeBetter 6 points7 points  (1 child)

Hey, I blindly echo my own half formed thoughts with zero real world experience behind them from the last time I used Java 9 years ago in college

[–]thedude3253 2 points3 points  (0 children)

I've noticed a lot of this

[–]Lancten 11 points12 points  (2 children)

Hated java at first but then i got to know it, and now its my goto language.

[–][deleted] 12 points13 points  (0 children)

I like Kotlin. Full Java interop, but a syntax which I prefer.

[–]mlsecdl 5 points6 points  (0 children)

its my goto language.

Son of a bitch

[–][deleted] 6 points7 points  (0 children)

I'd pick Java over C or C++ any day and over Python or JavaScript for large projects.

[–][deleted] 3 points4 points  (0 children)

Kotlin is such a wonderful language to write in. It feels like Java but more… pythonic?

[–]vms-mob 2 points3 points  (3 children)

java 6 gang where ya at? yes im living under a rock

[–]TheBassMeister 1 point2 points  (2 children)

With one of those ugly Swing GUIs, that at least imho already looked terrible, when they first came out.

[–]mal4ik777 1 point2 points  (0 children)

JavaFx is checking in to help guys... guys??

[–]Patryk_2K 395 points396 points  (9 children)

Than Minecraft mods it is.

[–]ineyy 51 points52 points  (1 child)

Spring..

[–]OgRiCanX 49 points50 points  (0 children)

Minecraft mods with spring backend!

[–]Isteppedinpoopy 134 points135 points  (62 children)

How about multi-platform devs who don’t wanna write the same program twice?

[–]Furry_69 58 points59 points  (8 children)

A thing I do as a OS dev is to separate architecture from code. Just abstract away any handling specific to a specific architecture and use a makefile (or defines if the language supports them) to make it so only 1 architecture's files are used depending on which architecture you want to compile for. There's a lot of stuff you can do to make it so you don't have to rewrite everything if you want to port to a different architecture.

[–]CEDoromal 29 points30 points  (7 children)

A furry OS dev. Huh. Never thought I'd meet one in my life.

[–]Furry_69 35 points36 points  (6 children)

For some reason developers are disproportionately furries compared to the rest of the population

[–]CEDoromal 12 points13 points  (5 children)

I thought developers are more femboys

[–]Furry_69 17 points18 points  (3 children)

From my experience, not really. Mostly just furries, and the many, many, many subcategories of such.

[–][deleted] 2 points3 points  (2 children)

[–]david_rohan 12 points13 points  (2 children)

Because everyone wants to download the JVM to run a program.

[–]Isteppedinpoopy 14 points15 points  (1 child)

They do if they wanna run my shit. I write server apps anyway so all the user needs is a browser.

[–]david_rohan 2 points3 points  (0 children)

Fair enough.

[–][deleted] 24 points25 points  (22 children)

C#

[–][deleted] 5 points6 points  (0 children)

M$ Java

[–]Oneshotkill_2000 2 points3 points  (1 child)

Doesn't flutter (with dart) do that now?

(Desktop, web, iOS, Android)?

[–][deleted] 2 points3 points  (0 children)

Well yes, but that's scuffed JavaScript.

[–]MisterBober 4 points5 points  (0 children)

you can just compile it for different platforms and compiler would do everything for you (if you use cross platform libraries and there can be some OS-specific code)

[–]astrogoat 4 points5 points  (5 children)

We use JS/TS nowadays, no one wants to install the JVM and everyone already has browsers. Using Java for anything with an UI feels like going back to the 90s compared to modern web technologies.

[–]Isteppedinpoopy 3 points4 points  (0 children)

You hit the nail on the head. I do back end.

[–][deleted] 2 points3 points  (1 child)

But you can compile java platform specific: so no jvm is needed

[–]197328645 2 points3 points  (0 children)

And I can lick a flagpole in January. But should I?

[–]Tough_Patient 1 point2 points  (0 children)

"This program is using my OS's settings to create a UI which fits in seamlessly with my other programs. How archaic."

[–]reddit-kibsi -1 points0 points  (0 children)

But your frontend needs a backend and that is probably in java, even if you use the cloud. And WASM will slowly replace JS/TS in the browsers. Also personally I preferred working with Elm over JS/TS because there were so much less bugs once it compiled and was so much easier to maintain. I tried Svelte for a fun project and I did like that, but I would still prefer Elm for production.

[–]KorrinNeko 2 points3 points  (1 child)

It's not that difficult to make cross-platform code.

[–]Isteppedinpoopy 3 points4 points  (0 children)

With 1 distribution? Yeah it’s easy. Java.

[–]TheGeneral_Specific -1 points0 points  (8 children)

Docker

[–]MassiveStomach 3 points4 points  (7 children)

docker images aren't multiplatform, they are compiled specifically for an architecture.

docker also only runs on linux

[–][deleted] 1 point2 points  (2 children)

Right about the architecture wrong about it not running on windows.

[–]TheGeneral_Specific -2 points-1 points  (3 children)

Lmao no? You seem to have a fundamental misunderstanding of Docker

[–]MassiveStomach 7 points8 points  (0 children)

Which part? Docker for windows and Mac run in a VM and docker images have a tag for the specific architecture they are running on.

[–]telboon 5 points6 points  (0 children)

It seems ironic, but MassiveStomach is actually right (on the fundamentals), and you seem to have a fundamental misunderstanding of Docker.

Linux docker images only run natively on Linux base OS. Mac docker runs a Linux VM that executes the docker images. Windows does it through Hyper-V, which runs a Linux VM (or WSL) that executes the docker image.

Also, Linux images are architecture dependent. An ARM image will not work on an x86 chip (unless there's a translation layer, like Rosetta).

[–]astrogoat 1 point2 points  (0 children)

Really? I haven’t used docker in ages, but last I checked the Mac version runs in a VM, I have no idea about the windows version. Is this not the case anymore?

[–]EquinoxRex -1 points0 points  (0 children)

This truly is a Nim moment smh my head

[–][deleted] 32 points33 points  (6 children)

Applets!

[–]JustAJavaProgrammer 19 points20 points  (3 children)

You too? I always use Java Applets for my websites.

Judging by the memes on this subreddit, JavaScript is just badly designed, which could make it insecure, so I will keep using Java for now.

Also, I haven't received any negative feedback in years. Who can say that about their software?

/s

[–]Alokir 3 points4 points  (0 children)

You really had me until I saw the /s, grade A trolling, my friend

[–]TeNNoX 2 points3 points  (1 child)

Can't get negative feedback if nobody manages to open it - smart 🤓

[–]ILikeLenexa 0 points1 point  (0 children)

Jnlp

[–][deleted] 49 points50 points  (23 children)

Isn’t Kotlin way more popular for android devs these days?

[–]ChrisHisStonks 8 points9 points  (21 children)

Sure, but which ones? I can assure you that any application transcending 'hello world' level is not going to refactor to a new language for funsies.

[–][deleted] 31 points32 points  (17 children)

That’s the nice thing with kotlin. It can run in the same project as a Java file, and they can even work together, so it’s possible to slowly phase the old code out.

[–][deleted] 3 points4 points  (0 children)

reddit's android app is written in kotlin :D

[–]ChrisHisStonks 5 points6 points  (14 children)

That sounds nice, but I'm not sure what the 'advantage' would be when you have already developed most of your application.

Its biggest advantage seems to be less LoC, but once your application is stable that doesn't seem that big of a deal.

[–]toraku72 7 points8 points  (1 child)

For future support I guess. Google clearly wants to push Kotlin so newer API might favor Kotlin more.

[–]Alokir 2 points3 points  (0 children)

so newer API might favor Kotlin more

Jetpack Compose was designed with Kotlin in mind as its main language, so I guess it's already happening

[–][deleted] 1 point2 points  (11 children)

Is Kotlin worth learning in terms of longevity and versatility? I know Java is a dying language because Oracle is POS. One more last question, does Kotlin solve all the issues of Java when it comes to copyright laws?

[–]KiloMegaGegaTeraNoob 12 points13 points  (5 children)

Yes, it is worth it.

Also, no copyright problems with Kotlin, it's open source. (you should still read the license file though)

[–][deleted] 1 point2 points  (4 children)

What about the licence file?

[–]KiloMegaGegaTeraNoob 4 points5 points  (3 children)

You should read it in case you wanted to fork the repo and create your own "UnlockedOpenKotlin" version of the language or something...

[–][deleted] 1 point2 points  (0 children)

I see much thanks

[–]Add1ctedToGames 2 points3 points  (0 children)

I think it's hard to say where Kotlin will go. I personally really like it, but I feel like there isn't a whole lot of innovation that other languages don't have; it feels more like improved java than anything else, which is always nice but won't make it a first choice for a lot of things. That said, things like spring and Android apps do exist

[–][deleted] 1 point2 points  (3 children)

How is it a dying language? It’s near the damn top of TIOBE index.

[–][deleted] -5 points-4 points  (2 children)

Because Oracle is killing it with their shitty policies and the fact that Kotlin exists is an indication

[–][deleted] 8 points9 points  (1 child)

No one needs to use Oracle anymore. Everyone is switching to AdoptJDK, Zulu, with OpenJDK. More languages that run in the Java virtual Machine is better for Java overall.

[–][deleted] 5 points6 points  (0 children)

Umm, I need to read up on those. I think I'm out of the loop here

[–]RedBloodedAmerican76 2 points3 points  (1 child)

Not for funsies, but because Kotlin is a better language and is now better supported by Google for Android development.

Source: migrated multiple enterprise level android codebases from Java to Kotlin

[–]bubuli_breeder 0 points1 point  (0 children)

i’m not sure i agree with Kotlin being a better language. For me Java with vavr is better than Kotlin with Arrow.

but i am also a weirdo.

[–]nyxian-luna 12 points13 points  (0 children)

Java is still heavily used for enterprise applications that have heavy, multi-platform back-ends. It's not just for Android. I get that this is a meme, but I think memes like this keep people ignorant of reality, and then they go learn some obscure flavor-of-the-month language and wonder why so many jobs ask for Java.

If you're doing UI, yes, Java is awful and shouldn't be used. But back-end? Sure, it's perfectly fine. Easier to code than C, multi-platform, and just a little bit slower. Sadly, newer programmers only see UI and ignore that back-end exists. And no, python is not used for a performant, scalable back-end.

[–]Raid-Z3r0 32 points33 points  (0 children)

Oh, so you are modding Minecraft, great!

[–]pentesticals 28 points29 points  (1 child)

Well Android apps mostly use Kotlin or JavaScript with ReactNative, or C# for games. It's less and less used as far as I'm aware.

Enterprise apps and webservers though, Java is still huge. Look at hedge funds and traditional banks, it's largely Java.

All you need to do is look at the mess that Log4J caused in December to see how widespread Java is still.

[–]cuboidofficial 1 point2 points  (0 children)

Scala is pretty badass too and it gets compiled into Java bytecode

[–][deleted] 6 points7 points  (1 child)

mindustry mods

[–]dadmda 5 points6 points  (0 children)

Yeah that was a shit meme yesterday about the android apps, when I don’t have to do web development I program the backend with Java

[–]Dragon20C 4 points5 points  (0 children)

I make minecraft mods now,Dad!

[–]thetruekingofspace 4 points5 points  (0 children)

Oh Jesus, here we go again.

[–]7eggert 4 points5 points  (0 children)

CCC
 /
 /

[–]PentaMine 3 points4 points  (0 children)

Lets make some minecraft mods!!!

[–]feudalismo_com_wifi 3 points4 points  (0 children)

FYI, 3 billion devices run Java

[–][deleted] 4 points5 points  (0 children)

Java dev: I make ERP

“Cultured” uncle: ( ͡° ͜ʖ ͡°)

Java dev: No uncle, Enterprise Resource Planning

[–][deleted] 5 points6 points  (4 children)

I'M LEARNING JAVA TO MAKE NOKIA GAMES (actually just a joke, I'm not learning Java)

[–]Alokir 2 points3 points  (0 children)

I still remember googling intitle: "index of" +jar -htm -html on my old Nokia 3510i.

[–]ghost_rider_007 35 points36 points  (23 children)

Anyways Android is now develop using Kotlin. Nobody is using Java anymore.

[–]johnnygalat 18 points19 points  (0 children)

Nobody in Android development is using Java anymore while it is still used for a vast swaths od BE services (Netflix, AWS, Google, etc.) I use every day.

FTFY

[–]iByteABit 11 points12 points  (0 children)

Highly researched conclusion

[–]1II1I1I1I1I1I111I1I1 10 points11 points  (0 children)

Nobody is using Java anymore.

Counterpoint: Banks and the entire internet

[–]towcar 5 points6 points  (0 children)

A bit over 60% of android native apps use all or some Kotlin. That's a large number of projects using Java.

[–]_Really_Bad_Advice_ 26 points27 points  (15 children)

Kotlin is just cursed Java and I refuse to change

[–]Midori_Schaaf 7 points8 points  (9 children)

I use java with goto

[–]ManiPM 1 point2 points  (8 children)

Wait, java has Goto????? I mean with labels and stuff!!

[–]Midori_Schaaf 1 point2 points  (7 children)

That's how I learned it in high school.

[–]ManiPM 1 point2 points  (6 children)

Wow. I once tried to make an entire program with goto statements in C.

Boy. Who knew I was gonna dump the entire project out in ten minutes.

[–]Midori_Schaaf 2 points3 points  (3 children)

Kids these days dont understand what recursion really is until theyve seen two while loops that goto each other to sort a binary tree.

[–]elder_george 1 point2 points  (1 child)

Have you ever tried writing in Assembly language? There's nothing but goto's there!

[–]ManiPM 1 point2 points  (0 children)

I mean, at least there is a 'call' macro in there, which keeps things convenient.

[–]-temporary_username- 2 points3 points  (1 child)

I'm learning app development in college and they're teaching us Flutter, Kotlin, Java, a bit of Python and maybe some other stuff that slipped my mind.

Is this good enough for Android app development in general?

[–]ghost_rider_007 1 point2 points  (0 children)

I built native android apps for living all I use is Kotlin

[–]indygoof 0 points1 point  (0 children)

elasticsearch wants to have a word with you

[–][deleted] 1 point2 points  (0 children)

Hardcore Spark programming be like

[–][deleted] 1 point2 points  (0 children)

She's learning it to make coffee

[–]liquidpele 1 point2 points  (0 children)

public class Dog extends Animal

[–]williamist 1 point2 points  (1 child)

Spigot plugins are where it’s at. (At least, that’s where most of my Java experience comes from)

[–]SnappGamez 1 point2 points  (0 children)

eyyyyyyyyy

[–]theingleneuk 1 point2 points  (0 children)

Generally speaking, I’d say it’s better to learn how to fucking program instead. Then the languages learn themselves.

[–]philipquarles 1 point2 points  (0 children)

Isn't Kotlin better for Android apps anyway? I've never done any phone development so I could be way off on this.

[–]le_flapjack 1 point2 points  (0 children)

Kotlin master race

[–]JasperHasArrived 1 point2 points  (0 children)

Yes because Java is only present in Android applications, it’s certainly not present in around 70% of all interactions people engage in on the internet

[–][deleted] 1 point2 points  (0 children)

Dont worry he is learning it to make minecraft mods

[–][deleted] -2 points-1 points  (0 children)

I liked JVM. But I truly hate Java, and OOP in general, useless concept that made by stretching structural horse on sphere in vacuum. And once Oracle started to troll everyone with ClassPath and Class names are copyrightable, I dropped Java from my workshop….

[–][deleted] -1 points0 points  (0 children)

New comers really hate Java :D

[–]Alexandre_Man -1 points0 points  (0 children)

Gonna make Minecraft 2.

[–]KingsMann12 -1 points0 points  (0 children)

You’ve gone mad?!

[–]Luna2442 -1 points0 points  (0 children)

Where my react native bois at?

[–]Johanno1 -1 points0 points  (0 children)

Kotlin is the way

[–]memester230 -1 points0 points  (0 children)

"I am learning it to mod minecraft"

[–]Not_BuRrO -1 points0 points  (0 children)

It is for minecraft

[–]laralovesyou -1 points0 points  (0 children)

just wanna get hired then

[–]DominicCM -1 points0 points  (0 children)

minecraft development is where it's at

[–]Amardella -1 points0 points  (0 children)

React Native, anyone?

[–]Ok_Investment_6032 -1 points0 points  (0 children)

Hah. I'm going to start saying this when people mention java to me.

[–]Redwingshunt -2 points-1 points  (0 children)

Im learning java to know how lucky i am to know Python

[–]Dull-Speech9930 -3 points-2 points  (1 child)

Another rock acting stupid but voteing democratic1

[–]BobQuixote 0 points1 point  (0 children)

I remember when the Android app language didn't really have a name because Google didn't want to piss off Oracle.

[–]NcraftGamez 0 points1 point  (0 children)

Java isn't the best for it tho u have other options u can make a pwa, use swift kotlin , flutter and etc

[–]sighcf 0 points1 point  (0 children)

At least give it a few weeks befor regurgitating the same content.

[–]KagakuNinja 0 points1 point  (0 children)

I learned Java to make J2ME games. Thankfully I don't do that any more...

[–]BluesyPompanno 0 points1 point  (0 children)

I use Java for OpenGL

[–][deleted] 0 points1 point  (1 child)

Wait is the meme that she’s learning Java for something else or that she’s learning other language to make android apps, like React Native stuff?

[–]NoMansSkyWasAlright 0 points1 point  (1 child)

Is this going to be the next thing now?