Adobe Max 2009 missed headline: “Windows users can now develop iPhone apps”

Using Windows to develop iPhone appsAt yesterday’s keynote, Adobe announced that just about every mobile phone manufacturer – except stubborn old Apple of course – was working with them to add Flash 10.1 to their devices in future. Then they made their “big announcement” that the next release (CS5) of the Flash authoring tool would support compiling iPhone native applications. Flash is coming to the iPhone, sort of.

Amidst all the excitement of deluded fools thinking now was their chance to make millions selling iPhone apps without having to learn “real” programming, the real big announcement seemed to get missed. Reading through Adobe’s FAQ on the matter, two important things stood out for me:

  1. A version of the Flex/ AIR SDK is to also to be released that will let Flex Builder (and presumably other developer tool) users to compile up iPhone apps.
  2. Those tools will run on Windows.

Until now, the iPhone app developer has been faced with a huge initial cost hurdle of having to buy a Mac. The reason for this is that, until now, only two possible solutions to developing iPhone apps existed: Apple’s own objective C development environment and MonoTouch. The latter is a .NET development tool for compiling C#, IronRuby etc into iPhone native applications. It, like Apple’s own tools, only runs on OS X. Also MonoTouch costs a lot of money, whereas the Flex SDK’s tend to be free. This opens up the possibility that Apple’s “iPhone development kit for Windows” may well be free too.

The FAQ suggests there will be compromises. My reading of it is that one cannot test the apps in Apple’s iPhone simulator, only directly on the phone itself (this applies to Mac users too) and I don’t think the normal set of iPhone APIs are accessible either.

Obviously a lot of this is speculation. A public beta of CS5 is due out by the end of the year though so we will know for sure within the next three months.

Mono team to Microsoft: build Moonlight desklet support into Silverlight

As you may be aware, the Mono team and Novell are creating a version of Silverlight for Linux called Moonlight. As part of that process, the Mono team added a “hack” that enables Silverlight apps to run on a Linux desktop, calling them Moonlight desklets. Miguel de Icaza, who heads up the Mono project blogged about them last year. It looks likely though that unless Microsoft adds its backing to desklets, they will remain a Linux-only hack, rather than a major Moonlight feature.

A few days ago, Miguel posted an update on the progress of developing desklets, and added a call to Microsoft to support these desklets in Silverlight. Apparently the Moonlight team do not plan on porting desklets across to the Mac and Windows, as it is a non-trivial task. I suspect that Microsoft will respond in time (though their focus at the moment must be on getting Silverlight 2 ready for an August release.) If they do not respond, then Flash obviously maintains one big advantage over Silverlight, namely AIR.

PASH – Powershell for “the rest of us”

If you have never used Windows PowerShell, you are missing out on a hugely powerful command-line tool. Not only does it show up the dos window/cmd prompt for the joke it has been for decades, it gives even the most powerful Unix shells a run for their money. (I’ve spent around ten years of my life using just about every last features of, what is in my view, is the most powerful shell out there – ksh. So I like to think I know what I’m talking about here). If you are using Windows and use a cmd window on occasions, then you should be using PowerShell. Grab yourself a copy of the free PowerGUI, join the community at powergui.org and you’ll probably never touch cmd again.

Of course there is a world beyond Windows, and if you use a MAc, Solaris, Linux etc, you are likely thinking “so what?” Well a new Mono-based developement, Pash, is set to change all that. The developers of Pash aim to recreate PowerShell on those other operating systems. If you are a developer, then you may be interested to know that the project is still pre-alpha too, so there is plenty of opportunity to show off your skills by helping out.

Microsoft admit anti-trust defeat and offer up APIs and IP to competitors & open source community

ms_peeps.jpgI listened to my my first “virtual press conference” today given by Microsoft. I certainly picked a big one as my first. I actually got to hear Microsoft’s CEO, Steve Ballmer, say the words “open source” without spitting, swearing or making any negative remarks! What is the world coming to?

Well the world is coming to its senses and realises that it doesn’t have to be scared of Microsoft and Microsoft is coming to its senses and realising that it cannot own the world (and will just have to be happy with a significant chunk of it.) So the press release was the final fling in a long and probably very painful process of Microsoft opening itself up to its competitors and to the open source community. Today Microsoft announced the launch of its four new interoperability principles:

  1. Ensuring open connections
  2. Promoting data portability
  3. Enhancing support for industry standards
  4. Fostering more open engagement with customers and the industry, including open source communities.

So what does that all mean? Well translated it means:

  • Microsoft have promised to publish the APIs and communications protocols for all their high volume products (Vista, Office 2007, Sharepoint 2007, Exchange 2007, Server 2008). No license will be required to access this information.
  • Open source developers can freely use these communication protocols without having to pay royalties and without fear of being sued. Commercial use must be paid for.
  • Recent forays into open source with collaborations with the Mono, MySQL and PHP teams is due to continue and become part of how Microsoft works.
  • As a start, Microsoft will be adding some 3,000 extra pages of API information to MSDN so that everyone – not just those that have bought trade secret licenses – can access the information.

Why have they done this? Well clearly the EU can take a lot of the credit with its dogged pursuit of anti-trust cases against Microsoft. The bigger picture though is likely simply a realisation within Microsoft that open source isn’t going to go away. Having won the browser war, they have watched Firefox erode that dominant position for example. That they now own nearly the entire paid-for development tool market has meant that universities now routinely teach LAMP (Linux, Apache, MySQL & PHP) and Java as they are free development environments. Perhaps the weight of arguably the world’s most powerful political bloc, combined with the quiet determination of the open source community, has finally broken the Microsoft bronco?

Whatever the reasons though, this has certainly been a historic day for software developers, both within the Microsoft fold and without.

Read, watch and listen to full details of the press release here.

Moonlight gets Microsoft backing

“Big Blue”, the SIlverlight logoMicrosoft is a changing beast and those changes look, on the whole, to be for the best. They are of course still up to their usual tricks, such as their attempts to rig the vote in Sweden for example on their OOXML documentation standard, for which they are seeking ISO approval. However they appear to have realised recently that working with, rather than against, the open source community sometimes makes business sense. A case in point is Silverlight.

Microsoft claim that Silverlight will be cross platform. The problem until recently is that they were only supporting a some browsers on the Windows and OS X operating systems. That of course leaves two gaping holes: other Windows and OS X browsers and Linux (there is a third gaping hole: WinCE, but presumably Microsoft will tackle that at some point). Not so long ago, one might expect Microsoft to go into denial over Linux and to claim that IE on Windows was cross-platform enough for 99% of the people, so tough luck to the other 1%. They couldn’t do that this time around though as they are trying to take on Flash, which is pretty much truly cross-platform already. So perhaps it is not so much of a surprise that they intend to make Silverlight available on Linux.

Mono logoWhat is surprising is the chosen method. Rather than port Silverlight to a binary release for Linux on x86 machines only, they have taken the genuine open source route: they are backing Moonlight! Moonlight is part of the Mono project, which is attempting to create an open source, multi-operating system version of .NET.

Can Silverlight really be a Flash killer? That I do not know, but with the news that Microsoft are going to assist – via Novell – the development of the Silverlight .NET environment for Linux, Silverlight starts to look a very interesting product. And let’s face it, Adobe aren’t exactly a small lilly-white company about to be threatened by a giant (anyone remember the Dmitry Sklyarov saga?) So I at least will not shed any tears if Silverlight does kill off Flash. I predict a more likely outcome though (at least for the short term) is that competition will spur both projects on giving us both a better Flash and a better Silverlight product over coming years. Now that can’t be bad, so well done Microsoft.

Read the official story here