Hi, I’m Tyler Waters

Software dev and technology enthusiast interested in backend & system development, as well as container & network orchestration.

  • Currently developing tools for server provisioning and fleet management.
  • This is a personal blog, all opinions are my own.

Containerizing a Simple Node Application with Docker

Containers, which may be well past their prime as the “hottest new technology”, still have a strong use case in the development and delivery of software. A container wraps up all of the software needed to run an application into a single “runtime”. This includes the application itself, and all of the dependencies wrapped up in a developer-defined environment. Any given container will run the same on all hardware and operating systems, as long as the container platform is installed....

December 6, 2021 · 3 min · Tyler Waters

An Introduction to GraphQL

GraphQL is a query language developed by Facebook; It has become popular for retrieving data over HTTP from various backends/databases under a single API (or even databases directly). That is, data is accessible from potentially different sources under a single query language. There are libraries, for both server and client functions, in many languages, including Java, Python, C/C++, JavaScript, etc. Why GraphQL? The main advantage of GraphQL is the ability for the client to decide what information is returned by a single query....

November 29, 2021 · 3 min · Tyler Waters

LeetCode: Number of Islands

For the second entry in the LeetCode series, I will be discussing another medium-difficulty problem. However, unlike the in-depth analysis covered in the last LeetCode problem, this post will be a succinct overview of an efficient solution. This problem is great because it’s easily to visualize the input, and it does not have a lot of constraints. It also never hurts to have more practice with multidimensional arrays + graph searching algorithms....

November 22, 2021 · 3 min · Tyler Waters

Obsibian: Smart Plaintext Notes

Obsibian: Smart Plaintext Notes Obsidian is a modern cross-platform note-taking application. By adapting my note-taking habits to fit the strengths of Obsidian, my notes have become more meaningful in content and reviewability. Those familiar with Notion and similar note-taking applications will feel right at home, but what makes Obsidian different? Features: Backlinking The star of the show: linking notes to build connections. It sounds pretty inconsequential, but it is great for helping structure your notes in more meaningful ways improving the value of your notes....

November 14, 2021 · 2 min · Tyler Waters

Leetcode: Set Matrix Zeroes (Part 2)

Continuing where we left off last week, let’s finally dicuss the optimal solution to the Set Matrix Zeroes problem from LeetCode. If you have not read Part 1, please do so! In the previous post, we discussed the problem & constraints, as well as some intuition behind the solution. Building off of this intuition, let’s go over the algorithm! The Solution Recalling our constant-space requirement, and the conflicts that can come from writing zeroes before completing the first read, how can we safely indicate which rows and columns will be set to zero without compromising correctness?...

November 7, 2021 · 6 min · Tyler Waters