Microsoft releases tool for creating Windows 8 apps in the browser
touchdevelop.com
touchdevelop.com
It's a kind of experimental touch-centric IDE with it's own semi-visual programming language (your not exactly dragging boxes around, but your not editing text either).
I only played with it for 2 minutes, but it's apparent that this is a "research" project. It's not meant as a replacement SDK for whatever is the de facto standard for Win8 apps.
I got further with this in fifteen minutes on my iPhone lying in bed than an hour last night with the Windows Phone 8 SDK.
The APIs seem nicely designed and the interface works surprisingly well on a phone. I haven't seen anything else as likely to democratize programming since Click 'n Play back in the 90s.
It would be nice to see some kind of automatic wrapper facility for the full API, even if the syntax became necessarily horrible and it was hidden behind an expert panel. Sooner or later every large project will want to step beyond the bounds of the current garden, I think.
That idea is important because mobile phones are the way in which most of the world can experience owning a computer. Touchdevelop on the phone allows a poor Kenyan to express her potential as a programmer without obtaining a traditional computer.
TouchDevelop is a research project exploring programming paradigms that are more touch-centric.
Think of it as a way of programming your phone or tablet, whatever it may be, on the device itself.
I have the feeling TouchDevelop is what a next generation IDE should feel like. Not just with the touch-friendly editor, which is nice, but also how the rest of the IDE is constantly reacting to what is happening in the editor.
Is the web-app a subset of the WP7 project? Will it be possible to define types like the 'Board' type in the demo? Perhaps by linking to javascript(/typescript) libraries? (the library functionality didn't work for me in Chrome so I assume it's just not implemented yet)
Congratulations on creating a truly impressive IDE :)
TouchDevelop is a research project, and as of now there are no plans of full-scale productization.
The webapp supports all programming language features of the WP7 app (and some more ;-). Not all library APIs are implemented though (some are obvious - it doesn't make phone calls - some are just still missing).
If something didn't work with the libraries for you, let us know!
It is possible to define record types (with fields but not methods). You can also define libraries operating on these. Libraries can be parametrized, much like functors in ML (but without the heavy type system). The interaction between records and libraries is not fully worked out yet, but we're working on it, time permitting.
Note that TD is not an object-oriented language - there is no inheritance or subtyping. I myself intend to keep it this way :) Still, we want to have something akin to C#'s extension methods as far as the syntax goes (i.e., method lib1->m(x:t,y:number) could be invoked as x->t(10)).
Windows is and will remain a huge OS with a ton of opportunity, but MSFT needs to do a better job incentivizing developers to build apps. Make it the easiest platform to get started with.
Easier to develop apps is just one point that can ease the feedback loop, but its not sufficient...nor is it shockingly necessary (just look at Apple).
Disclosure: MSFT employee, just sharing what I've learned about platforms (and what many probably already know).
What keeps you working on Apple's platform is the popularity of the app store, if you couldn't get customers; you would leave in a heart beat for a platform that had a healthier market. Look at all the people who learned Objective C...not because it was the best language, but because it was a technical barrier that was necessary to overcome to access a healthy market (and technical barriers are much easier to overcome than market barriers!).
Perhaps I was naive thinking the WinRT API would be similar to .NET, but Microsoft could have made it much, much simpler for current .NET developers to start working with WinRT.
My biggest gripe is that WinRT seems to be 100% focused on mobile/tablet platforms. My laptop has Windows 8 and I spend all of my time in the desktop, away from apps. Why? Because there's a lack of "real" applications in the Windows 8 Store. Writing system utilities for a more technical audience is almost impossible. They replaced the excellent System.IO namespace with the Windows.Storage namespace, which doesn't give you access to much of the computer's actual storage [1].
Hopefully I'm wrong and someone posts a reply with an easy way to search through the computer's files and folders, but I'm not getting my hopes up.
[1] http://msdn.microsoft.com/en-us/library/windows/apps/windows...
For security reasons. You can open a file picker, but you can't just spider directories on the hard disk, because Windows 8 has quite restrictive sandboxing.
Not associated with MS, but currently developing for the Windows Store :-)
Wow, that's really inclusive! I don't see Google or Apple reciprocating anytime soon...
I wonder if Google credentials can also be used to submit the final app in the Windows Marketplace.
> "We need to log you in first."
Argh...
> "You can login with your Microsoft, Facebook, or Google account."
... oh, yay! Microsoft figured out OpenID/OAuth!
I doubt we'll be seeing Apple make a web-based touch interface for building applications, but it'll no doubt force them to consider something because Microsoft are starting to make me even consider trying to build an app. And out of a C based language and web based builder, which has the lesser learning curve?
Very smart move. Well played, Microsoft.
Windows 8 will succeed not because it has a web-based toy for making toy apps, but because people still want to run Windows95 applications.
Also while easy to make apps is a great idea, sadly it may not be a game changer. If you look back at HyperCard it was a cool product, but it didn't save Apple from almost going under by the mid-90s.
Having just picked up one of the new ARM based Chromebooks, I am inclined to agree. Until now I have never fully appreciated how complete Google's offerings are, from paid apps in the Chrome web store to paid movies on YouTube... to say nothing of the inventory size of both.
Anecdotally, I know exactly 1 programmer TOTAL that does not use a mac laptop when they develop out of the dozens that I know, and he just got hired at Microsoft. I know several that use Windows desktops, but exactly 1 that doesn't have a mac laptop.
Had the poster said "the majority" instead of "almost all" it would have been much more agreeable to my own impression and my own limited anedoctal experience wich makes up the extent.
But I do take your response in the same good candid nature that you meant it. Still, a cross referenced data set on this you proposed would be amazing.
Might flow smoother on a touch tablet?
[1] http://www.windowsphone.com/fr-fr/store/app/touchdevelop/fe0...
---
I think the title is wrong. This doesn't look like it has anything to do with creating Windows 8 apps.
If you want to sell them, then they will run on Windows Phone, Windows RT and Windows 8. To submit them to the store you will need a Windows 8 PC and a dev account.
Additionally, if you have cookies disabled it just sits there on the loading screen (in FF 17 at least) - I thought it was just broken at first.
The difference with Mozilla and Google is I don't need to migrate my entire OS to use their experimental stuff.
TouchDevelop Wep App Preview does not work with Opera.
Please use Internet Explorer 10, Chrome or Firefox.
Why?Not supporting one browser or another is rarely if ever a stand against that browser, it's just a decision based on living in reality. I've used and liked Opera in the past, but I've never once tested so much as a web page in Opera since I stopped using it as my primary browser.
I think they should warn about compatibility but allow us to proceed anyways. Often when I spoof opera to identify as firefox everything works fine. The `built only for this browser` scheme treats the browser as the platform and not the internet as the platform. I understand the practical motivation for perspective, having spent many hours making sure my design worked in IE and Firefox, but I dream of a world where every-browser will render things identically.
Ultimately, its called a webpage not a chromepage.
that's what i get when i try to run that thing.
My only beef with the WP7 version is that the increases in integration with online content have at times disrupted fluidity by delaying loading of portions of the app.
It is great to see HN finally giving the project some deserved attention. Previous submissions regarding the project have fallen flat.
Thanks and keep up the good work.