Computer Science

<p>Hey,
I am currently a junior in High School and am looking to go into ChemE. There is a class offered at my school that teaches Java porgramming. I have heard mixed reviews about the class and was wondering if anyone (esp. in Engineering) has any thoughts about classes like this.</p>

<p>I'm taking AP Comp. science next year which I think is the same thing you're talking about. According to what I've heard, it's not bad if you're naturally good at math & can teach yourself. Maybe that's only at our school though. =</p>

<p>It sounds like the same thing, but our school doesn't offer a AP option, so I doubt it would be as useful.</p>

<p>It's a fun subject, but probably not so fun a course (I'm taking AP though). The APCS Case Study is the boringest thing ever, but our teacher gives us a break most of the time by letting us work on projects (like coming up with your own game).</p>

<p>I've done basic programming before, but not much OOP. So I'm kinda glad I'm taking it this year.</p>

<p>To quote a professor at carnegie mellon's school of computer science who I've been communicating with and deeply respect</p>

<p>"I have to say that it's a real shame that the AP CS curriculum is so
poor. It's not really a Computer Science course at all, but something
more like elementary computer programming. This is a pity, because the
field is intellectually deep and fascinating" </p>

<p>I'd suggest trying to teach yourself some basic programming on your own, possibly with the very nice (and free!) materials that are part of the PLT Scheme (google it) project in conjunction with a book such as The Little Schemer (search amazon for it).</p>

<p>If you can take in enough of that, I guarantee that any high school CS course will be relaxing, and additionally you'll be exposed to REAL CS concepts that you otherwise wouldn't understand till college.</p>

<p>I'd elaborate in greater depth, but I have work to do.
For all who wish to learn some CS on their own, I'd suggest they start with the above two items.</p>

<p>for people who already know how to program, check out the free internet contests and training material at <a href="http://www.usaco.org%5B/url%5D"&gt;www.usaco.org&lt;/a> (USA Computing Olympiad)</p>

<p>argh, I considered doing it, but the fact that I would be forced to used c/c++, pascal or Java for problems I'd rather use a modern language for.</p>

<p>If only ML, Scheme or another well designed langauge were an option.</p>

<p>to me, C++ is a very modern language. (i mean this "modern" means not so much anyway. at least i conceived like that)</p>

<p>well. really. i think and believe in it's (or should be) more about thinking-process than coding. therefore once you got down one language, the next one will come much easier.</p>

<p>so as long as it's not something you have to use punchcards you are fine and would be a lot productive by starting to program right now with whatever you have in your mind/hand/computer.</p>

<p>umm
C++ is about 20 years old, and unlike some languages of similar age
it lacks both rigorously defined semantics and safety. This safety issue worsens due to the absence of automated memory management. While Java itself lacks these flaws, it must be remarked that forcing all problems to fit their solutions elegantly within the object orientated paradigm is not always possible or fun.</p>