Docker Captain Take 5 – Thomas Shaw

Docker captains are selected members of the community who are both experts in their field and eager to share their Docker knowledge with others. “Docker Captains Take 5” is a regular blog series where we take a closer look at our captains and ask them the same wide range of questions that range from their best Docker advice to whether they prefer cats or dogs (personally, we love whales And turtle here). Today, we’re interviewing Thomas Shaw, one of our ship workers leaders. He works as a Principal Automation Engineer at DIGIT Game Studios based in Ireland.

How/when did you first discover Docker?

I remember it as it was yesterday. It was August 23, 2013 and I was working as a construction engineer at Demonware. During a visit to the Vancouver office, a developer named Mohan Raj Rajamanickham mentioned a “cool new tool” called Docker. It sounded too good to be true, but I downloaded version 0.5 the next day while waiting for my flight home to Dublin, Ireland. I played with Docker CLI for several hours on the flight and that was it. Before the plane hit the runway in Dublin, I was completely sold on the potential of Docker. It solved an immediate problem faced by developers and engineers alike, which is dependency hell.

Over the next twelve months, we replaced metal building agents with containers. It was a rudimentary approach at first. We built a CentOS 5 VM, smoothed it out and created a container image from it. This was the base image we built and tested over the next two years. We went from 8 bare metal construction agents, each unique, each manual setup, each with different tool versions to 4 build agents with only Docker installed.

It was a simple approach but eliminated the management of many unique construction agents. We’ve seen a number of other benefits too, such as better build stability, 300% build productivity increase and most importantly teams now have their own dependencies. This approach worked well and around 2015 we started looking at moving our CI/CD pipelines to AWS. We originally took a hybrid approach and ran the majority of builds and tests in our data center and only a few at AWS. This was easier than expected. Docker made our workloads portable and started taking advantage of AWS’ scalability to run tests. Unit tests (which were actually functional tests) of one of our main projects were taking over 1 hour per commit. Using containers, we were able to split tests across multiple containers on multiple build factors and reduced the execution time to about 10 minutes. At this point, more people are starting to pay attention to the capabilities of Docker.

What is your favorite Docker command?

I really enjoy Docker Teams. I find it very useful to know which files/directories are being added or modified by the process inside the container. It is great for debugging. The second close would be “Docker stats”.

What is your most important tip for working with Docker that others may not know?

When possible, own your base image and installer versions. It’s convenient to use public images on Docker Hub but when working in an organization where hundreds of developers rely on the same base image, try to bring it home. We created an image “bakery” in Demonware where we’ll build our base images overnight, including installed versions of tools, run extensive testing, run downstream pipelines and verify that our base image has always been in good shape. From experience, it’s the base image where most of the “bloat” occurs and keeping it subdued can also help when moving the image around your infrastructure.

What’s the coolest Docker demo you’ve done/watched?

My favorite demo was by Casey Bisson from Joyent. In the demo, show how Triton works and how it can scale from a single container running locally to an entire data center by simply updating a single endpoint. This was in 2016 and I still love the simplicity of this approach.

What have you worked on in the past six months that you are particularly proud of?

I’ve been using containers daily since late 2013 and I’m still finding new uses for them regularly. I am currently working on improving developer tools and user experience at DIGIT Games Studios in Dublin. Part of that work involves containerizing our tools and making them available in multiple ways including from Slack, the command line, callable by the API, and even running from a spreadsheet. Docker allows us to bring tools closer to the end user, whether they are technical or not. Rolling out updates to gadgets is now simple.

What do you expect Docker’s biggest announcement to be this year?

Development Environments (DE) has received a great deal of positive feedback based on early announcements. I think DE’s potential is huge. To tightly integrate these environments into the developer IDE, sharing and customizing easily will remove existing friction and help developers move from idea to production more quickly.

What are some personal goals for the coming year in relation to the Docker community?

Our last encounter at Docker Dublin was in February 2020 and with a community of over 3000 members I would like to start in-person encounters again in 2022. I would also like to continue to run more Docker workshops across Ireland and harness the power of moving containers to communities other.

What talk would you most like to see at DockerCon 2022?

Any conversations that include games would be great. I especially loved Quake’s live migration show a few years ago. Some studios do really cool things with containers. As an early adopter of containers, Demonware may have some useful experiences to share regarding their journey from self-hosted Kubernetes to the cloud.

Looking to the distant future, what are the technologies you are most excited about and think hold the most hope?

This is a difficult question. Any technology that focuses on user experience first excites me and I’m happy to use it. From a gaming perspective, augmented reality has a lot of potential, especially for mobile gaming. I won’t mention Blockchain or NFT because I don’t know enough about either to comment. They may have their place but if they negatively impact the environment as suggested they will probably need to go back to the drawing board for more iterations.

Quick Shooting Questions…

What new skill have you mastered during the pandemic?

Full concentration of the mind.

Cats or dogs?

dog.

Salty, sour or sweet?

sweet.

The beach or the mountains?

mountains.

Your most used emoji?

Dukercon 2022

Join us at DockerCon2022 on Tuesday, May 10th. DockerCon is a free, one-day virtual event that is a unique experience for developers and development teams building the next generation of modern applications. If you want to learn how to move from code to the cloud quickly and solve your development challenges, DockerCon 2022 offers live content to help you build, share, and run your applications. Register today at https://www.docker.com/dockercon/


Leave a Comment