Browse Category

Development

6 Choices for a localhost Web Development Environment

For web development, the bare minimum you need access to is AMP:
  1. Apache server
  2. MySQL database
  3. PHP programming language
You can install these as a collection on your computer locally using various OS-specific installations:
  1. Windows: WAMP
  2. Mac: MAMP
  3. Linux: LAMP
  4. Cross-platform: XAMPP
Or, if you prefer an auto-installerBitnami is an excellent option. (And Softaculous also looks promising.) Wikipedia also lists plenty of other Apache, MySQL, and PHP bundles if you're interested in checking out any of the other ones, but in this post, I've taken screenshots of each major offering for you to compare:

#1. WAMP

WAMP homepage and server window
WAMP Server Homepage

#2. MAMP

MAMP homepage and server window
MAMP Server Homepage

#3. LAMP

LAMP Wikipedia and install
LAMP Software Bundle on Wikipedia
As the above picture indicates, if you want a straight up LAMP installation, you'll likely be doing it all piece-by-piece - or through your Linux distribution's get or yum installers. But if you're a Linux user, you're probably already comfortable with that kind of thing. Here are instructions for installing LAMP on various Linux distributions (source: Wikipedia):

#4. XAMPP

XAMPP homepage and server window
XAMPP Server Homepage

#5. AMPPS

AMPPS homepage and server window
AMPPS Homepage

#6. Bitnami

Bitnami homepage and server window
Bitnami Homepage
I've personally used WAMP, MAMP, and XAMPP and none has really been disappointing.
  • XAMPP is slightly more complicated and has more features (but that's to be expected because it's a Linux program as well).
  • WAMP is a good and simple option for Windows - I've used it with my high school students.
  • MAMP is a clean and simple option for Mac and I've used it exclusively on Mac before.
  • MAMP PRO is also a good option if you're willing to pay a little bit because it allows multiple WordPress installations on the same localhost.
However, recently, I've been using Bitnami quite a bit on the recommendation of Morten Rand-Hendriksen, from Lynda.com, and I've quite enjoyed it. It's very easy to download and install and the Server Manager program is very clean and well designed. It's a simple one-click START or STOP for your servers and a one-click ACCESS SITE to go to your localhost install right from the Manager. Which installation do you prefer? Leave me a comment with your thoughts. This post has been modified slightly from my original post on aaronsnowberger.com

Quick Tip: Use Chrome’s Emulator Tool for Better Development

Google Chrome has a pretty nifty emulator tool that enables better website development by emulating the different devices that you would want to test your websites on. A few keys points about the emulator that makes it unique and much better for development than merely stretching your browser window to various sizes:
  1. Chrome's minimum browser width (400px) is still wider than the smallest device size (320px iPhone 3/4)
  2. Using the emulator tool also changes the user agent variable in Chrome so that it thinks and acts as if it were the actual device it is emulating
  3. The emulator shows a grid and rulers with pixel dimensions behind the device window

How to use the Chrome Emulator?

  1. Open the Element Inspector (right-click "Inspect Element")
  2. Click on the mobile device icon in the upper-left corner of the Element Inspector (see screenshot)
  3. Select the device you wish to emulate from the dropdown menu at the top (see screenshot)
  4. Tip: Refresh the page for proper user agent spoofing and viewport rendering
google-chrome-inspector-element-device-mode
1. Open the Element Inspector and click the mobile device icon
google-chrome-inspector-element-device-mode-activated
2. Select the device you wish to emulate from the dropdown menu