Be your tool's best friend, not its enemy
i.e. don't spend the day fighting against your computer
Have you ever thought about how many steps are involved in transforming a simple idea into a working application? And how often do the tools designed to assist us end up becoming obstacles instead?
How many developers have you seen—or even been—blaming the IDE (I'm sorry Eclipse, I still love you), the pipeline, or the terminal because something didn't work as expected? From breaking to stalling, these frustrations are all too familiar. They underscore the critical importance of not just using, but mastering, the tools we rely on daily.
In this text I will discuss how your workflow can be improved (or worsened) by our daily arsenal of tools that we need to deliver value to our customers.
From coding to post-deployment monitoring, development demands technical skills and the ability to navigate diverse tools. Based on real experience, I’ll show how using these tools wisely can turn obstacles into opportunities for greater productivity and efficiency.
Why do we use so many tools to develop software nowadays?
Modern software development is increasingly complex, requiring more than just knowledge of a programming language to deliver code to production. Today’s pipelines involve a myriad of tools: IDEs for writing code, version control systems for collaboration, CI/CD pipelines for automated builds, and monitoring tools for post-deployment analysis. This growing toolbox reflects the intricate nature of delivering scalable, reliable, and efficient software in competitive markets.
Developers must juggle these tools to ensure code quality and delivery speed, but without understanding how to effectively integrate and manage them, productivity can suffer. This complexity demands not just technical expertise but also strategic use of resources.
So many tools - choose your battles.
Given the sheer number of tools developers interact with daily it's crucial to prioritize. Spend time identifying which tools consume most of your attention and which are frequent sources of troubleshooting. By focusing on these, you can direct your learning efforts and continuous improvement more effectively, reducing friction and enhancing your workflow.
💡 TIP – If you use a development tool every day, like VSCode for example, learning about its update cycle and new commands and keyboard shortcuts can help you become much more productive and save you hours each week.
Know where your bottleneck is
Identifying pain points in your daily routine is essential for long-term growth. Are certain tools draining your productivity? Do you struggle with gaps in your knowledge that turn minor issues into major roadblocks? Pinpointing these bottlenecks and addressing them can save hours each week—time that can be redirected to more critical tasks or innovative work.
💡 TIP – Usually, the problem lies below where it’s being revealed. Are you struggling with lint breaking in the pipeline? So enable auto-format on save in your IDE. If your tests are taking too long to run, update the command you’re using to execute them or your suite, and run one case at a time.
Look for ways to optimize your time by making use of what you already have at hand.
Terminal and Git, are the only ones you really need to master
Here in Brazil, we often pair rice and beans with every meal, calling it our “everyday food.” Similarly, for developers, Git and the terminal are the “rice and beans” of our daily routines. While many tools abstract their functionality with graphical interfaces or macros, Git and the terminal remain at the core—even within CI/CD pipelines, cloud platforms and fancy IDEs. Mastering these foundational tools will save you time, reduce headaches, and improve your overall productivity. Becoming proficient in these basics is like cooking the perfect rice and beans: it’s simple, but it makes all the difference.
Learn from the best
Learning from more experienced developers will fast-track your growth. The best programmers I’ve worked with have been masters of tools like GIT, Bash, VIM, Docker, and TMUX, like master craftsmen with their chisels, brushes, or scissors. Observing their workflows and asking questions can provide invaluable insights, helping you refine your approach and become more efficient.
Extra: Typing - the air we breathe
If Git and the terminal are our daily sustenance, typing is the air we breathe. It permeates everything we do in our profession and is often an overlooked topic.
Recently, I had the privilege of returning to the school I attended 20 years ago to enroll my daughter there. While visiting, I stepped into the computer lab where I had typing lessons. It was there that I learned the importance of typing with all my fingers and positioning my hands correctly on the keyboard. These habits help reduce the chances of making typos, prevent wrist pain, and improve both speed and accuracy.
💡 TIP – IMPROVE YOUR TYPING!
Conclusion
In a world where software development means swabbing the decks of an ever-growing toolkit, not really knowing your tools is no longer acceptable-it's necessary. Greatness can be achieved by mastering only a few of the most meaningful tools, eliminating bottlenecks, and learning from the best. Success lies not just in writing superb code, but in wielding the tools that get you there.
Suggested Reading:





