## 1. References Google Computational Thinking for Educators. (n.d.). What is computational thinking? Retrieved from https://computationalthinkingcourse.withgoogle.com/unit Google for Education. (2012, June 22). Solving problems at Google using computational thinking [video file]. Retrieved from https://www.youtube.com/watch?v=SVVB5RQfYxk Wolfram, S. (2016, September 7). How to teach computational thinking. Wired. Retrieved from https://www.wired.com/2016/09/how-to-teach-computational-thinking/ Yadav, A., Hong, H. & Stephenson, C. (2016). Computational thinking for all: Pedagogical approaches to embedding 21st century problem solving in K-12 classrooms. TechTrends, 60(6), 565-568. *Only available through the SpringerLink Journals Complete database

## 2. Problem: Laura wants to go see band, but can’t take off work and only have $375 of funds.

### 2.1. Decomposition: Laura needs to determine all the locations and times that band is playing where she would not need to take off work. Laura needs to figure out the cost of plane tickets, concert tickets, and accommodations for all of those times and dates. She will need to add up all the costs and determine which locations would be within her budget. Then, she would make a decision of where to see band from the options she had left within her budget.

2.1.1. Rationale: This is an example of the computational step, decomposition. Decomposition is breaking down a problem into smaller parts (“Google computational thinking for educators”, n.d.) Because the problem included determining where band was playing on days she could see them without taking off work, calculating multiple different costs and then adding up those costs to determine the total costs, each part of the process was separated to make it easier to solve the whole problem of wanting to go to the concert on a budget.

2.1.2. Pattern Recognition- Laura researches the tour dates to see what days and places band plays. She learns that band only plays on Saturdays (the only day when she could see them without taking off work) this year in Chicago, New York, and Red Rocks. She begins researching flights to these locations and determines that the cost for flying in on Fridays is $100 for both Red Rocks and New York while the cost for flying to Chicago is $275. She also finds that flying in on Saturdays is $200 for Red Rocks and $175 for both Chicago and New York. Next, she must research the costs of accommodations in each of those places. The cost for accommodations in Red Rocks is $75 a night. The cost for accommodations for New York is $150 a night. There is no cost for accommodations in Chicago because she can stay with her friend Lauren. Next, Laura must research the costs of each concert ticket in their respective cities. She discovers that Chicago has the most expensive ticket at $125 followed by $75 for Red Rocks and $60 for New York.

2.1.2.1. Rationale: This is an example of the next step, pattern recognition. In this step, the computational thinker must look at the data and find patterns (“Google computational thinking for educators”, n.d.). Here, Laura has looked at all of the data including tour schedules, airplane tickets, and accommodations to determine the pattern of lowest cost options as well as options that fit within her time constraint.

2.1.2.2. Algorithm Design- Laura must write down and calculate all of the possible combinations of cost by adding up the cost for flying into New York on Friday and Saturday, the accommodations cost for staying both one and two nights depending on what day she flies in, and the cost of the ticket. She must also add up the cost for flying to Chicago on both Friday and Saturday as well as the cost of the ticket, but she does not need to add anything for accommodations since she would stay with her friend. Laura must add up the cost for flying to Red Rocks on both Friday and Saturday, the cost of accommodations for staying both one and two nights, as well as the cost for the concert ticket. She learns that it would be within her budget to see band at Red Rocks if she flys in on either Friday or Saturday or Chicago if she flys in on Saturday. She decides to buy a ticket to see band on Saturday in Chicago, books her Saturday plane ticket, and has a blast!

2.1.2.2.1. Rationale: In this step of computational thinking, algorithm design, the thinker must come up with a step by step process that will solve this problem and others like it (“Google computational thinking for educators”, n.d.). Because Laura needed to determine the total cost of each trip, she considered each different scenario (Friday New York, Friday Red Rocks, Friday Chicago, Saturday New York, Saturday Red Rocks, Saturday Chicago), calculated the costs, and compared the costs to her budget of $375 to determine the possible options. From her possible options, she makes a decision on which show to attend. This is an example of computational thinking because of the steps that have just been described. These same steps could also be used to figure out attending future concerts and could thus be applied to similar problems.

2.1.2.2.2. Abstraction- Laura decides that other concert going lovers would benefit from being able to streamline this process using technology. She decides she could create an app using her friend Walton’s computer science skills that automatically scours the internet for concert tickets for a specific band, and combines it with the cost of plane tickets and accommodation all in one place! The user simply inputs their budget as well as the artists they are interested in seeing. They can also input their hometowns or places where they would not need accommodations. The app quickly searches possible combinations that would allow the user to see the artist within their budget. She becomes rich off of the success of her app and she never has to worry about not being able to spend money on seeing concerts ever again.