1. Because it's fun.
Just look at custom cars and motorbikes. People like to make things their own and people like to learn.
2. To suit your needs.
Try running Gnome on a atom. It's like having your nails pulled out then some twerp trying to put them back in. I'm sure it runs great on better hardware but it's a lot of bucks for little or no bang.
As I'd finished playing with TWM I had a go at a light desktop. Building a good desktop is like building a good football team. It's not just the players, it's the correct mix of players that make a good team, and the back room staff (dependency's) to get to your chosen goal.
This gives a very light but fully functional and easy to use desktop.
#Base
Private + Shared = RAM used Program
224.0 KiB + 53.0 KiB = 277.0 KiB mouseclock
196.0 KiB + 47.0 KiB = 243.0 KiB fittstool
332.0 KiB + 91.0 KiB = 423.0 KiB evilwm
348.0 KiB + 217.5 KiB = 565.5 KiB simpleswitcher
#Bling
332.0 KiB + 61.0 KiB = 393.0 KiB wp.sh #wallpaper switcher
484.0 KiB + 99.5 KiB = 583.5 KiB wmbubble #date, clock, CPU indicator, memory (but not working correctly for me).
664.0 KiB + 57.0 KiB = 721.0 KiB xcompmgr #Bling mostly for opacity in simpleswitcher
324.0 KiB + 53.0 KiB = 377.0 KiB workspace.sh #workspace indicator
you can add xbindkeys but it's very Heavy for what it does and not really needed.
2.0 MiB + 61.5 KiB = 2.1 MiB xbindkeys
Runner has a run history and can list all executables. Great when you can't recall application names. It doesn't seem to be running as a daemon so as soon as it launches something it closes.
1.1 MiB + 403.5 KiB = 1.5 MiB runner
fittstool takes care of launching applications, volume control etc
simpleswitcher gives a run dialog and workspace indicator (but just for occupied workspaces)
mouseclock provides a super lights time indicator
I love wmbubble the bang for buck is huge
944.0 KiB + 398.5 KiB = 1.3 MiB wicd-monitor
2.3 MiB + 410.0 KiB = 2.7 MiB wicd
3.1 MiB + 497.5 KiB = 3.6 MiB bash (4)
7.8 MiB + 258.0 KiB = 8.1 MiB Xorg
-----------------------------------------------------
31.6 MiB
=================================
For me it's not just about how low you can go, it's about how much crap I can remove and still enjoy using the damn thing.
cwm is just a evilwm clone
