Developers, how confident are you that you could go from an empty virtual machine and an OS installation DVD, to a fully-functioning instance of your application? Before you laugh it off, think about it. When was the last time you sat down and installed your server OS? When was the last time you installed and configured Linux, Apache and MySql? Or Windows Server, IIS and SQL Server if you're deploying to Windows?
How many times have you dealt with bugs that you couldn't reproduce locally? How many of those were due to a configuration difference between your development and production environments? Here's the harsh truth: your development environment is a lab and production is the real world and you'll never be able to perfectly mirror the two.
But you can educate yourself about the differences.
Over the last week, I got a chance to build both Linux and Windows production servers from scratch. While things have certainly gotten a lot easier in the years since I last did this sort of build, I still found myself turning to Google for a myriad of things, whether it be best practices for securing a MySQL install or how to enable external connections to SQL Server Express.
These are the sorts of things we tend not to think about as developers, but we should. We tend to take for granted the infrastructure that supports our applications and the result is a rather narrow view of our application's world. Getting our hands dirty with a scratch OS install helps us appreciate the big picture, and is something I'd recommend every developer do, at least once per platform release. The end result will not only be a better understanding of the nuances of your production environment, but a better understanding of your application as a whole.
0 TrackBacks
Listed below are links to blogs that reference this entry: Get Your Hands Dirty.
TrackBack URL for this entry: http://www.nearinfinity.com/mt/mt-tb.cgi/1690



Leave a comment