Creating Creative Communicators
Communication, Collaboration, Critical Thinking, and Creativity are often referred to as the 4 C’s of 21st Century Learning. These so-called “soft skills” are different from the “hard skills” of math and science” but essential for success in applying math, science, engineering, and technology in our modern society and, arguably, harder to teach. The Battelle Foundation’s Partnership for 21st Century Learning highlights these 4 C’s throughout its “Framework for 21st Century Learning Definitions”. Another organization in this space, the International Society for Technology in Education (ISTE), provides us with multiple references to these modern “soft” skills throughout the ISTE standards. One example is ISTE standard 6, Creative Communicator, which addresses all of these in one standard for students.
International Society for Technology in Education (ISTE) Standard 6
ISTE Standard 6, Creative Communicator, students communicate clearly and express themselves creatively for a variety of purposes using the platforms, tools, styles, formats and digital media appropriate to their goals. Students:
- Choose the appropriate platforms and tools for meeting the desired objectives of their creation or communication.
- Create original works or responsibly repurpose or remix digital resources into new creations.
- Communicate complex ideas clearly and effectively by creating or using a variety of digital objects such as visualizations, models or simulations.
- Publish or present content that customizes the message and medium for their intended audiences.
Successfully addressing ISTE Standard 6, Creative Communicator, requires aspects of all four C’s from the core set of 21st Century Skills. Creativity is obviously required in order to be a creative communicator, as are communication and collaboration essential skills for creatively communicating with others. Lastly, and perhaps less obvious, is the need for critical thinking as creative communicators (i.e. students) evaluate tools, mediums, and resources to use effectively in order to accomplish their goals as supported by this standard. This last part comes out through the third component of the standard to “communicate complex ideas clearly and effectively…” and forms the basis for my essential question and the focus of this blog post.
How do teachers empower students to communicate complex ideas in creative ways so that they use a variety of digital objects such as visualizations, models, and simulations?
Computer Science for the Non-Computer-Science Teacher
Encoding is a means of transforming information into a format that is easily transferred or communicated. Encoding creative communication is one way to think about transforming student abilities so as to transfer information in more unique and creative ways such as visualizations, models, or simulations. What better way to do this than computer science and programming? Not a coder? Not a problem. We need to move beyond the traditional definition of the computer science teacher and expand the communication medium to all classrooms and thus create computer science opportunities for the non-computer-science teacher. Block based coding is an equalizer in this area and empowers everyone to approach and learn to write computer programs in an easily understood and transferable environment. This opens all sorts of doors for everyone to explore creative communication and to communicate complex ideas creatively via a variety of digital objects because those objects can be programmed by students as young as 1st grade and in some cases even kindergarten.
MIT, Scratch, & the Rise of Block-Based Programming in Education
MIT’s Scratch Website: The Logo computer programming language, otherwise known as the “turtle programming language” is what essentially launched accessible programming but MIT’s Scratch is what truly made block-based programming mainstream (it’s worth noting that Logo led to Lego Logo which was a precursor to Scratch). Scratch is an accessible block-based language that is especially user friendly when it comes to animating a character, otherwise known as “sprite”, and assigning dialogue or interactions via code. This becomes extremely useful for integration opportunities across Language Arts, English language learning, and art among other areas. Scratch is compatible with a wide-range of products and browser-based so it’s easily accessible (like most modern block-based programming languages).
BootUp: Scratch’s curriculum for educators has not historically been one of the more user-friendly resources. The newest iteration appears to be a definite improvement although still a little text heavy at times. Those looking for something a little different may want to check out BootUp’s freely available Scratch curriculum which utilizes a variety of short student-friendly video vignettes to support instruction. BootUp bills themselves as “what’s next” after initially jumping into computer coding via Code.org or some other introductory platform.
Google CS: This is arguably the newest block-based coding curriculum for mainstream k-12 computer science. Google has created a series of introductory lessons that utilize Scratch as a means to teach basic computer coding strategies. Google CS’s selection at this point in time is somewhat limited compared to other resources because it’s newer but new lessons and resources are being added on a regular basis. Google CS’s choice of Scratch is an interesting one given that the block-based programming language, Blockly, is also created by and a project of Google.
Block-Based Coding with Blockly & Code.org as the Gold Standard
Code.org: “Hour of Code” was popularized by Code.org which essentially launched somewhat of a k-12 computer science revolution in a relatively short amount of time. Code.org uses Blockly and is the current gold standard of providing student friendly lessons for all grade levels. Once students have progressed through the highly formulaic, structured, and scaffolded lessons then they can apply the basic computer science skills they’ve learned in couple of different settings such as Code.org’s Play Lab. This is a fun environment for students to try out their newfound skills but slightly more limited than the more open forum provided by Scratch. To date, Code.org remains arguably the most user-friendly introduction to programming.
MakeCode as the New Kid on the Block & Physical Computing
MakeCode: Microsoft’s entry into the foray of block-based programming is only a couple of years old but has some powerful partnerships. MakeCode’s main strength is through these partnerships and both the virtual and physical computing that this allows. Current partners include micro:bit, Circuit Playground Express, Minecraft, LEGO Mindstorms Education EV3, Wonder Workshop Cue, Arcade, and Chibi Chip. The micro:bit partnership in particular is powerful because students can program a microbit: simulator on a computer web browser and take turns testing their programs on the relatively inexpensive physical micro:bits themselves (a basic microcontroller). The same is true of the Circuit Playground Express simulator as well as the LEGO Mindstorms EV3 simulator which provides a rough but workable simulated example. Long story short, students can write programs for physical devices but test them virtually which increases accessibility and stretches limited physical resources further. With the notable exception of the Wonder Workshop Cue, the remaining options can all be programmed via any browser and have a series of accessible tutorials provided below the programming environment. The micro:bit in particular has a robust set of curriculum available as well as a significant number of accessories.
Coding in Mathematics with Polyup
Polyup.com: Polyup is a drag and drop website that allows the user to program via math and what is essentially a math-based functional programming language. The platform gets around the challenge of doing this with order of operations by utilizing Reverse Polish Notation. Students can then use math to write basic programs, solve unique problems, and even code motion into objects. All of this is done via Polyup’s gamified computational thinking and mathematical coding online platform. There is also a real-world model for this approach to programming with math via the Wolfram Alpha search engine which uses a similar computing language and algorithm approach to Polyup. All of this bridges math, computer science, and a broader fundamental approach to applied computational thinking in a problem-based learning setting.
How Then Does The Average Classroom Teacher Apply This?
Again, think computer science for the non-computer science teacher. A classroom teacher interested in incorporating computer science should consider his/her objectives and what s/he is hoping to accomplish with students in the classroom setting. Is the focus on teaching basic programming itself? Problem solving? Content integration? Physical computing? Some combination thereof or something else all together? Additionally, gauging individual comfort level and available resources is important. Code.org empowers the average teacher without any programming background, knowledge, or support to sign up students and get them started together on mostly self-paced programming lessons as well as detailed offline computing lesson plans. The more comfortable or advanced the teacher’s ability then the more robust the example they might try such as programming stories in Scratch from scratch, designing video games in Arcade, writing programs for micro:bit microcontrollers in MakeCode, or even exploring entirely new avenues like programming 3-dimensional shapes in Minecraft for virtual interaction or Tinkercad for physical printing via their respective coding environments. The hardest part is starting but the journey of a thousand programming steps begins with that very first coded “Hello World” program. From there, the possibilities are infinite and students will no doubt exceed any expectations.
- MIT. (2020). Scratch. Retrieved from https://scratch.mit.edu/
- BootUp. (2020). BootUp Professional Development Curriculum Overview. Retrieved from https://bootuppd.org/curriculum/
- Code.org. (2020). Hour of Code Full course catalog. Retrieved from https://studio.code.org/courses
- Google for Education. (2020). Google CS. Google. Retrieved from https://csfirst.withgoogle.com/
- Microsoft. (2020). MakeCode. Retrieved from https://www.microsoft.com/en-us/makecode
- Polyup. (2020). Poly Challenge. Retrieved from https://www.polyup.com/
- Wolfram Alpha. (2020). Reverse Polish Notation. Retrieved from https://mathworld.wolfram.com/ReversePolishNotation.html
- Battelle for Kids. (2019). Partnership for 21st Century Learning Frameworks & Resources. Retreived from https://www.battelleforkids.org/networks/p21/frameworks-resources
- International Society for Technology in Education. (2016). ISTE Standards For Students. ISTE. Retrieved from https://www.iste.org/standards/for-students
- Computer Science Teachers Association. (2019). Computer Science Standards. Retrieved from https://www.csteachers.org/page/standards
- Microsoft (2020). Minecraft. Retrieved from https://www.minecraft.net/en-us/
- Autodesk. (2019). Tinkercad. Retrieved from https://www.tinkercad.com/