July 2009

Summer Princess

Mikako Takahashi is one of many voice actresses (Kasumi Tani from Hand Maid May, Rushuna from Grenadier, etc) who also sings. I’m rather fond of her ED song from HMM (Honto no Kimochi, “My True Feelings”), so when I noticed that she released two albums last year, I added them to my list for a future purchase from Amazon Japan.

I finally got around to buying them, and while my initial impression of the songs is mixed, I can find nothing to dislike about the pictures…

Especially the red dress and the bikini…


No illusions here...

Just noticed that a translated version of the Asu no Yoichi manga has been released, under the title Samurai Harem.

Yeah, that sounds about right.

Meanwhile in Japan, volume 10 is about to hit the street.

Dear Amazon,

Congratulations on your new implementation of Usenet. That is, “FAIL”.

The Product: Sylvania 20682 CF13DD/E/827 Double Tube 4 Pin Base Compact Fluorescent Light Bulb

The “active discussions in related forums”:

  • (health) My daughter has ulcerative colitis...help!
  • (health) how do you get your wife to lose weight?
  • (health) Is Spanking a lovable or harmful form of disipline?
  • (health) Are Gays and Lesbians a future endangered species?
  • (health) How come it burns when I pee?
  • (home improvement) Are energy saver halogen bulbs green enough?
  • (home improvement) What your local contractor doesn't want you to know.


Vlc hits version 1.0. Now they can start working on the user interface!

Dear Akihabara News,

I know you’re in it for the ad impressions and referrals to your horribly-overpriced online store, but when you’re retyping a press release for a new product announcement, could you at least identify the product correctly and link to the goddamn press release. Especially when it includes useful information like a release date and a price.

For instance, today’s little gem is the new Buffalo USB-powered 3-port Ethernet Switch. Note the link to the press release. Note the fact that I correctly describe it as a switch, where you mistakenly called it a hub. This is a difference that may matter to customers.

I’m sure you’ll be selling it at an 80% markup in your store soon, so here’s the Amazon Japan link that’s taking preorders for 15% off with free shipping.


Just for amusement…

ORK4 QRcode

Pop quiz...

It’s 10pm on a Friday night. When I open my windows to cool the place down, what do you suppose I hear?


Something in the water, perhaps...

There are times when the only joy I can extract from the work of the Hello!Project costume designers is the thought that they’re an aberration, and that outside of Harajuku, most people involved in costume design in Japan at least try to achieve some sort of tasteful enhancement.

Yeah, well, not so much.


Dear Bryan O'Sullivan,

Here’s your definitive manual’s complete comparison of Perforce to Mercurial:

Perforce has a centralised client/server architecture, with no client-side caching of any data. Unlike modern revision control tools, Perforce requires that a user run a command to inform the server about every file they intend to edit.

The performance of Perforce is quite good for small teams, but it falls off rapidly as the number of users grows beyond a few dozen. Modestly large Perforce installations require the deployment of proxies to cope with the load their users generate.

In order, I say, “bullshit”, “feature”, “buy a server, dude”, and “you’re doing it wrong”.

In fairness, the author admits up front that his comments about other tools are based only on his personal experience and biases, and the inline comments for this section point out its flaws. Still, it’s clear that his personal experience with Perforce was… limited. Also, he’s either not aware of the features it has that Mercurial lacks, or simply discounts them as “not relevant to the way Our Kind Of People work”.

I’m not criticizing the tool itself, mind you; I’ve tried out several distributed SCMs in the past few years, and Mercurial seems to be fast, stable, easily extensible, and well-supported. I’m switching several of my Japanese projects to it from Bazaar, and it cleanly imported them. It handles Unicode file names and large files a lot better, which were causing me grief in the other tool.

There are things I can’t do in Mercurial that I do in Perforce, though, and some of them will likely never be possible, given the design of the tool. [Update: for-instance deleted; it appears that if you always use the -q option to hg status, you avoid walking the file system, and you can set it as a default option on a per-repository basis. If the rest of the commands play nice, that will work. The real value of explicit checkouts, even in that example, is the information-sharing, something that devs often value less than Operations does.]

"Show me on this doll where the bad SQL touched you"

I don’t want a database guru. I want a database ogre, who lives in a dank, dark cave lined with the bones of developers who think they can write their own queries and release them to Production.

During my latest round of load-testing, I discovered that one particular client-driven query degrades rather seriously under load. As in, fifteen minutes to use a unique device ID to look up the matching unique customer ID and a single string related to RMA status. Part of the problem was that the dev was looking in the wrong place, but the main problem was that he didn’t understand the data, so the query was written in a way guaranteed to maximize search time. (rant about poor schema design saved for another day…)

I am a SQL caveman. My formal training in database technology began and ended with a single COBOL class in the mid-Eighties. I rewrote the query and dropped the time to 0.062 seconds under the same heavy load.

Four orders of magnitude? Time to feed another dev to the ogre!

(and, yes, the checkin comment attached to this query begins “optimized the sql query for …”. The sad thing is that, relatively speaking, this is a true statement; his previous code was worse)

My new Monday t-shirt

Dear Hello!Project,

Korea is kicking your ass.


Dear Ai Takahashi,

You are not of Latin heritage, and neither is the song Cosmos. Not attempting to mimic Momoe was a good choice, at least, since she’s a bit out of your league, and you did deliver the best vocal performance on the album.

Keep an eye on Linlin, though; with better material and some practice, Junior Panda could eat you.

Facebook link-whoring?

I am quite certain that 15 of the 28 people who show up in a Facebook search for Ooma employees are not, and never have been, associated with the company in any way. Which leads to the question, “why?”. We’re not that cool.

Ah, Emacs...

Emacs 23 natively uses Unicode. This means I can run it in a Terminal window, like God intended, and still have full Japanese support. Previous versions did funky Shift-JIS conversions that made its behavior… “eccentric” on a Mac, especially with cut-and-paste.

Now all I have to do is strip out all of the cruft from the elisp directory, and I’ll have the perfect text editor. Actually, it’ll be easier to delete everything and just add back the non-cruft as needed. There’s not much that I don’t consider cruft, so it will be pretty darn small.

[side note: a release comment says something to the effect that the internal encoding is a superset of Unicode with four times the space, which would make it a 34-bit system. WTF? Update: ah, I see; UTF-32 has a lot of empty space, with only a bit over 20 bits allocated in the Unicode standard. UTF-8 was also designed with considerable headroom, which is no surprise, given that it was invented during dinner by Ken Thompson.]

“Need a clue, take a clue,
 got a clue, leave a clue”