Managing Json in Go is not a trivial problem. There are many examples out there of how to decode a simple json document into a struct, but few that answer the questions that inevitably come up:
How do I provide defaults for fields? How do I make a field optional? How do I avoid using defaults for certain fields (eg: a user id)? How do I prevent pointer maintenance issues down the road?
This is the second in a two part blog about Scaling with Docker. In this part, we’ll take what we learned in Part 1 and use it to create a scalable and resilient service with Docker. While the previous part took a more conceptual route, this part will focus more on practical applications. At each stage we’ll update a set of scripts to automate building and deploying, and go through a few tests to get familiar with the results.
Getting started with Docker, from a Scaling Perspective
Brandon Okert
This is the first in a two part post about Scaling with Docker. In Part 1, we’ll focus on getting started with Docker from a scaling perspective. For the most part this will be an intro to Docker, so if you’re already experienced using mutli-container hosts, docker networks, volume containers, monitoring tools, and management scripts, feel free to skim this part. In Part 2, we’ll use the fundamentals from Part 1 to organize scalable multi-host systems, then show where to start to take that to very large scale applications.
An Overview of Common Test Scenarios and Gotchas in ReactJs
Brandon Okert
Having recently been tasked with bringing our JS test coverage in React to >85%, I was surprised to find that there are scant resources for actually testing React components thoroughly. There are a few Test Utilities and getting started guides, but few examples to draw from for for in depth coverage. What do I do when I need to test a change in state resulting from a sequence of user actions?
How I made a simple message scheduler on the weekend
Brandon Okert
Guten Tag!
This weekend I build a little distributed message scheduler. I was recently motivated to learn PHP, and given a recent discussion at work, a message scheduler seemed the way to go. It fit the bill - not only would I be able to use php in a production-like setting, but I would also improve my fluency with distributed systems in general. It was also something I could get done in a reasonably short time - an important trait for an over-eager project starter like me.