Using Code to Teach the Design Process

Innovative Designers

ISTE Standard for Students #4 is “Innovative Designer: Students use a variety of technologies within a design process to identify and solve problems by creating new, useful or imaginative solutions.” There are four indicators listed under this standard and the first indicator reads: Students know and use a deliberate design process for generating ideas, testing theories, creating innovative artifacts or solving authentic problems. (ISTE, 2016).  Jorge Valenzuela wrote a article published on the ISTE website called “Teaching Kids Computer Science Through Design and Inquiry” and he believes, “to be a proficient coder, it’s critical to learn how to develop a product, not just write code.”  Valenzuela lays out 4 steps for educators to consider when attempting to approach code through a design and inquiry perspective. Step 1: learn the skills and the tools, Step 2: start with computational thinking, algorithmic thinking and design, Step 3: introduce new knowledge and skills through inquiry and design, and Step 4: incorporate reflection into work with your students (Valenzuela, 2017).   

 

What’s the True Objective?

One of the most important things we can do during a lesson or unit of study is to be intentional with our learning objective as well as be very explicit when describing this objective to our students.  For me, I find this task difficult when planning lessons for coding instruction. When teaching my elementary students coding, many of them get very caught up with solving the puzzles as quickly as possible and get frustrated when they get “stuck”.  My objective for these types of learning experiences is focused on the process rather than the product.  I want my students to not just learn how to solve code puzzles but learn how to design by planning, taking risks, making mistakes, and learning from those mistakes.  My part of the equation (intentional objective) is clear, but articulating this to my students and having them grasp the objective is more difficult.  I think one of the keys to solving this dilemma is to spend time teaching about the design and inquiry process first, so students will have that foundation to draw upon when working through the coding puzzles.  Valenzuela has been intentional doing this with his students, “At first, we didn’t directly tell our students that they would be learning to code in this new project. We introduced it this way so that they wouldn’t initially focus so much on coding but more on the steps of the design (or project) that would include coding for successful implementation (Valenzuela, 2017).”  

Ok to Fail

Making mistakes or “failing” has often solely been negatively associated and not valued as a learning experience.  Slowly, making mistakes and using those mistakes to adjust our plan of action in a learning environment is becoming “ok”. When writing about educational makerspaces, Kurti and Kurti (2014) write, “It’s OK to fail. In fact, we encourage what most of society calls “failure,” because in reality, it is simply the first or second or third step toward success. No amazing innovation is created on the first try. Truly paradigm-shifting technologies and devices are the outgrowth of many iterations. Thus the path to success is paved with failures.”  I want my students to take risks when they are solving their coding puzzles, even if these risks mean they are more likely to make mistakes. I encourage my students to use “repeat” functions and “conditionals”  when they see fit, so they learn the concept of using loops and conditionals.  Innovation, inquiry, and the design process are learning environments that we need more than ever in schools. And these learning environments require “failure”. Our students must learn how to persevere when making mistakes and use their mistakes to plan a better design the next time.  As educators, we can help them learn how to persevere by engaging them in low-stakes, yet motivating, coding tutorials.

 

Sources:

Code.org website (Retrieved on 2018, February 16)

Iste.org. (2017) ISTE Standards for Students. (Retrieved on 2018, February 14) from: https://www.iste.org/standards/for-student

ISTE Connects. (2016, January 19). Here’s how you teach innovative thinking. International Society for Technology in Education. (Retrieved on 2018, February 15) from: https://www.iste.org/explore/articleDetail?articleid=651

Kurti, R. S., Kurti, D. L., & Fleming, L. (2014). The Philosophy of Educational Makerspaces. Teacher Librarian, 41(5), 8-11.

Valenzuela, J. (2017). Teaching Kids Computer Science Through Design and Inquiry. (Retrieved on 2018, February 13) from: https://www.iste.org/explore/articleDetail?articleid=2105&category=Computer-Science&article

3 thoughts on “Using Code to Teach the Design Process

  1. Thank you for sharing your experiences with coding, Susan. This is an area where I have a lot of room for growth. I can appreciate the enormous shift in thinking that we are asking of students. In the last few years as we’ve shifted to the Common Core, I saw my students have growing pains when asked to work with inquiry questions or open-ended projects. They were so used to there being one correct answer, that they really pushed back when I didn’t provide them with one. Prototyping and learning from mistakes is such a valuable life skill.

  2. Susan, thank you for sharing this resource. I found it very helpful for my own understanding, as I have never taught coding before. The part I enjoyed the most was that it is ok to fail. I love this message and I think it is so important to teach to our students. I often see students think less about themselves when they don’t master a task on the first try. Keeping learning low-stakes but engaging is a great way to sum up that section. Well done!

Leave a Reply

Your email address will not be published. Required fields are marked *