RSSAmplifier

Blog

Home on Matt Layher

Recent content in Home on Matt Layher

mdlayher.comRSS feed ↗19 posts

Latest posts

Unsafe string interning in Go

I discuss the https://go4.org/intern package and the unsafe techniques it uses to implement string interning in Go.

Go generics draft design: building a hashtable

I describe my experiences porting a toy hashtable design to the June 2020 Go generics draft design.

Matt's remote workspace in 2020

A description of the audio/video/computer equipment that Matt uses working from home.

CoreRAD: a new IPv6 router advertisement daemon

An introduction to CoreRAD, an extensible and observable IPv6 Neighbor Discovery Protocol router advertisement daemon.

Safe use of unsafe.Pointer

Using Go tools to safely write unsafe code.

Exploring byte parsing APIs in Go

An exploration into building safe and ergonomic byte parsing APIs in Go.

Network Protocol Breakdown: NDP and Go

An introduction to the IPv6 Neighbor Discovery protocol, and how to utilize it from Go.

A programmer's journey with RSI

My experiences as a professional programmer dealing with RSI and cubital tunnel syndrome, and how I manage these issues.

Accessing SMBIOS information with Go

Accessing hardware information using the SMBIOS standard with Go.

unsafe.Pointer and system calls

Using Go's unsafe.Pointer type to cast raw memory and work with system calls.

Cthulhu: Organizing Go Code in a Scalable Repo

Lessons learned while working with DigitalOcean's monolithic Go code repository, cthulhu.

Network Protocol Breakdown: Ethernet and Go

An introduction to Ethernet frames, VLAN tags, and raw sockets, and how to leverage low-level networking primitives in Go.

Linux VM sockets in Go

Leveraging Linux VM sockets to enable bidirectional, many-to-one communication between a hypervisor and its VMs, using Go.

Linux, Netlink, and Go - Part 3: packages netlink, genetlink, and wifi

Using netlink, generic netlink, and nl80211 to manipulate WiFi network interfaces on Linux, using Go.

Linux, Netlink, and Go - Part 2: generic netlink

An introduction to generic netlink: an extensible netlink family. This post also describes how to leverage generic netlink in Go.

Linux, Netlink, and Go - Part 1: netlink

An introduction to Linux's netlink subsystem, and a tutorial on how to make use of it with Go.

Contributing to the Go project

A step-by-step explanation of how to contribute to the Go project.

Open Source at DigitalOcean: Introducing go-qemu and go-libvirt

Controlling QEMU and libvirt programmatically using pure Go interfaces.

Go in a Monorepo

An exploration of DigitalOcean's monolithic Go code repository.