Just to add my 2c
One more vote for Crunchbang here, however you may want to also consider Debian stable.
+installs most things you need
+firmware included for most devices
-since it is based on testing, it may have some more rough edges than Debian
Debian pros /cons
Whilst it doesn't come with all the bells and whistles by default (open box configuration, conky etc) it may use less resources, as you can start from an absolute minimal install (no GUI, basic packages only) and only install the tools you need. 1 gb of ram is still good enough for the vast majority of programming, it may even be better as you would need to make good use of resources for programs to run quickly.
One other reason for suggesting Debian is that most packages are somewhat more tested in the stable version .
You may run into problems that some packages are positively ancient (xfce is still on 4.8 for stable).
You are essentially trading ease of set up (Crunchbang) and newer packages vs potentially less resource requirement (Debian) and more tested packages, hopefully reducing bugs to the minimum. One final note is that I found upgrading Debian from stable to stable releases is actually quite pain free, if you only use the main repository and don't add other things
(at least for a server install, no GUI) .
I guess it comes down to choosing the distribution that agrees with your needs vs how it looks like - you can make pretty much every distro look the same.
Things to consider would be
+ease of obtaining the packages you need
+how easy is it to update the OS and how likely are things to break
(e.g. I wouldn't run anything other than stable since I rely on my computer working no matter what).
The systems biggest weakness is the gpu and ram, so you need to install a lightweight DE/window manager
Xfce, lxde, open box are all good contenders. I would stay away from gnome or KDE as they would eat up more ram.