Building daemons and system-level utilities has always been something I have enjoyed. While I have professionally written C code, I have always found it a bit antiquated and unpleasant, like using a screwdriver while everybody around you is using power tools and machines. It certainly still has its place in the world, but there are more powerful options out there. I have experimented with Ada as a system level toolchain, while an all around compelling language it suffers from a severe lack of libraries and doesn’t have a strong community of tooling. Recently I started experimenting with Rust and despite it’s promise, it has been one of the most challenging languages to date for me to learn.
In the research Kohsuke, Tracy, and I did in the development of the Continuous Delivery Foundation, we learned a lot about how other free and open source foundations operate. I know more now than I had ever before about how the Eclipse Foundation, Apache Software Foundation, and numerous other LF-based foundations operate. One recurring theme which has come up has been the aversion to paying people to contribute code directly to the open source project. While not a universal pattern, looking to the FreeBSD Foundation which regularly issues grants for FreeBSD development, I am perplexed by this mindset in various foundations.
A number of people have asked me recently what I actually do for a living these days at Scribd. Due to the very public nature of my involvement with the Jenkins project and the Continuous Delivery Foundation, a few of my friends have seemingly forgotten that CI/CD is not actually my full time job! My career has largely been focused on two axis: building high-functioning engineering teams, and building backend API/service infrastructure.
Whether I’m sharing a locally developed service with a member of our globally distributed team, or I need to integrate some cloud-based service with local development, I frequently find the need to expose a local TCP service to the public internet. In the past I have tried to use tools such as localtunnel or smee.io, and in both cases I found them lacking; I simply want this TCP port open to the world! Yesterday afternoon I spent some time hacking on the first version of my own little solution: aci-tunnel.
Last week we announced the Continuous Delivery Foundation (CDF) at the 2019 Open Source Leadership Summit. Through a strange series of events I was fortunate to attend and participate in the “Continuous Delivery” keynote on the first day. Joining me on stage was Kohsuke (Jenkins), Kim and Christie (Tekton), Tracy (Jenkins X), and Andy (Spinnaker) to share a bit about the four initial projects joining the CDF.
The aviation community has been buzzing with speculation and commentary around the recently Boeing 737 MAX 8 plane crash in Ethiopia and the model’s subsequent grounding around the world. Watching this news report I was struck by the following quote from the “Deputy Assistant Secretary of State” regarding a similar crash in Indonesia:
Considering the percentage of my day which is spent typing on a keyboard, it should come as no surprise that I might have thoughts on what makes a “good” versus a “bad” keyboard. In fact, I think everybody who uses a tool with this level of frequency should have thoughts on what qualities make variations of the tool good or bad.
Today the Continuous Delivery Foundation officially launches, marking the completion of almost two years of work. Starting at the 2017 Jenkins World Contributor Summit where we, the Jenkins project discussed a “Jenkins Software Foundation”, to the 2018 Open Source Leadership Summit where the concept evolved into a continuous delivery focused organization, culminating in what we have today: a strong group of organizations and initial projects banding together for under the banner of the Continuous Delivery Foundation (CDF).
There are 90 days until the beginning of the week-long AIDS/LifeCycle, the 545 mile ride from San Francisco to Los Angeles to raise critically needed funds for HIV/AIDS-related services. For me, this means just under three more months to meet my fundraising goal. Not only that, this means my fellow riders and I have a shockingly small number of weekends to get our training in order!
The Jenkins project has long used Mirrorbrain, a great piece of software for running a high-traffic download site using redirect mirrors. We use it to transparently delegate traffic to a network of donated mirrosr, for downloading our Debian, Red Hat, and other packages of Jenkins and all of our plugins.