Apple TV, what it could be

I recently bought an Apple TV. I’ve had a Mac Mini connected to our TV for 2+ years, but it never got the use I was hoping. The Apple TV is quickly becoming a big hit in our house due to its ease of use. It’s a great little device, especially considering it’s just a “hobby” for Apple.

I have several suggested improvements for the next generation of hardware and/or software. I have no expectation Apple will either see or pay attention. I’ll also not attempt to turn the Apple TV into something Apple clearly doesn’t want it to be. So no push to support every codec under the sun, no tuner/recorder, no blu-ray player, etc. Might be nice but a waste of time to suggest.

This has been in my drafts folder for a while. It’s way too long as-is, so I’m getting it out there.

Software Changes

Network sharing: Allow local computer users to share (play) media stored on the Apple TV. Basically, make it act like iTunes and iPhoto already does. This should follow standard restrictions on protected content, again just like any computer. This should also allow one Apple TV to share the content of another Apple TV. We’re having so much fun, getting a second may be tempting someday – but only if all content were accessible at all times.

Podcast improvements: I’m having a blast with video podcasts. First, we need better searching. The current Apple TV search is titles only, while an iTunes search is much more thorough. Also, allow subscribing to podcasts directly on the Apple TV. (General theme: do as much as possible through the Apple TV interface, not requiring constant access to the host computer’s iTunes.)

More codec support: I’m not suggesting XviD, WMV, etc. I think the Apple TV should support every codec available on the Mac desktop using QuickTime. This would allow users to play DV files, videos made on digicams, etc, without going through lengthy conversions. Some of these are better kept on the host computer to save space; the intention here is to save conversion time. Some large codecs might require more CPU power, or a hardwired ethernet connection, but most should be fine.

Also, for conversion, some simple batch-convert process for video. We can batch-convert music to MP3/AAC in iTunes, why not video? I know there are third-party solutions to this, but it should really be integrated. NEVER MIND – Advanced->Create Apple TV Version. I haven’t tried this yet; curious if it’s the same as Quicktime’s Export to Apple TV (a very high quality/large file size conversion with no options).

Manually set the poster frame: This is a lame one, but I’d like it. Pause a movie on your favorite frame, then set the poster frame. Also, manually add chapter markers the same way. These should be synced back to the host computer.

Sync while playing: The Apple TV can’t seem to sync with the host computer while playing video. That’s silly.

The ability to play more HD formats, specifically 720p/30 and 1080i/p (24 and 30). Most large (and more smaller) HD TVs are 1080p now. All my home video is shot 1080i/30 (or 1080i/60 if you count fields). It’s a shame I need to scale that down to 960 x 540. There might be a hardware component to this as 1080p video stutters even on somewhat modern computers.

Ditch the stupid .m4v format. I don’t get this one, although it has little to do with the Apple TV itself. .mov is a great container. Why the new format? Was it to say Apple was producing an open format? Try changing some tags in a large .m4v file. Takes forever. A .mov? Barely noticeable. Yes I can use .mov fine, but the quick exports from iMovie, Compressor, etc, all go to .m4v. Plus .mov can have multiple audio tracks, closed-caption tracks, etc.

Support multiple tracks of .mov files. Following from the above, allow the user to choose which audio track to play when watching a movie. When I RIP DVD’s for flights I include the main audio and any commentary tracks, all in the same file. In Quicktime Player I just select which I want to hear. The same should be possible on the Apple TV. (And imagine how many more movies Apple would sell if they included director/actor commentary tracks?)

Multiple users. This is a big one, and an easy one. We have three people in our house – why would we want the same set of favorites, or the same playlists, or the same YouTube account? I’m not suggesting a completely separate library (although some might want this). My wife doesn’t need to see my WWDC videos in her listing, and our daughter doesn’t want to see anything other than Sesame Street and Curious George.

EXIF/IPTC tags while watching photos. While watching photos, we’ll sometimes wonder when the photo was taken. How about a popup of basic data? (And oh, by the way, iPhoto should embed this info into photos instead of storing the data elsewhere. Major multi-year pet peeve here.)

Be a wireless access point (and for some a repeater). My Apple TV is on Ethernet. Why can’t it be another access point for my home LAN? For those using the Apple TV on WiFi, making the Apple TV be a repeater might be nice, although throughput would drop in half so mixed feelings here.

Hardware changes

Apple will inevitably ship a new hardware version of the Apple TV, unless they kill it off of course. I’ll assume the device will have a better CPU and graphics card to support 1080p, etc. So that’s a given.

Gigabit ethernet and 802.11n WiFi. Obvious – move those video files faster.

A desktop (3.5″) hard drive!!! This is my biggest complaint about the first generation Apple TV, and the Mac Mini as well. Why on earth did Apple see it necessary to use a 2.5″ laptop drive in a non-portable device? They saved roughly six-tenths of an inch of space (height) on the device. Hip hip hooray. But they lost a ton of storage space – for a device where storage is key. Many 3.5″ drives are plenty quiet (I’ve had a Tivo for eight years, never heard anyone complain). A quick check at my favorite drive vendor shows 160GB laptop drives roughly the same price as a 500GB desktop drive. Apple is using desktop drives in the Time Capsule, and I’ve never heard anyone complain it’s too large. A perfect example of form obliterating function.

Bluetooth – to support more devices, remotes, etc. See theoretical changes below for more rationale.

External hard drive support – I think this is possible, but unlikely from Apple. They like closed devices. I disagree with their decisions here but accept them as part of the big picture.

Theoretical changes

SDK. Apple has the iPhone SDK, and it’s a huge success. The Apple TV is running OS X too. A real SDK (combined with the better processor and GPU likely coming anyway) could turn the Apple TV into a competitive gaming platform. I don’t play games myself so I don’t care, but it would make the device very popular. Integration with the App Store, etc. Apple would limit SDK functionality (muck like the iPhone), here to prevent the Apple TV from becoming too much like a computer and competing with their own Macs. That’s ok.

Through that SDK they could open the Apple TV to other content providers. (Whoa, is that the third rail I sense?) I don’t see Apple’s content being all things to all people. Access to NetFlix, Hulu, more photo/video sites, etc, is necessary. Apple has conquered music. They haven’t conquered video, and they won’t. Apple has not positioned the Apple TV as a loss-leader to content (like game consoles do). Open it up to the wider world, and Apple will own this market.

Give the remote an accelerometer. Just like the iPhone (and just like the Wii from what I understand). Would be fun for gamers, and probably useful for something. Otherwise the current remote is fine. Simplicity is Apple’s forté, and most do-everything remotes are horrid.

Subscription video service. Ok, this isn’t really a software feature. I think Apple did the right thing by avoiding subscription music. Video is another beast. Netflix’s video subscription is proving popular, at least among the tech crowd. Already multiple hardware boxes support it. If Apple could get the studios on board they could have a great offering.

Ok, I’m done.

Psystar, Shmystar Redux

A few months back I predicted a quick death to Psystar. They instead chose to fight goliath in court, which is indeed interesting to watch.

I’ve never understood why Apple treats their OS licenses as new products. If you buy a retail box of Leopard, you’re getting a new license for Leopard. Therein is Apple’s difficulty. It’s honestly hard for Apple to justify selling a new software product and not allowing it to be used on non-Apple hardware. Apple has proven it’s generally good for the consumer to have a single-vendor experience, but that’s a different story.

I understand the desire to use OS X on non-Apple hardware. I’ve considered it myself, specifically for low-end (home media) server solutions. The Mac Mini has no PCI expandability, and the MacPro and XServe are too much machine for the job. I have seven external firewire drives on my Mini – a eSATA RAID 6 box would be far better. Again, I digress.

Apple should make the OS included with the hardware as the only way to get a new OS license. That license to use the software would be inseparable from the hardware. All future upgrades would be that – license upgrades.

When you upgrade your Adobe CS2 to CS3, you don’t have the right to use the CS2 on another computer. You’re essentially adding the right to use CS3 to your existing right to use CS2 on the same computer. From a software publisher’s point of view this is the right way to go, and it’s fair to the user. If a user wants to use the second product on another computer, Adobe is quite justified in charging full price again. Apple would be justified in charging for a new license as well – this time for a new computer/OS bundle.

Apple’s products are the combined force of hardware and software. If the had a single license that covered both new Mac hardware and the included OS, there is no harm done to the user. Millions of iPhones have been sold this way, and I haven’t heard any complainers.

Upgrades would be as stated above – licenses to use a new version of the OS on hardware which was already licensed for an earlier version of the OS.

This would (in theory) allow for Apple to license other manufacturers to include the Mac OS, since the software license wouldn’t specify Apple-only hardware. Psystar could (in theory) bargain with Apple for the right to include the Mac OS with their hardware, and Apple wouldn’t need to change their licensing one little bit. This would never happen in real life. It would, however, be a much cleaner solution.

iPhone SDK, NDA, and October 17

Once upon a time there was an iPhone. Developers wanted to write code for the iPhone. On October 17, 2007, Apple announced they would indeed provide an SDK. The beta SDK was released a few months later, under a strict but understandable NDA. All was good in the world. SDK went final. The App Store was flooded with applications, several of which weren’t flashlights.

The NDA remains.

If you don’t know what I’m talking about, Google it. In brief: Apple wants me to write iPhone apps, but doesn’t want me to talk to other developers about how to write iPhone apps. I can’t learn, and I can’t share.

October 17, 2008, will be the one year anniversary of the iPhone SDK announcement. I would be thrilled if Apple celebrated that anniversary by dropping the NDA.

If the NDA remains in place, how should the iPhone Developer community celebrate this anniversary?

I’m NOT proposing that on October 17, those developers who wish to share their knowledge simultaneously post information online.

I’m NOT proposing that developers learning the SDK post their questions publicly.

I’m NOT proposing that authors who have eBooks complete but under NDA offer those books for sale.

I’m NOT proposing that developers begin to share code, work on joint open-source projects, release podcasts, or offer video training.

I’m NOT proposing that every iPhone developer simultaneously submit flatulence humor apps to the App Store. Please.

How should we celebrate in keeping with the iPhone SDK NDA stranglehold?

As Marie Antoinette famously suggested, we should eat cake.

[Update: This entry obviously sent shivers up Apple's spine. On October 1st Apple announced the NDA was coming down. It took them until October 23rd to officially do so, but I'm still happy.]

Oxford 936 – RAID5 on the cheap coming soon

This is cool:

http://www.softconnex.com/products/storage/OXUFS936QSE.html

Oxford’s 936 chip supports a four-drive RAID5 set, no drivers needed. I don’t know the price, but chances are it should allow for inexpensive RAID5 boxes in the very near future. FW400/800, USB, and eSATA in, supporting SATA drives. I’ll guess we’ll see empty cases in the $200-$300 range.

That’ll make lots of people (including me) very happy.

Must eat memory

I restarted my MBP for the first time in a week. It’s amazing how much faster things run when my usual set of (roughly) 12 apps aren’t open. I’m maxed out on RAM though, just 2GB in this first-generation MacBook Pro.

The current model supports 4GB, but I’m hoping the next generation supports 8GB. If so, I’m all over it, with a 17″ high-res matte screen.

I was happy to see that ScreenFlow, which I mentioned in an earlier blog, won an Apple Design Award at WWDC. Well deserved.

iPhone 3G Upgrade? – The App Store Question

★ The iPhone 3G Upgrade Question

For the rest of us who lack such common sense and are considering upgrading — yours truly included — it’s not a sure thing. The only significant differences between the iPhone 3G and the original iPhone are the 3G networking and GPS. That’s it. (Daring Fireball link & quote)

This has been going through my head, and is the common response whenever I’m asked if I’ll be in the lines for the new iPhone. I’m not even convinced there will be lines akin to last June 29. Nutty people like myself A) have a really good iPhone already, and B) know Apple will have plenty to sell on day two.

3G would be nice, but I haven’t missed it. I use my phone mostly for email. Despite the hype, email will rarely benefit from 3G. It’s just (mostly) text. Sure attachments will come in quicker but no big deal.

Most serious iPhone web browsing I do is within WiFi range. AT&T hasn’t added 3G to my local towers yet, so useless when elsewhere in town. Tethering would be great, but no tethering allowed.

I have a Garmin Nuvi 360 which is a great GPS unit. Thus far no traditional GPS direction software is on the iPhone 3G. We don’t know if the GPS chip is good enough, and some signs point to Apple refusing to even allow such software.

All the above is based on the existing iPhone software. The 2.0 iPhone OS upgrade is minor from a user application standpoint, and all iPhone users get it for free.

The key is the App Store. Will there be a killer app for 3G or GPS?

If someone creates a great app that, for me, demands 3G and/or GPS the scale may shift the other way.

3G I’m not so sure. The 3G Mystery App would demand high-speed access and would demand I use it when away from WiFi. That’s a possibility.

GPS intrigues me. Shortly before the iPhone 3G keynote I was telling a friend how I didn’t care if the new model had GPS or not. My Nuvi is great, and I don’t see the iPhone (a more generalized device) topping its capabilities. Frequently updated maps would be nice, but Garmin could do that too. The current pseudo-GPS tells me where I am, kinda-sorta. But I hadn’t considered what else a GPS might provide beyond getting me around town.

The first hint came from Apple itself, when I saw the iPhone beta OS included geotagging for photos. Hmmmm. Now the camera itself is just a tiny thing, and the pseudo-GPS I already have is good enough for how I’ll use it. I’d rather see true GPS on my DSLR. But I get the point. iPhone GPS isn’t about driving. It’s all about the apps I haven’t seen yet.

I really think the App Store, or more accurately the developers behind it, is the key to the iPhone’s leap to the next level of success.

So my current plan is to avoid the mall on July 11th, but keep a keen eye on the App Store.

WWDC: Phil Schiller introduces the Barenaked Ladies

Lots to say about WWDC08 (for starters, I wasn’t confused with the other Mitch Cohen this year). But I was able to get a decent video of Phil Schiller introducing the Barenaked Ladies at the WWDC party tonight. Well the audio stinks, as it was taken on my little digital camera. I thought this would be a good opportunity to join the digital revolution and post my first YouTube video. Edited and uploaded directly from iMovie ’08.If anyone wants a copy better than what YouTube provides, leave a comment or drop a note.Turns out they’re huge Apple/Mac fans. I hope others post video from their show as they were lots of fun. One amusing thought. When I figured out who was playing (not pre-announced, but they taped the setlist to the stage so easy to Google) my first thought was “Wow, they got a real band for this little party.” Then I realized – Apple is the number one seller of music in the country. They could likely get anyone they wanted with little effort.[Update - seems YouTube wants to bump my 16:9 movie up to 4:3. Something to look at later.]

Header files are stupid

I’ve been meaning to get this off my chest for years. Header files are stupid.

I view header files as abstractions of programming code. In Cocoa, they not only tell the compiler what lives in a class file, but also tells Interface Builder what objects and messages it can use. Plus they let a human quickly determine what a class does. So it serves a tremendously important purpose.

But they’re still stupid. They shouldn’t need to exist. My problem is a conflict with my general theory of duplication – nothing should ever be typed twice. If data exists in one form, and it is needed in another form, that’s work a computer should do. Not a human.

If I have a class file I, even in my lowly state of knowledge, can create a corresponding header file. This isn’t an exercise of the mind, it’s menial duplication. Copy/paste with finesse.

Thinking in the opposite direction, if I have a header file, I can create the template of the class file. Not the code guts of course, but the raw objects and methods.

So why do I need to do this? Why can’t the computer? In my travels I’m certain to run across situations that might not fit the 100% bidirectional header<->class correlation. So fine, provide some manual override if needed.

Interface Builder gets a partial pass on this complaint. It can write a basic class file structure from within, based on the GUI. But only once; after that you’re supposed to do all editing in XCode (although I have successfully merged code from successive rewrites). One step in the right direction.

So in my ideal world, the header<->class<->IB relationship would be automated and semi-transparent to the programmer. Create anything anywhere, and all the other stuff should just populate. IB would be a bit more complicated but I think it could be done. But header<->class is an abstraction relationship which humans shouldn’t be bothered with.

I fully expect to re-read this when I’m smarter and be thoroughly embarrassed.

Quick! Learn Cocoa in three weeks!

WWDC begins three weeks from yesterday. So I think it’s time to learn Cocoa. For real.

I’ve attended the last two WWDC’s. It’s not like I’m totally ignorant on Cocoa/Objective-C. I know the Mac’s innards rather well and can read ObjC/Cocoa code fine. I’ve messed around with all the intro examples known to mankind. I’ve done the Headstarts. I’ve gone through at least one book in moderate detail. I’ve written a few mini-programs on my own. But it’s all been to give me a broad knowledge, and I’ve long since achieved that goal.

I’m at the point where I think I can program in Cocoa, but when I open XCode I get the “uh ok what now?” look on my face. I can modify existing code but can’t quite remember where to start, simply because I only launch XCode once every three months. There’s a big difference between reading a language, and speaking that language.

It’s time for some “real” programming. To put pressure on myself, I’ll attempt to blog the next three weeks. I don’t expect many readers but someday, perhaps, I’ll look back on this and laugh at my early mistakes.

I bought the new Hillegass book, Cocoa Programming for Mac OS X, 3rd edition. I’ve gone through the first three chapters quickly. I plan to re-read Chapter 3, on Objective-C, before continuing. Lots to take in, plus I committed the sin of reading while not actually doing the exercises.

I scanned the book’s TOC and index. I was a bit surprised to see no mentions of QuickTime (seriously, it’s not in the index!). But that’s ok I suppose – fundamentals first.

Let’s go!

Psystar, shmystar!

MacRumors says… Psystar Demos ‘Open Computer’ on Video
What I want to know is, why does anyone care?

Since the moment Apple shipped Intel-based Mac, folks have figured out how to run OS X on homebrew PC’s. The only difference here is some folks are now selling those homebrew PC’s. Big freakin’ deal.

My prediction: They’ll sell a bunch of them opening day, then whisk into nonexistence with all due expedience. These barely specific PC clones will surely cause support and legal nightmares for the company, leaving their customers in a ditch. In a way it’s a nice business plan; they might make a few bucks before signing a settlement with Apple to close up shop.

News and rumors sites should stop covering this baloney, and simply wait to tell the inevitable footnote.

Technorati Tags: