Computer Science 2

Email the following to Mr. Fornstrom at
1. Software you are using.
2. What are you trying to accomplish?
3. Description of problem. It might help to include a screen-shot showing the issue you have a question about.   Use ‘print screen’ from the keyboard. It will save the screen on the clipboard and you can use Ctrl-V to paste the picture into whatever your computer has for graphic editing. Save the picture and attach to your email.
4. What have you tried to this point?
5. Anything else that you think might would be helpful to understand the issue and the ideal solution.

Free Sprite Creation Tools:
– is a free on-line sprite editor
– Sprite Lab in Log-in, click ‘Create’ button in top right, choose ‘Sprite Lab’

Daily Class Agenda: Check Schoology for daily agendas, notes, and assignments.
Google Classroom Join Code: caxou36
AP Digital Portfolio:
Class join code:   
AP Classroom – – Join Code: join code: no join code, you will sign-in with Google account. 

Links: Syllabus:
AP CS Principles Exam Description:
AP Digital Portfolio instructions:

Explore Performance Task
(16% of AP grade):
– Choose a technology innovation
– Use in-line citations formatted in MLA style.  Here is a reference:
– In-line citations example:
[1] Author’s Last name, First name. “Title of Web Page.” Title of Website, Publisher, Date, URL. Date retrieved.
[2] Author’s Last name, First name. “Title of Web Page.” Title of Website, Publisher, Date, URL. Date retrieved.
[3] …

AP CS Principles Exam Page:

AP CS Principles: Create Performance Task – Directions and Scoring Guidelines

Algorithms vs. Abstraction:
Algorithms are precise sequences of instructions for processes that can be executed by a computer and are implemented using programming languages.  Mathematical computations and logical comparisons are examples of algorithms.  Informally, an algorithm can be a called a “list of steps”.

Abstraction: Through the use of abstraction, a programmer is able to take one large idea, and break it down into smaller pieces. In the context of top-down design, this means that the programmer can create one function that is made up of a set of smaller sub functions.  After determining the details of those sub functions, the programmer no longer needs to take into account how they work, knowing that they will work when called.  For example when drawing a snowflake, the programmer may use top down design to split it into separate branches.  Each of those branches may have sub functions that determine the detail to be repeated. This allows programmers to develop complex systems while managing complexity at multiple levels of abstraction.