Computer Science Courses at Gunn

Please read carefully: Prerequisites for enrolling in the different CS courses (http://paleyontology.com/prereqs.html)

Students who study Computer Science improve their problem solving skills and often become more interested in technical fields including Mathematics, Programming and Engineering.

Xtranormal “Why You Should Take Computer Science” animation: http://paleyontology.com

 

ANIMATION USING VIRTUAL WORLDS (5 units CTE credit)

Course Description: Using BYOB (Build Your Own Blocks), an enhanced version of Scratch, students create interactive stories and games while learning basic programming tools and techniques.

Typical Workload: 0-2 hours per week. Although most students do not need study time outside of class, many students enjoy making animations and choose to put in extra time at home because it’s fun!

Who Can Take This Class?Anyone with a pulse and an imagination

What Is The Big Idea?There has been a strong correlation between success in computer science and success in mathematics. This has made the existing CS courses inaccessible for a lot of students. The Scratch and BYOB programming languages are drag-and-drop and easy to use, but also covers many core ideas and tools in the field of computer science. This makes it possible for everyone to create amazing animations while, at the same time, learning standard tricks of the trade that professional programmers use to solve problems.

Here are some snapshots of BYOB programs. Direct questions to Josh Paley by email: jpaley@pausd.org.

 

 

PROGRAMMING CONCEPTS (Fall Semester—5 units CTE or Math credit)

This course introduces the student to tools that programmers find useful. These include concepts such as data abstraction, recursion and higher-order functions as well as data structures such as lists. The amount of homework outside of class is expected to be about 2 hours per week; many students are able to finish almost all of their homework during class. (Hopefully, some students will spend more time than that because they like programming, not because someone makes them!)

Please read the prerequisites at http://paleyontology.com/prereqs.html.

 

INTRO TO JAVA (Spring Semester—5 units CTE or Math credit)

Java is a popular programming language that makes graphics easy. It also has many uses outside of graphics, and the techniques used when programming in Java can be used when programming in many other languages, particularly C and C++. In this class, the student will learn how to use loops, arrays, and object-oriented programming concepts. Like Programming Concepts, this class is intended to be introductory. The homework load is similar to Programming Concepts. Please stop by room L14A to see some of the work done by students who have taken this class.

Please read the prerequisites at http://paleyontology.com/prereqs.html.

 

AP COMPUTER SCIENCE (All Year—10 units CTE or Math credit)

Here’s where the real fun is. Roughly eight weeks of the course will be based on a book used at Berkeley and MIT—this is what you will face if you attend UC-Berkeley and take Computer Science 61A. The rest of the course uses Java and delves into somewhat more complex programming tools, but the projects are primarily what the students are interested in doing. After all, there is no point in the teacher assigning projects when the students have better ideas on how to use their time.

The expected number of hours of homework outside of class is 4 to 6 per week, but many students do fine with less and many, many more spend far more than 6 hours per week because they like what they are doing.

AP credit is, of course, a core goal, but this course is also an opportunity to see what the beginnings of life as a Computer Science major might be like.

Prerequisites: B or higher in Programming Concepts AND B or higher Intro to Java

OR

Summer homework (found at http://paleyontology.com/entrance.html).

 

Sample Animation:

A Scratch game: http://scratch.mit.edu/projects/jpaley/1089953 (click on the game, then use left-arrow, right-arrow, and up-arrow to control paddle)

 

Amusing Pictures:

 

 

 

 

Above: Three visual examples of recursion...

 

Recursive Google windows (The former http://googlegooglegooglegoogle.com)

Mandelbrot set (http://tinyurl.com/4w6bonw)

www.fractal.org/Beelden/Newtree-0.png)

 

FREQUENTLY ASKED QUESTIONS AND QUESTIONS THAT THE TEACHER (MR. PALEY) WISHES WERE FREQUENTLY ASKED

Q: Programming is hard. I can’t use computers. How can I do well in a computer class?

A: Most people who say things like this haven’t really tried to use computers or have had a negative experience once or twice. Many have stereotypes about what using computers means, academically or socially. My opinion is that it’s really hard to know what something is like without giving it a try, and the intro courses are set up so that trying does not mean going through agonizing pain. The new Animation Using Virtual Worlds (AUVW) class is designed to address this.

Q: Should I enroll in Animation Using Virtual Worlds, Programming Concepts/Intro to Java, or jump straight to AP Computer Science?

A: If you have no prior programming experience, but are really strong in math, then Programming Concepts/Intro to Java. If you have plenty of programming experience or are strong in math and willing to do the summer homework, then AP Computer Science. Otherwise, start with AUVW. You’ll learn plenty.

Q: Does the AP class involve pain?

A: If you take the intro courses and really don’t like them, then you have learned something important, and the AP course is probably not for you. If you take the intro courses and like them, then you have learned something else about yourself, and you will probably enjoy the AP course. Programming is not for everyone, but a lot of people rush to judgment before they find out whether it is for them. You might want to decide for yourself based on facts, not guesses. Students who jump straight into the AP course tend to find it much more challenging than those who completed the intro classes.

Q: You are making up the part about the intro courses only requiring two hours of homework per week. There is no way that is possible!

A: Would I joke about this? OK, I would joke about almost anything. But the reality is that students who spend their time efficiently in class really don’t need to spend much time outside of class doing assignments. Some don’t need any time outside of class. Now, if you come to class and read email/use Facebook/chat/game (before I stop you) a lot of the time, don’t come complaining that there is too much homework!

Q: OK, fine, I’m interested in learning more, but I’m not signing up until I see what you are talking about. How do I do that?

A: Fair enough. If you stop by room L14A after school, on most days I will be there. I can show you all sorts of amazing work done by your fellow students.

Q: I don’t need a demo. I want to sign up for a course now…

A: Terrific! The friendly Guidance people are standing by, waiting to assist you.

Q: …but I am already signed up for a bunch of other things and don’t know how to work it into my schedule. How can I sign up at this point?

A: Oops, sorry for interrupting you before. No problem. The Guidance people can still help you reorganize your schedule. They are good at that sort of thing.

Q: OK, thanks! If I have more questions, how can I find you?

A: I am around after school most days in room L14A. You can also send me email at jpaley@pausd.org. I read my email daily, and respond to everything as soon as I can.