Special Post: About Go Modules

Read mode

What is Hyperlight (part II)?

February 14, 2024

In part 1 of this series, I detailed the motivations and background of the Hyperlight project. In doing so, I also mentioned some of the challenges we’ve set out to solve and, at a high level, how we'… Read more

What is Hyperlight?

January 08, 2024

After I wrote those posts about C#-to-Rust and Rust-to-C# communication (part 1 and part 2), a lot of people reached out with questions about what Hyperlight is in the first place. There's not a lot o… Read more

Calling Rust from C#, and back again: Part 2

November 16, 2023

Back in part 1, I talked about Hyperlight, its history, and some of the challenges involved with the project, including calling Rust from C#. At the very end of that post, I promised another talking a… Read more

Calling Rust from C#, and back again: Part 1

November 09, 2023

I'm working on a project at Microsoft called Hyperlight. The project is all about making very small-footprint virtual machines that start up specific kinds of applications very quickly. At a very high… Read more

Synchronizing the KEDA HTTP Addon Request Routing Table Across Hundreds of Interceptor Pods

October 29, 2021

The KEDA HTTP Addon project contains three major components: the operator, scaler and interceptor. Of these, the interceptor is the only component that sits in the critical path of all incoming HTTP r… Read more

Fan-in and fan-out with Go

October 11, 2021

Hacking on the KEDA HTTP Addon, I found myself having to do something familiar: Split some work into N pieces, do them all concurrently, wait for them all to be done, and then merge all the results t… Read more

GopherCon 2021 CFP OMG!

April 07, 2021

Hi Gophers, it's your friendly co-chair of the GopherCon program committee! For the past two years, I've written about the GopherCon call for proposals (CFP) when it opened. Much like 2020, this year'… Read more

Next Steps for KEDA HTTP

December 09, 2020

I recently wrote about a new project I'm starting in the Kubernetes world. Its overarching goal is to build an open source, app developer friendly system built on top of Kubernetes. Since then, there … Read more

Deploying Apps With KEDA-HTTP

November 23, 2020

When you search for "what is Kubernetes?", content abounds with technical details of the system. There's less about what Kubernetes is at a high level. Here's my attempt at that in two sente… Read more

First Lines of Rust

November 18, 2020

After ~8 years of Go as the end-all-be-all of programming languages in my life, I started writing Rust code for a real project, not just as a hobby. The project, briefly put, is a Kubernetes system to… Read more

async/await: under the hood

June 30, 2020

I'm really interested in concurrency strategies in programming languages, and because there's a lot of written research out there on the topic, you can find lots of strategies out there. When you look… Read more

How to Run Windows With a Mac Keyboard

June 16, 2020

I wrote a bit about PowerToys previously, but today we're gonna talk about my second-favorite feature: the keyboard manager. My first-favorite feature is Powertoys Run - the spotlight-like feature fo… Read more

Storing Data with Dapr (Dapr Series #3)

May 21, 2020

Dapr! No, not dapper, dapr. If you haven't read my past articles about dapr, that's ok. Let me try to boil this big project down to a sentence: 👋 Dapr is a process you run that does all the hard stuf… Read more

Windows, Now With More Toys

May 20, 2020

If you were around way back in the Windows 95 days, you might remember the PowerToys from then. Years and years later, it's back in a similar form, but for Windows 10. I just got started with it and i… Read more

Athens on Azure Kubernetes Service... Part 2

May 07, 2020

Howdy all! It's been quite a while since I wrote about Athens on Azure Kubernetes Service. If you don't remember much about it, don't worry. I didn't either... it's been over 6 months! I jumped back i… Read more

May 2020 Athens Update

May 05, 2020

You haven't heard from me in a while about Athens. If you use Athens, you're probably all like 😒, but hopefully this post will help you be more like 😊. Plus, we're more than 4 months into the year and… Read more

What is Dapr? (Dapr Series #2)

May 04, 2020

Welcome back to the dapr series! Last time, we talked about the challenges of getting software right. If you need a quick refresher: The easiest thing about software is writing it The next hardest th… Read more

So you want to build a computer

April 27, 2020

I once built a cheap tower with clearance parts from Micro Center. See if you can guess how long ago it was from the specs: CPU: Intel Pentium 3 RAM: 16GB Disk: 128mb I haven't done much DIY electro… Read more

What Happens to Your Career After 10 Years?

April 23, 2020

I see a lot of great career posts on how to get into programming, and some about how to get into senior engineer roles. I'm coming up on 15 years as a software engineer now and I've been thinking late… Read more

How to make your app harder to build (Dapr Series #1)

April 21, 2020

This is the first post in a series about Dapr Software is very easy to write. For lots of us programmers, it's really exciting to create something new. Then it grows and changes over time. Like the … Read more

Crystal Fridays

April 17, 2020

If you've been following my Twitch you've probably seen that I'm doing "Crystal Fridays" live streams for the past few weeks. Catch me every Friday at 10am US Pacific time on Twitch What i… Read more

How to WSL 2

March 30, 2020

Welcome, Linux-on-Windows-er! I recently wrote about my experience with WSL 2 and Windows, coming from a Mac perspective. This is an unboxing post for how I went from vanilla Windows 10 to a full work… Read more

Coming from a Mac to Windows & WSL 2

March 26, 2020

I've spent most of my life as a professional programmer using a potpurri of Apple laptops and desktops. The first machine I used to do paid development work with was a MacBook in 2004. I've cycled thr… Read more

Streaming tomorrow March 20, 2020

March 19, 2020

Two days ago, I decided to start streaming. I had a lot of fun just talking through my dev setup and showing how to make a small contribution to Athens. It felt like doing a Go in 5 Minutes screencast… Read more

New to working from home?

March 19, 2020

COVID-19 has really quickly turned our lives upside down, and we're truly living in unprecedented times. As tech folks, many of us are working from home now. From a WFH-er for over 5 years now, welcom… Read more

My Mac Dev Setup

March 18, 2020

Recently, I got into a really interesting discussion on Twitter with @jongalloway, and it was just about 100% constructive and civil. On Twitter! It's all about whether or not to use Homebrew to set u… Read more

Tips for submittiting to the GopherCon 2020 CFP

December 17, 2019

The GopherCon 2020 Call for Proposals is open right now, and it closes on January 10, 2020. I am a co-chair of the program committee this year and I want to encourage you to submit a proposal. Now tha… Read more

Athens on Azure Kubernetes Service

November 27, 2019

I've been working on Athens for well over a year now, and I've mentioned before that I have been running the athens.azurefd.net server on my own for almost all that time. The infrastructure that power… Read more

Building Full Stack Applications with Go, Vecty & WebAssembly

November 21, 2019

Building full stack web apps with Go, Vecty and WebAssembly Welcome folks! Today, we're going to talk about writing full stack web applications in a brand new way. I wrote this post a while ago and I… Read more

Go 1.13 for Private Repositories

September 12, 2019

Go 1.13 is a new beast. It's a patch release in semver terms, but there are some big changes going on here. Most of them are really good, but if you have private dependencies, your build is gonna brea… Read more

Join Me For The Second Athens Office Hours

June 27, 2019

Athenians! First of all, thanks to everyone who came to the first office hours. I think it was a success, and we're going to keep going. When Like last time, we're going to vote for the time that work… Read more

Athens Office Hours!

June 25, 2019

Hey Gophers! If you don't know what Athens is, you should totally go check it out. The quick overview is that it's a proxy server for Go modules, and an interesting open source project with a communit… Read more

Functional Programming in Go With dcode

March 11, 2019

Back in 2017, I gave a talk at GopherCon about doing functional programming with Go. I went up on stage and talked about some FP basics like Functors, higher-order functions and so on. I heard some fe… Read more

GopherCon 2019 CFP OMG!

January 10, 2019

Hey Gophers! I want you to submit a proposal to talk at GopherCon 2019. ... and I want you to start now because the Call for Proposals is only open until January 31st! Submit a proposal, you say? Let'… Read more

Athens and Microsoft

December 20, 2018

As you might have read, Google recently announced some of their plans for Go modules in 2019. And because I'm obsessed with module proxies/registries/repositories (more on the naming of these things i… Read more

Give Away Your OSS Power

October 31, 2018

Pretend you're an OSS maintainer - how do you figure out if your project is doing well? Some ideas: Number of contributors Forks Stars PRs closed Average issues opened per day Twitter followers to yo… Read more

Athens Running on Zeit

October 24, 2018

I've been a long time admirer-er of Zeit. Besides the technical part (which is really good), their platform gives people really easy, understandable and (most importantly) trustworthy tools to get a r… Read more

Absolutely Everybody is Welcome

October 23, 2018

I started the Go Study Group and Athens both about 6 months ago. I did each for super different reasons, but I wanted both to have strong communities. The people are what keeps these communities alive… Read more

az acr build or docker build?

October 08, 2018

I had heard about acr build when it came out and didn't pay much attention to it. I was like "I don't wanna send my whole build context over the internet that's crazy." That was kinda a face… Read more

Emerging Languages

October 05, 2018

My history with programming languages and frameworks is approximately this: I started my career writing PHP 3 Then I wrote C/C++ (Boost forever!) Then I discovered Java, Scala, Objective-C, Perl, Pyt… Read more