- Introductions - Instructor: Alex, TA: Travis - Students - self-introductions - where are they from, programming experience, favorite video game, what interests them about the course - General Schedule - class begins (9:00) - 15-minute breaks (10:30 and 2:30) - lunch (12:00-1:00) - class ends (4:00) - evening session (6:00-7:00) - do journals! * IMPORTANT: BE ON TIME Open Discussion: - How Computers Work - Bird's Eye View - Hardware - CPU - instructions, mostly math - RAM - Disks & discs - Graphics & Audio - Motherboard - binaries and bits - Operating Systems - linux - Software - binary format of programming instructions (more later) - Internet Topic: Introduction to Eclipse - Making a project, package, and java file - Package Explorer - Opening and closing projects, files - Resetting the perspective Lab: Hello World Topic: Programming - Computers are Dumb - snail example - very simple, only understand so many instructions - can only do one thing at a time - calculus example - What is programming? - breaking complex ideas into step-by-step instructions, called algorithms - programming is a LOT of problem solving - a good math background is often helpful - writing out the algorithms and supporting information into a programming language - Okay, then what? - a compiler for the language you wrote your program in turns the language into either assembly or an intermediate language - this is then converted into binary that your computer understands Lab: Wackadot - new project in eclipse, new package - start on step 3 - http://www.fangengine.org/index.php/Tutorial:Wackadot:Eclipse Topic: Webpages and the internet - index.html is the "start" file - anchors/links Lab: Making your webpage - using Mozilla Composer is easiest - files go in ~/public_html/ - any images that are not linked to on the web (i.e. they are stored on the computer) must also be placed in ~/public_html - same goes for JAR files - these web pages should be made to look the way you want, but nothing offensive, etc. - the point is to keep a daily journal or blog that serves to note what you've learned and accomplished each day - your games will also be posted here