The Curious Engineer

All blogs / Go

Bitfield Consulting

bitfieldconsulting.com/posts

Friendly, professional Go & Rust training

GoRustTesting / QA

’10’15’20’25
Posts
166 from 4 Feb 2009 to 28 Oct 2026
Posting
weekly (34 in the last year)
Kind
company blog
Feed
https://feeds.feedburner.com/bitfieldconsulting

2026 25

  1. Code Safari: Go subcommands
  2. The heat is on: handling units in Rust
  3. Dancing backwards with Go: why TDD is weird
  4. John Arundel
  5. Operators of death: checked arithmetic in Rust
  6. Welcome to the machine: emulating a CPU
  7. Code like a pirate with AI
  8. Castle building for beginners: marketing yourself
  9. Rewriting the world in Rust
  10. The power of GoLand: 10 hidden spells
  11. Where the sun keeps shinin': the provider pattern in Rust
  12. It's a lock: sync.Mutex in Go
  13. Zero Cost to Love
  14. The Batman trap: when helping isn't helping
  15. Aprende Rust: recursos en español
  16. My Rust dev setup in 2026
  17. Go the right way: the Zen of Go coding
  18. Rust vs Go: ¿cuál elegir?
  19. Rust vs Go
  20. What's so great about Rust?
  21. John Arundel, Cady Galleta
  22. The secret consultant: your first steps to independence
  23. The best Rust books for 2026, reviewed
  24. Racing with disaster: data races in Go
  25. Jan 4 What are the best Go books in 2026?

2025 28

  1. Dec 22 That mockingbird won't sing: a mock API server in Rust
  2. Dec 8 When doomed stubs attack: blockchain voting and proof of work
  3. Nov 26 Dips and wiggles: Prometheus, Grafana, and Checkly
  4. Nov 19 “Wakeups”: the most important DevOps metric
  5. Nov 14 “Frowning at a screen for 200 hours”: on the writing process
  6. Nov 13 Build bridges, not walls
  7. Nov 12 Sysadmins take note
  8. Nov 10 Red, green, refactor: writing perfect Go, with TDD
  9. Nov 8 Put a little Pixie in your cluster
  10. Oct 27 A hard rain's a-gonna fall: parsing JSON in Rust
  11. Oct 13 The best Go training providers in 2026
  12. Oct 11 The best Rust training providers in 2026
  13. Sep 29 Starving, sleeping, and yielding: understanding Go's scheduler
  14. Sep 14 Self-driving people: is independence for you?
  15. Aug 29 Elephants for breakfast: testing the untestable in Rust
  16. Aug 15 Go go goroutines: understanding Go’s concurrency model
  17. Jul 6 Here comes the sun: building a weather client in Rust
  18. Jun 14 The joy of (type) sets: interfaces and generics in Go
  19. May 16 For your eyes only: user-friendly errors in Rust
  20. Apr 29 Getting nothing done: how to let go and rest your mind
  21. Apr 12 Bobcoin, blockchains, and cryptocurrency
  22. Mar 24 Things fall apart: handling errors in Rust programs
  23. Mar 12 Catching grace: don’t just do something, sit there
  24. Feb 27 Writing terrible code in Rust… makes great tests
  25. Jan 30 Slow, flaky, and failing: tuning up your Go test suite
  26. Jan 23 Checkly, Terraform, and automated site monitoring
  27. Jan 13 How to know when it's time to go
  28. Jan 3 The magic function: designing clean APIs in Rust

2024 24

  1. Dec 18 Why you can't meditate: quieting the mind is impossible
  2. Dec 8 Undertesting and overtesting: finding the sweet spot for Go tests
  3. Nov 19 Rust and Go vs everything else
  4. Oct 31 Generic types in Go: collections and functions
  5. Oct 31 Constraints in Go: tightening up your type parameters
  6. Oct 24 Testing legacy Go code: tiptoeing through the minefield
  7. Oct 8 Programming is fun: a Cup o’ Go podcast chat with me
  8. Aug 15 Encrypting with AES: a simple cipher tool in Go
  9. Aug 4 func to functional: Map, Filter, and Reduce with Go generics
  10. Jul 25 Iterators in Go: the iter package and new stdlib APIs
  11. Jul 17 Bitfield Institute of Technology
  12. Jul 7 Will write for food: becoming an independent tech author
  13. Jun 23 Shameless green: pragmatic TDD in Go
  14. May 27 Rust’s Result and Option types make elegant APIs
  15. May 17 Inside AES: Go’s standard library implementation
  16. May 2 Pricing yourself: if you need the money, don't take the job
  17. Apr 10 The smallest thing in Go: iota, enums, and magic constants
  18. Apr 5 Test names should be sentences: communicating intent in Go
  19. Mar 27 Programming with confidence: test-driven development (TDD) in Go
  20. Mar 10 Generics in Go: upgrading your code to the new style
  21. Mar 10 Type parameters in Go: making functions generic
  22. Feb 28 Master of my domain: how I started my own business
  23. Jan 26 Cryptography in Go: AES explained
  24. Jan 3 Being a good co-worker is your job now

2023 16

  1. Dec 6 Not a real developer: transitioning from IT to dev
  2. Nov 8 People skills for developers: how to thrive in a diverse team
  3. Oct 11 My horrible career: how it started vs how it’s going
  4. Sep 13 You can do this: surviving day one as a new developer
  5. Jul 5 Fixing a fuzzed-up function: Go fuzz testing explained
  6. Jun 7 Target acquired: fuzz targets in Go tests
  7. May 10 What the fuzz? Introducing fuzz testing in Go
  8. Apr 15 The Tao of Go: writing software with kindness
  9. Apr 12 Random and property-based testing in Go
  10. Mar 29 The adapter pattern in Go: designing decoupled abstractions
  11. Mar 14 Generics in action: a set type in Go
  12. Feb 21 From packages to commands: writing testable Go modules
  13. Feb 7 Write packages, not programs: reusable components in Go
  14. Jan 24 Death by a thousand nits: the art of productive code review
  15. Jan 14 A career ending mistake: time for an exit strategy?
  16. Jan 10 Go’s best-kept secret: executable examples

2022 16

  1. Dec 27 Error wrapping in Go
  2. Dec 13 Standalone test scripts
  3. Nov 29 Comparing Go error values
  4. Nov 15 Conditions and concurrency: advanced test scripts in Go
  5. Nov 1 Testing errors in Go
  6. Oct 18 The txtar format: input data and golden files for Go tests
  7. Sep 20 testscript: a DSL for testing CLI tools in Go
  8. Sep 15 So you're ready for green belt? Check your Go skills
  9. Sep 5 Flipping the script: a smarter way to test Go binaries
  10. Aug 14 Should I buy or should I build?
  11. Aug 9 VS Code and Go: some superpowers you might not know
  12. May 16 Tips for Time Lords
  13. Apr 4 An API client in Go
  14. Mar 3 A reality check about cloud native DevOps
  15. Wojtek Cichoń
  16. Feb 21 Scripting with Go

2021 13

  1. Dec 14 Don't write clean code, write CRISP code
  2. Nov 20 Walking with filesystems: Go's new fs.FS interface
  3. Nov 11 ‘Let's Go Further’ by Alex Edwards
  4. Oct 14 Night of the Runbooks: a DevOps horror story
  5. Oct 11 Demystifying ‘defer’: automatic cleanup for Go functions
  6. Sep 15 “What would you say you do here?”
  7. Sep 9 Don't fear the pointer: understanding pointers in Go
  8. Aug 13 Test-driven development with Go
  9. Jun 11 CUE is an exciting configuration language
  10. May 4 Introducing Test-Last Development (TLD)
  11. May 3 Jon Bodner’s ‘Learning Go’
  12. Mar 31 Ten commandments of Go
  13. Mar 11 “How dare they not recognise my incipient genius?”

2020 28

  1. Dec 27 How to really learn Go (or anything): get the study habit
  2. Oct 5 Go vs Python: choosing the right language for the job
  3. Sep 29 Mike Thomas: in search of lost teams
  4. Mike Thomas
  5. Aug 25 Are you a Go black belt? What does mastery look like?
  6. Jul 11 'Container Security' by Liz Rice
  7. Jul 3 What is GitOps?
  8. Justin Domingus
  9. Jun 21 Writing slower Go programs: why readability beats speed
  10. Jun 20 Kubernetes at work, with Torie Joy-Warren
  11. Jun 12 All about Go maps: frequently asked questions
  12. Jun 6 map[string]any in Go
  13. May 29 Iterating over a Golang map
  14. May 8 Finding whether a Go map key exists
  15. May 1 Storing and retrieving map values
  16. Apr 25 What is Kubernetes?
  17. Apr 25 Map types in Golang
  18. Apr 18 Go maps: declaring and initializing
  19. Apr 2 What's new, Kubernetes?
  20. Feb 29 Building a Golang Docker image
  21. Feb 22 The dawn of DevOps
  22. Feb 15 Got game? Secrets of great incident management
  23. Feb 3 “Cloud Native DevOps with Kubernetes” is out now
  24. Feb 3 What “uptime” even means anymore
  25. Feb 3 “Just a big ol' cloud of compute”
  26. Feb 3 The elusiveness of DevOps
  27. Feb 3 Does your company have the DevOps nature?
  28. Phil Whelan

2019 10

  1. Dec 17 Are you looking for trouble?
  2. Nov 28 Spliffs and submarines: the two cultures and the state of DevOps
  3. Oct 28 Agile sysadmin: the art of infrastructure automation
  4. Sep 25 Dependency graphs in Puppet
  5. Aug 26 Notational Velocity
  6. May 18 Puppet dry run
  7. May 14 Scaling Puppet with Git
  8. Stephen Nelson-Smith
  9. Apr 14 What's wrong with this image? Config management vs the “golden image”
  10. Mar 30 Deciding which Docker tag to use

2018 4

  1. Dec 18 Securing modern applications in the cloud
  2. Dec 13 Database migrations in Kubernetes
  3. Nov 14 Puppet versus Chef: 10 reasons Puppet wins
  4. Aug 6 Puppet and MySQL: create databases and users

2009 2

  1. Feb 4 Golden image or foil ball?
  2. Luke Kanies