Posts in Category "Uncategorized"

“… free as in ‘Freedom’….”

A consequence of diversity, as described by Matt Asay today:


The problem I have with free-software advocates like Richard Stallman is that they think freedom is the primary reason to use open-source software. It’s not. Utility is.

After all, we’re not talking about essential human rights here. We’re talking about getting work done with software.

Over the past 10 years I and the companies with which I’ve worked have sold hundreds of millions of dollars in open-source software/services. Not once have I been asked about “freedom.” For that matter, I’ve also never heard a customer gush about reduced vendor lock-in.

To the contrary, I’ve met with CIOs and CTOs who have explicitly told me that this isn’t a top consideration for them. Just last week, in fact, I moderated a panel at LinuxCon in which I asked senior IT executives from leading media companies if vendor lock-in is a primary motivation for using open source. Nope.

They have work to do. They want software that helps them get their work done and gets out of the way. That’s what open source does.

(Go to the original article to get the links Matt uses to document this section.)

The above will be spun by some as “Business is Anti-Freedom”, but I think a more apt description is “Different strokes for different folks”. People are seeking solutions to their own problems… their judgments may be very different than your own.

It’s finding ways to accommodate all those differences — developing multiple options to satisfy diverse needs — that’s a trickier problem than assuming everyone shares the same values.

Animation for accessibility

Google Street View has a wonderful little animation which shows how the service works, from capture, to scan, to detail-removal.

Looking at it, you wouldn’t know it was made by the Google Maps team in Japan, which has had particular privacy concerns with the service. Aside from the credits there is no Japanese, no English, no Russian or Romanian — no spoken language, just sequential visual imagery.

Yet the meaning of the message comes across, without text. More importantly, the affective content of the message comes across too — it’s cute, compelling, leaves you with a good feeling.

We’d still need a textual representation, for people with low visual acuity or who use devices which don’t have adequate display screens… it’s hard to get away from the need for multiple representations of a message.

But this Google Street View animation may be one of the clearest examples of how motion graphics assist understanding, in a way that text alone cannot. We humans do learn visually. That’s why animation aids access.

[Thanks to Veronique Brossier for the link!]

Under-promise and over-deliver

The Firefox 3.5 roadshow is producing some remarkable press… reporters so far seem credulous and gee-whiz, while comments from readers usually bring things back to earth. Raising expectations which cannot be satisfied makes for a high buzz level, yet risks sustainability.

Here’s the intro to a demo after-report at The Standard:

Firefox 3.5, which is due out in final release at the end of the month, will allow people to edit digital images from within the browser without need for a third-party application, thanks to a new Javascript engine Mozilla has built for the browser, said Mike Beltzner, director of Firefox at Mozilla, during an interview in New York.

The software also will include the ability to run videos directly in the browser without the need for a third-party viewer or player, and will allow other elements of a Web page to interact with that video content, he said.

That part’s pretty much okay — it’s just a reporter’s paraphrase and summary — but think of the effect of those words on a reader, particularly the “run videos directly” part, and what people are likely to expect as a result.

More troublesome paraphrases start to appear a little further in:

The new Javascript engine, called TraceMonkey, is twice as fast as the one in Firefox 3.0, and allows for image editing from within the browser without need for software such as Adobe Photoshop, Beltzner said. Javascript is a standard scripting language for Web applications.

“We can do this just as well with an online Web application as well as you could on a local application,” he said, thanks to TraceMonkey.

It’s hard to tell Mike’s intent without the full quote context, but direct comparisons to Adobe Photoshop CS4 can set naive readers’ expectations ‘way too high. Perhaps FF3.5 comparisons to existing in-browser image-editing of the last few years (photoshop.com, Aviary, Picnik, Fotoflexer etc) risk underwhelming the reporter, but “do it just as well as desktop” seems counterproductive.

(And, of course, you’re welcome for the Adobe-donated nanojit which keeps your JavaScript implementation competitive with Google and Apple. It would be good to lay grounds for similar cooperation in the future.)

“Video written for the Ogg codec can be played within Firefox 3.5 without a separate media player, Beltzner said. Moreover, to develop video to be played within the browser, developers don’t have to license proprietary codecs from the vendors that own them, as they do with Flash Player or other proprietary-player content, Beltzner said.”

That first phrase, qualifying video as Ogg Theora video, is an important one. Up to that point the impression given was that any video on today’s Web would be viewable… even if a naive Firefox user had Adobe Flash Player installed, they’d still run across the occasional .WMV, .MOV or .RM file.

But that key constraint is underplayed. If you’re on the Web, and want to watch video, Firefox 3.5 will not do it. Firefox needs Flash in order to view the real Web.

The second part would contain some objectionable disinfo, were it a straight quote, but right now it’s still possible to ascribe it to a transcription error. The only people who would license modern high-performance codecs would be those creating their own video export tools. For everyone else, codec licensing is included in the cost of whichever video editor they use.

Firefox 3.5 also allows developers to build applications for other parts of a Web page that can interact with the video playing, which has potential for enhancing next-generation Web-based applications such as advertising campaigns as well as enterprise applications, he said.

Currently, video technology is coded separately from other Web-site assets and there is no interaction between them, he added. For example, if someone is watching a television program on Hulu.com that is written to the Ogg codec and likes a shirt a character is wearing, Firefox 3.5 will allow that person to click on the shirt and see links to sites where it can be purchased, Beltzner said.

People who actually work with web video know this as errant speech, embarrassing to the speaker. I like the part about Hulu using Theora though, that’s cute.

Any time you put work and attention into something, it’s natural to want to shout it out to the world. It’s easy for me to forgive marketing flacks who spit out straight misinfo, because I know that savvy readers will spot it and question their whole rap.

But what’s a little more dangerous is to set consumer expectations too high. This can produce ugly scenes when the truth is learned.

The relevant marketing phrase is “under-promise and over-deliver” — peer-to-peer recommendations take longer to form, but are stronger than setting very high expectations which cannot be fulfilled.

… and just imagine the marketing claims they could have made, had they devoted that engineering time to improving browser/plugin cooperation….

Linux Journal “Readers Choice”: AIR

Lots of folks have already noticed this, but I liked the news for a particular reason… Adobe AIR won the Linux Journal’s Readers’ Choice award for “Favorite Platform for Developing Rich Internet Apps” this year.

AIR makes it easy for native desktop applications to work on various flavors of Windows, Macintosh, and Linux. It reduces discrimination based on OS choice, imposes no requirements on browser choice.

But AIR doesn’t just enfranchise consumers on Linux — it also enables creators on Linux. It’s pretty cool that a developer who personally prefers Linux can deliver to Apple systems or to Microsoft systems too.

It shouldn’t matter what operating system you choose, what browser you choose, what ad-network or remote services you choose, or (in the pipeline) what device form-factor you choose. Those walls need to keep tumbling down.

Thanks to the readers of Linux Journal for understanding this, and acknowledging the new AIR initiative with this award!

Native file formats vs data exchange formats

Last week there was some attention paid to a years-old code fragment on Google Code, where someone got cranky when trying to write a .PSD importer. Since then it has moved up the blogosphere feeding chain, and today it broke into The Register.

The Photoshop native file format was not created as a data exchange format. It was a way for Photoshop itself to store its authoring metadata.

That’s why you don’t see the PSD spec among Photoshop Developer Resources, and why the original writer had to formally apply for a copy. It’s a format that was designed to do a particular job, not one that was intended as a general import format that anyone could use with relative ease.

If you’re trying to use a native file format as a data exchange format, you’re swimming upstream. It’s possible, but the format was not designed for that purpose.

Now, the larger issues:

The Web earns advertising dollars from the titillation of crankiness. It’s difficult to otherwise rationalize why this old code fragment would be newsworthy. I can accept this, but think it’s sort of a shame that this day each of us were given was not used for better purposes. What’s really important?

Secondly, the use of classic four-letter words is lame. (I’m looking at you, Twitter. ;-) People use such words to shock, but George Carlin’s “Seven Forbidden Words” have merely shifted membership over the past two decades… if you want to really be a rebel, then challenge your own in-group’s stereotypes and forbidden thoughts, instead of cementing your little in-group in opposition to “those other” in-groups. Think of what you may not say without serious repercussion before reveling in their sanctioned rebellion. Read Martin Fowler’s wrapup of how the greater sin may be in assuming “that won’t offend anyone”. Open up.

Anyway, yes, .PSD is harder to read than TIFF or XMP or PDF or the rest. If someone rants about not understanding this, then how much of your day’s attention do they deserve?

Antidisintermediationism (or Creators’ Rights)

Was reading the TechCrunch story on Disney distributing its high-budget linear-video productions through Hulu rather than YouTube. Makes sense — Google’s model is to commoditize all content and then sell audiences to advertisers. Creative work is usually compensated best when there’s a direct link between creators and audiences, not when there’s a monolithic gatekeeper in the middle. Makes sense that Disney would bond with other creators, rather than insert Google between Disney and their audiences.

The way Google republished books under copyright without the creators’ consent probably hurt them greater than they could have anticipated. I lost faith in “Don’t Be Evil” back when they stonewalled on perpetual cookies, and got radicalized when Google hired MoveOn to lobby for commoditizing connectivity. Treating Silicon Valley personalities as deities is much weirder than realizing they’re fallible humans, just like the rest of us.

Creators of digital communications which others wish to view are not serfs on some advertising farm. Each creator should be free to choose their distribution strategy to their own audiences. I don’t watch Hulu’s content myself, but I’m glad they’re developing alternative distribution strategies. Monoculture often becomes surprisingly expensive.

The needs of the haters

Last week at NAB there was big news about Flash being increasingly adopted at the hardware level by television manufacturers (see press release, Techmeme).

There wasn’t much new information beyond what most of us knew back in January, but it got a lot of fresh exposure in the mainstream techblogs. This produced a noticeable trend-change in comments at venues like CNET and Ars Technica.

Let me synopsize, rephrase some of them here, to give a flavor: “Oh great, now we’ll see all those annoying Flash banner ads over television shows just like we get to see on so many websites?”… “Well, the VIDEO tag in HTML 5 is on the way, and then there will be no difficulties with plugins as an excuse for using Adobe’s semi-proprietary crap-ware”… “GREAT! Now in addition to our PC’s, Adobe can crash our televisions”… “I can understand why some companies battle to keep Adobe off their devices – it is a trojan horse of functionality that can dominate/trump the device OS”… “Oh, great! Now they’ll be tracking our viewing habits with Flash cookies and sending targeted ads to our TVs”… “If I owned a T.V. I would not want to have Flash’s annoying ads on it”… “I’d be ok with 100% cpu if they could guarantee that it wouldn’t crash the TV like it does my browsers”… “Why not make the UI AJAX rather than flash? It’ll take 10% of the cpu”… “Why would any electronics manufacturer want to inflict Flash on their (soon-to-be-former) customers?”… “Oh good. I’ve always wanted my TV to drop frames and be bad at scaling video”… “How did Internet video streaming go so wrong?”… “I despise Flash. My first thought reading this was that its an attempt to control what we watch and how we watch it”… “Open standards is about letting technology progress for the benefit of the whole society, at minimal cost, instead of being hijacked and bottlenecked by a few capitalists so they can collect rent-seeking profits”… “I wonder what the environmental impact/energy cost of flash has been”… … “Can we please get SVG, SMIL, JavaScript, HTML5 VIDEO, etc. working together so that we can kill stupid crap like Flash already?”

There was similar reflexive pushback in comments to a blogpost of mine last week. This is what really started me wondering about the phenomenon.

The particulars of the attacks aren’t new… what struck me in the pseudonymous comments was the sudden strength in volume and emotional tone. In these forums there was little discussion of the news and its implications, but a significant amount of reflexive pushback against Flash itself.

The nature of the complaints shows no nexus — the most common point seemed to be “I don’t like ads”, which was quite peripheral to the discussion. People seemed to be grabbing whatever argument was handy, tossing it at the wall, seeing if it would stick.

The core driver seemed to be diverse sentiment against Flash’s increasing usefulness, rather than any particular addressable issue. My takeaway is that they’re seeking rationalizations for a pre-existing prejudice, and are increasingly concerned that those prejudices are becoming irrelevant in the world at large.

It is a stressful time for many “Flash haters”. The VIDEO tag has sparked interest, yet no one is realistically addressing the obvious questions about cross-browser deployment. Meanwhile Flash is increasingly acknowledged as the way to unite diverse browser brands, and is making significant progress on cross-device deployment across laptops, mobile, television, and embedded displays. Reality is crashing in on the rhetoric. Past challenges were not addressed, while future challenges are increasing. When reasonable questions cannot be answered, or even safely acknowledged, then ridicule is one of the few tactics left.

What to do? Well, some of the later comments at Ars Technica were more reality-based, although some of them verged into vulgar abuse. We can try reason; we can try fighting fire with fire.

But when the complaints are based less on reason than on prejudice, reasonable replies usually don’t take root, instead just spurring another collection of rationalizations. And calling the namecallers names — responding to intolerance with intolerance — is usually not a very enjoyable way to live.

My suggestion? For each of us individually to investigate the facts, evaluate the trends, and (most likely) see the haters as merely acting like frustrated deadenders. Emotional, but without hope. History and future-history both seem to be against them. They lash out.

If such commenters present a legit new point we still need to recognize it and respond to it… if there’s a newbie who heard “Flash isn’t searchable and isn’t accessible” we can still try in good faith to help them out… but I think we need to accept that there’s a minority who will complain in dysfunctional ways no matter what.

A guiding light, a silver lining: Anyone who fights for a technology position, cares about technology. They may currently have incorrect info or not clearly disclose their personal proprietary concerns, but they care. That’s something we have in common.

The long goal is in increasing the range of personal expression for all humans — to remove the barriers to people communicating their own ideas. Web-publishing is a part of that, and the greater engagement provided by rich-media and interactivity is a part of that goal too. If someone else is on that path, they are a potential ally — even if they’re currently throwing rocks from behind an online moniker.

Can I follow my own advice? Probably not, I still get frustrated with the tactics of prejudice! But there’s always the possibility of hope, potential futures in which they open up… that’s one thing I try to keep remembering when reading such people.

Flash Haters seem to be in a rather desperate position right now. They might try to hurt you, but if you can afford them some compassion and understanding (while not letting them eat your time ;-) , then that might be the best response in the long term, thanks.

Put down the Flavorade and slowly back away….

Tristan Nitot, the speaker from Mozilla/Europe who had last year’s “Beware Flash’s hidden agenda” bit of never-corrected scare-mongering, praises a new example of simple graphic writing into a video buffer via CANVAS tag in unreleased Firefox.

If you’re happy with that example, then I’m happy. New technical options are always good.

But some of the text in that essay is weird. And while there are comments published there, I’m not seeing a comment-box in my version of Firefox 3.08, and Mozilla evangelists have a history of not recognizing inconvenient questions. So I’ll copy his lede here and then list through some of the problems it exhibits.

Making video a first class citizen of the Web

For years, digital video has been soaring, just like still digital images 15 years earlier. It’s now easy to capture video, editing it is now possible thanks to user-friendly applications and with broadband becoming more common, the pipes are now big enough to download video. The only caveat is that Web browsers have not evolved over time to include video, because the dominant browser vendor had little reason to invest in it. Proprietary plug-ins such as Flash, QuickTime or Windows Media have been until now the only way for Web developers to include video in their Web application. Unfortunately, resorting to proprietary plug-ins and patented codecs has drawbacks. I won’t get into the patent and proprietary code issues and focus on the fact that resorting to plug-ins for video brings some limitations to what one can do. Plug-ins are like boxy islands of information on a page. They can do wonders by themselves, but they have a hard time being mixed with the rest of the Web content. It’s hard for example to interact with a Flash video, unless you write the complete page in Flash. But all of this is now over, since Firefox 3.5 and other modern browsers support native video using the new element. Now, a native video is just an element in a page that you can manipulate with the DOM, style with CSS etc.

You can “make video a first class citizen of the browsers” by removing the barriers browsers impose to communicating with and using neutral cross-browser renderers. It’s “boxy” ’cause browsers still only offer the (slowly-improving) WMODE for better visual integration.

We still need you to fix the browser focus issues so people can tab easily throughout any element in the page. We need you to expose “Open in New Tab” functionality in the browser so plugins can ferry those instructions. We need you to expose a preference-setting mechanism so that Flash knows when the browser wants to stop cookies. We need your JavaScript to distinguish user-initiated events from programmatic events. And there’s never been a need to “write the complete page in Flash” — if it’s slow for your JavaScript to control video rendered by Flash, then fix the JavaScript/plugin bridges.

You can “make video a first-class citizen” with a whole lot less effort than you’re currently expending. Use what works, instead of trying to personally reinvent what already exists.

Just fix the browsers’ current integration problems with predictable third-party rendering. Having each browser vendor make their private re-implementations of proven technology is a dog’s way to go.

I don’t appreciate how Tristan avers menacingly to “proprietary plugins” and “patented codecs” without ever making a strong, sensible case. It’s fear-mongering. It’s unnecessary. Beneath his rap is the assumption “Ogg Theora (aka On2 VP3) will solve all needs”, and that blanket assertion still needs a strong defense. You can’t say “patented codecs are bad” without addressing why the world prefers modern codec technology. It’s religious gaming, not technical discussion.

There’s one other part of this that I find intellectually objectionable:

It’s built with native Open Web technologies: JavaScript + DOM, CSS and HTML 5 (canvas and video) that hundreds of thousand people are already familiar with.

There is no HTML5. It is only as real as ECMAScript 4 was. Both were proposals. Neither were ratified as academic de jure standards, much less graduated into becoming realworld de facto standards. To bill this phantasm as a concrete advantage is rank used-car salesmanship. I’m using the current release version of the browser that pays Tristan’s rent, and it only renders the de facto standard video format, not his potential de jure format. It ain’t “open” if it ain’t accessible.

The thing that bothers me most about this type of “Open Web” evangelism: it asserts polarities without ever defending those assumptions. It’s go-along-with-the-crowd sheepism. We humans do best when we realize what we share in common, and examine the individual facts which make up a case. But that “choose up sides and fight the other team” stuff is primitive, unhuman, and has got to go.

I’m glad you enjoy realtime video manipulation. I’m not glad that you assume only your own branding is acceptable.

Tristan Nitot, I’m calling on you to stop putting additional barriers in front of fresh browser makers. I’m calling on you to make it easier — not harder! — to enjoy HTML on new and smaller devices. Keep hypertext hypertext, and create some other spec for RIA engines; don’t pollute the two together. Use the technology that works, and drop your not-invented-here provincialism. Stop mysteriously asserting dangers from Flash… if you’ve got a concern, spit it out, and we can work on it together.

Open up the Open Web, and stop advertising how Closed it can be.

(And oh yeah, for “try doing view-source with a Flash applet”, try doing a web search on “view source flash”. It’s been years….)

Update: Tristan Nitot of Mozilla did follow up a bit, in a comment at Denver Gingerich’s OSSGuy blog: “I hadn’t see JD’s post, otherwise I would have answered myself (not sure if he would listen though, because it’s always harder for a man to understand something when he’s paid not to).” He didn’t address the issue, just made further aspersions, and didn’t back those up when challenged. That’s not admirable behavior.

Comments off while on vacation

I won’t have access to the Adobe blog-publishing system for the next few weeks, and so won’t be able to approve comments as the system requires.

Old blog entries will look like they’re accepting comments, but they’ll just get held up in the moderation queue. Sorry about this, but I don’t know of a more graceful way to handle it.

Me? I’m going to explore Hong Kong’s New Territories and outlying islands for a week, then visit Singapore for the first time. More info at my weblog, and I’ll still be on Twitter. If you want to show off part of your hometown to an appreciative traveller, just let me know… otherwise, see ya’ll mid-April!

Playing Flash in Java

Summary: No news here, just some historical context on current events.

Ran across a press release today, titled “Java Application to play Adobe Flash Contents on low cost mobile phones without Adobe Flash Lite”. I went to the website and downloaded PDFs, but didn’t learn which parts of the SWF were rendered.

It’s a reasonable initiative… lots of people are already comfortable creating SWF, so a licensor of a Java implementation can add to their pool of content developers by interpreting SWF. JFlash is another such SWF-in-Java project. I don’t know of anything preventing anyone from writing a translator from SWF to JavaFX, XAML, SVG or whatever.

The key question, of course, is the subset of SWF functionality which would be translated. I didn’t immediately see a list at either of the above sites. It’s like writing an Ajax app; you’d have to test your instructions atop each variant runtime engine. Not impossible, just a little extra cost.

Macromedia distributed a Java runtime ‘way ‘way back… I think it was towards Flash Player 3 days. There was pretty good fidelity (for the limited feature set ;-) but it was dropped from the distribution catalog when features like alpha transparency and .MP3 support pushed too hard at the edges.

While searching for links still live on the web I came across this 2003 press release, about how Sun would be distributing Macromedia Flash Player in Java Desktop System. Now you can win trivia contests with your friends…. ;-)

(btw, there are some other news articles today about BSQUARE porting “Flash technology” to Android-driven phones. It’s a little unclear to me… I know BSQUARE has worked with Macromedia and Adobe on specific porting projects (look! a 2001 press release!) but I don’t see them in the list of current partners at the Open Screen Project. I’m not sure of the BSQUARE details, but do know that work to get the current Player 10 on Android and other devices is still proceeding.)

Continue reading…