All blogs / DevOps / SRE / infrastructure
Andy Dote
Recent content on Andy Dote
DevOps / SRE / infrastructureTesting / QASoftware / engineering practice
- Posts
- 169 from 1 Jan 2001 to 2 Apr 2026
- Posting
- now and then (1 in the last year)
- Kind
- personal blog
- Feed
- https://andydote.co.uk/rss.xml
2026 1
2025 3
2024 5
2023 6
2022 8
2021 6
2020 7
2019 17
- Consul DNS Fowarding in Alpine, revisited
- Libvirt Hostname Resolution
- Nomad Good, Kubernetes Bad
- Creating a Vault instance with a TLS Consul Cluster
- Consul DNS Fowarding in Ubuntu, revisited
- Creating a TLS enabled Consul cluster
- Using Vault as a Development CA
- Architecture Decision Records
- Canary Routing with Traefik in Nomad
- Feature Toggles: Reducing Coupling
- Feature Toggles: Branch by Abstraction
- Configuring Consul DNS Forwarding in Alpine Linux
- Configuring Consul DNS Forwarding in Ubuntu 16.04
- Running a Secure RabbitMQ Cluster in Nomad
- Hyper-V, Docker, and Networking Drama
- RabbitMQ clustering with Consul in Nomad
- Testing Immutable Infrastructure
2018 17
- Code-free tracing with LogStash and Jaeger
- Against SemVer
- Stopping Caring...
- Microservices or Components
- SketchNotes: Finding Your Service Boundaries
- Semantic Configuration Validation: Earlier
- Feature Toggles with Consul
- Validate Your Configuration
- Branching and Red Builds
- Managing AppSettings in Consul
- Locking Vault Down with Policies
- Secure Communication with Vault
- Fixing Docker volume paths on Git Bash on Windows
- Managing Postgres Connection Strings with Vault
- Writing Conference Talks
- Test Expressiveness
- Task Chaining and the Pipeline Operator
2017 21
- Tweaking Processes to Remove Errors
- Evolutionary Development
- Strong Configuration Composition
- Alarm Fatigue
- Vagrant in the world of Docker
- Testing RabbitMQ Concurrency in MassTransit
- Composite Decorators with StructureMap
- Integration Testing with Dotnet Core, Docker and RabbitMQ
- Implementing Custom Aspnet Core ModelBinders
- Testing Containers or Test Behaviour, Not Implementation
- Repositories Revisited (and why CQRS is better)
- Serilog LogContext with StructureMap and SimpleInjector
- Getting Things Done
- Terraform, Kinesis Streams, Lambda and IAM problems
- S3 Multi-File upload with Terraform
- Don't write Frameworks, write Libraries
- Using Terraform to setup AWS API-Gateway and Lambda
- Unit Tests & Scratchpads
- Update all Docker images
- MediatR and Magic
- Git Aliases
2016 7
2015 8
- Generating AssemblyInfo files with Gulp
- Posting PlainText to Asp WebApi
- Running pre-compiled microservices in Docker with Mono
- Running microservices in Docker with Mono
- A single project Windows Service and Console
- Don't Let The Database Dictate Your Design
- The problems with and solutions to Repositories
- Communicating Intent in APIs
2014 16
- Encapsulation in Warcraft Addons - Inheritance
- Encapsulation in Warcraft Addons - Closures
- Good Design in Warcraft Addons/Lua
- Edge.js for Embedded Webuis
- Configuring Dapper to work with custom types
- Strong Type your entity IDs.
- Specific Interfaces
- Using StructureMap Registries for better separation
- Writing Rich Domain Models
- Using a Micro ORM to decouple your DB Access
- SOLID Principles - DIP
- SOLID Principles - ISP
- SOLID Principles - LSP
- SOLID Principles - OCP
- SOLID Principles - SRP
- Specialising a General Application
2013 2
2012 8
- Checking a Type for an Attribute
- SqlDataReader.HasRows Problems
- Winforms Design Time support: exposing sub designers
- Designing the EventDistributor
- Model View Presenters: Composite Views
- Model View Presenters: View to Presenter Communication
- Model View Presenters: Introduction
- Model View Presenters: Presenter to View Communication
2011 7
2010 7
2009 17
- Thanks Google for solving my problem!
- Functionality and Seperation of Concerns
- Software Fuzzying maybe?
- Region Hate
- Fluency at a cost?
- Key Bindings
- CI: Thoughts on CC.Net and Hudson
- Overuse of the Var keyword
- Coming From Something as opposed to Going To Something
- Fluent Validation
- The Reading List
- Converting Code
- Microcontrollers for MenuItems
- Generics to the rescue! Again!
- Using Laziness
- Finally, I have used a Model View Controller!
- SQL Like statement