104 points

Java is poison for the mind

permalink
report
reply
33 points

Why do people feel this way?

I’m genuinely curious as I’d think having a wider swathe of coding experience would be a good thing wouldn’t it?

I don’t work in fields that use coding expertise, I drive a forklift so I’m out of my wheel house when it comes to coding.

permalink
report
parent
reply
37 points

Not sure either. Best guesses are a combination of elitism, ignorance, preconceptions, groupthink, and insincere memeing.

permalink
report
parent
reply
18 points
*

NGL if I saw a job listing that said, “Don’t have experience in a specific field,” I wouldn’t apply even if I didn’t have experience in the field specified because my assumptions for why they’d say that basically are the reasons you said.

Or that they would want someone they could under pay for the position, but that’s more specific for what the job is and what they don’t want you to know beforehand.

Edit: Fixed wrong wording

permalink
report
parent
reply
31 points

Java used to lack many features to make the stuff you wanted it to do, so most Java programmers adapted design patterns to solve these problems.

Honestly, older versions of Java are utter garbage DX. The only reason it got so popular was because of aggressive enterprise marketing and it worked. How can a language lack such an essential feature as default parameters?

So, anyway after the great hype Java lost its marketshare, and developers were forced to learn another technologies. And of course, instead of looking for language-native way of solving problems, they just used same design patterns.

And thus MoveAdapterStrategyFactoryFactories were in places where simple lambda function would do the same thing, just not abstracted away three layers above. Obviously used once in the entire codebase.

Imo the only really good thing about Java was JVM, while it was not perfect, it actually delivered what it promised.

permalink
report
parent
reply
9 points

This is the only necessary comment in the entire thread, thanks for explaining

permalink
report
parent
reply
8 points

I think most of those design patterns originated from C++ (Gang of Four). Java was designed to be a simpler, opinionated C++, and inherited many of the nuances of OOP-style C++. I actually kinda like Java. I think its restrictiveness is nice for large projects, so everyone uses the same programming paradigm and style (no mixing of template, procedural, and OOP programming). Code execution is relatively quick (compared to things like the Python interpreter). Don’t need to write header files or manually manage memory. Has fairly advanced features built in for multi-threading, concurrency, remote objects, etc.

I haven’t programmed in Java in many years, but I’ve been programming in C# lately, and it just seems like Microsoft’s version of Java.

permalink
report
parent
reply
15 points

Java in a large way has been eclipsed by most other languages, and developers kind of have a way of making fun of old technologies, like a lot of the same jokes are made about PHP which is still very popular but outdated. In reality Java is also still incredibly popular and knowing it is certainly a benefit. It’s just a collective joke.

permalink
report
parent
reply
5 points

I wish people would make fun of Visual Basic more but nowadays it’s like it never even existed. As somebody that started in VB I feel left out.

permalink
report
parent
reply
10 points
*

If it’s a job that requires high-performance/low-level code (which seems to be the case from the other qualifications), this is probably their way of filtering out people who have primarily worked at a higher level where you don’t need to worry about the nitty-gritty details

permalink
report
parent
reply
13 points
*

I can almost guarantee that job post was written by a recruiter who had some engineers in a call. The recruiter probably said something like “What about Java? I hear Java is important” to which the engineer(s) likely jokingly responded “Oh, no, please no. MINIMUM POSSIBLE JAVA. Yeesh. Ideally none.” … and the recruiter took that literally.

permalink
report
parent
reply
2 points

Object oriented programming encourages a number of anti-patterns

permalink
report
parent
reply
16 points

Honestly, why people hate it so much? It’s better than most of the shit people use

permalink
report
parent
reply
14 points

public static void main string args

permalink
report
parent
reply
8 points

I’m having compsci flashbacks help

permalink
report
parent
reply
10 points

I agree

permalink
report
parent
reply
8 points

That’s why I’m working in that area. Gotta give the alcoholism some competition up there.

permalink
report
parent
reply
6 points

Oh bullshit

permalink
report
parent
reply
1 point

Shush, grandpa. Go to bed already.

permalink
report
parent
reply
3 points

Go fuck yourself

permalink
report
parent
reply
81 points

ability to bring up hardware

In conversation?

permalink
report
reply
22 points

You need to raise it suckling at your teet until you send it off to college.

permalink
report
parent
reply
5 points

As an embedded systems engineer, this is now my mental image anytime anyone talks about hardware bring up.

permalink
report
parent
reply
20 points

Hardware bring up is when you design a pcb or something and there doesn’t yet exist any firmware for it. It would be the ability to debug the board and write firmware for it.

permalink
report
parent
reply
20 points

No, they’re asking if you can get an erection

permalink
report
parent
reply
11 points

They need someone strong enough ton drag up old servers from the basement.

permalink
report
parent
reply
1 point
Deleted by creator
permalink
report
parent
reply
63 points

Do you have a link to this job posting? That’s exactly me. Not a joke.

permalink
report
reply
53 points

Looks like the company is https://www.winterwinds.io/, but they do not appear to have any open job listings at the moment. I assume this is an older screenshot.

permalink
report
parent
reply
14 points

And that’s how hopes die…

permalink
report
parent
reply
17 points

If they’re a good enough fit, the company might hire them despite not having any open positions. It happened to me once.

permalink
report
parent
reply
3 points

I saw this screenshot ages ago yeah

permalink
report
parent
reply
3 points

Initiative?

permalink
report
parent
reply
62 points

Real-time operating system implies the existence of a turn-based operating system.

permalink
report
reply
13 points

Well, that’s… not wrong. The time-sharing OSes take turns assigning resources too tasks.

permalink
report
parent
reply
57 points

Maybe they want to avoid java coding patterns. FactoryFactoryGenerator kind of stuff. Maybe they want to teach their own java coding patterns and want someone coming in with a blank slate so they don’t have to unlearn habits. Maybe they’re tired of diploma mill programmers applying and are using this as a resume filter tripwire.

permalink
report
reply
41 points
*

Definitely. Horror story time.

We had an outside contractor bring us some code once that was thousands of lines of Python to do a very simple job. I was perplexed. I dove in to figure out what the problem was, and somehow I was looking at the most Java-esque Python code I could imagine. What’s worse is that he implemented his own “Java style” property getters and setters for all the Python classes, which obviously aren’t needed because you can simply access properties directly. In the end I took an 80 line snippet of his code (which actually did the work we needed), swapped out all the getters and setters, and deleted all the rest.

permalink
report
parent
reply
20 points

This is pretty common with outside contractors.

We just come in, say we’ll pay them x dollars and they give us code that passes the test. But that code will not at all align with any prior patterns.

I absolutely know I’m guilty of it when I do freelancing. Sorry.

permalink
report
parent
reply
14 points

You can always tell when someone’s been a career contractor because they never adhere to any of the established patterns/styles in the codebase.

permalink
report
parent
reply
3 points

I disagree. Good career contractors should learn to write in the code style of the project. And the real pros do.

permalink
report
parent
reply
8 points

That’s not to say that python coding habits are the best either – certainly they’re terrible when translating outside of python (most of the time). And even within python, someone who is used to with only the base modules will write it differently than writing PyQt and still completely different than someone doing numpy code… because the styles of coding of the underlying system change your coding mode. Like, my variables are all CamelCase when doing user interfaces with Qt because it makes sense there, stylistically.

permalink
report
parent
reply
6 points

Did you pay by the SLOC?

permalink
report
parent
reply
12 points

It might be to see who is reading the posting and tailoring their reply. Kinda like a “no green M&Ms” rider.

permalink
report
parent
reply
1 point
*

It was brown M&Ms. Only a psychopath would say no green M&Ms.

permalink
report
parent
reply
8 points
*

Definitely the first. I work in ML, and I find for instance people with background mainly in c# to be the least fit for my field, particularly if they have long experience. So I understand this kind of requests

permalink
report
parent
reply
5 points

I originally thought it was the former.

But now I’m strongly hoping it’s the latter! Pretty smart move.

permalink
report
parent
reply