I’m a pragmatic programmer, I choose the best tool for the job. Following are the list of tools I use on my HP Pavilion Notebook
OS – Debian – The Universal Operating System
Initially, I got started with Ubuntu 9.04 and stayed with it until 11.04. But over a period of time, I got tired of having to keep with the latest version of the OS. I wanted a stable distro that had less releases than Ubuntu. That’s when I found out Debian 6. Since then I am sticking with it. I use Debian 8 with Gnome 3 desktop as my primary OS. If you want to try GNU/Linux, I still recommend you to get started with Ubuntu. Switch to Debian once you’re familiar with the Linux way of doing things
If you’re a developer, please install this app now. It helps to dim the monitor’s brightness as per the time of the day.
I prefer stand alone, open sourced, desktop only password managers instead of commercial options. This setup works fine for me since I don’t use password managers on mobile. I use KeePassX for keeping all my password safe in a single place. KeePassX also has options to generate passwords, customize the generation pattern like character, length.
Text Editor/ IDEs
I’m a polygot. I use different IDEs for the languages.
It is fast, light weight and has the best ecosystem of the plugin, literally for anything.
I’m an emacs beginner and have been learning it for quite some time. It is the editor I constantly use when I had to edit the files on the server. You can find my
I love code refactoring. And Obviously use IDE that empowers me to do so.
I use WebStorm for Node, Android Studio for Android and PyCharm for anything related to Python/Django.
If you’re using 2 or more IDEs from Jetbrains, you can use Toolbox App to quickly switch between projects in different IDEs
Though I tried the default and different other apps for taking a screenshot. Shutter is currently, the only one matching my need for annotating screenshot. I’m still looking for an efficient tool in this category.
- Awesome Screenshot
This is the new addition to my tool box just for the browser screenshot. I must say you that annotating screenshot was never this easy. It’s available in Chrome too.
It is the best GUI cross platform management tool for MongoDB. It has builds for both 32 and 64 bit .debs
When building an android app, you would required a db client for accessing your emulator’s SQLite database. When I was looking for a Linux client, I found sqlitebrowser. It was fast, light weight and was stable.
For the clutter free code comparison. This will be a life saver, if you’re working on team where more than one developer collaborates on your branch. It has both 2 and 3 way comparisons for files and folders.
- Firefox developer version
By default, break points will pause execution in all minified JS files. This will be painful, if you’re using too many 3rd party minified libs. With Firefox, you can just black box them and focus only on your JS files.
I’ve saved countless hours when developing for incoming web hooks and REST APIs using this webapp. The mechanism to forward web hook digest to your localhost is simply amazing.
Apparix – Bookmarking in terminal
The name says it all. This is a neat little tool for bookmarking folders. After bookmarking you can go directly to the project by
to project1than painstakingly typing
cd ../../github-repos/npms/project1. You can find the resource file that holds all the location details at
It is the best REST client and must have for a web developer to test APIs. You can save and share your API calls among teams.
This is a handy add on for web developers that helps to identify the software on the web. Once you install this, you will see a bar of applications used in the browser’s address bar.