8 ms·
Microsoft TouchDevelop
- interdrift 11y agoMicrosoft is becoming truly awesome!
- adamb_ 11y agoHere's the landing page: https://www.touchdevelop.com/ https://www.touchdevelop.com/
- amadeusw 11y agoThey have some cool tutorial that introduce coding to newcomers. extraordinary Jetpack Jumper is my favorite! Every change to the code is annotated and explained with a short video
- janpieterz 11y agoJust played around with it a little bit! Super interesting, can certainly see a couple of applicable use cases! The way the tutorials are setup will actually be handy for education, certainly if it would be possible to create your own tutorial. Edit: Typo
- mfisher87 11y ago>The way the tutorials are setup will actually be handy for education, certainly if it would be possible to create your own tutorial. WOW, that's a good idea. The amount of work (and other resources) that goes in to creating a high quality online tutorial really is much more than is required to teach a concept well. Making tutorial-making easy would be a HUGE win.
- RotsiserMho 11y agoI had the same thought and found they have a section of the website devoted to this. Very nice. https://www.touchdevelop.com/docs/creatinginteractivetutorials https://www.touchdevelop.com/docs/creatinginteractivetutoria...
- janpieterz 11y agoWow, supercool, thanks!
- mfisher87 11y agoThere's even a "convert to tutorial" plugin... excellent foresight on MR's part.
- alaskamiller 11y agoI'm glad all the MSFT research initiatives are getting attention and/or the development stage. There's so much new amazing things to make the future so shiny and great. As Steve Jobs pointed out, MSFT's overall design and communications have and are still... astoundingly nerdy. Yet this new MSFT, one that notes they made something with WUV!, is such a departure from Micro$oft of yore. This is almost... dare I say, embryonic of an earnest attempt at something new? Almost as if this new MSFT is a startup of a corporation in a landscape dominated by the most valuable corporation on earth (AAPL) and the most useful corporation on earth (GOOG) and the most cutthroat corporation on earth (AMZN). I imagine in another year or two there will be a major overhaul of Microsoft's design process to bring about cohesion. I'm hoping the likes of hiring Andrew Kim (http://www.minimallyminimal.com/blog/2012/7/3/the-next-microsoft.html http://www.minimallyminimal.com/blog/2012/7/3/the-next-micro...) and other young talents will greatly influence that as it is sorely needed, much like how Google invested much into Matías Duarte and Material design. Wow, imagine that. When the old question was can Apple be Google faster than Google can be Apple and now it's can Microsoft be Google faster?
- dropit_sphere 11y ago>This is almost... dare I say, embryonic of an earnest attempt at something new? While TouchDevelop is really cool, it's been a few years since it came out :)
- TheOtherHobbes 11y agoWhich is true, but I've been thinking for a while there's a very interesting company trying to get out from under the dead weight of the old 90s and 2000s era MS. A single product won't change the culture, but it's obvious the ship is being steered in a different direction. Even if it takes a while to change course, it's obvious cool new stuff is happening. I only hope MS can sort out its management culture to take full advantage of the cool new stuff.
- orf 11y agoThis is the coolest thing I've seen in a long long time. If I remember correctly Microsoft released something similar for Windows Phone but the UI was really clunky. This version (?) is amazing though, so much better. I've just spent 10 minutes playing around and building a simple app sat on my sofa, I highly recommend spending a little bit of time using this.
- brudgers 11y agoIt's the same project that was released for Windows Phone 7. The original name was TouchStudio. It became TouchDevelop around the time Windows Phone 8 came out, IIR.
- darkmighty 11y agoThere's very good precedence too with Scratch and it's derivative Android App Inventor (currently App Inventor 2), but it's nice that this is platform independent! (it does miss out on some cool things that are platform dependent, like fiddling with sensors and communication) https://scratch.mit.edu/ https://scratch.mit.edu/ http://ai2.appinventor.mit.edu/ http://ai2.appinventor.mit.edu/ GUI-oriented programming has much to offer and I'm excited in developments in this area, not only for kids but as a general enabler of coding without a large learning period.
- Moter8 11y agoWe used both these in what would be 11th year / Age 16-17 (1º de Bachillerato) in IT class (optional) in my highschool which is located in Spain. Scratch was quite nice, we used the offline version. Sometimes it would corrupt our files though, ugh. AppInventor was also quite nice to use except that the internet slowed down quite a bit when 20 people used it at once. It was not quite well-made as Scratch imo. Generally the people didn't care that much about learning this stuff, few if any got interested in programming through these, sadly.
- GuiA 11y ago16-17 is a little too old for Scratch. I've run dozens of Scratch workshops, and they've managed to deeply engage the students, but they work best with kids under 13 or so. Web programming, RPG Maker/Game Maker, Python/Ruby, Processing, and Arduino are some platforms that work better with teenagers.
- snarfy 11y agoHere's some info about the language used: https://www.touchdevelop.com/docs/language https://www.touchdevelop.com/docs/language
- deleted 11y ago[deleted]
- Cshelton 11y agoI haven't been able to check it out fully yet, but all this hour of code stuff looks amazing! Being able to launch a little tutorial project right in the browser with videos and all, for free...great job Microsoft! I'm not a teacher but I can already see the amazing educational potential here. I love helping people who are learning to code, and then watching them complete their first small project on their own, very satisfying; this is a great tool. Edit: The more I keep looking at this the more excited I get...really great job Microsoft Research!
- codeshaman 11y agoVery nice. But why not have full keyboard support for the PC ? I'm working on a very similar experimental editor for Clojure/lisp and my intention is to make it vi-like - navigate and perform the edits with the keyboard. Some other ideas I'm experimenting with: Customisable icons or even specific shapes for functions. For example the function "show loading screen" can be represented as the actual visual screenshot of the loading screen. The idea is to get rid of most of the syntax and leave only the user-defined names. In 'interactive' mode, each form (block) can be executed and arguments can be entered right inside it. Each function block could have a 'back side', where all the meta data about the function resides, like documentation and unit tests. So visual programming is a new hot topic and there's a lot of stuff to explore in this area.
- neals 11y agoLittle buggy on desktop chrome, but may that is not the intended browser? http://i.imgur.com/QVzTlqD.png http://i.imgur.com/QVzTlqD.png
- daok 11y agoChrome is definitely in Microsoft intended browser. Most of the dev are using Chrome at Redmond while developing.
- frik 11y agoMS should do more dogfooding of their IE11/Edge "F12" developer tools. "F12" is years behind Chrome&Firefox dev tools.
- mmoskal 11y agoChrome is certainly one of the supported browsers, and we do use TouchDevelop on desktop all the time. This is actually fixed in our beta version, see https://www.touchdevelop.com/app/beta https://www.touchdevelop.com/app/beta
- thebouv 11y agoPretty cool. Just sent this to my daughter to look at as well. She liked code.org's visual building, till it got in her way. This looks like you can dive into actual code if you want to. I think she'll like that.
- tarr11 11y agoI might integrate this into the web based platform we use to teach kids. Very cool.
- rileyt 11y agoHeads up: build failing + dependencies out of date.
- alexggordon 11y agoWhen I see tools like this, that allow children and adults to make things, using the same platform, I can only think Microsoft is it literally investing in the future. It's so easy to get wrapped up in what a tech company can produce now, or in a year that often times people forget about creating awesome tools. Tools last a lot longer than platforms or devices. While Minecraft is a slightly different example, its core success is simply that it is a creativity tool for all ages and skill levels. When I look at something like TouchDevelop, I see similarities. It's a tool that can let people create awesome things, easily. Something that oversimplifies things at first, but encourages and gives you the ability to push it farther if you desire. Tech politics aside, kudos to you Microsoft.
- rifung 11y agoSeems like this was made by Microsoft Research. I'd argue Microsoft Research's very existence shows Microsoft is heavily invested in the future, more so than any other tech company as far as I know. Maybe besides IBM I dont know any other company that still funds research which isn't expected to have some relationship to the business side of things.
- YorkianTones 11y agoMicrosoft Research is strongly expected to have an impact on the business side of things. It just so happens that Microsoft is willing to incubate projects like Midori* that have long runways (decade+) and may completely fail. The hope is that some new emerging tech long plays will become huge business boons (Cortana, Kinect, ..). There's lots of investment in NLP, vision, and OS research over at MSR. As far as other tech companies with large R&D budgets, look at Google. However, Google's R&D investment areas are different than MSFT's (apparently they don't do OS research): http://money.cnn.com/2013/11/20/technology/mobile/apple-rd-spend/ http://money.cnn.com/2013/11/20/technology/mobile/apple-rd-s... * http://en.wikipedia.org/wiki/Midori_(operating_system) http://en.wikipedia.org/wiki/Midori_(operating_system)
- rifung 11y agoIs it? I suppose I just assumed it wasn't expected to have any impact on the business side of things as they are the only company (again besides IBM) that does research in theoretical computer science. Not only that but they publish all their results in public. I know that Google also does a lot of R&D but from what I can tell, it's usually directly related to what they are doing.
- M4v3R 11y agoThis is awesome. And what's even more cool, that it seems to be localized to other languages! I'm a polish speaker, and when I launched one of the tutorials (Jetpack Jumper), not only the interface was translated, but even the intro video. I had friends that wanted to jump into programming but couldn't start because of the language barrier. That could turn out as a great tool for them! Edit: Just noticed that they use Microsoft Translator for most of the tutorials, but still kudos to them for taking time and providing a proper translation in at least one of them.
- meritt 11y agoOh. At first glance I thought this was simply a text editor that was actually usable on a phone/tablet. Maybe one day...
- 0xffff2 11y agoI think you're going to need a hardware solution for that problem. No amount of software will ever overcome the fact that touch screens are not efficient input devices.
- jng 11y agoTouch screens are much more efficient that keyboard and mice for some types of input (not for others: e.g. typing). Not only that, the intuitiveness of an obvious "hands-on" touch-screen interface allows toddlers to learn to use it before they even learn to speak (I've seen it first hand, as I guess many others must have). I believe there are forms of programming that can be done better with a touch-based interface. It's just that programming languages and tools have to evolve until we get there. When we get there, I believe it will mostly obliterate the current approaches to programming, the same way we're not entering machine code manually through a front-mounted panel with LEDs, or writing assembly language. Of course some exceptions always remain.
- Retra 11y agoDon't you think having your hands in front of the screen is inherently problematic? It's hard to image where that would enhance efficiency.
- s73v3r 11y agoInput of Chinese/Japanese characters.
- freehunter 11y agoBeing able to draw enhances that. Having your fingers in the way does not. That's a use case for a stylus or a pen, as they don't block your vision nearly as much as a hand does.
- boothead 11y agoI've been doing the hour of code with my 7 yr old daughter. She really enjoys it, so much so that I now get bugged more to "do coding" than to help her with her homework. She's going to love this! As an aside - To all of you focused on making it easier for the next generation to learn and use these skills: Thank you so much!
- istvan__ 11y agoI really enjoy the beginner mode, much more fun than using vi :)
- throwaway43 11y agoWow . Does anyone know which framework they've used to make this ?
- alexggordon 11y agoLooks like they custom rolled a bunch of custom stuff on top of Node, if that's what you're referring to.
- myth_buster 11y ago>> 253523 scripts published That's quite a large repository. Do they have collaborations with schools and organizations helping kids code?
- vjdhama 11y agoIt somewhat looks like better and flatter version of scratch by mit.
- Isamu 11y agoVery interesting! So the language looks similar to Scratch and Blockly, but targeted to mobile web. I would like to see a comparison overview. Anyone have a link to a published paper? This is from Microsoft Research so I would expect there to be one, eventually, relating this to similar efforts.
- deleted 11y ago[deleted]
- _shb 11y agoThis paper describes some aspects of the system: http://research.microsoft.com/pubs/189242/pldi097-burckhardt.pdf http://research.microsoft.com/pubs/189242/pldi097-burckhardt...
- mmoskal 11y agoThis paper: http://research.microsoft.com/en-us/um/people/moskal/pdf/beyond-open-source.pdf http://research.microsoft.com/en-us/um/people/moskal/pdf/bey... describes the basic idea behind integrating an IDE, GitHub-like collaboration, and an app store. The main thing about the interface it's that it's touch-optimized and has this unique semi-structured editor, where the expressions (as opposed to statements) are edited token by token, and not as a tree. This was proven to work better on touch-devices.
- orand 11y agoThey also support compiling their language to Arduino C++.
- deleted 11y ago[deleted]
- dyukqu 11y agoAn alternative: http://www.algoid.net/index.php http://www.algoid.net/index.php "Algoid is an educational app that uses a simple but complete language called Algoid Language (AL) to teach programming. Target Audience: Kids, teenagers and adults interested in learning computer programming."
- haberdasher 11y agoAm I the only one that found this cumbersome? That struggled to write a "hello world" in under 5 minutes?
- M8 11y agoI was always thinking it's C# and XAML, but it's actually JS :(.
- neovive 11y agoIt's great to see so many great investments in creative tools by Microsoft. For those interested, Microsoft Studios (Team Dakota) has a great desktop/Xbox One game called Project Spark (http://welcome.projectspark.com/ http://welcome.projectspark.com/) that is essentially a 3D game builder enabling you to build 3D games from scratch or "remixing" other games from the community. Games are constructed from visual blocks called "Kode". It evolved from a previous XBox game called Kodu Game Lab which was targeted strictly towards the education market [1]. You can install Project Spark for free on Windows 8 (I have it running in a Bootcamp partition on a Mac Mini and it performs well and is very fun). [1] See http://en.wikipedia.org/wiki/Project_Spark http://en.wikipedia.org/wiki/Project_Spark for more history.
- e12e 11y agoIt's like lively-kernel[1] with a layer of Scratch on top -- except it doesn't use WebDAV for storage, and you can't self-host the whole stack. Still, very nice. (Now I wonder if there's a service that allows you to list intersection of contributer to github projects... hmm.. there's an api, isn't there:) npm install -g json cons=(https://api.github.com/repos/{LivelyKernel/LivelyKernel,Microsoft/TouchDevelop}/contributors) comm -12 <(curl -s ${cons[0]}|json -a login|sort)\ <(curl -s ${cons[1]}|json -a login|sort) #ed:spoiler alert: no overlap [1] https://github.com/LivelyKernel/LivelyKernel https://github.com/LivelyKernel/LivelyKernel
- zmmmmm 11y agoI looked at this a while ago while seeking out a good language for my daughter to learn some simple programming with. While I liked it, I can't help feeling that all these "visual" substitutes for programming languages are counter productive. It is so tedious to create even simple loops and logical structures. Consider a simple for loop such as in python: for thing in ["cat","dog","tree"]: print thing I can explain this to her and she can run it and see it do something, modify it in small ways, etc etc. The same thing in TouchDevelop actually looks more complicated and is harder to experiment with. I feel like we should teach computer languages as languages and not try to turn them into lego blocks. I'm curious if others feel the same way or not? Have people had success starting with something like TouchDevelop and then transition to a non-visual language? Or do kids just get good at playing in the visual sandbox and never make the jump?
- yukinon 11y agoGranted, it's not the same, but my programming career started with RPGMaker. It's a point-and-click interface to make simple 2D RPG games for Windows. Much of the point and click interfaces let you create programming constructs like if-else conditions, go-to statements, and loops. I was intimidated by the idea of using a real language, instead I liked just pointing/clicking my way through things. This was the case until I wanted to make something sufficiently complicated that doing it in RPG Maker would create spaghetti code. For me, after spending years playing with RPGMaker 2000 (I was 11 when I started), moving onto a real programming language like Python was completely effortless. It was a transition from "I need to click this to make this if-condition" to "I need to write this if-condition here".
- turingbook 11y agoThe web page from the TouchDevelop team at MSR is more helpful to know what the project is: http://research.microsoft.com/en-us/projects/touchdevelop/ http://research.microsoft.com/en-us/projects/touchdevelop/
- baggers 11y agoI'm very glad this project is available but somewhat surprised how in awe some comments are here. How does this do a better job at teaching than etoys? Yes being able to deploy easily is a big deal, but given the length of time the smalltalk/squeak/etoys folks have been working on this idea I don't see how this project is garnering the level of admiration it is from HN folks.