NNSquad - Network Neutrality Squad
[ NNSquad ] The Un-Internet or the Next Level Internet?
[I originally sent a slightly different version of this message just to Lauren, but Bob Frankston's thoughtful post made me reconsider and address this to a broader audience.] I have very mixed feeling about the whole business of locked up vs unlocked systems (to coin some terminology, since closed and open have too many overlaid meanings by now). On the one hand, hell, I'm a hacker; I want to know how stuff works, I want to develop my own stuff, I don't want people telling me what I can and can't have on my system. On the other … I used Windows, and felt the incredible pain of trying to keep it working and reasonably secure. In fact, when I finally bought a "PC" for the family - before that, I had VMS Vaxes and a Unix box as my "home" machines - I got a Mac, entirely on the theory that I really didn't want to be a Windows system manager at home. Linux, or any other Unix, was just a non-starter. I have a Mac laptop and a Linux desk side at work, and use both all the time. The Linux box has some of the tools I need, but the Mac is a much more pleasant experience. The only iOS device I have is an iTouch, and I also have had a couple of Android phones. For all the noise about openness, in practical terms there is little difference to me between the devices. I have exactly one app that, at one time, existing on iOS but was then locked out (but still exists on Android) - WiFi Scanner. It does annoy me that Apple chose to lock out a whole class of useful applications, but having been on the other side, trying to keep some control over what undocumented features customers (internal and external) were tying themselves to and then insisting we continue to support forever, I can well understand Apple's insistence that only documented, supported interfaces be used. Hell, that's exactly what I told *my* customers. And there definitely is a payoff in usability and general quality. I have Zitrain's "The Future of the Internet and How To Stop It". It's on my list to read fully, but his basic refrain is that iOS (which at the time he wrote didn't even allow apps to be written) was indicative of a trend that was killing the "generative" side of computers and the net. But … you need only look at the app store to see just how much "generativity" iOS allows. Sure, there's tons of repetitive crud - but there are also a whole bunch of really clever, creative, useful apps. (Recent clever idea: An alarm clock that you can set to wake you a bit earlier if it's snowed.) So … what's really happening is that generativity isn't going away; rather, it's moving elsewhere in the stack. Prior to the late 1970's, machines were closed because they were too expensive to be anything else. We then went through successive waves of "openness". First we had the hardware hackers. But those faded as standardized architectures took over and also as more and more stuff went on-chip and you really couldn't build anything competitively interesting without a fab. Then we had creativity with low-level system software - everyone wrote their own OS and compiler and tools. But those got standardized, too - and the creativity moved to a higher level of abstraction. This is a natural, inevitable process, and it just keeps happening. No one will write the equivalent of sed or tar for Android, much less iOS - those are tools at entirely the wrong level of abstraction. (Besides, if you *want* sed or tar, they already exist.) Software for iOS (or Android) is about interacting with people and the web and the physical world around the user. Just think about that clever alarm clock app! This kind of software is just not comparable to what we hacked together to use from the command line on machines whose only tie to the real world was a clock. (Hell, the first machine I programmed on - an IBM 1620 - didn't even have a clock! It had no idea what the date or time was. It was years before machines made the transition from needing you to tell them the date and time to serving as your timekeepers.) For software at this level, the "openness" of the underlying platform is so many levels of abstraction down that it really makes no difference. What matters most is that there are effective, usable API's for the kinds of things that make up such software: Displays, sounds, user inputs like touch and soon speech, real-world inputs of many sorts. It's at this level that Android - and iOS - are both wide open, with Android perhaps a bit more so. (That wireless scanner: Apple refuses to allow it because they haven't (yet?) published an API to get at the low-level "real world of visible networks". In the Android world, you'd hack something together and people would live with the fact that it might break if the API's it was (perhaps improperly) were changed.) The element that's new, and most worrying perhaps, is the limitations on the App Store, iTunes, and so on. Winer talks about media, which are subject to some limitations but, really, he's exaggerating when he compares it to Disneyland. Books, movies, music - Apple sells stuff like that under pretty much the same rules as a mainstream bookstore, DVD, or CD seller would have a couple of years ago. Anything short of outright pornography - the kind "you know when you see it" - is available. Besides, you can buy media from anywhere - even iOS imposes no limitations on what media files you can import. The real issue is apps. It's one of the curiosities of this whole debate that Apple claims - and the results prove - that they are providing what consumers want by limiting what can go into the app store. This is the same claim made in response to claims that newspapers deliver too many sensational crime and celebrity stories instead of "hard news", that TV and movies are too full of sex and violence - or even that food makers supply "junk food" full of fat and sugar and salt. The fact is that we want the market to decide, but we're often uncomfortable with the results. There are no easy answers. For apps, one thing I've always been surprised no one picks up on is that *anyone* can register as an Apple developer for $99/year. Then you can build your own stuff and download it to your iOS devices. Of course, "your own stuff" is anything you compile from source - which if you're into OSS, is a pretty open-ended class. A bit less convenient that pre-compiled binaries - but really not so bad. If you never try to get approval to ship a product, any approval policies are just irrelevant. Doing this may or may not technically be consistent with Apple's TOS, but I doubt they'd care. As a developer, you've inherently bought in to the idea that you're running flakey under-development software - you're not going to expect final finished Apple (or good 3rd party) behavior. If the complaint is that $99/year is too much - well, then as G.B. Shaw said, we already know what you are - we're just haggling over price. (Personally, I'd love to see Apple come up with a "hobbyist" registration: Allow everything that a developer is able to do except submit stuff to the app store. It would be reasonable to charge a small fee - say $10/year - to defray administrative costs.) In sum: It can be difficult to separate real issues from the complaints of us old-timers who long for the time when writing some simple C command line program was the height of hackerdom. That world is long gone…. -- Jerry _______________________________________________ nnsquad mailing list http://lists.nnsquad.org/mailman/listinfo/nnsquad