So, which Web Application Framework to use these days?

I haven’t done web design for a few years now. Last I got into it, I was pretty heavily into Flash – or rather, the wonderful little combo of Flash+PHP+MySQL. This seemed to cover most all of the bases for creating any serious interactivity you wanted on a website – your Flash could handle any UI stuff, PHP and Actionscript doing the logic, MySQL dealing with any of the “back-end” type stuff.

Anyway, fast-forward to now, and I’m in a position where I have to create an “interactive website” again. While I haven’t been active in the web design/programming sphere, I’ve certainly observed it, and one of the things that’s struck me is how many damn “frameworks” seem to be popping up these last few years. So many that individual companies like Adobe, for example, seem to have multiple, competing frameworks (let’s see – you got AIR…uh, Flash…and whatever the hell “Flex” is?). PHP seems to have been trumped (partly) by the much ballyhooed appearance of Ruby. No, wait, its Ruby on Rails! And on and on.

<Mops brow> Ok. Here’s my question: what should I actually pay attention to? What should I use? I want a site that (a) gives me complete control over layout and graphics. (b), I want as much interactivity as possible – if I feel like having cheesy animations (don’t worry, I’m not one of Those Flash People), I can. ©, I want it to be slick. The site I’m doing is absolutely centered around media. High-end, real-time graphics. Music. The whole shebang. That’s what the company does – so the website has to be at least SOMEWHAT reflective of this…meaning it has to be both aurally and graphically-impressive.

Designers, developers, countrymen – your thoughts?

That’s not quite accurate, as those tools all work together and are building upon each other. The base is Flash, Adobe’s animation/multimedia tool. Flex is an SDK built upon Flash. You get some premade buttons, text controls, list boxes, etc. to use in your Flash application, plus a library of other useful code. AIR brings Flash out of the browser, so if you wanted to build a desktop application using Flash that didn’t live in the browser and didn’t require an internet connection, you’d use that. It doesn’t sound like that would be of any interest to you, although Flex might add some nice functionality and productivity for you.

Nah. Ruby is very cool, and is a serious tool, but there is still a lot more work being done out there in PHP or .NET than Rails.

By far the majority of the work out there is being done in PHP for websites with basic to moderate server-side functionality, and .NET for more complex web applications. Your need seems perfect for a MySQL/PHP/Flash solution. You may want to look into enhancing your productivity with Flex and maybe some javascript libraries such as JQuery, but your experience is still good.

Keep in mind that (currently) the iPhone doesn’t do Flash, and the iPhone has the most mobile web users by far.

The term you want to google is AJAX. Id recommend staying away from Flash/flex. You’ll get a lot of resistance from users who dont want to run flash, deal with its slowness, and unless youre a really good graphic designer then flash stuff looks pretty terrible. Of course, thats my opinion. A lot of this is subjective.

AJAX is what I was here to suggest. It is so popular that there is a huge speed competition in browsers.

And, whatever you decide to use, please make sure it looks good on both high and low resolutions. Nothing is more annoying than having to constantly scroll an interactive application.