Tuesday, 20 October 2026

ss (socket statistics) versus netstat

netstat is used in Windows with roots in Unix. In the Linux world, ss is more used than netstat.

ss displays "socket statistics" and is used to "dump socket statistics" as per its description. 

Unlike netstat, ss talks to the Linux kernel directly. 

Used without arguments, ss displays non-listening connections - so an nginx server simply listening for connections would not appear in the output, but an established connection (TCP for example) would appear.

To display listening connections also, do ss -l.

ss -lt
ss -lu

Restricts output to TCP and UDP connections.

Please note: using ss in a WSL shell will only give you the connections relating to the shell and not the wider Windows system in which the shell is running. 

You will still need netstat from a cmd.exe to see the networking connections in Windows. Note that WSL1 shared more of the Windows networking stack than WSL2.

The Markdown Guide

Here is the Markdown Guide, explaining why Markdown is popular. 

Markdown was created by John Gruber in 2004.

openssl rand

openssl rand is an OpenSSL command that generates cryptographically secure random bytes using the library's CSPRNG (cyptographically secure pseudorandom number generator) with options for raw, hex or Base64 output.

Example usage:

openssl rand -hex 16
openssl rand -base64 16

The number at the end states the number of bytes to generate. 

The GitHub location for OpenSSL can be found here. This also has extensive documentation in Markdown.

Learn more about OpenSSL here from the OSSL Guide. An interesting application of OpenSSL's capabilities is implementing systems using QUIC (a modern transport layer protocol built on UDP).

Monday, 19 October 2026

From "process containers" to control groups

The Linux feature of control groups (or cgroups) originated in what was originally called "process containers". cgroups are a Linux kernel feature.

Read the Kubernetes (K8s) Source Code

The Kubernetes source code is available on GitHub.

In addition to reading the source code, it is useful to consider the intellectual origins of K8s in "Borg".

It is often portrayed as the "spiritual" open source successor of Google's Borg, a cluster manager running hundreds of thousands of jobs, across thousands of applications, running on clusters each of tens of thousands of machines.

The Borg paper covers how shortcomings in Borg were addressed in the design of Kubernetes (this is worth understanding/being aware of). There is an overview here from ACM Queue called "Borg, Omega and Kubernetes" (Omega was an offspring of Borg).

(Historical note: Borg in turn was the successor of two internal Google systems, Babysitter and Global Work Queue, both of whose design predated the introduction of Linux control groups).

The Borg paper also mentions the Google Container Enginer (GKE), which is a Google-hosted version of Kubernetes.

Saturday, 17 October 2026

What Linux version runs in your WSL shell?

lsb_release -a

LSB modules are components defined by the Linux Standard Base. They specify standard libraries, commands and runtime behaviours - ensuring compatibility across Linux distros. The LSB project is led by the Linux Foundation.

Tuesday, 13 October 2026

Does Devin Do The Trick

Devin (from Cognition) is billed as the world's first autonomous software agent. But does Devin do the trick? Can it solve some of the thorny problems in agentic programming?

Logos using or trialling Devin include (in banking) Citi, Goldman Sachs, Santander, itau (in tech) openrouter and servicenow, (in media and telco) Fox, AT&T and (in startups) Modal.