Here be a list of tools and useful things for programming.
Sublime is cross platform and has a free trial for life. It supports loads of languages, has a built in terminal, etc.
Tower is cross platform and extremely powerful while still being accessible for Git novices
GitHub Desktop is GitHub's own cross platform GitHub client.