AJAX & The Alternatives

Pete Freitag linked to this article; JD has some coverage here, and Leo Bergman echoes my vendor independence contentions.

I thought it was well written and agreed with what Alexei White said in regards to why AJAX is more hyped and talked about than Flex/Flash… well agreed if he had wrote that 12 months ago; the skillset argument doesn’t hold water anymore. I’ve always been frustrated that developers talk more about AJAX this past year vs. Flex & Flash when we do some many things better, and have been for a lot longer.

Is Flash hard for developers to learn and utilize? Damn straight, that’s why I was employable for so long. It’s also one of the many reasons Macromedia made Flex and removed that barrier. According to his article, we now just have to fight off “Vendor Independance”… but… I like Macromedia!

The vendor lock-in argument never made any sense to me. I think Patrick Mineault is very talented, and has done an extremely fantastic job with AMFPHP, an open-source alternative to Flash Remoting for PHP. He goes on vacation, or gets p@wned by border patrol again while I’m in the middle of a project, I still have the “email list” to help me through my project, right? And can we all be sure he won’t repeat the history of AMFPHP, and let it languish for another 6 months…? In all fairness, Patrick learned his lesson with BP, and is always improving AMFPHP and asking for the community’s input, so my example isn’t true of what he is truly about, or what AMFPHP is, was, or will potentially be. I’m just using him as an example of an open-source project I know of.

Still, no thanks. Paying someone to build, maintain, and improve on a technology that works seems perfectly logical to me, and my skillset doesn’t suffer merely because I use Flex vs. Tapestry to develop web applications. I must not understand what vendor lock-in is. I use AMFPHP because it works, I like using it, and I need it for work and side projects. That’s it.

However, the greatness of blogs shows through, and the comments in Alexei’s post nip at the veridity of it, and help give some corroboration as well as counter-points. David Mendels from Macromedia quickly corrects the skillset misnomer.

Additionally, his blog is aptly titled “AJAX Info”, where mine is all about Flex and Flash so we’re both subjective. Furthermore, I’m somewhat of a technology bigot because while Macromedia has been cool publicly about saying “It’s not AJAX vs. Flash, but AJAX and Flash”, I’m like so not down with that.

I really don’t understand what AJAX is appropriate for technically, and if someone says “This is an appropriate usage right here… now will you code in AJAX?”

I’d reply, “Nope, I’ll just go find someone to pay me to code in Flex on some other project.”

Regardless, I like reading articles that attempt to compare and contrast technologies, cutting through hype, ecspecially when those articles are written by someone in another area of technology than I am. Specially blog posts since you can get greater context reading the comments which are not deleted because they oppose the writer’s view(s); well done.

In conclusion, I still think one thing programmers never mention is that our stuff, Flex & Flash, has the opportunity to look better, more customized, and true to a company’s brand. Although my wife’s awesome with a DIV, I can own with a MovieClip.

11 Replies to “AJAX & The Alternatives”

  1. Thanks for the props. Not sure what your point though ;) All right, yes, lock-in with a proprietary technology is just about equivalent to lock-in with a dead open-source project. This is especially true when you get to more and more specialized frameworks for niche markets where OS-sustainability versus commerical sustainability is basically equivalent. In any case, I’m always for ‘right tool for the right problem’. I’d rather go for an open-source component set for example, as it’s the kind of thing that benefits from low-level tweaking, whereas I don’t mind paying for an IDE like Flex Builder 2.

    In any case, I’m tired of hearing of Flash vs AJAX. A client recntly asked me for an AJAX app, and given the constraints (namely integration of video), I said: you’re better off with Flash. If it would have seemed better to go with AJAX, I would have learned it and done it that way. I might have been able to charge more for it too ;) Right tool for the right job is what it’s all about. In any case I can’t wait for the next generation stuff and I’m sure AJAX will look puny compared to AS3 and FP8. Then again if ‘technology X’ comes up to kill Flash and it turns out it’s better and faster and flashier, I won’t be complaining.

  2. ‘It’s not AJAX vs. Flash, but AJAX and Flash’, I’m like so not down with that.’

    I second that. I know it’s a nice PR move for Macro as they continue to try and play nice with others, but I can’t agree with it. I actually heard someone the other day say that they wanted to make an app that used both Flash and Ajax together ‘just because it’s so hot right now.’

    Look, if you’re going to require somebody to have the Flash player, use Flash/Flex and call it a done deal. Am I missing something? The only case I can think of is if you’re trying to squeeze a Flash widget into an HTML/Javascript app that’s already coded or that you don’t have control over.

    And I shouldn’t pass up the chance to thank Patrick for his work on AMFPHP. Thanks Patrick.

  3. Thanks for the words Jesse

    Choosing between AJAX and FLASH in future development work is a concern for me. I keep flipping back and forth in my mind over which I perfer.

    Ajax is a cool technology for browsers, but JavaScript is trickey as it’s not the same in all browsers, so you have to do a lot of testing and find many workarounds. And the user could have Javascript turned off, etc. Flash provides a lot of stability as a platform, as-well as a Wealth of features JavaScript does not have, and will strugle to get. I tend to think Flash Remoting is easier to use than AJAX, and provides a more natural programming model then AJAX. I also Imagine the Server-Side code of a Flash Remoting app would be much nicer then with AJAX.

    As for a learning curve… I’m Just starting to learn flah and it’s not too trickey so far, and what I have done I can’t even imagine how I would go about doing that in AJAX (not that I’ve given it much thought). Also with AJAX, at the end of the day you have to use 3rd party libraries, and they take time to learn.

    The AJAX community are doing some good work and are working to make things easier to use and solving many of the browser compatability problems (tho that sometimes means means excluding older browsers).

    AJAX – when used properly – will create some great apps. (I shudder to think of the hord of bad AJAX apps that will emerge) But for me, Flash is nicer and, dare I say easier.

    Don’t forget tho, Flash costs $$$ AJAX is free

  4. MM staff surely seem like they had some meetings hammering in phrases to handle the psycholigical barriers that exists for a lot of developers when confronted with Flash/Flex.
    ‘It’s not AJAX vs. Flash, but AJAX and Flash’ is one of thm.
    Another one I noted that Kevin Lynch was using in his Flex 2 presentation at the Web 2.0 conference, and that was repeated in JD’s blog is ‘I like Dreamweaver too, y’know!’
    Sure MM loves their Dreamweaver, but I bet if they where honest they woudn’t mind seeing their proprietary technologies replace HTML :)

    Thats what scares a lot of developers, they like a web based on open standards. It’s ok with a little animation on the page made using proprietary technology, but that the very foundation would be the Flash player seems like a scary propostion.
    And I can sentimentally agree with that, but practically it seems to me like webstandards keep on failing.
    That the Flash player is not based on an open standard is surely the reason why it is so unproblematic, and the combination of having a company defining the standard but making the format open like with the swf format seems to be a very practical approach.
    Sure it’s not in the same democratic spirit as open standards, but MM has proven to be a very good dictator so far IMO.

  5. Sorry Patrick; since you don’t suck, you’re not a good example. Keep in mind I don’t know what vendor lock-in really is, so I figured I’d see if the reverse could be true; open-source lock-in. I’m dependent on you; your abilities, your availability and those that help you on AMFPHP to ensure it works, is maintained, and improved upon.

    Isn’t that like vendor lockin?

  6. Hey Aaron, thanks for the comment… and the coffee mug at MXDU 2005! Only one I own (lost the rest in my car somewhere….).

    Flex/Flash vs. AJAX is easy for me; which is more fun. I like coding in Flex… done!

    If a project wasn’t appropriate for Flex or Flash, I’d tell the customer, suggest what they do use, and then I’d go find someone else to work for.

    I’d rather pay money for Flex because it works, and Macromedia has given me tools to make my life easier. I don’t want to have to struggle with Open Source solutions that are ‘almost’ there. I’d rather sit upon a firm base to make a living, and THEN venture into better ways of doing things… FAME for example. It improved my workflow considerably. And, side benefit was Macromedia embraced it too!

  7. Open-source lock-in is considerably different from vendor lock-in. If you have something highly specialized that relies on skills very few people have, then if the original contributor stops involvement then you can get the equivalent of vendor lock-in. For example, if laszlo dropped support I’d be surprised a lot of people would have the desire to continue to maintain the product and add features, because it’s so large and unapproachable for the novice. However, PHP projects for example tend to be easy to hack and contribute to, so they’re hard to kill off (AMFPHP being a prime example, in fact). So for some things OS is more appropriate, for other things it’s commercial. I’ve said previously that people say ing that open source will save the world makes me believe they’re smoking crack. Computer programs are not the reason why the world is going to hell, and the open-source movement is not going to lead to an anarchist revolution, ferchrissake. It’s just a good way for people to solve problems their own way and share it and have other people build on it. If a project doesn’t fill that requirement then it doesn’t have its place as OS software, and it will live only as long as the oringial developer cares to drag it along. Meanwhile if you rely on it and it’s dropped then you’re screwed. For something like Remoting implementations in various languages I think lock in is not a problem though because more than enough people have the skill to continue such a project as long as the target language is not completely foreign to most Flash developers (ie C). When I see stuff like GIMP though I think what’s the point? Clones that offer only ‘it’s open-source’ as their selling point have no place. You have to have appeal outside of the OS argument UNLESS having source is critical (ie component sets/libraries etc.). Again right tool for the right job.

  8. Seems to me that AJAX solutions are great when you want your application to work like a web page. Being able to talk to a web service via JavaScript is great when you just want to reconfigure some sidebar links, or update a list of bulletin board posts without re-retrieving all of them.

    But when you really want the interface sophistication of a desktop app, Flash Player is the way to go. And I can get people to update it without asking them to download a whole new browser.

    For example, the coolest JavaScript app ever is Microsoft Outlook Web Access. It’s absolutely beautiful. But if you asked me to write it, I’d tell you I was gonna do it in Flash.

  9. I’ve moved almost completely away from Flash at this point. My current company sells tactical equipment to the military and for whatever reason, they have problems viewing Flash on our site. I find that hard to believe since I thought IE came with Flash pre-installed. But, this complaint kept coming up again and again from customers.

    That excludes Flex as well, although even if it didn’t, I’d never be able to convince my company to spend $12,000 on it. I had to fight for weeks to get $1,500 for ColdFusion. Flex is a great solution for companies with money, but us poor folk will stick with good ol’ HTML and Ajax. :)

  10. Rob,

    You kinda hit the mark for the reason for AJAX version Flash in select situations. This is what people are missing. This concept of Open-Source versus so called ‘Proprietary’ is really moot.

    The technology used needs to meet the client criteria and the developers budget. Skills can be learned but costs and restrictions are fairly fixed.

    In Robs case I bet its the users who have not explained the issue correctly and thus the problem.

    There needs to be more public applications of Flash to convince people that it really is much more viable than AJAX. To think if Gap had used Flash instead maybe there sites wouldn’t have been down so long and have intermittent problems after launch.

    If MM can accomplish this, I bet the AJAX hype would die down significantly, oh Avalon will also help in this arena. Let them both live but realize there are real limitations to AJAX. As I’ve said before can AJAX render a 3D Object?

Comments are closed.