Class+Workspace+2011-2012

=Class Workspace= This is where you can find the work that we will do every day in class. If you miss a class, look here to find out what you missed and ask a friend to help fill in any blanks.

Make a name card for yourself. Get on the wiki and fill out this survey: https://docs.google.com/a/logoscambodia.org/spreadsheet/viewform?hl=en_US&formkey=dFNFQmlVcVdYNTc4YVBWS2pRTFlYcVE6MQ#gid=0 We will have a quick intro to the course followed by a paper tower building competition! If we have time, we will discuss design.
 * January 10, 2012**

We learned about Problems and brainstorming. In groups, we brainstormed a problem and created at least 30 possible solutions.
 * January 12, 2012**

We will learn about moving from Brainstorming to prototyping by watching a movie about an organization called IDEO. Then, we will learn about project management techniques. Here are the project management questions: Answer these questions using the links provided (and any other resources). We will be using these techniques during the course (Gantt charts and WBS's mostly).
 * January 16, 2012**

We will finish the movie about IDEO and finish the slides on design. A potential project is coming! (Details to follow in a later class...) Then, we will start learning about Computers by looking at hardware and software.
 * January 18, 2012**

If we have time, we will start looking at Flash (just a very basic intro today!)

Since we had a power outage, we talked about pseudocode, practiced making some pseudocode algorithms with different scenarios, and then started the project on design.
 * January 20, 2012**

Start by playing LightBot: media type="file" key="light-bot-2205.swf" width="507" height="507" Then we will talk about the project, which we will have time on Thursday to work on:
 * January 24, 2012**

Then we will move into Flash!

Miss Hines is sick today, so you will have time to work on your project on your own. When you have finished your project, or you get to a point where you are stuck, you may work on this document: (Yes, it does use Wikipedia again. Yes, I know that Wikipedia is not a great source for research papers.) This is not homework, but we will work on it together next class.
 * January 26, 2012**

If you finish all of these questions, you can play around in Flash (see what else you can do with the trace command, or try to figure out how to make animations), or you may play LightBot. If you're itching to do some programming, you could also sign up for this website: @http://www.codeacademy.com. It's not ActionScript, but the concepts are similar!

We worked on our projects for the first half of the class. Then, we learned about data types (int, Number, Boolean, String).
 * January 30, 2012**

We worked on our projects.
 * February 1, 2012**

We will work on our projects for 10 minutes or so. Then we will have show-and-tell about our prototypes. After this, we will learn about variables and components in ActionScript.
 * February 3, 2012**

Today we will review variables, learn about GUIs and build our own GUI. Read over (and try) the GUIs and ActionScript Interfaces Tutorial. If you finish, try Programming Task 1.
 * February 13, 2012**

You will have your first quiz on Friday. Topics for the quiz include: -What's in the Lab? (hardware/software activity) -Flash basics up to variables (parts of the Flash window, trace command, commenting, math operations including %, data types and variables)

Warm-up Questions: 1. What is the output of the following? code format="actionscript3" var animal:String = "elephant"; trace(animal); animal = "giraffe"; trace(animal); animal = "turtle"; animal = "frog"; trace("My favourite animal is: " + animal); code 2. What is the result of the following? code format="actionscript3" var magicNum:int; magicNum = 5; var calc:int = (magicNum *2)%7; trace(calc); trace(calc*3); code 3. If I inserted "trace(calc)" after this code, what would it print out?
 * February 15, 2012**

After the warm-up, you may work on Assignment 1 and the GUIs tutorial for a few minutes. If you are done, you may study for the quiz by trying the practice quiz and reviewing your notes.

After this, we will start to look at Decision Making (a.k.a. Branching). If we have time, we will create another program.

Here are the answers to the practice quiz:

Today, we will start by handing in our Planet Age programs. Then, we will create a mad-lib program to practice using interfaces.
 * February 21, 2012**

Then, we will work on Branching (a.k.a. Decision Making). After this, we will make a txt-message converter!

We will start with a quick discussion about coding conventions and whitespace.
 * February 23, 2012**

Your task is to make a translator for your parents who may or may not understand text messaging lingo (a.k.a. txtMsg). If the message that you type into the input box is on the list below, then the English translation should appear in the output box. If it is not on the list below, then the original message should appear in the output box. Here is an example of what it should look like: (This example works as expected.) media type="file" key="textMessage.swf" width="396" height="396" If you finish this, you can start on the next programming task, the BMI Calculator.
 * txtMsg || English ||
 * lol || Laugh out Loud ||
 * jk || Joking ||
 * :-) || I'm happy ||
 * lis || Logos International School ||
 * cu || See you ||
 * l8r || Later ||
 * ttyl || Talk to you later ||
 * :-P || Sticking out my tongue ||
 * ty || Thank you ||

We will start with 20 minutes or so to work on the BMI Calculator. This assignment is due on Friday. Then, we will take up Quiz 1. After this, we will discuss Logic and Truth Tables. You will need to do the exercises throughout these slides.
 * February 27, 2012**

If we have time, we will discuss Strings!

February 29, 2012
We will have some time to work on your BMI Calculator. Then we will discuss Strings!

March 2, 2012
Today we will finish up with Strings after a few minutes of working on the BMI Calculator. If you are done your BMI Calculator, you can try to design a MadLibs interface like this: media type="file" key="MissHinesMadLib.swf" width="360" height="270" You may have any parts of speech that you choose. If you need some ideas for better stories, check out: @http://www.eduplace.com/tales/

Done the interface? Create your story! Trade with a friend! Load your story onto the wiki (Miss Hines will tell you where...) See if you can use what we learned about Strings to do a bit of error checking (for example - check that the person entered something in every field.)

Marking: This assignment will be marked for completion. I will take a look at your code and give you suggestions for future programs. (Mark out of 10 for completion.)

Done? Try this challenge: Write a name scrambler. Switch the first two letters of your first and last names, and add "aaa" to the end of your first name and "ooo" to the end of your last name. Example: James Smith becomes Smmesaaa Jaithooo.

March 6, 2012 Task 1: Finish your MadLibs program. It needs to be finished ASAP! Task 2: Join the wiki. Click on the link at the top of this page. Ask Miss Hines to approve your membership. Task 3: Add your MadLib to the wiki. Save your .fla file with you name in it (like "Jane Madlib.fla") and then run the program in Flash. Go to the MadLibs Show and Tell page and click Files. Then, upload your .swf file (like "Jane Madlib.swf") and click on it's name. Make it bigger and choose Save. Task 4: Try out your classmates MadLibs. We'll vote for the best one and the winner gets a roll of Oreos. Task 6: Done? See if you can figure out how Poke the Penguin works.

After everyone has basically finished Task 1, we will talk about Math and random number generators. Then we may build a quick game together!

Today: Task 1: Add your MadLib to the wiki, if you have not done so yet. Done? Try this challenge from last time: Write a name scrambler. Switch the first two letters of your first and last names, and add "aaa" to the beginning of your first name and "ooo" to the end of your last name. Example: James Smith becomes aaaSmmes Jaithooo You don't need an interface - here's the start to the code: code format="actionscript3" var fName:String = "James"; //change to your name var sName:String = "Smith"; //change to your name //write code here to scramble your name and trace //the result code After this, we will talk more about random numbers!
 * March 13, 2012**

We will finish the clicking game that we started last class. Then, we will start working on the Guessing Game Assignment. Here is the provided interface - you may create your own, but it must be named appropriately. Feel free to modify anything about this interface (especially the fonts/colours). If you finish the guessing game assignment, you should see if you can add an "Easter Egg" (hidden feature). These are worth bonus marks!
 * March 15, 2012**

We will work on our GuessingGame program after looking at all of the MadLibs. Vote for your favourite MadLib [|here]!
 * March 20, 2012**

The Guessing Game should be something like: media type="file" key="GuessingGameExample.swf" width="394" height="394" Guessing Game Assignment Specifications:

Guessing Game Marking Scheme: 5 marks – Pseudocode is written in English in a code-like structure (not code). Pseudocode is concise, but can be turned into code easily. 10 marks – Code interacts with interface as expected. Interface looks professional. All required components are present on the interface and any new components have been named appropriately. Any pictures used on the interface have been cited **on the interface**. Full sentences are not required, but all output must be professional. (For example “Too high” is ok, but “You suck” is not.) No output appears in the Flash output box (no trace statements). 5 marks – The secret number is chosen randomly and is between 0 and 100. The computer can accurately state whether the user’s input is too high, too low, or that the user has guessed correctly. 5 marks – The number of guesses correctly counts down until the user runs out of guesses. 5 marks - Code is easy to read (whitespace/indenting are used appropriately) and variable names are appropriate. Variables are used appropriately to store data. 5 marks - The following items are in comments: Name is at the top of the program, Brief description of the program is at the top of the program, comments are given throughout the program to explain how the program works. 5 marks – Description of limitations/extensions is provided. Bonus: At Miss Hines’ discretion, bonus marks may be awarded for additional enhancements made to the program. Total /40 marks
 * March 27, 2012**

**Reminder: Quiz on Thursday**. Topics for the quiz: Strings (on wiki), Random numbers (on wiki), Using the Math class (PPT), if-statements (PPT), converting data types (briefly on wiki). Practice Quiz - Practice Quiz Answers -

Today we will briefly look at the practice quiz, and then we will learn about Flowcharts. After this, we will learn about Loops!

We will start with any questions that you have from the practice quiz. Then, we will take the real quiz. After the real quiz, try to solve this problem: Using String methods, try to find the **first** "e" in a word. Here is some code to get you started: code format="actionscript3" var inputWord:String = "need"; //write your code here code In the above example, the first "e" is found at index 0. If you solve this, try to write code that can find the "e" whether it is a capital "E" or lower-case "e."
 * March 29, 2012**

You can also create an interface to take in word from the user and outputs the position of the first "e" in the word.

We will extend this code together to make a program that counts the number of "e's" in a word.

(If you're interested in how this is useful - this is the start to how a search engine, like Google is created!)

We took up the quiz from the previous class and worked on the "e" counting problem. Then we learned about for loops (slides on the transfer drive).
 * April 2, 2012**

We will start by finishing the for loop slides. Then we will create a coin flipping simulation to look at how many times heads comes up vs. tails. After we do this, we will learn about types of errors (slides on the transfer drive).
 * April 4, 2012**

We finished the error exercise after doing a warm-up problem. A bonus problem was also given.
 * April 6, 2012**

We will learn about Functions, our last major topic in the course. We will also talk about the final project. Phase 1 will be due April 26 - so ask any questions now or by email (lhines@asianhope.org). You do not need internet (or a computer, actually!) to complete Phase 1.
 * April 18, 2012**

We will have a guest speaker, Mr. Cooper, who will speak to us about electronic chips. Completely out of ideas for the final project? If you have thought, and thought and thought and you've got nothing, check out this book: [] It's written for Python (a different computer language), but it has a few ideas for some games and you could use their ideas to create similar games in ActionScript (Flash).
 * April 20, 2012**

April 24, 2012 We will do more work with functions. Here is the chart for calories burned: []

April 26, 2012 Phase 1 of the final project is due today! We will (hopefully) finish up functions today so we can focus entirely on the final project.

April 30, 2012 We will tie up any loose ends with functions or other topics and hopefully have some time to work on the project.

May 2, 2012 You will have time to plan out your project. (Phase 2)

May 4, 2012 (Star Wars Day) You will have time to work on your project (Phase 2)

May 8, 2012 Clean up any additional topics day Phase 2 is due!

May 10, 2012 Final project work day (Phase 3)