I recently discovered Microsoft TouchDevelop quite by random coincidence. From what I’ve read online it would seem that not too many people are aware of Microsoft TouchDevelop and the impressive capability this technology has to offer. Imagine simplifying the complexity of application development to the extend that the average tech savvy non-programmer can create full featured applications.
Microsoft TouchDevelop is made available by Microsoft completely free of charge. You may even implement TouchDevelop in commercial scenarios such as the Windows store, although the standard Windows store developer annual fee of $50.00 for freelance/independent developers and $100.00 for companies will be applicable.
In my opinion I regard Microsoft TouchDevelop as a technology that elegantly compliments the recent paradigm shift experienced in the area of technology innovation. In the past a factor that hugely affected a project or product’s success was the technical knowledge and capability of the development team.
Over the past few years large corporations such as Microsoft invested vast amounts of time and finances on research and developing application development frameworks (consider the .net framework). By implementing the development tools available today developing technically intricate solutions have certainly become extremely efficient compared to the previously held status quo.
It appears that successful development is no longer as reliant on technical skills as seen in the past. Having access to solid development skills should not be dismissed, but development projects should now more than ever focus on the ideas behind a project. Lines of code do not sell, ideas do.
Even when considering the modern application development tools available, there is still a steep learning curve involved in studying a programming language and learning to become a programmer. Microsoft TouchDevelop fills the gap between technical skills and innovative ideas.
Creative and innovative people aren’t necessarily technically inclined, the same as how not all developers are necessarily creative or ideas people. Imagine if having a good idea and being tech savvy (not necessarily a programmer) was all you needed to create the “next buzz technology”. As a teaser: Using TouchDevelop you can describe your current GPS location simply by specifying the phrase: “describe current location” – how easy is that? The technical bits are made significantly easier, allowing you to focus on your innovative ideas.
One of the features of Microsoft TouchDevelop that stood out for me was support for multiple software and hardware platforms. TouchDevelop is implemented as a mobile application as well as a browser application.
Currently the supported browsers are:
- Internet Explorer 10
- Chrome 22+ for PCs, Macs, Linux
- Firefox 16+ for PCs, Macs, Linux
- Safari 6+ for Macs
- Mobile Safari on iOS 6 for iPad, iPhone, iPod Touch
- Chrome 18+ for Android
It seems that currently Windows Phone is the only supported mobile platform.
What is Microsoft TouchDevelop?
TouchDevelop is a programming environment that runs on your mobile devices. You write scripts by tapping on the screen. You do not need a separate PC or keyboard. Scripts can perform various tasks similar to regular apps. Any TouchDevelop user can install, run, edit, and publish scripts. You can share your scripts with other people by publishing them to the TouchDevelop script bazaar, or by submitting them as an app to the Windows Store or Windows Phone Store.
As explained on this MSDN Blog:
TouchDevelop lets you create and run apps on pretty much any modern computing device you might own – from smartphones to tablets and even PCs. TouchDevelop features a predictive on-screen code keyboard and a touch-optimized programming language.
Having been designed for mobile devices from the ground up, TouchDevelop is an excellent option for programming on touchscreen devices without keyboards. You can also use it with a traditional keyboard and mouse if your device supports them.
After you have designed your fun game or a useful tool, you can share it with other people with a single tap or mouse click, so that they can run it or tweak it. More than 12,000 scripts have already been shared with over 40,000 users who have signed in to the TouchDevelop experience.
TouchDevelop is also an excellent option for learning programming. The high-level programming languages makes it super easy to create simple apps. But TouchDevelop is not just for beginners – for more complicated tasks only sky is the limit, thanks to the underlying powerful language and extensive library support.
Finally, if running your creations in the TouchDevelop environment is not enough, you can export true apps and submit them to the Windows Store or the Windows Phone Store to start earning money!
What types of applications can be developed using Microsoft TouchDevelop?
Any script created using TouchDevelop can be turned into a regular Windows Phone or Windows 8 application, dependent on certain conditions being met, as is the case with traditional app development targeting Windows Phone and Windows 8. You can even earn money if you decide to place your app on the Windows store.
I find TouchDevelop to be an extremely versatile development platform. Your biggest limitation will most likely be deciding what to create as opposed to how to implement your ideas in TouchDevelop.
You can browse apps available for download at the official TouchDevelop site. Apps range from games, music/media players, even tax calculators.
How to get started
If you are interested in creating applications using Microsoft TouchDevelop your starting point should be the official TouchDevelop website https://www.touchdevelop.com. The TouchDevelop website features a variety of documentation intended to help users in getting started.
You can create and test scripts in your browser at https://www.touchdevelop.com/app. I recommend taking a look at the code synthesis game, a game where you try and determine the natural language phrase used to create a script.