News

Aug 31, 2025

A Beginner's Guide to Code Coverage for Go Integration Tests

In this blog post we’ll give an example of how these new features work, and outline some of the use cases and workflow for collect...

Aug 26, 2025

Inside Go Channels: Buffers, Locks, and the Runtime Memory Model

Go channels are a core concurrency feature designed to safely coordinate goroutines without manual locks. Beneath their simple syn...

Aug 23, 2025

A Tour of Slog: Everything You Need to Know About Structured Logging With Slog

By including structured logging in the standard library, we can provide a common framework that all the other structured logging p...

Aug 20, 2025

Go Concurrency Face-Off: Channels vs Mutexes

Demystify when to use channels and when to use mutexes, and why blindly following "Go concurrency patterns" can backfire.

Aug 19, 2025

Building a Go Dependency Scanner From Scratch

Build a Go dependency scanner with the standard library: parse go.mod, query OSV for vulnerabilities, and analyze licenses.

Aug 08, 2025

Streamlining Go Concurrency Using a Worker Pool

Before you start spawning thousands of goroutines, let's take a step back and understand how to do this efficiently.

Are you a journalist or an editor?

BTCBTC
$95,257.00
0.18%
ETHETH
$3,289.52
0.42%
USDTUSDT
$1.000
0%
BNBBNB
$936.62
0.6%
XRPXRP
$2.06
0.63%
SOLSOL
$144.33
1.46%
USDCUSDC
$1.000
0%
STETHSTETH
$3,289.76
0.39%
TRXTRX
$0.310
0.45%
DOGEDOGE
$0.138
1.58%
FIGR_HELOCFIGR_HELOC
$1.03
0.13%
ADAADA
$0.395
0.78%
WSTETHWSTETH
$4,029.42
0.36%
WBTWBT
$57.33
0%
WBETHWBETH
$3,579.14
0.38%
BCHBCH
$599.25
0.71%
WBTCWBTC
$95,229.00
0.03%
XMRXMR
$625.28
9.11%
WEETHWEETH
$3,573.00
0.37%
USDSUSDS
$1.000
0%