While settling into my new job, I’ve also been tinkering with some side projects. One of them was inspired by the countless network connectivity and latency issues I used to troubleshoot as a Cloud Support Engineer.
I’ll admit — networking has always been one of my weaker areas in IT. I can get around it well enough, but shifting back into the “network mindset” is always a bit of a slog. There are so many different tests to remember, each useful for diagnosing a different type of issue.
So, just for fun, I decided to build a comprehensive network troubleshooting tool that bundles together the tests I ran most often. I chose Python for the project, partly to refresh my skills with the language.
As an extra experiment, I’ve been trying out AWS’s new IDE, Kiro, and giving “vibe coding” a spin. That said, I’m not blindly trusting whatever the GenAI assistant spits out. I’m reviewing every line of code to make sure I understand it, confirm it makes sense, and check for any security concerns.
Right now, the tool can run DNS resolution, ping, and TCP connectivity tests. You can feed it a URL or IP, specify which port to test, and set how many ping attempts to run. Since I mostly supported containerized solutions at AWS, I also built a container image so the tool can run in that environment. As a bonus, I’m bundling in the most common network testing CLI tools, so you can run one-off checks directly inside the container.
It’s still a work in progress, but I’m happy with how it’s shaping up. Once I feel confident enough, I might even push it to a public repo. And while I don’t recommend relying on “vibe coding” as a strategy, it can be handy for breaking through roadblocks. At the end of the day, though, I’d rather refactor the code myself so it works exactly the way I want.