This week, I wanted to share a little bit more about our school’s overall focus on computer science. It is easy to get lost in the fact that it is easy to see our students learning to code, but often the deeper connections of computer science get lost. At CSIS@SES, we are interested in doing more that teaching coding. We also want students to start seeing the possibilities computer science offers form problem solving.
One way that we hope to accomplish this mission is by addressing something called “Computational Thinking.” By addressing these skills, we hope to provide students with a framework that supports the goal of showing students how to harness the power of computing. Computational Thinking includes a set of different skills that includes concepts such as: Decomposition, Pattern Recognition, Abstraction, and Algorithmic Design.
Of these 4 concepts, Algorithmic Design may be the hardest to understand. Put simply, it means knowing how organize a series of steps to solve a problem, but its connection to our lives today goes much beyond that. To illustrate this point, I wanted to share two recent articles that I ran across this week that demonstrate the impact understanding Algorithmic Design is/will have.
First, the use of algorithms to capture detailed information about our personal lives has become a big topic. Helping students become responsible digital citizens means teaching them to understand algorithm design. Social media apps like Facebook, Twitter, and others are using algorithms in the background of their public interface to collect data about our habits. This has huge implications for how to protect our personal privacy online. This is why a search on Amazon will influence the adds you see on other websites.
I have been particularly interested in how the social media platform TikTok takes advantage of this concept to create a personalized experience by using machine-learning or artificial intelligence (AI) to optimize a feed of videos that will provide a never-ending series of tracks a videos that hold the users attention. While my son, who consumes media almost strictly through this app, finds this freeing, I find this a bit disturbing. In order to help children, like my son, we need to help become savvy consumers of digital media by teaching them how tech companies are harvesting data through hidden algorithms on the apps they use everyday. I highly recommend reading more about this in the article “How TikTok Holds Our Attention.” The article will help you start the discussion with your child.
Second, the use of algorithms helps us understand how computers are capable of handling large amounts information through a series of super-fast simple decisions. One way to introduce a child to this may be by illustrating the fact that computers don’t do math the way humans do. For example, a computer would never use the standard algorithm of multiplying. This is discussed in detail in this article by Quantamagazine called “On Your Mark, Get Set, Multiply.” In short, computers always work best when using the most efficient way possible. The standard way we were taught to multiply is not the most efficient method. A computer wants to do multiplication by breaking large numbers into smaller chunks, and by performing small additions which are faster than and more efficient than small multiplication. This is almost the exact opposite of how humans have been doing it. The graphic below gives a explanation of this

I know its a bit complicated, and it isn’t easy. I’m not suggesting teaching students to multiply this way, but the important thing is that math techniques such as this become the basis of how computers encrypt and decrypt data such as secret messages and sensitive data. The methods computers use are more closely related to algebraic formulas. These formulas unlock understanding how to create shortcuts to developing even faster ways to multiply. I am hoping to design a lesson using Scratch block programming to help students see this for themselves. I think if we can get students to teach Scratch how to multiply using this type of algorithm then this will better illustrate how powerful an algorithm can be.