A pale blue vintage tin toy robot with a wind-up key at its side

The Anatomy of an Agent: What Makes an Agent, an Agent?

I recently ran an internal session for a semi-technical audience with the title “What makes an agent, an agent?” When I proposed the subject, the concept was met with real enthusiasm, which I took as a sign that people would welcome a plain answer to a question they are assumed to have settled already. The word “agent” is used so loosely at the moment that people who build these systems will each give you a different answer about what it means....

August 27, 2026 · Ed Randall
A coiled climbing rope with a carabiner clipped through it

Beyond Vibe Coding: Building AI-Assisted Development You Can Trust

Last week I built and deployed an application where Claude Code wrote every line of the code. I did this deliberately, outside my core professional expertise, and with enough at stake to take the governance seriously. Working through it brought something into focus that I keep returning to in conversations with engineering leaders about AI-assisted delivery. The term “vibe coding” is both accurate and misleading. Accurate, because there genuinely is something collaborative in a good session with an AI coding assistant, where you describe what you want, it responds, you refine, it adapts....

March 1, 2026 · Ed Randall
An open drawer of a wooden library card catalogue

Building a Second Brain That Actually Thinks: Claude Code Meets Obsidian

The vast majority of AI adoption conversations focus on large-scale enterprise deployments, but a lot of value is already coming from something quieter: small, task-specific agents built to support our day to day work. I built one of these systems by connecting Claude Code to my Obsidian vault. It extracts tasks from emails, assembles context before meetings, and checks consistency across notes. It wasn’t just search anymore, it could read the notes and do something useful with them....

February 5, 2026 · Ed Randall

Understanding APIs: The Invisible Engine of Our Digital World

Introduction People can be forgiven for not thinking about APIs, yet we use them every day in so many different ways. From banking apps to travel updates to football scores and parcel tracking, APIs enable the flow of information that we rely on and often take for granted. They provide the unseen connectivity that allows apps, websites and services to communicate with one another to provide the services and information we ask for....

October 29, 2025 · Ed Randall
The top of the HostDeck window, with five hosts in the list and the details of a Windows host

Turning a Wake-on-LAN script into a Mac app

I’ve woken the machines in my home lab for a while now with a small Python script called wake, which sends a Wake-on-LAN packet to whichever host I name. It does the job, although it doesn’t tell me whether the machine has actually come up, so I usually follow it with a few pings before I try to connect. One Sunday afternoon I asked Claude Code to turn the script into a proper Mac app, and I pointed it at an older Linux version of the script that waits for the host to answer and then opens an SSH session....

October 5, 2026 · Ed Randall

CompTIA DataSys+ Notes

As I prepared for the CompTIA DataSys+ exam, I gathered a series of notes and observations that helped me deepen my understanding of the database concepts which are covered in the exam's syllabus. In this post, I’m sharing some of those details. Some of the topics discussed extend beyond the scope of the exam, and not everything included in the exam's syllabus is documented. This post also contains details of the test database I designed for hands-on practice....

September 8, 2024 · Ed Randall

Time Machine Backups with Docker: A Simple Setup

This post explains how I run samba and avahi-daemon inside a docker container to act as a time-machine server for all the Mac computers on my home network. Dockerfile I used ubuntu:focal as a base image and created the following Dockerfile: FROM ubuntu:focal #Install samba and avahi-daemon inside the image RUN apt update && apt install samba avahi-daemon -y #Expose the ports which are needed for samba and avahi-daemon EXPOSE 137/udp 138/udp 139 445 5353/udp #Copy config files into the image COPY smb....

April 16, 2024 · Ed Randall

Building a Kubernetes Cluster on EC2

Github Repo All the code required can be found in the github repo: github.com/edrandall-dev/kubernetes-on-ec2 Introduction Last year, when I was learning Kubernetes, I wanted to create my own cluster on AWS using EC2 instances. The idea behind this was go through the installation of Kubernetes from start to finish, learning everything I needed to along the way. I’ve also used Amazon’s Elastic Kubernetes Service (EKS) to deploy Neo4j using the official Neo4j Helm Charts....

August 27, 2023 · Ed Randall

Cloudflare Tunnels: A Quicker Way to Reach Your Home Lab

Setting up your own VPN can be complex In this post, I went through how I’ve setup Wireguard to be able to connect back to my home network when on the road. When it comes to choosing a VPN, Wireguard stands out for me in terms of speed, security and ease of configuration. However, there are a few complexities associated with setting up any VPN to securely connect back to a home network....

July 15, 2023 · Ed Randall

Kubernetes Notes & CKA Exam Prep

Overview This post covers 3 major topics: Kubernetes Lab Environment: The steps that I took to setup a Kubernetes cluster from scratch, in a self-hosted virtualised environment using Oracle Virtualbox and Hashicorp Vagrant Kubernetes Notes, Commands and Manifests: A collection of commands which I noted down as part of my preparation for the Certified Kubernetes Administrator exam Information Sources: A list of links to the main sources of information which I used when creating this environment and learning Kubernetes Kubernetes Lab Environment The VMs which formed the Kubernetes cluster were deployed on a Dell Precision workstation with plenty of CPU and RAM resources:...

July 4, 2023 · Ed Randall