Weekly Head Voices #152: A small but highly trained team of 11 year olds.

GOU#2, age 8, made this for the blog, super special.

This edition of the Weekly Head Voices covers the period from Monday August 6 to Sunday September 2.

Somewhere during this period, I experienced my 44th birthday.

More than once since then, my partner has had to endure my brand-new joke / half-truth that I’m now as clever as a team of four smart 11-year olds. (Hey, it took a team of four smart 11-year olds to come up with that joke!)

On the big (for me) day, I cooked for a super tiny group of friends. I experienced the ritual of preparing dinner for friends to be an honest one, and filled with human warmth. 12/10 – Would do again.

The next morning, ever-so-slightly in recovery mode, I was surprised by my little brother and my little sister (in-law). MY FAMILY HAD CONSPIRED AGAINST ME WITH SUCH SUCCESS!

Somewhere during this period, I also had the fantastic privilege of going back to my other home (the one with the cheese, and the clogs, and the social democracy FTW) and spending time with my family there.

So much celebration. So much warmth.

(There is also some bitter-sweetness, but that’s the price one has to pay for having roots in different hemispheres.)

I would have liked to say more, but this is one of those WHAMPSAMP* situations.

(As part of a deal I made at AfrikaBurn with a brother, I went fully vegetarian from the Friday to the Monday. It was actually really good!)

(* WHAMPSAMP = What Happens At Mysterious Place Stays At Mysterious Place.)

Music (nerd) and/or plain nerd section.

Somewhere during that period, Evil Charl went ahead and implemented that Spotify2AppleMusic chrome plugin that Responsible Charl mentioned in a previous edition of the WHV with the explicit purpose of getting it out of our system.

It’s out there now, and it’s free, so you might as well try it the next time that you need to convert any public (or private in your account) Spotify playlist to the corresponding Apple Music playlist.

I wrote this one in TypeScript where the type interfaces were a fantastic help in writing correct code for the parsing of the various APIs that this plugin has to inter-operate with.

Nerd section: BitBar with Lua, Hammerspoon, nerd motivations.

Also somewhere during that period, but in a slightly more surprising twist, I added lua support to the open-source macOS utility called bitbar, purely because I wanted to write a network bandwidth plugin that consumed less memory and was faster than the built in shell + awk versions.

That means I’m now also an official bitbar plugin author, which I find strangely satisfying.

Well, maybe it’s not so strange. I do have a thing with producing artifacts that other people (might) use in some way. There’s even more vagueness on this topic at the bottom of this post.

(BTW, the Python version of the same plugin consumed 8 times as much memory as the lua version, which itself consumed about 30% less memory than the shell+awk version.)

(BTW, if you’re on a Mac, and you know a little bit of lua, Hammerspoon is an amazing tool for automating your desktop via its lua bindings to the mac desktop API. In a few lines of code, I was able to throw out Spectacle, which itself is a great app, but Hammerspoon, the successor of Mjolnir, scores highly on the nerd street-cred scale and has MOAR FUNCTION.)

Au revoir

I am grateful that you are here reading this, thank you!

I have recently acquired a new side-project (Evil Charl: “HELL YEAH!” BRRRAAAAAAAAMMMM <— crashes straight through office wall to the great outdoors on big motorbike. Responsible Charl: “sigh.”) which is currently sucking up a great deal of my creative output.

We all know what usually happens to side-projects. I guess the high probability of failure may even add to their attractiveness.

In either case, high or low probability outcome, I’ll eventually spill the beans over here. Suffice to say that I do seem to have a thing for setting things up and then calling them universities, and in this case it’s even allowing me to produce reasonably sized packets of usefulness that might just magically add up to a valuable whole.

I am ever-so-slightly excited.

Weekly Head Voices #100: Happy 2016!

Cape Town from Table Mountain, photo is copyright 2015 Charl Botha.
Cape Town photographed from the top of Table Mountain. Click for high-res.

I wish you a truly happy 2016, filled with learning and helping other people! Neil deGrasse Tyson, exemplary human, said it best:

For me, I am driven by two main philosophies, know more today about the world than I knew yesterday. And along the way, lessen the suffering of others. You’d be surprised how far that gets you.

Time is fun when you’re having flies! I can’t believe that four months have flown by since the previous WHV. Since then, quite a bunch has happened. Some highlights for me:

  • I spent a week in The Netherlands, my other home, taking part in a second hackathon with the Evalueserve peeps (the previous one was in Gurgaon in India). This was again loads of fun, and we managed to build a significant new shippable feature (measurable value!) almost from scratch.
  • In October, I went back to The Netherlands (it’s my other home, remember) for 2.5 days to take part in the Doctorification of a friend. Besides the doctorification process (I’ve been out of academia for a while, so my terminology might not be 100%) which went swimmingly, I had so many high-intensity interactions with some of my favourite people that I literally almost missed my flight back. Just picture me waking up in Delft at 8:30 with a flight leaving from Amsterdam at 10:00…
  • For a work project,  I started programming in Apple’s Swift. As compiled high-performance languages go, this one has a number of modern language features which make it a truly interesting addition to one’s programming toolbox.
  • Further on the nerd-front, I’m trying to get more of us to use Signal instead of WhatsApp whenever possible.
  • We spent so many weekends and the Christmas vacation doing fun outdoorsy stuff (living at the southern tip of Africa has serious perks), not least of which was a trip up Table Mountain for the first time in 15 years. See the photo up top for an impression.

I have some fun changes in mind for this blog in 2016, but you’re going to have to stick around to find out what they are, so… see you later peeps!

On leaving the Netherlands

Moving consists of leaving one place and going to another. This post is about the first part. It’s really not easy to write, but I would like for people to understand that the leaving part of this decision is one of the more difficult things I have ever had to do.

So after 13 beautiful years in this great little country, we are leaving the Netherlands.

Our life here has been exceptionally happy and fulfilling. We’ve made many great friends, and even some best friends. Our children are super happy in their little lives. Hey, we made a little family!

The single downside of the beautiful life that we’ve had here, is that leaving is complicated, and even a little painful.

It’s complicated, because that’s the way it is when one has to move a whole household and wrap up 13 years of accumulated stuff. It’s complicated, because we’re moving in the wrong direction, away from our adopted country. We can’t leave a trace behind.

It hurts, because we would love to stay with our friends here, but we have now made the choice to live far away.

We actually have no good reasons to leave, while there are many reasons to stay. The thing is, our reasons for moving are all in the going to part.

I think this might be a healthy perspective on moving. Unfortunately, but not unexpectedly, it’s just not the easiest.

Dearest friends, thank you for the parties, for the laughter, for the warmth and for making us feel so at home. Thank you for being the kind of human beings that never stop striving to be more human.

I would love to see you on the other side.