Still here. Just offline.

Oct 19, 2016

I'm still here - haven't forgotten this blog. In the rush to get a bunch of stuff done at work with some alacrity, I seem to have run myself into the ground. More specifically, I seem to be an alpha tester for this year's version of the flu and I've spent the past couple of days sweating, throwing up, and sleeping. There was also a late-night trip to the ER somewhere in there. Oh, and let's not forget the lucid fever dreams - they're quite entertaining when you have control over them. Somewhere in the Dreaming I made the aquaintenance of a tribe of ants deep inside in the BART tunnel system and started cataloguing their graffiti while exploring the tunnel system. Once I'm back on my feet I'll queue up a few posts which are long overdue, and for that I apologize.

Back to bed for me.

Lipstick as synaesthesia accessibility hack.

Oct 01, 2016

This afternoon at a gather I had chance to speak with Tarah Wheeler at some length, and she noticed that I spent most of the discussion reading her lips. As part of the discussion it came out that I'm a synaesthete and was having great difficulty understanding her because I was unable to pick her voice out of all of the distracting visual phenomena due to all of the other discussions happening around me, but I was able to focus on her lipstick and pick her voice out of all of the static. The discussion turned to synaesthesia as I experience it and she asked if she could interview me briefly on the topic as an issue of accessibility (note: I do not consider myself disabled because I experience synaesthesia, I thought everybody saw and felt sounds until I was 28). Here's the interview:

Exocortex: Setting up Huginn

Sep 11, 2016

In my last post I said that I'd describe in greater detail how to set up the software that I use as the core of my exocortex, called Huginn.

First, you need someplace for the software to live. I'll say up front that you can happily run Huginn on your laptop, desktop workstation, or server so long as it's not running Windows. Huginn is developed under Linux; it might run under one of the BSDs but I've never tried. I don't know if it'll run as expected in MacOSX because I don't have a Mac. If you want to give Huginn a try but you run Windows, I suggest installing VirtualBox and build a quick virtual machine. I recommend sticking with the officially supported distributions and use the latest stable version of Ubuntu Server. At the risk of sounding self-serving, I also suggest using one of my open source Ubuntu hardening sets to lock down the security on your new VM all in one go. If you're feeling adventurous you can get a VPS from a hosting provider like Amazon's AWS or Linode. I run some of my stuff at Digital Ocean and I'm very pleased with their service. If you'd like to give Digital Ocean a try here's my referral link which will give you $10us of credit, and you are not obligated to continue using their service after it's used up. If I didn't like their service (both commercial and customer) that much I wouldn't bother passing it around.

As serious web apps go, Huginn's system requirements aren't very high so you can build a very functional instance without putting a lot of effort or money toward it. You can run Huginn in about one gigabyte of RAM and one CPU, with a relatively small amount of disk space (twenty gigabytes or so, a fairly small amount for servers these days). Digital Ocean's $10us/month droplet (one CPU, one gigabyte of RAM, and 30 gigabytes of storage) is sufficient for experimentation and light use. To really get serious usage out of Huginn you'll need about two gigabytes of RAM to fit multiple worker daemons into memory. I personally use the following specs for all of my Huginn virtual machines: At least two CPUs, 60 gigabytes of disk space, and at least four gigabytes of RAM. Chances are, any physical machine you have on your desk exceeds these requirements so don't worry too much about it (but see these special instructions if you plan on using an ultra-mini machine like the Raspberry Pi). If you build your own virtual machine, take into account these requirements.

Exocortex: Identity and Agency

Sep 05, 2016

Some time ago I was doing a longform series on Exocortex, my cognitive prosthetic system. I left off with some fairly broad and open-ended questions about the implications of such a software system for identity and agency. Before I go on, though, I think I'd better define some terms. Identity is one of those slippery concepts that you think you get until you have to actually talk about it. One possible definition is "the arbitrary boundry one draws between the self and another," or "I am me and you are you." A more technical definition might be "the condition or character as to who a person or what a thing is; the qualities, beliefs, et cetera that distinguish or identify a person or thing." That said, in this context I think that a useful working definition for the word 'identity' might consist of "the arbitrary boundry one draws between the self and another being that may or may not incorporate the integration of tools or other augmentations." Let us further modify the second, technical definition to include "the condition or character as to who a person or what a thing is or consists of due to the presence or absence of augmentations that modify the capabilities and/or attributes thereof," due to the fact that the definition should explicitly take into account the presence or absence of software or hardware augmentations. We also need to examine the definition of the word agency, which seems even more problematic. The Free Dictionary says that one definition is "the condition of being in action or operation," or loosely "being able to do stuff." The Stanford Encyclopedia of Philosophy says (among other things) the following about agency as a concept: The exercise or manifestation of the capacity to act. Of course, there are also arguments about the philosophy of agency that involve actors that should not be capable of having the intention to act doing so anyway, sometimes in ways that are functionally indistinguishable from organic life (which we usually think of as actors in the philosophical sense, anyway). And that's where things start getting tangled up.

Before I move on, I should set up two additional definitions. For the purposes of this post, 'agent' will refer to one of the functional units of Huginn used to construct solutions to larger problems. 'Constructs' will refer to the separate pieces of more complex software that plug into Huginn from outside.

OTR fingerprint page update

Aug 30, 2016

I'll be updating my OTR fingerprint page in a day or so. Please be patient.

Also note that I'm tired of being able to log into the server one time in ten, so consider if officially deprecated.

Taking a break for a while.

Aug 16, 2016

As the title implies, I think I need to take a break from blogging for a while. Just a week ago I had plans to write up my notes from DefCon and then go into all of the neat stuff that happened, like pulling a Charlie Brown at the locksport contest (okay, that wasn't so neat but at least I can laugh about it after the fact), the InSoc concert, and all of that happy stuff.

Unfortunately, I've just returned from the east coast. Mid-last week I got a phone call from my mother while walking to work and was told that Robert, a close relative who's been a strong influence in my life (though not necessarily a geographically close one) had gone in for neck surgery the previous Friday. By Sunday he had full-blown pneumonia; a day or two later he'd thrown a blood clot. Details get a little sketchy at this point: It could have been a pulmonary embolism or a heart attack or a stroke. Nobody's quite sure and I didn't spend any time digging for details. I was able to confirm that he'd coded twice and was in a coma.

Less than an hour later, my mother called me back. Bob was dead. She and my grandfather weren't able to travel to Georgia for the funeral so I went to represent our side of the family.

I wrapped up what I could at work and at home, threw a week's worth of clothes into a suitcase, and caught the first flight to Georgia, by way of Arizona and North Carolina. I'll spare you the details of an amazingly shitty cross-country flight which left my knees bruised and running on less than an hour of sleep out of 48, as well as a hotel from a chain that I don't think I'll ever stay in again if I can help it (La Quinta - 0/10, would not stay there again under pain of death).

Also, at one point during the weekend I went with a few of my cousins to see the Suicide Squad movie. Don't bother. All of the good stuff was in the trailers, and they cut most of that out of the final movie. Read the IMDB page and go on with your life.

The flight back was remarkably uneventful so I'll spare you the details. Suffice it to say that now I need to figure out how to get my head screwed on tightly enough to get back to work because, funerals and mourning and all that stuff aside, I still have a family to support and a job to do.

So, I'm going to be taking some time away from this blog. In part, I have a lot to catch up on. In part, I don't have it in me right now. I've been doing a lot of traveling so I'm stuck in a state of prolonged jetlag. And... in the last month I've attended two memorials, missed a third, and now I've gone to a funeral and I'm completely out of fucks to give.

Back from DefCon.

Aug 08, 2016

Back from DefCon. Don't know how I'm still on my feet right now. Went to lots of talks, went wandering more than is usual for me at DefCon, attended some incredible shows. Still smarting from how much even a lousy meal costs in Las Vegas. Had an incredibly lousy pair of plane flights to and from Vegas.

And now, back to figuring out how to reacclimate with workaday life.

Video from my HOPE XI talk is now online.

Aug 02, 2016

The Internet Society has re-uploaded the video from my HOPE XI talk. Here it is:

Feel free to get a chuckle out of how nervous I am, but I hope you enjoy my talk, too.