This post is for any of my students that want to do some work and studying over the summer and need some advice on what to study.
In general, any learning you can do over the summer will be helpful to you in the long run. The only exception I can think of would be learning Visual Basic. That language teaches bad programming habits that will actually make learning other languages more difficult.
Here are some general suggestions that are not linked to any particular programming language:
1. Consider reading this book:
http://www.amazon.com/Code-Dv-Undefined-Charles-Petzold/dp/0735611319/ref=pd_bbs_1?ie=UTF8&s=books&qid=1212516723&sr=8-1
The book is Code, by Charles Petzold. It is an excellent book that will teach you a lot about how computers work. The books starts by talking about simple electrical circuits and moves on to computers. You’ll really understand computers if you read this book–especially how they work on the inside.
2. Have fun. I’m serious. Some of you need a break for the summer to recharge your brains. So if you want to spend some time playing video games, go ahead. I’ll be playing through GTA IV myself….
3. Learn Google. Go to Google and play around in their Labs section for a while, to see what they’re developing there. Other things to check out: Google Docs, Google Page Creator, and iGoogle.
4. Learn about XHTML and CSS. If you get those down you can then move on into JavaScript and Php.
Students who will be in the AP Computer Science Class:
This class will feature Java. You can find out a lot of information on downloading and installing Java at:
http://www.java.com/en/
For thos of you that already know some programming, book mark and explore the Java API:
http://java.sun.com/javase/6/docs/api/
Now, Java is not an easy language to learn on your own. If you decide to learn Java, please send any questions you have to me, or post them here on this blog.
IMPORTANT: You will not have to know the entire Java API for the AP class. You are only responsible for a small part of it:
http://www.collegeboard.com/student/testing/ap/compsci_a/java.html
Now–theres a LOT that is NOT included. Graphics, for instance. Those of you that already play around with a language probably deal with more than what is included in the subset, so look that over and you can see that we need to learn relatively little–we just have to be very good at using that small amount.
You may want to learn Alice. Alice is a programming environment that is written in Java and teaches the basics of Object Oriented Programming. Don’t be put off by the cartoonish look: Alice is used in both High School AP classes and also in College Java classes. Alice does not have to be installed. Just get the file, unzip it, and then run the program. Here it is:
http://www.alice.org/
Also, anything you learn in Python will help you in Java, and Python is much easier to learn. So studying Python all summer can only help you come Fall.