This is not my first blogging rodeo, and the first advice I ever got years ago was to put everything in listicle form, because people are too busy to read . . . you know . . . paragraphs and stuff.
That was 2009, when we were still banging rocks together to make fire. Now listicles are cliche and wreak of click-bait so I generally avoid them. It’s also (usually) condescending to readers, in my opinion, but the format fits for this one.
And yes, the dripping irony of making commentary in a listicle blog post is not lost on me. I am bucking my hangups on listicles and presenting forth this jewel for your enjoyment.
The Usual Disclaimers
This post is going to be extraordinarily link-heavy, as you can imagine, so keep that in mind. I got the Ctrl+K on speed dial. Also, I am a douche-bag Mac user, so you may have to ponder any Windows/*nix equivalents listed here. I will attempt to make mention of any Windows equivalents as best I can. If the tool is self-explanatory, then I won’t make any additional commentary in an attempt to keep this one short. Also, some CLI tools are assumed . . . you know . . . like ssh, scp, and so on.
It occurs to me as I type this one out that I opening myself up for some criticism . . . “You don’t use _____________ for ______________ing your __________________? What a n00b!”
I am not so arrogant to think that I, “have the best tools for everything” or that, “my way is the best way of doing things”. The best anyone can give you at any time is an intersection of their experiences within the contexts of the challenges they’ve faced combined with the tools to which they have access. So, if you have suggestions for tools to add to my list, awesome! I would love to hear them. Let’s share in our experiences, as it were. This list is in no particular order . . .
IaC/Automation Tools (Some of These are Programming-Language Specific):
- Visual Studio Code – Learn to use the debugging tools as well. That will save you a lot of time. I know that sounds obvious, but you would be surprised how many people don’t use them.
- PyCharm – I am just starting to learn Python, and this has been a great tool for both learning and actually doing the 2 “Hello World” programs I’ve made!
- Git – I hesitated putting this one on the list because in the year 2020 it is assumed, but putting it up here anyway. As far as remote repos, I have the most experience with BitBucket/Github, but there are a ton out there.
- Postman – We have talked about this one before. In fact, that post is the second most visited post on thinkingoutcloud.org, not far behind The Dunning-Kruger Effect and You.
- Powershell – Or Powershell Core with *nix/Mac.
- On that note, PowerCLI for you VMwarriors out there.
- Vagrant – There is a windows and a Linux Version.
- VirtualBox – Allows for some local VMs and K8s implementations.
- curl – Great for testing REST APIs.
- jq – JSON Processor.
- Slack – Notifications, etc.
- The SHARP EL-531TG Calculator – I have mentioned this one before.
- The BizoeRade Stopwatch – We talked about this one too.
- Ansible and Ansible Tower/AWX, or the automation platform of your choice.
- Jenkins – We use this for scheduling and code pipelines.
KLO (Keeping the Lights On) Tools:
- Oh My Zsh with PowerLevel 10K. The CLI additional info such as time to execute, color coding, and git repo info is really nice, especially for automation.
- nmap – There is a Windows version as well.
- PowerCLI – Not a mistake; this is a KLO tool for me.
- Snagit 2020 – I started using this as a trainer to build annotated screenshots and now I can’t live without it.
- Microsoft Remote Desktop – Yes, I know there are better tools out there, but this one works for me.
- Centralized Password Vault of your choice.
I don’t have a huge amount of experience with Kubernetes, so I am listing off the “default” (and starting) tools for dealing with K8s:
According to my SHARP EL-531TG calculator, that’s 25 tools! PowerCLI is twice, if you are keeping score.