Migrating iTunes windows to Mac

As part of my recent imac purchase came the chore of moving stuff over from my old hard drive which thankfully survived my old PC’s premature demise. Part of the stuff that I naturally wanted to migrate is of course my iTunes library.

Last time I moved my iTunes library is 3.5 years ago, when I bought my then new and now broken PC. At the time I wrote up a little howto on iTunes migration that over the years has gotten me tens of thousands of hits (dozens per day). Some people were kind enough to leave a message and apparently I helped out several of them with those instructions.

So, here’s the follow up.

Circumstances are slightly different now. I “consolidated” my library ages ago, which means iTunes moves all files to its own directory. Additionally, I reorganized my library, fixed tagging issues, etc. In other words, I put a lot of time into organizing my music and keeping it organized and would hate to start from scratch. Secondly, we’re several major iTunes versions down the road and they added album art fetching, genius and loads of other features.

So, I started out by following the original instructions of three years ago. This nearly works, except the music is not playable from iTunes for some vague reason. So no longer up to date despite a comment of some person who successfully managed a win to mac migration the “old” way.

Next I tried something that I didn’t believe would work but which worked anyway:

  • Copy library from former C drive to where it is supposed to be on your mac (all files & dirs)
  • Don’t modify a single file, they’re fine as they are.
  • Start itunes

Right after it starts it “updates” the library and that’s it. That’s a lot faster & easier. Play counts, play lists, ratings, you name it. It’s there. Thanks Apple, this is a lot better than three years ago and exactly the way it is supposed to work.

Localization rant

I’ve been living outside the Netherlands for a while and have noticed that quite many web sites are handling localization and internationalization pretty damn poorly. In general I hate the poor translations unleashed on Dutch users and generally prefer the US English version of UIs whenever available.

I just visited Youtube. I’ve had an account there for over two years. I’ve always had it set to English. So, surprise, surprise, it asked me for the second time in a few weeks, in German, whether I would like to keep my now fully Germanified Youtube set to German. Eehhhhh?!?!?! nein (no). Abrechen (cancel)! At least they ask, even though in the wrong language. Most websites don’t do even bother with this.

But stop and think about this. You’ve detected that somebody who has always had his profile set to English is apparently in Germany. Shit happens, so now what? Do you think it is a bright idea to ask this person in German whether he/she no longer wants the website presented in whatever it was set to earlier? Eh, no of course not. Chances are good people won’t even understand the question. Luckily I speak enough German to know Abrechen is the right choice for me. When I was living in Finland, convincing websites I don’t speak Finnish was way more challenging. I recall fighting with Blogger (another Google owned site) on several occasions. It defaulted to Finnish despite the fact that I was signed in to Google in and have every possible setting Google provides for this set to English. Additionally, the link for switching to English was three clicks away from the main page. Impossible to do unless you know the Finnish word for preferences, language, and OK (in which case you might pass for a native speaker). I guess I’m lucky to not live in e.g. China where I would stand no chance whatsoever to guess the meaning of buttons and links.

The point here is that most websites seem to be drawing the wrong conclusions based on a few stupid IP checks. My German colleagues are constantly complaining about Google defaulting to Dutch (i.e. my native language, which is quite different from Deutsch). Reason: the nearest Nokia proxy is in Amsterdam so Google assumes we all speak Dutch.

So, cool you can guesstimate where I am (roughly) in the world but don’t jump to conclusions. People travel and move around all the time. Mostly they don’t change their preferred language until after a lot of hard work. I mean, how hard can it be? I’m already signed in, right? Cookies set and everything. In short, you know who I am (or you bloody well should given the information I’ve been sharing with you for several years). Somewhere in my profile, it says that my preferred language is English, right? I’ve had that profile for over four years, right? So why the hell would I suddenly want to switch language to something that I might not even speak? A: I wouldn’t. No fucking way that this is even likely to occur.

It’s of course unfair to single out Google here. Other examples are iTunes which has a full English UI in Finland but made me accept the terms of use in Finnish (my knowledge of Finnish is extremely limited, to put it mildly). Finland is of course bilingual and 10 percent of its population are Swedish speaking Finns, most of which probably don’t handle Finnish that well. Additionally there are tens of thousands of immigrants, tourists and travelers, like me. Now that I live in Germany, I’m stuck with the Finnish itunes version, because I happened to sign up while I was in Finland. Switching to the German store is impossible. I.e. I can’t access the German TV shows for sale on iTunes Germany. Never mind the US English ones I’m actually interested in accessing and spending real $$$/€€€ on. Similarly, I’ve had encounters with Facebook asking me to help localize Facebook to Finnish (eh, definitely talking to the wrong guy here) and recently to German (still wrong).

So, this is madness. A series of broken assumptions leads to Apple losing revenue and Google and others annoying the hell out of people.

So here’s a localization guideline for dummies:

  • Offer a way out. Likely a large percentage of your guesses as to what the language of your users is, is going to be wrong. The smaller the amount of native speakers the more likely you will get it wrong. Languages like Finnish or Chinese are notoriously hard to learn. So, design your localized sites such that a non native speaker of such languages can get your fully localized sites set to something more reasonable.
  • Respect people’s preferences. Profiles override anything you might detect. People move around so your assumptions are likely broken if they deviate from the profile settings.
  • Language is not location. People travel around and generally don’t unlearn the language they used to speak. Additionally, most countries have sizable populations of non native speakers as well as hordes of tourists and travelers.
  • If people managed to sign up, that’s a strong clue that whatever the language of the UI was at the time is probably a language that the user has mastered well enough to understand the UI (or otherwise you’d have blind monkeys signing up all the time). So there’s no valid use case for suggesting an alternative language here. Never mind defaulting to one.

Anyway, end of rant.

X-plane on an iPhone

If you’ve read my past reviews of X-plane, you’ll know that I’m somewhat of a fan of that product. It’s an ultra realistic flight simulator. If you’ll read the product page you will see that it boasts a long list of features. I can assure you, they’re being modest. I don’t pay for software very often but I’ve bought v8 and recently v9 of this one.

Anyway, I just had a little WTF moment reading this little blog post from Benjamin Supnik, one of the lead developers of X-plane who works on the scenery engine. They’ve actually ported X-plane to the iPhone! If so far, you didn’t think much of the iPhone as a development platform, look again. This is really impressive.

I just looked up the product page in iTunes and it has some nice screen shots. Of course they don’t ship the full UI or scenery. All you get is an area around Inssbruck (default area in the demo version of the normal version). Probably it is heavily tuned to work nicely on an iphone. However, the mere fact that they have it running at all is very impressive. Unfortunately, it’s not possible to link to product pages in iTunes, so you’ll just have to look it up yourself, producer is Laminar or you can go to Games->Simulation in the iphone section.

Also hilareous is Austin Meyer (founder and owner of Laminar that builds X-Plane) denying there was an iphone version of x-plane, just before he launched it on September 11th. A bit of a symbolic date for launching a flight simulator, don’t you think?

Sadly, I have no iPhone or ipod touch to play with. Working for Nokia and all that.

Songbird Beta (0.7)

Songbird Blog » Songbird Beta is Released!.

Having played with several milestone builds of songbird, I was keen to try this one. This is a big milestone for this music player & browser hybrid. Since I’ve blogged on this before, I will keep it short.

The good:

  • New feathers (songbird lingo for UI theme) looks great. Only criticism is that it seems to be a bit of an iTunes rip off.
  • Album art has landed
  • Stability and memory usage is now acceptable for actually using the application
  • Unlike iTunes, it actually supports the media buttons on my logitech keyboard.

The bad (or not so good since I have no big gripes):

  • Still no support for the iTunes invented but highly useful compilation flag (bug 9090). This means that my well organized library is now filled with all sorts of obscure artists that I barely know but apparently have one or two songs from. iTunes sorts these into compilation corner and I use this feature to keep a nice overview of artists and complete albums.
  • Despite being a media player with extension support, there appears to be no features related to sound quality. Not even an equalizer. Not even as an extension. This is a bit puzzling because this used to be a key strength of winamp, the AOL product that the songbird founders used to be involved with.
  • Despite being a browser, common browser features are missing. So no bookmarks, no apparent RSS feed, no Google preconfigured in the search bar, etc. Some of these things are easily fixed with extensions.

Verdict: much closer than previous builds but still no cigar. Key issue for me is compilation flag support. Also I’d really like to see some options for affecting audio playback quality. I can see how having a browser in my media player could be useful but this is not a good browser nor a good media player yet.

Bought my first online album

Convenience finally won me over. I made my first online music purchase with iTunes plus, the DRM free music shop of Apple. Initially, when they launched this shop, they chose to offer music at a higher price than the DRM music. A few weeks ago, they reduced prices to what they were charging for their other music. Additionally, they made deals with several more music companies so the DRM free selection is now getting quite interesting.

The album I just purchased is Blue Finger, by Black Francis, aka. Frank Black. The price is somewhat high but I wanted to have this album nevertheless and it is only available online so far. People who know my music taste probably know this guy is well represented in my collection with just about any album he ever produced under any alias. Most of these albums I actually have on good old CD. However, in recent years his music has gotten less interesting. What I heard so far from Blue Finger he seems to have changed style again. The sound is more raw and much more pleasing to my untrained ear.

“Tight black rubber” is track 5 on this album and one of the better songs on it with a catchy but simplistic bass line.

Anyway, about the experience of using iTunes. It was quite confusing I’m afraid.

First of all, I had to accept terms of usage. OK no problem except that they were in Finnish. I am actually in Finland but like most people on the planet don’t actually speak Finnish. Beautiful language but my knowledge of it is limited to moi (hello, how are you today, fine weather isn’t it) and Kiiiiiiitos (thank you very much, I’m much obliged) and moi moi (goodbye, cu later). Finns are people of little words but they generally mean well. So I just agreed to a document that I cannot possibly have read or understood. But it is not like I would have payed much attention to it had it been written in English or Dutch. Thankfully the ok button was in English.

Secondly, it asked me several times whether I wanted to buy the album before and after agreeing to the terms. Lets see how often they bill me :-).

Finally, the whole iTunes plus thing, which means no DRM, was the bit that won me over. Unfortunately iTunes was a little vague on what I was actually purchasing. It initially listed itunes plus next to the album, which appeared to be the only option (good), so I clicked buy and iTunes informed me that this album was also available in iTunes plus. WTF do you mean ‘also’ anyway I assumed (again) everything was probably ok and once more confirmed that I actually wanted to buy the freaking album.

Seems to have worked since it is downloading now. The first track is actually 256 kbit AAC format and plays fine outside of iTunes so I assume I got the right album without the DRM crap and at the €9.99 price all albums cost instead of the much higher fee they charged until recently for DRM free music. All in all this is worth repeating. I have several more obscure albums on my wishlist that I would be willing to purchase under these terms.


As you may know, I currently use iTunes. And despite it’s quirks which include difficult to migrate library and the occasional instability it’s a very nice application overall and I’ve been reasonably happy with it for more than a year now (ever since I bought my ipod).

Well, there’s a great new music player called songbird. It’s been under development for little more than a year now. The development team includes some former winamp programmers. I was a great fan of winamp until I switched to itunes (shortly after this guy left AOL/winamp). Up until now the songbird development builds were interesting but not really worth using (I played with 0.1 a bit and it was unusable). That is starting to change though and how! It’s still a developer preview so don’t bother if you don’t have the nerve to use that kind of stuff. But if you do you are in for some treats. If you don’t, there’s a cool flash demo on the website. And yes, so far it more or less works as advertised (to my surprise, I was expecting performance/lag issues).

So, songbird is well on track to replace my iTunes setup, just not right now, maybe (I’m tempted though). I just installed it and it imported my itunes library and it’s currently playing my music just fine (important for a music player). On top of that the user interface looks very nice and seems very usable and responsive. Since it is based on the mozilla runtime (i.e. the same toolkit that Firefox and Thunderbird use), it inherits a lot of nice features such as extensions and themes (or feathers in the songbird lingo). The itunes library importer is one of the extensions. Another one that I have not yet tried is the ipod extension (synchronization!), that’s two important features for an ipod owner: Apple should get worried, busy or both.

The default feathers of both the website and songbird are very nice and stylish. The little birdy is sort of cute and the style sort of resembles the Jip & Janneke theme many Dutch people should at least be familiar with. Except this one has a weird puff coming out of its ass :-).

In addition to the usual gizmos, it integrates a webbrowser. This is used to integrate the internet into songbird properly. I.e. there’s a whole bunch of alternative music stores integrated. And they just work. It’s like magic. I type frank black in the search box, and a website pops up with some frank black tracks. Then more magic, a playlist appears below with the tracks. Ok I click play. And WTF! it starts playing more or less instantly. Without a hitch. That’s just super cool. There’s buttons to add the track to my library and to download. Apparently it supports podcasts in a similar way. This is the way internet radio was supposed to work years ago and still doesn’t work in any other media player I’ve ever tried. The search box uses search plugins just like slashdot. The default one is called the hype machine (which I’d never heard of before).

I guess the ‘secret’ behind songbird is its ability to extract links to music files from web pages and automagically construct a playlist for whatever web page you are viewing. There’s no reason why a normal browser couldn’t do that although most lack the features to do something useful with a music file other than handing it to a media player. Songbird does have that ability since it is primarily a music player that just happens to embed the mozilla browser. This concept works extremely well for any website that has downloadable tracks, pod casts or links to streaming audio (e.g. shoutcast).

I’m sure it has much more to offer and I’ll be playing with it a lot over the next week. As I said, this is a developer preview so wait for the 1.0 later this year if you can’t handle that. I’m not sure if I’ll wait that long though.

porsche gets some good testdrive

It’s only two days ago that I bought myself a Lacie Porsche 0.5 TB usb drive. Yesterday evening, after a reboot caused by an apple security update weird shit started to happen. Basically windows informed me that “you have 3 days to activate windows”. WTF! So I dutifully click the activate now only to watch a product key being generated and the dialog closing itself, rather than letting me review the screen and opting for a internet or telephone based activation. After that it informed me that I had three more days to activate. Very weird and disturbing news! A few reboots and BSODs later (which had now also started to appear on pretty much every reboot), I took a deep breath and decided that the machine was foobarred and I needed to reinstall windows. I suspect the root cause of my problems was a reset a while back which resulted in a corrupt registry and repeated attempts by windows to repair it before booting normally. I thought the problem was fixed but apparently the damage was more extensive than I originally thought.

Considering I had a few more days to reactivat, which despite my attempts I could not do, I decided to back up everything I could think off. I.e. I have about 100 GB left on the external drive, bought it just in time :-). Copying that amount takes shitloads of time. Basically most of the backup ran overnight with the assistence of the cygwin port of rsync. After re-installing windows earlier this evening (which activated fine, to my surprise), I got to work reinstalling everything (I have a few dozen applications I just need to have) and moving back all my data. Some interesting things:

  • Luckily I thought of backing up my c:\drivers dir in which I stored various system level drivers for my motherboard and other stuff that I downloaded when I installed the machine a year ago. This included the essential driver for the lan, without which I would have had no network after the install and no way to get the driver on the machine (or to activate it). Pfew.
  • I reapplied the itunes migrate library procedure I described last year (and which still gets me loads of hits on the blog). It still works and my library, including playlists, ratings and playcounts imported fine in my new itunes install. Would be nice if Apple was a bit more supportive of recovering your stuff in a new install.
  • After installing firefox 2, I copied back my old profile folder and firefox launched as if nothing had happened. Bookmarks, cookies, passwords, extensions all there :-). Since I practically live in this thing, that pleased me a lot.
  • Then I reinstalled gaim and copied back the .gaim directory to my user directory. Launched it and it just worked. Great!
  • Same with jedit.
  • Then I installed steam, logged in and ran the restore back up tool that was created along with the 13GB backup. Seems to work fine and I’m glad that I don’t have to wait a few weeks for the download to finnish. Ok the restore was not fast either but it got the job done.

Lesson learned: backups are important. I had the opportunity to create them when it turned out I needed them. But I should have been backing up more regularly. A more catostrophic event would have caused me dataloss and much more annoyance.

So a big thank you to Bill Gates et al. for wasting my precious spare times with their rude and offensive activation crap. Fucking assholes! I’m a paying customer and very pissed. I will remember this waste of my time and genuine disregard for my rights when making any future microsoft purchasing decisions. And yes, that probably means lost revenue for you guys in Redmond. I’ve adopted opensource for most of my desktop apps by now. There’s only two reasons for me to boot windows on my PC: games and photoshop. I understand the latter is now supported by wine and I’m much less active with gaming than I used to be. Everything else I use either runs on linux or has great alternatives. But for the moment, I’ll keep using windows because I’m lazy.

Itunes 7

I installed itunes 7 with some mixed feelings yesterday: I was fully aware that it was not working as advertised for some people. Prior to installing I read about various issues people were having with disappearing files, crashes and sound quality. I had a good reason for upgrading anyway: version 6 never really worked well for me. Just yesterday I just couldn’t launch it. The process would start and then claim 100% of one of my cpu cores but no UI would appear. Not even after waiting 15 minutes. This happened several times to me already. Probably it is some weird conflict between quicktime and my hardware/drivers.
So I figured version 7 probably wasn’t as bad or at least couldn’t get much worse. So, I fired up my backup script that syncs my music library with an external HD. After that I killed the itunes processes and fired up the installer. Pleasant surprise: everything worked. I was sort of bracing myself for random crashes but there weren’t any. Lucky me. If it wouldn’t have worked, I would have been able to roll back to version 6 (several posts in the forums explain how).
So on to the review. Itunes 7, unlike version 6, is a major upgrade with several nice new features and small adjustments to the user interface. I like the changes. My favorite one is album art fetching from itunes (I signed up just for this feature) and the ability to flip through your albums graphically is just real nice. It just works ™. Other nice touches include gapless playback (great for listening to Pink Floyd’s The Wall and Dark Side of the Moon), the new ipod screen which is selectable if you plug your ipod in, integration of podcast settings when you select the podcast screen.

One thing I would like is to be able to exclude compilations from the album view for the obvious reason that they are not albums (hence, no artwork or the wrong artwork!). Also I have a lot of shit there that I almost never listen to and which I don’t want to see when browsing my carefully collected albums (all properly tagged, naturally).

But overall I can’t think of anything negative and it didn’t eat my mp3s either! The latter seems to have to do more with luck than anything else. The Apple forums are full of stories of not so lucky people. But once apple fixes the bugs this is definitely a release to look forward to. If you install it, do it like me with a plan B.

Google analytics

One of the new google services is http://www.google.com/analytics/. Just by adding a bit of simple java script to your site, it starts tracking all sorts of statistics. I requested an invitation a few months ago and received my code a few days ago. I guess they’re encountering some startup problems and are also experiencing some pretty heavy demand from people like me.

I installed it into three of my sites (maximum is five) using three profiles:

For the moment, I won’t install it on the photo site (too much work). So far, it’s working fine on my blog thanks to this great wordpress plugin. Also it is working fine on my publications site. But even though the html is almost exactly the same (based on the same template) it won’t work on my main site. It just keeps telling me I need to add the javascript (which is there already). It seems more people are running into this problem so lets just see what happens. Apparently the problem might just fix it self in a couple of days.

Now as for traffic. The statistics are much better than what I used to get from nedstat before they renamed themselves to webstat4u and became greedy bastards. I’m doing pretty well. I managed to get a few hundred of visitors on my blog over the weekend. Apparently people are interested in my ubuntu post a few days ago and also my itunes post a few months back remains popular.

Update. The problem indeed fixed itself. Though still unconfirmed it is gathering data anyway for my mainsite.

fun with rendezvous

One of the innovative features in Mac OS X is support for DNS-SD, a.k.a. rendezvous. I was reading about the Java API for this by apple on onJava. Then I wondered if there was a pure Java implementation, because I dislike using native stuff in Java (complicates deployment).

That’s why I like google: “+rendezvous apple pure java” -> this link, right at the top. So two minutes after getting this idea, I’m doing a “jmdns-1.0>java -jar lib\jmdns.jar -browse” as the readme of JmDNS suggests, to launch the swing based dns-sd browser. JmDNS is a 100% pure java implementation of dns-sd that claims to be compatible with the real thing from Apple.

Now the reason I’m posting. I was expecting zero or at most a handful of dns-ds services on my network. I was absolutely shocked by the number of people publicizing these services on the same cable network as I am. There’s dozens of different services, each with multiple devices offering them. It seems the default settings of Apple cause their devices to happily announce all sorts of details about themselves on the lan. The nature of cable networks of course is that the entire neighbourhood is one big lan. So effectively, I’m getting access to all Rendezvous capable devices in my neighbourhood.

Right now, I’m listening to a some AC-DC tracks of one of these users who has kindly shared his music in iTunes, which means my iTunes magically finds this music (courtesy of dns-sd) :-).

Speaking of iTunes. I’m thinking of abandoning it. I like the UI but it crashes way too often. Just now it crashed twice. Yamipod aledgedly is very nice and capable of syncing with my ipod.