All blogs / DevOps / SRE / infrastructure
Ramblings of a cloud engineer
Welcome to my little corner of the internet
DevOps / SRE / infrastructureGoDev tools / editors / IDEsEssays / personal
- Posts
- 209 from 26 Feb 2012 to 26 Sep 2026
- Posting
- now and then (5 in the last year)
- Kind
- personal blog
- Feed
- https://skarlso.github.io/index.xml
2026 3
2025 15
- Adventures in The Forge - Part 1
- Choose your own slide adventure
- CTY now supports using a custom CSS for the HTML output
- Updated Google OAuth Go Sample - Modern Authentication with Improved UI
- Tilt.dev with server side apply
- Re: My AI Skeptic Friends Are All Nuts
- MFA generator in External Secrets Operator
- In-depth look at CRDs and how they work under the hood
- CNCF Project Showcases
- External Secrets Operator template rendering tool
- Missing out on jobs because of LeetCode
- Notetaking with ADHD
- Using ORAS as a library to interact with OCI repositories
- Write something every day
- Add Suggest Edit to Posts
2024 9
- Quickly delete all packages from GitHub registry using a blob
- Test Post - Please ignore
- How I track tasks with Obsidian
- Update your CRDs with confidence
- Using cert-manager as a subchart for your own Helm Chart
- Discoverable functional options pattern
- Journey from Testing into Software Development
- crd-to-yaml now supports HTML as an output format
- Generic dig for map key using typed parameters
2023 11
- CRD to YAML as WASM website
- Self-Signed locally trusted certificates with cert-manager
- Diff check and Manifest generation in GitHub Actions
- Digital and Analog notes together
- How to add a self-signed certificate to the GitHub action runner
- Comments are back
- Test comments
- Dark mode and a new theme
- Painless controller testing with e2e-framework and tilt
- Rapid Kubernetes Controller Development with Tilt
- Forming the habit of analog journaling - Why the digital format did not work for me
2022 6
- Generate a sample YAML file from a CRD
- Summary of Common Sense guide to Data Structures and Algorithms
- How to contribute to a new repository
- Hacking on CAPA - The journey of implementing a nontrivial feature in a barely known codebase
- Dependabot Bundler
- Reader's Digest - January with Grokking Algorithms Go Generics Repository
2021 24
- Providers Pattern
- Advent Of Code - Day 12 - Updated
- Advent Of Code - Day 15
- Advent Of Code - Day 14
- Advent Of Code - Day 13
- Advent Of Code - Day 12
- Advent Of Code - Day 11
- Advent Of Code - Day 10
- Advent Of Code - Day 9
- Advent Of Code - Day 8
- Advent Of Code - Day 7
- Advent Of Code - Day 6
- Advent Of Code - Day 5
- Advent Of Code - Day 4
- Advent Of Code - Day 3
- Advent Of Code - Day 2
- Advent Of Code - Day 1
- Summary of Programmer's Brain
- Reader's Digest 2021-07
- Reader's Digest 2021-06
- Blog refactor
- Reader's Digest 2021-04
- Reader's Digest 2021-03
- Reader's Digest 2021-01
2020 3
2019 11
- Using a Kubernetes based Cluster for Various Services with auto HTTPS - Part 2
- Summary of Practical Go workshop from Dave Cheney
- How I killed my entire Kubernetes cluster
- Using a Kubernetes based Cluster for Various Services with auto HTTPS
- Updated Face-recog architecture drawing
- Efferent and Afferent metrics in Go
- Living with a new Parser for a year
- Deploy a Hugo Blog Github Actions
- Cronohub: Archive from anywhere to anywhere
- Deploy a Hugo Blog with Travis on Git Push
- Go SSH with Host Key Verification
2018 8
- Extensive tutorial on go-plugin.
- Furnace with a new Plugin System
- TOTP generator with account handling for multiple tokens
- Keep your git forks updated all the time
- Kubernetes distributed application deployment with sample Face Recognition App
- Go Budapest Meetup
- Ansible + Nginx + LetsEncrypt + Wiki + Nagios
- Huge Furnace Update
2017 12
- Commit-Build-Deploy With AWS CodeBuild and Lambda
- Furnace Ikea Manual
- Furnace Binaries
- Notetaking
- Replacing Eval with Object.send and a self written Parser
- Furnace - The building of an AWS CLI Tool for CloudFormation and CodeDeploy - Part 4
- Furnace - The building of an AWS CLI Tool for CloudFormation and CodeDeploy - Part 3
- Furnace - The building of an AWS CLI Tool for CloudFormation and CodeDeploy - Part 2
- Testing new Hugo if posts are generated properly
- Furnace - The building of an AWS CLI Tool for CloudFormation and CodeDeploy - Part 1
- Images on older posts
- How to HTTPS with Hugo LetsEncrypt and HAProxy
2016 21
- How to do Google Sign-In with Go - Part 2
- RScrap scraper
- Budget Home Theather with a Headless Raspberry Pi and Flirc for Remote Controlling
- Always Go with []byte
- Global variable for never changing regex
- Drupal missing ToolBar and settings not saving
- Jenkins Best Practices Talk
- Ruby Sieve
- Simple hook to rid of trouble
- How to do Google sign-in with Go
- Minecraft world automatic backup to AWS S3 bucket - Part 2 (Custom functions)
- Minecraft world automatic backup to AWS S3 bucket
- Minecraft Server with Docker on OSX + Mods
- Wercker Fixed
- Wercker Test
- Hugo Autodeploy with Wercker and Github - Pages
- Wercker Test
- Doing CORS in Go with Gin and JSON
- My Journey in advent of code
- Improving performance with byte slice and int map
- Byte arrays and Channels
2015 38
- Use Byte Array Instead of Strings
- Use Byte Slice Instead of Strings
- Recursive Letter Frequency Count
- Go Development Environment
- Welcome To My New Blog
- Go JIRA API client
- The One Hundred Day GitHub Challenge
- Go Progress Quest
- Kill a Program on Connecting to a specific WiFi – OSX
- Circular buffer in Go
- Jenkins Job DSL and Groovy goodness
- DataMunger Kata with Go
- How to Aggregate Tests with Jenkins with Aggregate Plugin on non-relating jobs
- I used to have great ideas on the toilet, but I no longer do.
- Sieve of Eratosthenes in Go
- Quick Tip for Debugging Headless Locally
- Converting numbers into string representations
- Selenium Testing with Packer and Vagrant
- Bitwise & Operator
- Packer 0.8.1.
- Powershell can also be nice -Or Installing Java silently and waiting
- The Packer, The Windows, and the Vagrant box
- Docker + Java + Vagrant+ GO.CD
- Setting up a new Laptop with Puppet
- Busy building the future
- Django – RPG – Part 3
- Django – RPG – Part 2
- Django – RPG – Part 1
- Small Python GUI to Calculate Lever Distance
- Python and my Math commitment
- Sphere Judge Online – Python Kivy Android app – Part 2
- Sphere Judge Online – Python Kivy Android app
- Why Lock Picking is like Testing
- Building an RPG App with Meteor – Part One – The struggle
- JavaScript Web Framework – Meteor
- When cucumber goes wrong
- From Zero to Hundred in Four seconds
- Why Testers are, like scientists
2014 18
- Why the expressiveness of your Tests is important – Part One
- Updating All Jenkins Jobs Via Jenkins API – Python
- The seven Principles of Context Driven Testing – Mind Map
- Python Course Review
- Five reasons why a tester should learn SQL
- TDD is Dead – Not really
- Five reasons why a front-end tester should learn Javascript
- Note taking what when how often
- Using Chrome Search Engine – Multiple Search Params
- How I started Running
- How the past influences the present
- Example when to use the Strategy Pattern
- How to write a blog – Why long posts rarely work
- How to check content header on unknown number of items – Python
- The method of Loci and how it works for me
- Why you should learn using Vim
- Why does it matter if I sit in an office or in a park
- How I recruit – Why tool requirements are stupid
2013 12
- Why you should care about the quality of your test code
- Diary of a Bit
- Low Tech – Why having less will fell more
- Why not to automate everything…
- Sublime text
- Cucumber-Jvm And @AfterAll
- Cucumber Test Name and Tags on Feature
- Groovy and Grails course summary
- My history in testing
- It’s all about human interaction.
- What you really need to know to become a Testing Expert
- From Chaos There Shall Be Order
2012 18
- Methodologies, Thought Patterns, Lies
- TEAS: Testing Exploration Adventure Session
- How to eliminate a parameter boom
- Coderetreat London
- What my brain is up to the whole day…
- Learning programming with a visual mind
- TDD and Game of Life
- Journey into an unknown system
- Solution to Wrap Kata
- How to read a professional book for slow learners
- Don’t throw Exception
- How to write a professional blog
- Making your code understandable
- Getting Dual Card to work on Ubuntu 12.04.
- JMS Connection setup and Framework
- Configuration
- Hello and welcome
- Testing ‘code’ tag.