55
all 23 comments
sorted by: hot top controversial new old
[-] drew_belloc@programming.dev 10 points 1 year ago

It's time to show off my java hello world with 7 errors on line 34

[-] elvith@feddit.de 4 points 1 year ago

I don't know what I did wrong, but the bug must be somewhere in HelloWorldExampleClassForTutorialBuilderFactory.HelloWorldExampleClassForTutorialBuilderFactory(StringBuilderFactory myHelloWorldExampleClassForTutorialStringBuilder, int numberOfTimesToDisplayHelloWorld)

[-] AlmightySnoo@lemmy.world 4 points 1 year ago* (last edited 1 year ago)

I know the guy meant it as a joke but in my team I see the damage "academic" OOP/UML courses do to a programmer. In a library that's supposed to be high-performance code in C++ and does stuff like solving certain PDEs and performing heavy Monte-Carlo simulations, the guys with OOP/UML background tend to abuse dynamic polymorphism (they put on a pikachu face when you show them that there's also static polymorphism) and write a lot of bad code with lots of indirections and many of them aren't aware of the fact that virtual functions and dynamic_cast's have a price and an especially ugly one if you use them at every step of your iterative algorithm. They're usually used to garbage collectors and when they switch to C++ they become paranoiac and abuse shared_ptr's because it gives them peace of mind as the resource will be guaranteed to be freed when it's not needed anymore and they don't have to care about when that is the case, they obviously ignore that under the hood there are atomics when incrementing the ref counter (I removed the shared pointers of a dev who did this in our team and our code became twice as fast). Like the guy in the screenshot I certainly wouldn't want to have someone in my team who was molded by Java and UML diagrams.

[-] hellishharlot@lemmy.world 1 points 1 year ago

I have been writing code professionally for 6ish years now and have no idea what you said

[-] magic_lobster_party@kbin.social 1 points 1 year ago

I think many academic courses are stuck with old OOP theories from the 90s, while the rest of the industry have learned from its failures long time ago and moved on with more refined OOP practices. Turns out inheritance is one of the worst ways to achieve OOP.

[-] fidodo@lemm.ee 1 points 1 year ago

I think a lot of academic oop adds inheritance for the heck of it. Like they're more interested in creating a tree of life for programming than they are in creating a maintainable understandable program.

[-] einsteinx2@programming.dev 1 points 1 year ago

That’s the problem, a lot of CS professors never worked in the industry or did anything outside academia so they never learned those lessons…or the last time they did work was back in the 90s lol.

Doesn’t help that most universities don’t seem to offer “software engineering” degrees and so everyone takes “computer science” even if they don’t want to be a computer scientist.

[-] TrismegistusMx@lemmy.world 3 points 1 year ago* (last edited 1 year ago)

When I was in the military, the shooting instructors said they preferred training females because they haven't been trained poorly by somebody else.

EDIT: Designating recruits as male and female is the way the military does things. I don't use the terms male and female when referring to groups of humans. I felt the need to clarify since somebody already took offense.

[-] Kryomaani@sopuli.xyz -4 points 1 year ago

they preferred training females

It's "women".

[-] ScrimbloBimblo@lemmy.dbzer0.com 1 points 1 year ago

You've obviously never been in the military, because it's definitely "females".

[-] Kryomaani@sopuli.xyz 1 points 1 year ago* (last edited 1 year ago)

I'm from a country with mandatory conscription for men, so yes, I've been in the military and I've seen the misogyny (among countless other varieties of bigotry) rampant in that system from front row seats. We had a handful of female volunteer conscripts, as well as one of my NCOs was a woman, and it was blatantly obvious they were not recieving the same treatment as the majority of us who were men (and not in a good way, if there was any room for confusion).

Experiences like that are among the key reasons I'm not happy to see people keep perpetuating that kind of behavior, especially in other traditionally male-centric contexts like the IT industry and even here on this forum.

[-] Coreidan@lemmy.world 1 points 1 year ago* (last edited 1 year ago)

This thread reminds me that most “developers” are terrible and don’t take the time to understand the language.

All of these Java developers you guys hate is the result of schools pushing out idiots. It’s not the language but rather the type of people you hire. These people will suck at writing in any language regardless of what order they try.

[-] cloudy1999@sh.itjust.works 0 points 1 year ago

Agreed, good tools can be used badly. Over the years I've written Java, C++, and PHP professionally, and I've seen excellent and horrible impls in each. Today, I mostly use Java and this thread is reminding me that I need to learn a new for-fun language.

[-] loutr@sh.itjust.works 0 points 1 year ago

Learn kotlin, it's awesome and runs on literally everything.

[-] clutchmatic@lemmy.world 1 points 1 year ago

Kotlin won't save your skin if the code you wrote should be performant but you layered it into a heap of abstract classes, interfaces, factories, etc and, realistically, no one else would use or expand on that

[-] loutr@sh.itjust.works 1 points 1 year ago

Sure, but nobody codes like that in kotlin (or in modern Java for that matter)

[-] Aceticon@lemmy.world 0 points 1 year ago* (last edited 1 year ago)

I actually have a ton of professional Java experience and have done a lot of microcontroller stuff of late (for fun mainly) and if you go at doing software for ARM Cortex-M microcontrollers the Java way you're going to end with overengineered bloatware.

It's however not a Java-only thing: most of those things have too little memory and processing resources for designing the whole software in a pure OO way, plus you're pretty much coding directly on the low-level (with at most a thin Hardware Abstraction Layer between your code and direct register manipulation) so only ever having used high-level OO languages isn't really good preparation for it, something which applies not only for people with only Java experience but also for those whose entire experience is with things like C#.Net as well as all smartphone frameworks and languages (Objective-C, Kotlin, Swift).

[-] odbol@lemmy.world 1 points 1 year ago

I used to write a lot of performance-critical Java (oxymoron I know) for wearables, and one time I got a code reviewer who only did server-side Java, and the differences in our philosophies were staggering.

He wanted me to convert all my code to functional style, using optionals and streams instead of simple null checks and array iterations. When explained that those things are slower and take more memory it was like I was speaking an alien language. He never even had to consider that code would be running on a system with limited RAM and CPU cycles, didn't even understand how that was possible.

this post was submitted on 16 Jul 2023
55 points (98.2% liked)

Programmer Humor

32745 readers
204 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS