Automating Hugo Deployments with Bitbucket Pipelines

July 21, 2017 | programming, technology
As I mentioned in a recent post, I manage my blog using a static site generator. While this is great to a point—static site generators can handle effectively infinite traffic, they’re stupidly cheap to run, and I can use whatever editor I feel like—the downside is that I lose tons of features I used to have with dynamic blog engines. For example, while it’s almost true that I can use any editor I want, I don’t have a web-hosted editor like I would in WordPress or MovableType, and I likewise can’t trivially add any sort of dynamic content.

The Paradox of Apple Watch

July 7, 2017 | personal, technology
When the Apple Watch first came out, my initial reaction was basically disgust. Everywhere I looked, I saw people already Krazy Glued to their phones, missing the world around them to live instead in the small mini-Matrix in their pocket. Now, Apple was proposing to add additional distractions right on our wrist, making it even easier to ignore real life and stay focused on a screen instead. Not only was the Apple Watch not for me; it was a sad commentary on how tech was ruining our lives.

Why I Hate Slack and You Should Too

July 6, 2017 | technology, personal
Yeah, that’s right: there’s finally something I feel so negatively about that I’m unsatisfied hating it all by myself; I want you to hate it, too. So let’s talk about why Slack is destroying your life, piece by piece, and why you should get rid of it immediately before its trail of destruction widens any further—in other words, while you still have time to stop the deluge of mindless addiction that it’s already staple-gunned to your life.

JSON Feed with Hugo

June 13, 2017 | programming, technology
Every couple of years months [checks wristwatch] weeks, we reinvent a file format for no particularly good reason. Don’t get me wrong; we come up with all kinds of reasons to justify what we’re doing—easier to read, better for the environment, It’s Got Electrolytes™—and sometimes, the new format does genuinely represent a meaningful or necessary improvement. But more often than not, we’re just reinventing things out of boredom and a nagging sense, deep down, that if we don’t keep changing everything constantly, normal people may grok that most of the reason programming is complicated and weird is because we put a lot of effort into making it that way.

Working remotely, coworking spaces, and mental health

December 30, 2016 | personal, technology
This should be a hard blog post to write–after all, it’s the one where I openly admit I had an emotional breakdown and saw a mental health professional–but it’s actually easy. And it’s easy because it has a good ending: facing long odds and a frustrating situation, I ended up turning everything around and getting a place where I love my job and I’m a happy person again. But this is not one of those times where the journey was the fun part.

Separate, support, serve

March 31, 2016 | technology
Yesterday, Microsoft continued down a path that they’ve been pursuing for awhile by providing even tighter ties between Windows and Linux–including allowing running unmodified Ubuntu binaries directly in Windows. Reactions were, to say the least, varied; many people were preparing for the apocalypse, others were excited about being able to use Unix tools more easily at work, and still others were just fascinated by how this was technically accomplished. These reactions mostly made sense to me.

Android, Project Fi, and Updates

November 13, 2015 | personal, technology
Edit: Mere days after posting this (and unrelated to this post), Google publicly apologized for the Android 6 roll-out delay and pushed out Android 6.0.0 to Nexus 6 devices. They then followed that up extremely rapidly with the Android 6.0.1 update. I think this bodes incredibly well. Project Fi is still a very new service, and I’ve little doubt that Google has to work out some kinks of their end.

Genuine opinions, thoughtfully presented

November 12, 2015 | personal, programming
When I was in high school, I used to do competitive speech.1 I didn’t really want to do competitive speech as such; what I wanted to do was competitive debate. After all, debate was way more fun: you got to argue, on purpose, about things with little actual consequence! And you got more points for being the best arguer! What’s not to love? Sadly, my school didn’t have enough people to do both debate and speech; we had to pick one, and since the overwhelming majority of my fellow classmates wanted to do speech, we did speech.

The More Things Change

October 13, 2015 | programming
React, if you’ve somehow missed it, is the new hotness in web programming. The idea is simple: each React component describes its view idempotently, in JavaScript. The view is rendered entirely based on a small amount of state the component keeps internally. Given the same state, a given component will always render identically. This in turn means that when data changes, React can apply just what changed to the browser’s DOM, saving it from having to re-rendering the entire page.

Remember to Reevaluate

September 18, 2015 | programming
I really dislike MySQL. I haven’t used it in a long time, but I remember that it basically just stores all of its data in a flat text file. No transactions, no write-ahead log. In fact, there’s barely even any real data integrity. You have to run a repair process on boot to fix table corruption in the case of hard shutdown. There was an alternative thing you could do that fixed that, but it was an option, and no one had it enabled by default.