Howdy!

Welcome to my blog where I write about software development, cycling, and other random nonsense. This is not the only place I write, you can find more words I typed on the Buoyant Data blog, Scribd tech blog, and GitHub.

Documenting is hard

A non-trivial aspect of my job for the past year at CloudBees has been communication. To claim that this is a new change in my career would be to fundamentally mis-attribute the vast majority of what makes good Software Engineers and Engineering Managers good. Communication in my job as a “Technical Evangelist” (or as my business card states: “Community Concierge”) is many orders of magnitude more involved than it was an Engineering Manager, and what makes it very challenging is the size of the audience. As an Engineering Manager the audience is typically less than 20 people throughout an organization where the spoken-word is the primary means of communication. By conservative estimates more than a million people use and interact with Jenkins as part of their work, the primary way to reach them being written English in some medium or another.

Read more →

Ode to Griddle

The longer I have been working from home, the more important and involved my breakfast routine has become. With colleagues in various timezones around the globe, it can be difficult to find time in the middle of the day to leave the house or make myself a decent lunch. A hearty breakfast however, can stretch from mid-morning all the way to an early dinner (5-6pm).

Read more →

Drop-in upgrade to a containerized Jenkins master

In some form or another, I have been a systems adminstrator for various Jenkins instances for over eight years. While I wish I could say that has imparted some deep, hard-earned, wisdom upon me, truthfully, it’s been about the same as managing any other application: a constant battle of system dependencies, monitoring challenges and upgrades.

Read more →

You're Grounded!

“It’s better to be on the ground wishing you were in the sky, than in the sky wishing you were on the ground.” One of the many sayings that gets told and re-told in the aviation community, has been gnawing at me for the past couple of years. When you’re flying regularly, it is certainly a truism. When you’re not flying regularly, or at all, it rings false, deafeningly false.

Read more →

Are you German or what?

Arriving for Thanksgiving this year, in my luggage I had four cookbooks that I borrowed from a classmate along with a couple of my own. Each book contained a number of recipes for soups, appetizers, salads, casseroles, entrees, cakes and cookies, all from Germany and almost exclusively written in the german language. Keen to my desire to cook german food, my wife decided that the Friday after Thanksgiving would be my time to shine. On the yellow notebook paper, which listed the meals planned for the next few days, the heading for Friday simply read “German Day.”

Read more →

Choose Happiness

I remember the first time that I experienced “burn out”, the manifestation of not physical but mental exhaustion that is alluded to but often not described in the tech industry. I had completed my first semester as a Computer Engineering student at Texas A&M and was an absolute wreck. It was after dinner on a Friday, I had picked up some McDonald’s, Double Quarter Pounder with Cheese, not because I liked it necessarily but because my friend Bill had told me it was the cheapest and most calorie dense thing on the menu. He was a junior and wore a calculator watch for purely practical reasons, so I trusted him on these sorts of matters. I finished my abomination of a meal and decided “if I don’t get the fuck out of this town, I’m not going come back next semester.

Read more →

JRuby/Gradle at JRubyConf EU 2015

Mid-way through last year, Lookout’s investment in JRuby started to really take off. Having struggled with the harsh realities of MRI, we finally had a platform that gave us a way to grow our technology without having to throw out vast amounts of existing Ruby code. After an exciting weekend at JRubyConf EU 2014 and eurucamp I started hacking on a brand new project, one that I hoped would bring Ruby into harmony with the rest of the JVM ecosystem: JRuby/Gradle

Read more →

Gradle Goodness: Excluding Shadow jar dependencies

Over the past year, I’ve spent a lot of time hacking in the Gradle ecosysgtem which, for better or worse, has earned me a reputation of knowing Gradle-y things within Lookout. Recently, my colleague Ron approached me with a Gradle problem: using the shadow plugin (a great plugin for building fat jars), he was having trouble excluding some dependencies from the produced jar artifact. I figured I would emulate Mr. Haki’s Gradle Goodness series and post one of my own.

Read more →

Meet my biggest fan

In a previous post I mentioned that I have become a home owner, which dictates that I must now spend an innumerable number of hours fixing, tinkering and otherwise causing damage to the home I have purchased. The latest installment of “I bet I can do that” involved the installation of a 52” ceiling fan in my living room.

Read more →

Look at me, Zoidberg! Home owner!

Just before I head to the bedroom for the night, I walk to the door by the car port, fiddle with the lock, tug on the door handle. It’s secured. Sliding door to the porch? Secured. En route to the sounds of my wife’s intermittent snores, I check the front door, fiddle with the dead-bolt, tug the door handle: secured. Great, now I can go to bed.

Read more →

Four years of Lookout

Four years ago today I started work at Lookout, Inc., embarking on the longest journey of my career to date. I had left Apture frustrated with our inability to grow the product and engineering team, but with pockets full of experience at building and deploying service-oriented applications “my way.” At the time Apture was literally down the block from Lookout, so on a Friday I left Apture and the following Monday I took my same commute in to Lookout. What I wasn’t able to get at Apture, I found at Lookout.

Read more →

Measuring slow Kafka consumers with Verspätung

Late last year I changed roles at Lookout from the ‘Engineering Lead’ of the Enterprise team, to the ‘Engineering Manager’ for the “Core Systems” team. I’ve not been keeping track of whether this means I’m writing more, or writing less code on a week-to-week basis. But the charter of Core Systems does mean much more of the software and tools we write can be open sourced, or even started as open source projects.

Read more →

Open Hacksgiving 2014 Live Blog

For the past three years at Lookout we’ve hosted an event called “Hacksgiving.” Historically the event has been focused on cool hacks typically oriented around projects or ideas that are internal to Lookout. The first year, for example, a colleague and I prototyped the messaging system that would power our business product the following year. Another group of hackers created the precursor to our signal flare feature that same year (hif I’m remembering correctly).

Read more →

JRuby demos from the JavaOne Script Bowl 2014

This past October I was invited to represent JRuby in the JavaOne 2014 “Script Bowl.” A panel where community members from various projects which implement scripting languages on top of the JVM pitch their language to a live studio audience. This year’s panel consisted of a members from the Groovy, Clojure and Scala communities, and me representing JRuby of course.

Read more →

Agent Dero: Origin Story

My first excursion into the internet or as it was then known by newscasters, the information super highway, was courtesy of the University of Georgia. My mom had gone back to school and as part of her program, there were a number of new-fangled “online classes.” We bought a 28.8 baud modem to go with our Macintosh LC III, in this year it was already 3-4 years old, and used the instructions distributed by the university to set up the Chooser to AppleTalk or some bullshit like that. Mac OS System 7.6 was not very internet friendly.

Read more →

Croy Family Farms: Mid-season Report

Followers of mine on Twitter have no doubt seen photos and periodic reports from “Croy Family Farms,” the tongue-in-cheek name of my backyard garden. I’ve not written or chronicled some of the experiences in any amount of depth, despite this (2014) being the third growing season I’ve been gardening. Unlike previous years, this year I’m keeping much better track of what is growing well, what isn’t, and what different plants are yielding (with photos).

Read more →