Category Archives: Rich Internet Applications

RIA on Your Phone?

I love Apple. I confess I’m a pure fanboy, writing this post on a Macbook Pro I’m very proud of, and I really admire what Steve Jobs has managed to do with this company in just more than 10 years since he returned. But yesterday he did another of these annoying things I really hate: he denigrated a competitor. I mean, when you have great products like Apple does, you don’t need to do that sort of things, and if you do, it obviously means that you are afraid of them.

flexiphone.pngSo when Steve Jobs says that “Flash is not suited for the iPhone“, I don’t hear “Flash will never be available on the iPhone” but “Flash will eventually adapt to the iPhone and when this day comes, we’ll have to deal with it.” The truth is that Adobe has been doing huge things with Flash lately, thanks to Flex. And I’m sure Steve is aware of that. And I see absolutely no coincidence in him spreading that kind of FUD on the same day he’s announcing the iPhone SDK.

For months, Apple has been telling us that we didn’t need any SDK for the iPhone, because we could just write standard AJAX web applications, which is nothing more than a transitional form of rich internet application. Now that the SDK is out (and it really amazes me by the way, but that’s another topic), the web application way of doing things looks really poor in comparison, both more complex to use and less integrated than its heavyweight client alternative. But what if Adobe comes up with a Flash runtime for the iPhone supporting Flash 9 and Tamarin? Then we will have Flex applications on the iPhone, in other words easy-to-develop apps, with no need to go through the App Store. And if Adobe does things right and uses the full power of the iPhone APIs, maybe we could have some special capabilities to integrate multi-touch and other advanced features into our rich mobile applications.

Wouldn’t it be great?!

Now the question is, if Adobe comes with such an adapted Flash support, will Apple accept this alternative and pre-install it on all new iPhones?

I really hope so… But what do you think?

The Flex Office Suite is (almost) Complete

Today, I’ve discovered yet another great Flex app that completes my online Flex Office basic suite. It’s called BList and once again, the ease of use of Flex has made ot possible for its creators to be really creative about the way to create spreadsheets. And what I really love is that you are not lost with their new way, since you’re litterally taken by the hand and everything is explained.

So now we have:

What else do we need for it to be really complete:

  • A mail application, like GMail or LaszloMail (that is now GoWebtop) but with a more creative approach of course
  • A good calendar app, something with simple tools to synchronize meetings ala Doodle for example, possibly synchronized with the mail system for invitation
  • And obviously there is a lot of creativity needed in the personal database area

Now imagine if Adobe bought all of the existing startups mentioned above (they have already bought Buzzword) and created the missing tools to build up a great Flex online Office suite, possibly with AIR spin-offs for each application…

What do you think? Do you know of any other Flex app out there that could be integrated in this online Office suite? Would you be interested in such an integrated toolset? Would you or your company be ready to pay a subscription for it?

[edit]
Mike Potter just pointed me to another incredible example of creativity allowed by simple technology. It’s a personal organization tool with a calendar, todo-lists and notepads like I’ve never seen before. I’ve added it to the list above. It misses some meeting synchronization features but it’s really excellent.
[/edit]

A first step towards official Flex Maven support

One of the things I will miss the most in the coming Flex release is official Maven2 support. There are a few contributed alternatives out there, like Israfil and ServeBox, but I’ve tried both of them and had blocking issues. Don’t ask me which ones, I haven’t tried in a long time.

That’s why I filed a bug in Adobe’s issue tracking system and I try to encourage people to vote for it (or double-file it now that it has been deferred and you can’t vote anymore).

I know that the jury is still out to determine whether Maven2 is good or not, but as far as I’m concerned, I’ve “crossed the road” and after more than 2 years dealing with Maven idiosynchrasies, I feel comfortable enough to use it on all my personal projects and advocate it on professional projects as well. Now I’m convinced that official and up-to-date support from Adobe on a Maven2 plugin that would offer all the possibilities of the command-line and make it easier to configure the mxmlc compiler is a must to really integrate Flex 3 in serious projects with unit tests, continuous integration, and so on.

Well, I found out today that there is now a Java API for the Flex compiler, something that could make it even easier to develop a Maven Mojo around it. Let’s hope that it’s coming soon.

Penetration in the AIR

In my humble opinion, Adobe has done a great job in encouraging developers to consider AIR as a desktop application development platform. Applications are sexy, you can leverage your HTML/Ajax/CSS skills, and now with Flex Builder 3 and AIR Introspector in the pipeline, we have everything we need… well, ALMOST everything we need.

But of course, having everything that we need to build AIR applications is not enough, because we’re not the only people involved. We have other actors to convince, mainly our bosses and our users. Our bosses because when you’re building a product for a company, adding new technologies like Flex, ActionScript and AIR, has consequences in terms of maintainability, in terms of the number of resources you can find on the job market, in terms of the budget that has to be assigned to training. For that of course, the reference argument is very efficient, and Adobe has done a great job on that too. When you can tell your boss that NASDAQ, eBay, Google and many other big companies they’re admiring are using such technologies, it helps a lot in convincing them.

But I think that there is one target that is still to be addressed: users. Of course, when the application you’re building is targetted at corporate users within the company, once your manager is convinced, it’s almost done. It’s just a matter of adding the AIR runtime to the next company-wide software update. But what if your users are normal people who don’t care about installing a runtime, who are even afraid of installing new stuff when it’s not smileys or search bar addons?  When you build a product for those people, natural penetration rate is vital. And from the last figures we got, “only” half-a-million people have already installed the beta AIR runtime. And something needs to be done to encourage people to install the final version, to improve this penetration rate.

I asked the question to James Ward and Serge Jespers, and their answer was basically “it’s free, we’re talking with Sony and for the rest, if you want it in Windows or MacOSX, mail Bill or Steve and ask them”. And that’s an annoying answer. Because I can’t believe that those companies don’t talk to each other, especially Apple and Adobe. But it looks like when they do, they’re ashamed of it, because they are competitors. It’s like partnerships and synergies are a shame.

Well, let’s hope that all those shiny applications will encourage people to get the runtime and it can be even more interesting to develop new shiny applications, and so goes the virtuous circle.

What do you think? What could be done to spread the AIR runtime?

PS: If you’re like me and you really want to have EVERYTHING to build Flex and AIR applications, you can’t vote for the JIRA issue because it’s been deferred. But James told us that you can file a new issue referencing this one and they will add a vote to it. And who knows? Maybe they will get it done before Flex 4 ;o)

Being creative again

Amongst the things that really amazed me this afternoon in Gent was Lovely Charts, an online charting application that’s currently under semi-private beta. My first impression was something like “if it’s just a Flex alternative to Gliffy, I don’t see the point”. By the way, Gliffy is developed with what was the most advanced RIA technology before Flex 2 came in, namely OpenLaszlo.

Then Jérôme Cordiez proceeded with a small demo which showed something very interesting and reminded of Javapolis 2007. There was a lot of animosity there between JavaFX and Flex advocates, the most prominent JavaFX advocate being certainly James Gosling himself. And it was funny because the only answer Sun seemed to have against Flex was like “everything you can do with Flex, you can do it with Java, and even more”. But of course the problem is not what is possible, but what is easy to achieve. And Flex is far far ahead of Java on that topic. And even though Sun perfectly understood that and probably launched the JavaFX initiative to solve that very issue, I think they’re still too late.

But why is it so important to be able to achieve advanced rich features as easily as possible? Well, that’s precisely what Jérôme demonstrated today: because you lose less time on putting things together, you have much more time to be creative. And as a matter of fact, Lovely Charts is not just a Flex Gliffy counterpart, as it proposes a whole new way to create charts with a very interesting “create and connect” tool. This allows you to basically create your chart very fluently without having to change your tool continuously. That’s the kind of feature you wonder why it was not included sooner in other charting tools, including Visio, Omnigraffle and others.

Hopefully I’ll get my beta login soon so that I can test it further.

Flex 3 to be released February, 12th 2008?

I attended an excellent conference today in Gent university, which was part of Adobe Flex 3 pre-release tour. And even though neither James Ward nor Serge Jespers gave a precise date for the official release, Serge gave us a hint saying that it was the pre-release tour, and that it would end some day. So giving that the last date for the tour is February, 7th in Saint Louis, and assuming that Adobe is perfectly aware of the fact that you don’t release or announce anything on a Friday or Monday, my guess is for Tuesday, February 12th.

Now beside that sort of announcement effect clearly meant to attract some traffic to my blog ;o) I have to congratulate people who organized this event in Gent. And for those who really don’t know what Flex is, or are just too conservative to care, let me just reaffirm that this technology is huge and you should really have a look.

Fire… Exclamation Mark.

The RIA world has been pretty much burning in flames during the past couple of days. All because of a very… let’s say “engaged” blog post by one of Gaia Ajax Widgets developers. Thanks to SlashDot and Digg, it seems that this post has touched a sensible string and turned into a very bad belief-vs-belief debate about which RIA framework is the best. You know, something like “mine is bigger than yours”. That’s just ridiculous and endless, as it’s immediately been followed by the answer, and an answer to the answer, and even some very strange answer to another response, not even mentioning all the enflamed comments on all those posts.

Come on guys! Do you really think it’s useful and constructive. The main problem is that the original trouble maker asks for others to be constructive and objective, whereas he isn’t so himself in the first place. And why is that so? Because there is something like what we call a logical level confusion: everybody is talking about the capabilities of Flex versus Gaia, but the real FUD behind all of that is a matter of ideology. Should we be afraid of the big evil commercial Adobe and its not-so-proprietary technology? Should we put standards, openness, freedom and safety first, or live with our time and invest some time and effort in innovation?

At Axen, when we are in the middle of such a pointless debate, during a meeting for example, we have a very simple hook technique: what do we need? In this case:

  • Is it compatible with the surrounding technologies? Gaia is a library of .Net components, so forget about it on top of your Java backend.
  • Does it do what I ask it to do as a RIA framework, that is combine the best of both fat clients and web clients? Both seem to do.
  • And because a framework should never be a black box, is it possible for me to have a look under the hood to see how it works? Both are Open Source, or on the way to be for Flex. I really don’t care about the license and freedom and all of that. I just need to access the sources, something like what Java has offered for ten years.

Those are my needs right now. They are very likely to be different for you, and even for me tomorrow. Actually, I’ve taken the opportunity to suggest Gaia to colleagues working on a .Net project.

This “debate” has had a couple of interesting side effects though:

  • Obviously now many people know about Gaia whereas they didn’t know about it two days ago, so even if it’s not intentional, it’s a pretty smart commercial move.
  • And it’s bringing some more light on the RIA landscape that’s really getting a lot of momentum now, especially in business and enterprise applications. And that’s very good for innovation, that’s very good for the face of enterprise applications, and that’s very good for our business of course.

“You don’t know who’ll win!”, he said. But who said there has to be one winner, one way to go, one path to enlightenment. Adobe didn’t, Thomas Hansen did. Dude, in your fight for freedom, don’t forget the first one: the freedom to choose the tools that best suit our needs.