Programmers whose skills have stagnated often ask us what technologies or tools they should learn. My approach has always been that a programmer can learn a new tool if they have a solid programming foundation – but deciding which tool can be challenging. Yesterday’s programmers would envy the high-quality, free tools that commercial and open source communities deliver today. Step #1 is finding the right tool.Programming Environments
Eclipse www.eclipse.org, www.eclipse.org/downloads
Netbeans www.netbeans.org, www.netbeans.org/downloads/index.html
Cygwin www.cygwin.com
Sun Studio developers.sun.com/prodtech/cc/downloads/index.jsp
Databases
PostgreSQL www.postgresql.org, www.postgresql.org/ftp/binary/v8.1.4
MySql www.mysql.com, dev.mysql.com
Oracle www.oracle.com, www.oracle.com/technology/software/products/database/oracle10g/index.html
Java Language
Java java.sun.com, developers.sun.com/resources/downloads.html
Apache www.apache.org
JBoss Application Server www.jboss.com, labs.jboss.com/portal/jbossas/download
Tomcat Servlet Engine tomcat.apache.org/index.html
Bundles/Operating Systems
WAMP (Windows, Apache, MySql, PHP) www.wampserver.com/en
Linux Live CDs www.frozentech.com/content/livecd.php
Mandriva Linux www.mandriva.com/en/download
RedHat Fedora Linux www.redhat.com/fedora
Solaris www.sun.com/software/solaris/get.jsp
Other Tools
Vim (a VI clone) www.vim.org, www.vim.org/download.php
Emacs www.gnu.org/software/emacs
Web References
HTML www.w3schools.com/html/default.asp
CSS www.w3schools.com/css/default.asp
JavaScript www.w3schools.com/js/default.asp
PHP www.php.net