touchdevelop outlook ongoing research Disclaimer: This document is provided “as-is”. Information and views expressed in this document, including URL and other Internet Web site references, may change without notice. You bear the risk of using it. This document does not provide you with any legal rights to any intellectual property in any Microsoft product. You may copy and use this document for your internal, reference purposes. © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and Windows Live are trademarks of the Microsoft group of companies. All other trademarks are property of their respective owners. advanced topics in touchdevelop active research project o 5 researchers • • • • • o Nikolai Tillmann Michał Moskal Peli de Halleux Manuel Fahndrich Sebastian Burckhardt in 2011: • • 2 PhD interns 2 highschool interns advanced topics in touchdevelop cloud state o When distributed clients query or update shared data, eventual consistency can provide better availability than strong consistency models. However, programming and implementing such systems can be difficult unless we establish a reasonable consistency model, i.e. some minimal guarantees that programmers can understand and systems can provide effectively. To this end, we propose a novel consistency model based on eventually consistent transactions. ✿ http://research.microsoft.com/apps/pubs/default.aspx?id=155638 Eventually Consistent Transactions Sebastian Burckhardt, Manuel Fahndrich, Daan Leijen, and Mooly Sagiv advanced topics in touchdevelop cloud plugins o o callbacks from touchdevelop.com • to your webservice • register your own URL to receive notifications about new publications plugins (meta apps) – integrate in app • your webservice annotates AST • your webservice generate traces (test cases) advanced topics in touchdevelop splitting execution some event handlers don’t depend on o phone state • o “when MSFT stock price > 30, then …” automatically split code • some parts execute on phone • other parts in cloud advanced topics in touchdevelop program your house o o imagine all of your devices are connected to your WiFi • your TV • your fridge (temperature, inventory) • your wine cellar (temperature, inventory) • your barbecue (temperature, inventory) • your sprinkler system in the garden your scripts access everything advanced topics in touchdevelop debugging o how to debug code on a touchscreen? advanced topics in touchdevelop custom UI o how to design a touchscreen UIs on a touchscreen? advanced topics in touchdevelop