I’ve been using LLMs for software development for a few months now, mostly from the command-line using tools such as Aider . Lately I’ve been investigating asynchronous LLM workflows, and enabled Gemini Code Assist for GitHub which reviews pull requests for correctness, efficiency, maintainability and security. It’s still early days, but I’ve been impressed by the quality…
I recently made my first contribution to Nixpkgs , the package collection for NixOS , and wanted to document a few notes and learnings from that process. Nix is an ecosystem of tools which together enable reproducible, declarative and reliable systems. It’s comprised of a package manager (Nix), a packages collection (Nixpkgs), a functional language (Nix expressions), and a Linux distribution…
I’ve recently started using GitHub Actions – e.g., this website is published automatically to GitHub Pages by an action. While they’re convenient, I’ve also read many critical articles, notably from a security perspective. A few recent examples: tj-actions/changed-files supply chain attack ( archive ) Grafana Security Incident ( archive ) Bypassing action policies ( archive )…
While integrating an LLM into a Python application , I realised that their default response format of unstructured text wasn’t always practical. This led me to discover that most current models and tooling support requesting structured output, such as JSON. For example, see Google Gemini structured output support . The tool I’m using for LLM integration — the Python API of Simon…