Archive for category Uncategorized
REST API Design Rulebook – a waste of e-ink
Posted by Christian in Uncategorized on December 3, 2011
REST API Design Rulebook by Mark Masse
My rating: 1 of 5 stars
The book tries to establish a set of rules for REST interfaces – I’m OK with that, it’s what its title says. When you define rules, you take an opinion, that’s fine. And most of what is defined as a rule is something I’d support as a good practice. A possible benefit of this rule book would be to provide some compact, memorizable, and clear guidance on good practices.
But then there’s this obsession about WRML.
WRML is a proposed way of defining the content types and schemas of REST APIs – see http://www.wrml.org/about. And what do we find as the sole literature on WRML: the REST API Design Rulebook. WRML has about zero industry acceptance; I never heard of it, and it does not even have a wikipedia page. And yet the REST API Design Rulebook puts it into the heart and center of every halfway advanced topic. Now a “rule” that is centered around an obscure standard proposal is totally void, and so this book is a simple waste of e-ink (even if that was its only fault, which it isn’t).
Pipes, valves, and social networks
Posted by Christian in Uncategorized on July 29, 2011
The tube is a message bus. When a sender pushes a message into it, it just comes out on the other side, and everyone receives it.

We’ve added a valve on the sender’s side. It lets the sender control to whom the message goes out. On the receiving side there’s nothing, you can get messages from everyone – look into your spam folder for proof.

Now there’s a valve on the receiver’s side. Everything you publish is public, but you only get messages from senders you follow.

Today in Android
Posted by Christian in Uncategorized on September 6, 2010
Two completely unrelated events happened today to my current favorite toy: The first is the arrival of Angry Birds. Yes, it’s just a game that’s been on the iPhone for a while now, but: it’s a successful iPhone game that gets ported over to Android now. And if there’s one thing that Android is really lacking it’s classy games. Please go ahead, PopCaps of the planet, and bring them over (I’d like to have BookWorm, if you please). And the birds aren’t even alone, quite a lot of high quality apps have landed in the market recently; all major news apps seem to be there now.
The other thing was that I changed my carrier (again) so I can have a flat fee into landlines, and some more data (5GB per month now) – that makes 30€. The SIM card arrived today, but after I installed it, my contacts were all messed up. The My Contact Card did not load at all, and some of the other contact were now sharing one and the same e-mail address: not good. The solution was to delete the contact storage data on the phone and then re-sync from Google and Exchange (between discovering the problem and the solution of course there was some severe amount of time). Deleting the contact storage is done like this (HTC Desire, Android 2.1):
Settings ->Applications -> Manage Applications -> Contacts Storage -> Clear Data.
The procedure seems safe, nothing was lost on the way, and the My Contact Card was working again afterwards.
Turning little robots into iPods (Part 1)
Posted by Christian in Uncategorized on June 22, 2010
I got myself an nice new Android phone (an HTC Desire, precisely). And what should I say? I love the thing. Great display, great apps; alright, there’s no good games, and the iPhone may look better (i.e. not be brown) – it’s an unbelievable device, I can install a great and free SDK and run my own software on it, and I can run it on a 10€ per month plan. Enough said? – well, I’m trying to replace my iPod with it, and that is kind of harder than it looks.
I’ve got about 2609 tracks in my library: a medium-sized one, I’d say. I have been using an iPod nano 1st gen, then an iPod Touch 1st gen, and I’ve bought about a third of the music on iTunes. A lot was already DRM-free, some was still old DRM-infested AAC files. So the first investment in using the Android as the primary music player was to get everything in non-DRMed format – it took me first about three evenings of burning music to disc and then import it again, then 30€ for Apple to upgrade some of the rest because I got tired of it, and then I just decided I wouldn’t be hearing most of the rest anyway and just let it go.
The Library
I did not want to use iTunes any more. It has become so slow. So unbelievably, nerve-twisting, nail-chewing slow. The machine I use is a Intel CULV on 1.3 GHz – not a race horse, but I can everything on it from Visual Studio to Eclipse to games like Portal, and a web server, and a database server, and some cheese on top. ITunes however just crawls. The shop is totally unusable. And yes, I run it on Windows, but I know from trustworthy sources that it’s just not any better on MacOS.
However: iTunes needed to be replaced by something. Here’s what I tried:
Songbird
Songbird is a free OS media library and player that builds on top of the Mozilla UI framework.
I loved Songbird from the first second on. Or better: I tried to. Because the version (1.5, I think) that did not support Windows 7 (in May 2010!). And that weren’t empty threats, it was really crashing left, right, and center. There was a beta version that is now final, it had some problems as well, but was generally OK. That version was just lovely: solid functionality, and a variety of plug-ins that integrate smoothly into all kinds of cloud services. For example, a sidebar that docks on the right gets the lyrics of each song that plays. A bar on the bottom gets information and pictures for the band. And of course, each played song is submitted (“scrobbled”) to Last.FM so it adds to your profile there. And: plug-ins to generate playlist based on similarity to the song you’re just listening to (aka “Genius”). So sweet.
Until you plug in a phone that is not explicitly on the list of supported devices. Like the Motorola Droid, or the Nexus One. But not the HTC Desire. Although that is of course a media player with exactly the same supported formats. But as long as Songbird does not recognize the exact model, it assumes the device can only do MP3. In order to be still able to get the music onto the phone, Songbird will encode each AAC or OGG encoded song into MP3. Remember I’m not running on a fast computer? That started to take a long, long time. And my relationship with Songbird severely suffered. Why did it not just copy the files across? To me, that looks like a stupid piece of over-engineering. Instead of assuming that the device can play most anything, and then dealing with the exceptions, Songbird assumes that the device can’t do anything until it is presented an exactly matching and badly documented file that needs to be present on the SD card. That was probably a good strategy five years ago, but right now, players can seriously deal with formats.
DoubleTwist
DoubleTwist is a free beta of a commercial product.
DoubleTwist has received some very good press as being polished and compatible to a lot of devices, so I thankfully installed it after some days of figuring out how to get Songbird to sync the phone. DoubleTwist is in fact polished, easy to use, and it works with the HTC Desire. What it lacks is: any feature. No rules-based (“smart”) playlists. No Genius. No Last.FM. If you’ve got a collection of up to 300 songs, that may all be OK. For everyone else, you can’t help but smile at such an feeble little application.
Amarok
Amarok is an OS media player/library for Linux.
Everything about Amarok looks so great – except the walk-through to installing it on Windows. And that due to length and windedness of that description, no-one else would have tested it. Amarok had me wishing to install Linux for the first time in years (but I resisted).
MediaMonkey
MediaMonkey a media player/library for Windows. There is a freeware version, and a approx.20€ paid “Gold” version.
I don’t really like MediaMonkey. It is one of these skinned applications where you wish it would just show a niced standard Windows UI. The buttons are small. There are about 5000 options and features of which you’ll use 10. There are no good community-supported plug-ins. It does scrobble to Last.FM, but that’s as good as it gets. But what should I say? MediaMonkey _works_. It’s _fast_. It has great support for tagging files. Knows all formats. Sorts files into the right folders. Is stable. Does not mind when you put more than a few songs into it.
And: MediaMonkey does a great job in supporting devices. Per device, you can say what exactly should go to the device in which format. Configuring that is not really a job for my mother – she’d be better off with DoubleTwist – but you don’t have to any obscure XML files either (looking at you, Songbird).
The free version of MediaMonkey is quite OK for trying it out, but you won’t stay with it. Mostly every advanced organization feature does not work, and there’s an ugly nag banner on the UI. But hey, I’ve just spent 450€ on a phone.
So, MediaMonkey it is. In the second part, I’m going to deal with the player app on the phone itself.
Thanks Apple for getting rid of…
Posted by Christian in Uncategorized on May 3, 2010
Thanks Apple! I was so relieved when I read Steve Jobs’ thoughts on that outdated, resource-hogging, non-open, and instable media player. Thank you so much for finally getting rid of it. No more 40MB updates that require a restart every time. No more system hangs when you accidentally click a video file.
He was talking about QuickTime, wasn’t he?
Signing in
Posted by Tobias in Uncategorized on April 18, 2010
Hi, I’m the new guy. Christian, kind and social as he is, invited me to join blogs – and here I am. I won’t bore you with the details, and just say that I’m going to be – and proudly – “Tobias the QA guy”, as that’s what I do. We thought some posts about testing couldn’t scare away too many of Christian’s readers. Glad to be here.
What’s worse than a broken build?
Posted by Christian in Uncategorized on April 14, 2010
… or, in general, the worst thing that can happen in a software shop?
Seen here, today.
klarmobil vs. simyo: we have a winner.
Posted by Christian in Uncategorized on April 6, 2010
Disclaimer:It could be that this only applies to the Ruhrgebiet/Düsseldorf area in Germany, and maybe only to myself. I have also zero science-grade equipment, or knowledge about mobile networks.
I’ve got a 3G USB stick for my private notebook, which I primarily use during work (I can’t/am not allowed to/don’t want to connect the private box to the corporate network) and on the train. I just changed the data plan from simyo to klarmobil, and the latter is clearly the better one.
Both data plans cost 10€/month for a unlimited data amount, where the the definition of “unlimited” differs quite a lot. The simyo plan lets you transfer 1GB per month, and when it’s spent, you buy the next one for 10€, not matter if the GB or the month finishes first. Klarmobil lets you transfer 500MB at full speed and then throttles to GPRS speed. I normally use up 200-300MB, so that’s not an issue. Both plans can be terminated on a monthly basis and do not cause any monthly extra cost.
Simyo is a brand of e-plus, klarmobil is o2. And that’s the real difference: e-plus does not offer HSDPA, and the network coverage is much weaker. Between Düsseldorf and Duisburg, the network fades on and off. The o2 network is a LOT faster, and significantly more reliable. So for me it’s thumbs up for klarmobil.


