Visualizing Map Data with Go and Leaflet JS

Introduction This year I set a personal goal of walking for a total of 1,000 kilometers and I’m proud to say I’m close to hitting that goal. I’ve been tracking all the different routes I take in an app named Strava. One nice feature of Strava is that the app provides access...

Using Ollama with LangChainGo

One of the most exciting areas of LLM-related development in 2023 is the availability of powerful (and sometimes even open-source) models we can run locally on our machines. Several tools exist that make it relatively easy to obtain, run and manage such models locally; for exampl...

There's no nil to panic

#​485 — November 21, 2023 Unsub  |  Web Version Go Weekly River: A Fast, Robust Job Queue for Go + Postgres — A new beta, open-source job queue “for building fast, airtight applications” that’s written in Go and takes advan...

Third party Emacs packages that I use (as of November 2023)

Happy birthday to Go

#​484 — November 14, 2023 Unsub  |  Web Version Go Weekly Fourteen Years of Go — Russ recaps a productive year for Go that included the introduction of profile-guided optimization (PGO), enhanced coverage profiles to improve testin...

Go modules and the domain expiry problem

Using a Markov chain to generate readable nonsense with 20 lines of Python

Describes a simple Markov chain algorithm to generate reasonable-sounding but utterly nonsensical text, and presents some example outputs as well as a Python implementation.

Retrieval Augmented Generation in Go

I've been reading more and more about LLM-based applications recently, itching to build something useful as a learning experience. In this post, I want to share a Retrieval Augmented Generation (RAG) system I've built in 100% Go and some insights I learned along the way. Some li...

Fourteen Years of Go

Happy Birthday, Go!

Demystifying function parameters in Go

In this post we're going to talk about how (and why!) different types of function parameters behave differently in Go. If you're new (or even not-so-new) to Go, this can be a common source of confusion and questions. Why do functions generally mutate maps and slices, but not o...