Posts

9th Kyu - on our way

 So a little while ago I started going to a Karate class with my daughter. She's very busy, in band, glee club, drama, and so on - but last year she gave up ballet, which she'd done for five or six years at this point, and with that, gave up the only physical activity in her roster of things-shes-busy-with. Given that I prioritize physical activity -- I work out most days, either running, spinning, weights -- and know how important it is to take regular exercise, I was adamant that she needs to at least do something that would raise her heart rate a couple times a week. So I suggested Karate. Now, I've been waiting to suggest Karate for almost a decade. My daughter is ten now, but I've wanted to study Karate seriously for much longer than this. When I was my daughter's age, I did a few years with the South African JKA. My sister and I were in an after school care programme, as both of our parents worked, and in both of my primary schools there were Karate classes t

12 Contributions, 12 Months

Image
  A few years ago, a friend of mine decided to challenge himself to do 12 patches to Drupal in 12 months . Since I work on an open source product, I make contributions to OSS practically daily, but this year I'd like to give back a little more - so I'm going to attempt to do 12 contributions outside of the things I work on daily . But why? It's worth spending some time thinking and writing about the current problems with open source software. We have, by and large, a demographics problem , a problem with large corporations hoovering up the unpaid labour of contributors and profiting off it, there are various cultural issues within the free and open source communities we're still trying to address. And yet, I still think of Open Source software as being something of a triumph in a world where we seem to value profit over everything else. Where we seem to, almost reflexively, seek to reduce any occurring phenomenon to its dollar value. From the first time I heard of Free

JCE's Gifted and Talented Center

Image
Back in South Africa, in the early 90s, I was invited to take part in programmes offered at the Johannesburg College of Education's "Gifted and Talented Center". I can barely remember much about it. I recall that I did courses in electronics, drama, programming, and study techniques. Further, I remember the buildings and the general feeling of the place (massive buildings, alcoves with chairs and windows in the long passages between primary blocks, etc.). However, I couldn't remember very much around the nature of the programme (if, indeed, I ever knew anything about it) - who funded it, how were pupils identified, etc. I tried searching online but to no avail, there was one hit on someone's personal blog, but that was it. I did, however, manage to find the director of the JCE Gifted Child Enrichment Center from the time I attended and took a chance, asking him if he'd be willing to provide me with some information. He response was both generous and massively

Living at the end of the world

 Short one, but I think one that I'll revisit again and again here. There is no shortage of suffering in this world. Indeed, unless we're very lucky, almost every one of us will experience extreme suffering and loss through our lives, if only at the end where we lose everything, including our-selves (whatever that may be). Think of the latter as the extreme of personal suffering. In the other direction, call it collective suffering, we are also on the precipice of, potentially, major global destabilization due to a number of things, not least climate change, which threatens to cause unimaginable suffering on a mass scale. This collective kind of unimaginable suffering is always almost with us, whether it be from war, weather, disease, or ideology, among a host of others. We tend to fear this kind of collective suffering more than personal suffering, but if you zoom out a little and pay attention, you'll see that the scale of personal suffering is really just a slow moving

Ansible for devops without Vagrant

Image
November 12, 2023, Update to add: One reason to prefer Vagrant over docker is actually because of the mission involved in setting up projects running services. Since containers typically run single processes, systemd isn't necessary to coordinate these processes.    So I'm currently working through Jeff Geerling 's great book Ansible for Devops . However, I wasn't so keen on installing and running vagrant when everything should be doable (I believe) using docker-compose. At the same time, I'm going through his book so that I can better manage my few Raspberry Pis at home, and I'd like to be able to test my ansible scripts before running them on the live pis.   So what I decided to do was kill two birds with one repo and set up a docker-compose based test environment that can run my ansible scripts, but that mirrors my current ripi setup (mostly).   Home network My current homelab is nothing special. Three pis -- coffee, xray, and pizza -- each with a static add

What is this?

A while back, more than a decade ago (god), I had a friend who recommended blogging as a tool for thinking. Back then I was just getting started with graduate work in cognitive science (something I was new to) and was dealing with insecurity around whether I'd be able to cope etc. Life has changed, the degree got done in good time, I found I could mostly keep up with everyone around me (although, I also had the good fortune of meeting people who were way, way smarter than me - something everyone should experience as often as possible - more on this later, I'm sure) -- but I dropped the blog when I left my home country (South Africa) for my adopted one (New Zealand). I more or less got rid of all public channels of communication at that point - all social media, my blog, stopped doing philosophy, and stopped writing fiction. There were a few reasons for it, but mostly I think I realized that I didn't want to have to deal with the (imagined) pressure of putting myself out in

100 Go Mistakes 10-16

Here we go through the rest of Chapter 2  10 - Not being aware of the possible problems with type embedding Go allows you to not only include types as fields in structs, but also to embed them. Essentially this makes the fields of the embedded/base type part of the "containers" interface. Harsanyi points out that this can lead to exposing more than you might want to, since all of the base type's fields and behaviors are exposed as part of the container. If there is reason to hide the base struct's details, rather simply include it as an unexported field and write accessors. 11 - Not using the functional options pattern I'll admit that I hadn't heard about, or consciously noticed, this pattern before now, but it's quite brilliant. An issue with positional arguments in complex functions is that having tons of arguments that are either null, or unused along certain paths, etc. is a real PITA. My own preference, when factoring out the functionality into mult