You could omit the “public” totally and “void” has a simple explanation (“the function doesn’t return anything”) 
-
-
-
Tweet unavailable
-
Yeah but what if you don’t know what a function is or returns? Day one is inevitably confusing
-
Oh, I guess for getting to “hello world” the root problem with Java is that everything has to be a class, which by itself is hard to explain and also forces dealing with what you brought up (“public” and “void”).
- End of conversation
New conversation -
-
-
I attempted a PhD in Computer Science Education, I studied how students learn, and I really blame a lot of problems on Java. It starts you off programming by *rote-learning* things you don’t understand. An average student can’t explain 80% of the (correct) program they produce.
-
I’ve seen students pace hallways pre exams saying things like “okay it’s public static void main open-roundy-bracket string with a capital S, a-r-g-s square brackets then close roundy-bracket then squiggly brackets, then code”
- 1 more reply
New conversation -
-
-
I hated that so much when we learned C++
Just tell me what things mean!!!Thanks. Twitter will use this to make your timeline better. UndoUndo
-
-
-
I had the same experience. We got Scheme as intro and most of us liked it, then switched to Java and it just killed all the joy. Public static void main - before you could even say hello world
Thanks. Twitter will use this to make your timeline better. UndoUndo
-
-
-
yep, I've argued against it before. One of the courses I've TA'ed in the past was an intro CS course that used Java. Most common things I've said: "don't worry about it", "we'll discuss this later in the course". I didn't like myself for doing that
Thanks. Twitter will use this to make your timeline better. UndoUndo
-
-
-
I couldn’t sell my intro to C text book back to the school because I had drooled too much into it from falling asleep into it everytime I’d try and read it.
Thanks. Twitter will use this to make your timeline better. UndoUndo
-
-
-
I like the way
@BristolUni taught CS in 2005. Initially started with C to get to grips with how computers actually worked. Then, we were taught Java, Haskell and C simultaneously (each coursework done 3 times), so we didn't get mentally wedded to one programming model. -
I did an MSc there at that time. Those folks did it right
End of conversation
New conversation -
-
-
I mean, it's a good lesson on abstracting away things you don't currently understand, which is important in software development
Thanks. Twitter will use this to make your timeline better. UndoUndo
-
-
-
this is why I got out of eng shortly after two AP classes. We had AP Java AND C++ (in 2005). Was told to take both. Awful.
Thanks. Twitter will use this to make your timeline better. UndoUndo
-
-
-
Such a good point - I wonder which language has the least number of "Don't worry about that for now" moments while teaching.
Thanks. Twitter will use this to make your timeline better. UndoUndo
-
-
-
Haha so true.
Thanks. Twitter will use this to make your timeline better. UndoUndo
-
-
-
Thanks. Twitter will use this to make your timeline better. UndoUndo
-
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.
I wonder from time to time how much damage this single decision must have done in terms of DISCOURAGING high schoolers to take up programming.
