2000 Nickels

An option for change.

OS X Review Links

John Siracusa has written epic reviews of OS X since Developer Preview 2 in 1999. They are a fantastic resource, offering in-depth analysis of the interesting bits.

Let’s take a quick look at how each review links to itself and to previous versions. I’m only using links in the review body and excluding the page navigation and other extra links. While we could make some flashy plots, I channelled Edward Tufte and just left it as a table of numbers.

Link Target
10.9 10.8 10.7 10.6 10.5 10.4 10.3 10.2 10.1 10.0 DP4 DP3 GUI DP2 Total
10.9 23 33 30 13 14 12 3 3 3 4 0 0 0 0 138
10.8 21 62 19 16 8 3 1 1 1 0 1 0 0 133
10.7 40 20 27 17 3 4 1 2 2 2 0 0 118
10.6 51 54 15 6 1 2 4 0 0 0 0 133
10.5 32 33 5 4 1 2 0 0 0 1 78
10.4 13 9 1 0 4 0 0 0 0 27
10.3 9 15 4 3 0 0 1 0 32
10.2 10 12 4 2 0 0 0 28
10.1 35 32 0 0 0 0 67
10.0 26 3 2 2 2 35
DP4 13 9 4 3 29
DP3 5 1 0 6
GUI 2 5 7
DP2 0 0

The 10.9 Mavericks review has the most internal links, 138, but that is fairly similar to the last four reviews. It references the older reviews back to 10.0 Cheetah but leaves off the Developer Previews.

My thanks to John for writing the reviews, and Ars Technica for maintaining the archive of the previous reviews.

A Podcast With Merlin: SodaStream, BULKBUG, Comics

I’ve found a newpaper clipping that might be of interest to fans of Back to Work, Roderick on the Line, and the many other podcasts with Merlin Mann.

Here’s a transcript:

A podcast with Merlin: SodaStream, BULKBAG, comics

Merlin Mann’s podcast routine is both predictable and outrageous, if not apocryphal, according to Bluetoot’s biography: Being Creepy: Stalking the Wiley X-Mann.

0:00 — Big week?

0:05 — SodaStream seltzer with the morning blogs, BULKBAG.

0:08 — comics.

0:11 — more seltzer, BULK-BAG.

0:15 — coffee, streetcar.

0:18 — comics.

0:20 — orange juice, galette.

0:23 — comics.

0:27 — comics.

0:32 — comics.

0:35 — coffee, more BULK-BAG.

0:40 — more ice in the seltzer.

0:42 — comics.

0:44 — disappointed sigh.

0:45 — Squarespace for “some-thing you like” — Heineken, two widgets, two designers, fries, a plate of templates, coleslaw, a blog salad, a double order of HTML wankery, Kobayashi Maru, ice cream, Lil’ Ryan, BULKBAG, another Heineken, comics and, for the walk home, a snow cone over which seltzer is poured.

0:48 — comics.

0:50 — fake name drop.

0:52 — GTD (copyright DavidCo 2001), comics, Buddha.

0:55 — comics.

1:00 — Merlin ready to talk.

1:03 to 1:30 — Care, comics, GTD, SodaStream, coffee, Hei-neken, text files, starfish phone, BrianMichaelBendis!, working in restaurants, Zen.

1:36 — in the After Dark — champagne, showbot, Dove Bars, fettuccine Alfredo.

1:48 — wrap it up?

1:55 — gotta pee.

Any rumors that this was inspired by this are probably true.

Hypercriticality

93 down, 5 to go. John Siracusa annouced that he will end his Hypercritical podcast after episode 100. As the unoffical sabermetrician of Siracusa Country, I have to ask the question, “How much time do we have before the end of Hypercritial?” Here’s the data:

The easiest way is just to take the average of all the episode lengths (96.3 minutes, excluding the very short episode 54 and the Kindacritial episode 79) and multiply it by the 5 remaining episodes. That gives an estimate of 481.7 minutes.

But what is the most likely episode length? A cumulative distribution will show the data more clearly:

Here we can see that most common episode length was 102 minutes, which occured 6 times. So the most likely remaining length is 510 minutes (5 times 102). Use that estimate for your office pool, where the closest guess wins the toaster and everyone else gets nothing.

A Cray for $35

Since the new Raspbian distribution has hardware accelerated floating point operations, I wanted to test how fast the Raspberry Pi can run. But what to use for a benchmark? Well, LINPACK is the historical choice for evaluating floating point performance. Sure, the Pi doesn’t come with a FORTRAN compiler, but there is a C version of the benchmark that I got to compile with a few minor changes.

Using the Raspbian Wheezy (2012-09-18) image, here are the results from linpack:

Rolled Double Precision Linpack

     norm. resid      resid           machep         x[0]-1        x[n-1]-1
       1.7        7.41628980e-14  2.22044605e-16 -1.49880108e-14 -1.89848137e-14
    times are reported for matrices of order   100
      dgefa      dgesl      total       kflops     unit      ratio
 times for array with leading dimension of  201
       0.02       0.00       0.02      34333       0.06       0.36
       0.01       0.00       0.01      68667       0.03       0.18
       0.01       0.00       0.01      68667       0.03       0.18
       0.02       0.00       0.02      40655       0.05       0.30
 times for array with leading dimension of 200
       0.02       0.00       0.02      34333       0.06       0.36
       0.02       0.00       0.02      34333       0.06       0.36
       0.01       0.00       0.01      68667       0.03       0.18
       0.02       0.00       0.02      42256       0.05       0.29
Rolled Double  Precision 40655 Kflops ; 1000 Reps 

So that works out to be 41 MFLOPS. Not bad for a 700 MHz processor. But what if we do enable overclocking with the following command:

sudo raspi-config

then, under the overclocking section, choose the Turbo option:

Turbo  1000MHz ARM, 500MHz core, 500MHz SDRAM, 6 overvolt

The turbo mode runs at 1000 MHz and gives the following results:

Rolled Double Precision Linpack

 norm. resid      resid           machep         x[0]-1        x[n-1]-1
   1.7        7.41628980e-14  2.22044605e-16 -1.49880108e-14 -1.89848137e-14
times are reported for matrices of order   100
  dgefa      dgesl      total       kflops     unit      ratio
 times for array with leading dimension of  201
   0.01       0.00       0.01      68667       0.03       0.18
   0.01       0.00       0.01      68667       0.03       0.18
   0.01       0.00       0.01      68667       0.03       0.18
   0.01       0.00       0.01      62709       0.03       0.20
 times for array with leading dimension of 200
   0.01       0.00       0.01      68667       0.03       0.18
   0.01       0.00       0.01      68667       0.03       0.18
   0.01       0.00       0.01      68667       0.03       0.18
   0.01       0.00       0.01      65149       0.03       0.19
Rolled Double  Precision 62709 Kflops ; 1000 Reps 

The overclocking improves the performance to 63 MFLOPS. To provide some comparison values, here are the comparison numbers from the Linpack Benchmark Report:

Year Computer MFLOPS
1988 CRAY Y-MP 74
2012 Raspberry Pi (Turbo mode) 63
1987 ETA 10-E 52
1986 NEC SX-2 46
1985 NEC SX-2 46
2012 Raspberry Pi (Stock) 41
1984 CRAY X-MP 21
1983 CRAY 1 12
1979 CRAY 1 3.4

So, the Raspberry Pi that I bought for $35 is the number-crunching equivalent of three Cray X-MP supercomputers. Not bad.

Overcompensating for the Length

Who knew it could be so fun to calculate statistics about the length of a podcast? Kieran Healy has made some beautiful plots, as well as subjecting other 5by5 shows to the same treatment. Oli Hawkins did some nice hypothesis testing on Twitter.

But Don Schaffner answered the question we all want to know: how long before 5by5 is running Hypercritical 24x7? By fitting a line through all the shows, he showed the answer is 371 years.

What about the shows just before episode 51, where John Siracusa said, “I want to try for something shorter.” If he hadn’t started to rein it in, how bad would it be? This bad:

After doing a linear regression on episodes 35 through 50 (shown in red), we see the length is increasing at 2.75 minutes per episode. At that rate, we reach the 5by5 singularity (Siracusarity?) at Hypercritical episode #3672 in a short 69 years.

So, John’s true goal is revealed and achieved: Hypercritical has stopped getting longer.

Hypercritical Length

On the Hypercritical podcast, John Siracusa often worries his podcast is too long. Personally, I like the long episodes, but as they say, “It’s his show.” Let’s look at the data.

There are two main questions we can ask about Hypercritical’s length:

The Goal: In episode #51, John said, “That’s my personal goal, that I want to try for something shorter.” Are the episodes after #51 are shorter than the earlier episodes?

The Jinx: When John says he is planning a short show, sometimes it becomes one of the longest episodes. (At 2 hours and 14 minutes, I’m looking at you, #68: Patent Hands.) Are the short shows longer than the not-short shows? Does he jinx it by declaring it a short show?

The Data

I collected all the Hypercritical episode lengths, then I started listening to the beginning of each episode. (Forgive me Dan, but I might have listened at double speed. It was in the name of science.) I started at episode #75: Just a Dinosaur, and worked my way back to #51: Unjustified Confidence, where John declared his goal (definitely not a New Year’s resolution) to have shorter shows.

Of those 25 post-goal episodes, I counted 8 where John said it was going to be a short show or his time was limited: #51, #52, #60, #68, #71, #72, #74, and #75. These are the short episodes, regardless of the actual length. That leaves 16 not-short episodes, ignoring #54, which was the 1 minute public service announcement for the Kindacritical special.

Putting all the data together, here’s a plot of the episode lengths, colored by type: pre-goal, short, and non-short. I can see by eye that the post-goal episodes are not shorter than the pre-goal episodes, but I can’t tell if the “short show” jinx is true. Let’s dig in further.

The Goal

When we plot the cumulative distributions of the pre- and post-goal shows, it’s very obvious that the post-goal shows are not shorter, by any measure. After stating his goal, John is not getting any worse (that is, the maximum length has stayed at 135 minutes), but the median episode length has increased from 85 to 106 minutes.

The Jinx

The interesting question is: can John jinx the show by saying it will be short? The data here is a little more complicated. In the cumulative distribution plot below, we can see both the short and the not-short episode lengths. While 2 out of 3 of the longest episodes were in the short group, the median episode length is 7 minutes less when he calls it a “short” show. Also, 4 of the 5 shortest episodes belong to the short group, and the average short show is 103 minutes versus 109 minutes for the not-short shows. So, we can disprove the jinx; when John says it will be a short show, I’m going to bet that it will be shorter.

Let me express my thanks to John Siracusa and Dan Benjamin for making the Hypercritical podcast. Long or short, I look forward to it every week.

Update: For your analysis pleasure, I’ve put the raw data into a Google spreadsheet. That includes the episode titles, lengths and what John said to make me call it a short show.

E. Power-Converter Biggs

One of the most promising jet organists in the Empire, E. Power-Converter Biggs came to Tatooine to study the nalargon under Max Rebo. There, he discovered his piloting skill and his distaste for the Empire. Now, he must choose between his love of music and the Rebellion’s need for pilots.