I’ve used CyanogenMod before and was very satisfied with it. No bloatware, latest features and stable. Had it on my Motorola Droid (special version, since it’s not officially supported), on my Galaxy Nexus, I have it on my Galaxy S4 (my work phone) and after the latest KitKat update from Sony that drains the battery faster than a crackwhore needs her next shot, I decided to give in.

Bootloader unlock, which means a factory reset (you have to request the unlock key from Sony support). Which was the alleged solution to the battery problems anyway, so what could go wrong.

Enter Murphy.

My Windows 8.1 laptop does not recognize the XPeriaZ in fastboot mode. On neither USB port. Not with Android drivers, not with Sony drivers. Just an unknown device with a yellow exclamation mark in the device list. So I hooked up my phone on my Linux server. Yep. That just works.

CyanogenMod usually works perfectly with the ClockWorkMod recovery instructions. Boot in fastboot mode, flash the boot.img and reboot. Flash the custom rom image, and while your at it the Google Apps, and reboot and done. Not this time. The phone is stuck at the CM boot logo. Read the instructions again. Okay, mandatory “factory reset/wipe data” when doing a fresh CM install. I thought I did that, but hey, let’s restart. Flash boot.img, reboot, factory reset/wipe, install CM, install Google Apps. Reboot. Same thing: the CM boot logo. WTF?!

Google is your friend. I wasn’t the only one with this problem. Seems that the data partition made by Sony is encrypted in a way, and CWM does not wipe it properly or doesn’t wipe it at all. TWRP (TeamWin Recovery Project) should be able to do it properly. Next restart: flash the twrp image, reboot. Wow, nice GUI! No fiddling with the volume buttons, just point and click. Wipe the data partition/factory reset. Put the CM and Google Apps zip in the update queue (!) and flash them. Reboot. Wait. CM boot logo. Wait some more.

YES!!!! It asks for my PIN to unlock the SIM card.

Enter Google account credentials and……..oh wait. I have 2-factor authentication and the authenticator was …. on this phone. What now? Damn you Murphy. Turns out you can install the authenticator on another device, scan a barcode (the squares thingy) from a browser on your desktop and then it “moves” the authenticator to that device.
After that, I could succesfully login on my Google account with my fresh CyanogenMod installation.

Only to find that it does not automatically download all my apps. In fact, none of them. Ah well, at least it’s working again.

One more word: if you play games that are Google Play Games enabled, make sure you install Google Play Games first and then the games. Doing it the other way around will give you strange and unpredictable results. In The Gate for example, I got an “Download failed because you may not have purchased this app” which is very weird, since it’s a Free-2-Play game. Just uninstall, install Google Play Games, and then install your games.

I created the dynamic webservice. So far so good. Solved some hard to find problems (at least, Microsoft doesn’t tell you that these problems will arise). Now for the big finale. WCF in all its wisdom caches WSDL requests. Let us repeat that all together now: WCF caches WSDL requests. And there is no way to tell WCF to not do that, or for that matter to empty the cache. The only way to do that, is to recycle the application pool the service is running in, or (of course) to recycle IIS. It’s that bad.

I tried several methods: messageinterceptors, creating extra instances of the service, etc etc but there’s no way to work around the cache. Once requested, the WSDL is written in stone.

We serve web services that have a customerbased configuration. A customer gives us a data file, which will be the source for their endpoint. In our application is defined which columns are served to the respective methods. But all clients have the same set of methods (web operations). So the wsdl generator looks at the user that is logged in (custom servicebehavior), fetches the relevant column names from the database, and modifies the wsdl accordingly. Every customer is served its own data with its own choice of columns. Works perfectly. Until you change the set of columns and don’t restart the service. No problem on my development laptop or on the test machine, but a big problem if we want this in live in production.

At a dead end with this now. Looking for an alternative. But so far, none of what I find actually works.

Had a lovely -belated- Christmas dinner with my sister and brother-in-law. I fell ill at the end of the first Christmas day, so I had to postpone my dinner that was planned for the 26th. My sister fell ill as well. I was recovered enough today, and she decided she would not be a party-pooper and decided to come visit me. I stripped the starters from the menu at her request, and after all we had a lovely evening.

After cleaning up, I went upstairs to play some games. To my surprise, my PC had two black screens with only a cursor in the top left corner. Okay, let’s reboot. Same result. BIOS setup revealed that everything was seemingly in working order. But…..what’s that, only one harddisk. The normal HDD, not the SSD bootdisk. Unplugged the power, unplugged the normal HDD, boot and……

REBOOT AND SELECT PROPER BOOT DEVICE

Meaning the BIOS can’t find ANY boot device while only the SSD is connected. Let’s see what my server thinks of this disk. It’s linux, and it has hot-swap on the SATA ports enabled, so that should be a piece of cake.

And of course it was: to linux the disk was dead as well. On two different ports. After connecting via hot-swap, or after hard reboot.

Meaning: my desktop PC is out of order for now. The SSD has 36 months of warranty, and only 18 have passed. So yes, an OCZ Vertex4 128GB died after only 18 months of (not very intense) use. How fucked up is that?

Facebook is getting weirder every day. Apart from advertising, their biggest source of income is probably gaming. Gaming requires friends, or neighbors, or whatever the game calls is.
Now Facebook introduced paid messages to non-friends, and celebrities.
How can you expand your neighbors without harassing someone with a friend request first? And secondly, I think it’s ripping off celebrities, since they don’t see a penny of the revenues.

Maybe it’s time to turn our backs to Facebook. I just did by ranting here 😉

When installing the Android development toolkit on Windows, you might find yourself stuck on the second screen on the wizard, because the installer can’t find the JDK you installed. The following is not a joke. Press BACK to go to the title screen, press NEXT to return to the second screen, and….voila. The installer found the JDK. Remember, this is NOT a joke.

So now that the underdeveloped world has installed Firefox 4 for 32-bits Windows, where is the promised x64 version? Yes, there is is nightly trunk version, but where is the release? Why oh why is 32-bit still the main development platform? Early adopters have x64 systems, early adopters are consumers that have the latest hardware (and they don’t mind testing), which by the way has been x64 for the past 7 or 8 years approximately.

WTF! Oh wait, there’s an Android version now. Right. Like I want a slow browser that eats away 40MB just to start on my GSM? Why embrace a new market when you don’t even have the capacity to keep up with the current clientbase?

For some reason vmplayer did not start anymore. It complained about the kernel modules. WTF? I did not change anything on the system, it has not been powered off, I did not install any updates, so…WTF!? I googled around and found in some forum that moving the binary directory from vmware’s lib-dir would do the trick. It did! Here’s what I did: