Computer Science - Fall 2012 - Alice/Java - Multimedia

Mr. Bujak


In an effort to be totally transparent and to support students 24/7/365.25, this volunteer-maintained and optional area is meant to be a collection of reflections and an activity log for computational and algorithmic thinking discussed and practiced during the Fall 2012 semester "Introduction to Computer Science" 0.5 credit elective course at Hope Charter High School. Applicable resources are also posted with each assessment in Power School Gradebook.

2012-2013 Semester 1 (Fall) Computer Science Syllabus

Computer Science course material (Google Drive) - also co-hosted on the \\hcsweb\filesharing HOPE shared network drive

HOPE Charter School calendar


Textbook:
Learning_to_Program_with_Alice.3rd_edition.Dann.Cooper.Pausch.jpg Exploring_Wonderland.Dann.Cooper.Ericson.jpg Programming_with_Alice_and_Java.Lewsi.DePasquale.jpg

We shall not use one specific textbook, but several resources for this Computer Science class, but not limited to these.
  1. Pearson site
  2. Wonderland Project Website
  3. Alice and Media Computation in Python

All assignments will also have a reference link here in the applicable PowerSchool Gradebook daily assignment description.

We will also have outside readings throughout this semester course. Some will be handouts from various books (such as the above), other will be books that are stories related to computer science. The following are some outside reading, some available online and/or downloadable:


• Daily Course Links

Date
Concept/Topic
Warm-up
Teacher Notes
Handout(s)
Project
handout,
images, video
Supportive Artifacts
could be used to learn more and explore this topic)




























6/1


Review and makeup



5/31


Review and makeup



5/30
Arrays, ArrayVisualization class, swap

Read handout and demonstrate to Mr. Bujak the functionality of arrays by manipulating the ArrayVisualization class, filling in the array, visually manipulating the array, and manipulating the array elements with a swap of 2 elements.
Do the example of manipulating the array and the array elements.
Section "10-2 An array visualization using an index variable" from Learning to Program with Alice, 3rd Edition


5/29
Advanced Variables,
object variables,
accessor functions (get/set)

Read handout and demonstrate to Mr. Bujak the functionality of object variables with accessor functions to get and set these object variables.

Do the example of visually displaying a count-down timer that can be used in any game or animation.
Section "10-1 Variables" from Learning to Program with Alice, 3rd Edition


5/28


Memorial Day Holiday



5/25
list creation, searching,
matching, indexing, and manipulation,
event processing

Game: Pop the Balloon (continued)
Chapter 9
Game: Pop the Balloon
7. Game: Pop the Balloon
5/24
list creation, searching,
matching, indexing, and manipulation,
event processing

Game: Pop the Balloon (continued)
Chapter 9
Game: Pop the Balloon
7. Game: Pop the Balloon
5/23
list creation, searching,
matching, indexing, and manipulation,
event processing

Game: Pop the Balloon
Chapter 9
Game: Pop the Balloon
7. Game: Pop the Balloon
5/22






5/21
list creation, searching,
matching, indexing, and manipulation,
event processing

Frog Crossing the Pond (continued)
Chapter 9
Frog Crossing the Pond
3. Frog Crossing the Pond
5/18


Junior & Senior Prom



5/17
list creation, searching,
matching, indexing, and manipulation,
event processing
WU
Frog Crossing the Pond
Chapter 9
Frog Crossing the Pond
3. Frog Crossing the Pond
5/16
list creation, searching,
matching, indexing, and manipulation,
event processing
WU
Follow the Leader (continued)
Chapter 9
Follow the Leader
4. Game: Follow the Leader
5/15
list creation, searching,
matching, indexing, and manipulation,
event processing
WU
Test:
Chapter 9: Lists and List Processing

Follow the Leader (continued)
Chapter 9
Follow the Leader
4. Game: Follow the Leader
5/14
list creation, searching,
matching, indexing, and manipulation,
event processing
WU
Follow the Leader
Chapter 9
Follow the Leader
4. Game: Follow the Leader
5/11
QUARTER 1 INTERIM





5/10
dynamic list addition,
list one item at a time, events
WU
Casting a Beach Scene3r2rw
wChapter 9
Casting a Beach Scene
4. Casting a Beach Scene
5/9
list search, events
WU
Whack-A-Mole
Chapter 9
Whack-A-Mole
X. Whack-A-Mole

List searches (Whack-a-Mole):
www.youtube.com/watch?v=ZVLkP5EuKyk&feature=channel&list=UL
5/8
static list creation/addition,
list iteration: all together
OR one at a time
WU
Spring Flowers
Chapter 9
Spring Flowers
3. Spring Flowers:
www.youtube.com/watch?v=lAuRP-8exkM
5/7
List creation,
list iteration: all together
OR one at a time, events

Why Did the Chicken Cross the Road?: Recursion, Multiple Events, Collision, Proximity - Day 2
Chapter 9

Collision detection using threshold and lists:
www.youtube.com/watch?v=2gstaiVGqkk-

List creation (Rockettes Dancers):
www.youtube.com/watch?v=R38XsMynod0

Intro to Lists:
www.youtube.com/watch?v=f-65GaMSczg
5/4
List creation,
list iteration: all together
OR one at a time, events
WU
Why Did the Chicken Cross the Road?: Recursion, Multiple Events, Collision, Proximity - Day 1
Chapter 9


5/3

WU
Never Ending Slide Show



5/2
Recursion
WU
Click-A-Cow



5/1






4/30


Fog and Texture Maps


Texture Maps:
www.youtube.com/watch?v=R38XsMynod0

www.youtube.com/watch?v=ujJJ8BRI-Ho




















Recursrion (Midas Touch):
www.youtube.com/watch?v=MYJHwranebE

factorial - recursive vs iterative case:
www.khanacademy.org/science/computer-science/v/
comparing-iterative-and-recursive-factorial-functions

factorial -recursive case:
www.khanacademy.org/science/computer-science/v/
recursive-factorial-function

factorial function - Iterative case:
www.khanacademy.org/science/computer-science/v/
defining-a-factorial-function

recursive drawing (IFS fractal drawing):
http://recursivedrawing.com

Loops and If/Else:
www.youtube.com/watch?v=SFLY7M7dQsE
4/27






4/26






4/25


PSSA Testing



4/24


PSSA Testing



4/23


PSSA Testing



4/20

WU




4/19


PSSA Testing



4/18


PSSA Testing



4/17


PSSA Testing



4/16


PSSA Testing
HW due - 4 chapter 7 questions



4/13

WU




4/12

WU




4/11

WU




4/10
Functions & If/Else
WU


Game: Save
the Lunch
Lady
3. Game: Save the Lunch Lady
Create a game where the goal is to save ...
.
4/9
START OF QUARTER 4
Conditionals: If/Else





3/30
END OF QUARTER 3





3/29






3/28
Built-in Functions

random

Spinner
15. Spinner
Create a spinner that can be used in playing games. Add four quarterTorus figures (Shapes and connect ...
.
3/27
Functions
WU
vehicle, user created realisticRoll

Adding
Acrobats
to the Rolling Ball
1. Adding Acrobats to the Rolling Ball
Begin by creating the rolling ball as presented in ...
3/26






3/23






3/22

WU


Alice Piano
5. Alice Piano
In this project,m your goal is to create a keyboard that plays notes when you click on keys. ...
Sound files of piano notes supplied on the shared network drive \\hcsweb\filesharing
3/21

WU


Alice Drum Set
1. Alice Drum Set
In this project,m your goal is to create an interactive drum set by using subparts of objects defined in the gallery. ...
Sound files of drum sounds supplied on the shared network drive \\hcsweb\filesharing
3/20






3/19






3/16






3/15


Events & Event Handlers
isVisible, opacity

Cheshire Cat

Snow Festival
7. Cheshire Cat
Consider the Cheshire cat (Animals) from the Alice in Wonderland books. Sometimes, the cat would disappear, leaving only his grin. ...

11. Snow Festival
Your team has created a snowman as the centerpiece of an entry in the Winter Snow Festival competition.
.
3/14

WU
Events & Event Handlers

Typing Tutor

Meet the Water Molecule
4. Typing Tutor
Learning to type rapidly is a skill requiring much ...

5. Meet the Water Molecule
In this exercise, your goal is to create a water molecule and have it float in your world. ...
.
3/13

WU
Events


3. Robot Remote Control
The world for this exercise is similar to the First Encounter world in ...
3/12






3/9

WU




3/8






3/7

WU
vehicle

Hand Ball
2. Hand Ball
Create a world with a right hand (People) holding a ...
.
3/6






3/5

WU
Using input, output, world function


Have 3 object in the world.
One object will ask you to input the length ... Calculate the hypotenuse
with a calcHypotenuse() function that you wrote. ...
.
3/2


User object-level methods with parameters

Lock Combination
10. Lock Combination
Create a world with a comboLock (Objects folder). Create four class-level methods
--- leftOne, rightOne, leftRevolution, and rightRevolution ---- that turn ...
.
2/28

WU




2/27






2/24






2/23

WU




2/22
Object movement and
user World methods
WU
vehicle

Gallup and Jump
3. Gallup and Jump
Kelly (People) has entered an equestrian show as an ...
2/21






2/20


NO SCHOOL - Presidents' Day



2/17






2/16
Object movement and
asSeenBy built-in function
WU
asSeenBy

Blimp and Dragon
Blimp and Dragon
Create a scene as shown below with a blimp (Vehicle) and a dragon
(Medieval). ...
2/15
Scene Editor,
Object movement,
and height function
WU


Hop
3. Hop
Create a world with a crate (Object) and a kangaroo (Animals). ...
2/14






2/13

WU




2/10
Scene Editor



Snowpeople
3. Snowpeople
Create a snow people world ...
.
2/9






2/8






2/7






2/6






2/3






2/2


scanned teacher class pages from
document camera



2/1


THIS IS AN AREA TO COLLECT GREAT VIDEOS; WILL BE ORGANIZED LATER.
Lists:
http://www.youtube.com/watch?v=f-65GaMSczg

Events:
Part 1: http://www.youtube.com/watch?v=Eb0GbV7t4pM
Part 2:
http://www.youtube.com/watch?v=nwgm7Z5uOKs
Part 3:
http://www.youtube.com/watch?v=cnJ7GqrMKIc

















..CURRENT WEEK (BELOW)..



9/28






9/27






9/26






9/25






9/24






9/21
AliceLiddell and WhiteRabbbit

Mr. Bujak out sick

Finish AliceLiddell and WhiteRabbbit (2-sided single-sheet handout with detailed instructions and detailed illustrations provided on 9/20). As always, personally email me your individual work to ebujak@hopecschool.org
.
Chapter 1 English sentence responses to Chapter 1 Guideline due today. Mr Bujak out sick. All homework is due the next school day. This will be collected 9/24.


9/20

WU
Start AliceLiddell and WhiteRabbbit (2-sided single-sheet handout with detailed instructions and detailed illustrations provided on 9/20). We will pick this up tomorrow.
.



9/19

WU

  • Copied handout of Chapter 1
  • Chapter 1 Reading Guideline (explicit and exact directions) due 9/21.
  • 2-sided single-sheet with project work that is independent of class on topics listed on page. Students must present October 1-5.with guidelines and rubric presented on handout..


9/18

WU




9/17

WU




9/14
Scene Editor
WU
Students work in pairs to continue to explore the Alice IDE and set up initial scenes with one-offs (no programming today).
copy of Chapter 1 page with exercise #3

copy of Chapter 1 page with exercise #6
Chapter 1 #3 Side-by-Side Stacked Snowpeople

Chapter 1 #6 underwater scene, explore world properties
http://voicethread.com/#q+alice.b66261
9/13


Emergency

Emergency half day (plumbing). School dismissed early during 4th period. No 7th period CS class.
.
no class

no class
9/12

WU
Mr. Bujak created a world and demonstrated: Loop construct, do Together construct, set Point of View To method, vehicle property
.

signed syllabus due 9/12

9/12






9/11
Scene Editor, minor sequential programming

snowMan and snowWoman interaction: students program interaction as scenario outline in handout with detailed instructions
.



9/10
Scene Editor
WU




9/7

WU




9/6
IDE





9/5
IDE





9/4
organizational logistics

syllabus

grading

make-up
.

index card: guess person
Explain syllabus, procedures, code of conduct, grading.

syllabus

make-up (for excused absences): "Guidelines for Students Making Up Work After Absence or Suspension" (Make-up Policy09-10.doc 09/10/2010)
syllabus handed out, back sheet of the signed syllabus due 9/12/2012


PROCESS THESE:

Alice videos/resources on Web:
Snowman and 2 snowwomen - http://voicethread.com/#q+alice.b66261.i342836
http://voicethread.com/#q+alice

http://birdiechamp.wordpress.com/2012/01/08/first-animation-using-alice/

http://www.makeuseof.com/tag/10-tools-to-get-kids-excited-about-programming/ - very nice article and review




link to all course Alice files posted on mediafire.com
"world" is an Alice 2..2 world file (.A2W) with the initial scene and object set up - students need to "write" the code.

11/4 - Chapter 5 - Event handlers with parameters (2 mini-projects): Snow Person and H2O molecule
11/3 - Chapter 5-2 - Parameters and event handling methods - Zeus (GreekTragedy) world
11/2 - Chapter 5-2 - Parameters and event handling methods - LightsOut world, Zeus (GreekTragedy) world
11/1 - Chapter 5-1 - Interactive programming - Biplane world

Started 10/03 Princess, Dragon, and Knight project:
Part 1 (10/03): Objects in an Alice World - PDF - 2 slides/page (backup), PDF - 4 slides/page (backup)
Part 2 (10/07): Teaching a Dragon to Fly - Methods & Properties - PDF - 2 slides/page (backup), PDF - 4 slides/page (backup)
Part 3 (10/11): A Knight Comes Riding In - Cameras & Events - PDF - 2 slides/page (backup), PDF - 4 slides/page (backup)
Part 4 (10/12): Breathing Fire - Adding Effects to Alice - PDF - 2 slides/page (backup), PDF - 4 slides/page (backup)
resource files: stage-curtain1.jpg, forest-1.jpg, creature_roar2.wav

Guidelines for mandatory project submittal via email and and .A2W attached file (or more):
  1. email individual work to ebujak@hopecschool.org
  2. Your Alice code MUST include comments including the first two lines of your first method, such as:
    • Name: James Wanabee
    • Date: October 3, 2011
  3. Spell out your complete name first and last names.
  4. Spell out the complete month with the day and year.
  5. You must name your Alice world file as such:
    • 'Project Name.Your first name Your last name.A2W'
    • such as: 'Rolling Ball.James Wanabee.A2W
  6. email individual work to ebujak@hopecschool.org

• Student Resources


• Videos


• Tutorials


• Finch robot


• Sorting


• Project Ideas


• More great CS stuff


• Other Computer Languages/Environments for Learning Computer Science (CS)

  • Scratch - MIT Media Lab
  • Hackety - based on Ruby language
  • Processing - used in Spring 2011 Computer Science Course at Hope Charter High School
  • CodeNow - Help Kids learn programming
  • Code Avengers - an interactive online resource that teaches app development to high school students in a fun and effective way. Lessons include coding challenges, games, quizzes, and projects that contain minimal test, so students learn the "hat" and "why" by completing carefully sequenced tasks, rather than by reading lengthy explanations. Phone Apps, Javascript, HTML, and CSS.
  • CodingBat.com - online coding practice - Java and Python

• Browser-based (no computer installs) Computer Languages/Environments for Learning Computer Science (CS)

  • Khan Academy - computer science - looks much like the Processing language
  • Codeacademy - is the easiest way to learn how to code. It's interactive, fun, and you can do it with your friends. - JavaScript, Python, Ruby, HTML/CSS
  • CodeInTheBrowser.org - just that: coding in the browser - variant of JavaScript. Labs for teaching the essential qualities of computers using little snippets of code in the browser.
  • I D E . P H P- code in the browser with: PHP, html, shtml, cgi, or jsp

• Block (drag-n-drop) Programming Languages/Environments for Learning Computer Science (CS)

  • Alice - an innovative 3D programming environment that makes it easy to create an animation for telling a story, playing an interactive game, or a video to share on the web.
  • Scratch - MIT Media Lab - Create and share your own interactive stories, games, music, and art.
  • Snap! - aka Build Your Own Blocks - BYOB, Berkeley - An extension of Scratch that allows users to create procedures, create multi-dimensional lists, perform recursive calls, and much more while still using a drag-and-drop visual IDE.
  • Kodu - build games, play games, share games.
  • Google Blockly - is a graphical tool for designing and testing simple web applications.
  • MIT App Inventor - ceate Android Apps
  • Hackety - based on Ruby language, read a great review at http://blog.acthompson.net/2012/12/hackety-hack-for-learning-ruby.html
  • Programming with Blocks - great article and survey of blocks languages
  • Stencyl - create iOS and Flash games with Stencyl (extension of Scratch and BYOB)

• Java

  • Processing - Processing is an open source programming language and environment for people who want to create images, animations, and interactions. Also a great language for Arduino programming! Used in Spring 2011 Computer Science Course at Hope Charter High School
  • Eclipse IDE - A popular, open source (free) IDE. See wikipedia for further details.
  • DRJava - Java IDE that allows lines of Java to be run interactively
  • BlueJ - Java IDE that shows a project as a UML class diagram
  • Netbeans for BlueJ - The collaboration of the NetBeans and BlueJ teams has resulted in the development of a new version of NetBeans: NetBeans IDE BlueJ Edition

• Language Types


• MIT AppInventor - to program Android Apps

• Calendar of External Events


• Organizations

  • NCWIT - National Center for Women and Information Technology
  • CSTA - Computer Science Teachers of America
  • ACM - Association for Computing Machinery
  • SIGCSE - ACM Special Interest Group on Computer Science Education

• Other