How I write HTTP services in Go after 13 years
Mat Ryer, principal engineer at Grafana Labs and host of the Go Time podcast, shares what he’s learned from more than a dozen years of writing HTTP services in Go.
Topics /
The most popular blog posts about programming languages on Hacker News. 5,634 posts.
Mat Ryer, principal engineer at Grafana Labs and host of the Go Time podcast, shares what he’s learned from more than a dozen years of writing HTTP services in Go.
The Nim Team is very proud and happy to announce the much-anticipated version 1.0 of the language.
During my final term at UWaterloo I took the CS444 compilers class with a project to write a compiler from a substantial subset of Java to x86, in teams of up to three people with a language of the group’s choice. This was a rare opportunity to compare implementations of large programs that all did the same thing…
We are pleased to announce the release of Ruby 3.0.0. From 2015 we developed hard toward Ruby 3, whose goal is performance, concurrency, and Typing. Especial...
It took three years and 200,000 words more than I expected, but my second book, Crafting Interpreters , is complete. I finished the third draft of the last chapter today, marking the last of around 1,400 days of continuous writing.
Go 1.18 adds generics, native fuzzing, workspace mode, performance improvements, and more.
(This article has been translated into Spanish (PDF, with some additions) by Jorge Amado Soria Ramirez — thanks!) Preface I’m cranky. I complain about a lot of things. There’s a lot in the world of technology I don’t like, and that’s really to be expected—programming is a hilariously young discipline, and none of us
Go 1.27 adds generic methods, encoding/json/v2 package, uuid package, faster memory allocation, goroutine leak profiles, and more.
We are pleased to announce the release of Ruby 4.0.0.Ruby 4.0 introduces “Ruby Box” and “ZJIT”, and adds many improvements.
In the two years since I’ve posted I want off Mr Golang’s Wild Ride, it’s made the rounds time and time again, on Reddit, on Lobste.rs, on HackerNews, and elsewhere. And every time, it elicits the ...
TL;DR: Starting with Firefox 48, Mozilla is shipping its first production Rust code, with more to come! Mozilla ❤ Rust It's hard to believe it's been almost seven years since ...
How we will all work together toward Go 2.
In November of 2024 I wrote a blog post titled "Is Python Really That Slow?", in which I tested several versions of Python and noted the steady progress the language has been making in terms of…
I’ve spent the last year building keyboards , which has included writing firmware for a variety custom circuit boards.
The release of the first major release of Crystal arrives after many years of hard work. With thousands of contributions from people worldwide, it was finally possible to find consensus for what truly mattered for 1.0 and what could wait for future releases. Getting here wasn’t an easy journey, filled with enriching…
There were several moments over the last few weeks when I heard people discuss differences between Python lists and dicts and one of the first ones mentioned was that lists are ordered and dicts are not.
Why I can't use Elm, and can't recommend it to others.
Why we moved Architect of Ruin from Rust and Bevy to C# and Unity in January 2025, and how the three-day experiment that decided it went.
Node.js® is a free, open-source, cross-platform JavaScript runtime environment that lets developers create servers, web apps, command line tools and scripts.
Today we are proud to announce the availability of TypeScript 7, a 10x faster native port of TypeScript! Since its early days, TypeScript has promised to
I have built a toy Java Virtual Machine in Rust, complete with garbage collection, exception handling, and the ability to run real Java bytecode using OpenJDK's rt.jar.
My honeymoon with the Go language is extremely over. This article is going to have a different tone from what I’ve been posting the past year - it’s a proper rant. And I always feel bad writing tho...
Updated (2017): See .NET Core Releases to learn about newer releases. We are excited to announce the release of .NET Core 1.0, ASP.NET Core 1.0 and Entity Framework Core 1.0, available on Windows, OS X and Linux! .NET Core is a cross-platform, open source, and modular .NET platform for creating modern web apps…
Yet another programming blog. Thoughts on software and related misadventures.
For many years I used the Julia programming language for transforming, cleaning, analyzing, and visualizing data, doing statistics, and performing simulations.
Swift has matured significantly over the past decade — extending from cloud services to Windows applications, browser apps, and microcontrollers. Swift powers apps and services of all kinds, and thanks to its great interoperability, you can share code across platforms.
A compiler is just a program that translates other programs. Traditional compilers translate source code into executable machine code that your computer understands. (Some compilers translate source code into another programming language. These compilers are called source-to-source translators or transpilers.) LLVM is…
In April 2026, Canonical disclosed 44 CVEs in uutils, the Rust reimplementation of GNU coreutils that ships by default since 25.10. Most of them came out of an external audit commissioned ahead of the 26.04 LTS. I read through the list and thought th…
“signed char lotte” is a computer program written by Brian Westley and the winner of the “Best Layout” award in the 1990 International Obfuscated C Code Contest. The cleverness of the text is staggering. Superficially it reads as an epistolary exchange between two (possibly former) lovers, Charlotte and Charlie. At…