I often wonder what other peoples' development environments look like. I'm not alone: at the first PHP Quebec conference, one of the questions that was asked of the php.net folks was "What editor do you use?" The response was "vim" across the board, with the exception of myself (I was using Quanta at the time), and Zeev, who "doesn't write PHP".
Below is my current (but always evolving) development environment. I invite you to respond (by comment or trackback), and share what YOU use to develop PHP.
A year ago, I would've told you (abridged version): Linux, Quanta, KIOFish, Mozilla, Aqua Data Studio.
That list has changed.. and severely.
A few months back, I finally got fed up that my hardware just plain doesn't work properly on Linux, and made the switch from Linux to Windows.. sort of.
Operating System: Windows XP (see coLinux note below)
- Main Browser: Mozilla Firefox
- Main IDE/Editor: Eclipse + PHPEclipse
- Secondary Editor: vim
- SSH: PuTTY
- SCP: FileZilla
- SQL: SQLyog (but undecidedly so)
Moz Extensions (for development): Web Developer, Live HTTP Headers, EditCSS, JS Debugger
The strangest thing about my setup: coLinux. As I mentioned, I switched from Linux to Windows for hardware reasons, but I really am hooked, and I couldn't just give it up. So, I run coLinux on top of Windows. It's a fully (well.. fully for development purposes) functioning Linux boot, that uses a real swap partition, and a real ext3 partition (and also a virtualized "image" disk). It has its own network (and own subnet). It's great. It picks up its own IP address (when I'm wired -- doesn't hook into WIFI very well), and as far as apps and/or other boxes are concerned, it's an independent linux box.
I use Samba on coLinux to share my home directory with my windows box.
So, why Eclipse? I've yet to find another IDE that I like so much. I'm not 100% sure why.. I'm very picky. It has good CVS integration (with a little hacking), SVN support, inline diffing (against disk or CVS), realtime syntax checking (that's correct 99% percent of the time), good class outlines, good searching. I'm very happy about all of it, except that it's java, and requires a memory hogging, and often-blocking JVM.
Which brings me to my SQL app. I don't particularly like SQLyog... it crashes a lot.. doesn't have drop-down completion. I REALLY like Aqua Data Studio (I used it on Linux), but it's also a Java app, and requires a SECOND JVM. Which exhausts my RAM, and makes everything swap.
Pet peeve: when I perform a CVS checkout in Eclipse, the line-endings of the CVS/* files get really messed up and I either need to use the cygwin cvs client (boooo), or flip everything on the coLinux side (annoying).
As I mentioned, I use PuTTY for ssh (and it's great).. and also for tunneling (to e.g. remote SQL servers). I also use OpenVPN, when I need a VPN.
I guess that's it. I'm particularly proud of my coLinux setup (with apache and PHP, I'm completely self-contained, and 100% portable (until I need to commit) -- great for coding on the train).
So, what's under YOUR hood?
On windows platform my best picks are:
- total commander, I could not live without it + sftp plugin
- phpedit*: has always been buggy as hell, but keeps getting new features and stability little by little
- putty
- mozilla mozilla, with livehttpheaders
- TOAD* for the db (I use Oracle most)
- wscite as notepad replacement for quick edit of text files
- eclipse for the occasional java need
note: some tools are not quite free, but I got management to pay for them...
I got Mac OS X Tiger as a development and testing enviroment.
Server side, running Darwin 8.1.0, native unix platform with;
- Apache 2.x
- PHP 5.x
- MySQL 4.x
- PostgreSQL 8.x
Client side, using mainly;
- Firefox
- Camino
- Safari
- PhpMyAdmin / PhpPgAdmin
- Lots of native unix tools from terminal (awk, sed, perl, tr, etc...)
Devel side, using;
- Zend Studio
- Subversion
I'm extremely happy with this constrution. I can develop anywhere at any time. I got always my code backed up to my external subversion -server. I Like it this way.
I've coded PHP since '97 and with many different setups. OS X is simply the most versatile, stable and powerful enough to feed my hunger ;-)
I agree with Sean (What's under YOUR hood?), it's very useful to discuss the tools we use for development.
When I started PHP development 4-5 years ago, a simple texteditor and an FTP client was enough to achieve my goals. During the years I've quit my
Well, I just woke up and its too early for me to think up my own post title, so I stole the running theme.
As started by Sean and continued by Norbert, I'd like to detail my development environment(s).
Up till Last Month I was using WinXP solely as my mai
My set-up is pretty much the same as most other Windows based developers (Apache, PHP, MySQL, phpMyAdmin etc) accept I use the free version of HTML-Kit ( www.chami.com ) as my editor. (Runs under WINE too for the *nix users out there)
When I has visiting Planet PHP, I read Sean, Norbert and Davey, has talk about, the tools we use for development. Now, I'd like to tell what my tools.
Main operating system: Windows 2003 Server
Secondary operating systems (guests within VMware):
- Ubuntu
- Red Hat
- FreeBSD
- Windows XP
All of the operating systems have:
- Apache 2.x
- MySQL 4.x or MySQL 5.x
- PHP 4.x or PHP 5.x
Client side:
- Main Browser: Mozilla (Opera, Firefox and IE beta 2 for testing)
- Main IDE/Editor: DZSoft PHP Editor
- Secondary Editors: vim and NotePad 2
- PhpMyAdmin
- SVN: TortoiseSVN
- SSH: PuTTY
- FTP: WS_FTP LE
Dev side:
- Subversion
I run Ubuntu on both my desktop and my laptop and I write code in Bluefish, upload using GFTP and test with firefox, IE 5.5, IE 6 and Opera. Further testing gets done on other systems when I get a chance to use them or when it becomes necessary. I have a WinXP install for gaming that I also can use for testing with IE 7.
When working with MySQL I use PHPMyAdmin and, occasionally, the official MySQL tools (Administrator and Query Browser).
I run LAMP on my desktop for testing.