this post was submitted on 13 Nov 2024
810 points (96.1% liked)

Greentext

4384 readers
1111 users here now

This is a place to share greentexts and witness the confounding life of Anon. If you're new to the Greentext community, think of it as a sort of zoo with Anon as the main attraction.

Be warned:

If you find yourself getting angry (or god forbid, agreeing) with something Anon has said, you might be doing it wrong.

founded 1 year ago
MODERATORS
 
top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 0 points 3 hours ago

Trying to print hello world is actually pretty easy

public static void main[Args]{ SystemPrintOutLn("Helli world"); }

That's should be it. But I can devinetively agree. For simple tasks Java is to complex because you need to do to much stuff prior to it. If you have more complex things its actually not that bad since if you have a good polished infrastructure it can be quite good.

[–] [email protected] 5 points 17 hours ago
[–] [email protected] 30 points 1 day ago (1 children)

My inner mathematician respects Java. The first step in any problem is defining your universe

load more comments (1 replies)
[–] [email protected] 27 points 1 day ago (5 children)

Hello World

30 minutes of boilerplate

writing imports

$ cat <<EOF > Hello.java
public class Hello {
  public static void main(String args[]) {
    System.out.println("Hello world!");
  }
}
EOF
$ java Hello.java
Hello world!

ok

[–] [email protected] 18 points 1 day ago* (last edited 1 day ago) (1 children)

Python:

print("Hello world!")
[–] [email protected] 12 points 1 day ago* (last edited 1 day ago) (3 children)

C:

#include <stdio.h>

int main() {
    printf("Hello World!");
    return(0);
}

EDIT: POSIX-compatible shell:

echo "Hello World!"
[–] [email protected] 4 points 15 hours ago (1 children)
[–] [email protected] 2 points 12 hours ago

Rust:

Still fighting the burrito check fil er
load more comments (2 replies)
[–] [email protected] 22 points 1 day ago (4 children)

Welcome to java, we have a couple unconventional ways of doing things, but overall I'm like every other mainstream oo language.

People: AHH! Scary!

Welcome to python. your knowledge of me wont help you elsewhere as my syntax is purposefully obtuse and unique. Forget about semicolons, one missed space and your code is as worthless as you after learning this language.

People: Hello based department

[–] [email protected] 9 points 1 day ago (2 children)

Oh my god I got fucked by a python script once because of a single space. It took forever to figure out what went wrong

[–] [email protected] 1 points 3 hours ago

You can't use Python without a linter. I have everything setup in vscode to use tabs yet copilot autocomplete insists on inserting random spaces everywhere creating indentation errors. The linter is essential to quickly see and fix them.

[–] [email protected] 2 points 17 hours ago* (last edited 17 hours ago)

I refuse to code in Python without a really good IDE and linting like PyCharm. When using PyCharm it's very rare I have issues like this, because it catches them in one way or another, but I notice it catches those kinds of issues a lot when I'm coding soooooooo....

I have also setup the IDE to specifically color code comments like

' # End If and ' # Next

in the same style as their beginning statements as I find it much easier to visually scam through code when they are present.

load more comments (3 replies)
[–] [email protected] 7 points 1 day ago (8 children)

This is getting a little better nowadays.

> cat Hello.java
void main() {
    System.out.println("Hello, World!");
}
> java --enable-preview Hello.java
Hello, World!

Things to notice:

  1. No compilation step.
  2. No class declaration.
  3. Main method is not public static
  4. No String[] args.

This still uses preview features though. However, like you demonstrated already, compilation is no longer a required step for simplistic programs like this.

[–] [email protected] 1 points 11 hours ago

System.base.stuff.output.out.printfunctions.println

Or so it felt every time you wanted to dump something into the console...

[–] [email protected] 3 points 22 hours ago* (last edited 22 hours ago) (1 children)

Microsoft Java is a one-liner these days.

> cat program.cs
Console.WriteLine("Hello, World!");
> dotnet run
Hello, World!
load more comments (6 replies)
load more comments (2 replies)
[–] [email protected] 15 points 1 day ago (1 children)

Forgot the JVM eating the entire machine's RAM for breakfast

[–] [email protected] 18 points 1 day ago

JVM is like a gas. It expands to fit it's container, however large that is.

[–] [email protected] 7 points 1 day ago (1 children)

Java is terrible and I hated it but I feel like this stuff is not why, this mostly just seems like stuff that most powerful object oriented languages do.

[–] [email protected] 5 points 1 day ago (1 children)

Java is amazing and I love it, and I agree that this is not really a good list of problems. (Not that I expect green texts to be well thought out, rational, real, fair, or anything other than hyperbolic rants lol.) There are good reasons to critique it and the ways people use it, but this isn't it.

Particularly funny is the one about race conditions. That's something you'd have to deal with in any sort of multi threaded environment.

[–] [email protected] 1 points 18 hours ago* (last edited 18 hours ago) (1 children)

Maybe they got confused and assumed it would run on a different cpu? Is there another language that does it that way? No, now I'm confusing myself.

[–] [email protected] 1 points 14 hours ago

Various languages have various features to make multi threading/concurrent programming easier. Without knowing what language the green text is fanboying for instead of Java it's hard to know what their specific gripe is. Supporting true multi threading out of the box has always been a priority of Java so I don't know what they're complaining about. Generally languages that people praise over Java like Python and JavaScript do not feature true multi threading. (Although Python is getting closer or there now that the GIL is optional.)

[–] [email protected] 13 points 1 day ago (5 children)

I really enjoyed the text.

From the perspective of a python programmer it all seems valid.

A Java-Dev would probably write the same about an embedded engineer.

[–] [email protected] 6 points 1 day ago

As embedded dev, the stack trace alone scares me. It would be funny to watch the Java runtime blow the 8 frame deep stack on a PIC18 tho

load more comments (4 replies)
[–] [email protected] 8 points 1 day ago (4 children)

I still think Java is good for teaching newbies precisely because it will throw an error quickly if they are doing it wrong.

[–] [email protected] 7 points 1 day ago

Rust over there like

Hey kid, tired of putting off your problems?

[–] [email protected] 5 points 1 day ago

So will so many better languages, more so actually.

load more comments (2 replies)
[–] [email protected] 153 points 1 day ago (5 children)

I also think Java is shit, but if you manage to get a NullPointerException while writing a hello world program, maybe anon is just not cut out for computers?

load more comments (5 replies)
[–] [email protected] 37 points 1 day ago (6 children)

I might have agreed a decade or two ago, when I knew no better. But today, I find the tribalism surrounding programming languages comical.

I don’t particularly like Java, but I use it because it pays the bills. Similarly, I use C++ (which I prefer) when my work requires it.

[–] [email protected] 31 points 1 day ago

I don’t particularly like Java, but I use it because it pays the bills. Similarly, I use C++ (which I prefer) when my work requires it.

I mean, anon is not arguing against that. They're saying the language is shit regardless of how much it is used in business. I don't think they are entirely wrong.

load more comments (5 replies)
[–] [email protected] 8 points 1 day ago

Must be several years old - otherwise, javafx deserves quite a bit more ire.

load more comments
view more: next ›