Would you want your car being worked on while driving it?
I thought not! Neither your customers. You want to keep development away from production. Development is where you can break things without any consequences. Is where creativity flows. Where things start receiving a shape. It’s the “lab” where your product is born.
Development is an environment where the infrastructure should resemble the one in production. Otherwise, after you’ve build everything, looking great and working awesome you might realise that it doesn’t work in the real world. It’s just like building a car that should climb mountains, in a parking lot.
This applies for the operating system being used, hardware capabilities and everything regarding infrastructure and software support. If your product runs on linux, you should develop it in a linux environment.
XAMPP is not your best friend
XAMPP is a really easy way to get a bundle of Apache, MySQL, PHP and Perl running on your machine. But XAMPP is usually not what you will have on your production servers. Especially if you work with XAMPP on OS X or Windows. There are a lot of things that work just fine on XAMPP for Windows and will render your service useless in a Linux environment starting with filenames and ending with extensions and libraries that won’t work or work differently between Windows and UNIX environments.
If you’re building a desktop software for Windows, you’ll not get the product right if you’re developing it under Ubuntu using Wine or some squeaky simulator. Even Vagrant on Windows for developing Linux web apps is not the best thing in the Development environment.
What’s the worst that could happen?
When you’re going for different environments, problems might vary from subtle bugs that can cost you days for tracking them down, to simple things such as language features that actually don’t work in production.
A collaborative workspace.
The Development environment is the place where all the magic is born. It has to easily support several developers, and it’s very important to resemble the production environment, about which we’ll chat in another article.
So get your Dexter’s laboratory running as smooth as possible!