When I first started programming, I’d work more or less a vannila environment, with minimal modifications to any tool I used. Over the years, I’ve learn to appreciate the customizability of softwares and get the most out of them. This post outlines my configurations of tools I frequently use when I’m developing stuff.
The Basic setup
I primarily work on a Linux Machine, specifically, Ubuntu. It’s not one of the lightest or the fastest distro out there but I find it one of the most well designed ones. I have a fascination with dark gray color and almost all of my IDEs, Editors, Terminals share the same
#2D2D2D background, with Source Code Pro 12pt font.
I was a long-time user of bash, it being the default shell on most of the distros. But once I discovered Zsh, there was no going back. It’s basically a subset of bash, with a lot of cool features like awesome tab-completion, spell correction, right hand prompts and the fantastic community. I use a framework called Prezto which provides many additional configurable modules.
This is my Zsh configuration. I like to keep it simple with a minimal amount of swag. A single line prompt which shows the logged in user, the current directory, the current git branch (clean/dirty status through the color) and more repo status details on the right hand side.
I also use a lot of aliases and functions which save me quite a lot of keystrokes. I’d recommend you check them out if you frequently work on git projects.
Sublime Text. No other GUI editor I’ve ever used has come close to Sublime Text in terms of plugins, features, or simplicity. No toolbars, no distractions, and lot of plugins. I use a modified version of the Monokai Color Scheme to match the Spacegray theme on the editor.
I occasionally use vim to perform quick edits, though my configuration is a handful of changes to the default janus-vim configuration.
Tmux is a Terminal Multiplexer, which is a tool which provides pretty cool ways to organize terminals. My Tmux configuration allows me to navigate between windows and panes with ease without bothering with the prefix key. I prefer a monochrome color scheme consistent with the rest of the system rather than the default yellow-green one.
These are one of my most commonly used tools and are used almost always, regardless of the project. I didn’t bother listing specialized tools like different IDEs, frameworks, etc. which have a relatively narrow scope and are used only in a few limited types of development.