Adobe Flex for MV GUI

Show me the data

Data not available on the client is requested via web services from any type of server, including Linux or Windows, running Apache or IIS, and with PHP or Java or any other language processing the request. Usually however, a site that deploys a Silverlight app will have servers running .NET. This is what I meant by elegance above – it only makes sense to use the same languages and technologies at all tiers – and that’s one of the benefits Silverlight brings to the table. When you’re using Flex you still need something else on the back-end to process requests for data – your resources (you, your staff) must have knowledge of other technologies.

Connectivity from Flex to MV seems to be dirt-simple and I can easily see someone using Flex with or without FlexBuilder to create a rich front-end to an MV app. Heck, you can write and deploy a Flex app entirely from TCL and your MV editor if you’re really a masochist. The connection from client to server would be via common web services, using any OS or technology for a middle-tier or DBMS. How do you create a web service? I’ve written extensively about this (see Spectrum articles) here in this blog and elsewhere, and even provide a video to show you how. You can also find information at PickWiki.

Which is better, Flex or Silverlight?

I won’t touch that one. However, if given a choice, for MV people I think the best bet would be with Flex for now. This is for the following reasons:

  • Most MV developers seem to have a thing against Microsoft. If you haven’t jumped on the .NET bandwagon for whatever reason, Flex is a good alternative.
  • Many people mistakenly believe ASP.NET, C#, VB.NET and other related technologies are Microsoft-only, they require IIS, they require a hefty server, they’re expensive, or that they target IE as the only web browser. Every one of these beliefs is wrong. If you still believe any of this, I won’t try to convince you otherwise – Flex is a good alternative.
  • The adolescent nature of Silverlight is really a factor. Flex is mature, works everywhere, and is well known – go with what you know. Both developers and end-users have too many questions about Silverlight at this point in time. While Silverlight might sound new and unusual, that aspect could be a negative factor in the sales cycle too, where Flex (or at least Flash) is well recognized and people understand what it is as soon as you mention it.
  • Many people seem to feel safe with the concept of JavaScript. It’s a scripting language, how tough can it be? Uh, not really. In order for JavaScript to do the things that it does, it needs to be a full first-class language. That means full object-oriented programming, classes and interfaces, functions and properties, inheritance and polymorphism. I’ll let you in on a little secret – JavaScript, Java, and C# really all look alike. We can lump PHP in there too. That includes class definitions and all of that other OOP stuff. If you know one you know them all. But if you’re still comfortable with the idea of scripting then stick with Flex.

Flex answers a lot of the questions I hear about support for different browsers, deployment outside of the intranet, choice of web server, and choice of operating systems on both servers and browser. And despite the fact that you can write and deploy a .NET solution completely for free, people still believe there are hidden costs somewhere – the only cost for Flex that I’m aware of is the $300 for the FB3 IDE.

Comparison with products in MV market

I won’t name specific products, but I think you can see some obvious advantages here to products in our market.

  • Cross-browser and Cross-OS on the client
  • No server dependencies
  • GUI development and deployment
  • Universally accepted, no sales or deployment issues
  • Thousands of websites, books, documents, tutorials, user groups, and conferences
  • Major corporate support and big names everywhere using it
  • Open Source, well supported, very stable
  • Easy to find (and replace if required) people who know the product
  • Common technology, easy to use, relatively easy to learn
  • Very inexpensive – even free – for developers
  • Zero deployment cost, no runtime licenses

How tough a decision is that?

Connecting dots

OK, let’s say you download FlexBuilder 3. (450MB ouch) Go through some tutorials, have a look at some books in your local bookstore. Get a feel for how the thing works. The goal is to get into a mode where you can easily create SWF files that render in your browser. I did this in about an hour after looking at some basic web sites – YMMV.

After you get various controls on the screen to respond to one another in isolation (button clicks sending data to labels, grids filling with static data, etc) you will want to see your MV data. Look around for ways to connect to MV via a web service. You can do this for free or I can help for a fee. You can use free tools or I can sell you something inexpensive and ready-made to save you a lot of time and grief.

Somewhere before the 60 day trial is over, decide if you want to buy it. If you’d rather not spend $300, you can use your favorite text editor and the free SDK.

The ultimate goal is to look at this tool and decide if you think it’s worth your effort to use it to create a new front-end for your business application software. Will there be some cost? Sure, let’s not kid ourselves. I’m thinking connectivity licenses of some sort to facilitate the effort (compared to writing and maintaining your own connectivity), books, webinars or other training, consulting – and/or just your valuable time. Will it be worth it? Personally I don’t think you can go wrong with a Flex front-end. I’d recommend Silverlight for many of the same reasons but if you’re not compelled by anything above in favor of Silverlight then Flex is probably your solution.

Comments are welcome below. If you’d like to discuss the topic, please feel free to start a new topic on our connectivity forum.

[EDIT: Pricing for Flex is more complex than the general $300 number I used here. You can buy a standard edition for $249 or a full version for $699. They also have discounted upgrade pricing and special offers for students. There are also open source alternatives to FlexBuilder and you can build your own ActionScript editor with Eclipse using plugins. I’m sure I’ve missed other details and options – the information here should be enough to help kick off your research.]

5 thoughts on “Adobe Flex for MV GUI

Leave a Reply