Rickard Andersson

Spanning Sync

After having looked around everywhere for a free way to keep my iCal calendars and Google calendars in sync, I finally just caved in and purchased a license for Spanning Sync. I had been using it for the first free month or whatever and when the trial ran out, I just had to have it. Truth be told, I believe this is the first time I’ve ever used a piece of software for the full trial period and then got a proper license.

Spanning Sync works just as advertised. It periodically syncs my calendars and it’s bi-directional. Add or edit something in Google Calendar and it will sync back to iCal. Add or edit something in iCal and it will sync back to Google Calendar. An added benefit is that any changes I make via the iPhone calendar also get synced when I connect the iPhone to my Mac here at home. It also syncs contacts if you want, but I currently have that disabled. My contacts list in Gmail is a complete mess and I don’t want that mess on my Mac and my iPhone.

If you ever decide to buy Spanning Sync, feel free to use the coupon code ECQB8Q. That way, you get $5 off and I get $5 back. Either that or use the following referral link:

$5 off Spanning Sync

Sweden shakes!

A lot of Swedes woke up this morning around 06:20 due to an earthquake. The quake measured 4.7 on the Richter scale. Not a lot by international standards, but for Sweden, it’s huge. It’s likely the largest earthquake since 1904. Weird stuff!

Read more at thelocal.se.

Personally, I slept through it all :)

A lovely day at work

I had a wonderful day at work this Wednesday. I rebooted a server running under VMware ESX after installing some updates. After the reboot, the server for some reason decided it wanted to do some time travel. It reset its clock to February 14, 2008. Despite the odd time travel, this kind of issue usually resolves itself after a few minutes when the server synchronizes its clock in the domain hierarchy. However, the server in question was the root domain controller (PDC emulator) – the server that is at the top of the time synchronization scheme in the domain. So, in a matter of minutes, most of the other servers and as far as I know, virtually all clients in the domain (~450), followed suit and also set their clocks back to February. This is when things started going wrong. The phone started ringing and people were coming into my room asking me what was wrong with the network.

At this time, I was starting to panic a bit. So I logged into VMware VirtualCenter and looked at the clock on the ESX servers. Two of them were accurate, but the third was indeed set to February 14, 2008 and NTP wasn’t running. I tinkered a bit with this and managed to force it to the correct date. Due to a bug in ESX, I was however unable to enable NTP via the Infrastructure Client, but that’s another story.

Then something even more strange happened. All of a sudden, the top domain controller was convinced the date was September 29, 2009 (!). Before I noticed this, the date had begun replicating all over the network again and now things really started to break. People were unable to login, network printing failed, mapped network drives became unavailable, software licenses expired etc.

And now, the grand finale. As a security measure, we have developed a Windows service that runs on the network and disables user accounts in Active Directory that haven’t been used in 6 months or more. Guess what this service did when it thought the date was September 2009? Well, it disabled all user accounts in Active Directory of course. All 6500 of them! When I got the e-mail from the service, I really started to panic.

I immediately reset the clock on the domain controller and started working on a way to re-enable all the user accounts that had been disabled. This turned out to be a lot easier than expected so that particular problem was relatively easy to remedy.

Everything wasn’t nice and dandy though. Replication between the domain controllers was royally f*!#&d. Because the time had previously been set back to February 2008, the domain controllers believed replication had not taken place in about 10 months. This led to this lovely error:

It has been too long since this machine last replicated with the named source machine. The time between replications with this source has exceeded the tombstone lifetime.

The proposed solution is to demote the domain controller that has lost connection with the forest, remove inconsistent deleted objects with repadmin and then restart replication. I wish! For some reason, the domain controllers were refusing to talk to each other so we were unable to demote the controller that was out of whack. We had to forcibly seize the roles from the broken controller, remove it from the domain completely and then remove all traces (metadata) of the old controller on the functioning controller using ndsutil. After many hours of scratching our heads and with some help, we were successful. We ended up with only one domain controller, but that we can live with for a few days.

It’s on days like this you really feel that you earn your pay.

Bricked?

Today as I was driving home from work, I noticed my iPhone didn’t have any service even though I was clearly in an area with full service. So I rebooted the phone and got this:

Bricked iPhone

When I got home, I plugged it in and started up iTunes. After half a minute or so, I got this:

iTunes activation error

Either my SIM card is busted or the phone itself is. I was able to restore the phone by holding down the power and home button for 10 seconds which apparently instructs iTunes that the phone needs to be restored. It didn’t have any effect though. I’m going down to the Telia store where I bought the phone tomorrow to see what they think. It’s at times like this I’m glad I never unlocked or jailbreaked (jailbroke?) the thing. Fingers crossed, I can get a new one!

Edit: I didn’t get a new one. They sent this one off for service, so I guess I’ll be without my iPhone now for a couple of weeks. Damn.

Shameless plug

DiffreyI just wanted to give a shout-out to a business my brother and a friend of his runs here in Sweden. It’s called Diffrey. They sell high-end kitchen cabinet doors, panels and handles that fit on IKEA standard cabinets called Faktum (or Akurum for those of you in the US). The business is still in its infancy, but I have a good feeling about it. Thus far, they only ship within Sweden, but I believe it’s their intention to start shipping to other countries as well.

I did the web programming for the site including the e-commerce and backend stuff. It does require both cookies and Javascript, but with that enabled, I think the shopping experience is quite nice.