October 11, 2007

Open systems, closed systems, and the future of Apple TV.

I own an Apple TV. (Yah, I'm the one.) I turned it on when I first got it, thought it looked really pretty, then turned it off and never touched it again.

BUT! I think Apple TV will be an amazing device, and a massive success for Apple... after they make a few changes.

Why did I turn mine off? Well, because in my TV room I also have a Mac mini hooked up to a 2TB drive. The Mac mini runs Front Row, just like the Apple TV, so it could be looked as a more-expensive version of the same device.

However, the mini also runs iTunes, so I can buy new shows on the same system on which I'm watching TV. With the Apple TV, I have to have my laptop downstairs and turned on, and buy and download a new movie on the laptop before I switch over to my Apple TV to watch it. Clunky! (The situation is worse if you have a Mac Pro with your media on it -- what are you going to do, run upstairs to the computer room every time you want to buy a song or show?)

And because the mini has a huge drive hooked up to it, it also acts as a content server to the rest of my house, so I can have a unified home for all my music and TV shows and movies, whether ripped or bought from iTunes -- it's my "Windows Home Server" without the Windows. Unlike with the Apple TV, which can't have an external disk, I never have to bring a second system into the equation, so the mini ends up being cheaper than the Apple TV, because the Apple TV requires a separate computer.

And now I don't even have to bother storing my movies on my laptop, which is great, because my drive is already pretty damn full of porn. Uh, I mean builds of Delicious Library 2. In fact, nowadays if I want to buy a new movie and I'm not downstairs, I remotely access my mini from my laptop using Apple Remote Desktop and buy it from the version of iTunes running on the mini, so it's right on my server where I want it. Again, possible because the mini is running a full OS, not just Front Row.

Note that a lot of the movies and TV shows I want to watch aren't from iTunes -- but since the mini is an open system, I can download Perian, an open source QuickTime add-on, and play movies AVI, FLV, MKV, DivX, and a billion other gibberish words. Hell, I don't even know what an FLV is. But, the point is, some of the content I want to play is in these formats, and Apple doesn't support them in QuickTime natively, so I can't play them on my Apple TV, since it's a closed system.

If a friend brings over a DVD, I just pop it in the mini and we watch it. The DVD player under OS X has a much nicer interface (and remote!) than any other player I've had, so I put my super-expensive multi-region player into cold storage. The Apple TV doesn't have a DVD drive, and you can't hook one up, since it ignores external USB devices.

For my personal DVDs, I can rip them using Handbrake and store them in my Movies folder, and Front Row magically finds them! No more pawing through stacks of DVDs! I finally have a DVD jukebox, the ultimate geek dream. The Apple TV doesn't allow me to install any third-party software. Heck, I can't even rip my CDs on the Apple TV, since it doesn't run iTunes and doesn't have a CD drive.


To sum up: Apple TV doesn't allow developers to get at its UNIX underpinnings. It doesn't allow for modifications of its system software. It doesn't allow people to hook up an external disk or a DVD drive. It's a completely closed system. And, as of right now, it's pretty much a failure.

Apple took a guess as to what features the market would want, and because Apple didn't allow for third parties to tweak and optimize what their system does, their guess had to be perfect the first time. It wasn't, and the Apple TV stays off in my house.

There appears to be a battle being fought inside Apple, on whether Apple will be a company that provides solutions or provides tools. iTunes and Front Row are solutions -- really great solutions, sure. They are very friendly and they solve very specific problems beautifully. But they aren't particularly extensible by themselves. We can't make new functionality with them. (Note that if we have access to the underlying machine, as we do with the Mac mini, we are given the tools to modify these solutions -- we can make Front Row play MKV files by adding QuickTime components, even though it was written before MKV existed. We can make iTunes play WMVs.)

Having a system be open, having it able to freely accept peripherals and new programs, turns it into a tool as well as a solution. Each customer can decide what she wants the system to be, and developers can create new solutions -- and if those solve compelling problems, the entire system will be that much more successful. And, at the end of this cycle, the makers of the original tool can integrate these third-party solutions, so the tool grows for everyone.

The amazing thing about the Mac mini vs. the Apple TV is it perfectly encapsulates the debate between providing solutions or tools to your customers. They are very similar boxes, from a raw-capability point of view, but one was closed and the other open. The Apple TV is a solution, and right now it's desperately searching for people who have the problem it solves.

With the Mac mini, Apple provided us with a mix of solutions (iTunes, Front Row, etc) and tools (expandability, compilers, access to UNIX, access to plug-in directories). And, as a set-top box, the mini is incredible. Now, obviously, I have no idea what the mini's sales numbers are, and Apple hasn't really pushed the mini as a set-top box, and it does cost more than the Apple TV, blah blah blah... but it's clear to me that if the Apple TV did what the mini does, the Apple TV would be a GREAT set-top box and home server. It would own the Microsoft Home Server so hard that Ballmer would wake up with a sore back.


Why doesn't Apple just fix their solutions themselves, you say? If we all want MKV movies so much, why doesn't Apple just include support for it?

Well, first off, they probably should, in this particular example. But Apple only has so many engineers on QuickTime, and besides it may not be particularly popular to add support for bizarro file formats from other companies, especially when Apple is pushing MPEG-4 (aka QuickTime) as the One True Wrapper.

Second off, third parties can afford to sometimes make very limited or kind of half-baked solutions to dip a toe into the water, and if those are popular they can be fixed up later. Open Source projects don't make headlines in the NY Times when they push a major release that has some bugs, so we collectively get to invent a TON of different things let the market figure out which ones are pursuing. Consider the original CoverFlow, which was originally just a (really cool) demo by a third-party, in search of a problem to solve. Now Apple's bought it and put it into everything it ships except for iPod socks.

Apple can't anticipate every change that is coming, or which changes will end up being popular. No, I don't think they should give up trying to do so, but I do think they should share the burden. For instance, I've never seen an "FLV" file. Let's pretend for a minute that Apple did spend a bunch of time writing an FLV component for QuickTime, instead of speeding up h.264 encoding or something. And then, it turned out basically nobody used FLV, and Apple wasted their time and lost other neat functionality because of it.

Now, the nice thing about FLV support being add in Perian is that Apple essentially has a bunch of suckers (I use the term lovingly) taking all the risk for them. If nobody cares about third-party movie formats -- well, Apple didn't spend any time on it. Shrug! If EVERYBODY cares about them -- well, there they are! Go download 'em! In fact, hey, these are open source -- Apple could just start bundling with them. No effort spent on Apple's part, but their marketshare just got a lot bigger.

This is the beauty of open systems. Apple has a ton of very talented designers and very smart engineers. But they shouldn't have to be the ONLY smart people in the world, who must anticipate everything every customer might ever need. It's asking too much.


This whole post is ironic because Apple pays its AppleScript evangelists to say exactly what I'm saying, but back to us developers: Add scriptability to your apps! You can't anticipate everything the customer will want, but you can make your app into a tool! Allow other vendors to tie into your system and everyone wins!


I expect Apple will rev the Apple TV soon. One thing they could announce is that you can now rent movies over the internet, or maybe they'll announce you can access the iTunes store from directly inside Front Row. Either of these would be nice, sure. But they'd just be more pre-made solutions -- maybe they'd be popular enough to make the Apple TV a decent success, maybe not. But we would never know what Apple TV could be.

What I want Apple to announce is that they are merging the Apple TV with the Mac mini, and making it a hybrid closed/open system - a machine that boots into Front Row but can be used as a standard computer if you press some magic keys. A turn-key solution that can be opened up by advanced users and developers. The first mainstream consumer device that is infinitely hackable.

The world is waiting for such a product. Apple's the company to do it.

Set me free inside an Apple TV, see what I do for you.

Labels: ,


Blogger AgentMunroe said...


Not to take away from your point - which I think is excellent - but the AppleTV does have a very robust underground community at the moment, as it essentially does run OS X, and you can add Perian/Flip4Mac/plugins to the AppleTV interface and get additional functionality.

Of course, it's exactly the situation the iPhone was in several weeks ago - at any point Apple could release an upgrade and close the thing off. They seem to have more publicly stated that they have no plans to lock out the AppleTV, unlike the iPhone.

Still, I'm happy enough with the functionality of my hacked AppleTV that I'm not sure what Apple needs to add that I would upgrade for. I have YouTube and untampered .avi movies streaming from my NAS, and for me that's enough.

October 11, 2007 9:49 AM

Anonymous Anonymous said...


FLV stands for "Flash Video". YouTube uses it heavily.


October 11, 2007 10:29 AM

Anonymous Jeff Atwood said...

Yes! I'm a huge fan of putting a small, quiet PC in your living room for music / video / digital video recording duties. I use Windows Media Center, which (and not to get into PC vs. Mac wars here-- they're all computers) is one of the best products MS has ever released. It almost single-handedly restored my faith in MS as a company. No, I'm not kidding. See the UI in action here, it's top notch:


The only weakness is digital cable, which is currently a mess for DIY builders because of the DRM and licensing around CableCard.

Anyway, I run my living room much the same way Wil does, and it's awesome. You should too.

October 11, 2007 11:16 AM

Anonymous Anonymous said...

Itty-Bitty Nitpick: It's called Backrow on the AppleTV, not Frontrow.

Everything else is your article is 1000% fact :P

October 11, 2007 1:26 PM

Blogger mont said...

I agree with a more open Apple TV.

I want to point out something I don't often hear. I don't think of or use my Apple TV for Video, I use it for Audio and Photos. I think of it as an iPodTV.

It is the product I wanted since iTunes first came out. I've never been much of a Walkman kind of guy but I stopped using CDs years ago and need a way to get my music to my stereo.

Apple TV does this great for me I just don't know if there are enough others like me to make a market.

Of course, Video would be great, it just isn't there yet.

October 11, 2007 2:47 PM

Anonymous Matt @ Lux said...

While I agree that there's tons that could make ATV better, I absolutely love my unhacked ATV. It does exactly what I want it to - stream my Handbrake'd DVDs and photots over the air.

That's all I wanted and it does that very, very well. I would like more codes though since my miro + tvRss setup always requires the conversion to 264.

October 12, 2007 10:23 AM

Anonymous Anonymous said...

"It's called Backrow on the AppleTV, not Frontrow."

Not quite true: The frontend is still called Fromtrow, Backrow is Apple's developer framework for developing Frontrow.

October 12, 2007 2:36 PM

Blogger Ian said...

Jeez Wil, it's quite simple. If you don't like Apple TV, then don't buy it. I mean no-one's holding a gun to your head...

October 12, 2007 4:38 PM

Anonymous Anonymous said...

Thanks Wil, hadn't realised Perian + DVD's stored in Movie Folder = Frontrow bliss !

October 12, 2007 10:11 PM

Blogger nevets_anderson said...

This may be a use for that apple tv you have lying round


October 14, 2007 2:16 AM

Blogger Wil Shipley said...

Yah, because I need a linux box like I need a hole in my head. No thanks. Why don't I just buy an old Cyber and install NOS while I'm at it?

October 14, 2007 4:31 AM

Anonymous b-rad said...

I'm so naming my porn folder "previous builds of DL2"
Except knowing my friends that wouldpry make it look more appealing to open.

October 17, 2007 10:31 AM

Blogger Mark Stultz said...

What kind of 2TB drive do you have? I am rethinking my 'media' server strategy, and am thinking about swapping my current G4 server with a mini + giant drive combo. The noise from the G4 is killing me.

October 17, 2007 12:19 PM

Blogger Wil Shipley said...

My drive is a LaCie, and it's a little old but for some reason the fan never shuts off, even though the drive does spin down. It's the worst of both worlds -- when I wake up the machine the drive takes 30 seconds to spin up, but the noise from the drive is constant and annoying as hell.

Not recommended. It may just be because I'm accessing the drive via USB (got to!), but in my book if the fan doesn't spin down when the machine sleeps, you've got a sucky drive.

October 17, 2007 1:12 PM

Anonymous Anonymous said...

If the Mac mini had an HDMI port, this would be a slam-dunk. But it doesn't, and that can complicate the connections to your TV or A/V receiver or whatever you need to plug things into. A minor point, to be sure, but HDMI can radically simplify wiring a home theater setup.

January 02, 2008 8:47 PM

Anonymous Anonymous said...

@Anonymous @January 02, 2008 8:47 PM

It's called "Belkin PureAV HDMI Interface-to-DVI Video Cable"
Mfr. Part No.: AV52400-08

It's a bit spendy, but that will let you hook up your Mac mini to an HDMI monitor/tv, etc.

January 03, 2008 3:21 PM


Post a Comment

<< Home