Welcome to Mr. Wong's Info Tech 11/12 Class!

Click for Course Outline 2015-16 and Intro.  We are working on iMacs.  Watch this video to get started with iMacs.

To parents who did not get the parent info form from your child, you can print out a copy and send it to me.

Blender

To maximize marks, be creative and put your own spin on the shape, colour, textures, and other ideas into your work!  Here is a link for downloading Blender, we are using version 2.77, or click here to get the latest version.

Chapter 2

Click here if you want to download the book.  Here are the links for more hotkeys 1 and 2.

  • Click here if you want to download Blender.
  • Click here for the video on basic navigation - Chapter 2.  Make sure you check the mouse settings on the Mac before starting Blender!  Please save to Documents, then back the file up to your HomeFolder - saving directly to HomeFolder can cause Blender to crash!

Here is the chapter 2 rubric.

Chapter 3

There are some basic conventions that you should understand to help you orient yourself.  The positive x-axis is red, the positive y-axis is green, and the positive z-axis is blue.  The positive z-axis is up, the positive y-axis is looking forward.  This will help with the numpad keys for views.  Knowing the axes will also help you with constraining mouse transformations or numeric transformations.

Please call me over to see your work when you have completed the logo.

After proceed with the lighthouse and call me over when it is complete.

Here is the chapter 3 rubric.

Chapter 4

We continue with the lighthouse/landscape project. Materials are okay for some objects, but to make things look more realistic, you need to learn how to use textures.  They can be images or algorithmic.  The textures can be used for coloring, but they can also affect the shape of an object.

Please call me over to see your work when you have completed the landscape.

Here is the chapter 4 rubric.

Chapter 5

We continue with the lighthouse/landscape project. It is difficult to draw a whole world. World effects make your scene blend into a simple world so that your scene doesn't end abruptly.

Please call me over to see your work when you have completed the world effects.

Here is the chapter 5 rubric.

Chapter 6

We continue with the lighthouse/landscape project. Not everything in your world is a reflection of light sources. Occasionally, you will need something in your scene that emits light.

Please call me over to see your work when you have completed the light effects.

Here is the chapter 6 rubric.

Chapter 7

Please do chapter 7 but there is no mark.

Chapter 8

Basic rendering will make your scene look good, but ray tracing will add more realism to your scene. Use it wisely, because ray tracing will add to the rendering time.

Chapter 9

We continue with the lighthouse/landscape project. This is a computer animation course, so time to animate! This lesson will teach you how to quickly create animations using key frames. Rather than animating every single frame, we set key frames and let the software figure out the in-between frames to draw.

Chapter 10

This is another new project.  You will create 3D text on a path or curve.  The lesson shows you how to do everything except making a movie.  Please make a movie of your final product.

Chapter 11

This is another new project.  You will create a lava lamp and animate it.  This lesson goes over previous concepts such as extruding, materials, texturing, transparency, lighting, and duplicating.  The new concepts are modelling with nurbs and how to create a looping animation.

Chapter 12

This is another new project.  You will create a series of animations and objects using modifiers.  The key to animation modifiers is not to click "Apply".  You will need to use previous concepts to properly use materials and textures to make the scene look good.  You do not need to make the scene loop.  Make a video that is a minimum of 6 seconds.

Please complete the remaining chapters by reading from the book.

Programming

Additional resource:  Here are some programming instructions from the University of Waterloo; please note the follow a different order.  Before downloading Eclipse, you need to download the Java SDK.  Install it, then download Eclipse - Eclipse has an installer now, so it's very easy to install.

Chapter 1 - PDF Lesson - Rubric

Chapter 2 - PDF Lesson - Rubric

Chapter 3 - PDF Lesson - Rubric

Chapter 4 - PDF LessonRubric

Chapter 5 - PDF Lesson - Rubric

Chapter 6 - PDF Lesson - Rubric

Chapter 7PDF Lesson - Rubric

Chapter 8PDF Lesson - Rubric

  • Video Lesson Part 1Java Specific Video, Xcode Specific Video
  • Video Lesson Part 2Java Specific Video, Xcode Specific Video
  • Video Lesson Part 3

Chapter 9 - PDF Lesson - Rubric

  • Video Lesson Part 1Java Specific Video, Xcode Specific Video
  • Video Lesson Part 2Java Specific Video, Xcode Specific Video
  • Video Lesson Part 3Java Specific Video, Xcode Specific Video

Final Project - PDF Lesson - Rubric

Old Coding


Old iOS Course

Native Data Types - This video shows you some information about native data types.

Object Oriented Design - This video lesson gives you a background on object oriented design.  It is the basis for the libraries in Java and iOS.  Understanding this will go a long way in helping you use these libraries.

Research Assignment 2 - There is no hard deadline.  Click here to download the Word description.  Click here to download the Word rubric.

Design Assignment 1 - There is no deadline set yet because xCode has not been installed, so the deadline is TBA.

Xcode without Storyboards Assignment 1

Basic Coding Assignment 1

This assignment will teach you how to use variables, methods, looping, arrays, and animation.  The descriptions are in the zip file as well as the framework for you to work with. 

Xcode without Storyboards Assignment 2

This furthers your knowledge about using my framework by creating an 8 Ball app.  You will learn more about looping, arrays, UI, animation, and file operations.  The descriptions are in the zip file as well as the framework for you to work with.

Design Assignment 2

If you are stuck for your own idea, you can make a sound box app.  You should have at least 2 different screens for sounds.

One sound screen can be a drum kit.  So find drum samples and hook the sounds to the proper portion of the image.  If you want to make it fancy, have that portion of the image highlight.

Another screen can be car sound effects.  I'll let you use your imagination for that one.

Add more sound effect screens if you want a better mark.  Be creative and logically group sound effects for each screen.

If you want to publish this app on iTunes, make sure that you don't have any copyright materials.

Feel free to use my framework or storyboards to make this app.
 


Old Java Course

Native Data Types - This video shows you some information about native data types.

Object Oriented Design - This video lesson gives you a background on object oriented design.  It is the basis for the libraries in Java and iOS.  Understanding this will go a long way in helping you use these libraries.

Java Assignments - Please start with chapter 2 posted on "Shared:/student resources/IT 11/Java HTP/" and go as far as you can.  Do the self-review exercises in each chapter to make sure you understand the concepts; see me if something is unclear.  You should choose exercises that are challenging FOR YOU; this will increase your learning and skills.  DON'T pick easy exercises just to get to the next chapter.

Native Data Types - This video shows you some information about native data types.

For every exercise, please insert the following comments at the top of every file:

  • // ICT 11/12 - your name
  • // Exercise #
  • // Date

Chapter 2 - Here is a video covering the basics of this chapter.

Here are some extra videos describing the sample programs:

Make sure you learn how to:

  • create a workspace, Java project, and Java class
  • fix syntax errors
  • run in regular and debug mode
  • set breakpoints
  • "step over" code

Pick 3 programming exercises from 15 to 33.  This is a "B" level assignment if done properly.  An "A" level assignment will include one of 17, 24, 25, 28, or 30.  When completed, call me for marking.

Chapter 3

Here are some extra videos describing the sample programs:

Make sure you learn about:

  • instance variables vs local variables
  • function parameters
  • primitive types vs objects
  • setters and getters are less efficient, but make code more maintainable and you can also check values for proper range or length

Pick 3 programming exercises from 11 to 15.  This is a "B" level assignment if done properly.  An "A" level assignment will include one of 16 or 17.  When completed, call me for marking.

Chapter 4

Here are some extra videos describing the sample programs:

This chapter will start covering the more useful things in programming.  One of the things computers do well is repetitive tasks; this is called looping.  The challenge in loops is knowing the starting and stopping points.  Make sure you learn about:

  • more advanced "if" statements
  • how to stop looping
  • loops within loops
  • more primitive data types

Pick 3 programming exercises from 17-39 except 25-28, or 34.  This is a "B" level assignment if done properly.  An "A" level assignment will include one of 30, 31, 35, or 36.  When completed, call me for marking.

Chapter 5

Here are some extra videos describing the sample programs:

Again, this chapter will cover more looping.  Looping is a useful way for programs to analyze a set of data.  Make sure you learn about:

  • loops that must execute once and loops that may not execute at all
  • the use on "break" and "continue", these should be used rarely
  • nesting loops
  • truth tables

Pick 3 programming exercises from 11-32 except 27, 31.  This is a "C" level assignment if done properly.  A "B" level assignment will include one of 17, 20, 21, 22, 30, 32.  An "A" level assignment will include two of the "B" level exercises.

Chapter 6

Make sure you learn about:

  • local variables
  • static variables
  • Math package
  • casting primitive types

Pick 3 programming exercises from 16-39.  This is a "C" level assignment if done properly.  A "B" level assignment will include one of 27, 30, 31, 33, 34.  An "A" level assignment will include two of the "B" level exercises.

Chapter 7

This is an important chapter.  Up till now, you have been dealing with singular values.  To do complicated things more efficiently, you need to use data structures.  The most basic and often used is the array.

Make sure you know how to:

  • create an array
  • index into the array
  • initialize a data array
  • iterate over an array
  • multi-dimensional arrays 

Pick 3 programming exercises from 10-38.  This is a "C" level assignment if done properly.  A "B" level assignment will include one of 19, 21-28, 30-37.  An "A" level assignment will include two of the "B" level exercises.  Other "B" level variations are Texas Hold 'Em or Mastermind.  If you need hints for the poker assignments, Java Poker Hints.

Chapter 8

This is another important chapter.  You will learn more about custom data structures that  contain multiple variables and multiple methods.

Make sure you know how to:

  • design constructors
  • self referencing pointers
  • overloading methods
  • using enumerated types vs constants
  • class methods vs object methods
  • composition "has-a" vs inheritance "is-a" (you will learn this later)

Pick 3 programming exercises from 11-18.  This is a "C" level assignment if done properly.  A "B" level assignment will include one of 11, 15-18.  An "A" level assignment will include two of the "B" level exercises.

Chapter 9

This is a challenging chapter because it is all conceptual.  Inheritance vs Composition is a design decision.  Although you can choose whatever you like, some decisions are better than others.  Rather than write the exercises, I would like you to code them so that it is syntactically correct.  However, only code the properties and interfaces, do not write the methods unless the exercise tells you to.  Here is a video explanation of hierarchy.

Pick 2 exercises from 3, 5, 6, 8.  Another assignment is to create a vehicle hierarchy.  Consider electric vehicles, trucks, motorcycles, etc.  Marking is different for this chapter - the larger and more correct the hierarchy for any exercise, the more marks will be assigned.

Chapter 10 - optional

You are not required to learn this chapter because this is generally not used by programmers because it can be problematic.  I will assign marks if you do some work.

Chapter 11 - delayed

Chapter 12 & 13 - optional

You are not required to learn this chapter.  It requires a lot of experience and subject knowledge to do this properly.  I will assign marks if you do some work.

Chapter 14

This chapter will make your programs more interesting by providing a graphical interface rather than a console.  The difficulty is learning how to use other people's code; it requires reading and learning what exists.  Warning, Java does not give you very good control of layouts; this is because it allows users to resize windows, so it likes to do what it thinks is best for the users.

 

Pick 3 programming exercises from 8-20.  This is a "C" level assignment if done properly.  A "B" level assignment will include one of 12-16.  An "A" level assignment will include one of 17-20.

Chapter 15

This chapter looks at 2D graphics; this is a precursor to doing 3D graphics.  Make sure you learn how the API is designed and learning 3D will be easier.  Understand how to set coordinates and colour.

 

Pick 3 programming exercises from 6-32.  This is a "C" level assignment if done properly.  A "B" level assignment will include one of 18-30.  An "A" level assignment will include one of 31-32.

Chapter 16

Strings are the basic building blocks to many applications.  It is generally better to input strings instead of numbers, because you can check the input, output non-terminating error messages, and ask for input again.  You have seen my demos from the earlier chapters.  It definitely will reduce run-time crashes.

 

Old Assignments

Research Assignment 1 (for all students) - There is no hard deadline, but this should be completed by Sept. 18.

Design Cycle (for all students) - Please watch this video to learn about the design cycle.  It will help you refine your product to achieve highly polished results.

 

Additional information