Software

I find cross-platform and (mostly) open-source software meets nearly all of my needs these days.  On a new computer I install at least:

For cross-platform embedded development I use gcc + NetBeans.  On Windows I really like Em::Blocks.