Tool Masterydevops tools · peopleware
Whilst working with a new client which had some green developers, it struck me that they only knew about 20% (totally arbitrary for this example) of the tools features they were using on a daily basis. For example, when asking them if they preferred merge vs rebase, I was often met with blank stares. Similarly, when using their editor I would often find them manually searching and replacing renamed variables, rather than using the built-in feature of the editor.
As an automation specialist I have a natural drive to find the best solution to simplify the tasks I perform on a regular basis, and it surprises me when others do the same. Here’s a list of the things I do on a regular basis to ensure I master the tools and technologies of my trade:
- Order the tools and tech by their most used. For example, I use Git everywhere, followed by VS Code for editting. My editor is situational; VS Code for larger edits, or Vim for commit messages/smaller edits, so it goes second. Then in third place will probably be my programming language. I change this more frequently (depending on the client). For a developer, the development language may be first.
- Read, at a minimum, the introduction documentation. Mastery will only come from reading all of the documentation. I have learnt the hard way that when I experience some odd behaviour, there will be documentation discussing the nuance, somewhere.
- Start reading new and old release notes for said technology. This will ensure you stay up-to-date with new features, and you can often find undocumented features too. This is especially true of open source technology where documentation isn’t always as current as the code.
- Subscribe to blogs that discuss said technology. This is where I often learn tips and tricks that even the developers may not be aware of. People are very creative and often use tools in ways the developer never intended; sometimes bad, but mostly good.
- Practice. This should be obvious, but without practice you will never find problems that need a more creative solution. Experience is merely another word for “time using/doing”.