Archive

Archive for the ‘Rich Internet Applications’ Category

Flex, Spring and BlazeDS: the full stack! (Part 3)

April 13th, 2008

[UPDATE] This article series has been reedited on the Adobe Developer Connection. For more information, see this post.

In the previous article in this series, I described the creation and configuration of a classic standalone Flex module built with flex-compiler-mojo. In this article I’m going to describe the creation of our back-end module, made up with Spring, Hibernate and MySQL. I’ll keep the most interesting part for the fourth and last episode, that is how to connect the frontend with the backend using BlazeDS.
Read more…

Rich Internet Applications , , , , , ,

Flex, Spring and BlazeDS: the full stack! (Part 2)

April 11th, 2008

[UPDATE] This article series has been reedited on the Adobe Developer Connection. For more information, see this post.

In the previous article of this series, I laid the ground for what will be a step-by-step tutorial about creating a Flex/BlazeDS/Spring/Hibernate project. In this article, I will go into more detail about the creation of the Flex UI for our Todo List application.
Read more…

Rich Internet Applications , , , , ,

Flex, Spring and BlazeDS: the full stack! (Part 1)

April 10th, 2008

[UPDATE] This article series has been reedited on the Adobe Developer Connection. For more information, see this post.

In this article series, I’ll try to give you a step-by-step process to create an application with Flex/BlazeDS/Spring/Hibernate/MySQL architecture, all of that built with Maven. I’ve been looking for such a tutorial for a long time, but you know what Gandhi said about the change you wish to see in the world, right? So I finally put all the parts together, and with a little help from a Brazilian friend, tadaaaa! Here it comes!

But before we dive in to the hard stuff, just a few words of caution:

  1. The project that we are going to build in this tutorial is by no means perfect, especially in terms of Maven configuration. So if you have suggestions to improve it, they’ll be warmly welcome.
  2. One of the main ingredients of this project, one without which nothing would have been possible, is the flex-compiler-mojo from Velo. There are other Flex building Maven plugins out there, but at the time of this writing, none of them offers enough configuration options to build this project. On the other hand, Velo’s plugin is still in alpha, so… Anyway, if like me you are convinced that Adobe’s official Maven support is necessary, feel free to vote for this issue.

Enough blah-blah, let’s move on to the real thing. Ready to get nasty?
Read more…

Rich Internet Applications , , , , ,

WaaP? SaaS!

March 29th, 2008

What a cryptic title isn’t it? How about web as a platform and software as a service? Are you still wondering what it means. Well I just have a couple of good examples for you.

Did you imagine that a creative task like image editing would one day possible inside your browser?

Rich Internet Applications , , , ,

What Does it Take to be a good RIA Platform?

March 15th, 2008

Yesterday, I had a very interesting blog debate with a guy named Martin Beeby. He was arguing that Silverlight would eventually crush Flex because Adobe is building its community on Flash developers, who are in fact designers. Of course I couldn’t help demonstrating to him that he was wrong, because Adobe is obviously not trying to transform Flash designers into Flex developers, and is actually trying to add developers to its already existing designer community. But ultimately he made an interesting statement: according to him, RIA’s require both developers and designers, and both Microsoft and Adobe are trying to convince the ones they don’t already have in their community.

I had never thought of it that way. As a matter of fact, if you have a look at most Flex apps available out there, rare are those who use the default theme provided by the Flex SDK. In fact, Flex apps are so easy to customize using themes and stylesheets, that it’s perfectly understandable. Adobe is even pushing us in that direction with tools like Thermo or Flash Component Kit.

Adobe Thermo

But do we really need that level of customization? In fact, in enterprise applications, this themeing mania can even do more harm than good, unless you use a standard WindowsXP-like theme, because they don’t want fancy stuff, they just want transparent software.

He used another argument in favor of Silverlight, the fact that it’s generating more buzz lately. With showcase applications like Beijing Olympic games website, or the new AOL Mail interface, Silverlight is definitely trying to draw the attention on itself. Is it working? Hard to say.

But all of this debate made me think about what makes a good RIA platform. Here is my list:

  • the runtime has to be as widespread and portable as possible: on that point Flex is clearly ahead with its 95%-ish penetration rate, but the Flash runtime still suffers from a bad reputation in IT departments. On the other hand, Silverlight is still far behind but it has a tremendous advantage: Windows Update.
  • behind the fancy stuff, the code has to be simple, clean and state-of-the-art: that’s one of the main reasons why I love Flex, the ActionScript/MXML combination is just perfect, and it doesn’t even require any framework. I don’t know anything about Silverlight code, so I will probably have a look at some tutorials before commenting on that.
  • it has to be supported by a wide variety of development tools: Flex Builder is great but it’s still quite expensive, especially when you’re not using Eclipse at all and it forces you to run two development environments side-by-side. Fortunately, IntelliJ Idea has added support for Flex 3 and it’s becoming great. The last thing it misses is a visual designer. But given their experience with their Swing designer, I’m certain they are working on something (I hope so!). And all of that is possible thanks to the openness of the platform. On the other side, Silverlight is supported mainly by Visual Studio, and I haven’t heard of any openness effort that would allow other .Net development tools to support it.
  • RIA is all about the presentation layer, so it has to be connected to some backend to be useful, and the more backends it supports the better: Flex is really ahead on that one, since it can be plugged on Coldfusion, J2EE, .Net, PHP, Python, Ruby and virtually any platform via its webservice connectivity. But what makes it really powerful now is the extension of Java support thanks to BlazeDS. And apparently, Silverlight doesn’t have an equivalent communication protocol.
  • it has to be deployable on any platform: Flex just produces plain SWF Flash applications, so it doesn’t require any server-side technology. A plain Apache httpd server is enough. I don’t know what are the requirements of Silverlight on that matter.

Now what do YOU think? Do you see anything to be added to the above list? What are your criteria? Have you already had to make a choice and justify it?

Rich Internet Applications , , ,

RIA on Your Phone?

March 7th, 2008

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?

Geek Culture, Mobile Services, Rich Internet Applications

The Flex Office Suite is (almost) Complete

February 6th, 2008

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]

Rich Internet Applications , , , , , , , ,

A first step towards official Flex Maven support

February 1st, 2008

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.

Rich Internet Applications ,

Penetration in the AIR

January 30th, 2008

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)

Geek Culture, Rich Internet Applications , , , , , ,

Being creative again

January 27th, 2008

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.

Javapolis, Rich Internet Applications