2017 in review

If last year was the year Apple fell off their pedestal as far as I was concerned, this year… wasn’t really much of an improvement.

On one hand, the Apple Watch I’m now wearing is the epitome of personal technology done right (I wouldn’t go as far as call it life-changing, but yes, the fitness aspects stuck with me, and it gets me through my day in a number of different ways), and on the other, the iMac Pro’s lack of expandability, the almost completely useless Touch Bar and the continued absence of any sort of modular (or entry-level) desktop machines to replace my seven (going on eight)-year-old mini are a continued disappointment (and yes, I realize I’ve been harping on about this).

Since I now use a Surface Pro 4 every day, I have to acknowledge that yes, there are options. But most of my year wasn’t spent considering personal computing—it was spent working (perhaps too much) and worrying about work-related stuff (definitely too much).

Work, Cloud and Whatnot

This year, I managed to get quite a lot of stuff done—but more in terms of breadth than depth. Most of what I was able to release on GitHub were Docker containers, but besides those I went from minimalist IoT stuff to large-scale infrastructure templates, to name a few.

I also spent a while dealing with the “serverless” hype—I’d dabbled with AWS Lambda and Google App Engine in the past, but Azure Functions upped the ante by dint of having a much nicer developer experience (even in NodeJS), so I ended up spending a while engrossed in them.

Part of my dive into serverless was also due to the chatbot hype. I’m up to my ears in bots, intelligent agents and call center stuff, which makes complete sense given my background but can be a little repetitive (people keep having completely unrealistic expectations of what chatbots can do, or regarding the kind of work that’s required to make interacting with them “natural”, and every engagement has its Groundhog Day moments).

I eventually had to break away from Functions for my own stuff (the new out-of-process model in the Functions 2.0 runtime doesn’t support Python yet), but expect to keep using it for other things. On the other hand, I’ve been steadily getting deeper and deeper into Kubernetes and strongly suspect Istio is going to be the future of “serverless”, so… who knows?

Docker and Kubernetes

I honestly can’t think of anything of consequence I’ve deployed that wasn’t using Docker. It’s become second nature to hunt down and (re)package stuff I want to run (or even just test) as a container, and I’ve recently come across projects like linuxserver who provide automated builds of stuff like Home Assistant and forked-daapd for both Intel and ARM architectures, saving me quite a bit of time.

But, most importantly, Kubernetes has finally become palatable (as in, deployable without the massive amount of pain it used to require), and after around seven years of messing about with container technology (I just checked, and I started keeping notes on Docker in late 2013, after using LXC since 2010), I think it’s high time that line-of-business applications start to be designed for and delivered atop container solutions.

Real life, of course, disagrees, especially in the WIndows-centric IT environments I have to work in, and it’s disheartening sometimes, but the few customers that get it largely make up for it.

Data Science

This year I tried to go back to using R (which I dislike but is still common in many places), but all of a sudden the interest in Python for data science exploded again, and I had to leave that aside.

I dove into machine learning with the aim to spend some quality time playing with Tensorflow, but to be fair I’ve barely been able to scratch the surface—time and resource constraints were not on my side, for one, and (again) many of customers I’ve been dealing with have other concerns, and in my experience conventional ML techniques will get you 80% of the way there in most situations provided you have a) good enough data and b) a good understanding of the problem domain.

That didn’t stop me from writing about the human aspects of data science, popping up on local meetups and delivering a few talks, but on the whole, most of my data projects this year were (to be honest) too much on the BI/conventional analytics side of the fence, which is a direct consequence of the immaturity of the local enterprise market.

Home Office

Although my job still requires me to spend most of my time with customers at a variety of different locations (with occasional bouts of frequent travel and some photo opportunities), I’ve become quite the home office junkie, working late into the night far away from the bustle of our open space office—sometimes making up for lost time due to trips or meetings, but most often because it is still the place where I’m most productive at.

A while back I went and got a NILSERIK stool, and even though the thing is still a pain to sit on (the padding could be softer, and feels like an afterthought), it has indeed improved my posture and lessened the lower back and shoulder pains that were making lugging about a ThinkPad a muted hell. I also had a bout of plantar fasciitis that harked back to last year’s MakerFaire and three days spent running around helping out, and the stool definitely helped mitigate that too.

But besides that, my current setup is pretty sweet: I’m still using my Mac mini as my main desktop machine, which means that every day I use it to log on to either my Surface, a local VM or a beefier Windows 10 desktop on Azure via Remote Desktop in nearly absolute quiet, with everything rendered on my (admittedly dated and cheap, but still effective) dual 22” monitor setup.

And since my home office is still the place I do my best work in (an old tradition that goes back years, even though the past two were the ones I made the most use out of it), I intend to up the ante regarding it next year—for starters, I’ve been meaning to ditch those two seven-and-a-half-year-old panels in favour of something like the LG 43UD79-B, but right now I just don’t have the right hardware to drive it, and whatever I get has to be as noise-free as possible.

Photography

As far as photography is concerned, this year was a bust.

I let my Flickr account linger (partially because I don’t see the service lasting another year), turned to Instagram and made an effort to post a few photos to this site now and then, in hopes that I’d finally have enough material to put together a photo gallery again.

I carried my Canon S95 in my bag on numerous trips, took the usual amount of family photos during Summer, and made an effort to capture as many interesting shots as possible using my iPhone, but ended up not taking half as many as in previous years.

However, work squeezed out so much of the time I usually spent reviewing and filing photos, that I now have around six months of backlog, which I’ve been tackling half-heartedly every now and then. Darktable is turning out to be a great solution for that, but time hasn’t been on my side.

Hardware

Hobby-wise, there was a greater shift towards electronics and microcontrollers this year, motivated by a need to balance out all the cloud hype and build smaller, more tangible stuff, and I spent an inordinate amount of time hunting down components on eBay and AliExpress to put together some gadgetry.

I’m a bit sad that battery and actuator technology hasn’t progressed as far as I’d like, but building tiny sensors is still fun.

Leisure

Movies, TV and books also took a toll—my free evenings shrunk noticeably, and I decided to take a stab at reading more work-related stuff, so less fun was had overall. Short form and TV series are just easier to squeeze in and follow along as I work, and even as I am looking forward to the return of The Expanse and American Gods, I was also pleasingly surprised by how much fun The Orville is turning out to be.

Next Year

Given that this year was a complete bust in terms of work-life balance, I’m going to try to have another go at sorting that out in 2018. I already feel as if I have far too much on my plate as it is, and need to get more enjoyment out of what I do.


See Also: