Archives for : May2011

Bandwidth blues

So, this site is at 90% of bandwidth capacity for the month, something that’s never happened before. And that’s after I upped the quota.

I went looking in the logs to see what was going on and found some interesting items. First, whereas I thought my readership was in the hundreds (according to Feedburner’s stats on my RSS follows), awstats says my monthly unique visitors in the 8,000 – 10,000 range. And in the months when I got linked from Daring Fireball, it’s been a lot higher.

The real pressure is coming from people downloading the .zip files of the examples from my AV Foundation sessions at the Voices That Matter conferences. Because these zips include a small (20 MB) QuickTime movie as a source for the editing examples, they end up being disproportionate contributors to the bandwidth use.

Also interesting: a lot of the downloads of the sample code are coming from the .cn top-level domain. Users in China account for less than 3% of the blog reads, but 75% of the overall bandwidth, because they seem to be mostly interested in the sample code. Maybe that’ll change once WWDC is done and Apple has new samples up, assuming that Apple samples should be the first word in developer how-tos, and assuming they feel the need to put out new AVF sample code.

Anyways, so that I don’t go over quota and lose the site for the rest of the month, I’ve moved all the conference sample code over to the public folder of my Dropbox (referral link). I’ve also searched through the blog entries and repointed the links to these examples, so if you start from the blog entries and follow a link, you should be fine (whereas if you have an old link in the form, you can likely expect a 404).

Holiday weekend anime binge

Please indulge me a personal entry for the holiday weekend… this one isn’t going to have any technical content, so if that’s what you read my blog for, please move on to the next entry in your feed.

I’ve mentioned in a couple of my WWDC entries that a big part of any of my trips to San Francisco is shopping time in Japantown, where I can get music, manga, and merch to sate my interest in anime and manga.

I’m not the only developer-by-day who’s into this stuff obviously. Google’s Steve Yegge had an epic blog a few years ago with anime that he and his wife had discovered over the last few years. I’ve been thinking about my own favorites list for a while, and having finally codified a top 5, I don’t really have a great place to put it, short of posting here and directing Twitter and Facebook friends back to it.

So, really, if you’re not interested in a really long entry about Japanese cartoons, stop now. Because I’m just getting started, and I want to get this out of the way before my turn on iDevBlogADay comes around again.

Motivations, Moods, and Models

So why do I like anime? It’s a mixture of things: the storytelling styles, the moods (do Americans ever do bittersweet? Do we have any mood that resembles mono no aware?), the set of cultural values that I’d sometimes like to trade up to, and other times am relieved I don’t share. But still, I’ve been watching the stuff since I was 6 years old, glued to Kimba the White Lion on channel 50 on a Summer’s day in 1974.

Many people cite the unique cultural influences in anime, but it’s also very much a product of economics and technology. What first drew me to anime was the heavy use of continuity: a 35-episode show like Macross had a definite beginning, middle, and end, while American shows, even putatively “adult” dramas, hit the “reset button” every episode so nothing ever changed. It’s not that the Japanese were better storytellers, it’s that the Americans made their money in second-run syndication (reruns on local stations), which worked against continuity. Until the satellite revolution launched by Entertainment Tonight in 1981 (not kidding… look it up), syndicated programs were ferried between stations by courier, a practice commonly called “bicycling”. A week’s worth of tapes or film reels would make its way around a region from week to week: maybe Detroit, then Lansing, then Grand Rapids, then Traverse City. But you couldn’t count on the couriers making their appointed rounds, nor could you count on local stations to run episodes in the right order. And a show with a distinct ending might not be worth watching again to the average viewer. So… reset button, every week.

In Japan, reruns weren’t a major economic consideration, as programs were largely broadcast by national or regional broadcasters. Moreover, a big part of the economic model of anime was selling tie-in merch, like Gundam model kits. All this works in favor of continuity: if Heero’s Wing Gundam gets destroyed halfway through the series, only to be replaced by Wing Zero a few episodes later, then every kid in Japan is going to want to buy the new toy. Crass? Sure. But it made for better stories, so I’ll take it.

As with anything, 90% of anime is crap. But the other 10% does something for me that I rarely, if ever, get from Western TV and movies. So, considering TV, OVAs, and movies together, here’s my personal top 5.

5. Cowboy Bebop

TV Series (26 episodes) • 1998 • Available on DVD from Bandai • Not available for streaming

Bull: That is not an ordinary star, my son. That star is the tear of a warrior.
Child: What warrior is it?
Bull: A lost soul who has finished his battle somewhere on this planet. A pitiful soul who could not find his way to the lofty realm where the great spirit awaits us all.

So, after a big long rant about continuity, here’s a show that’s largely episodic, and is all the better for it. The 30-minute drama is a rare creature, not seen much on these shores since The Twilight Zone. It’s a pity, because it’s a format that’s well-suited to tight, fast, engaging stories, without the fluff of a B- or C-plot that exists largely so every member of the cast can earn their paycheck for the week (paging Ice-T…). The 30-minute drama introduces a problem and quickly gets about complicating and eventually resolving it.

The things I liked in Rod Serling’s taut morality plays are often on display in Cowboy Bebop, a sci-fi mashup that borrows from Westerns, film noir, samurai movies, and yakuza stories. The tales of four mismatched down-on-their luck bounty hunters in a multicultural Solar System diaspora, the “job of the week” format rarely turns out as expected: often the “bounty head” is a pawn in a larger game, one which our protagonists lose as often as not.

And through it all, a sneaky continuity is built up despite itself. The three main characters all have a backstory, one that inevitably catches up with them, particularly in the bittersweet (there’s that word again) “Speak Like a Child”, and the series finale “The Real Folk Blues”, the last act of which is probably my favorite TV ending of all time.

Funny comedy, satisfying action, and one of the most distinctive and effective musical scores a TV show has ever enjoyed… no wonder the writers at the AV Club are doing a rewatch of Cowboy Bebop over the Summer.

4. Rumbling Hearts

TV Series (14 episodes) • 2003-4 • Available on DVD from Funimation • Available on iTunes • Available streaming YouTube (13 eps.), Hulu (2 eps), ANN (2 eps),

Akane: Everyone is determined to keep the truth from you! Everyone is lying to you! Even I’m lying! This uniform is a lie! I’m not in middle school anymore, and Takayuki isn’t in high school! He isn’t studying for the exam… he didn’t even take the exam!

You want to know something else that’s rare in American pop culture? Any kind of a romance genre targeted at men. Romance is a trait found in other genres, but as a genre unto itself, it’s completely and (arguably) exclusively aimed at women here. This is something I’ve written about before, in that visual novels fill this gap.

Rumbling Hearts is the TV adaptation of one of the most popular of these VNs/games. It is also emotionally devastating. It starts off with the sweet if not saccharine romance of Takayuki and Haruka, prodded on by Mitsuki, their mutual friend. Mitsuki then feels left out, and delays Takayuki on his way to a date with Haruka. When he finally arrives, he finds an accident scene: while waiting for him, Haruka was hit by a car, and has been rushed to the hospital.

The story jumps ahead three years: former star student Takayuki is now a mere waiter at a chain restaurant, former champion swimmer Mitsuki plugs away as an office lady, the two of them are in a semi-functional relationship, and Haruka is still in a coma. And then Haruka starts to wake up. With Haruka completely oblivious to the passage of time, and too mentally fragile to handle it yet, her doctor asks family and friends to act as if no time has passed. Which means that, as far as Haruka knows, Takayuki is still her classmate boyfriend (and not a reclusive washout), and Mitsuki is still her best friend (and not her cuckolder).

This. Can. Not. End. Well.

It’s a premise that screams “soap opera”, but the ruse is only really in play for about a third of Rumbling Hearts’ runtime (episodes 5-10, with 6 being mostly a flashback), just enough to be a great hook, while barely managing to not stretch credibility too far.

Credibility is a key factor in this series, because its detractors dismiss the characters’ behavior out of hand. While there are moments of exquisite sublety, there are also big moments where characters actions are beyond the pale, most infamously when Takayuki hits his lowest point of guilt and self-loathing and tries to spirit the comatose Haruka out of the hospital to attend a literary event she would surely want to see. For a rational person, it’s completely implausible and hard to swallow… but at this point, Takayuki isn’t a rational person: he’s a recluse whose entire life has collapsed around him. If you’ve known people this damaged (alcoholics, addicts, PTSDs), or suffered through tragedy yourself, then I think you’ll empathize with Takayuki, Mitsuki, and Haruka. If you find it completely ridiculous and implausible, then I suggest you consider the meaning of the old saying “There, but for the grace of God, go I.”

3. Baccano!

TV Series (16 episodes) • 2007 • Available on DVD from Funimation, on Blu Ray from Aniplex • Available streaming from Netflix (all), YouTube (2 eps), Hulu (2 eps), ANN (2 eps)

Luck: It’s time for you to accept responsibility for what you’ve done. We found you a nice new home. You’ll all be staying at the bottom of the Hudson River.
Berga: Since I can’t just break your necks and be done with it, there’s really no other good way of finishing you scumbags off.

Cowboy Bebop‘s run on Adult Swim won over a fair number of non-anime fans who could enjoy the fast action and sly comedy. “Why don’t they make more anime like that,” they ask. Well, sometimes they do… but instead of picking it up, Adult Swim figured you’d rather watch another 50 episodes of Aqua Teen Hunger Force instead. You’re welcome.

What you missed is Baccano!, a show built of an utterly delightful insanity. Key to this is its warped structure: Baccano! has three marginally-related timelines, running in 1930, 1931, and 1932, which it tells simultaneously, meaning that characters share chronologically-established relationships that only fully make sense when you catch up to their how they’re established later. I mean earlier. See what I’m talking about? Oh, and it gets crazier: each of the three timelines starts with its ending, intercut, and then jumps back to the beginning. Oh, and some of the characters seem to be immortal, healing instantly from any injury, while others are trying to recreate an immortality elixir (cue the flashback to 1711), an activity that’s all too easily mistaken for bootlegging in 1930’s New York.

The show also has no readily identifiable main character. Instead, the opening credits identify 17 prominent characters, and that doesn’t even cover all the bases, due to some characters identities needing to stay secret for the first part of the show.

Baccano! is so twisted, the first episode largely exists to teach you how to watch the show, speechifying about how chronological order is the wrong way to follow the story.

So how is this fun? It’s because there’s so much going on, you have to just latch on to something you enjoy and roll with it, whether that’s the psychotic assassins, the young mafia prodigy, the goofy costumed thieves, the mysterious mute woman, or any of the rest of the unique characters. The action is fast, with a genuine sense of danger and menace, and quite a bit of gore. It would be repulsive if the show weren’t always offering the occasional saving grace, dangling tension while somehow assuring you that the right people would get theirs in the end (after all, if you want to spoil it for yourself, just mentally account for who’s still in one piece when you see the endings in episodes 1 and 2, and who from 1930 and 1931 is obvious by their absence in 1932).

2. The Castle of Cagliostro

Movie • 1979 • Available on DVD from Manga • Available on iTunes • Available streaming from YouTube, Hulu

Jigen: Who’re we chasing?
Lupin: The girl!
Jigen: That figures.

For sheer fun, I find it hard to top this movie, which marked the feature film debut of director Hayao Miyazaki and the second theatrical appearance of Lupin the 3rd, the “gentleman thief” hero of a long-running manga series (previously adapted into several TV series, which also featured some of Miyazaki’s early directorial work). It’s an eminently approachable film, picked by AV Club as a Gateway to Geekery, as it scratches the same sort of “popcorn fun” itch as Indiana Jones (the first three, anyways), or James Bond, a comparison made obvious in this reworked trailer AMV.

The psuedo-Bond trailer reminds me of how much action is in this movie, because to modern eyes, what’s striking about TCoC is how slow it’s willing to be. Lupin’s visit to the burned-out royal mansion, his intelligence-gathering dinner with Jigen, even his rooftop hijinks are willing to take it slow; the audience doesn’t need to be pounded with something exploding every four minutes. Instead, it lets us get interested in the plight of imprisoned Princess Clarice, the mysteries of the Cagliostro family and how they’ve cast a shadow over the world for centuries, the story of Lupin’s first visit to the tiny duchy… all these interesting bits are doled out and leave us eager to learn more of this charming place and its dark secrets. Indeed, it’s hard to think of movies with a better sense of “place”… there’s a sense of rightness to the layout of the Castle and its inner workings (the obvious aqueducts and hidden catacombs), the surrounding grounds, and the village, all of which lends a surprising authenticity.

Yeah, and beyond that, there’s some inventive sneaking around, stealing, snooping, chasing, breaking, falling, shooting, and yes, a fair number of explosions.

And here’s something surprising: the whole movie is on YouTube, for free, right now. Watch the first ten minutes, through the iconic car chase, and I bet you’ll be hooked.

1. Fullmetal Alchemist

TV Series (51 episodes) • 2003-4 • Available on DVD from Funimation • Available on iTunes • Available streaming from Netflix (all), YouTube (all [subtitled only]), Hulu (4 eps.)

Alphonse: We had no idea what the future would hold, but we knew there was no turning back. So, on the day we left, we burned down the family home, and all the familiar things inside, because some memories aren’t meant to leave traces.

If you remember that I used to do a podcast about this show, yeah, it’s a pretty obvious pick for my #1. It still holds up marvelously well, even in light of a reboot, Fullmetal Alchemist Brotherhood, which was more true to the original manga than the 2003 series, particularly because the first series only had about six volumes of manga to work from, getting them to about episode 27, before they had to find their own way to a conclusion to the quest of Edward and Alphonse — the former with a mechanical leg and arm, the latter a disembodied soul inhabiting a suit of armor — for the legendary Philosopher’s Stone that will make them whole again.

For my money, the first anime is a better story than its source material. While manga-ka Hiromu Arakawa looked for ways to broaden the scope of FMA to have a nice long run in the pages of Shonen Gangan, the anime faced the opposite problem: wrapping it all up in the last 20 episodes or so. So while the manga piles on more characters and locations, getting further and further away from Ed and Al, the anime draws more connections between the characters it already has, creating bonds that were never supposed to be there. And its better for it, because everything comes back to the lead characters, Ed and Al. For a show where family is one of the major themes, it’s more satisfying to have nearly half of the villains (Envy, Sloth, and Dante) have a familial relationship with the brothers, twisted though it is through the alchemic taboo of human transmutation. New lines drawn by the anime also connect rival villains Lust and Scar, and get great mileage out of once-throwaway characters like Rosé and Shou Tucker. Remember, when Anime News Network’s Zac Bertschy said of FMA, “once you hit the second season it’s all gravy”, he was talking about the material that is unique to the TV series. Talk about adaptation distillation!

But whatever version we’re talking about, FMA enjoys an ideal mix of fantasy, action, humor, and heart. There’s a deft balancing of the charming and the tragic, the sweet and the horrifying… so that the charm sets you up that much more for the loss, and then redeems with cathartic release later on. It’s also built on two major themes: family, as mentioned above, and “equivalent exchange”. While this exists in the story as a pseudo-scientific explanation for the seeming magic of alchemy, it also represents the show’s metaphysics. The brothers’ coming of age is an equivalent exchange, trading innocence for experience, naiveté for knowledge. And it’s the least annoying quest story I’ve ever seen: while achieving or failing to achieve the goal in this format is usually a huge letdown, FMA actually delivers the Philosopher’s Stone about two-thirds of the way through the series, in a most unexpected way, and in a radical change of the show’s premise, which puts it on the path to its eventual conclusion.

One more thing…

Enjoying these stories is one thing, participating in them is another. I’m amused and flattered and delighted to have been selected as one of the extras for the voice cast of JesuOtaku’s Fruits Basket audio drama, which is adapting the popular shoujo manga as a weekly audio series. As an extra, I don’t have a defined role, but will instead be popping up every now and then as a “Drunk Businessman 2”, “Office Guy”, or wherever else JO finds use for a 44-year old male voice. There are 15 male and 15 female extras, so I personally won’t have that much to do (I didn’t even read for any parts in episodes 2 or 3), but I look forward to finding a voice for a new supernumerary every now and then.

It should be a fun project. Check out her trailer. She’s got some great voices cast in the leads (particularly the female lead, Tohru, which couldn’t have been easy to cast). Given that the anime of this popular series is widely considered something of a disappointment, the show could fill a very significant gap for fans of the manga.

Oh yeah, I have to read that now too. ^.^

Also, Steve Yegge’s blog had a bunch of these Amazon Associate links, and while I’ve never done that before, I thought now would be a reasonable time to try them out. Hope they’re not too obnoxious…

Speaking at CocoaConf

Speaking announcement: I’ll be doing two talks at a new OSX/iOS conference, CocoaConf, being held in Columbus, OH on August 12 and 13.

I’m going to do two talks, introductory and advanced AV Foundation. Obviously, they’ll probably be a lot like what I’ve already done at Voices That Matter, except that the advanced talk I did in Seattle was about 1/3 recap, whereas this is all going to be in the same track, so it really can be a monster immersion in two parts.

It’s not settled whether sessions are going to be 60 or 90 minutes… I keep going long at VTM’s 75, so 90 would be fine. If that’s the case, then my two sessions are going to amount to a three-hour intro to AV Foundation. So we should be able to cover a lot of ground and get really deep into the tough stuff.

When the client’s happy…

Brief note about the project I worked on late last year, and in dribs and drabs since then. The XanEdu iPad app for reading the company’s digital course packs picked up a major award, selected as one of 10 Campus Technology 2011 Innovators Awards.

It’s only useful to (and usable by) college and grad school students whose schools use XanEdu as a vendor, so it’s never going to make the iTunes charts, so it’s nice to see it’s going over well. Mostly I worked on the reader functionality, including the profoundly tricky highlighting feature seen here:


If you wondered why I was complaining bitterly about JavaScript and DOM a few months back, now you know. In fact, our requirements for this feature were harder than the similar iBooks highlighting, since we have to tolerate overlapping highlights (since highlight and comment areas can be shared between users).

Instant-start music with HTTP Live Streaming?

Up today on Mac Rumors is the article Apple’s Music Streaming Service to Eliminate Buffering Lag With Locally-Stored Snippets?, which details a patent application for a streaming music locker service that makes music instantly playable, with no connection-time delay, by cacheing the first few seconds of the audio locally, and playing that while the network connection is negotiated and the buffer fills. From their summary:

In essence, local storage requirements can be significantly reduced by keeping only a few seconds’ worth of each audio or video file on the device itself. That content could begin playing immediately upon selection by the user as the remainder of the requested file is streamed in the background and seamlessly appended onto the locally-stored portion. The solution seeks to eliminate lag that can be generated by a streaming-only solution as the device builds an initial buffer of content to ensure smooth playback.

There’s a potential hassle here in perfectly timing the handoff from local file-based playback to getting the audio from the network stream (though of course a local buffer like an Audio Queue would help).

But it gets even easier. Assume your stream protocol is HTTP Live Streaming. Then you’re not opening and holding a socket connection, you’re just pulling down a series of 10-second segments of audio, and your cached audio is just the first n segments. You also don’t have to negotiate performance right off the bat, and instead just let HLS adapt during its refreshes later in the playback. And you don’t have to expect to hold the connection consistently, it just has to be available often enough for the .m3u8 refreshes and fetches of later segments to work.

Was not really paying attention to this music locker stuff before, but this idea sounds pretty clever.

The opposite of fail

I would tweet this, but I didn’t get a satisfactory answer the last time I asked, so let’s try again. In light of the 10 year anniversary of the first Apple Stores, answer this: has any Apple retail store ever closed down permanently?

And if not, why isn’t anyone talking about this? Given how much stuff has closed in the Great Recession, that’s a pretty extraordinary accomplishment.

Having a Moment

Please indulge me a Whiny Little Bitch moment. I will try to keep it short, but it will be petulant, jealous, and immature. You have been warned.

TUAW’s “RoadAhead is a different and clever nav app” talks up the new RoadAhead app, which finds upcoming services at US freeway exits. They’ll benefit from the exposure, and being free will certainly help.

But contrary to some of the reviews, the idea of an exit finder that figures out what road you’re on and what direction you’re going and only shows you upcoming exits isn’t new. That was the whole point of the Road Tip app I did a year and a half ago.

Obviously, I think that’s the way to go, and I’m glad RoadAhead does the same thing. I think it’s lazy when apps just do a radius search for this kind of thing, because that way you’ll find stuff that’s behind you, or is hopelessly far off the freeway. The idea of “finding stuff along a freeway” is a specific concept, and this app is true to it. Plus, figuring out where the road goes, winding back and forth, and dealing with things like name changes and state boundaries is a genuinely interesting problem to solve.

One point of difference is that RoadAhead can’t resist the temptation to pile on lots of icons and pinch-zoomable maps and other bling. As soon as you go down that road, the app becomes a distraction, and like so many others in this field, they explicitly say it’s unsuitable for use while driving:

One last, important thing – USING YOUR PHONE WHILE DRIVING IS A BAD IDEA (and in some states illegal). Hand your phone to your passenger and ask them to navigate. Please use good judgment when using your phone in the car.

I agree that using your phone while driving is a bad idea, but I still designed for it because I think people will do it anyways, regardless of what’s in your app description, EULA, or whatever. Road Tip uses spartan layouts, large text and buttons, and a design philosophy that everything should be accessible via one-thumb navigation. This frustrates my colleagues who say Road Tip would sell if I added various features, like the ability to save your search locations and drill deeper into them later (like remembering what’s at the exit when you pull off, so you can find stuff after you check into your hotel). My point was to keep the app as simple as possible for use while moving; once you’re off the road, you’ll be able to use the deeper functionality of other mapping apps.

So yay, I’m true to what I want my app to be… and I’m the only one who wants it like that.

The other thing is that RoadAhead is free, so I can’t figure how this app pays for itself. I decided early on that RoadTip couldn’t be ad-supported, because showing an ad to a driver would be unconscionably distracting. So I opted for a pay model.

And that brings up my other point about my exit-finding competitors. I’ve never downloaded them — I don’t want to get in a situation where I could willfully or inadvertently plagiarize them (this is why I also don’t read other people’s books on topics I’m covering) — but I’ve looked through their descriptions and legal terms, and I’ve never been able to figure out where apps like RoadAhead and iExit get their location data. That I use MapQuest is obvious; I’m contractually obligated to have my users accept the MapQuest TOS, and I have to put a “Powered by MapQuest” notice on any screens that result from their data.

So where are the other guys getting their data from? As I wrote in Bringing Your Own Maps, my research revealed that the map data providers’ terms of service for their free services always prohibited use in paid iPhone apps, either because they required callers be free and public web apps (Google Maps TOS, section 9.1.1(a)), or prohibited use based on GPS location (i.e., “present or alert an end user to individual maneuvers of a route in any way that is synchronized with the end-user’s sensor-based position along the route”, as in the Bing Maps TOS, section 2.i), or both, or something else.

This stuff is why I had to enter into commercial licensing with MapQuest (whose terms and API I liked best). Not sure what the competition is doing. Maybe they found some way to get free data legally, maybe they’re getting away with not… it’s not really my business I suppose. But if it does turn out I’m the only one playing by the rules, yeah, I’ll be a little pissed.

I keep calling them the competition, and I suppose that’s not accurate. I’m not competing at all… I’ve totally capitulated. I’m unlikely to put any further work into Road Tip, outside of possibly switching to the new I-AP subscription model that restores across devices (good for my long-time users, bad for me because it means sinking more time into this miniscule-selling app). If Ford ever followed through with opening their Sync / MyFordTouch API to third parties, I might make Road Tip work with it, but then again, I might do so just for my own use and not release it. It’s not something that I really feel like putting any further public work into.

OK, whining done. Back to your regularly scheduled blog.

Long past time to open FaceTime

Among the off-the-cuff potshots at Apple in this week’s Java Posse, there was a quality point: Apple still hasn’t opened up the FaceTime standard.

Make no doubt about it, Apple very clearly said they were going to do this. Steve Jobs himself said so at WWDC 2010, around 1:36:45 on the video:

Now FaceTime is based on a lot of open standards: H.264 video, AAC audio, and a bunch of alphabet soup acronyms. And we’re going to take it all away. We’re going to the standards bodies, starting tomorrow, and we’re going to make FaceTime an open industry standard.

“Starting tomorrow”? Nearly a year later, there’s no indication this process has started. The Wikipedia page on FaceTime says no draft has yet been published with any of the various standards bodies. Moreover, the Mac and iOS versions use a client-side certificate as part of their authentication, meaning that a third-party implementation wouldn’t be able to connect to the network of Apple FaceTime clients anyways.

For what it’s worth, I’ve filed a documentation bug against this, rdar://9407759 , duped to Open Radar. Don’t hold your breath of course… I filed rdar://4411484 in January, 2006 asking for the Enhanced Podcast format to be publicly documented… it was closed with a “thanks for your feedback” comment in March, 2007.

Whatever the holdup is, I’m not convinced it’s intentional, or permanent. Researching this, I found one of the only references to “FaceTime” in Apple’s documentation is for the iOS Core Audio AUVoiceProcessingIO audio unit, which is used for VoIP and in-game chat. The kVoiceIOFarEndAUVersion_ThirdParty parameter has the following documentation:

Set the farEndAUVersion field of the VoiceIOFarEndVersionInfo struct to this value if the remote end is a 3rd-party device following open FaceTime standards.

Moreover, it was added in iOS 4.2, which came out in November, 2010. So up to at least that date, third-party FaceTime clients were being planned for.

And if we can continue our Apple Kremlinology just a little further. There’s something I’ve noticed missing on the coreaudio-api list recently: the Apple engineers. They’re usually very generous with their time and assistance, which makes coreaudio-api absolutely essential reading for anyone using the API. But look at the hit counts for our favorite engineers, William Stewart (creator of CA) and Doug Wyatt:

Bill, 2010: 1,120 hits
Bill, 2011: 5 hits
Doug, 2010: 333 hits
Doug, 2011: 2 hits

When Apple engineers go missing on the lead-up to WWDC, it usually means they’re up to something. And this has been a long outage… what the heck are they working on?

Well, that’s one way to make WWDC cheaper

What do the following stores have in common?

  • Stacy’s Bookstore
  • Virgin Megastore (Market St.)
  • Disney Store (Union Square)
  • Border’s (Union Square)
  • Border’s (San Francisco Center)
  • Things From Another World
  • Bandai Store / Action Theater
  • PlayStation: The Store
  • Sony Style (San Francisco)
  • Microsoft SF
  • Games Workshop (Metreon)
  • Airtight Garage / TILT
  • Metreon Food Court

Give up? A few answers are correct, all of them related:

  1. All are located between Union Square and Moscone West, meaning they are at most a five-minute walk from WWDC.
  2. Some or all of them would be of interest to many WWDC attendees.
  3. All of them have gone out of business, mostly over the last five years or so (Microsoft SF closed in 2001, all the others are 2008 or later)

There are lots of ways to spin this — Bush recession this, business-hating San Francisco that — but the practical upshot is that you really don’t need to keep Friday afternoon free to do a little shopping. There’s nothing left in the Moscone / Market St. / Union Square area that I can’t find at my local shopping mall (Apple Store included), with the possible exception of a ten-minute stop at Ghiradelli to pick up sweets for my wife.

Personal upshot is that this just leaves me more funds to spend in Japantown, where I can load up on manga and Japanese music at Kinokuniya and other stores in the three-block J-town mall (and maybe see if there’s something unique playing at the Viz Cinema). As I mentioned in my earlier WWDC Tips blog entry, I usually stay in a B&B over near J-town, which means a longer ride to and from the show, but a nice escape from the crowd, and a chance to indulge my anime, manga, and J-rock fetishes.