Monthly Archives: August 2007

The Power of Binary Searching

I always knew that binary searching was fast, O(log2) and all that. But when you have to run it by hand over 3000 subversion revisions, looking for the place where you introduced a memory leak, and after four steps you’ve eliminated 93% of the search space, you get a new appreciation for it.

There are some tools out there for automating these searches through subversion. They didn’t fit our problem though because determining whether we were showing a memory leak was fuzzy.

Turned out to be 4 memory leaks. Two very minor ones, and two major ones in third party libraries, one of which only showed up on the Mac platform.

Thanks to binary searching, we could quickly identify the exact spots where these leaks were introduced.

iMovie ’08: the reviewing

I’m just staring at iMovie ’08 and I gotta say, the interface is a mess. You’ve got this one button that reorders arrangement of the panes in the window. The animation is nice, but is that option really needed? I don’t see a way to hide the library even though it takes up have the window.


  1. The scrubbing is pretty nice
  2. I like the idea of having a cross-project video clip library


  1. The timeline is missing, as feared
  2. You can’t extract the audio from a video clip anymore
  3. It doesn’t scan iTunes for video clips
  4. clip selection is a little weird

The Programmer’s Perspective
iMovie has been around for a while. It used to run on OS 9. I’m sure it was getting pretty crufty, internally. It probably needed a rewrite and I’m sure the programmers were excited.

I’m not sure why the timeline was cut. It was possible to completely avoid the timeline in the old iMovie. Timelines are a major feature and should be planned into the UI from the start, but if the new iMovie was written with an eye to the Model-View-Controller pattern, and it was just rewritten from scratch, so it should have been, it shouldn’t be difficult to add another view of the underlying data.

I think that a lot of the people who don’t care about the killing of iMovie just don’t care about movie making. I’m not sure what their favorite programs are, but I can guess that someone like John Gruber would complain if Apple removed the Kern and Ligature items from the Text menu, confusing as those features are. Apple doesn’t make great software because they dumb it down. They make great software because they figure out the best way to expose features.

I also think that the “let them use Final Cut Pro/Express/iMovie ’06” sentiment is bullshit. Final Cut has a completely different UI. I should know; I own it. iMovie ’06 is a great program, but I don’t think it’s wrong of me to want to see it continue to be updated. The scrubbing in the new iMovie ’08 is great. I’d love to see that added.

Also, I don’t think that Apple is providing iMovie ’06 out of consideration to those of us affected by the change in workflow. It’s doing it because the new iMovie ’08 won’t run on Macs that are only 1.5 years old.

So in summation:
iMovie ’08 is great if all you want to do is produce the moral equivelent of this clip:

Yeah. Have fun with that. Actually, you can’t even do that because the song is timed to start when the goalie throws the first punch.

People who care about timing and soundtracks and generally have taste about these things, well, we’re screwed.

Bjorne Stroustrup lecture

I saw Bjorne Stroustrup give a lecture as part of the New York City Google TechTalks. Pretty interesting stuff. More updates to the language that I was expecting. Some much desired features too.

Two downsides:

  1. the language is going to be that much more complicated. I’m looking at you, separate meta-type system for controlling templates
  2. it took so long for the STL and templates to get good enough support, I doubt I’ll see any of this until 2015

iMovie ’08 trepidations

John Gruber writes:

I totally believe Jobs’s story that it’s a complete re-write. The old iMovie was a good app, as a sort of stripped-down consumer-level Final Cut — but it still wasn’t any good for just putting clips together in a few minutes.

This makes very little sense to me. What about those of us who want to spend time working on their movies but who want to avoid Final Cut Pro/Express? Who expects to be able to do great things in just a couple of minutes?

When I make a movie, what I like to do is pick out a soundtrack, and then layout the clips in time with the music. I also like to adjust the volume curves to have different sounds fade in and out as appropriate. In the iMovie ’08 tutorials I’ve seen, you don’t get a timeline anymore. You get a box. You don’t get an audio waveform anymore. You get a shade of green in the box background.

I’m still going to buy iLife ’08, in the hopes that these features are still enabled somewhere. But I’m going to hide my iMovie ’06 application where it can’t be deleted in case it sucks.

The irony is that I was just telling a co-worker how iMovie is my favorite piece of software, of all time. The explorability of the software, with its undo-everywhere, was key. I still believe that unless you’re working with two video cameras, iMovie will serve most of your needs.

When I worked at an art school, I would teach students how to use iMovie, and I would always stress how important it was to experiment and that it didn’t matter if they made mistakes, because you could always undo. I’m sure undo is still a big part of the program. But getting rid of timelines seems too big a step away from traditional movie editing.