# Module 3. Week 2.
# Assessment
# Summary and core material
- Presentation (opens new window)
- Video Recording (opens new window)
- Discord link (opens new window)
- Online platform editor (opens new window)
# Assignment
# OPTION 1:
Design and implement a simple game or quiz using a block programming language. Ideally the game / quiz can be used in your classroom but it is not a mandatory requirements. If you feel comfortable using another programming language feel free to use it.
You can take one tutorial/example from internet but you should make some changes to it
You have to build and test the program carefully either in your computer or in a mobile phone.
You can use physical computing (e.g. Arduino, Microbit or other embedded platform). However, we will cover this topic in Module 4, so we strongly recommend use a different platform this week.
# OPTION 2: Absolute beginners
Build a simple story using Scratch. You can use some of the tutorial examples.
# Documentation
In your documentation, describe briefly your game/quiz and the programming platform you have used. Discuss about your main challenges.
In addition, you should provide the source code (as a file or a link that can be opened by anyone) and several screenshots of your application. If possible, a video is a great way of documenting your project.
Finally, please, answer following reflection questions:
When you design a learning activity how do you take into account diversity? Could you describe one learning situation in which you did not take into account diversity in planning? How did you solved the situation?
What aspects would you need to take into consideration if you have kids with a) learning disabilities, b) physical disabilities, c)emotional disabilities when preparing your DF activities
How do you usually assess learning activities which involve digital fabrication? Which is your favourite method? What aspects do you think you can change in your assessment practices?
What could be the challenges when integrating programming in your classes?
# Tasks in the Fab Lab
- Have a look to any of the block programming tutorials suggested below
- Explore principles of programming with your instructor
- Program a simple example application using a block programming language.
# Asynchronous content
# Assessment examples
More will come soon.
# Programming environments
- Turtle Logo (opens new window): the father of all programming environments for kids
- Scratch (opens new window): The popular MIT programming environment. The recommended option for starting
- MIT App inventor (opens new window): Create applications for Android mobile phones
- Minecraft edu (opens new window): Learn programming in Minecraft world. Check also MakeCode (opens new window)
- Snap (opens new window): Scratch like version for older kids
- Alice (opens new window): One of the oldest programming environments to build stories
- Roblox (opens new window): Create complex games. It includes a marketplace so others can play it. One of the most complex options
- PygameZero (opens new window): programming computer games with python.
- Processing (opens new window) Programming tool oriented to creative work.
- LEGO Educational Spike (opens new window): Lego environment to build and control robots
- Makecode (opens new window) Block programming for different embedded programming platforms as well as minecraft
- Tinkercad (opens new window) Simulate electronics and microprocessor. Now supports Arduino and microbit.
# Technical guides and tutorials
# Basic Tutorials for programming environments
- Getting started with Scratch (opens new window) for absolute beginners
- Scratch starter projects (opens new window) including animation, games and interactive art.
- Creating a simple quizz with Scratch (opens new window)
- Starting programming with Minecraft (opens new window)
- Minecraft tutorials (opens new window)
# Tutorials and info for different programming environments
Scratch
- Scratch for Educators (opens new window)
- Scratch Educator Guide (opens new window)
- Scratch Creative Computing Curriculum (opens new window)
- Scratch tutorials (opens new window)
- Scratch Ideas page (opens new window)
Snap!
- Berkeley’s Welcome to Snap! (opens new window)
- Snap! Reference manual (opens new window)
- Beauty and Joy of Computing (BJC) (opens new window)
- BJC Sparks Student Material (opens new window)
# Programming basics tutorial
Sequential Programming tutorial
- Exercises with Scratch about sequential programming on different topics, like drawing a Mondrian-like painting. (opens new window)
- A very basic explanation of sequential programming with Scratch (opens new window)
Variables
- A simple tutorial about data representation (opens new window)
- A beginner friendly tutorial about variables with Scratch (opens new window)
- A tutorial that goes a little bit deeper into what are variables (opens new window)
Control Flow Structures
- A basic tutorial about flow control (opens new window)
- Conditional control flow tutorial (opens new window)
- Loop control flow tutorial (opens new window)
- A list of control blocks in Scratch (opens new window)