“Vaporators! Sir, my first job was programming binary loadlifters—very similar to your vaporators in most respects.“―C-3PO
This week the students learned different aspects of coding. We started the day with our Design Challenge. The students had to work in groups to create the latest and greatest app that will aid in collaboration. The students came up with ideas that included assisting each other in mini-games, a painting app that allowed two or more students to work together, or an app that put chats, videos, and documents all in one place. The students had to give the app a relevant name to its features and create a logo.
The students then learned how to code and decode Binary notation. They discovered that computers processed information using 1’s and 0’s – on and off. Binary code can be chunked down into bits and bytes. Every 1 or 0 is a bit. 8 bits makes a byte. One byte is equal to a character such as an “A” or a “@”. To figure out the code, the students had to learn the difference between Base 10 and Base 2. Our everyday math is done in Base 10 (numbers 0-9) while Binary is Base 2 (0 or 1). We chunked each Binary statement into 8 bits. From there, we calculated the Exponential Notation of Base 2 from 2^7 down to 2^0 resulting in the range 128, 64, 32, 16, 8, 4, 2, 1. Continuing, students assigned the value to the corresponding bit in Decimal Notation . If the bit was a 0, the value was 0. If it was a 1, it would be whatever the Decimal value was at that particular place. For example:
Binary: 0 1 0 1 0 0 1 1
Decimal: 0 64 0 16 o 0 2 1
From there, we add the Decimal values together: 64+16+2+1= 83. Using an ASCII chart, students would look find the Decimal value and the associated Character, the example being an “S”. They continued to solve different Binary expressions using a flipchart. The students also learned how to convert Decimal notation to Binary using inequalities, specifically greater than or equal to expressions. They could create an algorithm to generate the Binary statement.
After lunch, the students were guided through the app Hopscotch. They were shown basic blocks of code that create a pattern on the screen. After the initial pattern was created, a more complex pattern was added on. The students put their computational thinking skills to the test. In Decomposition, they had to break down the problem and figure out the task. With Pattern Recognition, they had to see if there was any repeatable patterns (draw, draw, draw, turn, repeat). Lastly, they had to develop the Algorithm that would solve the problem.
After Hopscotch, students could explore different coding apps. They were allowed to self-select the apps based on their strengths, interests and ability level in coding. The apps ranged in difficulty from beginner to expert. Lightbot and Scratch Jr were two introductory based apps. Swift Playground was an intermediate app. Hopscotch and Scratch Online were two of the more complicated apps. Students could also figure out how to code in Minecraft Education using Code Connection or program the Microbit.
At the end of the day, the students completed their reflections and had to comment where they felt coding could take them.