Annus Horribilis, 2017

I’ve been writing New Year’s Notes for quite sometime, and in 2017 I ushered it in Lisbon. The year didn’t start particularly well, considering there was illness that befell (on Jan 1, with a doctor’s visit to the suite!). Not for me, I was still hale and hearty, but there was also a situation a week later in London, when there was a little snow, and a Uber driver riding over my dad’s leg, rushing to St. Mary’s Hospital, and finding out we had to pay absolutely zero thanks to the NHS. Like the late Sir David Tang said, there’s lots to praise of the NHS. (he passed away a week before I was to meet him).

My grandmother took ill in February (I admitted her to the hospital, a few hours before catching a flight to Los Angeles). She fought on for 50 days, and passed on April 18 2017. During that period I took extremely short flights and visited her twice a day (you’re limited when they’re in the ICU) when I was in town. I never really found time to grieve, because from death to burial, I hopped on a plane to San Francisco to go to the biggest event in the MySQL / open source database world. It surprised many people, who thought I’d be cancelling my appearance. But when I commit to something, short of being disabled myself, I will deliver.

I wrote this message on Facebook, but it was “friends only”, so I can’t actually link to it:

There is never a right time to say goodbye. At approximately 4pm on 18 April 2017, my grandmother, Amma, passed away. She had been in the hospital for about seven weeks, and was described as a fighter to me by her doctor a day before she passed. Alas.

She was a great cook. She hosted wonderful Christmas parties. I grew up with her, she looked after me superbly well. I’m in computing because she bought a computer in 1989 and it consumed my spare time. I have only fond memories of her.

I called her Amma. Which is what you call a mother. Because that’s what she was to me.

By July it has been confirmed my father had taken ill. This is going to be a tough battle ahead. And by December 26, I hear even more bad news from a personal standpoint, that I am still digesting and hoping & praying for the best.

So for me, I can’t wait for 2017 to end. I write this in the heart of Kuala Lumpur, at the Royal Lake Club, not overseas for the first time in a very long time. I want 2018 to be an annus mirabilis.

Travel stats are a good way to end this: 30 trips, 247 days on the road, 451,022km travelled, 53 cities, and 23 countries. I visited Montenegro (Budva in particular), which was a new place to check off. I also learned to dive, and had the best sushi at Sukiyabashi Jiro. Life’s all about moments, right? Anyway comparing to 2017, it was 5 trips more, 5 days less, about 12,500km less, 3 countries more, and 6 cities more.

Do I think I’ll achieve a lot less time on the road in 2018 (it is a goal)? Will my personal life get sorted? I’m really looking forward to the horror of 2017 to end. Fin. Here’s to annus mirabilis 2018!

December 2017 Crypto Tab Sweep

Cryptocurrencies? Blockchains? I’m sure you’ve heard of them before by now, unless you’re living under a rock. I’m an open source & database guy, so for me, I look at all this with a fine toothed comb. Probably doesn’t help that I enjoy reading the FT on a daily basis. Anyway, a selection of links… You may not be able to read all the links (subscriber only), but maybe I’ll think about something new come 2018.

Percona Live Santa Clara 2018 CFP

Percona Live Santa Clara 2018 call for papers ends fairly soon — December 22 2017. It may be extended, but I suggest getting a topic in ASAP so the conference committee can view everything fairly and quickly. Remember this conference is bigger than just MySQL, so please submit topics on MongoDB, other databases like PostgreSQL, time series, etc., and of course MySQL.

What are you waiting for? Submit TODAY!
(It goes without saying that speakers get a free pass to attend the event.)

Not all cloud instances are created equal

You know how anecdotally we say, “in the cloud, bad nodes exist” so you should always get a baseline?

Today I ran a query (repeatedly) on sqlite3, and on two instances, I got time measured as:

Run Time: real 13.405 user 13.243332 sys 0.046667
Run Time: real 10.989 user 10.963332 sys 0.010000

This naturally skewed results I initially got for something related to MySQL/MariaDB benchmarking. It really was such that while I had 2 instances, in the same region/AZ, I had one “good” node and one “bad” node.

Updating the locate database on macOS

Today I uninstalled CrashPlan on my macOS laptop since on August 22 2017 they announced they were exiting the home user market. I think the party is close to being over as even Amazon CloudDrive is now limited to 1TB of storage.

I wanted to ensure I removed any traces of CrashPlan. I use the locate command a lot. Ever wondered how to run the equivalent of updatedb on macOS? Its locate.updatedb (comes with a man page too). Run sudo /usr/libexec/locate.updatedb and that updates the locate database.

Pleased to say CrashPlan went away quite cleanly.

Keybase and FUSE on macOS

I like the concept of Keybase, have had an account there for sometime (https://keybase.io/bytebot). I also installed the Keybase app on macOS which has kbfs, the FUSE-based filesystem for Keybase users to share files with encryption (read more).

However, I also tend to spend time offline, and sometimes on restricted networks where I use TripMode. I realised very quickly that a simple ls or df could take some 20 seconds to complete (timeouts at work).

After poking around I realised it was Keybase. So this is what I do now:

keybase ctl stop
pkill Keybase

I used to have to also unmount the /keybase directory but this seems to be taken care of by newer clients. A macOS annoyance. I can’t always just have it running. There is a github issue #971. I think their iOS app is quite well done and have no complaints thus far.


i