Skip to main content

The App Store is evil. And I love it.

Apple's App Store is the perhaps the most brilliant innovation in software distribution ever. In case you've been living in a cave, the App Store lets iPhone and iPod Touch (and soon, iPad) users download and install apps directly on their device. This has absolutely revolutionized the way that software applications are marketed and sold. With a single tap you can download an app and the price is automatically billed to your credit card. The best part is that Apple gets to keep 30% of the app price. So, every sale of the $900 iRa Pro app nets Apple $270. They must be raking it in!

Before the App Store, installing apps on mobile devices was a huge pain. My old Windows CE PDA required that you download a ZIP file to your Windows machine (a deal-killer right there), unpack it, run a wizard, physically tether the PDA to the PC, go through several steps to complete the installation, and usually reboot a couple of times for good measure. Any time the PDA's battery ran out I had to create a new device profile in Windows and re-install the apps by hand. It was totally broken and it is unsurprising that the application market did not exactly take off on these platforms. On the App Store, a purchase is just a tap away. I'll admit to have bought quite a few iPhone apps on a whim, maybe because I was about to board a flight and wanted a new game to try out. Dropping 99 cents on a new app does not seem like a big deal at the time, but if I were to add up all my app purchases in the last year, the total is no doubt in the triple digits.

Of course, the App Store is also blatantly, totally evil. It gives Apple a monopoly on the software distribution channel. Now, I'm all for quality control -- it's nice that Apple is trying to screen apps to ensure some modicum of sanity, and perhaps to screen out trojans and such -- but this is going to have a profound effect on how developers and users interact in the future. Essentially, the App Store means that the person owning the device has no control over what software can and can't be installed on that device. This is a huge philosophical shift from our current model, in which the hardware manufacturer, OS developer, and application developers were all separate entities. Apple is doing a great job at consolidating power for its platforms, which of course includes not just apps but also music, books, video, and other media.

I'm a big Apple fan boy so I find myself somewhat unnerved by these developments. When it was limited to these little cheesy mobile devices like the iPhone, the totalitarian App Store model did not seem like such a problem. Now it's being expanded for the iPad, and it would not surprise me to see an App Store-like model for conventional desktops and laptops in the future. This has dire implications for freedom and openness, which I think is important for the future of technology. As much as I like Apple's products, I think it's dangerous to let one company decide what we can and can't install on a device. In five years when everyone is using iPads instead of laptops, how are Computer Science students supposed to tinker and learn to program on their own when they have to go through Steve Jobs' army of goons before they can even run their own code?

Of course, I'm eagerly awaiting my iPad delivery this weekend. And I can't wait to drop $5 for the iPad version of Flight Control -- it's going to be awesome!


  1. Matt,

    You really should get a N900. 100% of the benefits of the 'app store' with zero percent of the censorship. Oh, and did I mention it has a free version of flight control?

    -Zach G

  2. Do you really think that everyone will be using iPads instead of laptops in five years? The reason the iPhone and the iPod Touch have done so well is because they let you do *more* than other phones and MP3 players do. The iPad can do far less than a laptop. I don't see it as a laptop replacement at all, and will be surprised if it become anywhere near as popular as the iPhone.

  3. "VoIP News" - I deleted your comment as it was a troll. Unlike the rest of the Internet I intend this blog to be a place for intelligent discussion and won't let it reduce to idiocy. If you want to start a flame war, go somewhere else.

    Zach's comment is getting at the idea that there are alternatives to Apple products that (ideally) preserve more freedom for users and developers. I agree with this, but there's also a substantial tradeoff in terms of usability and functionality. None of the other mobile providers can hold a candle to the 150,000 apps for the iPhone. Now, most of those apps are, well, crap, but the iPhone is far and away the best platform, at least from a design point of view. So I'm torn on this one.

    Adam - I don't seriously believe that laptops are going away, but the question is what happens as our computing platforms become more closed, rather than more open, over time. It wouldn't surprise me to see a netbook/laptop released running a version of the iPad OS and using the closed App Store software model. It is a hell of a lot simpler for Apple to support and they rake in revenue on every application sale. The iPhone is just the beginning.

  4. "Unlike the rest of the Internet I intend this blog to be a place for intelligent discussion and won't let it reduce to idiocy. If you want to start a flame war, go somewhere else."
    --- I wonder what Harry Lewis, will think about this. (By the way, I support your act of deleting such comments.)


Post a Comment

Popular posts from this blog

Why I'm leaving Harvard

The word is out that I have decided to resign my tenured faculty job at Harvard to remain at Google. Obviously this will be a big change in my career, and one that I have spent a tremendous amount of time mulling over the last few months.

Rather than let rumors spread about the reasons for my move, I think I should be pretty direct in explaining my thinking here.

I should say first of all that I'm not leaving because of any problems with Harvard. On the contrary, I love Harvard, and will miss it a lot. The computer science faculty are absolutely top-notch, and the students are the best a professor could ever hope to work with. It is a fantastic environment, very supportive, and full of great people. They were crazy enough to give me tenure, and I feel no small pang of guilt for leaving now. I joined Harvard because it offered the opportunity to make a big impact on a great department at an important school, and I have no regrets about my decision to go there eight years ago. But m…

Rewriting a large production system in Go

My team at Google is wrapping up an effort to rewrite a large production system (almost) entirely in Go. I say "almost" because one component of the system -- a library for transcoding between image formats -- works perfectly well in C++, so we decided to leave it as-is. But the rest of the system is 100% Go, not just wrappers to existing modules in C++ or another language. It's been a fun experience and I thought I'd share some lessons learned.

Why rewrite?

The first question we must answer is why we considered a rewrite in the first place. When we started this project, we adopted an existing C++ based system, which had been developed over the course of a couple of years by two of our sister teams at Google. It's a good system and does its job remarkably well. However, it has been used in several different projects with vastly different goals, leading to a nontrivial accretion of cruft. Over time, it became apparent that for us to continue to innovate rapidly wo…

Running a software team at Google

I'm often asked what my job is like at Google since I left academia. I guess going from tenured professor to software engineer sounds like a big step down. Job titles aside, I'm much happier and more productive in my new role than I was in the 8 years at Harvard, though there are actually a lot of similarities between being a professor and running a software team.

I lead a team at Google's Seattle office which is responsible for a range of projects in the mobile web performance area (for more background on my team's work see my earlier blog post on the topic). One of our projects is the recently-announced data compression proxy support in Chrome Mobile. We also work on the PageSpeed suite of technologies, specifically focusing on mobile web optimization, as well as a bunch of other cool stuff that I can't talk about just yet.

My official job title is just "software engineer," which is the most common (and coveted) role at Google. (I say "coveted&quo…