In this article from Google Webmaster Tools is presented the way Google manages Rich Media Files and Formats.
Some important points:
- Google can index text in any flash content
- sIFR is indexed as text by Google
- Google is continually working to improve our indexing of Flash files
- Google still have problems accessing the content of other rich media formats such as Silverlight
- Google cannot crawl video files
- iFrames may not be indexed
After reading the article the main idea taken is that Flash has a big advantage against other rich media platforms. That why Flash vs Silverlight is 1-0… or should it be a bigger score?. Silverlight is a direct competitor of Flash platform but as seen in the article at this moment it has a big drawback: it’s content is not indexed.
Google is doing a good job and as far as I remember Google is helped by Adobe in indexing Flash content (Ichabod headless flash player). So Flash platform has everything to gain.
Related content regarding Adobe’s Ichabod:
http://www.readwriteweb.com/archives/adobe_ichabod_flash_ajax.php
http://www.infoworld.com/t/data-management/update-adobes-ichabod-boosts-flash-search-544
Tags: Flash, RIA, rich media files, silverlight
This post was written by Andrei Ionescu
Views: 1546










IMHO Flash’s current market share is THE ONLY advantage Flash has over Silverlight. Anything else is just a result of that. Technically Flash is a pain. I’ve been working with Flash/Flex for just over a year now and I’m about to change to a job where I can do silverlight stuff.
Flash has more than the market share. I’m a web developer that have been working with Flash Platform for over 5 years. In my humble opinion one year of work with a technology is not enough to get a taste of it. For me Flash Platform is a real help to publish rich media. I’m sure that you will find more disadvantages in Silverlight that you think now. Anyway I wish you success in developing rich media using Silverlight. In the future, having Silverlight as a powerful competitor to Flash Platform will bring us – developers – lot of gain.
I probably will see more disadvantages in Silverlight, yes. But I’m interested to hear what other advantages you think Flash Player has. Integration with other Adobe products is one I could come up with after my previous post (and my morning coffee).
But I wish they would put some more effort on fixing the compilers, the IDE and the runtime before integrating with other products. Having a nice IDE like Visual Studio in a competing product will most certainly push Adobe in the right direction.
The authoring tools for Flash Platform are various which is a big advantage. Not only Adobe has IDEs for Flash Platform. There are other companies that had built tools for flash authoring. So if you don’t like Adobe’s Flash based products you can choose other IDE.
Also Flash Builder, and the old Flex Builder, are made on Eclipse which is a great IDE. Same with Flash Catalyst. I don’t know what problem you had but all problems I had before in my years of web development I managed to overcome in a way or other.
And if you need a special feature you can submit feature requests to Adobe which will be voted or not by users & developers. This way the features find their ways into the Adobe’s products.
And a plus (for Microsoft products users) is that there is a Flex/Flash plugin/module for Visual Studio. So I think the things are moving in a good way.
Also I’m interested to hear from you what problem you had with the compilers and the IDE if you have time.
Read this article and the comments to see the alternative IDEs to Flash Studio and Flash Builder: http://stackoverflow.com/questions/57882/ide-for-developping-in-actionscript-flash-any-suggestions
Here are some points off the top of my head:
Problems with Flex Builder & mxmlc:
* Slow compiler. Seriously. Dead slow. I often loose track of what I’m doing while the compiler compiles, so when my application finally launches I’ve forgotten what I was supposed to debug.
* Slow refactoring methods (such as rename class/method/property) (frequent so called “one time operations” to index workspace)
* Oddities such as “forgetting” the flash.* APIs (and removing references to classes in it)
* Cannot set breakpoints in MXML until compiled, perhaps due to Flex Builder not knowing which lines contains AS code until after compilation.
* Had for a long time a problem where I needed to restart the debugging session up to three times before the debugger actually connected to the IDE. This problem is gone, but no idea what caused it and how it got fixed.
* Profiler crashes with an error in some Profiler.as file.
* Flex builder (Java really) crashes after trying to launch a flex app. Perhaps due to memory leak.
* Compiler errors that are not helping. When a file is removed but still referenced in .flexLibProperties for example, I’ll get an error that the class is missing – but no indication to where it is referenced.
* Sometimes the type system in AS does not work – when the public interface of a class changes code accessing the old interface that now should get compilation errors gets compiled and I get runtime errors – if I ‘clean’ the project I’ll get the compiler errors.
* Missing compiler errors in MXML. When using special characters inside event handlers, when trying to write a string containing ]]> inside etc.
* Warnings that are more damaging than helping: I declare a variable twice such as having two for loops with an index variable ‘var i:int’ in the same method, I’ll get a duplicate variable warning. I try to get rid of it by renaming the second of them to ‘j’ – but since ‘i’ is still available in the second loop the compiler will not catch any errors I make when renaming.
* A warning for using a variable before it is declared would be nice. ‘var x = y+1; var y=2;’
* Code completion list closes unexpectedly
* Missing code completion for other things than identifiers (overr -> override).
* Warnings that get duplicated and doesn’t disappear.
* Certain operations aren’t canceled when hitting ‘Cancel’ (they are not performed, but takes the same amount of time as performing them).
Problems with Flash Player:
* Slow floating point (Number) operations.
* Slow integer operations too, sometimes faster to use Number.
* No 32-bit floating point type. No 64-bit (long) integers.
* Integer to Number ‘promotion’. Sometimes I want to use certain mathematical properties of int and uint – don’t convert my data to other types.
* Memory leaks causes player and browser to crash (Microsoft C++ Runtime error something).
* No explicit threading (in this day and age!!)
* HTTPRequest can only handle HTTP 400 and HTTP 500 answers (harder to implement REST-stuff)
* Not a lot of programming languages to choose from. I’ve actually come to like ActionScript, but different languages are good at different things. Since I work on visualizations I would like to have a functional language for certain operations.
While the documentation of Flash and Flex builder APIs is quite good, I’m having trouble finding a forum where experienced programmers (in other languages than PHP, ActionScript and JavaScript) can discuss programming problems and solutions. Whenever I stumble upon a problem in ActionScript or MXML and turn to google for help, most of the time I only find information meant for designers or coding-only-when-I-have-to people.
Many languages are targeting the .NET runtime today; the Microsoft developed C#, F# and Visual Basic, as well as third party languages Boo, IronPython and Nemerle to name a few.
Markus, thanks for your comment. You really did a great job putting all this complaints together. I’ll pass them further to people at Adobe and they will see what is imperious necessary to be implemented ASAP, what would be nice, and which of the complaints can be fixed or can live with using workarounds.
Regarding the Flash Player problems some of them are because Flash Player works in the browser and in a virtual machine. You may find the same problems on Silverlight too. Regarding the fact that is hard to find experienced programmers is because the technology is just getting mature. You may find even fewer advanced Silverlight programmers (although it uses C#) for advanced inner things, specifically for Silverlight VM and other related stuff.
Also in Actionscript you can cast types. In the future the Flash Player will use the graphical card processor so it will not be so slow.
From what I can say is that you used before Microsoft development tools and being used with them it is hard to get used to Adobe’s development tools. The same is for me. If I would start using Microsoft Visual Studio I’m sure I’ll miss lots of things from Flash/Flex Builder or Flash Studio.
There are lots of advantages of Flash over Silverlight but everything reduces to our experience with the technology and with the tools available to author it. At this moment Flash Platform is better than Silverlight and we can find numerous article on this even though Microsoft has a longer experience in the programming languages industry. If you refer only to Flex you may be right but the Flash Platform is a lot better. The tools (Flex SDK, Flash Builder, Flash Studio, Flash Catalyst) will grow and become mature and now Flash Builder 4 is a way better than Flex Builder 3. Things are improving and the interaction with Adobe evangelists is great they are all time ready to help.
Having Flash and Silverlight in a competition is a great win for us developers. Products will improve and will become better and cheaper. And we will have two technologies to choose from.
Read these articles for another opinion on Flash vs Silverlight:
http://www.connectedinternet.co.uk/2009/08/20/10-reasons-why-flash-is-better-than-silverlight/
http://forums.silverlight.net/forums/t/3015.aspx
http://www.craftymind.com/guimark/
http://metalinkltd.com/?p=93#results
IMO a significant share of the debate is to be accounted for what developers are (not) prepared to accept in terms of development routines, language specifics and so on. In the real world it all boils down to one thing, which is the developer’s background. Bigger mindshare, market penetration – I mean, this doesn’t exactly play so major a role unless you have considered (a) the project at hand and (b) the people involved.