whatever happened, happened |
Hi, I am Anh Quang Do, a 21-year-old self-taught iPhone developer and web developer. Feel free to ask me anything. Welcome to my personal blog. You will find pretty much everything I care about and want to share here. Linked posts are automatically imported from my Pinboard account. Visit this link if you want to read my original posts only. Oh, and don't forget to visit my Twitter account, Facebook profile, and my portfolio while you're at it. I have created a few iPhone apps, WordPress plugins, websites and scripts that you might find interesting. |
Just so you know, the first major update to my Writing Kit app is now available. It now becomes a universal app, and is free for all existing users.
Check out my blog post and get it from the App Store if you haven’t done so.
Couple of days ago I found my old Momento archive, which was exported back when it was still at version 1.x. I wrote a short Ruby script to import those entries into Day One:
require 'open3'
require 'plist'
m = Plist::parse_xml 'momento.plist'
m.each do |mm|
date = mm['Date'].to_s
text = mm['Body'].strip
Open3.popen3("/Applications/Day One.app/Contents/MacOS/dayone", "-d=\"#{date}\"", "new") do |stdin, stdout, stderr|
stdin.write(text)
stdin.close_write
puts stdout.read
end
end
This script comes with no guarantee whatsoever. Remember to back up your Day One library before attempting to execute that.
XCODE… Y U NO INCREMENTAL UPDATE?!
I wrote this review on March 8th, nearly 5 months ago. It’s a ‘glamorous review’ as I put it back then. Ironically the day I wrote it was the day my Kindle died. Yes, half of its screen suddenly went blank, and no effort I made was able to bring it back to life. Fragile.
I called Amazon Customer Service, and got a new replacement Kindle sent to me within the next 2 days. No problems since then.
Take the following words with a grain of salt. You’ve been warned.
-=-=-=-=-=-=-=-=-
I’ve been using my new Kindle for about half a month now. Long story short, it has become one of the best gadgets I’ve ever owned. Period.
‘Why buy a Kindle when you have already bought an iPad?’ is one of the most frequently asked questions. Indeed, an iPad could act as a reading device with the help of iBooks or Kindle app. It, however, can’t rival a Kindle itself at this task. Does one thing, and does it well is the philosophy that Kindle employs.
There are 4 things that a Kindle excels at: the screen, the weight, the battery, and the price.
Reading on a Kindle is like using an iPhone 4’s retina display. It’s so good that it blows away any alternatives.
A Kindle is so lightweight that holding an iPad to read books on quickly becomes a joke. And come on, do you honestly think it’s a good idea to hold a 10” display in one hand while you’re queuing for tickets or standing on a train while commuting?
Kindle’s battery rocks. I haven’t recharged it once since I bought it. Enough said.
The price point is £111 for the Wifi only flavour. Buying it to use along side with an iPad is no-brainer. If you don’t have an iPad, this makes a perfect impulse buy.
I had thought owning an iPad will make it easier for me to read books on the go, but clearly I was wrong. Not until buying my Kindle did I realise how much I love reading. I read while waiting for the train, standing on the bus, having lunch and dinner, before bed, etc - that is, anywhere at anytime. I realise how much time I’ve wasted doing nothing but going from places to places, thinking about nothing worth thinking about. I love how I can now utilise all those lost time doing something productive. The only time I can’t read - walking - is occupied by a long list of interesting podcasts.
Obviously, this glamorous review couldn’t be without criticism - it’ll be an advertisement otherwise. The Kindle isn’t perfect: it doesn’t support ePub format out of the box and its PDF support is sub-par. The screen flashes can be got used to, but it sucks nonetheless. Some say the lack of a touch screen and colour display are downsides, but I’m perfectly okay without them. Kindle is a reading device, not a general purpose tablet (i.e. post-PC device).
Verdict: if you are a bookworm, buy a Kindle in a heartbeat. If your significant other is, this makes a perfect gift.
-=-=-=-=-=-=-=-=-
Update: I’ve also bought one Kindle for my mom. She loves it.
I’ve been using my new Intel X25-M SSD for a while. Overall, I’m satisfied with it. The performance gain is very much noticeable: Launching applications takes no time at all, compiling code is amazingly fast, and opening my Aperture libraries didn’t slow my machine down as usual. It’s like a dream comes true.
That being said, going down from a roomy 250GB HDD to a 120GB SSD does make me become more conscious about preserving disk space. At the time of writing, I got about 10GB of free space for storing downloaded files and stuff. The rest are used for Snow Leopard, applications, iTunes and Aperture libraries, Dropbox (50GB account), etc. Xcode itself accounts for 14GB of space. If you want to install all its three versions (stable, beta and Xcode 4 Preview), add about 15-20 extra gigs.
Everything cuts both way. There was a problem I didn’t anticipate before making the switch. It’s ridiculously hard to install Bootcamp on an Intel SSD. How hard, you may ask. Well, I spent about 10 hours yesterday to get my Bootcamp configuration up and running: Windows XP SP3 in parallel with Mac OS X 10.6.6, just so I can play some of my favourite Windows-only games once in a while.
Being so naive, I read the Windows XP hardware requirements and figured 10GB should be enough for its installation. That turned out not to be the case: Bootcamp required at least 25GB just to repartition the disk, of which at least 20GB is used for Windows. After moving stuff around to meet that requirement, I found another problem: my disk was too fragmented to be repartitioned. The solution for this was simple, although it took hours to complete: Backup my whole system to another disk, reformat it and restore everything to where it started. Thanks to SuperDuper, the process took me only a few clicks. Lesson for you to take home: If you want to repartition your disk, do it when it is still new. Oh, and for those using a non-SSD disk, iDefrag is the best defragmenter money can buy.
Now that I had 2 partitions ready, one HFS+ and another FAT32, one may think the rest would be easy. Wrong - the pain had just begun.
Reboot with a Windows CD, install it into the FAT32 partition, reboot the system again and I faced a sweet Disk error message.
Reboot into Snow Leopard, install rEfit, reboot the system twice to make it recognise rEfit, open the Partition Manager and this time I got a chance to fix the MBR record that caused the earlier problem.
Reboot with the CD installer again, remove the FAT32 partition, create a new NTFS one, choose to install Windows one more time, boot up the system (again) and… Well, ‘missing hal.dll’. I was about to give up.
I did another reboot, fixed the MBR record again, then did another reboot, chose to reformat the partition instead of remove/create a new one, and did another install of Windows XP. This time, it worked.
Let me say that again: this time, it worked. I finally got Windows XP SP3 running on my Intel SSD. What a nightmare.
Lesson to take home: Don’t mess with Bootcamp and a dual OS setup, unless you absolutely need to. Trust me, it hurts a lot. Oh, and did I mention that before all these hassles, I did upgrade my SSD firmware to the very latest version, which was just released one week ago?
Other than that particular trouble, let me re-emphasise that switching to a SSD is a rewarding experience though. Your machine will feel crazily fast. In fact, it will feel like a completely different machine.
Couple of days ago, I overwrote the .git directory within my Cyberspace folder. It was a terrible mistake and costed me 5 hours worth of commit logs.

Yesterday I repeated the same mistake — this time by overwriting the whole [INSERT_MY_NEW_PROJECT_NAME_HERE] folder. Worse yet, all the new code hasn’t been commited to my Git repository. It sucked.
Sitting there for two full quiet minute, I realised that there was still hope. Dropbox has a little cute feature that automatically saves all snapshots of my files. The free version keeps these snapshots around for 30 days, which is more than what I needed.
The first thing I did was to pause Dropbox’s syncing to prevent the file deletion from propagating to my other devices. I then hopped to Dropbox’s website, browsed to the deleted folder’s path, carefully looked around, clicked the Restore folder button and waited for a few seconds.
BAM! Everything is back to where it started. I quickly did a commit and push everything to my remote branch to have them backed up.

The whole incident took 7 minutes from start to the (happy) finish. If only I hadn’t use Dropbox to backup my files, and chose to rely only on my infrequent ‘git push’, I would have lost all the (beautiful) code I had written.
Now you understood why all my photos, music, code and documents took the most space in my Dropbox folder. Once data is gone, it’s gone forever. Keep it safe.
With my installation of the new Intel SSD today, my good ol’ MacBook Black Early 2008 has become much more powerful than ever before. This has surely achieved my dream setup:
To put things in perspective, I timed how long it takes to perform various tasks — the results were amazing:
In contrast, it used to take me about 50 minutes each time I installed a new version of Xcode.
Verdict: So obvious that I don’t even have to say aloud — If you have money to spare, a SSD is a worthwhile investment.
Shh… I’m launching a new app for the iPad and looking for some beta testers. Feel free to reply to this post with your iPad UDID & firmware version if:
The first beta built will be sent out later today (Sat 2 Oct) or tomorrow, so please be quick if you want to be in!
LOST valentines, part 4.
typography on jetBlue
Today is a good day, for Writing Kit, my favorite text editor for iPad and iPhone, has hit version 3.0. Why is this such a good thing? Besides the...
Favorite Movies - 500 Days of Summer
“Just because she likes the same bizzaro crap you do doesn’t mean she’s your soulmate.”
Dad forgets to delete history.
The iPad’s split keyboard has phantom buttons. If you’re used to typing Y with your left hand, you can.
To enable this keyboard, tap-hold on the...
Skype - Changing the default chat font to Comic Sans makes the smiley sad.
/via kreshnik34
Awhile back, Jacqui Cheng from Ars Technica contacted a bunch of folks (including me) for a story she was...