For many years Adobe Flash (formerly Macromedia Flash) has been a very useful tool for web developers. It allowed vector graphics to be used on the web, animations, video and audio, interactivity (games and whatnot) and many other things. It allowed web designers to design for all platforms without thinking about platforms (Win, Mac), screen sizes or browsers (Internet Explorer, Safari, Firefox). As a web developing tool it allowed full Flash sites to be developed that filled the screen without worrying about proportions or screen sizes (Flash took care of that).
Flash is Dead
But in the last couple of years Flash's hegemony has been pealed away. The first nail in Flash's coffin was its own limitations with regards to search engines. Natively Flash data was not read by search engines. Since there was no indexing nor deep linking, search engines could not index the web site's content. In a html site you could link to inside content by just linking to a file or resource (unlimitedstudios.com/blog, unlimitedstudios.com/webdeisgn), that was not possible in a Flash website. Of course many JavaScript methods were created to pass a url variable to Flash to jump to a piece of content, but it was not native to Flash and not widespread. Search engine indexing robots (programs that scour the web for webpages to index) are not heavy on JavaScript, much less clicking on Flash buttons. Thus search engine optimization was not really compatible with Flash. In essence your Flash site could be the greatest resource on car parts on the web, but Google would not find out much about it because the content was in a database that was accessed by a Flash movie not by html links.
The second nail in Flash's coffin was hammered by Steve Jobs and Apple. Apple stated that they would not allow the Flash Plugin in iOS. While the main reason cited was battery life drainage and performance issues, I believe the main reason was to protect the App Store. Since Flash apps could have all the functions of a native app (access to the camera, the file system, interactivity etc.), free browser based apps with the same functionality of native objective C apps would have dented Apple's bottom line. They could not have that.
Long Live Flash
Flash has advantages that HTML5 is still behind such as:
Video
- one video format across platforms and browsers - MP4. MP4 is not available in Firefox or Opera, but it is supported in Flash for Opera and Flash for Firefox.
- video chat simply works in Flash without much hoopla about platforms or browsers, see Chatroulette.com
- access the webcam and take a picture or record a voice message Flash handles that regardless of platforms or browsers
Gaming
- Flash is still used in many online games: case in point Newgrounds.com
- There are things you cannot do for now in HTML5 (not many)
Applications and Legacy Support
- Vector Graphics, Flash is a vector graphics tool first and foremost.
- Complex animations are possible
- Almost any kind of application can be done in Flash: case in point Pixlr.com
- support for old browsers: Internet Explorer 6
See the recurring theme? Flash will live until:
- Browser vendors come together and decide on ONE video format for the video tag (hopefully MP4).
- IE6 finally becomes a thing of the past (along with IE7, IE8 and IE9)
- CSS animations become common without much JavaScript
- 3D gaming becomes commonly accessible - Mozilla + Unreal