Thursday, August 25, 2016

U1-L1 & 2

Journal Entry:

We opened the day with a brief introduction to the format of this class we will be following for the rest of the year. After that, we began lesson one with a reflection question:

What is innovation?

To be innovative is to do something that no one else has done before. It requires a vision, motivation, and, most importantly, a lot of grit and determination. Someone who is innovative is optimistic: you cannot be innovative if you don’t believe in the future. It is the root of all progress, and is a key step in the development of humanity. Innovation is the creation of something new, or the improvement of something old.

 We worked in pairs, my partner being Michael Sunderland. After discussing the reflection question, we worked on a “rapid prototype” project, for which Michael and I described an innovative vehicle capable of traveling across the globe in less than two hours, as seen in the picture to the left.

We watched a video titled “Computer Science is Changing Everything” and wrote about our definition of “information.”

What is information?

People say that knowledge is power. If that’s the case, then information is the strength necessary to use said power. Information is the building blocks of truth, or facts that help one learn and improve.

Our definition of information: The answer to a question.

After that, we were introduced to Code Studio, and we discussed what binary questions are: questions with only two possible answers. While these are often yes or no questions, such as “Do you have pets?”, they can also be broader questions with two possible responses, such as “Do you prefer writing with pens or pencils?”. The last few minutes were spent working on a project we will work on next class involving building a “machine” to answer binary questions and obstacles that may preclude that.

Monday, August 29, 2016

U1- L2 & 3

Journal Entry:

Today, my partner, Alex Rah, and I finished lesson two and three. We started by building and adjusting our basic binary device. The videos below are our prototype for two- and four-state devices, though we have realized since then that it was not the best design possible. The device shown has three possible states, as opposed to the two necessary for an efficient binary device. Since then, we modified the device into a more simplistic two state “machine.”

Flawed binary device

Four responses

Mr. Keays’s sample message: ABABA; AABAABABA (demonstrates the importance of conveying protocol to the receiver's prior to sending the message).

The main activity of the day was the Internet simulator on Code Studio, determining protocol and practicing sending bytes of info to our partners. We also watched a video titled “The Internet: Wires, Cables, and Wifi” about the three ways data can be delivered.


A major part of today’s focus was coordination. My partner and I needed to coordinate who was receiving/sending the data, how long to wait before setting or reading a wire, and when to begin the message.

The best bit rate we could achieve was roughly .32 bits per second.

Computers can transmit 8 million bits per second.

Wednesday, August 31, 2016

U1-L4 & 5

Journal Entry:

Today, my desk partner was Lily Markow.

Introduction activity: 7, VII, siete, qi, 2+5, 1+1+1+1+1+1+1, --..., tally marks, 14/2, seven, 七, etc.

The representation of numbers is completely arbitrary, so there are an infinite number of ways to represent the number 7.

Next was the symbol pattern activity. Our base 3 number system:

We separated the 27 combinations of the symbols into three sections of nine combinations each. The first section’s patterns all began with triangles. The second began with squares, and the third began with circles. The second column within the three larger sections were split into groups of three, beginning with its original shape and repeating through the order: triangle, square, circle. The third columns alternated every shape between the three shapes, still going through the same order of triangle, circle square. This will yield 27 unique combinations, as seen below on the left.

Mr. Keays’s example of his organized system is shown above on the right.

After the triangle/circle/square activity was an introduction to how to read binary numbers (binary odometer applet and game). After completing the game, my partner and I began working on the binary project.


With a Base 3 number system, there are 27 possible combinations.

With a Base 2 system, there are 8 possible permutations.

Our number system, base 10, is also known as the decimal system.

Friday, September 2, 2016


Journal Entry:

Today, my desk partner was Allison Jung.

We began the day with a lecture reviewing the concept of binary numbers and how bit size affects sending messages. After this, we practiced with the new Code Studio “Sending Numbers Internet Simulator.” This allowed us to modify chunk size, send/receive messages simultaneously, and automatically convert code to binary. We practiced with this for the rest of the class period. This culminated in an encoding assessment, where Allison went outside and we had to accurately send and receive each other’s unknown encoded images (out first initials and an exclamation point).


Wednesday, September 7, 2016


Journal Entry:

Today, my desk partner was Matthew Speer.

We began class by talking about possible protocols for sending encoded text, as opposed to just numbers. Using a protocol we created, we practiced sending formatted messages with the Code Studio internet simulator.

We completed the assessment of our final protocol, and ended the period working on Code Studio questions.

Friday, September 9, 2016


Journal Entry:

Today, my desk partner was Qiufei Smart.

This morning was the first test of the year, the unit 1 chapter 1 assessment. After everyone finished the test, we began the lesson with an open question: list as many vocabulary words as you can relating to the internet.

server, IP address, routers, hacking, jailbreaking, white/gray/black hat hackers, dark web, bandwidth, latency, administrators, DNS, http, net neutrality, algorithm, encoding

Next was the “What is the internet?” video of Vint Cerf, one of the fathers of the modern internet.


IETF - Internet Engineering Task Force; develops and promotes voluntary Internet standards and protocols, in particular the standards that comprise the internet protocol suite (TCP/IP)

Internet - a group of computers and servers that are connected to each other

Net Neutrality - the principle that all Internet traffic should be treated equally by internet service providers

Request for Comments (RFC) - documents are how standards and protocols are defined and published for all to see on the IETF website

We ended the class by discussing Vint Cerf’s famous document “The internet is for everyone, but it won’t be if…” where he listed nine challenges to the internet.

Tuesday, September 12, 2016


Journal Entry:


Homework is the google classroom assignment regarding protocol, IP addresses, and DNS.

Thursday, September 15, 2016


Journal Entry:

Today, my partners were Michael Sunderland and Kerren Siedner, forming group #3.

We started the class with a note passing activity, meant to simulate how routers transmit messages. This then transformed into the newest internet simulator, meant to demonstrate how a message is sent through multiple routers before reaching its final destination, the importance of knowing one’s IP address, and the danger in putting private information through public routers.

We ended the class independently working on Code Studio and our Frayer models.

Tuesday, September 20, 2016


Journal Entry:

Today, my desk partners were Qiufei Smart, Akshana Vinotheesan, and Matthew Speer, forming team #5.


If I want multiple packets sent together via the mail, how is this done? In order to send multiple parts of one package, you need where it is coming from (on the top left corner of the envelope)  and where it is going (center of the envelope’s front) to clearly labeled, as well as putting the appropriate number of stamps in the top right corner. All locations (to and from) require an address, city, state, zip code, etc. Each part of the package must be labeled with what portion of the package it contains (ex. 1 of 4).

How does the sender know when their message was received? Tracking methods, signed confirmations, or reply letters all inform the sender that their packages have been successfully transferred. How does the recipient know the sender knows the packages were received? Reply letters.

How does the internet deal with sending packages? Breaks large piece of data into packets with appropriate labeling allowing routers to a) be able to manage the packet size, and b) know where the message is supposed to go. Confirmation between the sender and the receiver, if one piece of data is lost, redundancy allows data to be resent and that to be confirmed by both parties.  This makes up the Transmission Control Protocol created by Vint Cerf.

We began the day with a physical demonstration of how packets are split and sent across routers, then moved onto the newest Code internet simulator. This one could only send packets of eight bits, requiring us to create a protocol to make sure the entire message had been sent, as seen below.

Thursday, September 22, 2016


Journal Entry:

Today, my partner (but not “desk” partner!) was Qiufei Smart. The day started with a little unorthodox activity; outside, we had to get as many IP addresses from our classmates as possible, not having any way of telling whether or not the ones we already received had been changed.

Why was the outside model so inefficient? Because IP addresses are constantly changing, if one computer needs to directly ask another for its IP address, it will quickly become incorrect.

DNS: Domain Name Server. Pro: efficient! Con: Distributed Denial of Service Attack (DDoS), cybersecurity issues.

The end of the class was independent work on Code Studio, our Frayer models, and the “Rapid Research” project.

Monday, September 26, 2016


Journal Entry:

Today, my desk partner was Bradley Goldberg.

We began the class by reading through the document HTTP and Abstraction on the Internet and watching a video outlining the layers of the internet. After learning the concepts, we put the information to the test by exploring various web pages with our internet browser’s development tools.

The class ended with an introduction to the “flash talk” presentation, and some independent work on Frayer models, our flash talk, and the rapid research project.