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

Click for Course Outline 2018-19 and Intro.  We are working on iMacs.  Watch this video to get started with iMacs.  This video shows you how to backup your work to the network (2018).

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.79, or click here to get the latest version.

Chapter 2 - User Interface

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

Video from the man himself - Chp 2 - Jim Chronister

Here is the chapter 2 rubric.

Chapter 3 - Basic Object Editing

Videos from the man himself - Chp 3.1, 3.2, 3.3, 3.4 - Jim Chronister

The lighthouse and landscape are not required for chapter 3, you may choose to do whatever you wish as long as you show the necessary skills in the rubric; this will also result in a higher mark.

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.

The logo is no longer required.

Proceed with the lighthouse or a design of your choice and call me over when it is complete.

Here is the chapter 3 rubric.

Chapter 4 - Basic Materials and Render Engines

Video from the man himself - Chp 4 - Jim Chronister

We look at basic materials and how they are created in the Internal Renderer as well as the Cycles Renderer.

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

Diffuse Lighting - A more detailed explanation from Wikipedia

Specular Lighting - A more detailed explanation from Wikipedia

Somewhat related to specular lighting is iridescence.  This will reflect different colours based on the angle.  You may have seen this with custom cars.  The paint they use is called ChromaFlair.

Here is the chapter 4 rubric.

Chapter 5 - More Materials and Textures

Videos from the man himself - Chp 5.1, 5.2, 5.3 - Jim Chronister

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.

Here is the chapter 5 rubric.

Chapter 6

Videos from the man himself - Chp 6.1, 6.2 - Jim Chronister

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.

 

 

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

Videos from the man himself - Chp 7.1, 7.2 - Jim Chronister

Ignore the exercise in the book, just work through the examples for the assignment.

Here is the chapter 7 rubric.

Chapter 8

Video from the man himself - Chp 8 - Jim Chronister

Please follow the lesson, but there is no assignment.

Chapter 9

Video from the man himself - Chp 9 - Jim Chronister

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.

Here is the chapter 9 rubric.

Chapter 10

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.

Here is the chapter 10 rubric.

Chapter 11

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.

Here is the chapter 11 rubric.

Chapter 12

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.

Here is the chapter 12 rubric.

Chapter 13

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.

Here is the chapter 13 rubric.

Please complete the remaining chapters by reading from the book.

Here is the chapter 14 rubric.

Here is the chapter 15 rubric.

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.

For those having difficulty with Java, you can try block programming on Code.org.  Please create an account, so that work is tracked.

Chapter 1 - PDF Lesson - Rubric

Chapter 2 - PDF Lesson - Rubric

Chapter 3 - PDF Lesson - Rubric

Chapter 4 - PDF LessonRubric

Scrambled solutions (maximum mark is 80%).  Looking at the Example code may help you with some of the unscrambling.  Don't use fix formatting or it will make unscrambling harder!

Chapter 5 - PDF Lesson - Rubric

Scrambled solutions (maximum mark is 80%).  Looking at the Example code may help you with some of the unscrambling.  Don't use fix formatting or it will make unscrambling harder!

Chapter 6 - PDF Lesson - Rubric

  • Video Lesson Part 1
  • Video Lesson Part 2
  • Video Lesson Part 3
  • VisuAlgo:  as much as I would like to create a demo for you, this website does an excellent job of showing how the sorting algorithms work.  Clikc on "esc", click on "INS", then click on "Sort->Go".  If it's going to fast, click on pause and use the step function (make sure you look at the code and explanation on the bottom right.

Scrambled solutions (maximum mark is 80%).  Looking at the Example code may help you with some of the unscrambling.  Don't use fix formatting or it will make unscrambling harder!

Chapter 7PDF Lesson - Rubric

Scrambled solutions (maximum mark is 80%).  Looking at the Example code may help you with some of the unscrambling.  Don't use fix formatting or it will make unscrambling harder!

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

Scrambled solutions (maximum mark is 80%).  Looking at the Example code may help you with some of the unscrambling.  Don't use fix formatting or it will make unscrambling harder!

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

Scrambled solutions (maximum mark is 80%).  Looking at the Example code may help you with some of the unscrambling.

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