This past week, I reconfigured my home server to address some issues with the partition scheme. I also used this process as an opportunity to convert most of my bespoke configurations to IaC using Ansible . This was also the first time I took on a large DevOps project with the assistance of ChatGPT. The Ansible project has some great documentation complete with multiple examples of how to use each module, but because the options, and sometimes the syntax, of each modules differs, the process of automating the configuration of a complex server can be a time intensive process of hunting through many pages of documentation looking for the exact syntax of an ansible task so you can move on to automating the next task.
I recently finished revamping my homelab, and I’m very excited about it. For the past 6+ months my “homelab” consisted of an old laptop running Linux and a bunch of docker containers. This worked surprisingly well, but increasingly I found myself wanted to spin up test envrionments of multiple machines. That old laptop didn’t have the power to support those kinds of labs, and I didn’t have a good set of tooling for creating, configuring, and backing up these VM or container stacks.
Verify Certificate William Boyd’s DevOps Essentials course provides an introduction to the DevOps approach to writing and deploying software. Boyd begins with the historical and conceptual background for the DevOps movement. DevOps is best understood as a cultural movement towards stronger collaboration and shared responsibilty between engineers who write code (Dev) and engineers who deploy code (Ops.) This cultural movement gave rise to a set of practices that enable the two groups of engineers to work together more effecively and an ecosystem of tools to support this goal.
Verify Certificate I recently completed the Git Mindset course from Abhin Chhabra on Udemy. This course was my first systematic intro to the inner-workings of git, and it was very valuable. I’ve been using git for personal projects for a couple of years now, but I recently had the opportunity to write some internal tooling as part of a team at work. This put me in a situation where I needed to be comfortable creating branches, merging changes, and resolving merge conflicts on a regular basis.
Verify Certificate Git Quick Start provides a brief introduction to source-control using git on the command line. The course covers configuring git, working with repositories, merging and pushing changes, and working with git branches. This course was valuable to me because it provided the information to allow me to start using git to track my personal projects. Using git to track my personal code has allowed to learn many of git’s advanced features by doing.