The Performance Review

At some point during the year, many large organizations like to engage in a paper-pushing activity designed to encourage productive people to play down their accomplishments and less-productive people to exaggerate their contributions. This task goes by a number of names around the world but, regardless of the spin placed on it by HR, it's really just a performance review, sometimes with consequences. Managers with my employer spend January and July of every year running around to meet with all of their people, see what's been done, what's left to do, and what support might be offered. January discussions often include talk about promotions or raises for people who have contributed a lot. While I tend to work from home most of the time, the corporate chat rooms are abuzz with people wondering if they'll be asked to move up a rung on the corporate ladder. More often than not, I wish them success in the manner befitting a Klingon.

While I can understand why larger companies will go through the effort of creating years-long paper trails outlining what it is a person has done in exchange for a regular paycheque and a place to go everyday, I seldom know what to write down on my own report1. What exactly is it that I do in a given year? Sure, I create, transform, and destroy for a living, but this is hardly the sort of explanation that fits on a dry Excel sheet that tries to quantify whether I'm worthy of a reward. This has been my problem every year since the first time I was subject to the process. What exactly have I accomplished?

Looking back over 2018 and the first month of 2019, I can point to a number of successful projects and positive contributions that would look nice on a piece of paper. None of these were done in isolation, though. Even the tasks that relied heavily on my ability to type words into a computer and turn data into information required coordinated efforts with a minimum of three people on two continents. At best, all I can tell my various bosses is that "I work well with others", and isn't this really the best an organisation can ask for?

A salesperson can point to a hard number that is translated directly into revenue for the company. A person working on a telephone can point to how many calls they received and how quickly they answered. None of my superiors care how many characters I typed into a computer, or how many terabytes of data I processed, or how many applications I developed/enhanced/replaced. What they genuinely care about is "does Jason need his hand held to get things done?". The answer is "don't touch my hand ... please."

As I look at this Excel sheet and the myriad of things the management would like me to fill out, I wonder if my time wouldn't be better spent scrubbing toilets, fixing poor SQL queries, or going along with sales people to explain just how we're going to measure a person's ability on the various tests they'll take while studying. I earn enough money already and am not at all interested in moving up the corporate ladder at the day job just yet. What I seek is simple: a list of tasks to complete. What the company seeks is also simple: a person who can complete a list of tasks without too much supervision. Quantifying my utility within the organisation shouldn't be necessary unless the company is looking for a reason to let me go.

All this aside, the performance review will be filled out. It will be boring. It will state in very clear terms that everything I did required a team. The better the team, the better the results. The sooner this is done and over with, the sooner I can get back to the never-ending list of tasks.

  1. Not sure how normal it is for a person to self-report, then negotiate with one of their supervisors to see whether the point-form items should stay, go, or be enhanced a bit.

Slowing Down

While walking Nozomi today she gave me the special look that meant she was feeling playful and wanted to race. We had been outside for 15 to 20 minutes by this point and the call of nature was already answered. Every extra minute was for "fun", and she meant to have some. Just like every other time we've competed to see who can cover the most distance in the least amount of time I made eye contact and said "Ready? ... GO!" Just like the countless other times we've done this, she took off with as much speed as she could muster, trying to reach the far side of the park ahead of me despite the tether that binds us1.

Nozomi at the Age of 3

Despite calling her a puppy, Nozomi is not as young as she once was. In the photo above she was just three years old and could run at about the same speed as me. Now, as her ninth birthday quickly approaches, she's noticeably slower. Her golden fur is going silver. Her top speed seems to be closer to a slight jog, which saddens me every time we run together. She's still very willing to play, but moderation is key.

Sometimes I wonder what Nozomi thinks of our time together. Does she run because she wants to play? Or is it just because she wants to run and get the blood pumping? Is she happy with the lifestyle provided? Logically I understand that these questions are unanswerable. Nozomi is not human so has a completely foreign perception of the world and her needs. Just looking at her facial expressions can reveal a lot about what she's feeling, but her thoughts (in whatever form they may take) remain elusive.

  1. Nozomi has a nice, extendable leash that goes from 60cm to 5m. This gives her some semblance of freedom when we're out in the park and she insists on sniffing everything.

Five Things

The first month of the year is two-thirds complete, yet it feels like a week has passed since the start of 2019. My awareness of the passage of time has been severely disrupted either the the boy or the weird split days of work for the day job. Perhaps it’s a little bit of both. That said, the year is already shaping up to be more challenging than 2018 in a good way.


Reiko’s grandmother was born on this day in 1920. She’s battled Alzheimer’s for the last few years and often forgets things. Her faith has been a guiding force throughout her life and she would often quote large sections of the Bible verbatim when making a point about something. However, as her memory falters, she’s lost all memory of God. She’s forgotten the names and faces of her children. She’s forgotten that she’s not a young girl living in Imperial Japan. What she hasn’t forgotten, though, is the boy. She often asks if he will come to visit her in the care facility. While we had planned on visiting to celebrate the special occasion, the weather was not cooperating. We’ll likely make the trip on a weekend in February.

Nine Percent

Kirin has a line of semi-carbonated vodka beverages that are quite enjoyable. They come in a number of flavours including Sichuan lemon, grapefruit, strawberry, and a bunch more. I generally stick to the lower alcohol content line, but will pick up a can of their “strong” 9% variations from time to time. Today I tried a 355mL can of “strong yuzu” and was surprised by how quickly it hit me. One should not consume these is they intend to drive at any point the rest of the day. The company isn’t kidding when they say it’s a strong drink.

Almost A Digital Island

Over the last six months I’ve been pulling back on what cloud services I use for personal data and where my information resides. What this means is that a lot of the useful tools provided by companies such as Google, Apple, Microsoft, Dropbox, and others have been replaced with self-hosted alternatives. I’ve been fortunate enough to have the computing and storage capacity to make all of this possible in my house, but there’s just one last service I haven’t been able to ditch, and that’s Zoho; a company I rely on for all of my email needs.

At some point I would love to host a mail server out of my home, but it does not make sense to do this until I can ensure that my messages will generally avoid landing in people’s spam box. A lot of self-hosted email servers are never added to the various white lists that allow mail to travel to a recipient without being flagged as suspicious.

Two Pillows to Stop Snoring

For much of my adult life I have snored while asleep. According to Reiko the noise is not an all-night affair but starts just after 4 o’clock regardless of what time I crawled into bed. We’ve tried a number of things to resolve this problem, including sleeping in separate rooms for six years. Recently, though, the snoring has stopped. What’s changed? I’m now using two pillows, one stacked atop the other, to hold my head a little better.

We should have tried this years ago.

Moon Photography is Hard

This evening I brought the camera with me for Nozomi’s evening walk in the event we saw some of the blood moon. Unfortunately our walk in the park was a bit early, but I wanted to take some pictures of the moon anyway. 66 attempts at a good, clear image later, I called it quits and brought a Nozomi home. Not a single photo with the nice Canon came out decently enough. A bright object against a dark background requires a little finesse to adequately capture. Sadly I have none.

Tomorrow is the start of another week. I hope it’s a good one for everybody.

A More Interesting Search Mechanism

There are a lot of things that I like about the 10Centuries platform. It can run on a minimal amount of hardware. It can support a wide array of goals1. It can even keep it's sole developer busy and out of trouble for the most part. One thing it can't do very well, though, is search.

A Better Search Box

There are search functions in the system, of course. My complaint is more about the ineffective way I go about delivering search results as there are two different methods that are employed. On blogs such as this one, for example, the search page performs the look-ups locally in the browser. When the page is loaded, the API is queried to return all of the post titles, tags, and a couple of other attributes which is then stored in memory. As a person types in the text field, the browser runs through everything in the memory to see what matches, then presents the filtered list.

While this works for the most part, the method is woefully incomplete. To find a blog post with the word "yellow" anywhere in the body, I would need to use a search engine like DuckDuckGo, Google, or Bing, as the body text is not returned and stored in the browser, given the sheer size of some websites (like this one).

The other option would be to go with the standard search method of showing the text box and waiting for a person to press the search button before querying the API. Going right into the database with a specific set of criteria would be a far better way to provide more specific results without filling a person's browser cache with superfluous data. This is how it was done for 10Cv2 and it's how search works for the social posts. Given how most sites across the web work the same way, this would make the most sense ... right?

Even if it is the simpler solution to the problem, it's not the most interesting. Performing search with the help of a database is just too easy. The instant feedback of results as we type our criteria is a much more exciting challenge, particularly when the back-end API is written in PHP rather than Python, Ruby, or something else that can more easily use websockets to maintain an active connection between the front and back of the system. What I'd like to do is find a middle ground that could offer the best of both worlds2 without bogging down the browser.

Google shows common and related searches based on what's typed. Bing does much the same. 10C simply does not have the volume of search requests to make this a feasible option (nor is there even any tracking for what search queries people run), but one option might be to have a list of unique words sent to the browser for auto-completion. This way a person looking for "Nozomi" would see the option after the first or second character is entered. Once a person is happy with their filter criteria, the "Search" button is hit and results come back from the API.

Is this more interesting than the current mechanism? Sort of. Will it be something that makes search more useful? That's the $50 question.

  1. The 10C core platform has been used for: blogging, social networking, note-taking, library cataloging, school management, shuttle-bus coordination, and even recording temperature readings from various network-connected thermometers and presenting the data in a real-time feed to people interested in such things.
  2. Mind you, this is all geared towards people who have JavaScript enabled in their browser. A person who has disabled JavaScript for security or other reasons will just have a text box until they hit the "Search" button.

The Happy Space

Yesterday, while in Tokyo for a couple of meetings, I was given another notebook to replace the Ubuntu-powered MacBook that I've been using the last few years for the day job. The reason for the change was a change in corporate policy that prohibits people in my position from the freedom of BYOD1. Given how much sensitive data I work with on a daily basis, this makes perfect sense. For a long while I had considered requesting either Lenovo's X1 Carbon or the X1 Carbon Extreme. These machines have earned glowing reviews and the Extreme model supports a pair of NVMe drives and 64GB RAM, which would be more than enough to keep up with whatever workload I might throw at the machine for several years to come.

As I was taking too long with the decision, a colleague got in touch over the Christmas break to say that someone had retired and their X1 Carbon was available. Everyone seems to have learned that I would much prefer a Lenovo over the company-standard Dell XPS line, so sending the unit my way made sense. I asked about the specs and was disappointed to learn that it was a 5th generation model with just 8GB RAM, a Core i5 U processor, and a 1920x1080 screen. Standard fare in the business world, but not something that really stands above the 2015-era MacBook Pro that I've been using over the last few years. As I'm generally not in the habit of asking the company to spend money, I agreed to pick up the unit the next time I was in Tokyo.

I do not regret the decision.

My Happy Place

Despite the specs outlined above, the notebook shipped with a 512GB NVMe SSD drive that I clocked transferring data at 3,177MB/sec., which is well over 10x faster than the pair of SSDs that sit in my Lenovo workstation/server. Ten. Times. Faster. Despite the limited amount of RAM and the lower-powered U-series processor, the raw speed offered by this storage medium has more than made up the difference. As with most Thinkpads, the keyboard is an absolute treat to use. The TrackPoint nib is more than welcome on any device I use2 and the touchpad is just as accurate and responsive as the magic slab of glass found on Apple's devices. As one would expect, the unit arrived with a fresh Windows 10 installation and I quickly replaced it for stock Ubuntu 18.10, opting to not use an LTS or the MATE desktop for a change.

After just a day of use, the machine has quickly become my favourite computer of all time. While I was not particularly keen on using a lower-resolution display, the screen looks absolutely wonderful with Ubuntu. Characters are sharp and easy to read. Colours are vivid. The brightness — when not in direct sunlight — is more than enough for my eyes. A higher-resolution, 500-nit display would be nice, but it doesn't seem necessary given the fact that there's already a 24" 4K display sitting right next to the notebook. This machine will do just fine for the next couple of years, particularly when all of the heavy-CPU tasks are farmed out to the work-provided Core i7 Thinkpad W541 that sits in the cold spare room upstairs.

My personal notebook will continue to see use on the weekends and when I'm doing non-work-related development, of course. A good machine will never go to waste in this house. Its days as a heavy-lifter, however, are over.

It's interesting to think back on all the work that's been done with a computer. The MacBook helped me accomplish a great deal more than any other computer before it. Two LMSes, two major versions of 10Centuries, and dozens of smaller projects were written with the device. Hundreds of terabytes have been written to the storage medium. Several petabytes of data have travelled over WiFi and the USB ethernet adapter. Hundreds of hours of podcasts have been recorded, and thousands of hours have been edited, with the machine. The notebook was the primary tool that allowed me to earn the money that went made a mortgage and a new car possible. In how many professions can a person point to just one piece of hardware and say "without this, I would be nothing"?

Were there pain points with the machine? Absolutely. The more recent versions of macOS slowed the device down noticeably and introduced quirky problems in applications that had been perfectly rock solid before any update. APFS, Apple's new file system, introduced more uncertainty and lag than anything I'd ever seen beforehand. Even when disabling the deep iCloud integrations the system would have difficulty keeping up with my typing speed. Frustratingly these issues persisted even after wiping the device clean of all data and starting over.

All of the problems vanished after moving to Ubuntu MATE, though. The notebook went from being a sluggish device to a faster-than-lightning tool that easily kept up with all but the most demanding of tasks.

Back to the Lenovo, what's interesting about this unit is that the BIOS shows that the system has less than two weeks of operational time logged. Despite being in the possession of a colleague for a year, it sat unused. So while there are a few fingerprints on the device, it is still very much a brand new machine. Now it's my brand new machine running stock Ubuntu. And I am quite happy with what I see. The home office is very much a happier space.

  1. Bring Your Own Device
  2. Yes, I would use a TrackPoint nib on an all-glass phone if the things existed. Why doesn't Motorola get on this?

An Abundance of Devices

While on the way home from the day job's Tokyo HQ today I wondered if there were perhaps too many devices in my bag. A pair of notebooks. A pair of tablets. A pair of phones. A mouse. Even a couple of dongles. Two of these items belonged to me while the rest were from the day job, collected over a period of years to help me carry out my various responsibilities. As with every resource, I generally put them to use right away, but I sometimes consider whether it's justified for me to have so many devices at my disposal given that my role has changed from being primarily a developer to more of a data person. There are times when I will break out the code editor and hammer out some solutions but, for the most part, I'm expected to be working with databases and datasets more than interfaces and APIs.

Should there ever be a change in my employment status, be it intentional or otherwise, a lot of decent hardware will need to be shipped back to Tokyo. While I do often look for alternative organisations that may better suit my interests, I really shouldn't complain about the current job given the freedom, flexibility, and resources that are often made available to let me solve complex problems.

RFC 1855

In October of 1995, just over two years after the Eternal September, Sally Hambridge from Intel published Request for Comment 1855 outlining some Netiquette Guidelines. The objective was to have a singular place for newly-connected people to go and learn how to interact online in plain language. The abstract reads as follows:

This document provides a minimum set of guidelines for Network
Etiquette (Netiquette) which organizations may take and adapt for
their own use. As such, it is deliberately written in a bulleted
format to make adaptation easier and to make any particular item easy
(or easier) to find. It also functions as a minimum set of
guidelines for individuals, both users and administrators. This memo
is the product of the Responsible Use of the Network (RUN) Working
Group of the IETF.1

Reading through the document it's interesting to see how many of the annoyances and generally bad habits that people dislike about modern social services and websites also existed nearly a quarter of a century ago. Some forms of abuse have certainly evolved, but very little has changed. What RFC 1855 tries to communicate, however, is most certainly something that a lot of online services should strive for. Treat people nicely. Take your hate somewhere else. Observe.

Heck, I like these guidelines so much that it seems like a good idea to put many of them on the 10C home page for people who might consider joining to see. Everyone who uses the service is already awesome. Anyone who joins should understand that it's a community effort to maintain the awesomeness.

I stumbled across this old RFC while listening to Bryan Lunduke's episode on the subject. 1995 was an interesting year in technology. Intel's Pentiums were top of the line. Windows 95 was everywhere. IRC and newsgroups were the ways people interacted and shared things. This was a year after I took the name "ablematigo" as my online handle but before shortening it to comply with EFNet's 9-character limitation. Our technology was a lot easier to understand back then, and a lot more people understood the between the web and the Internet. What artefacts from this time period will people look back fondly on in a quarter century?

  1. Page 3 of the Netiquette Guidelines: Limit line length to fewer than 65 characters and end a line with a carriage return. The abstract maintains this rule ... but it's going to look awful on really narrow — or really wide — screens.

High Definition for Under $500

Back in 1998 I did something stupid and got myself a Visa card. By this time I had $8,700 in student loans debt, worked at Burger King three days a week, and had very little experience with any proper management of money1. That said, the Royal Bank of Canada figured that I was good for a $750 line of credit and sent a card almost straight away. As one would expect from a 19 year old with two paycheques worth of money available, I immediately went to the mall. What I bought, though, was anything but frivolous.

Shortly after my father remarried in 1992, I was brought an optometrist. My step-mother had noticed that I would squint a lot when looking at something far away or otherwise use three specifically-placed fingers against my right eye muscles in order to gain a bit of clarity. She wasn't nearly as patient with this as the rest of my family was and insisted my eyes be checked. Sure enough, the results showed that I was near sighted and needed glasses. Money was a bit tight as a result of the recent marriage and moving expenses, so I was told that I could have any pair of frames I wanted so long as the total cost of the glasses came in under $100. The lenses themselves were $30 a piece, which left very little for anything else. So little, in fact, that there were just three frames to choose from. One for women. One for girls. One for males.

And it was ugly as hell on my face.

My pleas were ignored as my step-mother "chose for me", going with the thick lenses and large, faux-gold pilot frames that looked like they were designed specifically to ensure anyone under the age of 70 wearing them would be teased to the point of tears. A week after the order was made, the unwelcome visual aids were ready and I was expected to wear them at all times ... "or else".

Funny thing about saying "or else" to a 13 year old: it only hardens their resolve.

At first I would wear the glasses only around my step-mother. They'd come off my face the moment I stepped out the door for school or she went out to run errands. While better vision eliminated many of my headaches and regular bouts of eye strain, it was not worth the price. As the months went on, though, I would wear the uncool spectacles less and less. Only when a parent or relative would specifically insist I wear them would they come out of hiding. This pattern of avoidance continued right into high school, where I would just leave the glasses in my locker to be ignored under a pile of old handouts and school club fliers. At the end of my second year2, though, I think I accidentally threw them out when cleaning my locker.

I say I think, because I never saw them again. At the end of the year students are asked to clean out their lockers. This generally means that the school has additional garbage bins put in the hallways for the kids to fill with all the refuse that's collected over the course of a year in the 30cm-wide by 45cm-deep by 190cm-tall metal box. Given that this happens when the weather is lovely, who in their right mind would want to carefully go through all the crap that's collected at the bottom of a locker in order to sort out what should stay and what should go? If it's at the bottom of a locker, it clearly wasn't important to begin with ... right?

Well, I think my glasses were sandwiched somewhere in the midst of all the A4-sized paper that was shoved in the bottom-most section of the locker, generally reserved for shoes. When locker cleanup time came, the stack of paper was grabbed all at once and deposited into the waste bins.

The next few years were spent avoiding meddlesome adults who insisted I wear my glasses. Because money was always tight while growing up3, I would have been subjected to endless guilt-trips for losing "something so expensive" and expected to wear a replacement pair that would — at best — be just as uncool as the originals. The plan was successful for the most part.

But in 1998 I wanted to do something about the headaches and eye strain. Some money was being set aside from every Burger King paycheque, but young Canadians generally can't save worth a darn4. After a few months of half-hearted effort there was less than $150 in the account. The credit card made it possible to make a larger purchase.

According to my accounting records, the first purchase on my Visa card was at LensCrafters at Lime Ridge Mall in Hamilton on Wednesday August 26th, 19985. For $492.87 I bought two pairs of prescription glasses; one tinted and the other not. Much like my current pair, these glasses were more rectangular and used very thin frames.

The world looked incredibly different from that day forward. No longer did I need to live in a world of symbols and general shapes. Now it was possible to see detail at a distance! When I walked outside it was shocking to read signs a hundred meters away as though they were on paper mere inches from my face. Buildings and cars were less generic. Trees had leaves. The ground was filthy with cigarette butts and Tim Horton's cups. I could see!

Since this fateful day more than 20 years ago I've had several newer pairs of glasses, but only once has my prescription changed. My 40th birthday will be in April and one of the things I've asked for is a new pair of prescription glasses. The ones on my face have worked decently well for the last five or six years, but it would be nice to get something a little better.

Should my kid(s) ever need glasses, I'll be sure to work extra hours to get them a more stylish pair ... within reason, of course.

  1. I spent way, way too much money on anime-related things that first year of college.
  2. Also known as Grade 10 in that part of Canada
  3. I am the oldest of 6 kids, or 9 when including the kids that joined when both parents remarried. Money was a very controlled resource.
  4. From the articles I read on Canadian news sites about the growing public debt levels, it seems adult Canadians can't save worth a darn, either.
  5. Yes, I have personal accounting records going back to 1997. I started keeping close track of my debts when the student loan was approved and haven't stopped.

  1. 1
  2. 2
  3. ...
  4. 276