I was recently introduced to Git and really started to enjoy it's lightweight branching model. So now I use git as both a source control system and as a way to sync files on the server. In particular, to release a change from my laptop, I first commit the change into my local git repository, run "git push" to push the changes to the server, and then run "git pull" on the server in the public_html directory to get the updated files. No more sync'ing with FTP, which had trouble removing files.
I wanted an easier way to add examples and eventually expand from Java to other languages. There are many great open-source content management systems (CMS) around - Joomla, Mambo, Elgg, e107, WordPress, etc. Any one of them seemed like it would handle the needs for exampledepot. However, I chose Drupal for it's heavier focus on customization. I was planning on implementing other non-content based websites in the future and felt that Drupal would be a better base from which to start these projects.