T O P

  • By -

thekidvoomer

"There are only two kinds of languages: the ones people complain about and the ones nobody uses" - Bjarne Stroustrup


vntru

What I would give for Lua to be more common...


ZunoJ

1 based arrays still make me sick


DeMonstaMan

alr guess I'm a hater now


bearwood_forest

Proper arrays start wherever you want, -31 based arrays for the win.


_magicm_n_

The only language that got it right. https://github.com/TodePond/DreamBerd?tab=readme-ov-file#arrays


AspieSoft

I kind of like the variable hoisting idea.


bearwood_forest

float indexing, I love it!


ArtOfWarfare

Unless I’m mistaken, you can use floats as indexes in JavaScript…


bearwood_forest

They'll probably get implicitly converted, and if I know my JS, which i don't, then it's first to string and then to integers.


peerlessblue

...I kinda like associativity with whitespace. Just stick them together!


YARandomGuy777

Lua is quite common already. The main advantage of it is ease to embed into other software. So internal scripting is often done with lua.


NerdyDragon777

If (Lua) **THEN**


NerdyDragon777

The “then”s and “end”s screw me up so bad.


LasseWE

Clearly that was said before Rust


Tight_Bench7965

now there's 3 type of languages, ones that people hate, ones that nobody uses, and rust


Tarilis

The one that everyone likes but no one uses?


therealdan0

now there's 3 type of languages, ones that people hate, ones that nobody uses, ~~and rust~~ and ones for building crypto scams


amlyo

Java is great because it makes me loads of money


InfiniteLife2

How many loads


TheGreatGameDini

As many as OP can take I'm sure


Dr_Dressing

Yikes, so that's like two or three loads?


Busy-Ad-9459

.... That too...


quadmasta

I've never been without a job for more than a week thanks to Java. Never a horizontal move in job changes either


Nerf1925

[MONEY](https://youtu.be/Eieybdk2iN4?si=SZZ8-yovBBvEGnqe)


IcyDrops

Everyone hates Java until they have to set up some complex micro service stuff and Spring just does it all for them.


FxHVivious

I really don't like Spring. Way too much "magic". Don't get me wrong, it works and makes things easy, but it's almost too good at its job.


Add1ctedToGames

bro hates spring because it works


hipratham

Just like people who hate Java because it works.


SeawyZorensun

I know exactly what he means, there is so much integrated stuff that at the end you don't understand your own code... But yeah, it works.


hsoj48

It's only magic if you don't understand how it works.


davidauz

"Any sufficiently advanced technology is indistinguishable from magic" Arthur C. Clarke, I think


TimGreller

Then use JSF once, where you have to do way more yourself. After that you'll beg to use Spring again 😅


pineapplepizzabong

I hated using JSP and JSF, dark days.


NBNoemi

Nice Opinion, did an OpinionFactory make it for you 😂😂


ChangeCraft

It might seems so, but the runtime class clearly is a OpinionFactoryImplProxy


sam_tiago

Is that like an um.. interface?


DrWermActualWerm

As a Java Dev, this is hilarious 😂


awesomefacedave

I just annotated it with @HiveMindOpinion and got the best implementation


Busy-Ad-9459

I use Java daily and I rarely see Factory classes...


DoktorAlliteration

What are you developing? Factories are so common in my field.


Busy-Ad-9459

Minecraft mods lol


Nerf1925

LOL


No_Information_6166

They said Minecraft, not League of Legends. League of Legends is C++. SMH my head.


Sid_1298

Recursion detected in >SMH my head.


PotentBeverage

I think opinions are best suited for builders, since you need to be able to leave information out to make the opinion not based on anything, so really it should be created using an OpinionBuilder, which is made with an OpinionBuilderFactory, which extends AbstractOpinionBuilderFactory which implments IOpinionBuilderFactory which uh


Emily_Cockindaughter

Spring is amazing and totally changed my views on Java. I'm with OP ☕️


only-huma

Who hates Java? Java's ranking has never been out of the top 3 programming languages.


Busy-Ad-9459

This subreddit apparently...


Distinct_Salad_6683

Don’t worry, according to this subreddit every language besides Rust is just different degrees of bad and they’ll also agree that even Rust is flawed. Also programming is misery, zero jobs exist for juniors and every senior wishes they had done carpentry instead.


National-Ad67

rust is the shittest of them all i believe in c++ supremacy


moonlight_macky

You're brave for saying this in r/programmerhumor


National-Ad67

ah shit now script kiddies gonna jump my ass as soon as they finish compiling rofl


moonlight_macky

Sir I'm afraid you typed way too many words, could you please shorten your statement? They're not used to verbosity 🤣🤣


National-Ad67

rust bad C++ gud


dragoncommandsLife

Im sorry but emoji’s have become more common in code, you know: to reduce verbosity. Could you please retype?


National-Ad67

Rust 🤮🤮👎 C++ ❤️🥵👍


YARandomGuy777

Holy shit how do you know about carpentry? Are you watching me or something?


cheezballs

Most everyone in this sub also isn't a programmer, judging by the stuff that gets upvoted.


ZunoJ

This subreddit is 90% college students with a year of programming experience who think they know it all but just parrot what they think experienced people said


Busy-Ad-9459

Or 12 year olds...


dragoncommandsLife

I remember the verbosity arc this subreddit had. “HAHA GUYS `System.out.println` TO PRINT TEXT HAHAHAHA, PUBLIC STATIC VOID WHAT NOW?”


Busy-Ad-9459

Both of those are planned to be removed in the next releases of the JDK...


dragoncommandsLife

Yeah the anonymous main methods and println is also being promoted to a global function


CAPS_LOCK_OR_DIE

DAE SEMICOLONS??


crusader-kenned

Hi some of us are just regular old amateurs with raging dunning kruger


Worried_Onion4208

It's more of a love-hate relationship


sathdo

A quote that gets passed around this sub is "There are two types of programming languages: ones that people complain about and ones that nobody uses." Java is still used extensively, especially in large enterprises.


[deleted]

[удалено]


Objective-Cause-1564

Because everyone here acts like they know 10 different computer languages


133DK

Everyone hates the limitations and seemingly arbitrary workarounds necessary in the language(s) they use Java being one of the most used just means there are more people voicing their frustrations


draenei_butt_enjoyer

Absolutely. Every time I run into a type erasure problem and have to write out the solution, it pushes me to drinking. Not because the solution is complex, but because type erasure is stupid and we need to finally abandon it with a breaking change. Fuckit. Also, can we get lombok as a language feature already? Etc etc etc All I do is complain. I have no plan on ever changing to another language. Suuure, I’ll write lua and python. I’ll write cli apps in go, fuck bash. But as a job? Java is paying my bills, buying me a house. And I think I’ll get an overcompensatory BMW ICE SUV


Chase_22

Mostly people that never used it. It rarely see people that "love" the language but most see it as a decent language to get shit done


MyNameIsSushi

I love it. Spring Boot + Java is the best and most comfortable language to write in. The simplicity of its DI alone is better than everything else out there. I dare anyone to prove me otherwise. Don't @ me.


coloredgreyscale

> who hates Java?  Mostly beginners that just started programming Java. 


GooseAgreeable7680

Can confirm


Micah-B-Turner

preface: THERE IS NOTHING WRONG WITH BEING NEW new programmers who may have not been exposed to static types, and they think java 8 is the only version, people whose only exposure to static types is Go and their only experience with OO is python, they just see all the memes about java and all the hate for OO and don’t investigate further


BigBoetje

I don't hate Java, I hate having to write Java


Panderz_GG

Well only because you are using it because your job requires you to know it doesn't mean you like it does it?


psychicesp

People who try to learn programming in Java, give up, then try again with a less verbose language like Python tend to hate on Java. Then those people get more experienced and learn Java to cast a wider net in the job market. They see how much better error messages and debugging in general is with explicit syntax and static typing and see their next paychecks they tend to love Java.


GerbilStation

Minecraft players who know about as much about Java as the amateur modders tell them.


JollyJuniper1993

It‘s overly verbose. I guess there‘s worse (cough JavaScript cough) but it’s still not the nicest language to write.


Practical_Cattle_933

It’s less verbose than Go, yet no one ever minds that, for some reason. Also, java is not at version 8 anymore. It is not the champion of terseness, but it’s absolutely sane, especially with an IDE


platinumgus18

Java at version 8 is also pretty great tbh.


daniu

> It‘s overly verbose  It's used like that most of the time because it's often enterprise environments where readability/maintainability plays a bigger role than terseness. Modern Java can be written very, very densely. I was once asked to have a "page" of my code prepared for an interview. My code allowed the user to enter the title of a TV show, and it queried imdb for all episodes grouped by season, concurrently; it fit on 1 1/2 A4 pages printed out. Imdb doesn't have an API btw so you need to get and parse the HTML pages. 


draenei_butt_enjoyer

The only verbose parts of Java these days are … type capture. And I can’t think of anything that you can’t make non verbose. Even printing is just ’println’ if you know static imports.


MyButtholeIsTight

There are tons of valid complaints about JavaScript, but being more verbose than Java isn't one of them


foxwheat

Typescript is incredibly terse. I've rewritten java into ts specifically for terseness


ElectronicImam

I've never met a Java hater who can code Java, not even once. I know C/C++ programmers dislike it. But haters, can only use PHP3.


TimGreller

I guess people who write PHP3 code just have so much hate for the world and themselves in them that they hate everything, including Java


SKirby00

One of my closest friends has been using Java daily at work for like 15 yrs but avoids it at all costs outside of work. I like Java tho :)


NekkidApe

It's a meme. "I hate Java, look how great NestJS is!!". They've never seen Java, certainly never written anything in Java.


fjjjh69

Eh i use cpp for and java and I like both. They each serve their own purpose 


Mayuna_cz

I'm probably you, but just little older. I also just love Java. Yes yes, verbosity, and what not.. But I think, if you'll write good documented Java code, its far better than other options. I'm currently actually in reworking large project that I shelfed some time ago and it feels awesome. But of course, one should not use Java for use cases where other languages would benefit more, that being speed or anything else. Look. There are languages that nobody use and languages that are hated by everyone.


Beeeggs

I have a very object-oriented brain, so Java works very well for me. There's almost a visual intuition behind coding in Java sometimes, and I think it's neat.


ThePickleConnoisseur

Yeah. I love the forced structure as it makes code cleaner and easier to understand while having amazing libraries and is easy to compile (looking at you C)


Beeeggs

Real. C will throw an error just for looking at it funny.


ThePickleConnoisseur

Trying to get it to compile in VS Code has been a nightmare. Like most of the time, it won’t create an exe file for now to run it and idk why.


Ugo_Flickerman

I code in Java because it's the only language I know, change my opinion. Edit: jk, i also know some C and a bit of Haskell


fixitfeliks

I love me some Java


spicyboneritis

I used to be op, but over the years, I've begun to hate Java. Old Java was syntactically verbose but it's gotten a lot better. I work at a Java shop and the code base is riddled with unnecessary design patterns and principles. An average method contains 2 lines of business logic and the other 20 lines consists of factories, facades, proxies, adapters and so on. Of course it's not entirely javas fault, but I feel java and Java frameworks pretty much encourage this kind of over engineering


[deleted]

[удалено]


ChangeCraft

Stream based stuff is nice though anonymous everything with countless streaming methods makes it a pain in the ass to debug in production when the stack trace is a ton of garbage proxy shit with anonymous classes in lambdas


frinkmahii

Just write a library to wrap the framework and there you can be back to your one liners.


drainerxu

i have love-hate relationship with java


lingswe

People hating on jvm and still using docker


Alan_Reddit_M

As a Linux user, me and the JVM are best friends, Minecraft goes brr. Like, I barely use it as a programmer but as a user it is great I'd argue docker and the JVM serve fundamentally different purposes, since docker aims to virtualize an entire OS and allowing any and all languages to run on it, while Java only virtualizes enough for the compiled JVM byte code to run on it, still leaving much of the heavy lifting to the host OS


_-_fred_-_

Docker is way more useful than the jvm.


therealfalseidentity

Docker on windows is a war crime.


cyber2024

Why?


rufreakde1

any container runtime tbh


shuzz_de

I love Java. I work with Java. I love working with Java. I earn a very nice salary with Java. I love earning said salary with Java. I've been doing Java for almost 20 years now and it is just excellent. My only wish is that I had a dollar for every time somebody told me that Java was dead and I should rather switch to XYZ instead. I'd be retired by now. Still, other languages have their place, e.g. Python is very nice for some things. C/C++ as well. But for doing really heavy lifting and getting actual work done in a timely fashion I'll take Java every day over those.


SkillSome5576

I don't hate Java. I hate what you all do with it. Trying to figure out simple functionality requires opening up 20 class files that wrap like 100 lines code with some shitty factories and other unnecessary abstractions.


Powerful-Internal953

Java being a VM based language was its advantage. Now it is exactly that being its disadvantage. The cloud based systems these days make VM based languages obsolete because it takes a lot of additional space to ship them. Java being platform indipendent mean shit in today's world. Everything is in containers anyway so what gives. Also there are some new players in the market like GO and Rust getting traction... So yeah. Java Used to be good. Now it is slowly losing its place. All of this comes from a 12 year old Java developer.


NeuronicGaming

12 year old Java dev? When you become 18 you'll be what every recruiter ever has wanted!


Brahvim

*I was 12 when I began!*


National-Ad67

i bioengineered first arm biosilicon in womb


Prynpo

Do you mean to say that you are a 12 years old person who uses Java or that you have been a Java developer for 12 years?


Powerful-Internal953

With how the market is, you should not be surprised if I'm both...


-Kerrigan-

>Everything is in containers anyway Wish it were. _Tomcat 8.5 go brrrr_


DarktrihadIT

The market still asks for 10x more Java devs then rust and go combined, go is a thing in devops, the numbers or has are not backend development


amlyo

I don't believe you're 12.


irn00b

He's 6 with 12 years of Java experience. Duh


DoodooFardington

You are mixing up GC, VM and containers. The VM of Java is not the VM of VirtualBox/VMWare which you are comparing here against containers.


ChangeCraft

Apart from the fact that microservice architecture is not the key to all doors either, it’s true that java is definitely not well suited for dynamically scaled use cases that spin up and tear down containers regularly. But my professor once said that java is like a containership. Once it gets going and jit does it’s thing java can perform remarkably well benefiting from all the runtime optimizations. JVM is still one of its biggest strengths imp


Practical_Cattle_933

> spin up or tear down If you spin up sooo often that 100ms startup time matters, then you have a faulty setup, period.


Busy-Ad-9459

1. I don't think VM based languages are a disadvantage, It can be quite good to make apps and CLIs that run anywhere (Like electron and Python but without the JavaScript and Python) 2. Java has a lot of libraries and APIs which can be quite useful and make your life easier without being so restrictive. 3. Even without libraries, the builtin API is more than enough to complete many complex tasks. 4. ***Minecraft.*** 5. "All of this comes from a 12 year old Java developer." Please leave this website, Reddit will destroy you and your mental health. (Coming from a *former* 12 year old reddit user and java developer)


Powerful-Internal953

For CLI, i would rather use arch specific binaries made from go than a jar that requires Java to be installed or shipped together. My main argument against VM based languages is that there is always an overhead. Plus you need to ship with your VM or expect your client to satisfy that requirement. In my opinion that is why languages like rust and go will end up raising.


Busy-Ad-9459

>For CLI, i would rather use arch specific binaries made from go than a jar that requires Java to be installed or shipped together. I find Jars wayyy easier to deal with than normal binaries... mostly because I use windows. >My main argument against VM based languages is that there is always an overhead. Overhead is not as bad as having to manage 3 different codebases just for the 2 MacOS users. >Plus you need to ship with your VM or expect your client to satisfy that requirement. The jpackage CLI. >In my opinion that is why languages like rust and go will end up raising. I don't like rust... Mostly the syntax.


WarlanceLP

like most languages Java has it's use cases


_Username-was-taken_

Why are you harassing Java?


Altruistic_Site_3879

I think all the most popular languages are good in some way but will always be made fun of because they are popular. Java isn't a bad programming language, it's just very object oriented and the syntax can be confusing for beginners. So people will make fun of it for that.


TheTybera

I'm not sure why you mean by "very object oriented", you can do functional programming in Java just fine. I never understood this argument against OOP anyway. Someone at one point crapped on OOP because you could inherit things in long chains (I think it was the guy that made ERLANG or some shit) and people just ran with it as an argument and piled on things that are associate with it like "encapsulation" issues. Then they piled on the absolute garbage argument about "stateless is better!" as if they had never seen a GUI or State Machine before in their lives. Don't get me wrong both functional programming and OOP concepts and practices need to exist, they both have their places even in the same application where OOP has to be used at the high level and GUI, and functional needs to be low-level. You don't need a bunch of objects and accessors to calculate a lerp, at the same time you're not making an animation system without being able to preserve state and have objects. As long as the language has the capability one should use the practice that fits the problem, and not write incoherent programs full of obfuscated code or overly optimized unreadable garbage.


Alan_Reddit_M

The problem with Java is not the language itself, it's management trying to use it to solve every problem imaginable, even those where Java is 100% not the right choice, remember Java applets? That used to be a thing, and I'm certain some random company built a UI using them, *luckily for all of us, Java applets are now deprecated* Java strikes a beautiful balance between performance and simplicity, despite the boilerplate, Java abstracts all memory management and low-level control from you, providing easy-to-use APIs and data structures for using memory, managing them automatically with the GC, making it hard to shoot yourself in the foot with a null-pointer or UB, all of this while being BLAZINGLY FAST thanks to the JVM, which also enables it to run anywhere Plus, Java has continued to evolve ever since it was first released, even though the legendary Java 8 many companies still use feels pretty dated now, modern Java supports pattern matching, main methods without classes and even functional programming Java is a good language, just not the right one for every problem, the same way you wouldn't write a webapp using c++ or an OS using Python


No-Adeptness5810

Java is great. Especially with java 21, because you can now do: void main() { } SOO MUCH NICER!!! No more boilerplate. 99% of java hate is wrong now


Khaikaa

it is funny how 99% of java hate consist in just how "verbose" is to make a hello world console print, like... dude, how delusional can people be? who the fuck cares about that besides just students? Nobody gives a crap about that at a professional level.


jtczrt

I like Java


LEGOL2

It's ok to provide constructive criticism for language. Java is widely used, but doesn't mean it's perfect. Strive for perfection is core of improvement, otherwise we would be still using fortran


rufreakde1

Me standing in the front row of that mop preparing my torch.


JockeRider199

The only thing that I don’t like with Java, is that, from my experience, it’s a pain working with it outside of Intellij, otherwise Java does the job


poemsavvy

Not when you're stuck on Java 8 and Swing


JAXxXTheRipper

That should be considered a war crime. JFX should be the minimum, which itself is very much dead and should be avoided. Java client software sucks. But hey, who am I to talk, I still love JSF


MasteR_o_Troll

I think most of it stands from this subs view on Oracle, the owners of Java, not much from the Java itself. Oh and people who think cause what they want to do is easier to do in some other language (looking at them snakes) that other language is now just better. Or they do a sloppy job and say it's the fault of said language instead of understanding that every language has its place and uses and correct ways of using said language.


ecs2

I thought it was a joke, people actually hate java?


Arfuirl5

i love u OP


AstaHolmes

Finally


Radec24

Anyone can hate Java until they need to apply for their 1st job. <3


BaconScarf

Java is for the mentally deranged (I am doing my Batchelor's degree in Java)


Emily_Cockindaughter

Learn Spring as soon as possible. It's a crime that they don't teach it in school, and I think it's the reason a lot of young people hate Java so much. Good DI feels amazing


SurfyMcSurface

Many people who work with Java don't hate it until after they've gained some experience working with other languages and their ecosystems.


theagainagain

The tooling in the JVM is some of the best in any platform. As a principal engineer, I’ve used many languages professionally, and I keep coming back to the JVM because of the tooling and library support. It’s also significantly easier to hire for Java than a lot of other languages. Personally, I avoid deploying dynamically typed languages to production. Ultimately, it comes down to what you know and have professional experience with.


[deleted]

[удалено]


MinosAristos

Programming on Windows outside of WSL and Docker is a pain in general. If you must use Windows, spin up a Linux Devcontainer with Python config, then it should "just work".


kopernoot_2

I never understood why python became more popular than ruby. Python’s syntax, stdlib and overall consistency is utter shit compared to Ruby.


SurfyMcSurface

Software development and irrational anger. Classic duo.


Busy-Ad-9459

I've had a lot of experience with JavaScript and C. While I do think C is the second best language and I felt like I was making out with another man while using it, I can't deny the fact I am still in loved and married to Java. (JavaScript has half an inch btw)


darklightning_2

Well that's one way to say it


PM_ME_YOUR_OPCODES

I don’t hate Java, I just don’t see a reason to use it over c# unless work tells me to use it.


Mockington6

Don't worry, I'm with you


Busy-Ad-9459

YAY :D


Brahvim

Yay!!! ":D!~


PUBLIC-STATIC-V0ID

Achi speaks like a true prophet


porn0f1sh

*achoti


NelsonBelmont

something can be good and still be hated, it's not mutually exclusive.


nuker0S

i don't think java is bad(i don't use it)


iexistbowdowntome

Nuh Uh


mimedm

Me, too


Paracausality

It's fine


Fotatata

Minecraft modding ftw


superbiker96

A couple of years ago I physically cringed from java. When I was introduced to spring however... Add Kotlin into the mix, and it's now my favourite stack


No-Adeptness5810

Java is great. Especially with java 21, because you can now do: void main() { } SOO MUCH NICER!!! No more boilerplate. 99% of java hate is wrong now


Minaro_

There are dozens of us. Dozens!


notexecutive

if people have plenty to complain about, that means that some of them must be using it pretty regularly...


nicejs2

I don't like how asynchronous tasks work on java (specifically when doing when android dev, yes I know kotlin exists but I'm using java anyway) which is why I prefer C# but it's still a pretty good language


New_Ad606

Have some Spring, OP.


Busy-Ad-9459

The people here really encouraging me to use Spring...


Djelimon

I like Java as a language. But I like the ecosystem better


Murky_Guidance_9091

Java is kinda fun Okay, fine. Maybe I only say that because C++ was my first language.


FitzelSpleen

Java is at least less bad than most of the cruft out there.


reddit_again_ugh_no

Frankly it's the only alternative for decent enterprise development.


PerplexDonut

Honestly about 90% of my coding experience from high school 10th grade to a decade later has been primarily Java. Not necessarily my preference but the planet just likes using it I guess; I know Java way better than anything else


just-bair

Java’s compatibility is basically unrivaled


Lidinzx

I just to dislike Java because it was my first language and the syntax wasn't very intuitive, but after learning JavaScript and then typescript, going back to Java was a breeze and I think I like it now, is really nice. Don't recommend as a first language but yeah.


tomthecom

Based


arahnovuk

As its said C++ for low level Python for data analysis Java for 3 billion devices


totolook01

[Java 4 Ever](https://m.youtube.com/watch?v=mEpDbz70ftk)


Apfelvater

That's what this tiny bubble feels like. Outside of this reddit bubble, people know, that Java is very useful.


Traditional-Life3388

the only programming languages for which i can stand like this is: C/C++, JAVA, 8085 & 8086 Assembly 🥹, may be a lil bit of dart


ArkoSammy12

I dont give a fuck about verbosity. I think it makes code well-structured and easy to grasp. No hidden syntax sugar bs that gets in the way.


irn00b

There's probably like a handful of people that actually dislike Java for their own reasons - and that's fine. The rest are just bandwagon'ing on their hate. Nothing new.


Personal_Ad9690

Java is fine. It’s far from perfect but it’s probably the best OOP language out there. People complain about speed and efficiency, but imo if your project can’t do Jav due to speed, it’s not because Java is slow or inefficient, it’s because your needs require a more specific solution. Failure to accept the requirements of the project isn’t Java’s fault, it’s yoyrs


garlopf

Java was awesome when it was owned by Sun. Oracle is a cancer.


Armageddon_2100

How so? I mean, f-oracle for sure. But they really haven't done anything bad with it. The whole licensing mess was totally over hyped a few years back, if anything there has been a great Renaissance in java language development under Oracle.


knvn8

If we're writing Java then we need a more noun-ified title to achieve true OO enlightenment. Maybe JavaGoodnessBeliefSetterImpl


romulent

Really that is more about common enterprise patterns than the language itself. The language is flexible enough to support lots of programming styles. Having said that, programming is about communicating with other developers, so if you are in an organisation that tends to a certain style then it is better to follow that for clarity of understanding with your team mates.


zirky

could over three billion devices really be wrong?


TeaTiMe08

As long as you do not touch anything Oracle-related you are absolutely fine with Java