Website Design and Development is a lot more than just creating a website design and putting it out there. Not only do you have to scope the client requirement and manage expectations, you have to ensure that what you develop is Cross Browser compatible and meets W3C accessibility standards. In addition, there are issues like Quality Control, Maintenance and Bug Fixes to consider.
Then, if you are selling your services, you also need to be able to ‘showcase’ your work.
Website Design and Development Environments
I received the following enquiry the other day and rather than just answer the question directly, I thought I would share my thoughts in general
I’d like to purchase a pack of themes and then learn them thoroughly and perhaps set them up as ‘display sites’ to be ready for potential clients.
I know I have options to set up sites: download MAMP (I’m on Mac); use through WP site; or download WP via Fantastico on my web hosting. However what would you suggest would be the best way to have multiple test sites at the same time? Is there a limit to how many sites I can be using etc? Oh – and if I use MAMP do I need domain names or does that work with general WP urls also?
There are a few questions here:
- Maintaining a Test Environment
- Developing and Maintaining Show Case Sites
Website Design and Development using MAMP, WAMP or LAMP
MAMP is Mac, Apache, MySQL and PHP. My geek son would shudder (he’s not a Mac person) and say LAMP, LAMP, LAMP (Linus, Apache, MySQL and PHP). The alternative for the microsoft people amongst us in WAMP (Windows, Apache MySQL and PHP). Essentially, all solutions provide a platform to run a Web Server in your office.
By running your own webserver, you can create your own test environment and not rely on having an Internet Connection. Having a webserver that is connected locally can certainly cut down on development time.
As a WordPress Website developer, my preference however, would be to create a LAMP server rather than the other options. Simply, most of the webservers we will deploy a WordPress website to, will be a Linux variation and using a development environment that is closest to our production environment is a smart move. For other Website Design and Development businesses, using WAMP or an IIS server will make more sense.
To access your local server, you have a few options:
- Setup a DNS Server on the xAMP host and ‘trick’ your local network into thinking domain names are available through your local server
- Simply use the Local IP address of the server
- Use a Dynamic DNS service to access the server
All of these will work for local access but unless you have a REALLY reliable Internet Connection and an excellent security infrastructure – I would not be using this to allow clients to view the local server. Once you start allowing traffic into your local network, you are increasing the risk of compromise. This doesn’t take into consideration the perception a poor or unreliable connection will provide your clients – most won’t understand why it’s not great. I did have developer I was working use his local server to show me what he had achieved and whilst I understood what he was doing, the connection was poor and I found the experience frustrating.
Of course, installing and maintaining a xAMP server requires a degree of technical knowledge and shouldn’t be undertaken lightly. It is important to ensure that all versions of software are patched and thoroughly tested.
Using a xAMP server (I recommend LAMP) locally for your Website Design and Development environment is an excellent idea, although it requires a degree of committment. Using a xAMP server hosted on your local network to showcase your work, is not.
That leaves hosting your ‘showcase’ sites on the Internet somewhere. As we focus primarily on WordPress Website Design and Development I would do this using my own webserver and install WordPress to display the showcase websites. WordPress.com provide an excellent service, but as a Website Design and Development business, I want full control of my sites. The question is whether to use multiple individual instances of WordPress or take advantage of the WordPress Network (previously Multi User) functionality to host multiple sites (and domains) on one installation. My preference would be to use the WordPress network functionality installed to use Subdomains for the individual sites. To take this to the next level, I would use a Domain Mapping plugin to allow different domain names for each site.
By using a WordPress network, the website developer only has to maintain one WordPress instance and one set of plugins – far more effective and efficient. With a WordPress network, the limit to the number of sites you can host really depends on your server – the amount of memory and diskspace available as well as the amount of other resources your provider will let you snag at a time.
The added benefit of using a network, is that you can run a pre-production site as well as a production site .
Other Website Design and Development Showcase Options
If a WordPress network is a bit beyond you at this point in time, you could use individual WordPress installations however not only does this increase the amount of support and maintenance, the amount of storage space is increased.
WordPress Design and Development Environments
The answer to the question asked is, if you are serious about your Website Design and Development business, you should have Development, Pre Production and Production environments. The Development and Pre-Production environments should mimic, as closely as possible, the Production environment (or the majority of the production environments) your clients are likely to use.