Teaching Computer Science at school just got easier as Microsoft is making a 30-hour curriculum, targeted at students in the age range 11 to 16, available as a free download.
The course is comprised of 10 units with each focusing on specific computer science concepts and programming skills. Teaching all units and lessons will require approximately 30 hours of instruction, with each unit including 1-4 lessons of approximately 45-60 minutes each.
The lessons are comprised of activities that introduce core CS concepts and give hands-on coding experience, as well as a number of independent projects suitable for applying the newly gained skills, and assessments for testing the knowledge and skill development acquired.
Many kids are already familiar with the world of Minecraft since it's a very popular collaborative game in which characters survive by performing tasks such as chopping, hunting or mining.This curriculum requires students to understand the merits of writing code to automate such tasks using the core concepts of computational thinking.
So by the end of the course students are expected to be able to:
Change their Minecraft world through coding in Microsoft MakeCode.
Describe and apply the following programming concepts:
Synthesize the concepts in a new, creative ways through self-directed coding projects.
The curriculum is well structured and addresses the probable inexperience of teachers who have never taught computer science before but nevertheless want to incorporate the CS into their curriculum, regardless of their subject area.
For example the guidance, backed by the appropriate material, given to educators is as as clear cut as:
Introduce the concept of computer science
Ask students: What is computer science? Then share: · The study of what machines can do for us. · Includes learning how to create new software, solving computing problems, and inventing new ways to use technology. · A very large subject that can be difficult for even computer scientists to define.
Ask students: Why is it important? How does it help us? Then share: · It’s changing everything about the way we live and work. · It’s for everyone, not just for computer programmers. · It teaches important skills, like creativity, problem solving, critical and flexible thinking, and working with others. · Those skills and knowledge are important for successful jobs and careers.
Coding with Microsoft MakeCode
Ask students: What is coding? Then share: · Code gives instructions to a computer to do something. · A computer can be a laptop, tablet, smart phone, or any kind of computer. Even robots. · Coding and computer programming mean the same thing.
The Units in detail:
Unit 1: Introduction · Describe computer science and coding and its importance · Learn to play and maneuver in Minecraft: Education Edition · Understand block programming in Microsoft MakeCode · Change your Minecraft world through coding
Unit 2: Events Lesson A: Introduction to events Lesson B: Coding with events Lesson C: Linking events Lesson D: Get creative with events
Unit 3: Coordinates Lesson A: Introduction to coordinates Lesson B: Coding with coordinates Lesson C: Automating actions with coordinates Lesson D: Get creative with coordinates
Unit 4: Variables Lesson A: Introduction to variables Lesson B: Coding with variables Lesson C: Combining variables Lesson D: Get creative with variables
Unit 5: Conditionals Lesson A: Introduction to conditionals Lesson B: Coding with conditionals Lesson C: Debug problem code with conditionals Lesson D: Get creative with conditionals
Unit 6: Functions Lesson A: Introduction to functions Lesson B: Coding with functions Lesson C: Building on functions Lesson D: Get creative with functions
Unit 7: Iteration Lesson A: Introduction to iteration Lesson B: Coding with iteration Lesson C: Debugging with iteration Lesson D: Get creative with iteration
Unit 8: Arrays Lesson A: Introduction to arrays Lesson B: Coding with arrays Lesson C: Building on arrays Lesson D: Get creative with arrays
Unit 9: Artificial intelligence Lesson A: Introduction to artificial intelligence Lesson B: Coding an intelligent agent Lesson C: Get creative with artificial intelligence
Unit 10: Final independent project · Design an original creative project to program four tools for a survival backpack to help you in a Minecraft world · Demonstrate your learned coding skills and apply them in a new way · Validate your approach to the project, including beta testing and analysis of code to debug and problem solve
Of course, the most eye-catching of all has to be Unit 9 on Artificial Intelligence which introduces the concept of crafting programs that mimic human intelligence, but also revolves around the ethical questions surrounding it.Here students will be creating AI rules for winning a tic-tac-toe game as well as building Intelligent Agents who navigate mazes and chop wood on their own.
The final project is about creating several sub-projects which address the needs that your Agent is going to have to satisfy in order to survive the game, and which can be solved with code. For example, to satisfy your character's requirements for lots of paper you can code a sugar cane farm for him to harvest. Simiarly for building better tools you can code an iron-finder.
In all, this curriculum offers a first class opportunity for educators around the world to introduce their pupils to the concepts of computer science and critical thinking in order to prepare them for the workplace of the future.
Open source is wonderful - except when it isn't. The latest mini-disaster, let's not get carried away, is that the creator and maintainer of wiringPi has given up, frustrated with the way people, aka [ ... ]