Handouts | Classes | Projects | Grades | VHR |
This page was last updated: February 28, 2018
In this course, you will learn:
If you need a place to do your programming assignments, you can get access to the Windows 10-based graphics systems in OSU's Computer Graphics Education Lab (CGEL) in Batcheller Hall 244. |
Given the size of this class, we will hold all of our classes in the CGEL so that we can do live exercises together.
Access to the CGEL is by your OSU ID card, which also acts as a card key. The first full week of classes, I will give the EECS Main Office a list of who is in this class, so that they can enable your cards for the CGEL.
The goal of this class, at least the first part of it, is to develop your "computational thinking", that is, how to go from an idea in your head to actually writing code. It's more straightforward than you think.
None, although some memory of algebra will be helpful.
To take this course, you can't be an Engineering major.
(That includes Computer Science.)
Prerequisites
Derequisites
Professor
The class is being taught by
Professor Mike Bailey.
Office: | Kelley 2117 (2nd floor, south side) |
E-mail: | mjb@cs.oregonstate.edu |
Phone: | 541-737-2542 |
Mondays | 3:00 - 5:00 | Kelley 2117 |
Wednesdays | 1:00 - 3:00 | CGEL (Bat 244) |
Thursdays | 12:30 - 2:30 | Kelley 2117 |
or, anytime my office door is open | ||
or, by appointment -- send email |
There is no purchased textbook for this course.
Course material will consist of handouts, web pages, and notes taken in class.
You are expected to have access to a computer.
There are many student computer labs around campus.
We will work to get the right software loaded on them.
What would be really nice is if it's your own laptop so that we can work together on examples in class,
but this is not absolutely necessary.
Don't let it prevent you from taking the class.
The software will be loaded on the computers in various student computer labs,
but you will most enjoy having it on your own machines.
Here is how to do that.
Textbook
Computer
Getting Software
Programming Through the Ages | 1pp | 2pp | 4pp | 6pp |
Some Important Scratch Puzzle Pieces | 1pp | 2pp | 4pp | 6pp |
Project #1 Notes | 1pp | |||
Intro to Processing | 1pp | 2pp | 4pp | 6pp |
Running Processing | 1pp | 2pp | 4pp | 6pp |
Writing Processing | 1pp | 2pp | 4pp | 6pp |
Variables and Loops | 1pp | 2pp | 4pp | 6pp |
Drawing Arbitrary Polygons | 1pp | 2pp | 4pp | 6pp |
if-statements | 1pp | 2pp | 4pp | 6pp |
Drawing Text | 1pp | 2pp | 4pp | 6pp |
Reacting to the Mouse and Keyboard | 1pp | 2pp | 4pp | 6pp |
Transformations | 1pp | 2pp | 4pp | 6pp |
Images | 1pp | 2pp | 4pp | 6pp |
Drawing Circles | 1pp | 2pp | 4pp | 6pp |
3D | 1pp | 2pp | 4pp | 6pp |
Randomness | 1pp | 2pp | 4pp | 6pp |
De-bouncing the keyboard keys | 1pp | 2pp | 4pp | 6pp |
Polar Equations | 1pp | 2pp | 4pp | 6pp |
Arrays | 1pp | 2pp | 4pp | 6pp |
Data | 1pp | 2pp | 4pp | 6pp |
A Fairly Complete List of Processing Variables and Functions, Sorted by Name | Here | |||
A Fairly Complete List of Processing Variables and Functions, Sorted by Category | Here | |||
A Simpler List of Processing Variables and Functions | Here | |||
The Simplest List of Processing Variables and Functions | Here | |||
Processing Quick Reference Sheet | Here |
There is no required textbook for this course.
Everything will be done with free notes.
But, if you are dying to have a book,
I personally like this one:
To see an Academic Year calendar,
click here.
Class time is:
Monday, Wednesday, and Friday, 12:00 - 12:50.
Our first class will be in Owen 101.
Cancelled dates: January 18, January 21
Note: this schedule is my best guess of where we'll be when -- it is only approximate.
What if I really, really want a book?
Class Schedule
Given the size of this class, we will hold the rest of the classes in the CGEL
so that we can do live exercises together.
(The CGEL is the Computer Graphics Education Lab, and is located in Batcheller Hall 244.)
Date | Where | Topics | |
---|---|---|---|
1 | Jan 7 | Owen 101 |
Introductions.
General course information.
Computation is a solution-generating process.
Project #1.
Scratch: getting, running, screen layout, coordinate system |
2 | Jan 9 | CGEL | More Scratch: move, glide, repeat, forever, rotate, change size to, pick random, backgrounds, sounds, if <key is pressed> |
3 | Jan 11 | CGEL |
More Scratch:
arithmetic,
costumes,
set/change effects,
broadcasting/receiving,
cloning.
Variables -- the process of replacing concrete values with symbols in order to generalize a computation to work in more than one situation.. |
4 | Jan 14 | CGEL | Processing: Getting, installing, screen areas, coordinate system, menues, setup( ), draw( ), |
5 | Jan 16 | CGEL | More Processing: setup( ), background( ), draw( ), color( ), colorMode( RGB ), Color Selector, statements, rect( xleft, ytop, xsize, ysize ), variables, multiply (*), divide (/), add (+), subtract (-) semi-colons |
6 | Jan 18 | CGEL | Prof. Bailey out of the office -- no class today -- sorry. |
7 | Jan 21 | CGEL | Martin Luther King holiday -- no class today |
8 | Jan 23 | CGEL |
More Processing:
parentheses,
comments,
for-loops,
line( x1, y1, xr, y2 ),
stroke( r, g, b ),
strokeWeight( w ),
fill( r, g, b )
if-statements |
9 | Jan 25 | CGEL | Reacting to the mouse and keyboard |
10 | Jan 28 | CGEL | Work on Project #4. |
11 | Jan 30 | CGEL | Work on Project #4. |
12 | Feb 1 | CGEL |
Work on Project #4.
Groundhog Day is tomorrow! |
13 | Feb 4 | CGEL | Transformations |
14 | Feb 6 | CGEL |
Animation
Work on Project #5 |
15 | Feb 8 | CGEL |
Images
Work on Project #5 |
16 | Feb 11 | CGEL |
Discuss the Final Project.
Circles and arbitrary-sided polygons |
17 | Feb 13 | CGEL | Don't forget that Valentine's Day is tomorrow! |
18 | Feb 15 | CGEL | 3D |
19 | Feb 18 | CGEL | |
20 | Feb 20 | CGEL |
Written Final Project proposals due
Randomness |
21 | Feb 22 | CGEL | |
22 | Feb 25 | CGEL | |
23 | Feb 27 | CGEL | Data |
CGEL | . . | ||
30 | March 15 | Final Project Help session. | CGEL |
* | March 19 | CGEL |
Final Project Presentations
Tuesday, March 19,
9:30 - 11:30.
You can confirm this for yourself by going here. |
Project # | Points | Title | Due Date |
---|---|---|---|
1 | 50 | Creating a 2D animation using Scratch! | January 14 |
2 | 50 | Draw Something Cool in 2D using Processing | January 21 |
3 | 100 | Draw Something Cool in 2D using Processing and for-loops | January 28 |
4 | 100 | Simple Painting Program | February 4 |
5 | 100 | Simple Animation using Transformations | February 11 |
6 | 100 | 3D Animation using Transformations | February 20 |
7 | 100 | Add Noise to Your Simple Painting Program | February 27 |
8 | 100 | Polar Shapes | March 8 |
FP | 100 | Final Project | March 18, noon, no BDs |
Project Turn-In Procedures
As {John Lennon? Allen Saunders?} has said: "Life is what happens to you while you're busy making other plans". I care about you as a person. When life happens to you, send me an email and come see me. I might be able to help, I might not. But I surely can listen. You are not alone.
Projects are due at 23:59:59 on the listed due date, with the following exception:
Each of you has been granted five Bonus Days, which are no-questions-asked one-day project extensions which may be applied to any project, subject to the following rules:
Click here to get a copy of the Bonus Day Submission Form. Fill this out and turn it in the next class period after turning in your project.
Accommodations for students with disabilities are determined and approved by Disability Access Services (DAS). If you, as a student, believe you are eligible for accommodations but have not obtained approval please contact DAS immediately at 541-737-4098 or at http://ds.oregonstate.edu. DAS notifies students and facult'ay members of approved academic accommodations and coordinates implementation of those accommodations. While not required, students and faculty members are encouraged to discuss details of the implementation of individual accommodations.
Oregon State University strives to respect all religious practices. If you have religious holidays that are in conflict with any of the requirements of this class, please see me immediately so that we can make alternative arrangements.
Any student who has difficulty affording groceries or accessing sufficient food to eat every day, or who lacks a safe and stable place to live, is urged to contact the Human Services Resource Center (HSRC) for support: hsrc@oregonstate.edu, 541-737-3747. The HSRC has a food pantry, a textbook lending program, and other resources to help. Furthermore, if you are comfortable doing so, please notify me. I will do everything I can do to help you.
Grades will be posted through this web page.
To protect your privacy,
they will be posted by your alias that you give me in the web form.
Click here to see the current grade posting.
CS 419ab will be graded on a fill-the-bucket basis.
There will be 8 projects, 11 quizzes (weeks 0-10), and one presentation.
You get to keep all the points you earn.
... with the exception of Quiz #0:
Quiz #0 is due to me by 4:00 PM on Friday, January 11.
Fortunately, it is not too hard:
Your final grade will be based on your overall class point total.
Based on an available point total of 910,
grade cutoffs will be no higher than:
Grading
The quizzes will be done via Canvas.
They will open each Friday afternoon at 1:00 and close Sunday night at 23:59:00.
Canvas is very unforgiving about due times -- don't push it.
Points | Grade |
870 | A |
840 | B+ |
810 | B |
780 | C+ |
760 | C |
730 | D+ |
710 | D |
University Classes | |
Computer Graphics Shaders | |
Scientific Visualization | |
Parallel Programming | |
CS Skills for Simulation and Game Programming | |
Vulkan |
Grades 4-12 Outreach | |
Scratch | |
SketchUp | |
Blender | |
TinkerCad | |
Processing |
For more information, contact:
Professor Mike Bailey
Kelley 2117 (2nd floor, south side, overlooking the Milam dumpsters)
mjb@cs.oregonstate.edu
http://cs.oregonstate.edu/~mjb/cs419ab