Hello, World
Note: This post is a bit out of date. I no longer use GNU Guix and Haunt for this blog. Instead, I've migrated to Lektor as my static site generator, with Pandoc still handling resume generation.
Welcome to Software Wanderings, a technical blog where I'll be documenting my experiences, learnings, and observations about software engineering. I hope this blog will encourage me to write about my experiences and share them with a broader audience.
The blog will explore software design, functional programming, API design and more. While I primarily work in Clojure, I'll also cover JavaScript, TypeScript, Rust, Scheme, and SQL.
2025 Goals
I have five primary objectives for the year:
- Game Development: Learn to build real-time strategy games inspired by Command and Conquer and StarCraft
- Immutable Linux: Study NixOS, GNU Guix, and Fedora Silverblue distributions
- Pandoc Mastery: Understand document transformation systems
- API Design: Deepen my knowledge of REST and GraphQL architectures
- Technical Writing: Publish insights throughout the year
Technical Architecture
This blog's infrastructure uses:
- GitHub Pages for hosting
- Haunt (a static site generator) for template processing
- Pandoc for Markdown preprocessing with advanced diagram support
- GNU Make for build orchestration
- GNU Guix for dependency management
The setup requires Pandoc, PlantUML, and Haunt, with a custom GNU Guix manifest handling dependencies.