{"225861":{"#nid":"225861","#data":{"type":"event","title":"Thomas Ball, Microsoft Research","body":[{"value":"\u003Cp\u003E\u003Cstrong\u003ETitle\u003C\/strong\u003E\u003C\/p\u003E\u003Cp\u003ETouchDevelop: \u0022Visual Basic\u0022 for Touch-based Devices and Web Services\u003C\/p\u003E\u003Cp\u003E\u003Cstrong\u003EAbstract\u003C\/strong\u003E\u003C\/p\u003E\u003Cp\u003EVisual Basic is a 20 year old language (derived from BASIC) and integrated development environment (IDE) that enables rapid application development of GUI-based desktop applications that access databases. For the past few years, a team at Microsoft Research has been working on a new language and system called TouchDevelop (\u003Ca href=\u0022http:\/\/www.touchdevelop.com\u0022 title=\u0022www.touchdevelop.com\u0022\u003Ewww.touchdevelop.com\u003C\/a\u003E) that we think of as \u201cVisual Basic\u201d for devices and services, providing high-level abstractions to enable the productive creation of scripts on and for touch-based devices that access web services.\u003C\/p\u003E\u003Cp\u003ETouchDevelop has four main components:\u003C\/p\u003E\u003Cul\u003E\u003Cli\u003EA statically typed scripting language with novel abstractions to support (a) stateless GUIs with support for live programming and (b) replicated data for collaborative applications.\u003C\/li\u003E\u003Cli\u003EA browser-hosted touch-based IDE that makes TouchDevelop available on many platforms and makes it possible to productively create small scripts with a single finger on a variety of devices.\u003C\/li\u003E\u003Cli\u003EA set of high-level APIs to make it easy to access device sensors\/resources and web services.\u003C\/li\u003E\u003Cli\u003EA cloud back-end that enables a social approach to software production.\u003C\/li\u003E\u003C\/ul\u003E\u003Cp\u003EIn this talk, I\u2019ll first briefly demonstrate TouchDevelop and show how it is being used in education at various levels. I\u2019ll then dig into the language abstractions and run-time support for live programming and replicated data, as well as the research opportunities opened up by hosting a software environment in the cloud.\u003C\/p\u003E\u003Cp\u003E\u003Cstrong\u003EBio\u003C\/strong\u003E\u003C\/p\u003E\u003Cp\u003EThomas Ball (Tom) is a Principal Researcher and Research Manager at Microsoft Research. Tom graduated with a B.A. in Computer Science from Cornell University in 1987 and a M.S. and Ph.D. from the University of Wisconsin-Madison in 1993. From 1993-1999, he was a member of the technical staff at Bell Laboratories, where he made contributions in program visualization and profiling. His 1997 PLDI paper on path profiling with colleagues Ammons and Larus received the PLDI 2007 Most Influential Paper Award. In 1999, Tom moved to Microsoft Research, where he started the SLAM software model checking project with Sriram Rajamani, which led to the creation of the Static Driver Verifier (SDV) tool for finding defects in device driver code. A 2001 PLDI paper on SLAM\u2019s predicate abstraction procedure for C programs received the PLDI 2011 Most Influential Paper Award. Tom and Sriram received the 2011 CAV Award \u0022for their contributions to software model checking, specifically the development of the SLAM\/SDV software model checker that successfully demonstrated computer-aided verification techniques on real programs.\u0022 Tom is a 2011 ACM Fellow for \u0022contributions to software analysis and defect detection\u0022. Since becoming a manager at Microsoft, he has nurtured research areas such as automated theorem proving, program testing\/verification, and empirical software engineering. Tom performed this summer in the Seattle Opera chorus in Wagner\u2019s Ring cycle. He is a member of the ACM and the American Guild of Musical Artists.\u003C\/p\u003E\u003Cp\u003E\u0026nbsp;\u003C\/p\u003E\u003Cp\u003E\u0026nbsp;\u003C\/p\u003E","summary":null,"format":"limited_html"}],"field_subtitle":"","field_summary":"","field_summary_sentence":[{"value":"TouchDevelop: \u0022Visual Basic\u0022 for Touch-based Devices and Web Services"}],"uid":"27263","created_gmt":"2013-08-01 11:03:36","changed_gmt":"2016-10-08 02:04:05","author":"Elizabeth Ndongi","boilerplate_text":"","field_publication":"","field_article_url":"","field_event_time":{"event_time_start":"2013-09-17T16:00:00-04:00","event_time_end":"2013-09-17T16:00:00-04:00","event_time_end_last":"2013-09-17T16:00:00-04:00","gmt_time_start":"2013-09-17 20:00:00","gmt_time_end":"2013-09-17 20:00:00","gmt_time_end_last":"2013-09-17 20:00:00","rrule":null,"timezone":"America\/New_York"},"extras":[],"groups":[{"id":"47223","name":"College of Computing"},{"id":"50875","name":"School of Computer Science"}],"categories":[],"keywords":[],"core_research_areas":[],"news_room_topics":[],"event_categories":[],"invited_audience":[],"affiliations":[],"classification":[],"areas_of_expertise":[],"news_and_recent_appearances":[],"phone":[],"contact":[{"value":"\u003Cp\u003E\u003Ca href=\u0022mailto:naik@cc.gatech.edu\u0022\u003EMayur Naik\u003C\/a\u003E\u003C\/p\u003E","format":"limited_html"}],"email":[],"slides":[],"orientation":[],"userdata":""}}}