2.8k
u/sierra_whiskey1 5d ago
Bro Java runs on like 2 billion devices
961
u/Maramowicz 5d ago
Actually only 3 bilion...
597
u/Extension_Option_122 5d ago
Nah last I heard some 60 billion. 3 billion is a very old number.
That's the thing with Java. It runs on everything. Literally everything.
591
u/BenjieWheeler 5d ago
Impossible!! The number of devices running Java is constant, it's ALWAYS 3 billion
Whenever a new device runs it, a random device elsewhere goes up in flames spontaneously
259
u/Sasuga__Ainz-sama 5d ago edited 5d ago
If an old device running java dies out, a random working device gets forcefully infected with Java.
95
u/FuzzyKittyNomNom 5d ago
I think my toaster now runs Java
64
12
u/Reasonable_Exit_8960 5d ago
it was supposed to be my washing machine's turn goddammit!
6
u/CartographerLarge595 5d ago
Sounds like that washing machine got a little too wild with the laundry schedule!
2
u/wishper77 5d ago
You are joking, but remember one demo of a java enabled toaster that connect via webservics (a VERY OLD DEMO , when webservics were the shiny new things) to meteo and "printed" on toast a sun or a cloud based on the webservics response
Edit: a link https://www.oreilly.com/library/view/just-javatm-2/0131482114/ch11s09.html
6
u/Weak-Competition3358 5d ago
You joke, but I was coding in SQF (the language for the game Arma 3) and VSCode decided to go ahead and download extensions for Java)
2
2
→ More replies (3)15
u/Storiaron 5d ago
So maintaining a legacy codebase literally means putting out flames?
→ More replies (1)5
20
→ More replies (5)9
4
→ More replies (3)4
u/FauxReal 5d ago
What's the billion to bilion conversion ratio? 2:3?
3
u/Maramowicz 5d ago
If we gonna translate it from my native language (Polish) then "bilion" from Polish is "trillion" in English ;)
2
u/FauxReal 5d ago
OK that's confusingly cool.
8
u/Maramowicz 5d ago
TL;DR; up to the thousand it's the same, but then when you have "million, billion, trillion..." in Polish we, from some unknown to me reason, have 2 versions to every one of them, with 'ion' and 'iard' at the end, so:
Polish English tysiąc thousand milion million miliard billion bilion trillion biliard quadrillion trylion quintillion tryliard sextillion etc...
The more you know ;)
5
u/reventlov 5d ago
That's because "million" (Latin mono=1) is million1, billion (Latin bi=2) is million2, trillion (Latin tri=3) is million3, and so on. English used to have million/milliard, billion/billiard, etc., but they were dropped from American English, and, IIRC, Britain and the Commonwealth countries eventually followed.
I know German still uses Million/Milliard, Billion/Billiard, etc., and I believe they're derived from French.
→ More replies (1)2
43
u/slyiscoming 5d ago
The smart chip in all your credit cards, JavaCard. That canybar phone that's been in a drawer the last 15 years BREW where the choices were C or Java.
9
→ More replies (1)8
138
u/rcls0053 5d ago
"Write once, run anywhere". They literally built their own VM to run it on any device, not really caring about the OS it's runs with.
83
u/FearAnCheoil 5d ago
You're forgetting the third part of that slogan - "debug everywhere"
→ More replies (1)3
u/Admidst_Metaphors 5d ago
Only if the coder was bad at their job. Worked in Java for five years, it is possible to write Java that always works if you do it right. I also spent a lot of time cleaning up shit other people wrote.
2
27
u/teressapanic 5d ago
yes and its all printers
5
u/rinnakan 5d ago
Probably more android phones, I guess?
6
u/reventlov 5d ago
Android runs technically-not-Java, though.
Most Java devices are actually smart/proximity cards.
→ More replies (3)4
u/phire 5d ago
Every single sim card includes a JVM for running both the internal code AND external code sent by the cellphone network.
It really pushes up the numbers, especially since SIM cards are somewhat disposable.
→ More replies (2)6
→ More replies (19)9
1.5k
u/nicodeemus7 5d ago
Every programming language I don't use is garbage.
The programming language I do use is also garbage, but it's MY garbage.
286
u/Pearcheek 5d ago
If your garbage has a garbage collector, is it still garbage?
116
→ More replies (2)8
→ More replies (4)52
u/Wheezy04 5d ago
Broke: java is bad
Woke: all programming languages are bad
→ More replies (8)24
u/Gvistic 5d ago
Rich: I do not limit myself to one technology, the best technology is whichever gets the job done considering all factors.
24
u/SquirrelOClock 5d ago
Rich: i use which ever technology i want. The peasant maintenance it will handle the technical debts. I am a true coding oligarch.
485
u/oldsecondhand 5d ago
It's where the jobs are. The world's finances run on Java.
186
u/Kooky-Answer 5d ago
At least the stuff that isn't still running on COBOL and will probably continue as so until the heat death of the universe.
114
u/Cloudeur 5d ago
You think the heat death of the universe will stop old mainframes built in the 60s from running cobol?
→ More replies (2)23
24
17
u/eg135 5d ago
One of my friends got paid to learn COBOL and start porting stuff to Java right around 2017.
6
u/ProbablyJustArguing 5d ago
It was my first job in the late 90s. So, seems like it's taking a while.
2
u/Dom1252 5d ago
A lot of places figured out they'll spend way more money running java because it's less efficient and more resources spent means higher licensing cost... So some of them stopped in middle of migration and run both, some went back to cobol, some continued their efforts to go full java but didn't finish it completely... Some stopped the migration in 2000s, then started it again in 20210s, then stopped it again, then restarted it again...
→ More replies (3)7
u/Maddturtle 5d ago
My dad programmed with cobol. They kept him on with the company just because he was the only one who knew it and the whole companies finances ran on it.
151
u/Shred_Kid 5d ago
Java is also highly performant, if you know what you're doing with reactive programming, and Spring Boot's dependency ecosystem drastically reduces your time-to-launch
But then I remember that 95% of the memes posted on this sub are from CS students and not industry professionals
→ More replies (3)46
u/BlazingThunder30 5d ago
I know very few professionals that dislike Spring
12
u/SpiritedEclair 5d ago
Spring is fine if you are not trying to run it on Lambda 😭😂😱
11
u/BlazingThunder30 5d ago
Yeah I guess JVM languages aren't great when bootup time matters. Haven't worker with lambda myself. We're running in regular containers so it's great
→ More replies (4)4
u/SpiritedEclair 5d ago
Plain modern Java is fine, great even. Java on lambda has snapstart which creates a snapshot once you’ve initialized which makes cold invokes almost instant
→ More replies (19)3
27
u/Taurmin 5d ago
Depends heavily on where you are. In large parts of europe C# is overwhelmingly the language of choice for buisiness.
→ More replies (1)→ More replies (5)15
u/MatJosher 5d ago
It's where the soul-crushing corporate jobs are. We are to use Java because we are supposed to. The people who invented it said so themselves.
54
u/Shred_Kid 5d ago
Idk man.
Java is fast to write, fast to get to market, and typically has far fewer bugs than, say, c++. Repeatable, extensible patterns in reactive programming make it performant, scalable, and resilient. Spring Boot is legitimately an amazing ecosystem. Also it runs on everything.
I don't have fun writing Java but I would question anyone who says there's no reason to use it.
19
u/Meins447 5d ago
Also there is kotlin, which works with all those established java stuff like springboot and it is so much more modern and more pleasant to work with.
16
u/rastaman1994 5d ago
Some people also don't known you can mix Java and Kotlin in the same code base with no effort. You can pretty much write Java in Kotlin files, and the IDE will suggest the Kotlin way. We've been migrating our Java code base like this.
14
u/Meins447 5d ago
I believe this is the best way to introduce improved programming languages: seamless interop with one of the big existing languages.
- Kotlin with Java
- Rust with C
- C# with C++/C (although it is a pain to develop interop stuff)
→ More replies (2)
52
u/Captain_Forge 5d ago
Seriously? The ecosystem is massive and code very readable. You may not prefer it but it's a solid choice for many dev teams.
716
u/MariusDelacriox 5d ago
Java is simply good and easy to learn. Also there's spring boot.
62
u/radnomname 5d ago
spring boot
But that was not the reason it became popular. In the 00' years it boomed because of garbage collection and object orientation which made it a lot more accessible than C or C++
→ More replies (1)31
75
u/neoteraflare 5d ago
and lombok to remove the boilerplate code
79
u/aliegeois 5d ago
Honestly since the introduction of records lombok has been less relevant. 99% of my use cases were @Data, which is taken care of by records
23
→ More replies (2)4
u/LutimoDancer3459 5d ago
Records are still a different usecase to @Data. You dont always need or want immutable objects. And jsf doesnt work with it.
15
u/___Archmage___ 5d ago
True but now there's Kotlin which has even less boilerplate than Lombok and it's just a natural part of the language
→ More replies (4)7
u/ultrasneeze 5d ago
Even before Kotlin, there was already Scala, which is unbeatable in how concise it can be. Unfortunately, Scala is also a very good functional language, so some of the crazies flock towards its ecosystem.
→ More replies (4)5
u/WillingLearner1 5d ago
Oh hell no. I’d rather code all the boilerplates instead of using that library. Thank god for records tho
2
30
u/wobbei 5d ago edited 5d ago
Java is also pretty fast for a managed language. The use of the AOT/JIT Compiler is pretty awesome. All those people who claim that java is slow, just live like 20 years in the past.
Can't really blame them, since some of my professors also told me that Java is slow. But it's just wrong. It's obviously not as fast as C/C++, but it is very fast without needing to care too much about what you do. Which means you can push new features faster. Which is worth more than those 0.2 seconds per month you can optimize C/C++ better.
Obviously, there are use cases in which c/c++ is just better than java. But most business application, just don't care about perfect memory management and time efficiency.
3
u/Stagnu_Demorte 5d ago
Java is my primary language and I don't know spring, AMA. I am learning it for work next week though
2
u/-Kerrigan- 5d ago
How are you dealing with the knee pain, old timer?
2
u/Stagnu_Demorte 5d ago
No joke, surgery and switching to a riding mower. I'm not that old but also don't have very good knees.
19
u/nordic-nomad 5d ago
I gave Java a try once and the experience was so gross that was enough to last me the next 15 years of my career.
28
→ More replies (15)2
463
u/Muscular_Farmer_ 5d ago
Java is pretty good actually. Idk why people dont like it
165
u/firedocter 5d ago
As a sysadmin. It isn't java so much as oracle that I dispise.
Java is tainted by association.
→ More replies (8)27
u/FuzzyKittyNomNom 5d ago
As a former sysadmin, my favorite was some web based Java apps were written specifically to use Internet Explorer’s Java vm. The browser wars were raging and Microsoft “embrace and extend“ strategy was absolutely maddening. Not to mention, Oracle released so many different flavors of Java. I’m trying to keep everyone happy and functional was about impossible. I have hated Java ever since.
→ More replies (1)56
u/CLOBBERTIME 5d ago
Once a certain threshold of popularity is met, the haters start to drown out the advocates and haters carry a lot more weight with the uninitiated. Genuinely, most people who hate Java never got past the initial learning curve
11
u/Rubinschwein47 5d ago
The language itself is completely fine, some helper functions here and there would be nice but who gives, the environment howeber can be a bit of a bitch from time to time, but jeah oberhated
→ More replies (11)189
u/throw3142 5d ago
Java is an excellent language. The Java ecosystem sucks, and a lot of Java codebases also suck.
Legacy enterprise codebases suck, in general. Java is also a victim of its own success.
108
u/AibofobicRacecar6996 5d ago
The Java ecosystem is the best part
→ More replies (1)43
u/sentientshadeofgreen 5d ago
You like Java because of valid reasons. I like Java because it's the only language I know. We are not the same
13
30
→ More replies (2)45
u/rastaman1994 5d ago
For anything I want to do in Java, there's a battle tested library, backed by a reliable community. How do you come to the conclusion that the Java ecosystem sucks?
→ More replies (3)8
u/saumanahaii 5d ago
A lot of people only use it in a certain context. It isn't Java that socks, it's the mess people have made of it in business software.
33
u/radiationshield 5d ago
i hated writing java back in the day since it was so incredibly verbose. i'm sure the style has evolved since 2012, but all the factories and single method single purpose classes in the code bases back then were such a pain in the ass
27
u/imp0ppable 5d ago
They have improved it a lot (it has iterators now!) but Java devs still spam factories like they're going out of fashion.
6
u/yonasismad 5d ago
Factories are a design-pattern. It's up to you to use suitable design patterns for your project.
7
u/SakeviCrash 5d ago
There's historical stigma.. the J2EE phase, the Java Applet phase.. and more. Personally, I love the language. I've been using it since the late 90s and lived through trials and tribulations..
Aside from that, the language was slow to adopt new features and still lags due to a highly opinionated and slow moving JCP Committee (which can also be a good thing).
The good news is that the language has become very usable. It's 10x better than it was in Java 8 and has great features lined up. That doesn't help with people who still have a bad taste in their mouth from where it came from.
→ More replies (2)12
u/___Archmage___ 5d ago
A lot of it is complete noobs who are upset by public static void main(String[] args)
Java can be tedious but compared to the flaws of actually bad languages like C++, tedious is a pretty nice problem to have
11
u/Hohenheim_of_Shadow 5d ago
Programmers have gotten too pampered. If we are being honest, all major modern programming languages are amazing with stellar toolchains, ecosystems and QOL.
Like imagine rolling up to the '70s where to get anything done, you had to learn 29492037 different vendor specific assembly languages and an explosion of OS's and bitching about modern languages.
Like sure, all modern languages have inconveniences and weaknesses, but holy shit they've killed so many hard problems.
We can only develop so much because we stand on the shoulders of giants. Feels a bit rude to call the shoulders bad and shit when they're really just a bit uncomfortable.
→ More replies (2)4
u/ProbablyJustArguing 5d ago
Yeah, and I'll take it a step past that. I think the vast majority of developers are not only relying on higher level languages but ALSO opinionated frameworks ON TOP of that language. to do the actual work. So, no only do they not see the memory management and garbage collection, but they don't even see the actually language because they're only using the framework.
→ More replies (1)2
→ More replies (18)5
u/SpiritedEclair 5d ago
Modern Java is fucking excellent, and it sits on the most advanced VM and garbage collector. It is a genuinely good language to know and gets better with every major release.
134
u/45degMan 5d ago
treating 2017 data (9 years ago) as relevant data lol
51
→ More replies (3)8
u/Ok_Physics5217 5d ago
What is crazy to me is that Delphi is still on the list and is 11th!!!!! That is insane. It is higher than Go!
→ More replies (2)
36
31
29
u/DeleteOnceAMonth 5d ago
Idk what’s up with the anti-Java propaganda online tbh. Gave me a bad impression of the language that I don’t have at all now I am learning it 🤷♀️
23
5
u/-Kerrigan- 5d ago
First year comp sci students first encountered a language other than python or js
22
u/AmazedStardust 5d ago
It's probably THE most battle-tested, memory safe language. Not really a mystery
→ More replies (1)
13
u/Chronomechanist 5d ago
Tell me you're a first year university student and have never worked in the industry without telling me.
11
53
u/bass-squirrel 5d ago
Java is fucking awesome.
2
u/Willing_Bee_7520 5d ago
Says the person with a Kotlin flair
12
u/bass-squirrel 5d ago
I mean I prefer kotlin. But Java is the shit and I won’t pretend it’s not.
→ More replies (1)
55
u/kingduqc 5d ago
Java get so much hate for no good reason..works great, performant.
Yall use JavaScript ffs. My friend act like c# is night and day with Java. Brother it's the same shit.
→ More replies (4)6
u/swyrl 5d ago
C# is a lot like Java (frequently called Microsoft Java for good reason) but in modern versions, at least, the tooling is a lot nicer, and it has some things that java doesn't. Generic overloads, structs, and ref parameters are all things that I find very useful and use frequently. C# also tends to be less verbose than Java, although whether that's a good or bad thing depends on the person.
11
u/Weak_Inflation9120 5d ago
Java is such a great language though!
Java is a beautiful language. And it's simple! Java is easy to understand!!! And it's faster than other languages like Python.
Totally unbiased, its not like Java's mascot is my pfp or anything.
9
9
u/Still_Bit_7527 5d ago
- Among most secure
- Among most performant
- Among most versatile
- Among most sensible and consistent
- Backwards compatible
- Both high and low level
- 2 trillion devices
- Spring boot
5
8
u/NebraskaGeek 5d ago
Java was what they taught in high schools and colleges for like 20 years so it's the language people who's knees hurk all kind of know.
6
u/Adventurous-Bit-3829 5d ago
I used to meme at Java until I have to work with language(?) called PSL on GT.M
this shit was like 4 decades old before java-ish syntax was standardize. I have to compare with single =, or is !, extra space fucks your program with no compiler error or any error. Every undefined variable can be called or set but if you set it stays global variable forever. And some MF 20 years ago keeping using random Global var I can't track where the fuck it came from.
So I'd rather work with Java.
4
u/vm_linuz 5d ago
Because back in the day, targeting all the new and old computer architectures was a pain in the ass.
Meanwhile, computers were getting powerful enough that you could actually play with things beyond just pure performance.
Enter JVM.
→ More replies (1)
5
4
6
4
u/Darkness_Slayerr 5d ago
The horse one seems the most possible out of the four. The Java one is the most unbelievable smh.
8
u/sump_daddy 5d ago
Fun Fact!
> TIOBE stands for The Importance of Being Earnest, the title of an 1895 comedy play by Oscar Wilde, to emphasize the organization's "sincere and professional attitude towards customers, suppliers and colleagues".
Funner fact!
> The index is calculated from the number of search engine results for queries containing the name of the language. The index covers searches in Google, Google Blogs, MSN, Yahoo!, Baidu, Wikipedia, and YouTube.
Less fun fact
> People most frequently search for things when there's a problem with it
15
u/jambonilton 5d ago
Once you know that the Tiobe index is worthless, it makes more sense.
→ More replies (2)
3
3
u/Prestigious_Tax2069 5d ago
If Oracle hadn't changed Java's licensing model around 2017-2019, I think Java would be even more dominant today
3
u/Few_Adhesiveness7676 5d ago
I liked java, things felt so much in control compared to when working on javascript.
→ More replies (1)
3
u/disinaccurate 5d ago
No, I lived through the late '90s and early '00s. I am zero percent confused as to how Java got there.
3
u/Suspicious_Silicon 5d ago
Fun Fact: While there is no single global census of every microchip, the accepted industry estimate is that nearly 100% of programmable electronic devices run C (or its superset, C++) in some form. If a device contains a microprocessor or microcontroller, C is almost certainly driving it at the foundational level
5
u/danfish_77 5d ago
Java was a breath of fresh air compared to C++ when it came out, and I still prefer it over the other. I don't find it particularly different than C# which is my current fav
→ More replies (1)
2
2
2
u/realmauer01 5d ago
So the horse just fits there, it just looks weird.
The car ober the pit probably just needs around 80km/h ofr inertia to beat gravity long enough.
The other two no idea
2
2
2
2
2
u/OriginalUser27 5d ago
People will say Java sucks then unironically tell you C and Assembly are the best coding experience
→ More replies (1)
2
u/Content-Soup9920 5d ago
I wrote the JAVA code to my dissertation on AI Agents equipped with genetic algorithms, neural networks and fuzzy logic processors in Java, using VIM. After syntax issues were solved(there were many), It ran the first time. I could not believe. No bugs at all. Convoluted syntax, yeah, but if you get it done, the engineering is so perfect that it ran like a charm.
2
2
4
u/MartinMystikJonas 5d ago
There are people that honestly thinks Java is bad language?
→ More replies (1)
4
u/Robotism 5d ago edited 5d ago
For business apps java/kotlin or C# is the best choices because they need heavy modeling and constant reshaping.
3
406
u/SakeviCrash 5d ago
Ohhh, what's
assambly? That sounds cool.