This post comes to you via this Skribit suggestion.
Currently I am employed by one company, work pro bono for another, and work with-the-intention-of-getting-paid-in-the-future for a third (along with being a full time student). These three ventures are all very similar in that they are all web development work. For developing in these languages, I have an awesome set of comfortable tools that I use.
Hardware
I am actually quite proud of my setup: AMD 9950 2.6GHz Quad-core, 4 Gigs RAM, a 22″ Acer, and 23″ Dell Monitors. I just recently added a second monitor, and I now can’t develop without it. Whether I’m coding on one and testing in another, or watching a movie on one and working on another, it’s just damn useful to have 3600×1080 resolution to play with. Also have an awesome keyboard that I cannot live without. I got spoiled on my old Macbook Pro with a backlit keyboard, and I do so much work at night (as evidenced by the fact that it is now 2:30am) that it’s kind of neccessary. I also got so used to typing on a low-profile keyboard, that I now struggle to type at all on a regular one.
Linux FTW
I am a little unconventional when it comes to web use in that I use Linux Mint for my main desktop machine. However, this is awesome because it comes with a LAMP stack already built in. Just plop whatever code I want to run into /var/www and i’m good to go! Currently (15 Feb 2010) I am running Apache 2.2.12, PHP 5.2.10-2ubuntu6.4, and MySQL 5.1.37.
Editing
Let me make something very clear. I dislike command-line text editors. That said, I know my way around vim, and nano enough to use them on my remote servers, but on my desktop, I prefer to use graphical editors for ease of use, as I have multiple files open at once (yes, i know about screen)
When I was on Mac, I used and loved TextMates. However, since that does not exist on linux I was forced to move on *tear*. I have briefly tried Bluefish but found it tailoring more to plain HTML writing than a general purpose text editor.
I have settled on Geany. It has projects, an incredibly powerful version of ctags, a very strong search/replace function, a nifty color chooser, and an svn plugin. I also have some custom key-maps set, like ctrl+s to save all open tabs instead of only the current tab in use. Also, for php (and some other languages) it has function recognition (similar to eclipse) and completion. I rely on this function all the time when I can’t remember exactly the name of a function.
Testing
On my local machine, I use Google Chrome Beta as my main browser. I used to used the Dev builds, but as of the 5.0.322.2-r38810 build, the DOM Inspector is non-functional. This affords me the awesome power of the Chrome DOM Inspector (though not as good as Firebug in Firefox) which allows me to debug javascript, as well as test layouts/styles immediately without changing the actual css file.
As a responsible web developer, it is necessary that I test in several different browsers to make sure that my stuff works. I have Sun’s VirtualBox with Windows 7 installed on it and a slue of browsers installed to test as thoroughly as I can.
Thoughts? Complaints? Suggestions? What is your favorite setup?