Main

September 23, 2009

Advanced Support, from Diverse Audiences

Google did an interesting thing yesterday... they extended the Microsoft Internet Explorer browser to dramatic degree, offering Google's own Chrome browser as an alternative renderer within Internet Explorer's windows. Here's where to download the "early-stage open source plug-in", and many opinions are collected at Techmeme.

I haven't investigated the hack's details, and know nowhere near enough to speculate how the project might evolve. But it's significant, to me, for being the first comprehensive attempt to address bringing the "HTML5" ideas to realworld audiences.

A person's browser becomes their habit -- they're loathe to give up surfing efficiency, not quite willing to risk the expense of exploring a new interface. The global surfing public has diverse choice in browsers, and Microsoft Internet Explorer has proven to be a very strong habit for many.

Google Chrome Frame is (from what I understand) respectful of the current user experience... people don't need to risk their existing browser habits and efficiencies, yet can still explore something new.

I like that. It's like the Adobe Flash Player... a capability which can be invoked across a wide range of HTML engines... an invisible addition, uniting browser choices.


There's a wry aspect to the news too, of course... in 140 characters: "So Google's using a browser plugin, to advance WhatWG's 'HTML5', which tries to do what plugins already do, coz plugins are bad. Is that it?" Seemed to have struck a chord.

There's no need to seek direct conflict. People have been improving browsers for fifteen years, and while growth is slow, it is steady. No need to bash plugins when announcing new feature sets.

Plugins enfranchise minority browsers... the De Facto Web is a more accessible scene than If Plugins Never Were. Objecting "because it is a Plug-in" is as empty a phrase as objecting "because it 'IS' proprietary." No need to be a hater or a killer. It's too weird to hear closedness coming from those evangelizing openness.

So, welcome Google, to the challenge of cross-browser plugins -- improving the capability of diverse consumer installations, by cooperating with their choice of browser configurations. Glad you're here, it's a little less lonely now. ;-)


(Hmm, matter of fact, why isn't there much talk yet about making an Ogg Theora set of plugins? Seems to make sense, so that sites which prefer opensource codecs can accommodate diverse audiences without making content developers sweat the multi-encoding. Here's a request from May 2009: "If you're actually seeking browser support for patent-unencumbered codecs, expanded local storage, drawing engines and such, then why aren't you making plugins for other browsers? If it's because 'plugins are not first-class citizens in the browser', then [please] improve your plugin support and cross-browser homogeneity so that they are." Why shouldn't "open codec" people make cross-browser plugins too?)


Comments are turned off on this entry, due to past history on the topic. If you'd like to do your own blogpost, then including the phrase "Advanced Support, from Diverse Audiences" in the text will let me find it find it fastest in the search engines, thanks!

September 10, 2009

The third screen approaches

The International Broadcasters Convention in Amsterdam this week produced much news relevant to broadcasters, but a different press release showed a step towards something important for developers... hardware Flash support integrated into a "System on a Chip" which manufacturers can use for different types of televisions.

Implications? Here are two paragraphs from the press release by NXP Semiconductors, a chip manufacturer and an Open Screen Project partner:

"NXP Semiconductors today unveiled a new family of highly integrated system-on-chip products enabling a complete range of high-performance solutions for mainstream HD DVRs and set-top box platforms in global satellite, cable and IPTV networks. Representing the world's first fully integrated 45nm set-top box SoC platform incorporating multi-channel broadcast receivers, the NXP PNX847x/8x/9x delivers advanced broadcast decoding, media processing and graphics rendering technologies. This comprehensive feature set provides an optimized system that significantly reduces manufacturer bill-of-materials costs and power consumption and also ensures advanced picture quality for an improved home entertainment experience.

"Based on a powerful 1250DMIPS ARM Cortex-A9 Superscalar applications CPU architecture, the PNX847x/8x/9x delivers advanced system level performance for secure, multi-room DVR video streaming on home networks and for fast execution of Java-based STB middleware engines. . Combined with a rich set of hardware and DSP based content decoding resources, the ARM Cortex-A9 CPU's internet software technology eco-system delivers industry leading performance for user interface environments based on Adobe Flash and web browser technologies. Dedicated hardare for flexible content format decoding along side ARM architecture optimizations for Javascript and Flash components ensures that the PNX847x/8x/9x can deliver the most responsive and robust user experience for on-line VOD and other content delivered via the internet."

Timeline? They expect to provide device manufacturers with "sample quantities in Q4 2009", so we're still a ways off from having a sizable home audience. But groups like Intel, Broadcom, and Sigma Designs are also working on Flash/SoC integration too... seems a strong trend, like how flat screens eventually replaced cathode screens.

It may be too early to plan a business around Social TV, but it's not too early to think of the social applications they'll need. Some TV/connectivity contracts may end up being walled gardens, but the sheer diversity of chip manufacturers implies multiple business models, and I'm betting we'll see open models emerge as well.


Bottom line? We already use workstations, and handhelds, and we're getting closer to sitback screens too. Three screens, all expected to access those services we need, but all three accessing those services in different manners -- work at a workstation, fast facts on the go, and notifications and networking while watching a movie.

(There's a fourth screen too -- ambient display screens accessed by personal mobile, such as interactive wallmaps at a transit station or message-boards at a convention. Flash is already well-established in environmental signage, and the screens themselves are prevalent in many public places these days, but I don't know when we'll make the social jump to accessing and interacting with ambient displays in public places.)

The notebook-only world of applications will still be useful. But just as with desktop publishing, or CD-ROM, or World Wide Web, or RIAs, the newer areas will grow faster than the old. You'll still be able to design for a single screen, but the action will be in serving audiences across the different types of screens they own.

Just one small press release this week, one manufacturer disclosing chip and schedule details for the next generation of TV. But to me it seemed a significant marker. That third screen is finally becoming real.


More on NXP and Flash... more on Open Screen Project.

September 3, 2009

"Papervision3D Essentials"

Realtime 3D on the Web, today, without installing anything new.

There are many people innovating in 3D via Flash today, but I'd like to make sure you're aware of a new book, "Papervision3D Essentials", from Paul Tondeur and Jeff Winder. Amazing new things are possible now, and the book shows you how to achieve it.

For more context, see Ralph Hauwert and Carlos Ulloa, two of the folks contributing to the larger Papervision3D effort.

I'm not usually comfortable plugging a book, or raising one project among others, but what convinced me to join Macromedia was seeing a demo of the "Smart3D" work of Young Harvill, back before VRML... it makes me very happy to see what people are doing with 3D today, so I'd encourage you to check into it too, thanks.

July 23, 2009

Opening the Flash file format

Summary: Ruminations on differing perceptions....

Earlier this week Adobe opened up the Text Layout Framework (advanced typography available within today's browsers via Flash Player 10) and Open Source Media Framework (component-based construction of video interfaces with advanced functionality), to both source-code publishing and community contribution.

The varied reaction was interesting... some thought this was a reaction to Silverlight, others to Ogg Theora or new font-distribution initiatives... other discussions were about the licensing model or other issues.

I was a little bit boggled. ;-) It seemed that, here in the dogdays of summer, there was more reaction to higher-level branding issues than to direct technical issues... more discussion about the relative popularity of video playback formats than of the task of creating more-capable clientside interfaces... more comparison to font-embedding proposals than to radical improvements in on-screen typography. Apples to oranges at the technical level, but a dramatic conflict at the branding level.


It prompted me to go back to the 1998 announcement of how Flash, like HTML, would publish a file format which anyone could implement... the specification was published up on the public website, in pre-license days.

(Trivia note: The early days of "Open Flash" included runtime sourcecode as well as an openly-published file-format specification... people like Olivier Debon used this for third-party players, and I believe this code was eventually reused by projects like GplFlash, gameswf and the Free Software Foundation's Gnash project. But most partners ended up needing one-on-one consultation beyond the generic runtime code, and the later inclusion of third-party audio and video codecs made public distribution of the entire codebase impossible anyway. These days SWF is more like HTML, where anyone can construct tools atop the openly published file format specification.)

Here's an example of how the 1998 news was received, in the netscape.public.mozilla.general newsgroup. It's funny that there's a similar emotional mix today -- some happy and optimistic at new capabilities, some comparing other technical initiatives or proposing further modularization of browsers, others just enjoying detailed objections and counter-objections and counter-counter-objections to previous sentences. ;-)

I particularly like the comment from Marc Byrd, who was Plugin Chief at Netscape at the time: "We also need to make plugins 'first class' from the feature and support point
of view. Developers have to be confident that the plugin solution is every
bit as robust, performant, and feature-capable as would be glomming the
feature onto the monolith."
(Too bad we ended up in "plugin prison" a decade later, huh? ;-)

(The "PGML" in some of those comparisons is Adobe's Precision Graphics Markup Language, submitted to the W3C and eventually a foundation of the SVG specifications. [press release, news account])

There were other conversations in the Flasher mailing list at the time, but these were talking about the new Flash 3 and Macromedia Generator announcements as well... lots of fun browsing, but not the same overall flavor as the Mozilla discussion. Slashdot was pretty quiet on the SWF-opening of April 1998, although it did come up in discussion during "The Rise of SVG" years later.

Bottom line: Flash was told it was no good unless it was opened... until it did so... after which it was told it was still no good. ;-)


There's been a ton of "open" announcements since then, whether governance of PDF by ISO or Flex's development approach or Tamarin donations or RTMP and other specs or whatever, but the dynamics of online debate are similar today to what they were ten years ago. The positions don't change, just the rationales.

Matt Asay described a similar dynamic in an CNET article this week, asking "Why would anyone expect Microsoft and its ilk to continue to court a community that ridicules and second-guesses its every attempt at perestroika? I know from conversations with several companies that they're actually scared to engage the open-source community because the responses have been so intemperate and ideological."

Best reply I've got comes from Adobe co-founder Charles Geschke, when describing PostScript's early challenges: "If you really wanted to make it a standard -- and our goal from the beginning was to have it be a universal standard -- you have to publish. You just have no choice. You're taking the risk that someone will do a better job of implementing it. We had the self confidence that we would always have the best implementation, and that has turned out to be true."

No reason to change that just because people later try to co-opt the term. There's a need to improve the world's communicative capabilities, and weblog debates are just one of the many elements shaping how that goal is achieved.

July 21, 2009

Possible in Today's Web

Without installing anything new, 90% of today's desktop browsers can now do pretty much anything you can imagine with text layout. The same typographic capabilities will become possible in next year's generation of mobile devices, too.

Tom Barclay, Flash product manager: "Text Layout Framework is an extensible ActionScript library that runs on the new text engine in Flash Player 10 and AIR 1.5. Leveraging the publishing expertise of the Adobe InDesign team, Text Layout Framework offers a level of typographic control and sophistication that goes well beyond what can be done with HTML and CSS."

Features include right-to-left scripts (Hebrew, Arabic, Urdu, more)... vertical scripts (Japanese, Chinese)... font-embedding of world scripts... print-worthy typography: "kerning, ligatures, typographic case, digit case (oldstyle/lining figures), digit width (proportional/tabular figures)"... graphics nestled within live paragraphs... multi-column flow of text, arbitrary rotation, discretionary hyphenation, many other typographic necessities... text is described as external XML files. Rendered by Adobe Flash Player 10 and above.

Right now it's just a beta API within the Flex 4 Framework, with an interface like this. One application of this API to content creation is in a Flash CS4 component.

There's lots of room to grow -- lots of other ways people will want to access precise layout. It's easy to create a SWF, many authoring interfaces are possible.

Projects based on this may help with standard markup languages such as MathML and OpenMath... maybe even markup languages like MusicXML, rendering predictably across browsers, without installing anything new. Sort of a PostScript for the Web.

Resources: Release Notes... wiki... Veronique Brossier.... Mihai Corlan... info on Flex governance... weblog.

This capability is just sitting out there, in the world's browsers, today. It's waiting... waiting for us to learn how to use it.

June 9, 2009

More like nine months to "Upgrade the Web"

Summary: It may take 35 days to upgrade Firefox's minority share, but to "Upgrade the Web" in an open way, across all browser choices, takes more like nine months.

Flash's success paints a target on its back. A few years ago Microsoft started supporting the idea of rich-media plugins, and this year Apple & Google are trying to get "standards" blessing of their own controlled runtimes, which in some cases specifically exclude cross-browser renderers. It's great to have them join in, but many of the marketing claims are recycled from Macromedia.

Last year at MAX Kevin Lynch spoke of how Adobe Flash Player is the only technology which can essentially "upgrade the web" in under a year:

So on the client, of course we’ve been doing some really great innovation with Flash Player 10. It’s already been released. It’s being adopted broadly and it’s reaching, already with Flash Player, pretty much all the computers on the Web today. The situation we’re in is pretty amazing because we can actually update that software now in less than a year, in about nine months, we can actually upgrade the capabilites on the Web and induce new capabilities for everyone who are using these applications interacting with content. What this means for you is that we can innovate at a much faster rate. We can deploy new technologies, like Pixel Bender or new 3D effects or a faster scripting engine. We can get that out to everyone on the Web in a consistent way. And you can start taking advantage of it very quickly."

You've seen this "Upgrading the Web" theme in presentations since then. The wide and diverse ecology around SWF creates a cycle where the entire world upgrades their machines quickly... 75% consumer support in five months, and up towards the "ubiquity" area of 90% consumer support in nine. "Upgrading the Web" is what happens with each new Flash generation.

Last year's Firefox launch had the "Guinness Records for Most Downloads in 24 hours!" campaign (ignoring how daily downloads of Adobe Flash Player trump that for the minority browser), and this year the marketing slogan seems to be "Upgrading the Web in 35 Days!" [Tristan Nitot, Chris Blizzard, more undoubtedly to come].

The difference is, of course, that most people use Microsoft browsers... about twice as many as all other browser brands combined. Firefox reaches only a small minority of people on the web... about as many as still use IE6, released back in 2001. But Flash reaches nearly everyone.

Firefox does achieve a rapid upgrade rate among its base, because it "calls home" every day. Flash Player is set by default to check for updates only once a month. They get away with it; we can't.

Flash's success paints a target on its back. Flash breaks silos, and this threatens entrenched interests. Copying features and going for low-hanging fruit makes sense. But swiping slogans like "Most Downloaded Software!" or "Upgrade the Web!" seems as weird as going on about Rich Interactive Applications.

Nothing wrong with being inspired by Flash, but it's a little strange to be so bipolar about it.

June 1, 2009

Flash's Grand Unification


Theme: Technologies which are useful and lasting do not always grow in a straight line. A useful technology will often fragment to explore alternative niches. But a lasting technology will then find ways to unite that fragmentation, creating a larger, more interesting technology ecosystem.


A subtle aspect to this week's milestone: With Flash Catalyst, Flash Builder, Flex Framework and FXG, there's now a coherent creation process uniting the creative design worlds and the coding development worlds. Flex had jumped out from Flash into another environment, and the larger Flash now unites both worlds.

It made sense for Flex to branch out on its own a few years ago. That was when the "Rich Internet Application" meme was new, and the only paying projects came from enterprise. And coders didn't want to look at timelines. Flex found a way to efficiently create data-driven interfaces and became very successful.

Now there's a proven coding workflow which works naturally with standard visual-creative workflows. The fork merges back into the trunk. The fragmentation is united. It's larger than before.

You can see it in the name. I used to ask "Why do you call them 'Flex Apps', when they run in the Flash Player?" I was told it was because coders shunned timelines, and there was prejudice against Flash as being "only for cartoons". A new name helped in exploring a new niche.

But Flash and Flex have both been such a success, in so many ways, that that rationale no longer holds. Today it's easier and more meaningful to say "It's all Flash. Just Flash. That's what it is."


The developmental niches are being united... the names are being united... but there's a third and extremely important unification going on now as well.

Last year at MAX you heard how the "Flash Lite" branch would be merged into the desktop Player. A single runtime codebase, supported within multiple device form-factors. That work is proceeding now.

Forking to Flash Lite made sense. No way a handheld five years ago approached desktop capability. Code from older runtimes kept pace with chip growth. Let us explore new ecologies, learn firsthand what was needed.

Now, though, the high end of mobiles is approaching a laptop's capabilities. Those fragmented cross-device runtimes need to be united. The same development process must support any screen.

Big engineering challenge. But it'll happen. I was in a "town hall" session with Adobe CEO Shantanu Narayen today, and he repeated that this is the single top priority at Adobe now. We need to make it easy to publish to any screen. A common Flash Player across desktops, pockets and walls -- that's the goal. Remove the fragmentation, unite the silos.


Flex split out from Flash, grew large, and now both are united with the Adobe toolset.

Mobile development split out from desktop long ago, and now the fork is merged back into the trunk, picking up the TV set in the process.

And the names have been united too. Seems fitting. It's all Flash.

May 12, 2009

Who's Your Audience?

Striking graphics at Ars Technica... go take a peek. By these piecharts, two-thirds of The Web uses Internet Explorer, but one-half of people visiting ArsTechnica.com are using Firefox.

The numbers may not mean much (the top graphic didn't even cite its source, much less its methodology!), but I think most people would agree on the trend -- delivering as Ajax really means "Let's Use Microsoft Runtimes!", and some sites may have significant audiences who use other browsers.

Should ArsTechnica.com ignore visitors using Internet Explorer? That's their decision to make. But if they did, the IE-using 20% of their audience would be ghettoized like a mainstream website which barred Firefox users. Not pretty, not kind.

HTML design, if it's not elitist, needs to work atop the various HTML browser brands that people on the Internet are currently using. The functionality available is the functionality these browsers all share.

But almost all these different browser brands and versions already have Adobe Flash Player 10 installed. That's a lot more functionality, right there at your fingertips.

The minor fluctuations in "browser market share" mean a lot less, in the long run, than what you can do in those browsers, today.

January 28, 2009

Platform adoption, Jan09

Big news out of MAX Japan today... Player 10 at 55% consumer support eight weeks after release... AIR with a hundred million successful installations... 1,000,000+ AIR SDK downloads.

That Player info is great, although dated... Player 10 was released Oct 15, and this consumer testing was done early-to-mid-December, about 8 weeks in. Now we're in the last week of January, about 15 weeks in. Looks to be on-track to 80% consumer-support in the very near future. Amazing. Use these features now.

(These quarterly consumer audits have been going on for years, consistent methodology, one of the best measures. Your particular audience may differ from overall consumer norms, but the rates-of-change should be similar.)

AIR may be the more significant surprise. People are familiar with updating plugins & browsers. AIR is a different type of thing, a desktop shell for web apps. When people first see it, they have to stop, and think about those strange black dialogs. And yet it had -- not only a hundred million downloads -- but a hundred million separate experiences when it fully downloaded, then successfully installed, and then said "hello i'm here!" to the Adobe cloud. Some are undoubtedly multiple installations on the same machine -- we don't yet know unique users. But still, a hundred million successful installations, of something bizarrely new, all in its first year... that's also amazing. (About one hundred million people visit YouTube each month.)

Million SDK downloads? There's a lot of AJAX developers out there, a lot of Flash developers out there, a lot of other developers who find Flex easy to approach. Makes sense. A lot of people have been exposed to these possibilities; let's see what each person decides to do.

It's too early to tell now, but this may be the point to which we look back and say "Adobe did establish the Flash Platform, and those were the early days of AIR." We don't yet know the end of the story, but the signs out there seem to be exceptionally positive.

The greater context: We're at a period of economic contraction. People are looking hard at what works. And meanwhile consumers are responding very, very strongly to richer experiences, consistent across environments. The capabilities are advancing very quickly. It's a good time to make a bet.

And how did it happen? There's been some great engineering, but it would not have happened with the wide ecosystem of support. A lot of people make their own best choices, and it works out to the good of everyone. It's a group effort.

Related: The thing about Player 10, Oct 2008.

December 1, 2008

"Conservative in what you send..."

Robert Hansen has a paper up at SecTheory... I heard about it from Dan Goodin at The Register, as "Study spanks Adobe Flash for abuses of power". Robert attempted to measure electrical power consumption of different types of webpages, and found that ad-blocking software reduced battery drain by approximately 25% on his test machine.

(The paper is lengthy, but I don't think he described how he configured his Adblock Plus, which would have a significant impact on what the final numbers might actually mean.)

It's certainly possible that ads delivered as SWF could be piggy. Some browsers slow down CPU access by background tabs, in part because of such concerns. Adobe hasn't installed framerate chokes for the content you make, and advertising publishers have general guidelines for not being piggy. But considering that many popular webpages never stop loading due to the multitude of third-party content requests, it's definitely possible that some of the advertising on those pages could be increasing your CPU's general load to measurable degree.

I don't know how to entice people to follow Postel's Law, whether in SWF or in text... if you've got reactions, thoughts, I'd appreciate hearing them, thanks.

October 22, 2008

CNN video FAQ

Eagle-eyed news hounds may have noticed that CNN is now starting to offer a friendlier video experience, taking advantage of existing cross-OS cross-browser capabilities. That's their story to break, though, and I'd rather not say more about it here. But I do want to point out the address to the CNN video FAQ, which is the source document on the changes. There's also a peer-to-peer component named "Octoshape", which has its own FAQ linked at that address. I'll add more links to this post as they arrive. But if you happen to see anyone confused about the changes, could you drop a note in comments here, so we can make sure they're taken care of? Thanks, and have fun. ;-)

October 21, 2008

Keeping third-party SWFfers happy

Flash Player 10 had to tighten some security policies, and most developers are already up on the news... guidance started in 2007, and DevNet and Labs updated their info with each release version, and staffers like Lee Brimelow have held extended conversations on the subject. People who create SWF seem to have already adapted to today's darker security environment.

But recently I've been seeing an impact on people who use SWF, but don't write it themselves... a few weeks ago Ajaxian reported on Ajax sites which rely on SWF for multi-file upload and who were surprised by the explicit user permission now required... this morning Allen Stern at CenterNetworks.com showed the effect at Wordpress, Vimeo, and Flickr.

People who create SWF are in-the-loop, but today I realized there's a larger group of people who employ SWF who aren't necessarily up on its use. We need to keep them happy. But I'm not sure how to reach them.

What I'm seeking from you (if you've got the time and info ;-) is any of a couple of things: (a) Do you know of other non-developers who are getting similar unwanted surprises? (b) Have you seen other consumer sticking-points besides programmatic file uploads? (c) Got ideas on how I might better track or reach such audiences? I realize these are vague questions, but after seeing Allen's post this morning I realized we have to get the word out to a larger group of people. Thanks in advance if you've got advice for me, no worries if you don't, ciao.

October 16, 2008

Player 10 links

Want to find info fast? Check this overview of adobe.com resources, from Emmy Huang on the Player team. Lists release notes, bugbase, technotes, debug players, lots more. Good to bookmark, 'cause you'll be in a hurry when you want it.

(I ran this on Twitter yesterday, as fast news, but didn't see it mentioned much in weblogs today... it's a very useful page, and is worthy of your attention.)