IDEs for web developers

I’ve been looking for a good IDE for my web development for the better part of the last decade. My needs aren’t great, but no matter where I look I can’t find anything that can fulfill them all. Here is what I want in my IDE:

Must Haves:

1.) Must support coding in PHP, Javascript, HTML, CSS, and other common web technologies

2.) Must support the automatic uploading of files on save.

3.) Cannot add ANY extra files to the site itself. I can’t stand it when editors find it necessary to add there own meta files/folders to your site.

4.) Must run on Windows and Mac

Would be nice features:

1.) It would be nice if it would run on Linux too

2.) It would be nice if it would also serve as an IDE for C/C++ and/or Java

Seems simple, right? Unfortunately it really isn’t that easy. I’ve tried the following programs and none of them can do everything:

Adobe Dreamweaver CS3: This comes closest and is what I use most on a daily basis. It is the only one that supports the automatic uploading of files on save, and does a good job at general coding in PHP, HTML, CSS, and a few others. Unfortunately it doesn’t meet any of the “would be nice features.” In addition, although the price is affordable, I’m becoming a bigger fan of open-source software and am getting a little tired of the extremely high upgrade price every couple of years.

Bluefish Editor: This popular Linux editor does well at editing common web code, but that’s about it., and it isn’t available for Windows which kills it’s usefulness to me.

Netbeans 6.5: Netbeans 6.5 comes close. It supports PHP, Javascript, CSS, HTML, and the other file formats I use. It runs on Mac, Windows, and Linux, and it’s native function is a Java IDE so JAVA is supported as is C/C++ through an easy plug-in. Where it fails is in FTP support. It supports FTP on it’s new PHP plug-in however files must be uploaded manually rather than being uploaded automatically on save as in Dreamweaver. Rumors indicate that this feature may be forthcoming, but for now the lack of auto-uploading prevents me from making much use of it.

Aptana/Eclipse: Although 2 separate products Aptana is build on the Eclipse engine so I will review them together. Like all the editors I’ve tried they do well at actually editing the code. Unlike the others however they insist on adding a .project file to the site directory. Although this is a small inconvenience as a code purist I find it unacceptable that any program will add files I did not create myself. In addition the auto-upload feature is said to exist, but I’ve found it to be buggy at best and as of this writing I have been unable to get it to work on any of the 4 separate times I’ve tried it.

UltraEdit32: This program also comes close, it does a good job editing code in nearly any language used today. It does contain an FTP feature, however as it is only available in Windows I stopped using it before I bot to see if it would automatically upload files on save like Dreamweaver.

In a nutshell, until Netbeans refines the FTP features in it’s latest IDE I think I’m going to be stuck with Dreamweaver. It is the only IDE that works on multiple operating systems which will handle the bulk of the code I write and has the ability to upload my files when I save them. I have started using Netbeans as well, but this will be reserved for Java and C/C++ projects and will stay away from my websites for now.

Linux Development on Vista

I’ve been using Linux off-and-on for about the last 10 years. At times it has even been my only operating system on whatever computer I was using. The thing was I wouldn’t dual-boot and none of the virtual machines I tried could really keep up with what I was doing.

As for the dual boot, it just never seemed worth it to waste so much of my hard-drive space so I could waste more time switching between operating systems whenever I needed something on the other one. As for the virtual machines, although they would load a guest OS, they tended to make one system or the other almost unusable in that switching between the two was often less than a pleasant experience. Heck, I don’t know how many times I’ve killed either the guest or the host when the VM did something it shouldn’t.

Finally, as of last week, I think I’ve found a VM I really like. Actually, it’s a VM I’ve used for some time, but until it’s latest update I found it less than an enjoyable experience. This new [updated] VM is VirtualBox by Sun. In the 2.0 release last week it is more stable, and seems to be much more efficient in how it handles the resources on the host system. Finally I can run Ubuntu for various tasks on my primary machine without having to worry about how long I have until the next crash!