5 ms·
I took AP Comp Sci in high school back 2000. It was a great c++ class and really gave me headstart in the CS program when I went off to college. Of course I be
by mkull 19y ago
I took AP Comp Sci in high school back 2000. It was a great c++ class and really gave me headstart in the CS program when I went off to college. Of course I benefited by having a great teacher,
In actuality, my enjoyment of that class solidified my decision at the time to major in CS when I went to college.
Sad to see it go, I think it is a big mistake to cut it.
- amichail 19y agoC++ isn't a good way to introduce people to CS. An introductory class should pick a language that doesn't get in the way so much.
- mkull 19y agoAP Comp Sci isnt an introductory class. I had two courses of introduction which were pre-reqs to take that my senior year. These courses were in BASIC. While not the best, they got the job done.
- Darmani 19y agoThat is correct: AP Comp Sci is not an introductory class. It is merely a standardized test, with an accompanying standardized curriculum. How schools decide to teach that curriculum is up to them. For example, I had to take two semesters of Java before I could take the AP/IB CS class; however, my high school currently allows students to enter AP CS (material unique to International Baccalaureate pushed back to an independent study) straight from Honors Algebra II.
- aston 19y agoIt's been in Java since about 2000.
- shawndrost 19y agoShame... I remember pointers being the challenging part of the class.
- krschultz 19y agoThats the problem with AP CS in Java. In our school CS 105 is the first programming class, it is C and you basically learn basic io/if/for/while/structs/pointers. If you take the AP class you skip CS 105 and therefore you jump into the next level class without having ever heard what a pointer was, looking for an ArrayList and wondering where the libraries. That next class is C++ and covers OOP and streams and templates and they get lost immediately. Worse, most of the kids in mine got 4 or 5s on the exam, and said they had never created a program from scratch before, since Java has so much boiler plate the teacher would give them a skeleton and they would have to fill in the methods, the whole idea of how to structure a program into functions was never taught to them. It sounded like it did more harm than good to me, I would rather see a high school CS class do some fun python robotics or graphics programming to get people interested and then when they hit college get into the details, don't let them skip the basics by taking a test that doesn't actually replace the amount of knowledge it says it does.
- jorgeortiz85 19y agoBut 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.
- jotto 19y agoit was c++ until 2002-2003. 2003-2004 marked the beginning of java. http://en.wikipedia.org/wiki/AP_Computer_Science http://en.wikipedia.org/wiki/AP_Computer_Science
- SwellJoe 19y agoI feel old. My high school AP computer class used Pascal running on Apple IIe computers (I worked in C, E, assembly, and Rexx on my Amiga at home, though).