something in the way

a tumblog about design + code
Aug 30

Flash, what is it good for?

There seems to have been a lot of Flash bashing, both within the community and without, in the last few weeks. In terms of the external criticism, I refrained from a knee jerk reaction: "Flash sucks? Well, YOU suck!" and actually took a look for myself at the state of Flash. Of course, there are some on the outside who would say that there is no excuse for Flash anywhere ever. They refuse to even install the Flash player plugin on their machine. On the other end of the spectrum are those who think that Flash is the be-all and end-all. If it can't be done in Flash, it isn't worth doing.

I like to think I fall somewhere in the middle. OK, probably somewhat towards the Flash fanatic side, but not too far. Flash is not the right answer for every problem. There is definitely the phenomenon of "when all you have is a hammer, everything starts looking like a nail" at work. So what IS Flash good for? Well, first, let's look at what you CAN do with it, and then see how suitable it is for those purposes.

Web Sites
Yes, you CAN make a full web site in Flash. Should you? I don't want to say resoundingly NO, but if you do so I think you should have a damn good reason for doing so. And when I say "Flash" I mean Flash, Flex, whatever. A SWF-based site. First of all, there are sites that should never be done in Flash. This category includes most, almost all, sites.

My reasoning for this goes back to a local Macromedia event in Boston way back in 2004. Mike Downey, who was kind of new on the scene, was in town talking about Flash. This was when MX 2004 was coming in and the word "Rich" was starting to mingle with the word "Application" and we were about to get RIAs rammed down our throats.

Media_httpwwwbit101co_wbdjd
But Mike was talking about richness and experience. That talk really stuck with me. Flash is awesome for creating experiences. The possible richness of it - the media, the motion, the interactivity - draw you in and make you part of what's going on.

That's awesome, but not always appropriate. For the vast, vast majority of sites, the user is going there to get some information. He or she wants to click a link or type a URL, have the site show up fast, see the directions, the business hours, what's on the menu and how much it costs, etc. and get out. He doesn't WANT an EXPERIENCE. he wants data. Fast. A preloader stands right between the user and the data he is there to get. So does an intro. So does a page transition if it takes longer than just changing pages. Animation, music, and sound effects are mostly distractions to the information the user is there to get. That's not to say that a purely informational site has to be ugly or Jakob-Neilson-bland. I think decent aesthetics make a site easier to use. But most of that rich experience stuff people use Flash to create is misused if used for most web sites.

So are there any web sites where Flash IS a good choice? Yes, I think so. Anything where the site is about an experience more than information, Flash gives you great tools to create that experience. Artists' web sites (musical, visual, or otherwise) are great candidates. If you're going to check out a band's or a singer's web site, there's a good chance you are looking to see what that artist's music is like - what the experience will be like. Flash is one of the best ways to incorporate music into a site (custom aesthetic controls, rather than generic, fugly Quicktime embedded ones), and also allows you all kinds of visuals that can go along with the music to create an atmosphere that really advertises that artist. Still, you have to ask if it makes sense to do a full Flash site, or just do certain parts in Flash.

A photographer's or other visual artist's portfolio site is also a good candidate for a well done Flash site too. I'm not saying that every artist should do their site in Flash, or that there are no other alternatives. Just saying that these are the kinds of sites where it can make sense to do a Flash web site.

Now, I'm walking a fine line here, because the company I work for, Infrared5, has a full Flash web site.

Media_httpwwwbit101co_wbdjd
But I think there is some justification there too. Basically, we are a company that does very visual Flash stuff. The site really is a portfolio piece of the work that we have done and the kind of work we can do, more than somewhere someone would go to get information. However, if I were going to change it, I would probably have an initial simple HTML splash page with the company name, info, address, phone number, etc. and a button to enter the full site. That way, if someone wanted just that info, we'd be putting nothing in their way.

This brings up another category - pure advertisement sites. Movie sites, TV show sites, new car brand sites. Sadly, most of these are done pretty poorly, but all are designed to deliver an experience that makes you want to buy car x, or watch such and such a show. From my experience, the problem with most of these sites is they are designed by ad agencies by the same people who are doing the print and media campaigns, and don't know that web interaction design is something different.

OK, other than web sites, what is Flash good for.

Video

Of course, this is the killer. It's almost safe to say that video on the web IS Flash. Love it or hate it, you can't deny that Flash video has pwned the web. I know some of you are raising your hand and dying to shout out Silverlight or tell me about the zillions of Quicktime files floating around the net. I will freely admit that Silverlight video is awesome. The quality is great. Various sports franchises and broadcasting networks keep flirting with it, going back and forth between SL and Flash. But say you want to deliver web video. What are you going to do? If you are big enough that Microsoft thinks it will look good to have you as a Silverlight Video customer, they'll probably build your whole solution for you. Note, that Adobe would probably do the same thing. But if you're not that big, what are you going to do? There are no solutions for Silverlight (yet) like there are for Flash. Just want to throw up a bunch of video for cheap? Youtube and Vimeo. Make an account, upload your content, you have decent quality video available for the world in minutes. Want to get more serious? Brightcove offers a full service - content management, syndication, scheduling, georestriction, advertisement, etc. I'm sure they have competitors too. As far as I know, if you go Silverlight, you're building your own solution, or paying someone to build it for you.

Of course, this will change. Silverlight is new in the market and growing and maturing. It will get there. As a matter of fact, back when Silverlight was first coming out, Brightcove announced itself as a Microsoft partner with the intent to bring Silverlight solutions on board. Not sure what happened with that, but I have no doubt it will happen eventually.

Then there's been a lot of buzz about HTML 5 and video. Can't say I know much about it. At any rate, it's something to keep an eye on, but not any kind of viable option in the marketplace at the moment.

Games

OK, this post is getting longer than I wanted, but I have to say that Flash pretty much rules the web in terms of games too. If you want to make a game and put it on the web, chances are you are going to do that game in Flash. End of story really. yes, there's Unity, I know. We'll see if it gains ground. Developers are excited about it right now, but I don't see any hugely popular Unity based games out there yet. (Not saying there aren't any, just haven't heard.)

Education/Visualization/Artistic

Another huge potential here. The visual aspect of Flash along with its interaction and data handling capabilities make it ideal for data visualization and learning activities. For data vis, look no further than gapminder: http://graphs.gapminder.org/world/

A few years back I was working for an educational software company and did some really great learning activities for web-based learning tools. At the time, doing it in anything other than Flash really would have been unthinkable.

On the artistic front, I look to my own Art From Code web site (ctually, there's no Flash there, but it's all created from Flash), or people like Erik Natzke, Dr. Woohoo, Jared Tarbell, etc. Here, Flash is just one tool among many for creating algorithmic art.

Rich Internet Applications

This is a tough one. My gut feeling tells me that there must be some killer examples of these, but I can't think of any Flash based RIAs that I use on a regular basis. My feeling is that most RIAs are actually made for companies and used in house. I know many of the RIAs my company has worked on fall into this category. The one Flash App I do use regularly is my desktop Twitter client, which actually falls into the next category.

Desktop Apps

Here we are talking AIR. Again, the only AIR app I use on a daily basis is TweetDeck. Before that, Twhirl. Somehow Twitter emerged about the same time AIR did and the two got married and had a few dozen AIR-based Twitter client babies. Other than that (and my own KClipper app I use now and then for my Kindle) though, I don't think there are any other AIR apps I use. I think this is one area that's in danger of falling into the "hammer" analogy mentioned above. Developer knows Flash. Developer wants to make a desktop app. Developer makes desktop app with Flash. Quick and easy solution? Yes. Best solution? ...maybe. In some ways I feel that Adobe has encouraged the hammer philosophy by making desktop apps another nail you can hit with the Flash hammer. However, the one huge selling point of AIR is its cross platform capability. I don't know of any other app solution that currently delivers on the "write once, run anywhere" promise as successfully as AIR does today.

OK, I'm done, almost. I guess my a main point is that when most people go off the handle about how much Flash sucks, they almost always seem to be referring to Flash web sites. I tend to agree with them there. But that doesn't mean Flash is dead or has no use.

The other point I wanted to address before I end off this monster post is that there are other technologies that are coming into play, or growing and maturing. I've seen some stuff done in JavaScript in the last year or so that is pretty mind blowing. Certainly not what I thought JavaScript was capable of. Both in terms of application development and interactive graphics and animation. Definitely an area to watch. Just wanted to acknowledge that so nobody accuses me of having my head in the sand.

OK, enough, my fingers are tired. Looking forward to comments.

Apr 30

cTIC 2009

Terá lugar no próximo dia 13 de Maio de 2009 a cTIC 2009 com a seguinte agenda:

9:00 Sessão de Abertura
Participantes convidados:
Governador Civil de Viseu
Presidente da Cãmara Municipal de Viseu
Presidente do Instituto Politécnico de Viseu
Presidente da Escola Superior de Tecnologia de Viseu
Director do Departamento de Informática da ESTV
Representantes dos alunos dos cursos do DI

09:30 Sessão 1
Rich Internet Applications – Uma visão Geral
João Saleiro - RIaPT
Potencialidades das RIA ao serviço da comunidade e das organizações
Pedro Veloso - Areal Media
Moderador: Rui Abrantes - Buzz-id

10:30 Coffee Break

10:45 Sessão 2
Microsoft® Silverlight™ - Light up the Web
Gonçalo Chaves - Microsoft Portugal
ADIGITALBOOK (Adobe Flex e AIR )
Rui Cruz - Areal Media
Moderador: Professor Doutor Óscar Mealha

12:45 Almoço

14:00 Sessão 3
Usabilidade em Contextos Multimédia e Web-based
Professor Doutor Óscar Mealha - Universidade de Aveiro
Projecto EZ Show (Adobe Flex e AIR )
Rui Abrantes - Buzz-id
Moderador: Nelson Batista

15:45 Coffee Break

16:00 Sessão 4
Interactividade - Criar novas fronteiras
Nelson Batista
Segurança em Aplicações Web-based e em Rich Internet Applications
Professor Doutor Carlos Serrão - ISCTE
Moderador: João Saleiro - RIaPT

17:30 Sessão de Encerramento
Director do Departamento de Informática da ESTV

As inscrições poderão ser feitas a partir daqui.

Media_httpwwwriaptorg_qcvvd

cTIC2009

Feb 20

What Adobe Means By “Open” Screens, and a Mobile Open Scorecard

Software is increasingly a medium for artists. That to me raises really deep questions about platforms, and whether you’ll have freedom with the platforms you use. A gig’s a gig, and there’s nothing wrong with using these tools to accomplish jobs. But on the other hand, for the same practical (not even philosophical) reasons, the ability to modify the platform when you push past its capabilities is essential.

The ability to take your creations and run them on a variety of mobile devices - and how much freedom you have with the tools on which they’re built — is a key issue in 2009, as mobile platforms coalesce.

As I see people making amazing artwork with code, and then we have this question of which of our semi-disposable devices will actually be able to run stuff, I think this is as much an artistic question as a technological question. So it’s worth evaluating how three big players are doing at the moment. And this isn’t just to advocate open source for the sake of it: a big question is whether you’ll be able to write code and get it on mobile screens around the world.

Adobe’s Progress: Patchy, But Productive

Adobe has grabbed some headlines - and some skepticism - over their Open Screen Project. As Google did early on with Android, there’s a bounty for developers ($10 million). But it’s the “open” bit that has had some folks scratching their heads. After all, Adobe is one of the world’s biggest vendors of proprietary, boxed software. That’s not a criticism, necessarily, but it may make you wonder what these “open screens” are about.

Via the FAQ, here’s the answer - and a decent overview of where Adobe is so far:

  • Published, unrestricted SWF file format - no SWF license required (that has indeed enabled some open-source SWF/Flash tools)
  • Royalty-free Flash Player and Adobe AIR in the next release
  • Published device porting layer APIs
  • Open-sourcing Flex framework, the Flash Ajax Video Component, BlazeDS, and XMP
  • The ActionScript Virtual Machine for Mozilla Tamarin project, and contributions to Tamarin performance
  • ISO standardization of PDF
  • Card-carrying membership in the Linux Foundation, the Eclipse Foundation, and the SQLite Consortium - which makes good business sense, by the way, since Adobe benefits from those projects

That’s a pretty admirable record. The only problem - and it’s a big one — you don’t see Flash Player and AIR. They may be license-free, but they’re simply not open-source. It’s these players that really make the experience of playing content work. So Adobe means only that they want to open components of this, and make their proprietary players work better on mobile devices. That’s a worthy goal, but it means you’re fundamentally constrained in terms of what Flash and AIR can do.

So, in other words, Adobe actually turns out to be surprisingly open, but the screens themselves? Not so much.

Silverlight: Free Fail

Then again, this does compare very favorably to Microsoft Silverlight. Fewer portions of Silverlight are open in any sense - the Dynamic Language Runtime is, under a license Microsoft made up, as is the XAML format on which Silverlight creations are based. But that doesn’t include any of the meat of what Silverlight is, and it’s a far cry from Adobe’s entirely open specs and Flex framework. Microsoft is working with Novell on an open-source implementation for Mono — good for Linux and Mono developers, but because it is providing access only to a limited group of people, doesn’t really count as open. And Silverlight’s mobile strategy is murky (Windows Mobile, Symbian for now).

The closed nature of Silverlight means it’s not getting adapted as quickly or effectively on different platforms and OSes. In other words, people may just not use it. That’d be no great loss, except that a lot of what’s going into Silverlight is actually very good. And it’s not unfair to expect more of Microsoft. Part of the success of Windows comes from the fact that its APIs are so exhaustively documented. And the fact that the company has made small steps into the open source world demonstrates that at least some of the people who work at this gigantic company do get it. I just get the sense that the old business model dies hard. It’s their loss, given that they do stand to make more money if Silverlight is more popular, via support and tooling.

JavaFX: Getting More Open

The good news is, both Microsoft and Adobe are responding to a competitive marketplace by opening things up, because it makes business sense. The bad news is, Microsoft isn’t doing it very well, and while Adobe is performing reasonably well, the crown jewels are still proprietary.

And that brings us to JavaFX. Sun earns real points here for being way ahead of Adobe and Microsoft on both compatibility and open licensing.

Compatibility: While Adobe pursues a patchwork approach to getting Flash running on different platforms, the just-released JavaFX Mobile runs just about everywhere. Any Java ME device works. Just about any mobile OS should work in theory - Google’s Android, for one, was shown last year.

Openness: Adobe is “openish,” but JavaFX is getting close to being genuinely open. The compiler is open, though, in fairness, so is the Flex framework. The key is that we’re gradually getting additional libraries and APIs. And since JavaFX runs on Java, the platform itself is open. I’m running JavaFX apps right now on Linux using Java SE. There is no “player” as with Flash, but the bottom line is, with JavaFX you can run your creation on open code; with Flash, you run on proprietary code. And that’s not just a semantic point - here on Linux, there are things that just don’t work or don’t work well because Flash is proprietary. Audio and video work better in Java, particularly on Linux, because people have the freedom to fix stuff. (Out of all the “freedoms,” freedom from borked things to me ranks pretty high.)

So, what do you think, CDMers? Any of these platforms appealing?

I hope to check in with the JavaFX folks next week. For arts use, I’d love to see JavaFX, possibly even a JavaFX-ready rendition of Processing for mobile, and OpenFrameWorks on mobile devices. If you have some questions, I’ll try to get answers.

Background:
Adobe Open Screen Project
OpenLaszlo (open rich clients, but apparently no mobile version yet)
Silverlight @ Wikipedia
JavaFX FAQs
OpenJFX Project

Media_httpfeeds2feedb_diiqz
Media_httpfeeds2feedb_ujubc
Dec 30

SWFAddress 2.2 Released, Deep Linking Solution for Flash,Flex and Silverlight (soon)

SWFAddress 2.2 has been released.  SWFAddress is pretty much THE solution for deep linking in flash and works greatly in combo with THE embedding solution into (X)HTML/Javascript for flash SWFObject.

The new SWFAddress has just arrived after seven months of active development, various contributions and lots of positive feedback from the community. The list of changes includes the following:

  • Refactored JavaScript implementation
  • New SWFAddress.swc AS3 component
  • New CS4 based Splash screen sample
  • New Digg API sample
  • New up() method for easier deep linking path navigation
  • New XSS protection that doesn’t affect special characters
  • Support for Internet Explorer 8
  • Support for custom HTTP status messages in the SEO sample
  • Improved title handling
  • Improved unload event handling for IE
  • Updated Rails sample
  • Fixed getBaseURL() for AS3
  • Fixed Safari 2.0-2.0.3 support
  • Build-in fix for the Firefox 3/Mac OSX blinking effect
  • Additional onLoad fix for application/xml content type
  • Fixed optional options parameter for the popup method
  • Cross platform build script
  • Various optimizations

I believe that this new version is pretty stable and won’t require an update soon. There are two known Safari bugs (19202 and 20355) that currently affect the project and we can only hope that they will make it’s way into the next major release of the browser.

SWFAddress has grown significantly in the last two years and it’s very likely that we’re going to provide a lite version for users who need just the basic functionality. Very soon the same API will become available for Silverlight and we’re also scheduling the development of a jQuery plugin.

Get Updates

Tags

Archive

2012 (1)
2011 (11)