Good times: Please fill out the class survey.
Almost done: Please submit your final project.

The Idea of the Course

The point of this two week course is to teach you the fundamentals of computer programming to the point where you can go and learn on your own. It is taught by a collaboration of instructors from Stanford and Bogazici University. You will learn to program using material for Stanford's Introduction to Computer Science course.

Generic placeholder thumbnail
Chris
Generic placeholder thumbnail
Alisha
Generic placeholder thumbnail
Amy
Generic placeholder thumbnail
Brian
Generic placeholder thumbnail
Bryce
Generic placeholder thumbnail
Çağatay
Generic placeholder thumbnail
Danielle
Generic placeholder thumbnail
Dilara
Generic placeholder thumbnail
Göktuğ
Generic placeholder thumbnail
Julia
Generic placeholder thumbnail
Kerem
Generic placeholder thumbnail
Kevin
Generic placeholder thumbnail
Özlem
Generic placeholder thumbnail
Pınar Ö
Generic placeholder thumbnail
Şahin
Generic placeholder thumbnail
Jessy
Generic placeholder thumbnail
Sean
Generic placeholder thumbnail
Pınar Y
Generic placeholder thumbnail
Nick
Generic placeholder thumbnail
Asena

Continuing After Class

The class is now over. I hope you had fun! You have completed most (but not all) of the Stanford CS106A Programming Methodologies course. But, hopefully that is just the beggining. What should you do next? Check out this handout. Please email Alisha or Kerem if you would like to continue with the material.

Programs

Name Topic Starter Code

[After Class]
Instakilo Hashmaps Instakilo.zip
Hangman Strings Hangman.zip
The Line Review TheLine.zip

[Projects]
Make Your Own All FinalProject.zip
Waves of Sound ArrayLists Sound.zip
Breakout! Interactors Breakout.zip

[JavaScript]
Music Cannon Web Programming JavaScriptDay3.zip
Welcome to HTML Web Programming
Ali Nerede? Web Programming JavaScriptDay2.zip
Random Circles Revisited Web Programming JavaScriptDay1.zip
It's Javascript! Web Programming JavaScriptDay1.zip

[Java]
Secret Sandcastle Day7.zip
MadLibs Sandcastle Day6.zip
Catch Me If You Can Sandcastle Day5.zip
Optical Illusion For Loops Day4.zip
Three's a Crowd Sandcastle Day4.zip
Short Film Params and Returns Day3.zip
Target Parameters Day3.zip
Mad Max Params and Returns Day3.zip
Bouncing Ball Animation Day3.zip
Random Circles Randomness Day3.zip
That's Some Sum Sandcastle Day3.zip
Programing is Awesome Graphics Day2.zip
Game of Nimm Variables Day2.zip
Medicine Counterfiting Variables Day2.zip

[Karel]
Random Painter If Statements Day1.zip
Mountain Karel While Loops Day1.zip
Build Efes For Loops Day1.zip
Collect Newspaper Methods Day1.zip

Class Selfie

Curriculum

Play With Karel

Meet Karel, The Java Robot that Stanford uses to introduce university students to programming.

Use Karel's commands to get her to move the beeper to the top of the ledge. Normally you will write your programs in an application called Eclipse, but to get you started we made a mini-eclipse for our website:


Set Up Your Computer

Download Eclipse

Your first step is to install eclipse. Here is the mac version and here is the windows version. If you need instructions here is a handout. If you just want the Stanford plugin you can find it here.

Import a project

Once you have Eclipse installed you can import a project (Standord Menu -> Import Project). For new programs download and import this blank project.

Create an executable

If you want to turn a project into a stand-alone executable, read this handout.