Is Flash part of the future of web development?

With the recent iPad announcement and Apple’s decision to exclude the Flash Player plug in from it’s device (like in the iPhone and iPod Touch), a lot of discussion has been done about Flash and it’s place in the future of the web. A lot of people seem to actually be against Flash and see things like HTML5, most notably YouTube and Vimeo’s decision to support HTML5 video tags in their website, as a sign that things are moving towards a less proprietary and more open web that is Flash-free. Some, in fact, cannot wait for Flash to “die” and is replaced by a combination of HTML5, CSS and Javascript.

It also seems that among people who adocate designing and coding with web standards, Flash isn’t well liked and is in fact frowned upon.

So my question is, what do people here feel about all of this? Is Flash something web developers should start leaving behind (if they use it) in favor of other things or is Flash a platform that has a place in the future of the web which web developers should use?

What do you think?

I think Flash has it’s place in the “web of today” and will stand the test of time for years to come.

I think it’s great to take advantage of the latest features of CSS and HTML5, as long as you can be sure your audience has a browser released in the last few months…

Flash however, has been around for years and the penetration of Flash Player is 95%+.

Well Flash has a market share of around 95% of all browsing devices.
HTML5 and CSS3 isn’t even a complete specification and has 0% penetration as a full language.

Should we start ditching Flash for something like canvas? No. Why? SVG has been around since the 90’s (along with VML) and neither of those have managed to match Flash for vector processing. Flash will remain the solution for multimedia, gaming et al for a long while to come purely because it makes no assumptions on what player or support the end user has… if you have Flash Player… you get everything. With HTML5, you need certain products, certain support and certain formats.

Flash does NOT have 95% penetration of all devices. Not even JavaScript has that level of support and JavaScript is built into most browsers while Flash requires a plugin and is not supported at all on a large number of platforms. Even Adobe have only ever claimed Flash to be installed on 95% of desktop systems and even there thety don’t claim that everyone with it installed actually allows it to run.

That doesn’t mean that it doesn’t have a significant place on the internet though and will continue to have in the future. I haven’t seen anything in the HTML5 specification that implies that browsers will have anything built into them in the future to do away with the need for Flash.

There will continue to be demand for it where it scores heavier in either functionality, technical capability or plain old return on investment (of which ubiquity is a major part) when weighed up against an alternative.

There are plenty areas where the popularity of jquery have diminished the need to use (or narrowed the difference in development costs) of using flash (e.g slideshows and simple, interactive page elements)

On the other hand you have an increased awareness and demand for ‘desktop quality’ applications and entertainment (e.g splashup, [URL=“http://aviary.com/tools”]aviary, [URL=“http://www.soundation.com/studio”]soundation) and higher expectations of what is possible in visual presentation (e.g film, fashion, gaming sites) which are areas that it scores well in. The likes of Farmville gets 27 million users a day so flash can’t be all bad, the general public are neither [URL=“http://www.youtube.com/watch?v=o4MwTvtyrUQ&feature=player_embedded”]aware or care about the technology that drives these things really - they just want the experience delivered to them in as easy a fashion as possible.

There are also areas heavily resistant to change (online ad agencies who still request flash 6 swfs :rolleyes:) that are unlikely to switch to another technology any time soon.

Apple’s insistency on not using it on their devices will have a useful side effect in making flash developers weigh up the use of alternatives where viable and implementing progressive enhancement with alternative content when there is likely to be significant mobile footfall on a site.

The problem is, the alternatives don’t provide the scope that Flash does; this functionality is in demand and will become more-so into the future; particularly in regards to RIA’s and the types of application that use technologies such as Flash Media Server.

As already stated, you can use jQuery for interactive elements on pages and things like slideshows; but thats hardly Flashes scope.

For example, could the likes of BlogTV (webcam live broadcasting), Joost (video on demand, incl. HD content) be powered by HTML5 or jQuery? The answer to that is no.

Could the BBC IPlayer use HTML5 or jQuery… Flash/FMS based are top here as they work better than say Silverlight and the DRM solutions are more effective.

Also does HTML5 even support DRM solutions (which I believe will become even more important in the coming years as the net becomes more and more multimedia).

Also, if more Flash developers started doing things properly Flash would be more accepted by the development community; its pitfalls are 99% developer related rather than platform related.

As far as Apple devices are concerened; of the audience that use these devices for internet use; how many are consuming content thats relevant to Flash that cannot easilly be adapted to multiple delivery formats (i.e. youtubes video player)?

A question I have is why is Apple so reluctant in introducing Flash?
And wouldn’t it make sense for the user to control what plugins are installed on the device?

I’d like to quote something and highlight a point which I’ve advocated for a while.

Most World Wide Web content has been optimized for a workstation-style experience. A lot of this was due to pixel-perfect CSS designers. Many websites make alternate .mob sites to compensate. I think we’ll eventually agree that a WWW browser may work for the Web, but that Internet applications provide wider capability, a more sensitive design.

http://www.scripting.com/stories/2010/01/31/whatIfFlashWereAnOpenStand.html

The above statement is true; most sites are primarilly targetted and built for PC’s and Macs; those who truely consider alternative devices (mobiles, games consoles and now the iPad) tend to deliver an alternate interface.

I think what we should be aiming towards are web sites, applications and services which are more sophisticated and can deliver content for different platforms in the most relevant way possible.

To use an example; I frequent a website called Digital Spy which is an entertainment website and forum. When using the PC or the Mac all is fine but when I use my Blackberry the UI is less than ideal, its a bit slow and I have to turn Javascript off as its ad funded and the ads can be intrusive.

I tried to view it on the PS3 not so long ago, and while the forum was usable it was less than ideal.

What would be nice is if they delivered two totally different versions of the site (the same content and functionality) but one which is highly optimized for the desktop user and one which is optimized for other devices such as smartphones.

Using a more elaborate example, lets say we’re building a web application that streams media on demand, say an online TV station, a fully fledged one; which I think we will start to see a lot of soon (and I mean more than the BBC IPlayer).

It makes sense to use Flash and Flash Media Server for this; there are a number of reasons why. For one the DRM solutions are powerful, the streaming mechanisms are good, you have full HD support and the interface can be a bit more geared in.

Now, the iPad or iPhone wouldn’t be much use, so it would make sense to have an alternate streaming mechanism for these devices (which supported their screens better, which supported the bandwidth better and which delivered in a format thats optimized for these devices).

This approach will make our industry and thus our careers more involved and more complex and will increase our overheads and in turn push prices for certain applications but I think thats just part & parcel of what is essentially the medium evolving and maturing.

I like the fact that you can use jQuery as an alternative for interactive interfaces and think HTML 5 looks promising, buts its not a holy grail as far as highly interactive content is concerened.

Flash has its benefits in this space and I think we’ll not see Flash die, but instead see it become more of a dedicated solution which has specific uses.

Such as:

  1. Prerecorded Broadcast content
  2. Live Broadcast content
  3. Live Communities (chat, webcams etc.)
  4. Games
  5. Certain social media

I also don’t think we should be using Apple as a benchmark; while their products are cool and popular they do tend to be all style and lack substance and user freedom. I think we should be seeing the internet and its full scope as the benchmark and each platform which accesses it as just that, a platform on which to deliver content to.

How you deliver that content should be dynamic; tailored for that device specifically. If technology A doesnt work with platform B then deliver to platform B with another technology which suits, dont cut platform A’s experience to suit B’s.

Another thing (posts getting long now, so this is it)…

A good developer (or studio) will investigate and use as many technologies as possible; to get the best end product out there. If a certain platform has strengths then utilise those strengths, if there are problems then find solutions to those problems.

i.e. the old flash and SEO/Accessibility debate, the good developers sought out and implemented very effective solutions to those problems, those are the traits of a good developer. But also a good developer won’t use irrelevant technologies but the best tech for the job.

That’s true and is sadly something a lot of the people from the anti-Flash crowd tend to forget. It is all fine to talk about how HTML5 may end up displacing Flash in the future but right now, Flash clearly is at an advantage when it comes to satisfying the needs of some people and HTML5 has a rather long way to go to get to the level that Flash is now.

Having HTML5 video is fine and all but that really is not as big a deal as it is being touted to be. There are also their share of problems such as limited browser support and the whole controversy about which codec to use. Just having HTML5 video is not going to replace Flash as Flash does far more than just video.

On the other hand, Adobe needs to do some work on Flash’s performance, in particular with Flash Player on Mac, Linux and mobile devices. It really shouldn’t be such a resource hog. Full Flash sites can be a pain to load and browse, bogging down your system (movie websites are the worse!). But there are also very well done and optimized sites in Flash which load quickly and are not overloaded with oversized graphics. If HTML5 gives the same capabilities as Flash someday, it will be abused by people just as Flash is today.

My prediction is that before HTML5 will be able to threaten Flash in any capacity, we’ll see more and more Silverlight, which is a very capable platform when it comes to RIA. We at WebRotate 360 do align some of our future growth with Silverlight… in fact we built some of our in-house tools based on Silverlight, even though our main output is Flash.

As an experiment, I recreated the animation that was on macheists frontpage (html5/css3/javascript, with full screen width) and was getting a lot of talk around the web as an example of a ‘flash killer’. There’s a substantial penalty in processor use by -not- using flash.

The macheist version used 50% cpu on a pc and took over 370k
My flash emulation took 8% cpu on the same machine and 300k
On a mac it was closer: macheist version 90% cpu, flash version 65%

It only took me 20 minutes to script in actionscript which was likely -a lot- quicker than the javascript developers took.

One thing is certain: for most people the heavy load imposed by implementing this animation in html5 would be unwelcome, particularly so on a mobile device (where it was touted about a lot as a plus ‘even plays on iphone’). A page with a few banners constructed in a similar fashion would grind even an extremely powerful pc to a halt.

Interesting to note the hypocrisy apparent in a lot of discussion surrounding the animation - the same section of web developers who’d use flash ‘skip intros’ and supposed high cpu load and filesize as a weapon to bash it’s use, were congratulating macheist on doing exactly the same type of thing … go figure.

FizixRichard, I would say that the problem isn’t the fact that we end up delivering an alternative out of the need to assign mobile devices something which is remotely usable. The problem is that we don’t really have much in the way of a choice. When it comes to mobile web design we cannot hybridize our main website to automatically “work” for a mobile device for the reasons that the sheer number of handsets and mobile browsers in popular use cause a problem of scalability in that detecting each device (say through PHP) places excessive stress on a website (we’re thinking around 10,000 possible user-agents - based on research) and while some share rendering engines, until the mobile browser wars settles down a bit (and mobile phone makers restrict themselves to using well known renderers like Firefox (Fennec), Safari (WebKit), IEMobile (Trident), Opera (Presto), et al… we’re going to have a case for un-sustainability. Take for example CSS, we cannot just make choices based on “desktop” or “mobile” due to the mobile CSS at-rule not being widely supported… some mobile devices alone use mobile, some use screen, some use screen AND mobile and some require CSS3 media types! The only viable way of making a mobile friendly site (for those who don’t have desktop level browsing capability like the iPhone) is to have a separate design with reduced bandwidth usage (less content, smaller images, etc) and be done with it as a “Lo-Fi” version which is offered at the users request. As for .mobi domains, the public don’t even know they exist, their probably the most pointless TLD in existence due to their stringent rules (no-one wants to follow out of ignorance) and the total lack of awareness that exists with it. You may as well just have a m.yoursite.com subdomain and be done with it.

Of course this is much in the way you said it should be done (having two versions, one as an alternative to the sophisticated version) but with one difference, the lack of a method of delivery to ensure that if the site doesn’t work with one, it’ll go to the other… for the reasons above (and many more I won’t go into, it’s neither feasible or implementable on any level due to the scale of the problem and the heavy distribution of devices and needs with no guarantee that scripting or another method can make the right choice. Just look at the whole fixed with layout issue… people don’t even recognise the need for flexible web designs, let alone have the capacity to somehow manage to make something that’ll sniff the right needs for the site and make a choice based on it. Until CSS3 is finalized and widely implemented this is something we just cannot do as CSS2 doesn’t have the functionality to make such a decision and JavaScript cannot be relied on within mobile devices. :slight_smile:

I agree except would note that such functionality of JavaScript is relatively new in terms of rapid and complex implementation. Just like jQuery made JavaScript “quicker and easier to adapt to” I am very sure over time the processing speed of JavaScript will increase (this is something all the browser makers are highlighting as an important step) and frameworks will speed up the implementation process. JavaScript is constantly evolving, just like Flash and I’m sure it’ll catch up at some point. :slight_smile:

the only problem with flash on the iPad is the impact on battery performance …