MAFF day

The conversation about content packaging technologies turned towards the Firefox MAFF format:

MAFF files are standard ZIP files containing one or more web pages, images, or other downloadable content. Additional information, like the orirginal page address, is saved along with the content; this metadata allows the browser to open these files intelligently.

…so Paolo, the maintainer of the related code in Firefox, stopped in to give an overview of the work:

The only strict design goals for MAFF are (1) to be very easy to use and implement, and (2) to be based on existing and widely-used technologies. Backwards compatibility with the existing implementation is also very important.

At present, MAFF archives can be multi-page, but the basic atom is the “page”. Each “page” may be updated or used independently from the others.

Optional metadata (currently stored as RDF/XML) may link each “page” in the archive to an original location (URL) that can be queried for updated versions of the entire “page”, if desired. The root document may link to other resources in the archived “page”, through relative URLs, or to remote URLs, indifferently. All the local resources are “owned” exclusively by the “page”.

If no original location is specified, it currently just means that the file was authored as a standalone package to begin with.

The MAF extension does not support remote MAFF files, at present, but Firefox can access any remote ZIP file using the “jar:” protocol. In this case, I think the caching headers of the MAFF/ZIP file itself are used to check if updated versions of the remote archive exists. That’s different from using the original location in the archive’s metadata to check for updated versions of a “page”.

Something about the ability to index into the zip file using the jar scheme is inspiring.

Putting on my standards weenie hat, there’s a spec design problem in that this should really be a #fragment, with treatment of the fragment defined in the media type definition for ZIP. But that’s just a nit for now.

What inspires me is that you can make the issue of your starting file within the larger archive a moot point. Without that approach, there is a need to write a protocol which defines a canonical starting file when you get the archive — e.g. “/index.html.” Using the jar scheme, you can just specify the starting file in the URL, like this: jar:http://www.foo.com/bar/baz.jar!/index.html". So there is no need for a new standard.

Another interesting issue here is that OS X comes with Java, which comes with a utility for managing jar files, and that utility can be used as a wedge for new code.

This parenthetical bit from Paolo's comment also caught my eye:

The latest MAF 0.15.1 provides an interesting feature that’s peculiar to ZIP compression (compared, for instance, to .tar.gz of the KDE war format): OGG files are stored without re-compressing them.

Thanks to this, audio and video in a large MAFF+OGG file are seekable in real-time exactly like a standalone OGG file.

The back story is that putting media into a zip file usually prevents streaming access. You have to download and unpack the whole thing before you can hear the first byte of an MP3 within it. But apparently that limitation goes away if the media file is *OGG*. That's a big advantage to Ogg in comparison to MP3. And given that Firefox has native support for both MAFF and Ogg, it would be easy to start using this feature.

Kudos to Sull for developing this larger vision of MAFF as key prior art and then pinging Paolo.

subs #2

Aram points out that my math on subs was off: 25mm subs x $10/month is actually $3b per year, not $250mm. Which is a pretty nice chunk o’ change. And 100mm people at $20/month (which I believe is an unfeasible price) would actually deliver $24B in annual revenues. What I did wrong was that I didn’t multiply monthly revenues by 12 to get annual revenues, so my numbers are a 12th of what they should have been.

And *even so* the basic picture doesn’t change. In the most wildly optimistic scenario subscriptions are still no better than half the size of the old record business.

More Aram:

I think there’s still a substantial potential customer base for them, especially if they include (a) unlimited DRM-free downloads (which UMG has already gotten behind), and (b) streaming to mobile devices, with caching, a la Spotify. Obviously, the market size won’t be anywhere near $40B global (record retail at its peak), especially in the early years of deployment, so they need to be integrated with other revenue models, from ad-based to licensing, and supported by 360 artist management.

app store as cutesy little niche market

Jay Fienberg comment on app store vs HTML 5 post

Imagine that Flickr and Facebook have not launched yet, and they decide to launch as iPhone apps instead of as websites. They both focus on sharing photos amongst “friends,” with some differences, obviously. But, they see the native app as ideal because of its seemless access to the camera.

Say they are super successful on the iPhone. Then what? Do a Pre app? Etc? Maintain multiple apps?

Still seems likley they’d make web-versions of their apps at some point.

I wonder if the App Store / device / custom browser (e.g., iTunes) model works only to the degree that there are developers who really want bank on that model (i.e., the old Microsoft mantra: developers, developers, developers)? And, if so, that suggests the need for a monopoly platform or else there is so much fragmentation that each App marketplace is really still just a niche compared with the potential of web apps.

subscriptions vs sheets

Spotify spotify spotify! So much buzz. Buzz buzz buzzzzz.

It’s just not that big a business.

It is a real business, yes. Subscription on-demand services are really useful for people who care about music and have disposable income, especially if the subscription can be used on a portable device. But for people who don’t care about music, they can put on free radio or a semi-random MP3 they got from a friend. For these people it’s same songs over and over again and so what.

There aren’t that many music fans with disposable income out there, so the business isn’t that big. Maybe there are 25 million people in the world who would pay $10 a month for the subscription. That’s a $250 million business globally.

That makes music subscriptions a quarter of the size of the sheet music industry. No matter how you work the numbers they stay in that range. Call it 100 million people and $20 a month, which is way beyond the point of realism, and it’s still only $2 billion. This isn’t nothing. It’s a good business. But it’s not going to take the recording industry back to the glory days, which is what all the hand-wringing is about.

another real world example of page flipping

This NY Times piece on threat level graphics uses the same method of playlisting as the Talking Points Memo video playlist that I blogged the other day

Speaking of the alert levels, they make me bristle. It is now orange, it has always been orange, it will continue to be orange until the whole thing is abolished. There is no truth to the alert levels and never has been.

app store vs HTML 5

So let’s say you’re shipping a non-iPhone mobile internet computer. It’s Android, Palm Pre, Kindle, something along those lines. And you need to compete with Apple’s app store.

Do you:

1) Make your own little app store, in full knowledge that merchandise will be rare and shoddy?

2) Implement HTML 5 with local storage, great canvas support and all the other doodads that make it possible to do full-function web apps?

blocsonicRadio Wax MP3 player

The blocSonic netlabel has hooked up a Wax MP3 player for their stuff, like the player for Magnatune’s music or the player for uptempo net music that I hand-curated. The player is at http://blocsonic.com/radio. Their blog post about it is at http://blocsonic.com/post/introducing-blocsonic-radio.

This player is designed for music that is good but unfamiliar. It guides the listener through songs without requiring the listener to know anything them in advance. So it’s a natural fit for netlabels, who are long on taste and short on marketing.

The player is a new kind of music experience that is unlike webcasts, music blogs, MP3 player software, or podcasts. It’s free and open source. See github to get the core package. If you want a hand setting it up, don’t hesitate to ask.

reverse chronological video playlist

I clicked through to a video page on Talking Points Memo. The video autostarted. It lasted about a minute. When it was over, the page automatically flipped to another video page which behaved the same way. The second video was the previous posting. After it was over, the page reloaded to the page of the prior video. Etc.

So it’s a playlist composed of cooperating video pages, where each one does the same thing to keep the sequence going. And the playlist is in reverse chronological order, with each track a news clip.

It felt pretty compelling in its own way, but also gave me a little whiplash as the browser lurched from one page to the next.

mobile vs located

Sometimes the important thing about a device like an iPhone or a Kindle is that it’s portable, also known as mobile. For example they let you carry a lot more books around than if the books were physical.

But sometimes you’ll have a thing like a Boxee, which is a living room device, that’s important in the same way. That way is that it’s *located*. A Boxee is designed for living rooms. It’s the right computer for a living room.

If you use a Chumby as an alarm clock, which is the form factor it copies, it’s located when it’s in your bedroom by where your alarm clock used to be.

A mobile phone with a computer in it is portable, sure. But if you get a phone-based app that’s designed for your living room, then it’s located.

Even a standard PC is located — it’s the right computing tool for your desk.

Located apps complement the place where you are. Some apps are mobile in that they are supposed to be all over the place. A phone is like that — the point is to be location-independent.


This augmented reality deal blows my mind. I am in awe. It makes me want to laugh madly.


What about located music? When is a music app located?

The thing I’m working lately has a located aspect. The fact that it’s located is the point of it.