Adobe, We Need to Talk
Posted on Apr 17, 2010 at 9:21 pm
Last updated Apr 17, 2010 at 9:30 pm
I recently noticed that Adobe has updated its Flex SDK to version 4. Great, right? Turns out, we lost some features that I rather enjoyed. Like SVG embedding.
Now, maybe I'm being hasty, maybe the documentation just hasn't been updated yet, but despite assurances that I can embed .svg files, I keep getting this when I try to compile:
Warning: The use of SVG has been depreciated since Flex 4.
Please use Flash XML Graphics (FXG).
Shall we take a moment to talk about Adobe's history with internet standards? Let's.
Blatant Disregard
This may be generally unknown information for those not in the world of web development and design, but we have a governing body, for lack of a better term, deciding how the technology that drives the internet should work. It is called the
World Wide Web Consortium, or the W3C for short. They are the ones that decide what things like HTML5 and CSS3 actually are, and what should and should not be supported in these technologies. The primary reason IE works so differently in comparison to
every other browser is because Microsoft tends to ignore the specifications dictated by the W3C.
It turns out Adobe likes to do this too, or at the very least the Flash team does.
Take, for example, basic HTML. Flash claims to support a certain degree of HTML formatting in their text fields. Now, I understand they need to keep what is and is not allowed pared down. We don't need the Flash Player to actually be a browser
inside a browser. However, a great many years ago, the W3C decided that HTML should be descriptive of the content it presents, and that CSS should handle how it looks. Consequently, among other things, the b and i tags (bold and italics, respectively) were removed, and the strong and em tags (strong emphasis and regular emphasis, respectively) were introduced. In terms of default display, strong content is rendered in bold, em content is italicized. Did the Flash Player support the change?
Nope.
So if you are trying to provide dynamic content for your Flash app
and provide that same content as a website in case your visitor doesn't have Flash installed *ahem*Apple iProduct*ahem* you as a developer have two options: have broken code in one of your two views, or write in your own code to support the current standard and the ancient standard. I was just going to go with "old" but really, those tags have been depreciated for over 10 years. They still work, but that is only because the browser companies' marketing divisions want to claim they support all those websites from the early 90s.
The only reason I can think of for Flash not keeping up with the times is because they, like Microsoft, say things like "Haha, okay, but seriously, we're the only game in town, people will conform to
us." Microsoft is learning. They aren't quite there yet, but their recent stream of updates to Internet Explorer suggest that they are realizing standards help everyone.
But Flex used to support SVG, right?
Yeah. So I have to wonder why the change? I would love to say this is collateral damage being done by the recent Apple vs. Adobe internet war, but the FXG format has been publicly in the works since 2008. Not that I'd heard about it until just now, mind, but apparently Apple vs. Adobe is not to blame.
Adobe
claims in its spec sheet that
"When initial work on an XML-based graphics interchange format began, the natural first thought was to use SVG. However, there are key differences between SVG and Flash Player's graphics capabilities. These include core differences in SVG and Flash's rendering model with regards to filters, transforms and text. Additionally, the interchange format needed to be able to support future Flash Player features, which would not necessarily map to SVG features. As such, the decision was made to go with a new interchange format, FXG, instead of having a non-standard implementation of SVG."
Dear Adobe,
If your implementation of a W3C-supported standard is not compliant with the standard,
fix your implementation. What graphics design product exports to .fxg? I have yet to see one, even from you. And assuming your Creative Suite 5
does create .fxg files, what if I wanted to use a different program, like
Inkscape? Honestly, who is going to support your little one-use format when the rest of the internet is picking up .svg? If you're serious about the Flex SDK being truly open, you will stop this silly proprietary game and use the open standards that everyone else complies to.
No love,
Tomio
P.S. If SVG supports features Flash Player doesn't, you might want to look into supporting those features, otherwise you're giving a huge leg up on the HTML5 argument.
Comments