3 ms·
But Java isn't exactly any better. My youngest sister is taking the AP CS exam next month, and I was helping her study a few weeks ago. The first question she
by jorgeortiz85 19y ago
But Java isn't exactly any better.
My youngest sister is taking the AP CS exam next month, and I was helping her study a few weeks ago. The first question she asked me (she's taken a semester and a half of AP CS at this point) was: what's the difference between an Array and an ArrayList?
To explain this, I had to go into: primitives, objects, and references; auto-boxing and un-boxing; generics; memory allocation and garbage collection; the different APIs (one uses length, another uses size)...
About 80% of her textbook was stuff like this. Details of the Java language that have very little to do with learning Computer Science. Only about 20% of her textbook as devoted to "algorithms".
- aston 19y agoI would say learning the ins and outs of a single language prepares you a lot better for general coding in the real world than learning algorithms does. In day to day work, I haven't ever coded up a linked list, but knowing whether Python passes dict's by reference or by copied value is pretty valuable. I had a fundamental understanding of that based on my previous knowledge of the same in Java.
- nuggien 19y agoPrepared to get replaced soon by a guy in India or southeast asia.
- jsjenkins168 19y agoI only think you should go deep after you learned concepts shallow and wide. It is important that students, very early on, be able to build interesting and meaningful things with their CS skills and experience the associated gratification. For many people this is essential. My young cousin changed his mind about pursuing CS in college because his HS course work focused too much on tedious details. He was not able to perceive what high-level programs are capable of doing and the power programming as a medium of creative expression. Its a big shame.
- amichail 19y agoThat sounds awful. It's a good thing this class is gone!
- jorgeortiz85 19y agoShe's actually taking AP Computer Science A (as opposed to AB, which is the course getting axed). They're both taught in Java. I'd much rather the course be taught in a language more amenable to teaching computer science (Python, perhaps?). But if it must be Java, better some CS education than none at all.