In response to another annoying Flex bashing article on Digg, I though I’d post my response and get some facts straight (I basically take all his ‘facts’ and respond to em so read the other article in paralllel). Funniest thing is, they are trying to sell a proprietary AJAX framework and scare their prospective customers with “Flex = vendor lock-in”.
1) Adobe Flex effectively don’t care about any of the web standards we have spent the last 4 decades building!
2) Adobe Flex is a BINARY RIA Framework!
3) Adobe Flex will effectively render your website invisible to Search Engines:
Are you creating a website or an application? If you are creating something like cnn.com in Flex, then its obviously the wrong technology. However, most of the AJAX examples I have seen that AJAX library vendors try to sell are mortgage calculators and the like. How on earth does google index a mortgage calculator? And if you are using AJAX, googlebots still cannot make asynchronous calls to your server. So for indexing AJAX applications, you still will have to resort to the same techniques as Flex/Flash applications.
4) You don’t know the technology needed to use Adobe Flex!
5) You don’t know who’ll win (Flash vs. Silverlight):
The flash player aint going away anytime soon. Ask yourself this: Will my application outlast youtube, google finance, etc? Are you willing to bet that Google, Yahoo and other huge companies who have invested in Flash dont know what they are doing or chose Flash callously?
6) Adobe Flex is immature technology!
7) Adobe Flex is lock-in technology!
Um, no! Flex is an open source framework that runs on the Flash player which is owned by Adobe. Sun owned Java but Java is still the language to beat for enterprise level applications. When you are trying to avoid vendor lock in, a lot of people choose Java.
Maybe the next blog will be where Flex outshines AJAX, unless someone from the community beats me to it.
25 thoughts on “7 Reasons to consider Flex”
Those articles about Flash and now Flex too are almost anywhere. They are all the same, no new reasons why not choose Flash or Flex. They are all the same.
However they seem to have a lot of popularity and ivite many visitors, i guess this is the reason why we can find someone poiting the cons of those products. As for me it’s not funny anymore…
One of the Murphy-type laws (don’t remember the name) says something like: The number of exclamation points used is directly proportional to the BS being thrown. This is a classic demonstration of that law.
@MJorge: Yep, its link bait for sure but once in a while someone will get me annoyed enough to bite. I find it unfortunate when developers resort to complete lies to get their traction on their products.
don’t even bother to spread your marketing crap based on bullshit,
considering how you answered to comments on your blog
you are not worthy to even an attempt to explain why/where you are wrong
(and you are)
and about FUD, your page still does not validate punk!
go ahead comment on that, if you’re so into the “top elite” explain to us
how does a simple blog page of yours does not even validate when at the same time
you are a so big proponent of standards
@ Thomas> That’s cool.
Keep thinking like that and in no time you’ll be out of the game.
I would also like to say, that you should read carefully people answers.
Everything you are saying has been proven wrong, but still you are claiming it right…
Anyway have a good dream thomas and hopefully the awakening will not be too hard for you.
I have looked at Flex from an Application Developers point of view, found it to be really interesting.
I have been working on Java Swing and building desktop based products for the last 6 years now, and so I know a good UI toolkit when I see it.
Believe me Flex is damn good, and it’s a complete UI toolkit just like MFC, JFC, QT or GTK.
Flex, gives you this ability to think in in terms of components and events and the GUI state, rather than request, response and session, which means people like me, who have done a lot of desktop programming find themselves right at home.
However there some parts of Flex have which really do bother me.
1. How do you build custom components with Flex? How easy or difficult is it to do so?
Because, if it is really hard, third party component development will not flourish. For a GUI toolkit having a third party component market is really important. Why? Because Adobe will not build every damn widget out there. Say you want a Property Sheet Component, or a Pivot Table, or a Date time picker. If you were using Java or MFC you can just buy these components off the shelf from people like Jidesoft or Dundas, to name a few. Is there a third party component market that caters to Flex Developers?
2.The price at $5000/CPU ( for 100 connections) and $20000/CPU for the enterprise, is really a show stopper. How do I sell this to my manager? That f@#$%r will probably look at something like Dojo and say Just piss off, and it is also pointless telling them that Dojo is not an UI Toolkit, where as Flex is.
IMHO, Flex is ideally suited for Dashboard style applications, and Statistical Apps like Google Finance and the new Yahoo Finance. Also Rich Interactive apps like Picnik are good candinates for Flexification 🙂
There is no point building Data Entry Forms with it. POHTML will work fine.
Flex component development isnt hard. The syntax is very similar to Java swing development although you will have to get familiar with the low level actionscript objects. And the $5000/CPU was what kept Flex 1 from gaining critical mass. Flex 2 applications are written in an Eclipse based IDE and the final compiled file is deployed to the server like any html/swf file.
I think Java applets were a good idea but the implementation was poor. The biggest issue was the startup time as the whole JVM initialized. Upgrade paths to the latest JRE were poor as well as the large size of the downloadable JRE was bad. Some of these problems were fixed with the Java Web Start stuff but I guess it was too late.
Flex 2 SDK is free and the eclipse plugin costs $600 with an additional $200 for the charting components.
There is no server required for Flex. You can connect to a PHP or Ruby backend if you want. (It will also connect to .NET, Java, ColdFusion backends – anything that can output XML will connect to Flex just fine.)
Flex will only catch on (up) if there is a large community behind it and right now I just don’t see that happening.
The issue I see with Flex is that Silverlight seems to do everything Flex can, and more. Silverlight allows you language-independence, and tighter integration with media players. What advantages do you all see for Flex over Silverlight?
Robert H. Goretsky
Since I’ve been defined as a spammer on my last two comments here I am sorry for impersonating someone else, but I’d really like to get to say something…
I’ve put Adobe Flex back to where it belongs now;
Let’s face it…
RHG: Silverlight has no market share and only half of a toolset – the developer side. Flex works nicely with Flash for the graphic design side of things. Microsoft does not have a comparable level of integration, or offer its own graphic design tools for that matter.
I completely agree that Flex will only be as strong as the developer community behind it. And I think its getting better, if stats on the number of users on any of the Flex mailing groups are anything to go by. And if you look at the adoption in the market, there are quite a few bigwigs who have adopted it. Look at Yahoo’s web messenger, Comcast Fan, Brightcove, SAP, EBay’s desktop application etc etc, the signs are definitely promising.
Flex and Silverlight is going to be interesting if silverlight can get the plugin base high enough. Whats a little weird to me is Silverlight seems to be targeting the developer community (especially with the language independence) but the applications they showcase are more what a web developer would be called to do rather than a software engineer. I am not sure how many companies will ask their C# developers to create an application with tweens, fades and other eye candy. If the battle doesnt spill to those domains and Silverlight just remains something in a web developer’s arsenal. then its future would seem more rocky.
Um, I’m not a .net developer myself, but the next generation of asp.net web apps will be done in silverlight full stop. the silverlight community will be .net shops and the .net community is LARGE. in case you don’t know, MS Visual Studio .net is the most ide in the world.
Secondly, I expect MSFT to build decent(definitely better than FlexBuilder) tools for silverlight. It’s not like Adobe starting an IDE from scratch, they have the knowledgebase / codebase already and know how to do it well.
Also, custom component creation is in fact harder than it is in java swing. The actual code you need to write is the same, but the fact that Flex Builder isn’t nearly as good as the standard java IDE’s means little shortcuts for moving up and down the inheritance chain, overriding methods from your parent etc are not there in FlexBuilder. If you open up one of Ely Greenfield’s custom components and try to work out what is what, you’ll see what I mean — FlexBuilder gives you no hints on what methods the child overrode etc.
Btw if you are an agile shop, I’d think twice before choosing flex. Flex unit is a ‘not good enough’ first attempt to test their actionscript code, but not the mxml – which will be the main view of your ui. The only way you can really test the gui is by buying some mercury product. Appalling really why Adobe only conspired w/ Mercury and didn’t assist the ‘open source’ world in any way to test the gui.
I am sure MS’s tools for silverlight will be amazing, they do have a bigger team than Adobe on tools and Visual Studio is an awesome IDE. But arent product decisions about the final application coming in from the business folks and unless the silverlight plugin reaches a 90% penetration, trying to convince business to use silverlight for anything besides prototypes would be hard.
I hope MS does a kickass job on the tools. Adobe needs the competition. Flex Builder 2 was a first stab but FB3 seems to have a lot more support for refactoring and debugging.
I agree that the unit testing framework for Flex needs a lot to be desired.
On the other hand Adobe has an army of designers who could really enhance the user experience on RIAs and MS’s lacks that. Imagine improved workflows from photoshop to Flex and how much that could reinforce Flex’s current dominance.
In terms of product decisions, I think you are assuming that all those apps will run outside the enterprise’s firewall in which case the 90% penetration is justified as a critical point.
However, I’d bet a large sum of money that each enterprise has a lot more more internal corporate apps than those deployed on the www. And these corporate companies are who Adobe + M$FT + everyone else is competing for. I’ve seen so many internal apps run on Weblogic, Websphere, or any other >10k per cpu server in my time as I’m sure many of us have….and in this case, a 90% penetration rate doesn’t carry that much weight when they / the corporation controls the config on each desktop.
I don’t disagree that flex outputs a nice product, but going to the silverlight site, for a business ria app, I don’t see a distinct difference in the output – in which case labor, and time to build will obviously be an important factor.
I’ve built flex apps myself, and while it’s quick to create simple pages, i’ve found complicated pages to be much more difficult + I’ve found mundane tasks like code formatting, organizing imports, refactoring etc. to be frustrating and a waste of time b/c of a poor tool. I’m just assuming mind you b/c I haven’t done silverlight dev myself — but M$FT has always put out good tools to really RAD their applications(It helps to just build tools that work on 1 operating system!) starting w/ the original VB(although they probably get a mulligan for Visual C++)
Clarification – MS Visual Studio .net is the most widely used IDE in the world. By a long mile actually…and again, I’m not a .net developer…just stating facts.
Adobe should look to Jetbrains for tool inspiration — they make the best stuff bar none.
I am not sure I agree with you on silverlight looking at corporate intranet apps. Nothing I have seen on silverlight has ever said that. If you look at the silverlight showcase site (http://silverlight.net/showcase/), none of the apps look like dashboard /CRM/ etc apps. Also as far as I know, Silverlight has no advanced components to make creating such apps easy (like datagrids, tree controls. charting controls etc). They may appear as additional products you can buy later but they arent part of the core product.
I think silverlight is closer to Flash than Flex. But if the runtime gathers enough steam, a framework for silverlight will appear soon enough.
Also on MS Visual Studio, remember that there is hardly any choice in that world. If you are going to be developing in .NET or VB or anything M$FT, you pretty much have to use VS. In Javaland, there are way too many tools: Eclipse, JBuilder, NetBeans, etc. I have started seeing a lot of people move towards Eclipse now (example:http://www.theserverside.com/news/thread.tss?thread_id=33488) so it makes sense Flex Builder was built for it. In fact Flex Builder 1 was built as in independent application (looked very much like dreamweaver so I think they may have used that codebase) but FB2 targeted eclipse to target developers who were already familiar with the IDE. In fact a lot of the shortcuts come directly from the Java editor (http://davidzuckerman.com/adobe/2006/10/27/flex-builder-editor-cheat-sheet/) so workflows should be easier for Java developers moving into Flex.