With all of the buzz going on in our Web community about HTML5 and Flash, I’ve decided to dive into the fray and offer my thoughts as a 10-year veteran of both Web design and Flash development. Let me preface by saying that this article is opinion-based, and that information is certainly out there that I am not aware of, and that none of us truly knows what the future holds.[Offtopic: by the way, did you know that there is a Smashing eBook Series? Book #1 is Professional Web Design, 242 pages for just $9,90.]Use Of Flash Till NowWhen Flash broke on the scene, it was a fairly revolutionary tool… and much simpler to use than it is today. I first started using it in 1999, when it was being produced by Macromedia. The current version then was 4. The simple benefit was that it allowed the average computer user to design graphics and create simple user interactions with almost no skill: quite a feat in the messy and over-complicated world of Netscape and IE4.People didn’t take long to start using Flash as an engine to create full and complete websites, especially as the versions continued their march upward and ActionScript gained footing. Quite simply, it sped up development time and wow’ed all users with its animations—a far cry from the static-text Geocities websites around them.But Flash started to be overused soon after. One can compare it to HTML tables, a framework that revolutionized the industry for a time, became overused and then receded to its proper role (which in this case was to structure data points rather than website columns).Why They Don’t Have to FightI’ve read a lot of blog posts lately about HTML5 taking on Flash like a prize fighter and kicking it off the scene in some epic battle of Web standards and pragmatism. But this is a false scenario: HTML5 and Flash are not meant to be fighting in the same ring, or to be fighting at all. Each has its proper place on the Web and in the graphic community.Flash’s PlaceInterestingly enough, Flash’s place is not entirely on the Web at all, and certainly not to take over full website designs (or those dreaded Flash intros either). While bits of Flash will continue to be used in Web design for advertising and gaming, it will truly shine in two primary areas.The first area is the corporate setting. I work part-time as a Web developer on the multimedia team of a major international telecommunications company. The majority of the team consists of Flash developers, and there is a huge demand for more of them. So, while Flash may be shrinking in the Web industry, it is booming at the corporate level through rich media, training and learning solutions, Intranet applications and the like.While Flash may be simplistic and annoying for a website, its capabilities for database interaction, PHP integration, XML sourcing, external ActionScript 3, extensible plug-ins and import and export functionality make it an extremely robust tool that far outweighs the competition for certain uses. Flash has a profitable future in corporate settings.The second area is still budding and turbulent: mobile platforms. Web content aside, if Flash could be used to produce applications and rich interaction on a variety of mobile platforms, it would empower designers and developers everywhere to contribute to a booming mobile industry (and give us the opportunity to make a sweet profit while we’re at it).Why would Flash do so well in the mobile space compared to Web-based tools and frameworks? First of all, because Flash is a powerful development tool, beyond its graphic and animation capabilities. ActionScript 3 has brought serious improvements to the overall structure and functionality of applications, allowing developers to create powerful apps.Secondly, Flash being used across multiple platforms brings a much higher probability of consistency and compatibility. Even if comprehensive Web standards were supported across all mobile devices, there is no guarantee that we wouldn’t run into the same cross-browser headaches on the variety of mobile browsers. If Flash were supported on all mobile devices, I could be reasonably certain that my Flash module would run smoothly on each one.It’s like my parents fighting. I love Adobe. I love Apple. This really sucks.— Terry RansonThe Adobe and Apple cat fight disagreement may be discouraging, but consider that Android is releasing a Flash-enabled framework, and Adobe is releasing Flash Player 10.1 for smartphones, and Research in Motion has joined Adobe’s Open Screen Project, essentially committing the BlackBerry to Flash in the near future.Flash should never have been used to the extent that it was purely for Web design. But it has capabilities beneath the hood that make it an extremely valuable resource for certain uses, particularly in the mobile space.HTML5’s PlaceHTML5’s place, on the other hand, is entirely on the Web. And this is an outstanding development. I remember switching from table-based designs to CSS, a liberating move that gave Web designers a freedom that only we could truly appreciate. Moving forward with standards-based browsers and rich functionality via CSS3 and HTML5 will take our industry to new heights and lead to a flourishing of gorgeous websites and functionality that we’ve never before witnessed.Plenty of articles and resources outline the capabilities and benefits of HTML5 (I won’t cover them here), but rest assured that it is the future, and a sweet future at that.The Web In Two YearsWhere will the chips fall when the Web design industry reaches its next stage? I may be idealistic, but I would like to see (and I think we will see) the following:HTML5 and CSS3 as the new Web standard;All browsers being compatible and standards-based;Flash being used more limitedly as a tool for multimedia and gaming and interaction, both online and offline;Mobile platforms and mobile content development being the newest and fastest-growing subset of the industry:Sporting Flash capabilities for robust application development across all platforms;And offering HTML5, CSS3 and complex JavaScript capabilities for mobile browsing.ConclusionFlash has been misused and overused for the past eight years, spreading its tentacles too far into the fabric of Web design. But rather than getting beaten out of the picture by these practical new Web frameworks, Flash will retreat to its proper place: those niche areas where it belongs and can truly excel. The first niche is multimedia and learning solutions for the corporate space. Only time will tell if Flash finds its second niche on mobile platforms.(al)© Luke Reimer for Smashing Magazine, 2010. | Permalink | Be the first to comment | Add to del.icio.us | Digg this | Stumble on StumbleUpon! | Tweet it! | Submit to Reddit | Forum Smashing Magazine Post tags: flash, html5
-
I posted to smashingmagazine.com
HTML5 And Flash: Why It’s Not A War, And Why Flash Won’t Die
http://feedproxy.google.com/~r/SmashingMagazine/~3/tgKeq-6EyMA/
May 18 2010, 3:33am | Comments »
-
I posted to smashingmagazine.com
The Gradual Disappearance Of Flash Websites
http://feedproxy.google.com/~r/SmashingMagazine/~3/TcOBKrMoXoc/
If you want to “go big” visually with a website, delivering complex interaction and a rich experience across a wide range of browsers, Flash is the only way to go. Right? Nope. Given the widespread adoption and advancements of modern browsers and JavaScript libraries, using Flash makes little sense. But it does have its place on the Web, considering the need for progressive enhancement.In the current landscape of technology and accessing the Internet through devices such as picture frames, netbooks, cell phones and televisions, the benefits of Web standards outweigh those of Flash, especially when delivering content to a broad audience on various devices.Flash is a proprietary product that sits on top of the browser to extend functionality. While Flash may have provided missing functionality for some time, it brings little value to modern browsers. As more and more designers and developers realize the benefits of Web standards and start using some of the features of HTML5 and CSS3, we’ll see fewer Flash-driven websites.[Offtopic: By the way, did you know that Smashing Magazine has a mobile version? Try it out if you have an iPhone, Blackberry or another capable device.]The Great Flash vs. Web Standards DebateAdvocates have evangelized Web standards for over 10 years. The debate among developers and designers often gets as heated as the discussion on same-sex marriage, causing uncomfortable divisions among some of the smartest people in the field.With the recent announcement of iPad’s lack of Flash support and the continued lack of it on the iPhone, the debate has reached beyond the development community to include Adobe and Apple themselves. With Apple’s anti-Flash stance, it has become too hard to argue for a completely Flash-based website when it would leave out a potentially large audience.Eventually, Flash will make it to mobile devices (250 million devices are expected to have full support by the end of 2012), but that’s really only a small part of the debate and one of the better arguments that Web standards advocates have.At the heart of the matter is how to deliver a great experience to users no matter the technology or platform.“HTML5 vs. Flash” is the wrong discussion. “Accessible rich media” is the right one.— Jeffrey Zeldman (via Twitter)In the end, we’re all just trying to create websites that can be accessed and used, regardless of the tools we use to deliver them.Healthy CompetitionIn the early days of the Web, Flash was pretty much the only way to deliver a rich experience across different browsers and platforms. CSS and JavaScript were inconsistently supported across browsers, and relying on them was hardly worth the trouble. (Image: Erik Charlton)Flash saw great success early on and pushed forward quickly. The small app that once mainly made animations quickly became a worthy development environment in its own right. Developers and designers alike chose to concentrate their efforts in that area, often segregating themselves from the open Web and backing the proprietary technology. Flash websites took over the Web, and Web standards didn’t allow developers to create the experiences that users were starting to expect.Web standards may have fallen behind once, but they continued to be pushed forward by practitioners and those willing to embrace the idea of an open Web.Web Standards: Benefits And Reasons For AdoptionUsers expect rich experiences, and in many cases these great experiences are now being delivered with HTML, CSS and JavaScript, which are the basics of Web standards. (Image: The US Army)The line between websites developed with Flash and Web standards has become blurred. At first glance, even the savviest developer would have a hard time discerning which technology was used for a website without peeking at the source.The list of websites that are ditching Flash in favor of Web standards is growing every day. Even if these decisions are driven by the iPad and iPhone’s lack of Flash, they’ll soon reap the other benefits that Web standards bring.Current TrendsWhat once could be done almost exclusively in Flash is now easily accomplished with JavaScript and a bit of ingenuity. Lightboxing, scrolling news stories, rich navigation and image slideshows were once solely the domain of Flash. Widespread adoption of standards is easily attributable to the ease of using JavaScript libraries for enhanced interaction and current support of CSS among browsers.Video has been an important step in moving Web standards forward. Video is one of the few things that could once only be delivered in Flash. The biggest leap so far has been YouTube’s adoption of the HTML5 video element (albeit in beta), allowing modern browsers to bypass the Flash plug-in and use video native to the browser’s player.HTML5 video has encountered controversy (thanks to the current codec debacle) and reports of unimpressive performance, but these issues will be worked out. Website developers will implement HTML5 video and choose an appropriate codec. When the biggest websites make this decision, we’ll end up with a de facto standard that gives browsers improved performance.Modern Browser AdoptionHTML5 and CSS3 represent a great effort to advance native browser performance, and many browser providers are already implementing their specifications, even through they haven’t been set in stone. We have a lot to look forward to with CSS animation, canvas, local storage, geo-location and other specifications that will bring Web standards into a new era.Although it will be many years before we see 100% of the emerging specifications implemented in browsers and see a large majority of users upgrade to those browsers, if we embrace the progressive enhancement of content, we’re well on our way to pushing adoption among developers.Progressive EnhancementLearning to produce progressively enhanced content, giving up pixel-perfect rendering in every browser, and embracing graceful degradation in older browsers can free up time to concentrate on other areas of development, such as accessibility and platform-delivery agnosticism. (Image: Unobtrusify.com)If users of your website don’t have JavaScript or CSS enabled, they can still access and enjoy your content in a more limited way, unlike Flash websites, which typically don’t deliver content in the absence of Flash or JavaScript.Designing with progressive enhancement in mind and building from the ground up require designers and developers to think more about the infrastructure of a website, and this typically exposes the kinds of issues that arise when working from the top down (i.e. designing a website and then considering the fall-back).Smart Phone Browsers and Context DeliveryThe mobile Web is still in its infancy and usually an afterthought in the design process, but standard-based designs can degrade as nicely on phones as they do on older desktop browsers. In the absence of the Flash plug-in, a website can still deliver an exceptional experience without much extra effort (which would be cumbersome with a Flash website).Mobile Web browsing is increasing exponentially, and ignoring these users is unwise. Web standards are the only option to deliver richer interactions in mobile browsers.Content ManagementGiving website owners and editors the ability to edit interactive content inside a content management system means not having to coordinate with Flash developers to create and maintain content outside of the system. Many agencies have ditched Flash for WordPress-powered websites that use JavaScript to enhance the experience, allowing for quick and easy updates to portfolios and content.OpennessWeb standards being what they are (i.e. standard agreement on the way code is constructed and served), user agents and scripts from outside a website can be written to access data directly from the HTML. Search engines, microformats, feeds, translation and bookmarklets all work because of the open nature and consistency between the data. (Image: Monica’s Dad)If we want the Web to be truly scalable and interconnected, then microformats and microdata and APIs for content might be just the answer. Otherwise, we’ll remain in the same position we were years ago when websites erected walls around their content.FreedomMany people believe that the technology behind the Internet should be open and not competitive as it has been in the past. People should be free to consume and create information, without being tied down to the kind licensing restrictions and legalities seen with the likes of Flash, Silverlight and other corporately owned technologies.Creating and delivering content with Web standards not only is the best technological solution but supports the freedom of an open Web.Flash Does, And Will Continue To Do, Many Things WellJust because Flash-driven websites are gradually disappearing doesn’t mean that Flash will disappear altogether. Too much content and infrastructure have been set up to magically vanish. Without vast restructuring or realigning of organizations and processes, plenty of Flash developers will continue to be employed, and plenty of Flash advertising will be directed at those ready to ignore it.We owe a lot to Flash for making the Web what it is today, and it deserves that credit. Even though it showed less potential compared to the other plug-in technologies, such as Java applets, that emerged early on, it had a nice balance between seamless delivery to users and ease of development and deployment. Many other Web technologies, such as VRML and SVG, have tried to overcome Flash’s hold on the Web but have continually fallen short.Where would the Internet be without Flash and the innovations it brought?Ease of UseOut of the gate, Flash was intuitive and easy-to-use application for both designers and developers, delivering the simplest of animations, yet able to scale to serve complex applications. (Image: ejk)Because of its ease of use, Flash posed a lower barrier to entry for budding designers and developers. And combined with the suite of applications from Adobe, Flash fits well in the designer’s workflow.ConsistencyYou can’t argue with the fact that for many years Flash has been the only way to deliver rich interaction in a consistent way across a wide range of platforms and browsers. It’s still the only way to deliver video and audio to older browsers, and it will retain its throne for several more years.If you’re a stickler for fonts and demand special ones for your website, then you’ll be saddened by the current state of font support in the browser. This shortcoming will have to be compensated by Flash and swfObject until @font-face and various font formats become more widely supported.Standards Not Quite ThereAs much as Web standards have advanced, we’re often stuck having to support older browsers in which Flash may be the only way to deliver audio, video and complex data-heavy interfaces. Thanks to early adopting Web browser providers, we can start using the HTML5 audio and video tag today. But we still have to plan for a Flash fall-back to deliver media in older browsers.The same could be said for the canvas element for delivering complex visualization, 3-D animation and games. If a browser like IE6 needs to be supported, providing a decent fall-back for the canvas element can be complicated. Flash might just be the best choice for development in such cases. As always, your current and potential audience should determine your direction.Progressively Enhanced Flash and Flash InjectionThe best Flash developers take the same approach as the Web standards crowd, using Flash as a layer to enhance their websites and applications. If that continues, Flash will continue to have a place in delivering a great experience, serving mobile devices and reaching search engines and other user agent technologies. The Flash injection technique is the easiest way to meld the best of both worlds.The Future of FlashAdobe has never been the type of company to let a product stagnate. You can be sure it will keep pushing to get Flash on as many mobile devices as possible. (Image: Robert Weißenberg)With Creative Suite 5, developers will be able to output Flash projects as native iPhone applications using the iPhone Packager. And Flash could soon evolve from its early roots as an animation application to a full-fledged desktop and mobile application development environment with the help of AIR and related advancements (AIR might reach the mobile space pretty quickly).Flash developers will likely be in even greater demand, as the demand to deliver applications consistently between desktop and mobile devices increase—even if they aren’t asked to create run-of-the-mill websites.Flash, HTML, CSS And JavaScript Are Just ToolsWeb standards and Flash (and other plug-in technologies) are simply tools to create content for the Web. Even if Flash is on the decline for websites, Flash developers have no reason to worry about becoming obsolete.Everything that is true for creating rich Internet applications holds true for whatever other tool you use, and transitioning to Web standards development may be easier than you think. (Image: kansas_city_royalty)Flash and Web standards developers have more in common than they don’t. Interface and interaction design, typography, layout, graphic design and object-oriented programming are all still valid and important for both technologies.Developers on both sides of the spectrum struggle with many of the same issues. They both set out to create a great user experience, to design intuitive interactions and to make websites easy for users. All of this is done not by the technology itself but by the people behind it.Standards-Based Websites That ShineHere are some examples of websites that have embraced Web standards and offer rich interaction. If you want to keep up with current trends, many great standards-based websites are featured on showcase websites such as NotCoffee and jQuery Style.Pigeon and Pigeonette This website has a single page that transitions during navigation. Other than being informational, it offers a couple of Flash games.Good Works Media An agency website with an accordion home page and lightbox for the portfolio.Made by Elephant A minimalist portfolio website with a horizontal accordion.Euna (English translation) A single-page website with very “elastic” transitions.Artopod (English translation) A retro design with a fixed-height “window” onto the content.DreamerLines Bold, colorful, full-screen imagery on a single page, with a lightbox portfolio.Serial Cut Mainly full-screen imagery for a portfolio that includes 3-D, graphic design and photography.Alfa-Bank: U2 (English translation) The main layout and background imagery changes during navigation.Kobe A more traditional website but with subtle navigation effects and transitions for imagery and content.Unowhy (English translation) Another accordion website, with smooth content transitions and a lot of “hover” effects.Creative People Very creative imagery, heavy on the AJAX, with many examples of the studio’s work.World of Merix A full-screen draggable map of the agency’s clients, with a smooth lightbox for the content.The Sixty One Very much an application, this streaming music service lets you browse artists and related info. As you listen, information pops up on the band.Banadies Architech A website highlighting the work of an architecture firm. With each click on the navigation, the page elegantly shifts around.Paul J. Noble A dark portfolio website, with an interesting approach to navigation.Adult Swim Shows A recent relaunch, with full-screen images for navigation.Glyde A marketplace website with a simple interface, carousel navigation for products and lightboxes for detailed descriptions.Alex Arts Personal portfolio of Alex Abramov, with full-screen imagery and pop-up content.Rix Personal portfolio of Adam Rix. Full-screen imagery and subtle navigation.Eric Johansson A personal portfolio, with a fun design and scrollable interface.Websites From The (Near) FutureHere are some “experimental” websites that demonstrate what’s becoming possible with Web standards. Be warned: these might work only in the most modern of browsers. To keep up with emerging standards-based websites, check out CanvasDemos and Chrome Experiments.Bespin An online code editor from Mozilla.Sketchpad A simple painting program.JavaScript Wolfenstein 3D, from Nihilogic The classic game created with Web standards.Leaf Transform, from Disegno Cetell A simple falling leaf using the canvas element.Canvas Animation Demo A cartoon animation using the canvas elementCanvas Experiment, from 9elements An audio visualization that reacts to your mouse.Ball Pool A physics-based demo that lets you drag and push around multi-colored circles.Dynamic Content Injection, from Paul Rouget of Mozilla An “almost” augmented reality demo that inject images into a video.Canopy Animation A visualization of a tree that mutates and blooms.Bean Images falling on the screen.3-D Cube Demo A draggable, zoomable 3-D cube of colors.JavaScript Bike A game in which you navigate your motorcycle across a terrain.Comments Visualization A visualization of comments over time by Matt Ryall using Processing.js.HTML vs. Flash ResourcesHere are a few fairly recent articles. Make sure to check out their comments.Flash, iPad, Standards, Ahem, by Jeffrey ZeldmanHTML vs. Flash: Can a Turf War Be Avoided?, by CNetHTML5 vs. Flash, HTML5 Spells Death to Flash?, by Remy SharpFlash Is Dead! Long Live Flash!, by Jeff LamarcheFlash Corporate Websites Are Dead… Oh, and Intros, Too, by XiikIs the Flash-Powered Agency Site Obsolete?, by AdFreakHTML5 and the Future of Flash, by GartnerFlash and Standards: The Cold War of the Web, by Dan Mill of A List ApartMozilla Warns of Flash and Silverlight “Agenda”, by ZDNet(al)© Brad Cooper for Smashing Magazine, 2010. | Permalink | 5 comments | Add to del.icio.us | Digg this | Stumble on StumbleUpon! | Tweet it! | Submit to Reddit | Forum Smashing Magazine Post tags: flash, standards
April 12 2010, 1:58am | Comments »
-
I posted to smashingmagazine.com
Flash vs. Silverlight: What Suits Your Needs Best?
http://feedproxy.google.com/~r/SmashingMagazine/~3/ZMJDk1c-o0g/
With the release of Silverlight 1.0 and its subsequent versions, a debate started among designers and developers regarding choosing between Flash and Silverlight. Silverlight faces difficulties in capturing the market because of the maturity of Flash. However, Silverlight has managed to keep up by including certain features that designers and developers have always wanted to see in Flash, such as search engine optimization. In this article, we will discuss some of the technical differences between Flash and Silverlight to help you choose the technology that best suits your needs.
Animation Flash uses the frame-based animation model. In frame-by-frame animation, we create an object for each frame to produce an animation sequence. For example, if you want to move something across the screen in 3 seconds, calculate how many frames 3 seconds will take, then calculate the matrices required for each frame along the way. Keep in mind that the player won’t actually maintain a frame rate unless you embed a blank audio track; otherwise, 3 seconds might turn out to be 2 or 6 or 5.
Silverlight is based on the WPF animation model, which is time-based instead of frame-based, so you define the start and end conditions, and it figures out how to do it. No need to deal with matrices like with Flash. Also, no need to calculate the positions of objects in various frames.
File Size Flash uses a compressed format, and text and images are embedded in the movie, hence the file size of a Flash component is relatively small.
Silverlight uses XAML for its description language, and it is non-compressed, so the size of a Silverlight component is usually larger.
Scripting ActionScript is used to program Flash objects. ActionScript is an object-oriented language with a full range of controls for designing user interfaces. And it can be integrated with back-end technologies that use other languages and frameworks, such as PHP, ASP and Ruby On Rails. It comes with a huge, powerful class library for developing online browser-hosted applications and stand-alone desktop applications.
For Silverlight scripting, you can choose from among a number of programming languages such as Visual C#.Net and Visual Basic.Net, including client-side scripting with JavaScript. C# and VB.NET can be used to write managed code that runs on and uses all of the enhancements and capabilities of Microsoft’s .NET framework.
Video And Audio Flash supports multiple video formats. The latest codec is very high quality, and the bandwidth usage is nice. There is one problem, though: if you create a tool that outputs Flash content, the formats it supports aren’t really used by anyone else. The original video codec, Sorenson’s proprietary H.263 implementation, is a mutant version of H.263. The compression follows the spec fairly closely, but a bunch of features were left out, and you can’t exactly just go find complete specs on how to build your own encoder.
Silverlight implements the industry-standard VC-1 codec for video, and supports WMV and WMA. Just about everyone already has Windows Movie Maker, but if someone doesn’t, it’s not a big deal because Microsoft makes available a free SDK encoder for producing WMA and WMV. So, not only would you be using formats that people would more likely be able to encode themselves, but Microsoft provides your product with SDKs if you want to do the encoding yourself. Sound Processing ActionScript offers a set of sound classes that can be used to generate and control sound in a movie. You can add sounds from the library while the movie clip is playing and control those sounds. If you do not specify a target when you create a new sound object, there are methods to control sound for the whole movie.
Silverlight doesn’t have the low-level audio APIs you would need to write an audio application in the browser. It doesn’t even support playback of WAV files because .NET has very little audio playback support. Accessibility Flash provides rich accessibility features for those who have hearing and vision problems or who rely on keyboard shortcuts. Providing captions for video solves accessibility challenges for people who are deaf and hard of hearing, but people who are blind or have low vision or other physical disabilities need the video playback controls to be keyboard-accessible and to function properly with assistive technologies such as screen readers and screen magnifiers. Users who rely on keyboard access can use a variety of familiar shortcuts to control video. Buttons such as “Play/Pause,” “Stop,” “Rewind,” “Mute” and “Closed Captions” can be tabbed to and activated with the spacebar. Slider controls such as for volume and playhead position controls can be accessed via the arrow keys, and the “Home” and “End” keys can be used to skip directly to the beginning or end of a range. The volume slider also accepts numeric keys to set playback audio levels in one quick step.
Silverlight 3 is the first browser plug-in to provide access to all system colors, allowing people with partial vision to use familiar operating system controls to make changes, such as switching to high-contrast color schemes for ease of readability. These features are far fewer than those provided by Flash. Platform Compatibility Flash supports Windows Vista/XP/2000, Windows Server 2003/2008, Mac OS 10.1/10.5 (PowerPC), Mac OS 10.1/10.5 (Intel), Linux 5, openSUSE 11, Ubuntu 7.10 or later and Solaris 10. Silverlight supports only Windows Vista/XP/2000, Windows Server 2003/2008, Windows Mobile 6, Mac OS 10.1/10.5 (PowerPC) and Mac OS 10.1/10.5 (Intel). Because Linux and Solaris support is missing, users of those operating systems won’t be able to experience Silverlight on their machines. Text Representation/SEO Flash stores fonts using shape definitions and the player doesn’t understand TTF, hence we cannot separate the text layer from the movie. Typically the text written on a flash component was not SEO friendly however Adobe has made the modifications to Flash so that it will be indexable, and the search engines have begun to index Flash. Currently Google is the only search engine that is noticeably reading Flash files. They have worked closely with Adobe to develop the right toolset for the Googlebot in order to read the files for indexing. Yahoo is working on it and MSN is working with their own format, Silverlight, so they probably won’t be developing the toolset necessary to read Flash files. To read more about how to make Flash SEO friendly, please read the following articles:
How to SEO Flash Google learns to crawl Flash
In Silverlight applications, user interfaces are declared in XAML and programmed using a subset of the .NET Framework. XAML can be used for marking up the vector graphics and animations. Text is deployed on web server as separate entity and can be read and accessed separately. Textual content created with Silverlight is searchable and indexable by search engines as it is not compiled, but represented as text (XAML). Supported Image Formats Flash supports almost all image formats. Silverlight supports only PNG and JPEG file formats. Some other file formats are supported by Silverlight but in a limited way. A full list can be found here. Socket Programming The XMLSocket object implements client sockets that allow computers running the Flash player to communicate with a server computer identified by an IP address or domain name. To use the XMLSocket object, the server computer must run a daemon that understands the protocol used by the XMLSocket object. The protocol is as follows:
XML messages are sent over a full-duplex TCP/IP stream socket connection. Each XML message is a complete XML document, terminated by a zero byte. An unlimited number of XML messages can be sent and received over a single XMLSocket connection.
Silverlight doesn’t support socket programming. Silverlight supports sockets programming through the System.Net.Sockets namespace. Silverlight supports asynchronously sending data back and forth across a socket over ports ranging from 4502 to 4534. Silverlight supports cross-domain socket communications between a Silverlight application and any server, provided that a special security policy file is in place on the server. Webcam Support Flash has webcam and microphone support for live video and audio transmission, and using them is really easy in Flash. It takes only a few lines of ActionScript code to invoke the camera object.
Camera.get Returns a default or specified camera object, or null if the camera is not available.
Camera.setMode Sets aspects of the camera capture mode, including height, width and frames per second.
Camera.setMotionLevel Specifies how much motion is required to invoke Camera.onActivity(true) and how much time should elapse without motion before Camera.onActivity(false) is invoked.
Silverlight doesn’t support webcam or microphone. Deployment The Flash deployment package contains only a single Shockwave (SWF) file, and all images, text and animations are incorporated in this file. Because of the compressed nature of a Flash component, its images and text are not indexed by search engines, and thus not searchable. The deployment process of Silverlight is far more complex; all individual components need to be deployed separately. The following components typically get sent to the client for each Web request of Silverlight:
XML files, DLL files (if necessary), Silverlight.js file, Any other JavaScript file, Resources (images, audio, video).
Read the full documentation on Silverlight deployment. Windows Application A Flash movie can be compiled into a Windows application and run as a standalone EXE file. It can also be played on a desktop that has an appropriate Flash player.
Silverlight doesn’t support playing the movie as a Windows application. Media Streaming Flash provides no such service to host the content and application with them. Thus, building a video website with Flash is not as cost-effective as building one with Silverlight. Microsoft Silverlight Streaming by Windows Live is a companion service for Silverlight that makes it easy for developers and designers to deliver rich media as part of their Silverlight applications. The service allows Web designers and developers to host and stream cross-browser media and interactive applications that run on both Windows and Mac. This service can be combined with Microsoft Expression Studio and other third-party tools to create and develop interactive contents. Silverlight Streaming by Windows Live is currently in beta testing and offers 10 GB of free hosting for rich-media applications.
Conclusion Selecting the right technology for rich Internet applications is often critical, and choosing between Flash and Silverlight depends entirely on your requirements. If you expect that some of your users will be on Linux or Solaris, then you should go with Flash. If you want your website to be indexed by search engines, then Silverlight may be better. Besides, as Doug S. is points out in the comments, it’s worth noticing that a minority of web users actually have a Silverlight plugin installed on their machine, while most users do have Flash-support. The Flash Player 9 and higher support streaming of the H.264 video codec which means anyone with a video program that can output an MP4 can stream to Flash. There are literally hundreds of free apps on Mac, PC and Linux that can do this. It’s also important to mention that the latest version of Flash Player supports 3D rendering while Silverlight does not and that SWF, FLA, FLV, and AS are all open-standard formats, while Silverlight is 100% proprietary. The following table summarizes the features discussed above. Rather than including arrows to indicate whether each platform has a particular feature, we’ve simply marked “better” to show the areas in which each technology beats out the other.
Features Flash Silverlight
Animation
better
File size better
Scripting
better
Video/Audio
better
Sound processing better
Accessibility better
Platform compatibility better
Text representation/SEO
better
Supported image formats better
Socket programming better
Webcam support better
Deployment better
Windows application better
Media streaming
better
Further Resources The following articles are suggested for further reading:
An Overview of Silverlight Silverlight vs. Flash: An Analysis Report Flash vs. Silverlight: Theming and Styling Flash vs. Silverlight: Words and Numbers
About the Author Muhammad Usama Alam is a software engineer and Web developer with over 8 years of experience in designing and developing business solutions for the enterprise. He also blogs at SmashingApps. (al)
© Muhammad Usama Alam for Smashing Magazine, 2009. | Permalink | 52 comments | Add to del.icio.us | Digg this | Stumble on StumbleUpon! | Tweet it! | Submit to Reddit | Forum Smashing Magazine
Post tags: flash, silverlight
- Tags:
- How-To
- flash
- silverlight
May 9 2009, 7:22am | Comments »
1
