TouchDevelop - Microsoft Research (original) (raw)

Create apps everywhere on all your devices! For Windows Phone and the web. In the TouchDevelop programming environment 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, publish scripts. You can share 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.

Go to www.touchdevelop.com (opens in new tab) to get started.

Watch Video: Create Apps for Hour of Code™ with TouchDevelop (opens in new tab).

The Idea Behind TouchDevelop

The way in which we interact with computing devices is changing: instead of keyboards, advanced touchscreens become more common; mobile devices are often equipped with more sensors, such as location information and acceleration, and are always connected to the cloud.

TouchDevelop is a new programming environment and language built around this new reality. Its typed, structured programming language is built around the idea of only using a touchscreen as the input device to author code. It has built-in primitives which make it easy to access the rich sensor data available on a mobile device. In our vision, the state of the program is automatically distributed between mobile clients and the cloud, with automatic synchronization of data and execution between clients and cloud, liberating the programmer from worrying (or even having to know) about the details.

Get TouchDevelop Now

Visit the TouchDevelop teaching website (opens in new tab) for a comprehensive list of available resources for teachers.

Classroom Experience

TouchDevelop has been used in many different classroom settings, including:
University of Newcastle, Australia, during 2013
1 semester course on Wireless Development for The Cloud: University of Newcastle students work with Microsoft (opens in new tab)
Drew University, Fall 2013
First Year College Seminar (Fall 2013) by Barry Burd
Drew University, Spring 2013
Mobile App Development (Spring 2013) by Barry Burd
University of Maryland, Spring 2013
CMSC436: Programming Handheld Systems by Atif Memon, http://www.cs.umd.edu/~atif/Teaching/Spring2013b/ (opens in new tab)
University of Calgary, Fall 2012
CPSC 581 Human Computer Interaction II by Saul Greenberg, http://pages.cpsc.ucalgary.ca/~saul/wiki/pmwiki.php/CPSC581/Courses (opens in new tab)
Graz Univ. of Technology, Austria, Fall 2012
Mobile Computing by Wolfgang Slany
IIIT-Delhi Indraprastha Institute of Information Technology, Delhi, India, Fall 2012
CSE535, Mobile Computing taught by Vinayak Naik, http://www.iiitd.edu.in/~naik/teaching/mc/#ProjectsInAppStores (opens in new tab)
University of Illinois, Urbana Champaign in Fall 2012
ECE 190, “Introduction to Computing Systems” by Yih-Chun Hu
University of California in Santa Cruz in April-June 2012
10-week course (one quarter) with 20 students in Introduction to Computer Science class (1 phone per student) http://classes.soe.ucsc.edu/cmps010/Spring12/ (opens in new tab)
Rainier Beach High School (opens in new tab) in February-April 2012
13-week course with 1 hour per day with 30 students (1 phone per student)
University of California in Santa Cruz in March 2012
2 hours with 80 students in Introduction to Computer Science (opens in new tab) class (1 phone per student)
Mill Creek Middle School (opens in new tab) in December 2011
2 hours with 90 students in 8th grade (1 phone per 2 students); watch video
Interlake High School (opens in new tab) in October 2011
90 minutes with 30 APCS students – introduction to mobile app development (1 phone per 3 students)

All TouchDevelop scripts are stored and analyzed in the cloud. For research purposes, TouchDevelop exposes a set of web services that allows you to query scripts. Learn more about cloud services for researchers… (opens in new tab)

External Research Projects

How About You?

Are you running a research project involving TouchDevelop, or are you interesting in starting one? Send us an email. Visit the TouchDevelop teaching website (opens in new tab) for a comprehensive list of available resources for teaching and research.

v2.10.0.0 beta (8/28/2012)

Read the announcement blog post (opens in new tab) for a walkthrough of the new features in this update.
This release is only available on Windows Phone devices that run at least Windows Phone 7.5 (Mango).
New features:

v2.9.0.0 beta (6/25/2012)

Bug fixes

v2.8.0.0 beta (5/26/2012)

Read the announcement blog post (opens in new tab) for a walkthrough of the new features in this update.
This release is only available on Windows Phone devices that run at least Windows Phone 7.5 (Mango).
New features:

v2.7.0.0 beta (3/21/2012)

Bug fixes and changes to license terms

v2.6.0.0 beta (2/21/2012)

Read the announcement blog post (opens in new tab) for a walkthrough of the new features in this update.
This release is only available on Windows Phone devices that run at least Windows Phone 7.5 (Mango).
What is new:

v2.5.0.0 beta (12/20/2011)

Read the announcement blog post (opens in new tab) for a walkthrough of the new features in this update.
This release is only available on Windows Phone devices that run at least Windows Phone 7.5 (Mango).
New features:

v2.4.0.0 beta (11/11/2011)

Read the announcement blog post (opens in new tab) for an overview.
This release is only available on Windows Phone devices that run at least Windows Phone 7.5 (Mango).
New features:

v2.3.0.0 beta (10/7/2011)

Read the announcement blog post (opens in new tab) for an overview.
This release is only available on Windows Phone devices that run at least Windows Phone 7.5 (Mango).
New features:

v2.2.0.0 beta (9/13/2011)

Read the announcement blog post (opens in new tab) for an overview.
New and improved features:

v2.1.0.0 beta (8/18/2011)

Read the announcement blog post (opens in new tab) for an overview.
New and improved features:

v2.0.0.0 beta (8/2/2011)

Read the announcement blog post (opens in new tab) for an overview.
New and improved features:

v1.2.0.1 beta (5/27/2011)

Read the announcement blog post (opens in new tab) for an overview.

v1.1.0.0 beta (5/2/2011)

Read the announcement blog post (opens in new tab) for an overview.

v1.0.0.0 beta #0 (4/9/2011)

Read the announcement blog post (opens in new tab) for an overview.

People

Portrait of Peli de Halleux

Peli de Halleux

Principal Research Software Engineer