which is 4 core developer tools I use in my daily life

4 core developer tools I use in my daily life

This article presents my top four developer tools that I use daily as a developer in 2024. ✅

These developer tools are designed to enhance your editing skills, streamline terminal navigation, facilitate note-taking, and extend the utility of Docker beyond mere application containerization. Plus, I have a little surprise for you at the end. 😉

If you haven’t tried at least one or two of the tools mentioned in this article, believe me, you’re missing out, my friend. Give them a whirl; you’ll thank me later. 😎

And who knows? You might just discover a new favorite tool that revolutionizes your workflow!

Swag Man

1. Tmux – Terminal multiplexer : developer tools

ℹ️ I don’t think there is any reason not to use Tmux. As long as you have to work in the terminal, believe me, this is going to make your life much easier.

Terminal Multiplexer - Tmux

Are you opening up new tabs every time you need to work on something else in the terminal, and your current terminal window is occupied? Believe me, this thing is going to blow your mind. 🤯

You can split a tab/window into multiple panes. Also, there is the concept of a session that allows you to have multiple windows open, completely independent of other sessions, making it easy to work on multiple projects at a time.

See in the image? I have my notes in another window, and dotfile configs in another. Switching between them is very easy and convenient.

Spoiler alert: You will never want to use your mouse when working in the terminal. 😉

It hasn’t been very long since I started using Tmux, but now it’s become my main core utility that I cannot live without. 🔥


2. Neovim – Preferred Code editor :developer tools

❓ Do you love working in the terminal? If yes, then this code editor is probably what you didn’t know you needed. Give it a try.

Neovim Code Editor

I was a very big fan of VSCode, and still, I am. I knew nothing about Vim and Neovim just a few months ago. But now, believe me, in all these months, I have not touched VSCode even once. 🫠

Maybe you are a very big fan of VSCode as I was, but try switching yourself to Vim motions. That is the best thing you could do for yourself to increase productivity. Once you shift your editor to the terminal, you will slowly start to live in the terminal itself.

Although the editor in the terminal might not be to everyone’s taste, at least try to use it once and see if it is something of your choice.


3. Obsidian – Great Note Taking : developer tools

🧠 My second brain, and if you start using it right now, it will be yours too.

I know you might be using some cool note-taking tools such as Notion, Evernote whatever. But, do you remember the last time you opened up these note-taking apps to actually reference something you wrote a few months earlier? 🤔 See, most of you don’t have an answer. So uninstall these, and do it right now!GIF

I also switched from Notion to Obsidian. Believe me, it was one of the best switches I made, one that I am going to cherish for the rest of my life. Don’t worry, you can import your existing notes from your note-taking tools to Obsidian pretty easily.


4. Docker – Beyond Containerization

🐳 Do you use it for more than just containerizing your application? If not, I guess it’s time to.

Docker

Mostly when we think of Docker, we think of it just as a way to containerize applications. We know there are tons of ways to use Docker, but we simply ignore them. But, think of it more like your daily driver, not just for one purpose.

Recently, I wanted to try using Arch so I could say, “I use Arch, BTW!” 😉 But I didn’t want to install a completely new Linux distribution from scratch just to find out if I don’t want to move forward with Arch. For that, I simply spun up a Docker container with the Arch image and started using it. If I don’t like it in the future by any chance, I will simply remove the darn image with its container. And that’s it, I am back to normal.🔥

Why not use a VM for that use case?

In a VM, you have to allocate all the resources, and it will feel more bloated, to be honest. But with this approach, you have a complete, fully buttery smooth OS without having to do anything manually from scratch.

Also, recently I had to deal with connecting to a remote server via SSH, and my key-based authentication was not working. To debug if the problem was on my side, I simply spun up a Docker container with Alpine, set up my SSH keys there, and it connected successfully. The main problem was with the ssh-daemon wrong config of not accepting key-based authentication on the server itself because of PubKeyAuthentication no in the /etc/ssh/sshd_config file.

Docker is so beautiful 😻, try to use it very frequently.

Leave a Reply