Unit 3

Digital Notes

Journal and Thoughts

READ THIS BEFORE STARTING

• Entries should be:
• Articulate
• Passionate
• Fun
• Creative
• Organized
• Entertaining
• Thought Provoking.
• Supplement with Digital MEDIA at all times throughout.
• Document with
• Pictures
• Gifs
• Video

 Day of the Week and Date Monday, December 5 Unit & Lesson Number(s) U2 L1 & 2 Lesson Name/Topic The Need for Programming LanguagesThe Need for Algorithms Partner or Partners Kaitlyn Knabe

Description of what occurred and your reflection.

(Include DIGITAL Artifacts such as pics, videos or links)

We began the class with a demonstration regarding the simplicity and complication of computers: try writing instructions for Mr. Keays to construct a 3D figure without looking.

Afterwards, we worked through the “card” packet, creating a code to locate the smallest card (value of 2) in a line of eight.

Vocabulary Learned

Algorithm: A precise sequence of instructions for processes that can be executed by a computer and are implemented using programming languages. (NOTE: this is the definition from the AP CS Principles framework).

An algorithm is a set of instructions to solve a problem!

 Day of the Week and Date Wednesday, December 7 Unit & Lesson Number(s) U3 L3 & 4 Lesson Name/Topic Creativity in AlgorithmsProgramming with Simple Commands Partner or Partners Steven, Goldie, Roni

Description of what occurred and your reflection.

(Include DIGITAL Artifacts such as pics, videos or links)

We began the class continuing the “human machine” worksheet. Today, we were meant to write code to bring the smallest card of 8 to the front of the

My code to bring the smallest card to the front:

1. Move RH to position 7

2.  Jump to line 5 if RH value is less than LH value

3. Shift RH to the left

5. Swap

6. Jump to line 2 if RH position greater than 0

7. Stop

Afterwards, we worked on Code Studio, being introduced to Turtle programming for the first time. We also discussed the importance of brevity in code.

Vocabulary Learned

Iteration is the repetition of part of an algorithm until a condition is met or for a specified number of times.

 Day of the Week and Date Friday, December 9 Unit & Lesson Number(s) U3 L5 Lesson Name/Topic Creating Functions Partner or Partners Jackson Skaaden, Edward Goldenberg, Jonathan Guaman

Description of what occurred and your reflection.

(Include DIGITAL Artifacts such as pics, videos or links)

Intro to functions lecture. What are the benefits of creating methods? We then went through Code Studio lesson 3 to practice creating functions with the turtle programming.

While programming, efficiency is necessary. So, repetition of the same blocks of code over and over is pointless. Functions not only help prevent rewriting the same block of code multiple times, it also helps programmers visualize what their code executes. For example, turnRight() is easier to visualize than turnLeft(); turnLeft(); turnLeft();.

We ended the class going through Code Studio lesson four.

Vocabulary Learned

Abstraction: Pulling out specific differences to make one solution work for multiple problems.

Function: A piece of code that you can easily call over and over again.

 Day of the Week and Date Tuesday, December 13 Unit & Lesson Number(s) U3 L7 & L8 Lesson Name/Topic API’s and Function ParametersCreating Functions with Parameters Partner or Partners Akshana Vinotheesan, Qiufei Smart

Description of what occurred and your reflection.

(Include DIGITAL Artifacts such as pics, videos or links)

We opened the class with a reflective question: do computer programmers need to memorize every command?

We finished the class on our own, working through Code Studio’s lessons 7 and 8.

POWERFUL Questions Posed:

1. There is no way to memorize every command in a programming language due to the continually growing and shifting of computer science. However, the field is thankfully well-documented (via API’s- Application program interface). While looking for a specific command and how to utilize it, it is easy to find online the proper syntax, making pure memorization unnecessary.

Vocabulary Learned

API - a collection of commands made available to a programmer

Documentation - a description of the behavior of a command, function, library, API, etc.

Library - a collection of commands / functions, typically with a shared purpose

Parameter - An extra piece of information that you pass to the function to customize it for a specific need.

 Day of the Week and Date Thursday, December 15 Unit & Lesson Number(s) U3 L9 Lesson Name/Topic Looping and Random Numbers Partner or Partners Akshana Vinotheesan, Natalie Hoy, Qiufei Smart

Description of what occurred and your reflection.

(Include DIGITAL Artifacts such as pics, videos or links)

Today was spent on our own, finishing up Code Studio lesson 8 and 9. Lesson 9 is about adding randomization to an image generator, something we practiced through the “Under the Sea” image. Due to the use of the random number generator, each time you refresh an image it is different. One example of my “Under the Sea” image is seen below.

Vocabulary Learned

Loop: a programming construct that repeats a group of commands.

Iteration: "loop" by another name - the repetition of a statement, process, or procedure.

For Loop - A particular kind of looping construct provided in many languages. Typically, a for loop defines a counting variable that is checked and incremented on each iteration in order to loop a specific number of times.

 Day of the Week and Date Unit & Lesson Number(s) Lesson Name/Topic Partner or Partners

Description of what occurred and your reflection.

(Include DIGITAL Artifacts such as pics, videos or links)

POWERFUL Questions Posed:

Vocabulary Learned