I use Sublime Text 3 for text editing, iTerm2 for my terminal, Postgres.app to run a local database.
I code in Ruby / Rails so not much is needed beyond that. I know people that straight up run vim in a console for text editing. I also know people that use Atom.
My other major programming tool is my ping pong paddle. Never underestimate the effect of good strenuous exercise to keep your mind sharp. I use the Stiga Titan. Best bang for the buck I’ve found.