There's a big problem facing the IT world: Where are all the new developers going to come from?
I'm from the 8-bit generation. We had our Spectrums and our BBC Micros, all with built in BASICs of all shapes and sizes, able to start programming from the moment that flashing cursor appeared on the screen, even if it was as simple as printing our name on the screen in an endless loop. Fire up Windows or Mac OS X or even Linux and you're there in a shiny happy world of windows and icons and apps. There's plenty of interaction, but no code.
Microsoft's been making educational computing waves this week. First there was reference to engaging with the hobbyist community in the leaked Windows 8 planning slides. Getting hobbyist developers on board is something that Microsoft has been trying to do for some years now, with initiatives like Coding4Fun and the free Visual Studio Express tools. They've had some impact, but they still need work to get your code online and running.
A few years back Microsoft had a free development tool, Web Matrix, designed to make it easy to build and deploy ASP.NET web sites. It worked well, and was a tiny download – I actually ended up using it as a prototyping tool for the web development team I was running at the time, especially the bundled lightweight Cassini Web Server. Now Web Matrix is back, a set of tools for quickly building web applications. There's an IDE, Razor, a new syntax for ASP.NET, and an embeddable database, and a simple standalone test web server – as well as support for PHP alongside ASP.NET. It's all free and all very easy to use, coming as part of Microsoft's Web Platform Installer.
But it's still secondary school coding.
What's really needed is something that'll get the coding bug kicked off at primary school – and in a gender-neutral way that helps encourage more women into the profession. One option can be found on the Xbox and on the PC in the shape of Kodu, which goes beyond Logo to create interactive game worlds that make everything on screen an interactive object with methods and rules. It's a useful way of getting started, but it's a purely visual programing environment, more conducive to interactive story telling than anything else.
I came across something different yesterday, something that took me back to those 8-bit days. Small Basic is a step up from Kodu (though it shares some concepts, especially in the way it does Intellisense!), intended to teach basic .NET development. As well as delivering traditional windowed applications, you can use Small Basic to build Silverlight programs that'll ruin on both desktop and in browser. Programs can be quickly published to the SmallBasic.com web site, with a shot URL that simplifies You can even export programs as Visual Basic, ready for use in Visual Basic Express.
There's already quite a community developing around Small Basic, sharing code and programs, including teachers looking at using it in elementary programming classes.
Oh, and it's less than a 6MB download (not counting .NET and Silverlight!).
I can't help but be reminded of the sadly cancelled Popfly, which tried to do something similar for cloud and web development. However there's one big difference here – Small Basic is a desktop application with a web component, and a route to other widely available development tools. Even so, let's hope that Small Basic is a success, because it's something we surely need…