Ask any developer what they consider to be their perfect development environment setup and you can be sure of two things. Firstly, everyone will have an opinion, and secondly that opinion will differ from the next persons, and the next. So in the hopes of possibly avoiding the second and fulfilling the first we thought we would briefly describe our own development environment setup and associated processes here at Red Monkey Goo.
Our base development environment for all web development projects and most related tasks bar design is done on PC’s (I hear a groan from the newly converted Mac users…). We use Netbeans as our IDE of choice as it offers everything we need, actually works and is a solid platform for both our PHP and Java projects. We use a Zend Web Application Server for PHP projects and usually we use GlassFish for our Java Application Server on Java projects.
We also recently migrated from SVN to GitHub (haven’t looked back) where the projects can be brought into our local development environments for actual work. Each development machine runs it’s own application server, plus we use a testing and staging server that we manage internally before we commit any changes to a production server. We use the issue tracking and code review in GitHub and manage our entire Agile Process using PivotalTracker.
As far as the actual development environment goes that is pretty much it, we keep to a lean is mean mindset and don’t try to get bogged down in the latest tools. We use what works for us and what continues to work for us. When a tool appears that we believe may be beneficial to either ourselves or our clients, we evaluate it for a month before we decide if we should add it into our work flow and processes.