Small Basic is a programming language, designed by Microsoft, to make programming extremely easy, approachable and fun for beginners. Small Basic’s intention is to bring down the barrier and serve as a stepping stone to the amazing world of computer programming. Its a lot more advanced than Scratch but certainly something to challenge the more able KS2 programmers.
Here's an example of a program written in Small Basic:
GraphicsWindow.BackgroundColor = "Black" For i = 1 To 1000 GraphicsWindow.BrushColor = GraphicsWindow.GetRandomColor() x = Math.GetRandomNumber(640) y = Math.GetRandomNumber(480) GraphicsWindow.FillEllipse(x, y, 10, 10) EndFor
Although its a lot more complicated than Scratch, it is logical to understand. The first line sets the background colour to black, it then loops a thousand time and prints a random circle in a random position. The result is the following effect:
Here are a series of video tutorials walking you through how to create your first program in Small Basic, how to input and output, conditional loops and then an introduction to graphics:
I'd advise watching each video with the children first, then let them work through the tutorials at their own speed, pausing the video and then typing the relevant code into Small Basic. There are 17 videos in total which get the children to the point of creating a database - which is pretty advanced for KS2/K-12.
Microsoft have created a getting started guide which goes through a lot of the features of Small Basic. Microsoft TechnNet have also created a large set of powerpoints which are quite child friendly and cover everything from basics through to file input/output.
Small Basic can also be used with Lego Mindstorms to interact with the EV3 robot. More details can be found here. Work has also been done getting Small Basic to work with Microsoft Kinect - this may be a good project for someone!