This is BrainLog, a blog by Dan Sanderson. Older entries, from October 1999 through September 2010, are preserved for posterity, but are no longer maintained. See the front page and newer entries.

September 2007 Archives

September 27, 2007

Two things I neglected to mention about MagnaTune.com the other day because I was too busy listening to free samples:

When you buy downloadable files, you get to choose how much to pay, from $5 to $18. 50% goes to the artist directly, and you're encouraged to pay generously. I'd bet money that nobody pays $5.

When you buy downloadable files, you are explicitly granted a license and encouraged to share the downloaded files with 3 friends.

The Official Sesame Street video podcast [iTunes], 5 minutes of shorts from the show.

September 26, 2007

Amazon has launched their DRM-free downloadable music store. All files are high quality MP3s, and work in all MP3 players, including iPods.

This is especially cool when compared to Amazon's digital video store, Amazon Unbox, which is practically useless to me entirely because of DRM restrictions. Useless, that is, in the same way videos purchased at the iTunes Store are useless to anyone who doesn't own an iPod or can't run iTunes (such as Linux users). At least Windows users can do iTunes; Mac users can't go anywhere near Unbox.

Amazon MP3 introduces variable pricing, which allows for some tracks and albums to be priced competitively to iTunes. Apple has resisted variable pricing in favor of simple and consistent pricing models, but they've already been breaking it down throughout the iTunes Store, most notably with the introduction of $1.29 DRM-free alternatives to some $0.99 DRM-laden tracks. It looks like Amazon (and the participating record companies that must be ecstatic to have a major competitor to iTunes to play with) are trying to make a splash with mostly $0.99 DRM-free tracks, along with a few discounted tracks and albums.

With this initial offering, I notice that in some cases, A-MP3 track prices seem to be based on track length, with tracks less than 2 minutes priced at $0.45 and tracks longer than 6 minutes or so as high as $2. In contrast, iTunes tends to either offer long tracks for $0.99 (or $1.29), or simply not offer them for sale individually. If one track is half the album, you typically have to buy the whole album to get it at iTunes. (Amazon also has with-album-only tracks in some cases.)

John Gruber reports that Amazon MP3 includes a downloader app (available for Mac) that simplifies adding A-MP3 tracks to your iTunes library, getting about as close to the iTunes shopping experience as possible without owning iTunes. John also notes that A-MP3's selection seems as good as or better than iTunes' DRM-free selection. Selection (of DRM-free tracks) is still a problem in both stores, but Amazon has the advantage of being able to offer me CDs if what I'm looking for is not in their store. iTunes has a larger selection of DRM'd tracks, of course, but nothing that compares to Amazon's CD catalog.

September 19, 2007

Magnatune: We Are Not Evil. Listen to "over 500 hand-picked complete albums" for free, buy DRM-free downloads for "as little as $5," or buy a pressed CD. Their catalog is licensed for free use in non-commercial projects, so they're a good source for background music and intros of non-commercial projects, and commercial licensing is also available. Also look for Magnatune podcasts in the iTunes podcast directory for tons of ad-free no-cost music. Their classical selection is limited, but of high quality.

Their free listening venues all include a short tag at the end of each track, stating the title of the track, album and name of the artist. ("That was track number 5, from the album XYZ by ABC, from Magnatune.com.") The length and placement of the tag is seems reasonable for most kinds of music, but it's annoying for classical, which doesn't really need each movement of a piece to be announced.

The smiley is 25 years old. (Thanks Dad.)

September 17, 2007

WalkScore.com rates the "walkability" of a house based on its distance and pedestrian paths to nearby services. Especially useful if you're house shopping by remote or otherwise don't know the neighborhood based on an address. (Thanks Mom, via redfin.)

Bloxorz, a fun Flash-based puzzle game. 33 levels.

AnnoCPAN, a mirror of CPAN that lets readers add comments to module documentation. AnnoCPAN emails comments to the module author. Brilliant.

September 14, 2007

The Freakonomics blog on Apple's iPhone price reduction.

Daring Fireball: The Ringtones Racket. Laser-focused analysis from John Gruber, very well done.

September 13, 2007

How to Create a Successful MMO.

September 12, 2007

Movable Type for the iPhone and iPod Touch. Also available with TypePad, Six Apart's hosted blog service. Freaking awesome.

I'm using it right now. One qualm: Once again, entries without titles get the shaft, and show up blank in the entry list. Otherwise, it's awesome.

How to Keep Firebug From Eating Memory

Do you use Firebug, the excellent web page debugging plugin for Firefox? Do you use GMail or any other dynamic web application? Have you noticed that your computer gets sluggish if you leave your GMail window open for an extended period of time?

Firebug can log (remember a list of) network activity between Firefox and a web site, and typically these features are on by default. If you have Firebug active on a dynamic web site like GMail, which makes frequent use of the network without reloading the page. Since Firebug won't clear its log until the page gets reloaded, network monitoring GMail can eat up memory without you noticing.

Firebug's Net panel fills up with GMail traffic.

The easy fix is to disable Firebug until you need it (open Firebug, click the bug icon to bring up the Firebug menu, then select "Disable Firebug"), but you can also just disable the network monitoring part and leave the rest active.

To disable network monitoring, open Firebug, select the Net tab, click Options..., then make sure "Disable Network Monitoring" is checked.

Disable network monitoring from the Net panel's Options menu.

Also make sure that XMLHttpRequests are not being logged to the console. Select the Console tab, click Options..., then make sure "Show XMLHttpRequests" is not checked.

Disable logging of XMLHttpRequests from the Console panel's Options menu.

September 11, 2007

iPhone iPod Shuffle and Random, and a Real On-the-Go Playlist Bug

It turns out my stupid iPhone iPod random play order problem is part legitimate bug, part user interface design issue, and I guess part user stupidity as well.

Earlier iPods have "shuffle" as a mode of operation: If it is on, tracks play in random order until you turn shuffle mode off from a preferences screen. Newer iPods also allow you to "shuffle" playlists as an action: While viewing a list, you can select to the "Shuffle" item at the bottom of the list and it would start playing the list in a shuffled order. Both methods are mostly out of the way, so they are difficult to select by accident. If either is active, the Now Playing screen has a shuffle icon at the top. Earlier iPods also have "repeat" as a mode, with a similar icon (though no "play this as repeated" action on a playlist).

The iPhone iPod application also has "shuffle" and "repeat" modes, as well as an explicit "shuffle" action on lists. However, the method to activate them is more subtle, and the icons that indicate you are in shuffle or repeat mode are not always on the screen. In fact, the icons and the buttons to turn on these modes are the same thing. To turn these modes on or off, or to see if the modes are on or off, tap the album art on the Now Playing screen to bring up the "scrubber" (the position indicator/widget). The repeat indicator/button is to the left of the scrubber, and the shuffle indicator/button is to the right.

The iPhone iPod 'Now Playing' screen, with 'scrubber' panel hidden.

The iPhone iPod 'Now Playing' screen 'scrubber' panel, with repeat and shuffle button-indicators turned off.

The iPhone iPod 'Now Playing' screen 'scrubber' panel, with repeat and shuffle button-indicators turned on.

There are several problems with this:

  • For both shuffle and repeat, the indicator and the button are the same thing. The iPhone UI uses "everything is touchable" to save space, and it works in most cases. The convention isn't a complete failure here, except that the icons don't look particularly button-like. I've seen the scrubber dozens of times and never noticed these buttons were there.
  • The shuffle and repeat button/indicators are not visible in the normal mode of operation. You have to bring up the panel explicitly to check or change the status of these modes.
  • The shuffle and repeat button/indicators are not in an intuitive location. The main thing that comes up when you tap on the Now Playing screen is the track position indicator/widget, which describes the track being played. Shuffle and repeat are properties of the play order, and I would not expect to be able to affect the play order in the same UI mode as rewinding or fast-forwarding the track. The previous-track and next-track buttons are on the panel at the bottom of the screen, which is always visible.
  • The only difference between the "on" and "off" states for the shuffle and repeat indicator/buttons is the foreground color. The color is consistent with other conventions in the phone UI: The Edit/Done button in an editable list, for example, is blue (as opposed to, uh, grey-blue) when in edit mode. But combined with the fact that they don't look like buttons, it's difficult to notice that the icon color represents a mode state.

I'm willing to admit that my not knowing they were there could also be simple cluelessness on my part. It did occur to me that the iPhone iPod might have modal shuffle, but I only knew to check the iPod app settings, which is where the mode selector was on older iPods. Without guidance from someone else, I would never have found the buttons on the pop-up panel with the scrubber.

Now that I know that I had shuffle mode on all this time, that also helps me narrow my On-the-Go playlist problem: When shuffle mode is on, under certain circumstances possibly related to my music files, On-the-Go playlists jump to random tracks on the iPhone, not just to shuffled tracks in the playlist. I'm still trying to figure out what those circumstances are. Thankfully, it's an easy to work around, since I never need to shuffle my OtG playlists.

September 10, 2007

For Flexcar, no way around new tax. A new Washington state tax on car rentals goes into effect October 1st, and the tax collector is considering car sharing programs as rental car companies for the purpose of this tax. That means Washington state residents that use car sharing programs will be paying an additional 9.7% on top of the 9% sales tax starting October 1st, which for me is an additional $40 a month.

I won't go into detail on why we prefer paying $400 a month for car sharing to owning a car, but it's easy to imagine how another 9.7% could throw the equation out of whack for many FlexCar users. It could mean more cars on the road as members defect to an ownership lifestyle. It could also threaten the existence of the program, which could in turn mean even more cars on the road. Car sharing needs to be exempt from this new tax to survive.

Keepon & the BeatBots. Keepon is a dancing robot, a research platform for studying non-verbal play. It's also extremely cute and the star of several music videos, including two with music by Spoon. Wired has an article on Keepon and its use in research. Wired also made the second video on the site linked above.

Keepon is not for sale.

September 7, 2007

Apple is giving $100 in store credit to all iPhone early adopters. If you bought your iPhone in the last 16 days (up to 14 days before the price cut), you're entitled to a $200 rebate per phone—and are not entitled to the $100 store credit on top of that.

This is a rather generous response to the backlash of iPhone owners upset about the $200 price reduction. Of course, there's a backlash to the backlash, but it's not hard to sympathize with those that would get upset that a supplier has reduced the price of a product, when considered in the right light.

When the iPhone debuted, everyone who wanted one, could afford one, and thought it was worth the price got one. Everyone who either didn't want one, couldn't afford one, or didn't think it was worth the price didn't get one. Then there are those in the third group, those who from a purely rational standpoint couldn't really afford one, didn't really think it was worth the price, or possibly didn't really want one, who through an irrational process convinced themselves they should buy an iPhone. This process may have been influenced by external factors, such as advertising, hype or peer pressure, or internal factors such as emotional well-being or simple fascination with the product.

It's the people in this third group that feel betrayed by the price reduction. It's reasonable to assume that Apple had planned the price reduction prior to the iPhone debut, and from the customer's perspective, it feels like the intent of Apple's plan was to exploit the emotional, irrational factors that contributed to their purchasing decisions to get an "extra" $200 per customer. The suddenness and amount of the price reduction kicked at the shaky scaffolding of emotional rationalization many iPhone owners used to justify the original purchase. A less sudden or less dramatic price reduction would have made it easier for early adopters to reinforce whatever emotional structure they used to remain satisfied.

It's important to recognize that the irrationality of shopping applies to all of us. It's difficult to imagine that anybody made a truly rational purchasing decision about a super-hyped $600 product that nobody had ever seen before, even if its feature list did somehow correspond to a well-considered list of needs. Even those of us in the "it was worth $600, no regrets" camp can't legitimately claim that we were able to assess a personal value and corresponding price through a well-considered rational process. The most we can say is, "I'm comfortable with the decision I made, as irrational as it may have been," for whatever reasons that may make it comfortable.

The problem for Apple is that buyer's remorse, as irrational as it may be, is a major part of the customer experience. If customers are going to feel disappointed with having purchased Apple products after price changes and new product releases, they'll buy fewer of them. So while Apple isn't strictly obligated to offer a two-week price guarantee or a $100 one-time store credit to early adopters (and that's debatable), it's in Apple's best interest to manage this aspect of the customer experience.

How to implement a magic wand tool.

Coltrane's Giant Steps with animated sheet music [YouTube]. (Thanks Dad.)

Don't miss related videos on YouTube, such as the Giant Steps solo played by a robot.

September 6, 2007

Apple's iPod/iPhone announcements from yesterday: new video Nano, 160GB iPod "Classic," new iPod Touch that's like an iPhone without the phone—with with wi-fi and a web browser, wi-fi iTunes store for iPod Touch and iPhone, plans for a cute Starbucks feature, and the ability to make iPhone ringtones out of some—but not all—iTunes music store purchases.

And a $200 price cut on the 8GB iPhone. $399.

If you bought an 8GB iPhone within the last 2 weeks, you are eligible for a refund down to the new price as part of Apple's "price protection" feature. If you bought it from Apple, call Apple Sales at 1-800-676-2775, or take a receipt into an Apple Store. If you bought it at an AT&T store, you might want to wait a day or so. As of this writing, stores are still awaiting instructions on how to handle price-protected refunds.

They've discontinued the 4GB model, which is now selling for $299 while supplies last (and they may be all gone by the time this entry gets posted).

Art on the Nike+iPod web site has been updated with the new Nano. I didn't expect them to obsolete the Sport Kit, but it's nice to have confirmation that it works.

NYTimes: NBC in Deal With Amazon to Sell Shows on the Web. Amazon Unbox already has a few NBC and Scifi shows online, including Heroes season 1 for $1.99 per episode—or the entire season for $31.99 (short of the $39.99 sticker price for the DVD box set).

Considering NBC has supposedly been complaining about the iTunes $1.99/episode price being too low, I don't think this is really what they have in mind for future offerings. But it's a smooth move from a PR standpoint: "Apple wouldn't let us charge a sale price for an all-season bundle of Heroes, so we went to Amazon to give you the bestest deals!" Pull-quote from the NYTimes article, from the president of NBC Universal Digital Distribution: "Amazon is a company that understands the value we provide as content owners to its business." I.e. "We want to charge more money."

Amazon Unbox doesn't work with Macs or iPods. It can do direct downloads to a TiVo, though.

Revising Movable Type 4's QuickPost Bookmarklet

Movable Type 4, like its predecessor Movable Type 3, includes a "QuickPost" bookmarklet—a link you can install in your browser's Bookmarks bar that you can click on when you're looking at a page you want to link to from your blog. Clicking on it opens the entry editor in another window, pre-populated with information about the page.

To set up the QuickPost bookmarklet, go to your blog's admin screen, click the Write Entry button, then scroll down below the "Save" button, and drag the "QuickPost to ..." link to your browser's Bookmarks bar.

Movable Type 4 changed the format of the pre-populated entry from MT 3. MT 3's bookmarklet created a new entry with no title, and an entry body containing HTML for the link to the page whose text was the title of the page. If you had selected text before clicking the bookmarklet, that text appeared below the link. It looked something like this:

[Title:] 
[Body:]
<a href="http://url-of-page/">Title Of Page</a>
 
Selected text, if any.

In MT 4, the QuickPost bookmarklet pre-populates the entry's title with the title of the page, and sticks the URL of the page and the selected text in the message body. The URL is not a link, it's just the URL, followed by two <br /> tags, then the selected text, if any. Like this:

[Title:] Title Of Page
[Body:]
http://url-of-page/<br /><br />
 
Selected text, if any.

The new behavior is weird. Entry titles are all the rage with newer blogs and RSS feeds, so I'll grant that I'm behind the times for not using entry titles on short link-y entries. And perhaps usability studies showed that most people didn't want the page title to be the link text, though it doesn't seem like a hassle to make that the default. But I can't think of a reason why I'd want to use the URL without being a link. The <br /> tags recall a heated debate about the behavior of MT 4's new rich text editor, which uses <br /> tags between paragraphs instead of surrounding them with <p>...</p> tags. (The old default "Convert Line Breaks" does better.) The only real point of contention I can think of is the new rich text editor, and the other text formatters that come bundled. But as far as I can tell, the QuickPost bookmarklet's behavior is undesirable for all of them except the "None" formatter.

Thankfully, it's easy to edit the QuickPost bookmarklet after setting it up. The steps for editing the URL of a bookmark differ from browser to browser, but assuming you can figure that out, you can paste in new code. In Firefox, one way is to right-click on the bookmark in the bookmarks bar, select Properties, then edit the Location. You can also do it from the Bookmarks Manager: Bookmarks menu, Organize Bookmarks...

The following bookmarklet code reproduces the old behavior: no title, body contains HTML for a link to the page with the page title as the text, and selected text afterward. To use it, copy this text, paste it into your bookmark, then replace www.dansanderson.com/blog/mt/mt.cgi with the URL of your blog's mt.cgi.

javascript:d=document;w=window;t='';if(d.selection)t=d.selection.createRange().text;else{if(d.getSelection)t=d.getSelection();else{if(w.getSelection)t=w.getSelection()}}void(w.open('http://www.dansanderson.com/blog/mt/mt.cgi?__mode=view&_type=entry&blog_id=1&qp=1&title=&text='+encodeURIComponent('%3Ca%20href="'+d.location.href+'"%3E'+d.title+'%3C/a%3E\n\n'+t),'_blank','scrollbars=yes,status=yes,resizable=yes,location=yes'))

The following alternate version does the same thing, but also pre-populates the entry title with the title of the page. Again, remember to replace www.dansanderson.com/blog/mt/mt.cgi with the appropriate path for your blog:

javascript:d=document;w=window;t='';if(d.selection)t=d.selection.createRange().text;else{if(d.getSelection)t=d.getSelection();else{if(w.getSelection)t=w.getSelection()}}void(w.open('http://www.dansanderson.com/blog/mt/mt.cgi?__mode=view&_type=entry&blog_id=1&qp=1&title='+encodeURIComponent(d.title)+'&text='+encodeURIComponent('%3Ca%20href="'+d.location.href+'"%3E'+d.title+'%3C/a%3E\n\n'+t),'_blank','scrollbars=yes,status=yes,resizable=yes,location=yes'))
September 5, 2007

org-mode for Emacs. Version 4.67 is included in Emacs 22.1, the latest is 5.07. Official manual. Screencast demo by Scott Jaderholm. Using Org-Mode as a Day Planner by John Wiegley. More on EmacsWiki.

This thing is seriously amazing. It's a super-outliner, it's a productivity manager, it's a notetaker, it's a lightweight structured text system, it's a lightweight spreadsheet, and it's all of those things without feeling bloated or overloaded.

September 4, 2007

iTunes Store To Stop Selling NBC Television Shows because NBC wanted Apple to charge $5 per episode instead of the current price of $2, according to Apple's press release. NBC Universal includes The Office, Studio 60, Heroes, Battlestar Galactica, Stargate Atlantis, and more big success stories for both iTunes and NBC. If it weren't for iTunes, The Office would not still be on the air today.

This is the same Universal that is also threatening to withdraw its entire catalog of music from iTunes if they don't get the right to raise prices. Universal is also refusing to participate in DRM-free music on iTunes—while simultaneously offering DRM-free music downloads on competing services. These guys are playing hardball.

I once said that if it weren't for children's programming, I could easily cancel my cable subscription and get every show I watch from iTunes, getting a higher quality experience (high quality, no ads) and spend less money. Unfortunately, most of those shows are NBC Universal offerings. I can always get NBC shows off the airwaves (even in HD) and TiVo them to my liking, and I can always wait a year to Netflix the DVD release. Or I can stop watching their shows, which is starting to look like the most cost-effective option.