A Big Move

First off, a heartfelt congratulations to my parents, who on Tuesday finally moved into their new house. They moved to western North Carolina about a month after I took off for school in Boston last year and have been living in my uncle’s one room guest house since then. Yesterday was their first day in the new place, and they’re thrilled. (It was also my Mom’s birthday. Happy Birthday, Mom!)

Where there’s smoke?


A nasty little hardware lawsuit came over the AP wire yesterday. Apparently some folks are claiming that syncing their Palm Vs fried their motherboards.

From the discussion on Slashdot, it looks like there might be some merit to the allegations. If you have a Palm V charging cradle connected via a serial cable to your computer, you may want to be careful. No word as to whether feeding the cradle through a serial-to-USB adapter (as I do on my home Mac) causes problems.

Closer Than You Think

This article on PhysicsWeb blew my mind. The findings are pretty significant:

  • Every site on the web can be connected to any other site via, at most, nineteen clicks
  • There is a numerical model that describes how likely a page is to be linked by another page (which the authors call “competitive fitness”: ki(t) ~= tß(eta), where the coefficient eta is described by the authors as “good up-to-date content and a friendly interface”

These are just the tip of the iceberg. It does suggest, pretty strongly, that whatever the “eta” factor represents, website authors are strongly encouraged to take advantage of it. From my experience, I’d say that more goes into “eta” than the authors of the site know. Some of it depends on having content that’s interesting to a particular website author. Dave tends to link to people who write about topics that are near and dear to him. I tend to try to link to “authoritative” sources. Is coolness part of “eta”?

Nineteen degrees of click separation


So about the 19 clicks: I got some anecdotal evidence about how closely related people on the web are to each other. Perusing one of my favorite online comics, Bobbins, I was surprised to see a familiar name under the headline “What is Good?”: Jen Sorensen. Jen was a cartoonist at “Virginia” the last few years I was there, and did cartoons for the Declaration, including one memorable one with a kid up a flagpole in his underwear muttering my fourth year catchphrase: “Oh dear Christ.” (In my defense, I’ll note that fourth year was my year to change life direction, get ulcers and mono, and almost die of food poisoning, so if I said that a lot I probably had provocation.) Anyway, Jen kept drawing and now has a collection of her stuff available. Go look… it’s really good.

Gettin’ Creative

I’ve spent a few days indulging my creative side (which is probably one reason I’m about a day and a half behind in writing for the site). Many props to “Esta” for graciously allowing me to make her story the front page on Friday.

Time Off


I spent the weekend hanging out with our good friend Shel in Portland, Oregon. She’s been there off and on since 1998, but we haven’t had the chance to visit her in her new element. It’s an appropriate word–she’s like a fish in water there. Portland is gorgeous, even more so than Seattle (albeit less dramatically situated), and feels … holistic somehow. It’s a city, but with lots of funkiness about it, one of the best bookstores I’ve ever been in, and huge greenbelts around and through it. Plus if you drive west about twenty minutes (and probably other directions too) you hit farm country!

We did some wine tasting in the Willamette Valley (some nice Pinot Noir), funked out at an outstanding little jazz club (Jimmy Mak’s), and hiked a bit along the coast. The last was quite dramatic. The winds were high and cold and the coast drops into the water precipitously, offering overlook views that look into lush forest and out to monadic rocks jutting up from the water like (Shel’s words) “sea creatures.” It was an excellent visit and kind of recentered me a bit.

Creative Language


One great thing I learned about Shel while I was down there. She’s growing her skill base beyond circuit and chip design and into software. So what computer language works for a seriously right-brained electrical engineer with a playful imagination and a highly developed artistic sense? Why, the only one with an Artistic License: Perl!

I’ve often considered computer languages as being equally valid for linguistic and cultural study as other languages. Computer languages are expressive and have their own semantic quirks. As I learn new languages I frequently find myself asking “How do you say this in Language X?”, where this is something I learned how to say in Language Y. And, just like real languages, I frequently find that the culture and usage of Language X, its creators, and its community, dictate how a particular thought and instruction are expressed.

Also parallel is the way that languages learn new ways to express ideas as they get exposed to new cultural artifacts. Perl has syntax to support object-oriented programming, something that’s about as far from its roots in sed and awk and other Unix command line arcana as you can get. I’m not a very good Perl programmer, and certainly don’t have a good grasp of the context of Perl language, but I think that programming object-oriented in Perl must be like speaking Pennsylvania Dutch to an “Englishman.”

The other thing I like about languages is that they support creative reuse. I’m sure that the Quechya people of the Andean regions of South America have no idea that a green skinned alien bounty hunter would be speaking their language to Han Solo (though I don’t know if “Boda, boda, Solo?” is Quechyan). Likewise, I’m sure that the Haya speakers of Kenya don’t know that they could have conversed with the pilot of the Millennium Falcon in Return of the Jedi (though his grasp of the language, judging from the one line translated, seems lacking: “One thousand herds of elephants are standing on my foot” indeed!)

Way Down in the WELL

Musical note: today’s title is a nod to a Tom Waits song, “Way Down in the Hole,” that is covered brilliantly on the new album from the Blind Boys of Alabama. But today I’m talking about a well, not a hole. Specifically, the Whole Earth ‘Lectric Link.

I heard New York Times journalist Katie Hafner speak on Friday about the WELL, that seminal online community about which one must remember not to speak in the past tense. It’s an interesting story: founded as a technology experiment and as a way to extend the reach of the Whole Earth catalog and review, it became the quintessential online community experience. Never a particularly solid business, it was sold a few times and is slowly fading today. Yet it holds the same position in the history of the Internet today as the Algonquin Round Table holds in the history of 20th century letters. Internet luminaries such as Howard Rheingold cut their online teeth on the WELL. John Perry Barlow hung out there when he wasn’t writing songs for the Dead and ended up cofounding the Electronic Frontier Foundation.

The part I wonder about is how do you recreate it today. It’s hard to find energy around online communities these days–there’s no “new WELL” springing up to take the place of the old, though people like Howard Rheingold have certainly tried.

I think part of this is the nature of community itself. Communities, to borrow a hideous analogy/phrase heard all too often in business plans and discussions about tech companies, do not scale. Above a certain point (by which I mean number of members), there’s no real way to build relationships between the participants that enable them to know each other, trust each other, have context around what the other person is saying, etc.

Also, there’s a problem of attention span. When the WELL was around, online destinations were monolithic. You went to the WELL and stayed there because there was literally nowhere else to go online. Today the problem is not that there’s not another community to visit, the problem is that there are too many. Every news site or content publisher has forums and places where you can “talk back” to the author or talk to the other readers. Even online comic strips have their own reader communities. But typically they’re small communities — 10 or 20 regular contributors, tops.

Then there are webloggers like me and my sister, and Dave Winer, and Doc Searls, and probably thousands of others. We develop voices online, and people come and read our stuff (sometimes). But except for very rare cases, there’s no public, user built community that grows up around these weblogs. How could there be? It’s all about our writing, our agendas.

It’s interesting. The WELL became a bustling online community at the same time that Americans in general were withdrawing from organizations in civic life. Are weblogs evidence of a further sundering of the fabric of community? Are we all calving away into individual isolated voices, floating alone in the freezing void of cyberspace?

All in the Family

Before today, this site has been badly named. It’s me, but I’m not the only Jarrett, and the site isn’t a house. I’m the only person writing and frankly I’m sure I’m boring people with all this stuff about XML-RPC and obscure world music.

Fortunately I’m not the only writer in my family. Starting today, my sister Esta will also be contributing to the site. You can always find her stuff here. This is a good thing on many levels, not least of which is that we’re practicing what we preach about keeping the Internet spirit of self-publishing alive. Welcome, Esta!

The site has been really slow recently. I’m thinking about moving to a more stable domain, but I’d have to pay money for that (unless MIT decides they want to set up a Manila server).

Emmanuel Kant: True, True


Those wacky guys at the Brickskeller are at it again. First they put up with the “Suspicious Cheese Lords” singing in the back room at our farewell dinner (including a Happy Birthday over a cell phone to Seth’s sister Cheryl). This summer they’re hosting evenings of philosophy and beer. Kant at the Brickskeller??? Makes me want to break into song:

“Emmanuel Kant was a real pissant
who was very rarely stable

Heidegger, Heidegger was a boozy beggar
who could think you under the table…

For a good discussion of the relationship between Monty Python and philosophy in general, check out the lecture notes posted by Gary L. Hardcastle, who was (at least in 1993) in God’s own state of Virginia (even if he was at the wrong school).

I don’t like Spam!


I’ve seen two items recently about preventing Spam that looked interesting. One was mostly only relevant to me and other web authors. The Email Address Encoder at West Bay Web turns a regular email address into HTML character entities to make it more difficult for spammers to pick your email address off your web page. (For those of you who don’t read Greek, a character entity is a command to the browser to display a particular character, either by using the common name of the character (e.g. eacute for é) or the number of the character in ASCII (e.g. 101 for e). So my published email address, toj8j@alumni.virginia.edu, would render as toj8j@alumni.virginia.edu (which if you view the source ACTUALLY looks like toj8 j@alu mni. virgin ia.edu).

Secondly, and far less geeky, CNET has an interesting article on behaviors that may result in spam. What surprised me was that posting on Usenet brought about more spam than most of the other methods. The article does not cover my area of concern, running your own website, but so far (knock wood) I haven’t gotten any serious amounts of spam by exposing my email address, even without using the character entity hack above.

History Repeating

Interesting press release from Microsoft about promotional media for the Windows XP launch. I guess there’s one member of the musical/artistic community who’ll be getting coal in his stocking from “Steve Jobs” this Christmas.

But wouldn’t you think that Microsoft would have learned from the Windows 95/”Start Me Up” controversy to read the lyrics before choosing a promotional song? “I’m eating and laughing and loving myself/I never watch TV except when I’m stoned…slip inside this funky house/Dishes in the sink/The TV’s in repair/Don’t look at the floor/Don’t go up the stairs…I’m achin’, I’m shakin’, I’m breakin’ like humans do.”

The radio edit version that’ll ship with the OS will replace those lines about watching TV with “We eat from our plates and we kiss with our tongues.” Oh, that’s an improvement… But it’s comforting to know that XP will still be “breaking like humans do…”

Sorry about the delay in posting today. In addition to work I was bringing a new contributing editor for the site up to speed. Watch for more news later.

Industry Update

Today’s posting is fairly disjointed, as I don’t seem to have the brainpower to offer a coherent writeup. But there are lots of bits and pieces:

Web Services


For those people who still want to know more about XML-RPC and web services, here’s a registry of publicly accessible “web services” that can be addressed using XML-RPC. It’s not exhaustive–there are ways to address Google, for instance, using XML queries that aren’t covered here. But it’s an interesting start.

Microsoft BraXP


Last week I pointed to a story about a Swiss Microsoft ad being pulled because it was too racy. That may have been a little hard to understand if you never saw the ad in the first place. Fortunately, AdCritic mirrored the ad. (Warning: AdCritic is a pretty high traffic site and so the download will probably be slow.)

Frank Willison


It’s too bad that some people have to pass away before you hear their advice. Frank Willison, editor-in-chief at O’Reilly, passed away on 30 July 2001. Today O’Reilly posted a tribute to him that included a long list of excellent quotations from him, including this one that seems particularly pertinent (even though I’m married and not writing code):

“Don’t spend the whole summer inside writing code. You have your whole miserable adult life to do that. I’m forty years older than you are, and I spend all my waking hours typing on a silly computer, answering emails from people I don’t know. If I hadn’t spent my teenage summers at the community pool flirting with Sue Jenkins (what a babe!), I’d be a miserable old goat now. Plan to have some fun this summer, in person. Note that ‘internship’ and ‘internment camp’ both start with ‘intern.'”

Fun with the DMCA


I’m almost afraid to start writing about the DMCA because it’s a long black hole of a no-win argument. Putting consumers’ rights on the one hand against the rights of content providers on the other would normally be no contest, until you put yourself in the content provider’s shoes. Still, I think there are some interesting points that can be made about the law without touching the rights argument. I especially like the point raised in this MSNBC article by Richard M. Smith of the Privacy Foundation:

“Virus writers can use the DMCA in a perverse way. Because computer viruses are programs, they can be copyrighted just like a book, song, or movie. If a virus writer were to use encryption to hide the code of a virus, an anti-virus company could be forbidden by the DMCA to see how the virus works without first getting the permission of the virus writer. If they didn’t, a virus writer could sue the anti-virus company under the DMCA!”

Hammered

I learned a new usage for the word “hammered” in my office. I kept hearing people saying that they were “totally hammered” on a particular day. Since they didn’t look drunk (hammered usage 1), I investigated further and found that they had a lot of meetings that day, very few of which connected directly with their project (usage 2). I think that too much usage 2 leads to usage 1, myself.

I’ll be pretty hammered (usage 2) today and therefore won’t blog too much. Fortunately this weekend is WOMAD USA, the big world music festival. It’s being held less than two miles from where I work. I’m especially looking forward to Isaac Hayes, Youssou N’Dour, the Blind Boys of Alabama, and Kathryn Tickell. Oh, and Peter Gabriel should be good fun too.

Great term for what seems to happen on a lot of these websites, including mine: blogrolling. (Thanks to Doc Searls for the term [hey, that’s blogrolling in action!]).

I have my own theories about why Microsoft’s Swiss subsidiary pulled its sexy ad for Office XP. Having seen the ad, the detail that’s missing is that the “Microsoft prompt” that appears is in response to a menu item chosen from a Smart Tag popup. Now that’s the missing “killer app” for Smart Tags: pr0n.

Interesting “spam bake-off” on CNET today. Personally, I take advantage of free email accounts and use them wherever I feel I might have spam exposure risk. Then I check them until I have my answer and move on.


Also: I used a new method to post yesterday’s story and it screwed up navigation via the calendar. To get to the stories for the last couple of days, you may want to use these links:

Wednesday: “Ni!”
Thursday: “A Steampunk Party”

A Steampunk Party

Update 2:25 pm: The appeals court just struck down Microsoft’s petition for rehearing on Finding of Fact 161–that it had illegally co-mingled IE and Windows code.


My sister sent me an email reminding me of a passion that I share with my family for obsolete technology. I visited the website and was blown away by what was available on the website–and by some memories:

ROUGH AND TUMBLE ENGINEERS HISTORICAL ASSOCIATION is a unique museum in that we don’t clean the dust off our artifacts – because we’re often out kicking up the dust WITH them. During our show days almost everything on the grounds is run! And during our annual Threshermen’s Reunion EVERYTHING on the grounds that will move under it’s own power can be seen in our daily Parade of Power, a ninety minute parade of antique and obsolete machinery and automobiles.

Talk about steampunk. In a corner of Lancaster County, PA, there’s an organization devoted to keeping antique machinery operating–not Commodore 64s, not Ataris, but steam engine tractors. They have several events a year that can only be described as mindblowing and headsplitting (steam engines aren’t quiet). My great-grandfather, Arthur S. Young, was instrumental in getting the association going. His idea was to keep the old machinery that he loved going and expose the wider public to it so that they could experience the sights, sounds, and smells of these well-built, well-loved machines.

Along the way, though, something funny happened. As the shows went on, the appeal broadened. People started coming for other reasons than the steam engines: I remember seeing people’s crafts, meeting family, watching kids ride model steam trains, eating fried dough made on an antique machine, and generally having a great time. The steam engines were fantastic, and the Rough and Tumble guys had built a community of people who were really passionate about that technology and about keeping it working. And then there was a second community around the first one who weren’t passionate about the steam technology per se, but who enjoyed the heck out of the party and made their own contributions to it in completely different ways.

The Moral, in Geek-Speak

Rough and Tumble is a platform. It’s a hardware platform–serious hardware. Steam engines are the key platform technology. It took people loving the key technology, plus people who dug the platform and could add to it in creative ways, to make the platform a party–a community that lots of people could engage with and which made them all happier.

And me? I’m part of the family that started this party. I just happen to live on the software side.

PS — Steampunk is a term used to describe science fiction written in the historical past. It takes the attitude of cyberpunk and puts it in a world where the gears are big and the engines are loud. I was introduced to steampunk by The Difference Engine by William Gibson (who coined the term cyberspace) and Bruce Sterling.

PPS — I’ll be updating my great-grandfather’s genealogical record shortly to include some of this information, and pointers to the Rough and Tumble page.


Also: I used a new method to post a story and it screwed up navigation via the calendar. To get to the stories for 7/25 and 7/26, you may want to use these links:

Wednesday: “Ni!”

Thursday: “A Steampunk Party”

Ni!

Sad but true: Nabokov story submitted anonymously to online editors. Asinine criticisms ensue.

New story: Virii and Ecosystem Health. Why does everyone use Outlook? Really?

I saw the re-release of Monty Python and the Holy Grail last night. It still has the nervous lunacy of a first time film. The rerelease didn’t really clean up the visuals all that much–the picture quality simply wasn’t that good to begin with. I saw it in a theatre with about 12 other people. Quite a different experience from college, in a packed lecture hall with a bunch of people raging drunk reciting the script a step ahead of or behind the action. But still a very funny film:

Oh, I am afraid our life must seem very dull and quiet compared to yours. We are but eight score young blondes and brunettes, all between sixteen and nineteen- and- a- half, cut off in this castle with no one to protect us. Oooh. It is a lonely life: bathing, dressing, undressing, making exciting underwear.


Also: I used a new method to post a story and it screwed up navigation via the calendar. To get to the stories for 7/25 and 7/26, you may want to use these links:

Wednesday: “Ni!”
Thursday: “A Steampunk Party”

Who do you want to see your secrets today?

Found Clay Shirky’s article on Hailstorm again. Six weeks later, it’s still a good article on the technology and the issues from a non-Microsoft developer’s perspective. I’d challenge his last section on page 3. Maybe they aren’t tying Hailstorm to the client as deeply as they have in the past. But what about the server?

Today’s essay: Single Sign-In. I’m starting to think harder about this whole single sign-in thing. I don’t know whether it looks more like a format war or a business model war, or just a land grab.

Q: What do common sign-in on the Internet and Katharine Graham’s funeral have in common? A: This man.

Change in format today: I’m going to start to post big long articles like last Thursday’s piece on Apple in a separate place. Cleaner and easier for the short attention span crowd. In return, I’ll update the home page more frequently and post small tidbits during the day. It’s more true to the blog style, but it’s also the only way I can keep the site current. Five minute updates are a little bit easier to do than one hour essays.

Have you seen “Where do you want to go today?” recently? Seems to have disappeared from Microsoft’s ads and online presence.

Evolution

Quick note: Good funny criticism of yesterday’s article on Jim Roepke’s site: How to bury an important article about an important announcement that was buried by Apple.

So, evolution: This is a note in two parts. Part is from my writing side and part is from my technical side. You can read one and skip the other if you choose.

The Writer’s View

I used to write quite a lot. When I was in high school, I wrote really bad poetry and science fiction. In college, I wrote marginally readable poetry, humor, and music reviews, as well as a lot of English papers on Beowulf and 20th century poets.

Then I graduated and moved to Northern Virginia to work as a consultant, and something changed. I still wrote a lot, but now it was code. Eventually I started documenting the software. Then I started writing design and requirements specs for the software. Then technical support documents. Toward the end, I wrote a lot of technical architecture documents, documenting technical approaches for the other members of my team. But I didn’t write anything for myself.

I also started my own web site a few years ago. Originally I hosted it using Personal Web Sharing on my old 90-MHz Power Mac. It was slow but it worked. But most of the content was static on my site and I updated it only about every six months.

I went to school and moved my static web site to an MIT server. It was more useful now — it could reliably be accessed by other people and had my resume on it. But I still only made changes about every two months. And writing for it was still pretty painful.

This summer I remembered this site that I started on editthispage.com a few years before. I was lonely and aimless most nights after work. I decided to start trying to write a couple of times every week. And a funny thing happened: writing got easier and my writing got better. It’s like anything else, you have to practice.

The Technical/Platform View

I built my first personal web site with Frontier, which I admired for its depth as a programming system. I still found it to be a bit difficult as a content management system for the Web, though (open up the software, write a story, publish the web site. Make a change to the template and iterate a few dozen times until it looks right — this one is an especially slow process on a 90 MHz system).

When I got to MIT, I couldn’t run Frontier on Athena (the custom Unix system that’s the academic computing environment at MIT), so I rebuilt the static web site using Adobe’s GoLive and threw it up on an MIT server. GoLive is a nice product. It feels like PageMaker for the web — and by that I mean the recent, industrial strength PageMaker product, not the one that everyone used to make crappy newsletters in the late 80s that looked heinous. You can do some really nice web design using GoLive and it will view reasonably well across multiple browsers. But it’s not a content management system and it’s hard to update frequently unless you’ve got a live wired connection all the time.

Then I came back to this site that I started a few years ago as a lark. Being able to add a new page through my browser, anywhere, turned out to be the killer app. There are other people who have known this for a few years (Manila’s been around for a while), but it took me a while to get the time to mess around with it enough to appreciate its value. Why was doing this important? There are browsers everywhere. When I had an idea to write about something, I could find a browser and sit down and write about it. Practice, practice, practice.

What’s next? Well, I like Manila for editing a web site but sometimes it gets in my way too much. To load a new page, I have to press a button, wait for another page to load, press another button, type or paste in my text, and save. I like Radio Userland but I don’t really want to lug a client that full featured around all the time. Sometimes like now I just want to write a piece in a text editor. But cut & paste doesn’t feel cool. What about a piece in the system that takes my writing out of BBEdit or TextEdit and just throws it up to the web page without my having to open a browser or Radio? It’s possible with SOAP and XML-RPC, and with the system frameworks in OS X.

One of the things I’ve learned this summer is that you can make a big difference in people’s lives if you’re willing to work with them where they want to work. I think SOAP and XML-RPC are what gets us there from a software perspective. And that kind of integration makes it easier for someone like me to keep practicing and keep updating.

Searching this Site

Okay, so the info below is interesting, but largely out of date. Here’s what you need to know about searching this site:

  • I use Google search. Google indexes the site pretty aggressively.
  • Google has search results for both my new and old domains. Because of some configuration issues, you won’t get a radio button for my old domain in the search results in Google. I’m working on it.
  • I’ve added Feedster search, but until I get a way to give them one honkin’ massive RSS feed with all my old posts from 2001, it only finds posts from about April 2003 onward. But it does provide results sorted by date!

Yesterday I tried to add Google Search to my web site.

There were some issues.

For one thing, as I noted, the graphic caused IE to flag my site for a privacy violation. For another, it turns out that Google indexes this site so infrequently that none of my newer content is available. So while it may be a kick that my copies of Lee Keath’s Hoover strips with Reggie Aggarwal show up really high in Google, it doesn’t help the site’s users.

Fortunately, the good folks at UserLand who built Manila (the software that serves this site) also built an open search engine for this server. So the site has been indexed by this search engine all along. Now I’ve added an input link to allow you to use that search engine to find my site.

The only thing I’d like to fix is that the search results take you to their page, which is a little jarring (different look and feel). But it works.


For a while I’ve been looking at my referral logs and have been amused by the number of referrals for various keywords that I’ve seen. The list below is mostly for my information as I track the referral hits, but you may find it interesting. Unless otherwise noted, all referrals are from Google.

Apple: How to bury an important announcement

A lot of people, Steve Jobs probably among them, were disappointed in today’s MacWorld keynote address. Lackluster new iMacs and another two months for Mac OS X 10.1 (including DVD playback and speed boost) were the “highlights.”

But Dave Winer pointed out something very important I missed (primarily because I joined the webcast after it had been announced. Give me a break, it started at 6 am PDT): Apple will embed SOAP and XML-RPC in Mac OS X and make it accessible through AppleScript.

Why is this so important?

Someday I’ll write a good description of what a major turning point XML-RPC represents. For now, the best way to describe it is this: It’s a universal protocol that works over the web that describes how applications talk to one another. It’s the basis on which this web server and the engine I use to edit it operate. As SOAP (Simple Object Access Protocol), it’s the basic syntax that Microsoft is using throughout their .NET initiative.

It’s the most important thing on the Internet since HTML. HTML allowed people to share information easily and enabled people to get connected to each other on the Internet. Just as HTML described how to allow people to access information in an intuitive, graphical way, so XML-RPC describes how to allow different computer programs to talk to each other across the Internet. It’s scalable and robust, it’s an emerging standard. And Apple is baking it into the OS at a very low level.

Microsoft’s vision for .NET is information access any time you need it, on any device, in any format. Dave Winer’s vision, along with the other folks working with him on XML-RPC, is the same, only they want the core services to be distributed across the community rather than all running in Redmond. And Apple wants its Mac users to be able to use AppleScript, its intuitive programming language, to wire programs running in Mac OS X to web services speaking SOAP and XML-RPC anywhere on the Internet.

Why is this important? Because this is where the next generation of killer apps will live. Bill Gates thinks so: he’s staked the future of Microsoft on it. And Steve and the gang have taken that bet and ensured that Mac users won’t be left behind.

So am I mad at Apple after the keynote today? Yes, but not because of hardware or because I have to dual-boot into OS 9 to watch DVDs until September. I’m mad at Steve because he spent time in the keynote showing screensavers and talking about the megahertz myth instead of articulating why this is so important. It’s something that’s hard to demo, but I guarantee this will make more of a difference to your life as a Mac user than the hardware will.