Microsoft Open Sources TouchDevelop
Written by Mike James   
Friday, 13 February 2015

Adding to its orgy of open sourcing, Microsoft has added TouchDevelop to the list. The big problem is that a lot of people who might like TouchDevelop don't even know it exists. What is it all about?


touchstudio99x99

 

TouchDevelop is intended to be an easy-to-use web app creator. It isn't a block language like Scratch or App Inventor but something between a full text coding langauge and a block-based drag-and-drop language.

In TouchDevelop you use text but you can drag-and-drop instructions from a palette of possible instructions. What is interesting about this approach is that you are still "coding" but the approach more-or-less eliminates typing. This makes it very easy to use on touch enabled tablets and even phones - hence the name TouchDevelop.

 

touchdev1

 

As far as the language goes it is nothing special - a standard block- structured language that supports functions and, optionally, objects. It has if statements, for and while loops. What makes it a little special is that it supports synchronous code and events. It also has an extended user interface that includes touch events and sensors making it possible to write code for devices such as the Arduino.

It arguably hasn't had as big an impact as you might expect and part of the reason might be the idea that it is tied to Windows Phone. It is true that there is only a dedicated app for Windows Phone but there is a web app that you can use to create TouchDevelop programs using almost any device. 

touchdev2

Once you have created your app and tested it you can export it to,  yes, Windows Phone, but also Android, iOS or Windows. The point is that it makes use of Cordova to create an almost universal web app.

The only downside is that you have to run TouchDevelop locally and install Cordova. However, it is worth it because you end up with what look like native apps. Also notice that this is how Windows Phone is supported, so there isn't a lot of bias towards Microsoft's own platform. 

There are also other alternative export formats - App Studio, Azure or raw HTML5 web app - which makes the approach very flexible. 

TouchDevelop is a great way to get started with programming and, as it uses text, there is no real barrier to moving on to something more complicated. It is also a great way to prototype apps and in some cases the prototype could even become the final version. 

If the idea that it was a closed Microsoft system put you off considering TouchDevelop, the good news is that it is now open source - or at least the Web App is open sourced.

To quote the blog:

"Today, we’re taking another step on this path – we’re releasing the TouchDevelop web app under the MIT license. The team at Microsoft Research remains dedicated to leading its further development, but you, our users, fellow researchers, and hackers of the world, are invited to contribute."

The project is on Github and consists of approximately 160,000 lines of TypeScript, which is interesting in itself. There are a few limitations. The backend support and the Windows Phone app are not included in the open source. If you fork the project then you can only run your new client web app against the Microsoft cloud service, which you can do for free - as long as you are happy with the domain. If you want to run it from your own domain you need to speak to Microsoft. 

So TouchDevelop is not 100% open source.

You can develop your own editing environement but you can't break away from Microsoft's servers. If the servers go the way of the dodo then you might be left holding the code. 

If Microsoft is serious about getting TouchDevelop into education and other uses, it needs to consider reassuring users that the service will continue by either open sourcing the server side or handing the server's code over to an independent foundation. 


touchstudio99x99

Banner


AI Breakthrough For Robot Surgery
17/11/2024

Using imitation learning, a robot has learned to perform surgical procedures as skillfully as human surgeons, bringing the field of robotic surgery closer to true autonomy.



Kotlin Ktor Improves Client-Server Support
04/11/2024

Kotlin Ktor 3 is now available with better performance and improvements including support for server-sent events and CSRF (Cross-Site Request Forgery) protection.


More News

 

espbook

 

Comments




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

 

 

 

 

Last Updated ( Friday, 13 February 2015 )