Sniff - A Language for Arduino and Pi
Written by Lucy Black   
Monday, 01 September 2014

Sniff, a language that is based on Scratch in which you write regular text-based code rather than dragging and dropping blocks to create programs, has reached Beta 8.

Sniif is described as:

a "Scratch-like" programming language that's designed to help Scratchers move gently from Scratch to more conventional languages. They can start writing programs, without having to learn a new language because Sniff is based on Scratch. They learn a little more about variables, compiling, syntax errors (!), and they can have fun controlling real hardware while they're doing it.

 

 

Its website went online in February 2014 with Beta 3, which supported Mac, Linux (x86) and Arduino Uno. The real idea is to provide the next step for enthusiastic Scratch users who otherwise have to make the transition to more difficult text based languages like Python:

"So why do they fail to move on?  Because they're ready to write SCRATCH!!!!. They know the blocks of Scratch, they know the control structures, they know the messaging model. They can create Scratch programs without reference to the block palette, because they're Scratch programmers. Python (or any other language), looks different, has different syntax --- how can anyone remember Python when everything they've been taught is Scratch."

Beta 4 has improved support for the Raspberry Pi and each successive beta has gone further as regards the Arduino versions and devices users can work with. The latest version adds support for: 

  • Gamebuino 
  • Punchthough Bean (not quite finished)
  • SIM900 Mobile Phone Shield

Beta 8 also has device aliasing. The Release Notes explain:

Devices were previously identified by their device types, so if you made a dht device it was called dht. That still works, so you can carry on as before, but we've added the option to name devices so you can:


make thermometer dht11 device

make display lcd device

 

This means you can swap out a ds18 for a dht11, or an lcdi2c for a regular lcd just by changing the declaration, rather than the whole code. However we've also taken the opportunity to rename some of the devices. Previously we tried to keep device names "meaningful" so for example the ds1307 device was called clock. Now you can name your own devices we can give the devices more specific names, and then you give them your own friendly names: "make clock ds1307 device". If you want a different kind of clock device (like the nativeClock device), then you can select it for yourself.

 

One thing that is clear from the above is that Sniff is good at tinkering with gadgets. However its main concept is helping those who have learned Scratch move on to a conventional "written" language and since Beta 5 it added a Minecraft device so that its users could program the Raspberry Pi version of Minecraft. 

A Programmer's Guide to Scratch 1.4

Scratch 2.0 Released - Use It In A Browser

A Programmer's Guide to Scratch 2

Let's Teach Kids To Code!

 

To be informed about new articles on I Programmer, install the I Programmer Toolbar, subscribe to the RSS feed, follow us on, Twitter, Facebook, Google+ or Linkedin,  or sign up for our weekly newsletter.

 

Banner


Turing Award For Reinforcement Learning Pioneers
16/03/2025

Andrew Barto, Professor Emeritus of Information and Computer Sciences  at the University of Massachusetts, Amherst and Richard Sutton, a professor of Computer Science at the University  [ ... ]



AI Produces A Breakthrough In Weather Prediction
26/03/2025

The great hope for AI is that it can solve difficult problems, reducing costs and making solutions widely accessible. Aarvark is a weather forecasting system that can be run on a single desktop comput [ ... ]


More News

 

espbook

 

Comments




or email your comment to: comments@i-programmer.info

Last Updated ( Monday, 01 September 2014 )