If you're using Windows to develop your CGI site, check out Apache2Triad which has Apache, PHP/Perl/Python/etc., along with MySQL and PostgreSQL available in a single, easy to install and configure package. (support forums)
FileZilla is a fast and reliable FTP client and server with lots of useful features and an intuitive interface.
PHP is a cross-platform, server-side HTML scripting language. It works well with MySQL and Apache, allowing a truly free ASP type of web presence. Check out these PHP/MySQL tutorials.
Apache also produces Jakarta Tomcat, which allows the creation of Java servlets.
AJAX is a relatively new technology, allowing web applications to behave more like desktop applications. For the JavaScript side, I've been using the JavaScript Templates Engine from TrimPath. It allows the formatting to be separated from the code.