Programmer’s Toolbox

There are many tools that might be specific to the project or language(s) you are working with, but there are a few which are generally useful regardless of the environment.

PuTTY/Pageant

Easily the best SSH client if you need to work with Windows (UNIX systems should already have the tools you need installed); when you install putty, it should also give you the executables for puttygen which you use to generate your encryption keys, and pageant, which is a key agent.

OpenVPN

It takes a little research to learn how to configure it properly, but using a VPN can be extremely useful and solve a ton of problems that would otherwise require complex SSH tunneling (which can be a real pain), and OpenVPN is my favorite, its reliable, safe (with the right encryption settings), free, and open source.

Sublime Text 3

An excellent text editor – for developing fully native applications or GUI’s you might want a full IDE – for everything else you’ll be hard-pressed to find anything better than Sublime; it’s been my favorite for a long time now.

Firefox Add-Ons

Yeah yeah yeah, I know you know about firefox, but (IMO) its the best browser, partly due to the add-ons ecosystem; while I have a ton of add-ons installed, there are only a couple I really couldn’t live without: NoScript (I’m OCD, I don’t like sites I visit running a bunch of js I don’t know about), and most importantly Firebug. Firebug was a web developer’s dream come true, it has everything you need to make client-side web development a whole lot easier.

WIP/coming soon:

  • SSH + config

  • Docker

  • Packer

  • Ansible

  • Vagrant

  • VirtualBox