More evidence that garbage collection is expensive

As seen on Lambda the Ultimate.org

Quantifying the Performance of Garbage Collection vs. Explicit Memory Management We compare explicit memory management to both copying and non- copying garbage collectors across a range of benchmarks, and include real (non-simulated) runs that validate our results. These results quantify the time-space tradeoff of garbage collection: with five times as much memory, an Appel-style generational garbage collector with a non-copying mature space matches the performance of explicit memory management. With only three times as much memory, it runs on average 17% slower than explicit memory management. However, with only twice as much memory, garbage collection degrades performance by nearly 70%. When physical memory is scarce, paging causes garbage collection to run an order of magnitude slower than explicit memory management.

The Economics of Selling a MacBook on Craig's List vs. Ebay

I just sold my MacBook over the web. I sold it on Craig’s List. I also considered using eBay, but Craig’s List turned out to be a better deal, for both buyer and seller.

The reason is that listing and selling on Craig’s List is free, while selling on eBay is expensive, especially for items priced higher than $500. First, there’s the listing fee of $0.20, then the Final Value fee of $0.50 + 3.25% * price. But wait, there’s more: EBay all-but- requires you to use their PayPal service to settle transactions, and PayPal in turn requires you to use a “Premier” account if you receive more than $500 in eBay payments in one month, which you automatically would if the item you’re selling is more than $500. Using a “Premier” account requires that you pay PayPal 2.9%+$0.30 per transaction, even for cash transactions. (The processing fee is less if you are doing a high volume of business through them.)

So the total eBay selling cost is in the range of 6.15%. That’s $50 on a $800 item.

You could avoid accepting PayPal, but since accepting PayPal is the norm on eBay, it’s very likely that your auction will be shunned, and you will receive a lower price.

Besides the hefty fees, using PayPal is riskier for the seller than using cash. This is because it is possible for a disgruntled buyer to reverse the transaction. (Of course this same ability is a plus for the buyer, as is the ability to use credit cards.)

Even without using eBay to sell the product, it makes sense to use eBay as a price setter. eBay makes this easy to do by reporting the final price for closed auctions that you are “watching”. Since auctions last between 3 and 10 days, and an auction must be active in order for you to watch it, you will need at least a week to track enough auctions of similar items to make a fairly accurate estimate of the market price.

Xbox 360 Fall 2007 update adds DIVX/MP4 video support

The Fall 2007 Xbox 360 dashboard update (coming December 4th) will add support for DivX and MP4 playback.

Video FAQ

This is great news for Xbox 360 owners who want to watch video encoded in these formats. I’m surprised that Microsoft did this, because these formats compete with Microsoft’s own WMV format. While the benefit to consumers is obvious, I’m not sure what the benefit is to Microsoft. I’m guessing they did this to both improve the “watch your PC’s videos on your Xbox” story, and also to match an existing PS3 feature.

Game resolution issues

This morning I fired up Mario Galaxy 64 on my new Wii for some early-morning platforming. I happened to sit closer to the screen than I normally do. Yuck! The jaggies were suddenly very apparent and very distracting. But when I moved back to my normal viewing distance, the jaggies were gone, blurred out by my poor vision.

It’s no wonder that HDTV and HD gaming in general is not taking off as quickly as consumer electronics companies hoped – the benefits are just not that apparent to normal eyes at normal viewing distance.

Jaggies aside, Mario Galaxy 64 is great fun! A very smooth difficulty curve, and gorgeous graphics. Right now I’m working my way through the candy level. (I have seven stars.)

My initial Wii impressions

I finally got a Nintendo Wii this weekend. Wii’s are in fairly short supply right now, so I couldn’t find one at a reasonable price on-line. If you live in the Seattle area, here’s my Wii-finding tip: Fred Meyer stores get deliveries on Wednesdays, Fridays, and Sundays, meaning that calling a Fred Meyer store at 7am on Sunday morning to check if they received a new shipment is a good way to find a Wii.

The total cost, with tax, an extra controller, and a component video cable was around $350.

I’ve got Wii Sports, Wii Play, and will be picking up Mario Galaxy this week. The primary users will probably be my kids, although I am very interested in trying out Mario Galaxy.

As a former Xbox 360 developer, I couldn’t help comparing the Wii to the Xbox 360. So far I give the Wii high marks for:

  • It’s small and quiet.
  • It starts up quickly.
  • The dashboard UI is very clean and pleasant.
  • The low-res (480p component) graphics are quite good. I did occasionally see jaggies, for example on the edges of the bowling pins during close-ups in Wii bowling. But the Wii encourages you to play fairly far away from the screen, which masks the lower resolution.
  • The Wii remotes are great! I love the new gesture “verbs” that are available for game play, and I found it much easier to enter text with the Wii than with an Xbox controller.
  • The TV station metaphor for the top-level UI is a good metaphor. It makes it easy to take in the available options at a glance. And the Wii remote makes it low-effort to pick the channel you want.
  • Having built-in wireless was a nice touch.
  • The Mii avatars are pure genius. Both the fun of designing them and then having them appear in the sports-style games. This is something that the other consoles should copy, and I’m surprised they haven’t. Maybe it’s patented in some way that makes it difficult to copy.
  • I thought it was a nice touch that I could name my console, but I didn’t see the name used anywhere.
  • My two three-year-old daughters were strongly attracted to the Wii dashboard and games’ graphics and sounds, saying things like “pretty!” and “I like it!” They never said this about the Xbox 360 dashboard or games.
  • My five-year-old son really got into acting out the moves in the baseball game. And he has not yet played real-world baseball. It will be interesting to see how he does when he starts playing real-world baseball next spring.
  • The UI of the Wii online store is very good. The Mario themed downloading bar is pure genius – you know you have a good UI when people enjoy watching the download progress bar.

Some things I didn’t like about the Wii:

  • The UI for pairing a second wireless controller to the console was hard to discover. (I will give Nintendo big props for pre-pairing the in-the-box controller with the console. I’m sure that adds cost to manufacturing, but it makes for a great out-of-box experience.)
  • The network connection UI gave very little feedback on why the network connection failed. When you test network connectivity you get a 20 second “testing” animation, followed by a cryptic five-digit error code. I had to make two changes to my router configuration to get networking to work. I would have preferred the Xbox 360’s UI, that gives more step-by-step information about network connectivity issues.
  • My three-year-olds can’t handle the Wii controller very well. There are too many buttons to accidentally press, and the required gestures are too complicated for them.
  • No downloadable games demos. And very few downloadable games at all.
  • The walled-garden Internet channels are pretty weak, especially the Everybody Votes channel.
  • Not many current or upcoming games that I want to play. After Mario Galaxy, I don’t know what my next purchase will be. Luckily, the current games should keep my kids happy for quite a while. (My son’s been working his way through Cloning Clyde on Xbox 360 for the past year, I can only imagine how much fun he’s going to have with Mario Galaxy!)

In conclusion, I’d have to rate the Wii as a much better “family” console than either the Xbox 360 or the PS3. And by family I mean “small children”. I’m lucky that I like the Wii’s UI and game style, because I have a feeling I’ll be hearing and seeing a lot of it over the next few years. As for my trusty 360, I suspect it will be mostly relegated to “Media Center Extender” status. (Although I am definitely looking forward to Alan Wake and I have high hopes for the next Banjo game. And I might get “The Orange Box” – Portal and Team Fortress 2 look like a lot of fun.)

Macbook Ubuntu Woes, back to OS X

Well, for what it’s worth, I’ve switched my MacBook from Ubuntu Linux back to OS X. Ubuntu Linux worked, but had lots of little problems:

  • The wireless driver worked, but it’s range and speed was much less than under OS X. For example, sitting on the couch in my living room I got 4 bars with OS X but just two bars with Ubuntu. (Now, of course, the two operating systems could be reporting the same information in different ways. But actual network activities OS X seems faster and more reliable.)
  • The connectivity to Windows file shares is much more reliable. With Ubuntu I could not reliably use VLC to play AVI movies off of a Windows Vista file share. The AVI movies would always timeout sometime in the first few minutes of play. With OS X I have no problem.
  • I couldn’t figure out how to get suspend and resume to work right in Ubuntu. As a result, battery life was not as good.
  • The trackpad never felt good. And a single-button computer will always be a second-class citizen in Linux.
  • The Linux UI experience wasn’t as solid. (The fit and finish, and how much flickering went on.)
  • The UI quality of add-on applications was somewhat lacking. And the use of three or four different UI widget sets was downright confusing. To be fair, OS X and Vista have issues with this as well, but in OS X and Vista the issue is a generational one, while in Linux the issue is a civil war: there are three competing UI widget sets.

So it’s back to OS X for me, for now.

A Paper Leopard

I am disappointed by the new version of Apple OS X that was released this weekend. The UI has gone backwards in several areas. In particular, the translucent menus are hard to read, and the default “space theme” wall paper is ugly. So far it feels like a service pack with a bonus backup program.

I suspect that Apple is suffering from the same problem that Microsoft was with Vista, namely  ”How do you improve on a very good existing product?” In addition, I suspect the company’s attention over the past year was focused on developing the iPhone, and perhaps not enough attention was paid to Leopard.

Still, I’m not sure what they could have done better – Desktop OSs are pretty much of a solved problem.  But I suspect that as the hype wears off people will start to question whether Leopard is a significant improvement.

Ubuntu Studio - nice idea, poor execution

Ubuntu Studio is a nice idea in theory, but the execution is lacking. The goal is to create a version of Ubuntu optimized for media creation by:

  • Bundling the best available open-source media creation tools.
  • Using the real-time Linux kernel, for reduced latency when mixing audio.
  • Using a desktop color scheme that doesn’t make artistic people ill.

The problem is that there are a lot of rough edges:

  • By using a non-standard kernel, the release has problems supporting wireless hardware, such as the wireless hardware present on my first-gen Intel Macbook.
  • By using a cool-but-low-contrast color scheme, the UI is difficult to read on a screen-dimmed laptop.
  • Some of the bundled free content creation tools are pretty weak compared to the commercial equivalents. (I’m thinking of GIMP and Blender in particular.)

The wireless hardware support issues make this a non-starter release for me, but I enjoyed giving it a whirl.

Never trust a Doctor on how easy it is to use Linux

I recently read a positive review of Linux by a man who said he was a doctor, not a programmer, and that he found Linux very easy to set up and use.

That’s great, but you have to take recommendations like that with a grain of salt. I’m not a doctor, but three of my siblings-in-law are doctors, and a fourth is a nurse, and one thing I’ve noticed is that medical professionals are extremely good at following technical directions. I think it’s a skill that comes from how medicine is practiced – you diagnose the patient, then apply a recommended treatment. Just like debugging a computer problem!

Maintaining Linux, like maintaining a patient’s health, requires researching a scattered body of knowledge and deciding how to apply a mass of conflicting advice. Both tasks reward careful study, and exact replication of the recommended treatment. For doctors this way of working is second nature, but I don’t think laymen will find it so easy.