I'll also begin writing more individual in-depth posts on specific tools that I find important.
As far as the latest iterations of the Mac operating system is concerned, I haven't noticed any major changes that alter the way it is used for web development in Mac OS X 10.9
One of the user interface changes that I'm excited about is the fact that all monitors can now be used for all features. If you are using a screen, the menu bar and the dock will switch to that screen. That means, you no longer have to hunt down the monitor that contains the "Menu Bar" so that you can select something from the menu bar.
The second software to prepare my development environment is the free virtual machine engine from Oracle, Virtual Box. This allows you to load guest operating systems so that you can deal with multiple operating systems at once.
I don't use Virtual Box myself. It's just a means to an end. My third development software uses Virtual Box, so this is installed as a pre-requisite.
Vagrant is the tool that changes everything for developers and even designers when it comes to web development.
This tool helps automate the creation and destruction of virtual machines (through the virtualization engine of your choice. Mine is Virtual Box for now).
What this means is with Vagrant, you can have a fresh clean virtual development environment whenever you feel like it. Rather than delving more into this now, I'll leave it for a follow-up post on developing with Vagrant that I'll be writing up soon.
Puppet is an automation language, rather then software. It is, however used to build my development environment.
Vagrant allows it's users to either use Puppet or another automation language called Chef. My choice after doing a lot of research was Puppet.
I've used a number of different tools through out my time as a software engineer. These are the ones I use currently based on their upgrades over time and my current needs.
I find that it's quick and lightweight for an IDE, but still provides enough in the way of debugging, code completion and handling of numerous files that it fits my needs.
When it comes to version control software, my needs have changed, based on if I'm on my own or in a team. My personal preferences are for git. In my current job, the programming team was using Subversion for the last several years, but just recently updated to using Mercurial/hg.
Source Tree is my version control client of choice when it comes to Mercurial. It's created by Atlassian, the same people that own BitBucket--the online git and mercurial repository hosting.
At first, I wasn't sure how I would like Mercurial as a version control software but honestly, I haven't noticed a major difference between using Mercurial and using git, so it's been enjoyable.
Tower is my client of choice, when it comes to using the git version control software.
Versions is my tool to use when I must deal with Subversion, however my experience with subversion has been horrible. It seems like it's always giving me issues, so I avoid Subversion at all costs.
Below I've listed all of the various tools and software I use with links to their respective product pages.