56,966 blogs · [ { "id": "01a08728-b360-720c-a3c2-78b46c10410b", "title": "Programming Puzzle Solutions: JS, Java, Python, Go", "url": "https://andrewodendaal.com/programming-puzzle-solutions/", "published_at": "2026-06-04T21:00:00+00:00" }, { "id": "01a08728-b360-720c-a3c2-78b46cbc1740", "title": "Karpenter v1 vs Cluster Autoscaler: A Production Migration Story", "url": "https://andrewodendaal.com/karpenter-v1-vs-cluster-autoscaler-production/", "published_at": "2026-05-30T04:00:00+00:00" }, { "id": "01a08728-b360-720c-a3c2-78b46d055831", "title": "Longest Alphabetical Substring (JS)", "url": "https://andrewodendaal.com/longest-alphabetical-substring-in-javascript/", "published_at": "2026-05-25T06:40:00+00:00" }, { "id": "01a08728-b360-720c-a3c2-78b46da2baac", "title": "Longest Alphabetical Substring in Java", "url": "https://andrewodendaal.com/longest-alphabetical-substring-in-java/", "published_at": "2026-05-25T06:35:00+00:00" }, { "id": "01a08728-b360-720c-a3c2-78b46e8f47aa", "title": "Longest Vowel Substring in JS", "url": "https://andrewodendaal.com/longest-vowel-substring-in-javascript/", "published_at": "2026-05-25T06:30:00+00:00" }, { "id": "01a08728-b360-720c-a3c2-78b46f70b481", "title": "Longest Vowel Substring in Python", "url": "https://andrewodendaal.com/longest-vowel-substring-in-python/", "published_at": "2026-05-25T06:25:00+00:00" }, { "id": "01a08728-b360-720c-a3c2-78b46fe36519", "title": "Permutations Alphabetically in JS", "url": "https://andrewodendaal.com/permutations-alphabetically-in-javascript/", "published_at": "2026-05-25T06:20:00+00:00" }, { "id": "01a08728-b360-720c-a3c2-78b47084f95a", "title": "Permutations Alphabetically (Java)", "url": "https://andrewodendaal.com/permutations-alphabetically-in-java/", "published_at": "2026-05-25T06:15:00+00:00" }, { "id": "01a08728-b360-720c-a3c2-78b4711b0134", "title": "Find Number With Most Digits in Go", "url": "https://andrewodendaal.com/find-number-with-most-digits-in-go/", "published_at": "2026-05-25T06:10:00+00:00" }, { "id": "01a08728-b360-720c-a3c2-78b472127e6e", "title": "Find Number With Most Digits in Java", "url": "https://andrewodendaal.com/find-number-with-most-digits-in-java/", "published_at": "2026-05-25T06:05:00+00:00" }, { "id": "01a08728-b360-720c-a3c2-78b472650220", "title": "Find Number With Most Digits in JS", "url": "https://andrewodendaal.com/find-number-with-most-digits-in-javascript/", "published_at": "2026-05-25T06:00:00+00:00" }, { "id": "01a08728-b360-720c-a3c2-78b4731b0534", "title": "AWS Organizations and Control Tower: Multi-Account Strategy", "url": "https://andrewodendaal.com/aws-organizations-control-tower-multi-account-strategy/", "published_at": "2026-05-20T04:00:00+00:00" }, { "id": "01a08728-b360-720c-a3c2-78b47390c3de", "title": "Kubernetes eBPF: Next-Generation Observability and Security", "url": "https://andrewodendaal.com/kubernetes-ebpf-observability-security/", "published_at": "2026-05-20T04:00:00+00:00" }, { "id": "01a08728-b360-720c-a3c2-78b4739d036f", "title": "DevSecOps Pipeline: Integrating Security into Every Stage", "url": "https://andrewodendaal.com/devsecops-pipeline-integrating-security-every-stage/", "published_at": "2026-05-19T04:00:00+00:00" }, { "id": "01a08728-b360-720c-a3c2-78b47497843d", "title": "Rust Async Runtime Deep Dive: Tokio Architecture", "url": "https://andrewodendaal.com/rust-async-runtime-tokio-architecture/", "published_at": "2026-05-15T04:00:00+00:00" }, { "id": "01a08728-b360-720c-a3c2-78b475513682", "title": "Chaos Engineering on AWS: Fault Injection Simulator Guide", "url": "https://andrewodendaal.com/chaos-engineering-aws-fault-injection-simulator/", "published_at": "2026-05-12T04:00:00+00:00" }, { "id": "01a08728-b360-720c-a3c2-78b475caff6c", "title": "Python Data Pipelines with Polars and DuckDB", "url": "https://andrewodendaal.com/python-data-pipelines-polars-duckdb/", "published_at": "2026-05-08T04:00:00+00:00" }, { "id": "01a08728-b360-720c-a3c2-78b476532ae3", "title": "Why I Built Wyn: A Programming Language That Compiles to C", "url": "https://andrewodendaal.com/why-i-built-wyn-programming-language/", "published_at": "2026-05-06T04:00:00+00:00" }, { "id": "01a08728-b360-720c-a3c2-78b47723e7e0", "title": "Kubernetes Gateway API: The Future of Ingress", "url": "https://andrewodendaal.com/kubernetes-gateway-api-future-of-ingress/", "published_at": "2026-05-05T04:00:00+00:00" }, { "id": "01a08728-b360-720c-a3c2-78b477b15637", "title": "AWS Bedrock: Building AI Applications with Foundation Models", "url": "https://andrewodendaal.com/aws-bedrock-building-ai-applications-foundation-models/", "published_at": "2026-05-01T04:00:00+00:00" }, { "id": "01a08728-b360-720c-a3c2-78b47862fbb7", "title": "Infrastructure Drift Detection and Remediation", "url": "https://andrewodendaal.com/infrastructure-drift-detection-remediation/", "published_at": "2026-04-25T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f33e847ae", "title": "AWS Architecture Guide: Production Patterns and Best Practices", "url": "https://andrewodendaal.com/aws-architecture-guide/", "published_at": "2026-04-24T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f345d1606", "title": "Kubernetes Guide: From Basics to Production Operations", "url": "https://andrewodendaal.com/kubernetes-guide/", "published_at": "2026-04-23T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f346c1ffe", "title": "Kubernetes Multi-Cluster Management with Fleet and Rancher", "url": "https://andrewodendaal.com/kubernetes-multi-cluster-management-fleet-rancher/", "published_at": "2026-04-22T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f35292c56", "title": "Rust WebAssembly: Building High-Performance Web Applications", "url": "https://andrewodendaal.com/rust-webassembly-high-performance-web-apps/", "published_at": "2026-04-18T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f357c33a2", "title": "AWS Aurora Serverless v2: Architecture and Performance Guide", "url": "https://andrewodendaal.com/aws-aurora-serverless-v2-architecture-performance/", "published_at": "2026-04-15T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f3596d58e", "title": "Implementing SLOs and Error Budgets in Practice", "url": "https://andrewodendaal.com/implementing-slos-error-budgets-practice/", "published_at": "2026-04-11T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f36349262", "title": "Python Packaging in 2026: uv, Poetry, and the Modern Ecosystem", "url": "https://andrewodendaal.com/python-packaging-2026-uv-poetry-modern-ecosystem/", "published_at": "2026-04-08T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f36742add", "title": "Kubernetes Ingress Controllers: NGINX vs Traefik vs Istio Gateway", "url": "https://andrewodendaal.com/kubernetes-ingress-controllers-nginx-traefik-istio/", "published_at": "2026-04-04T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f3686d2a9", "title": "AWS Step Functions: Orchestrating Complex Workflows", "url": "https://andrewodendaal.com/aws-step-functions-orchestrating-complex-workflows/", "published_at": "2026-04-01T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f37267cc8", "title": "Terraform Testing: Unit, Integration, and End-to-End", "url": "https://andrewodendaal.com/terraform-testing-unit-integration-e2e/", "published_at": "2026-03-28T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f381c7ff9", "title": "Distributed Tracing with OpenTelemetry: A Complete Guide", "url": "https://andrewodendaal.com/distributed-tracing-opentelemetry-complete-guide/", "published_at": "2026-03-25T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f38498ea4", "title": "Container Security Scanning in CI/CD Pipelines", "url": "https://andrewodendaal.com/container-security-scanning-cicd-pipelines/", "published_at": "2026-03-21T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f3946cd83", "title": "AWS EventBridge: Building Event-Driven Architectures", "url": "https://andrewodendaal.com/aws-eventbridge-event-driven-architectures/", "published_at": "2026-03-17T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f39e887fe", "title": "Python Performance Optimization: Profiling and Tuning Guide", "url": "https://andrewodendaal.com/python-performance-optimization-profiling-tuning/", "published_at": "2026-03-14T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f3a978cb2", "title": "Kubernetes Operators: Building Custom Controllers in Go", "url": "https://andrewodendaal.com/kubernetes-operators-custom-controllers-go/", "published_at": "2026-03-10T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f3b0c6ca3", "title": "Rust Error Handling Patterns for Production Applications", "url": "https://andrewodendaal.com/rust-error-handling-patterns-production/", "published_at": "2026-03-07T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f3b77a4f0", "title": "AWS CDK vs Terraform: A Practical Comparison in 2026", "url": "https://andrewodendaal.com/aws-cdk-vs-terraform-practical-comparison-2026/", "published_at": "2026-03-03T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f3be9e5fa", "title": "Platform Engineering: Building an Internal Developer Platform", "url": "https://andrewodendaal.com/platform-engineering-internal-developer-platform/", "published_at": "2026-02-28T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f3c6664c8", "title": "Kubernetes Horizontal Pod Autoscaling with Custom Metrics", "url": "https://andrewodendaal.com/kubernetes-hpa-custom-metrics-autoscaling/", "published_at": "2026-02-25T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f3c8f9a2f", "title": "Go Concurrency Patterns for Microservices", "url": "https://andrewodendaal.com/go-concurrency-patterns-microservices/", "published_at": "2026-02-21T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f3d347f72", "title": "Implementing Zero-Trust Networking on AWS", "url": "https://andrewodendaal.com/implementing-zero-trust-networking-aws/", "published_at": "2026-02-18T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f3dd3ed46", "title": "Python Type Hints and Static Analysis in Production Codebases", "url": "https://andrewodendaal.com/python-type-hints-static-analysis-production/", "published_at": "2026-02-14T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f3e49ff51", "title": "AWS Cost Optimization: 15 Techniques That Actually Work", "url": "https://andrewodendaal.com/aws-cost-optimization-techniques-that-work/", "published_at": "2026-02-10T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f3f2e4452", "title": "Kubernetes RBAC Deep Dive: Securing Multi-Tenant Clusters", "url": "https://andrewodendaal.com/kubernetes-rbac-deep-dive-multi-tenant-clusters/", "published_at": "2026-02-07T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f3f49f887", "title": "Terraform Modules: Design Patterns for Reusable Infrastructure", "url": "https://andrewodendaal.com/terraform-modules-design-patterns-reusable-infrastructure/", "published_at": "2026-02-03T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f4006f850", "title": "GitOps with ArgoCD: From Zero to Production", "url": "https://andrewodendaal.com/gitops-argocd-zero-to-production/", "published_at": "2026-01-31T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f4099cd6c", "title": "Rust for Cloud Engineers: Why Systems Programming Matters", "url": "https://andrewodendaal.com/rust-for-cloud-engineers-systems-programming/", "published_at": "2026-01-27T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f4130f2cb", "title": "AWS ECS vs EKS: Choosing the Right Container Orchestrator in 2026", "url": "https://andrewodendaal.com/aws-ecs-vs-eks-choosing-container-orchestrator-2026/", "published_at": "2026-01-24T04:00:00+00:00" }, { "id": "01a08728-b361-70eb-9d03-490f414526e3", "title": "Building Production-Ready Docker Images: A Multi-Stage Build Guide", "url": "https://andrewodendaal.com/building-production-ready-docker-images-multi-stage/", "published_at": "2026-01-20T04:00:00+00:00" } ] posts Claim your blog
Back to aoms
Blog · corpus.blog/blogs/andrewodendaal.com/posts

aoms

andrewodendaal.com

2026