The process of transfer was easier than I expected. Moving content was easy, just export and import.
DNS and domain were the main issues. I had to point my name servers to digital ocean instead of the default wordpress ones. Then I need to create DNS records in DigitalOcean. Finally I need to configure the WordPress settings (which is just Apache settings for host name).
After finishing all these, I realized that my domain still points to the old WordPress.com site. It turned out that NUS cached the site (via swiftcache2-pgp.network.nus.edu.sg) and did not refresh it after I changed the name servers and the domain mapping. So I had to use VPN to verify that my site is working properly for everyone else (indeed it is!).
Moving to self-hosted site means a lot of changes. Some are what I have expected, like the freedom to use plugins and customize anything I want. Some plugins look really cool, like Editorial Assistant by Zemanta, which suggest links, images and tags automatically when writing new posts.
However, there are some downsides that I did not expect. Stats page was gone. I was under the impression that it should be a built-in function but apparently it is not. So I went to search the plugins and found a good replacement – WP Statistics. Later on, I realized that I could get back some WordPress.com functionality with Jetpack.
Overall, I think it would make a good decision as this blog has become more independent. I have control over more things than I used to. Although there are price to pay, literally for renting servers.