Based on the foundations of Scratch, one of the original visual programming languages, Snap! takes a low-floor, high-ceiling approach to computer science concepts by appealing to the needs of both first-time learners and those with prior coding experience. Snap! is available in an open-source, browser-based model, meaning that those interested in computer science are able to learn the language free of charge, without having to download additional software.
“Visual programming languages like Snap! are changing the way that people view computer science,” said Bernd Welz, chief knowledge officer, SAP. “The high adoption rates of our visual programming language prove that anyone has the ability to learn how to code. Through Snap!’s easy-to-digest structure and accessibility, we’re helping aspiring computer scientists from all backgrounds realize their potential.”
The block-based nature of Snap! makes learning fun and collaborative for all skill levels through aspects such as:
- Drag-and-drop building: Users can easily stack and combine blocks in different categories to create interactive animations, games and apps, to name just a few possible projects.
- Visual representation: Pictures are used to represent complex ideas such as loops, Booleans and threads, helping learners to visualize why certain combinations work together – almost like putting together a puzzle.
- First-class data types: Unlike many other visual programming languages, Snap! makes blocks and data structures first class, allowing users to create control structures and lists of lists.
- Group-based learning: Snap! concepts are best learned in partner and group-based projects. By taking a block-based approach versus a text-based approach, users from different cultures are able to overcome common language barriers.