Unit 3

Digital Notes

Journal and Thoughts

READ THIS BEFORE STARTING


Day of the Week and Date

Monday, December 5

Unit & Lesson Number(s)

 U2 L1 & 2

Lesson Name/Topic

The Need for Programming Languages

The 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 Algorithms

Programming 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

4. Jump to line 2

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 Parameters

Creating 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