Welcome to Computer Programming 11
course web site!
This web site portal will be used extensively in this course in order to provide students with clear assignment and project details / helpful links and instructive tutorials. In addition to this web site, I will also be sharing digital course textbooks and project files via my cloud portal office 365 and One note. This course is intended to provide students with a comprehensive grounding in computer programming fundamentals.
In addition, we will be gaining a broader perspective of the field of Computer Science including aspects of computation thinking, study of algorithms, develop a timeline of key computer technologies, languages and software. In addition, we will also be creating programs that will be used to run on several output devices; Microbit processors and Lego robotic devices.
Course syllabus (see attachment section at the bottom of this page)
Quiz number one - Web site programming fundamentals
Please complete this short course survey
Block Three access code:
Grade site: schoology
Please select sign up tab as a student and type in the access code below!
Please complete the following course survey
Web site sharing presentation feedback form
https://code.tutsplus.com/tutorials/building-games-with-python-3-and-pygame-part-1--cms-30081
This week:
For your presentation please do the following:
Open up the program you built
Offer a clear description of its function and its purpose
Which Java related skills are incorporated in your program
Share 3 of the functions of your program
time length - 3 min (ish)
Partners will present their program to the class on the following date:
May 18th - Friday (moved to Tuesday May 22nd many students away)
Block 2 presentation order for Tuesday May 22nd:
Students whom have already presented:
Victor and Tiana
Brian and Risa
Carter and Colin
Sergey and Min
Blue and Max
Kelvin and Phillip
Leo & Rainer
Friday's presenters
Dagan & Mason
Lareina & Ella
Wednesday - Final presentations for Block 2 / otherwise "0"
Peter Chen / Eric P. - June 1st
Anthony Geracitano
Miji Kim (*)
Alisher N
Andy Han
Block 4 will present this upcoming Friday - Group 2 Monday - All the rest Wednesday
Justin Wang / Alina
Andy & Sebastian
Louie & Tim
Zoya & Tiffany
Frank and Jackson
Andrew and Jackson
Jason W
Block 4 students whom have yet to present their JAVA apps
Sophie Z & Jason Z
Leon
Salma (away) / Namin (Tuesday) / Serene (Monday) / Chris (Monday) / Eric / Jim
https://automatetheboringstuff.com/chapter1/
(*) Note: Grade 11's - once you have finished ALL the assignments listed below see Mr. Linburg and he will guide to some specific enrichment activities.
Assignment # 11 - Introduction to the Python Programming language (Due: Monday June 18th )
In our next course segment, we are going to learn another powerful programming language called Python. Python was designed to be a programming language that was easy to script, easy to read and sought to reduce syntax coding errors so prevalent in languages such as JAVA.
As one author describes it....
"The Zen of Python"
"...Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one -- and preferably only one -- obvious way to do it...."
Generally when we code in Python we use what's called an 'interpreter' (Python) versus a 'compiler' (Netbeans). What is the difference you may ask? Please read the following chart:
Ahhhh - no "Save as"......
Where do the terminal shell files go: Please read this link for more detailed information.
Our investigation of Python will be comprised of THREE separate but related segments:
Introductory tutorials (you will have a range of choices of HOW you learn Python coding skills)
Game creation using Python code scripts (you will have to copy much of the script but you will make code MODIFICATIONS!)
Create output programs running on MICROBIT PROCESSORS (see Mr. Linburg to borrow one)
Part I - Introduction to Python Coding Fundamentals (choose 12)
As in previous programming units, we've started with a collection of introductory lessons. After all, we have to start somewhere and we need to learn the basic Python coding structures. However, for this section you will have a choice of approaches :), so please choose ONE that resonates with you the most!
Coding practice choice # 1 - Using the on-line tutorial platform of Python org
Please complete the unit modules.
Go to Learn Python for Data camp / sign up for an account / use the on-line interpreter to complete the exercises.
You may EITHER do a print screen & paste to MS word OR just submit the summary sheet from the web site assuming that you SIGNED UP for an account.
Coding practice choice #2 - Code Academy - Python intro.
Log-in to your account from the one you made for the HTML intro from earlier in the course. Please complete all the intro lessons for this unit.
Coding practice choice # 3 - Learn Python the Hardway (textbook PDF)
Although some of us are suffering from coding fatigue this is still the best way to acquire specific programming language skills. We will be using the following resources for this segment:
Learn Python the Hard Way (DIFFERENT author - same title) - see textbook in the attachment section of THE GRADE 12 site - not enough web site space to load it on this page as well! )
You will be building out your code practice by using the installed Python Code interpreter found your computer. To get your power shell to work correctly for this segment you may have to reboot your computer. Here is an excerpt from page 7 of the textbook that speaks to this particular issue:
Please complete the following exercises:
Exercises 1 - 7 (covers many familiar activities) - however one print exercise should suffice
Exercises 10 - 15 Python essentials continued...
You will start to see many similarities between Python and JAVA. However, Python is known for being an easier and more intuitive coding language. If you are continuing on after this course into the field of computer science, it is recommended that you continue to work through this textbook resource after the conclusion of this course.
Part Two - Make One Python based game (advanced)
Game # 1 A Rabbit shooting game built using Python Script
Part I - Create a Python based game using the existing scripts
The PY game program execution file is located here:
C:\Python27\python -m pygame.examples.aliens
Here is an additional Python resource link to help explain any concepts that seem unfamiliar (after all we can only cover PART of the lessons in the Python intro. section - so the rest you'll just have to reference)
Part II - Make FIVE modifications to the Rabbit game
Please use the above links (and a help guide see attachment) and the PY game building platform to make a Python based game. When done, please try to make FIVE modifications to the game by modifying the Python source code. Some of these include changing the behaviour of the mice or the rabbit / modifying the shooting parameters / adding an "enemy" or adding an additional hazard / or changing the "look" or feel of the game. Please see Mr. L if you require more specifics.
(*) Note: please add a developer note specifying what changes you have made!
Part III - Using Microbits to create output programs on a microprocessor
Please complete the following activities from the Micro-bit processor related web site:
Images + the animation
Buttons (All)
First portion of Input/Output
First part of Movement activity
Gestures
Compass
Assignment # 10 - Investigation into an emerging field of Computer Science
(Due: Thursday May 31st Block 2 )
Block 4 due date: Friday June 1st - if handing on Tuesday please drop it in the late folder - note no work collected after TUESDAY)
If you'd like to work on this on the weekend - free in-design cc trial version software link
In this next course segment, you'll have the opportunity to fully investigate an emerging area of Computer Science and its implications for society. As you are well aware, Computer Science is a vast field that intersects a myriad of disciplines; engineering, medicine, bio engineering, artificial intelligence, material processing engineering, mathematics and countless others. In this segment you will be asked to investigate a topic of interest to you. You may paraphrase key technical descriptions and borrow images (referencing the source) but the expectation is that you investigate your topic choice TO A HIGHLY technical level using your thoughts and personal insights. We'd like you to demonstrate an expert level knowledge in the specific area (see attachment for driver-less car example)
I can't emphasize enough that learning how to absorb technical information and report it out in an easy to understand format is an essential life skill for both your work life and your academic one.
Suggested Topic List (please speak to Mr. L if you have another suggestion)
Artificial Intelligence and a specific application (eg. its use in drones)
Driver-less Cars (see PDF example attachment section- from Scientific American)
Facebook and social media - data mining - issues of privacy for users
Automation and the coming wave of "smart machines" - a blessing or a curse?
Is anything private in the digital age?
A quantum computer - a viable technology?
Tracing the past / present / future of the Internet (coming 5 G high speed revolution)
Suggested way to report out your findings
A VERY detailed technical description of your topic (see driver-less car PDF example in attachment section)
Specific hurtles and barriers (both technical and potentially societal)
Examples of the applications of this technology
The future - what are the ramifications and larger uses and impacts of this technology?
Suggested way to share this information
Create a magazine spread (see driver-less car example Pdf in the attachment section) using Abode In-Design.
Here are some sample tutorial instructions to help guide the creation of your magazine style report.
Create a magazine spread - version 1 / Create a magazine spread - version 2
(please modify these instructions to suit your specific report) For example, you might not need to do the font image fill
Assignment # 9 - Completing our basic understanding of Java programming fundamentals...AND developing collaboration skills...JAVA
Net beans ALL due Monday May 28th
Section One - Java programming exercises continued....+ one study drill per lesson
Please do the following exercises and try ONE of the study drills (please do a prt. screen showing the drill you did for each exercises). This will really help you to retain the concept introduced. Also if you haven't already, I would suggest developing a summary sheet to help you remember the details and specifics around Java (e.g. escape commands - how to write an if statement...)
# 11 Variables Modification Shortcuts
# 12 Boolean Expressions
# 13 Comparing strings
# 14 Compound Boolean Expressions
# 15 Making decisions with If Statements
# 16 More If Statements
# 17 Otherwise (If Statements with Else)
# 18 If Statements with Strings
# 22 Making Decisions with a Big Switch
# 24 Choosing numbers randomly
Congrats!....you've completed a great introduction to Java :) If you see Java in your future, I would suggest completing all the exercises in this textbook later on, or perhaps in Programming 12.
Section Two - Java Fundamentals - BUILD A JAVA APP
Learn to collaborate...become the IT professional you were always meant to be....partner activity
Who ever said that computer programming had to be a solitary pursuit. Many positions in information technology operate in teams and work on concepts in a collaborative setting. In this next course activity you will take on the role of a true IT professional and develop a program with a specific purpose. Although our JAVA coding skills are still in development, there is no reason we can't all create a functioning and useful app. As well, this is a good way to review and reinforce the concepts covered so far. Good luck and happy collaborating!
Steps to complete this assignment:
Meet with your partner / review the various skills you've developed in JAVA so far in the course / use the paper provided to come up with some ideas for a project (examples might include a fillable survey on a topic of interest or perhaps a program that makes a variety of mathematical calculations or e.g. a variation on the BMI calculator / true and false questions etc.....)
please review the textbook exercises and read some of the suggestions mentioned in the textbook / jot down a few ideas
EACH partner then goes back to their workstation and creates a version on their own (which will fused together with your partner suggestions at a later meeting OR
you could break your project apart into separate sections and recombine it at the end
I don't want to tell you, in specific terms, what to make as creativity and originality is also a key part of becoming a great programmer.
What could you program that is both useful / novel / and user friendly?
In general the list of skills covered in the first 24 assignments would include:
Printing / variables / storing input / math / calculations with input / Boolean / if statements / strings / int's / doubles / random / while statements...
The challenge here is to CREATE a program that incorporates as MANY of the lessons covered as possible. What could this program do? What is a creative use of the various Java programming skills you've covered so far? Be sure to spend time deliberating and discussing and creating a plan with your partner BEFOREcoding.
I could give you a list of project ideas but I'm more curious about what you can create.
If this goes well, I will scratch the unit quiz since the course focus is on WRITING programs not memorizing facts.....:)
Hand-in procedures
Along with your program, please include a page reflection that includes a description of the program, its utility and function, who did what on the project and what did you learn as a result of this process.
Please include this in a file with BOTH group member's names on it.
Assignment # 8 - Learning to write Java based programs
In this next introductory segment you will be learning JAVA programming conventions and writing a collection of sub-programs using the compiler Net Beans.
Section A - "hello world" - learn how to use the NET BEANS compiler
Please follow these steps in order to create your very first executable Java program using NET-BEANS: "Hello World" .
This introductory exercise is essential for you to learn how to use a compiler such as NET BEANS. The text based output program isn't terribly exciting but we have to start somewhere :)
Section B - Writing Java programs
Now that you have completed this, you will turn to creating a portfolio of introductory text based executable programs using the same input format as the first demo (Hello world).
PDF attachment "Learn Java the Hard Way.pdf" (bottom of this page) NOT the other textbook "Learn Object Orientated Programming the Hard Way"
Please complete the first TEN programs from this textbook. Please write the programs using the Net Beans IDE (as you did in Part I with the 'Hello World' activity).
Also...
(*) please do the study drills for HALF of these exercises - your choice as to which ones - they will help your understanding by adding modifications of the code - just let me know which ones you did via a "Java Comment"
# 1 An Important message
# 2 More Printing
# 3 Printing Choices
# 4 Escape Sequences and Comments
# 5 Saving Information in Variables
# 6 Mathematical Operations
# 7 Getting Input from a Human
# 8 Storing the Human's Responses
# 9 Calculations with User Input
#10 Variables Only
We may add to this list but that will depend on how well we do with the first batch. Regardless, of how many practice exercises we get though, the process of becoming a great JAVA programmer is a multi year endevour!
Part II - Writing your own program from scratch (based on the exercises you've completed)
You will now be writing a JAVA based program of your very program. The goal is to attempt to create a program that incorporates elements from half (5) of the previous practice exercises. What this program actually does depends on the exercises you choose to do. For example, you might have a series of questions that provide a response or complete a logic statement or perhaps incorporates a true / false statement or if statement.
include some inspiring text based output with today's date / and or maybe a funny joke?
show you know the difference between print and print ln / include some escape sequences and programmer commentary/
save some information in a variable (see lesson # 5) / incorporate three basic algebraic equations (integers, doubles, use each of the mathematical operators / how does the computer round numbers? do you know why? / input - output statements / storing responses / create a calculator for something other than BMI (search on line for ideas)
# 7 - ALICE - JAVA animation Part I (grade 11 course students only) - now Overdue
In this next segment of the course, you will be moving away from the strictly text based JAVA coding used in the introduction.
Although we don't want to forget any of the concepts introduced in the coding introduction, we are going to come at JAVA based coding from another perspective - "drag and drop" tile created animations. This follow's the swirl approach to teaching JAVA based coding that we outlined in class.
Part I - Introduce yourself to the software and create your very first "scene" (headphones recommended)
Please watch at least FOUR of the "how to videos" to learn about the structure of ALICE -
(A) Create your first "Alice in Wonderland" scene in Alice
Part II - Create your first ALICE based program - "Houston we have a Problem"...
Please follow these detailed instructions which show you how to get started!
You may modify this project to make it your own, however it is suggested you follow
the general step by step approach!
(B) To now create a Robot scene using ALICE
Part III - Designing a Procedural Method
In the third segment you will be creating a procedural Method.
(C) follow this link for a specific ALICE related activity
What exactly is a Procedural Method?
Procedural method in JAVA explained
Or another way to describe one is...
"...A method in object-oriented programming (OOP) is a procedure associated with a message and an object. An object is mostly made up of data and behavior, which form the interface that an object presents to the outside world. Data is represented as properties of the object and behavior as methods. For example, a Window object would have methods such as open and close, while its state (whether it is opened or closed) would be a property..."
Part IV - Control Structures and Events in ALICE
In this final course segment, we will be going deeper into ALICE to learn more about how to how to structure animations so that they work in concert with one another.
Please complete the following:
(D) Control Structures "do together"
(E) Introduction to Events in ALICE
Additional resources
# 6 - Scratch - (3) Video games in total - drag and drop coding
(April 10th game day - Tuesday - game rated by your peers)
In our next course segment, we will be exploring the world of "drag and drop" programming, first pioneered by computer scientists at the Massachusetts institute of technology (MIT). This fun approach to coding allows you to learn real programming while eliminating syntax coding errors that cause many students to give up on computer science. By simply dragging and dropping the puzzle pieces together you create a series of commands for the "sprites" to execute. These commands can actually be quite sophisticated.
This approach to coding has now been widely adopted and we will incorporate some of this approach into our upcoming unit on JAVA.
We will explore the drag and drop approach within the context of video game design!
Please click on this link to go to the instruction and lesson sequence page!
Have fun!
Please hand in each of the projects into the drop box folders under the student resources area "R: / ".
As a culmination to this unit, you are asked to create a game of your own. The class will be both playing and rating this game based upon a collection of criteria (we'll review this beforehand).
Help Section
How to make a sprite sense a wall / another example
Web Site Development Unit
(Entire project is due Monday March 12th)
Please copy your final web site URL and add it to this
page:
Now closed
A sample completed student project from last semester for you to view
Assignment # 5 (FTP) file transfer / hosting your web site files
To Host your newly minted web site for free please go to link below and select:
Other "free" hosting sites are located on this link. However, I have not tested any of these other than "000WEBHOST".
(*) Note: you do not need to provide any personal information. If you need to use an email account I would suggest creating a "dummy account" for this purpose as I'm sure you don't want any spam mail!
Example of a folder set up with corresponding links
Please set up your files this way (home page MUST BE titled index.html)
When you have successfully uploaded your project to the web, then please review it and then copy and paste the URL into the link here (this is a collection of past semester projects for you to look at!)
Assignment # 4 - Create your own web site
A modern text editor - Brackets (use this link to find out how to use Brackets)
Overview
Create a project folder
Create an HTML file (index.html) - with the basic structure elements copy and pasted
Create a CSS style sheet (stylesheet.css) - with a basic structure copy and pasted
Create a .JS page - be sure to reference both CSS and JS in the header section
Decide on a web site project idea - what is your site going to be about?
Decide on a layout for web site and colour scheme and design features.
Add in a navigation bar (either an "inline" style tag" or you can parse it out between .html / .css and possibly .js (see examples)
a home page (index.html) AND four correctly linked sub pages accessible from a navigation bar
Please put all your project assets - videos / images / other related site content all in the same folder.
Web site criteria
Your pages should be coded in HTML (.html) AND also use a separate CSS style sheet (.css) - please reference this from the html header section
each page should have a navigation bar / at least one image / effective fonts and colour scheme / (in the project as a whole....a table / playable video / some sort of interactive features.
Design excellence and the overall 'look' of your project (re: design elements)
Site interactivity / seamless use of CSS add ons and Javascript add ons
Suggested subjects of your site:
A restaurant / a fashion or photography site / a sports related web site / travel destinations / inspirational quotes or poetry / trends in technology / an area of computer science such as Artificial intelligence or driver-less car technology. (Please no gaming web sites for this project).
Please read these sections before you actually start coding: CSS introduction / CSS syntax explained / 3 types of CSS style sheets
Step one - setting up folders and files - Use Brackets or Note Pad text editor for this!
Open up a text editor (programs / accessories / notepad) OR Brackets
Create a folder titled web site project (store ALL your project assets in here)
Create a notepad page titled "index.html" (please note that you MUST change the file type manually from .txt to .html) See this example
Create a notepad file titled "my CSS stylesheet.css HERE ARE INSTRUCTIONS ABOUT HOW TO LINK AND REFERENCE A CSS PAGE TO HTML
Another example of linking CSS classes to an HTML page
How to set up a page with different sections: HEADER / CONTENT / FOOTERS - helps a browser organize your page information
(*) Please add a separate .js page. This will become handy if you happen to need some JavaScript code. This is the case with some of the more intricate Navigation bar styles.
Box model
This chart outlines the various "levels" for moving content around within a wrapper or within a navigation bar (good to memorize the different "levels")
(*) Note: When expressing values for padding / border / or margins they are stated in the following format - top / bottom / left / right
Discussion of Flex Wrap feature in CSS / Flex box functions and uses
Step two - Links to help you set up basic HTML / CSS documents
Read through the following links to begin:
How to code a HTML and CSS site / Important information related to containers and layouts
Using tables to space out elements such as a collection of hypertext links!
Step three - Add a navigation bar (to EACH page - sub page)
Copy and paste code to the HTML page and then modify your script to personalize the look of it. You have two options:
One scripting your own responsive navigation bar from scratch - (use these instructions (advanced)
OR
Copy and paste and then modify the navigation bar code from one of the links below. Be sure to personalize it and make it your own.
Navigation bar code links:
1) Select the navigation bar code from this link / An hover navigation bar with an underscore
2) Try these beautiful navigation bar designs that have great response - more advanced
(*) Note: you must have a .html / .css and .js files in order to fully enjoy the full responsive qualities of these navigation bars.
3) Code Pen examples: Responsive Navigation Bar: example one , example two, example three, example four, or look for your own from this link
Step four - Header reference for the external CSS and JS pages
Once you have set up your web site structure (html / css / js / navigation bar) AND you have added a link in the header section indicating that the web site browser should be looking for an external style sheet e.g.. <link rel="stylesheet" type="text/css" href="styles.css">
Step five - Create your basic site pages with LINKED Navigation bar
Make FOUR copies of your web site template (or the number of sub pages in your web site) containing the basic html page structure and navigation bar information. You will need to adjust the navigation bar links (see below example) so that the pages all link to each other and back to the home page.
Example (*) Note that your site will need to map to the EXACT network drive and the link info will differ.
.
Step Six - Build out your web site
pictures / parallax scrolling features / image gallery / videos / written site content / home page 'hero image' / linked content on the sub pages / good design ideas / good blend of colours / CSS animations / JavaScript buttons and site interactivity
To make your web site viewable on any device of any size use this "HTML Responsive Web Design"
Step Seven - Adding "cool" features and site interactivity
Project 'add-on' Resource section CSS and JavaScript
Part I - enhanced CSS
Please add a minimum of 3 of these project enhancements
Parallax Scrolling see example here
A dynamic photo gallery instructions / code here
CSS colour gradients colour gradients for backgrounds
CSS animations and transformations CSS animations / 2 D transforms / 3 D transforms
CSS transitions CSS transitions
CSS animatables (@keyframe rules) An incredible "grab bag" of slick CSS functions! (scroll down for list!)
suggestions: CSS animation colour gradients / change background size / image colour border modifications / box shadow / animation of font size / transform of origin / word space (way cool :) )
Part II - JavaScript add-on's
Introduction
What are the ways one might to add JavaScript code snippets to a web site project? This link describes your options
Please try to add 2 Java Script enhancements (see below)
Part I - Java Script - code snippets
A collection of basic JavaScript code snippets that you can simply cut and paste into your web site on either an EXTERNAL JavaScript page or build it as an INLINE code snippet. (see link) JavaScript snippet site
an alert box
showing date and time when the page loads
animating the background colour
Adding text in java script
Adding a fillable input form
java-script form linked to a specific data base
A scroll banner
AND
Part II - Java Script - code snippets (dramatic project 'add ons')
CODE PEN (a collection of very unique JavaScript code 'add-ons') Code Pen (a few of my favourites) example one (the fabric of reality) / example two (cloth simulator) / example three (character animator) / example four (robot army) / flags blowing in the wind
Make a button to turn a light bulb on (W3.org Schools site)
Specific Student help section project resource area
How to use float to text wrap an image Exploring the concept of "floating an image" and the use of "clear"
Controlling image opacity Controlling Image opacity (right click mouse look at source code for opacity)
How to make link jump to specific page section Here is a discussion of the topic
Background coverage Discussion of topic
How to have images sit "side by side" Method # 1 / Method # 2 (excellent discussion of topic)
How to make a "top of the page" button Top of the page with J Query
parallax scrolling feature code example:
.parallax1{ background-image: url(images/background2.jpg); background-attachment: fixed; background-position: center; background-repeat: no-repeat; background-size: cover; height: 700px; z-index: 1; width: 100%; opacity: 0.7; }.parallax2{ background-image: url(images/background1.png); background-attachment: fixed; background-position: center; background-repeat: no-repeat; background-size: cover; height: 100%; z-index: 1; width: 100%; opacity: 0.7; }
Assignment # 3 - "Searching for Inspiration" - Exceptional Design - Tuesday Feb 20th
Now that we have developed some understanding of web site structure and the underlying HTML and CSS coding that creates web content, we will now turn our attention to another key aspect; design.
What makes web site design stand out? How does design and site content interact in order to improve the end user experience?
Part A - Create a design "cheat sheet" - info-graphic
By means of an introduction please read the following collection of articles:
Your task here is to distill the above information into a clear set of guidelines for constructing a web site.
Please use the info-graphic maker for this summary task
Part B - PowerPoint - "show and tell"
You will now be using our good friend PowerPoint to showcase the top 5 web sites that are in existence (yes quite a challenge to locate the best of the best)
Some good tips for using PowerPoint Designer to help add some piazzas to spice up your presentation - using Microsoft Office "designer" - take a look! (short video clip)
For each of these "finalists":
please right click on the mouse and select "view source code" to look at how the web site was constructed. Based on your basic knowledge, offer one key insight into the coding structure (page structure, specific code function, key site feature - if possible use the "snag-it tool" to screen shot the relevant section of code.
On each of the 5 slides include the following:
A heading
the URL of the web site (be sure it connects)
several clearly written bullets explaining why this site is so great (please be specific and clear and refer to the design articles if possible) - vague descriptions like..."the site is colourful" will earn you a "o")
ONE interesting aspect of the code
Note: You will be sharing this presentation with some of your classmates!
Here are a few fascinating sites that do indeed stretch the imagination. What makes each one special?
Assignment # 2 Part I - HTML and CSS / Introduction (Due: Friday February 16th)
Part A - This article will used for a quiz next week - its short but clear!
Important introduction to web coding fundamentals (QUiZ this Thursday Feb 8th)
Part B - Introduction to HTML and CSS
In order to give us all a common background in HTML and CSS we will be completing a series of modules on the web site Code Academy. This is essential as we can't attempt to code without lots of practice.
Sign up for an account and then begin to work on the following:
introductory modules of HTML 5
introductory chapters of CSS (Cascade Style sheets) 1 - 4 ONLY for Programming 11 students BUT 1 - 6 for Programming 12 students (free sections only!)
When you have completed a section please "print screen" and then CTRL V in MS word. At the end of the modules, submitting the MS WORD document with the screen shots as proof that you have completed all the sections.
Part II - W3 for schools
Please practice and try the following exercises from this resource (W3 schools)
Assignment # 1 - Introduction to Computer Science - Timeline and info-graphic
Resources
Please read the following articles / watch video
Video - "Greatest Story ever told" (whole class) 24 min
Part A - History of Computer Science - Make a Time line (Due Jan 31st) - Just URL
Please use this "timeline maker" (or MS Word) to create your own timeline that outlines at least 20 of the key inventors / inventions / or events in the history of Computer Science. Describe the event and add at least ONE justification of your OWN as to why this event or person was so important (**)
Please save your completed timeline and place both (1) a screen shot (use snag it / or prt. screen / ctrl V) of the time line and the (2) specific timeline web site URL.
If this doesn't work then do it on MS Word - follow these steps...
Part B - How does a computer actually work? - Make an Info-graphic - (Due Friday Feb 2nd)
Please read this following computer presentation and then use the information to make an info-graphic on the topic.
Info-graphic Maker site (account sign up required)
Please summarize the following in info-graphic format
Software categories
Binary code system (how are characters translated into numerical code and how the binary system works - what are the "levels of representation" relating to how software works?
How the CPU works
Other resources on the topic