this post was submitted on 25 Nov 2023
206 points (97.2% liked)

Technology

59111 readers
4138 users here now

This is a most excellent place for technology news and articles.


Our Rules


  1. Follow the lemmy.world rules.
  2. Only tech related content.
  3. Be excellent to each another!
  4. Mod approved content bots can post up to 10 articles per day.
  5. Threads asking for personal tech support may be deleted.
  6. Politics threads may be removed.
  7. No memes allowed as posts, OK to post as comments.
  8. Only approved bots from the list below, to ask if your bot can be added please contact us.
  9. Check for duplicates before posting, duplicates may be removed

Approved Bots


founded 1 year ago
MODERATORS
 

An After-School Program Teaches Teens Java and Python::The students also learn how to design board games and video games

top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 33 points 11 months ago (6 children)

PUBLIC STATIC VOID MAIN STRING ARGS

[–] [email protected] 10 points 11 months ago

INT MAIN INT ARGC CHAR POINTER ARGV ARRAY BODY

[–] [email protected] 10 points 11 months ago (1 children)

Say it with me:

PUBLIC STATIC VOID MAIN STRING ARGS

[–] [email protected] 5 points 11 months ago

PUBLIC STATIC VOID MAIN STRING ARGS

[–] [email protected] 3 points 11 months ago

you know how it goes

[–] [email protected] 2 points 11 months ago (2 children)

It feels like some arcane spell when you first learn it, but once you are familiar with Java, each token in that declaration feels totally justified. Like yeah, the args are an array of strings. Yeah, the main function needs to be static and public. Yeah, it doesn't return anything inside the JVM, so it's void.

load more comments (2 replies)
[–] [email protected] 2 points 11 months ago (1 children)

As of java 21, you can actually just use:

void main()

[–] [email protected] 2 points 11 months ago

You'll definitely get to use Java 21 in whatever job you get.

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

This had me burst out in laughter real hard omg

[–] [email protected] 20 points 11 months ago

The world can be so cruel.

[–] [email protected] 13 points 11 months ago

“Python::The” That looks like Perl tho.

[–] [email protected] 8 points 11 months ago (1 children)

Why after school? I was able to take programming classes in highschool in 2010. In the us

[–] [email protected] 4 points 11 months ago

2002, but it was Visual Basic. I got a fucking C in that class because I spent more time helping other kids figure out the assignment than spending time putting worthless clutter in my interfaces to the teachers standards.

Oh well. At least I learned how to write a GUI to track the hackers IP address.

[–] [email protected] 6 points 11 months ago (1 children)

Kids in Asia are way ahead of that. Some countries have had programming on their curriculum for more than a decade

[–] [email protected] 3 points 11 months ago* (last edited 11 months ago) (1 children)

I had programming (Pascal) in school in a random-ass country in Europe 20 years ago (I was like 14).

This has been widespread all over the world for a long time.

[–] [email protected] 2 points 11 months ago

At 14 I could barely get a for loop and if statement working properly. Pascal then VB for me, once a week for 2 years. Only really started programming in uni. Some Asian countries start in primary school at as early as 3 years old. It's as important as languages to them. By 14 they're already doing robotics and writing social media clones.

We are quite far behind in the west.

[–] [email protected] 3 points 11 months ago (1 children)

Back when I was in school, corporal punishment was the norm. I would still prefer that over Java.

[–] [email protected] 6 points 11 months ago (9 children)

We get it, you have no idea what modern Java looks like

[–] [email protected] 12 points 11 months ago (2 children)

I know exactly what modern Java looks like, and it could be beautiful. But… legacy cruft and lazy devs make it painful. And tech debt, let’s be honest.

I’d view a greenfield project rather differently, but those are unicorns.

[–] [email protected] 4 points 11 months ago

I’d view a greenfield project rather differently, but those are ~~unicorns~~ written in Kotlin.

[–] [email protected] 3 points 11 months ago (1 children)

I don't know a single language that's immune to the things you just mentioned.

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

Haskell is still as beautiful as the day it was first made.

Except for class methods. We don't talk about methods.

load more comments (8 replies)
[–] [email protected] 3 points 11 months ago (2 children)

Java is a good language if you're a beginner, but if you've already coded before in other languages, it's going to suck.

[–] [email protected] 4 points 11 months ago (1 children)

Especially for beginners its a bad language. You have the understand artificial concepts about classes, objects, abstract states before you re able to learn the important stuff like if/else, looping etc pp.

I would always give beginners a language which is at least in their way as possible.

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

You don't really have to.

You can just handwave public static void main, and only deal with primitives, then static functions, before introducing objects.

That's what they did at my high school. It's weird, and there's much better ways and languages to introduce procedural programming, but it's possible.

[–] [email protected] 3 points 11 months ago* (last edited 11 months ago)

They should've just picked Kotlin.

It also encourages good basic habits, such as not making a variable mutable unless you specifically need to (val is way more common than var, the IDE makes them very visually distinct).

[–] [email protected] 2 points 11 months ago (2 children)

Java... I started with Java myself when I was a teen. It's not a good idea.

[–] [email protected] 23 points 11 months ago* (last edited 11 months ago) (15 children)

I think Java is still a good language for beginners. The tooling around it is really good and it catches lots of issues at compile time.

[–] [email protected] 2 points 11 months ago

Ditto. Been a Java developer for over 10 years and the tool maturity more than makes up for its faults as a language.

[–] [email protected] 1 points 11 months ago* (last edited 11 months ago)

In my opinion, C# would be better for this job. It is similar, but has many features that simplify the code, such as top level statements, LINQ, collection expressions and stuff like that. It's also way more popular in game development and that's what most teens are interested in

load more comments (13 replies)
[–] [email protected] 5 points 11 months ago

Java is a great language. Still one of the most used languages in the world. Ditto python

load more comments
view more: next ›