Beginner Corner Blog Posts
Share your stories, ideas, and insights here.
Showing results for 
Search instead for 
Did you mean: 

This blogpost will show you teaching and learning resources available for the Snap! ( visual programming language.

Snap! is free, open source and developed at SAP together with UC Berkeley. It invites learners to creatively implement ideas and experience computer science in a playful and experimental way. What makes Snap! special is its audacious claim not to compromise on expressiveness despite a low entry threshold.

"Fun with Snap!" banner showing different Snap! projects in instant camera images"Fun with Snap!" banner showing different Snap! projects in instant camera images

You want to learn Snap! in detail or want a comprehensive guide through introductory programming and Snap!?
Our openSAP courses are exactly what you're looking for:

Or take a look at Snap!'s signature curriculum "The Beauty and Joy of Computing" from UC Berkeley and EDC.

  • The Beauty and Joy of Computing (BJC) is an introductory computer science curriculum developed at the University of California Berkeley, intended for non-CS majors at the high school junior through undergraduate freshman level.
  • BJC Sparks is a middle school and early high school curriculum focusing on a functional approach to programming, emphasizing the flow of information through functions - rather than emphasizing iteration and commands - and including exciting projects in graphics, data and media. 

You’re running a workshop and look for easy to use resources?These are our recommended, tried and trusted workshop ideas for different programming levels. If you’re looking for more, check the end of this document.

Workshops for beginners:

Workshops for intermediate programmers:

Other Snap! extensions:

  • Turtlestitch: 
    Turtlestitch lets you bring your Snap! code to the real world. It’s a version of Snap! made by Andrea Mayr-Stalder and Michael Aschauer that lets you export files for digital embroidery machines.
  • Snap4Arduino: 
    Physical computing with Snap!. This Snap! version allows tethered programming of Arduino and Arduino-like boards. You can only run the programs while the boards are connected to your computer but can enjoy the live programming and parallelism that Snap! provides. In case, you rely on an autonomously running board, check out MicroBlocks (
  • Snap! Extension Site: 
    Check out Snap!'s extension page for more interesting Snap!-based programming environments.

Further workshop resources:


1 Comment