A quick update on upcoming conference talks…

  • Next Saturday, February 19, is MobiDevDay Detroit at the Compuware building downtown. I’ll be doing a talk on iOS Multimedia, a high-level overview of the various media frameworks (AV Foundation, Core Audio, Open AL, Media Library, etc.), with an emphasis on the practical questions of “which one do I pick for my application”. They’ve asked me to do the talk twice, once in the morning and once in the afternoon, so feel free to check out the other iOS talks from Dave Koziol, Chris Judd, Henry Balanon, et. al.

  • In April, I’ll be in Seattle for another round of the Voices That Matter: iPhone Developer Conference. This time, I’m doing Advanced Media Manipulation with AV Foundation, which will cover advanced AV Foundation topics like capture-time media processing, editing with effects (and exporting them), sample-level access, etc. It’s kind of a follow-up to the AV Foundation intro I did at VTM in Philly in the Fall, except that we can’t assume that attendees were there for Philly, so I’ll probably start with an abbreviated AV Foundation intro before getting into the rough stuff. I’ve also told the conference organizers that I could do the intro talk if a spot opens up that they need to fill, though I don’t actually suspect that’ll happen.

  • I’m going to update the blog’s right colum with a badge for the conference as soon as I post this entry, but in the meantime, here’s a registration code for you: SEASPK2. That’s good for $100. If combined with Early Bird pricing (ends Feb. 25), you’re in the door for $395. Which is, like, what, a quarter of what you’d pay for WWDC? Plus, hey, smaller crowds, indie speakers, Seattle (Shorty’s is two blocks from the conference hotel)… it’s just packed with win.

Annnnnd… now I need to get cracking on my slides for MobiDevDay in a week…

Apropos of nothing other than, I guess, the rumored dates for WWDC 2011, a colleague whom I met at Voices That Matter asked me for some WWDC tips.

My response got long enough that I asked if it would be OK to repurpose as a blog entry. Nothing here that’s particularly unique or special, I suppose, but he said he wasn’t finding other WWDC tips, so maybe this is a topic that needs to get kicked around the Mac/iOS blogosphere.

  • SELLOUTS: Rapid conference sellouts are becoming the norm. Last year’s WWDC sold out in eight days. CodeMash sold out in less than three. Google IO sold out in under an hour. If you’re serious about going, you’d better plan on registering as soon as it’s announced. The way things are accelerating, I bet WWDC will sell out in a day this year.
  • HOTELS: Check with someone else, because my approach is peculiar. I’ve picked up the habit from a colleague of mine, a former O’Reilly and Prags guy, of not staying down in the Moscone area, but rather partway across town at a small bed-and-breakfast called The Queen Anne near Japantown, and then walking a block each morning to catch a MUNI bus to Union Square and walk southeast from there past the Apple Store, Market St., and the Metreon to Moscone. It means going back to the room is impractical — when I go downtown, it’s for the whole day — but that’s never been a problem for me.
  • DINING: You get breakfast and lunch every day at Moscone. It’s about what you’d expect from meals for 6,000 people, but you’re at WWDC for the knowledge and the company, not the dining. You’re on your own for dinners. There’s a ton of stuff in the area there, especially if you walk north to Market St. or Union Square. A lot of people go across the street to the Metreon’s food court to escape WWDC, but I find it mediocre and crowded… instead, go north to the Emporium mall (you can enter through Bloomingdale’s, which you can see from Moscone West), which has two food courts, the larger one with some real variety and not too expensive.
  • EVENING EVENTS: The ADC awards are OK. I’ve never hung around for “Stump The Experts”, but that’s apparently a charming tradition. Thursday night bash is usually a lot of fun… more or less unlimited food, plus drink tickets, so hold off eating until you get there.
  • NOTES: In 2008, they didn’t post videos or slides until five months after the event. So, in 2009, I went in and took copious notes in every session… and then they released videos and slides the next week. In 2010, the videos and slides were made available to non-attendees for free, which was a first. If you like note-taking, get SubEthaEdit — there is a tradition of real-time collaborative note-taking at WWDC, and many hands lighten the load.
  • LABS: The labs are the most underappreciated and underused part of WWDC. When else are you going to get face-to-face access to Apple engineers? When you get big code questions or “that just bugs me” problems, set them aside and whip up a simple code example to take with you, and you can get the people who write the system and the libraries to help you. The years I went, I got massive pain relief on Game Kit and Core Audio from their respective labs.
  • OTHER POINTS:
    • Don’t lose your badge. They won’t replace it.
    • Moscone is within walking distance of BART, which runs to the airport. Depending where you stay, you almost certainly don’t need a car (and with parking prices in SF, you don’t want one). If you stay far from Moscone, arrange for a shuttle bus like Lorrie’s/Go/SuperShuttle to get you from the airport to your hotel, or use taxis. Moscone has a bag check on the last day if you want to check out from your hotel and leave your suitcase at the conference for the day.
    • Leave some time for shopping Union Square and Market Street, if you’re into that kind of thing (though some of my favorite shops have closed in recent years)
    • If you’re not in line for the keynote by 7AM, you’ll probably end up in an overflow room, watching it on video. I don’t have a problem with this, but some people do.
    • WiFi at WWDC is remarkably good. Many sessions also have power strips throughout the room. If you need to download something big (like an SDK that gets released that week), the lunchroom on the first floor has ethernet drops that are crazy fast (do not try to download a 2 GB SDK off wifi).

Anyone else have some good tips? Please add comments.

In economics, rent-seeking occurs when an individual, organization or firm seeks to earn income by capturing economic rent through manipulation or exploitation of the economic or political environment, rather than by earning profits through economic transactions and the production of added wealth.
Rent-seeking, from Wikipedia

Most of my tweets today have been about in-app purchase, first with the news of Sony’s Reader app being rejected on the basis of its purchase model, and then Apple’s clarification / de facto policy change stating that apps that offer user-purchasable content must offer Apple in-app purchase in addition to whatever other purchase methods might be available.

Matt Ingram at GigaOM nearly nails the issue in a section header:

The Landlord Will Get His Share

What Apple seeks to collect is rent, specifically monopoly rent, the ability to extract excess payments not as a consequence of a mutually-beneficial trade, but because it owns the damn store and it sets the damn rules.

I have long argued that in-app purchase can be a pretty raw deal for developers. Slide 50 from my Voices That Matter (Seattle 2010) talk, In-App Purchase: Best/Worst Thing Ever puts this in perspective:


App Store In-App Purchase
Product Hosting
Audit Trail
Purchase UI
Purchase Restoration (sometimes)
Local Purchase Storage
Apple’s Cut 30% 30%

To clarify what I mean by each of these:

  • Product Hosting: Apps are hosted on Apple’s servers. In-App Purchases go on your server (unless they’re bundled with the app and simply unlocked)
  • Audit Trail: The audit trail for an app purchase is entirely verifiable through Apple. With In-App Purchases, the developer gets a digital receipt that he or she needs to log on their own server, after validating it against an Apple webservice.
  • Purchase UI: For apps, the description, screenshots, user ratings, pricing, and purchase process are all handled by iTunes or the iOS App Store. For I-AP, the developer needs to create a UI for all of this, beyond a simple “are you sure” alert provided by Store Kit once a purchase is initiated.
  • Purchase Restoration: Users can easily re-download their old apps to a new device for free with iTunes or the App Store, once they’ve logged back into their iTunes account. For In-App Purchases, developers are expected to provide restoration of “durable” and “subscription” products, but Store Kit’s -[SKPaymentQueue restoreCompletedTransactions] method only restores the former. There is no programmatic way to discover old subscription purchases on a new device. There’s also no way to get an identifier for the iTunes account, so you don’t even have anything to associate with the subscription purchase on your own server.
  • Local Purchase Storage: iOS is responsible for storing the apps on the device’s file system. The developer is responsible for storing in-app purchases, ideally in a form that will survive crashes, wipes and restores, etc.

If you sell a $10 subscription, you do almost all the work, and yet Apple still feels it is entitled to a $3 cut for doing little more than running a credit-card swipe. Obviously, I don’t think they earn it.

If Apple’s now going to force the issue, it’s truly a sad and ugly moment for them and for all of us. How far does this concept go, after all? Consider websites that have premiere memberships, like ESPN.com or Crunchyroll. Both of them have dedicated iOS apps, since the full functionality of their Flash-heavy sites don’t work in Mobile Safari. Is Apple going to insist that these memberships be made available for purchase by I-AP as well? Or will users not be able to use iOS devices to access the online content they’ve paid for? How is that good for the platform?

It’s enough to make you hope that content providers switch to an ad-supported model and let Google make all the money. That would be just desserts, with a cherry on top.

« Previous Page