Scotch Box: A Vagrant LAMP Stack That Just Works


Just a dead-simple local Vagrant LAMP stack for developers

I discovered Scotch Box recently, brought to us by the folks at It actually looks like Nicholas Cerminara has done most of the work, or as least done all of the committing to GitHub. Here’s the Scotch Box announcement at the blog.

After using Scotch Box for a day, I’ve decided this is how I will do all future development work. It’s so easy, and you really don’t need to know much about Vagrant or VirtualBox to get up and running with Scotch Box.

Scotch Box has a repository setup at GitHub that explains how to make use of Scotch Box. Basically, just clone the repository, and then run vagrant up inside that repo.

Scotch Box is currently running Ubuntu 12.04.5. Here’s a bit from the Scotch Box readme:

Scotch Box is a preconfigured Vagrant Box with a full array of LAMP Stack features to get you up and running with Vagrant in no time.

A lot of PHP websites and applications don’t require much server configuration or overhead at first. This box should have all your needs for doing basic development so you don’t have to worry about configuring Vagrant and you can simply focus on your code.

No provisioning tools or setup is really even required with Scotch Box. Since everything is packaged into the box, running “vagrant” is super fast, you’ll never have to worry about your environment breaking with updates, and you won’t need Internet to code.

Do you use Vagrant?

View Results

Loading ... Loading ...

Bringing Scotch Box Up

Once you’ve run vagrant up, you’ll be able to access your site at, you should see something similar to the image below.

Useful Stuff in Scotch Box

  • PHP 5.5
  • No Internet connection required
  • PHP errors turned on
  • Laravel and WordPress ready (and others)
  • Operating System agnostic
  • Goodbye XAMPP / WAMP
  • New Vagrant version? Update worry free. ScotchBox is very reliable with a lesser chance of breaking with various updates
  • Bootstrap and jQuery are saved in the server’s home folder in case you don’t have Internet (usually plains, trains or cars)
  • Chef and Puppet ready in case you want to add extra features on Vagrant Up
  • Super easy database access and control
    MIT License

Server Components Included

  • Apache
  • Vim
  • MySQL
  • PHP 5.5
  • Git
  • Screen
  • Composer
  • cURL
  • GD and Imagick
  • Mcrypt
  • Memcache and Memcached

Front End Stuff Included

  • NPM
  • Grunt
  • Bower
  • Yeoman
  • Gulp

You can SSH to your server as well, by running vagrant ssh. Upon logging in via SSH you’ll see something similar to the image below.

Scotch Box is in its infancy still. It’s initial commit to GitHub was on October 6, 2014 and has about 10 commits in total.

Updating Scotch Box is easy too. To check for an updated version with Vagrant, do vagrant box outdated. That will tell you if there’s a newer version available. If there is a newer version available, you can update to it by running vagrant box update.

Head to the official Scotch Box website for more information on setting up databases, setting a hostname, and for more details on updating the box. Some basic Vagrant commands are also included to help you with basic Vagrant usage (ie: pausing, resuming, or destroying a server).

If you’re a LAMP developer like I am, and are tired of developing on your client’s dev servers, Scotch Box could be a good solution for you to develop locally. It’s sometimes much easier to develop locally then having to rely on a slow dev server provided by your client. :)

All the images in this post are included in the gallery below.

About these ads

Freelancing Tips, Other Than “Networking”?


Thinking about doing some freelance work for a while, especially now that is nearing launch. There was just a thread on HN today about freelancing, or getting a “real” job. Getting recurring freelance work can be difficult, but a “real” job provides a steady paycheck. And there’s this post on Reddit about breaking into the freelance scene, which means being able to make a real living from freelancing.

Most suggestions I hear are about starting freelancing are pretty obvious. Network, network, network. The most up-voted answer on that Reddit thread starts off “Network, network, network. It’s less about what you know, and often more about who you know.” I think most people over the age of 13 know that, so it’s really not all that helpful.

Constant networking isn’t always possible, at least not without major sacrifices (read: family being pissed). If I’m out networking all the time with friends who have a lot of contacts, friends-of-friends, possible clients, and just committing to making lots of new contacts in general, that leaves little time for family (not to mention other things).

Is it just a natural progression? Like, the longer you’re in it, the more stuff comes your way? If so, that would make the claim of network, network, network a bit misleading, it implies urgency (at least to me). Seems like network carefully and methodically is more apt. Yet, that still brings up issues, like the possibility of not going hard enough and not living up to your potential.

Do you do freelance work?

View Results

Loading ... Loading ...

So maybe there are no real tips that can be given on freelancing, other than to just stick with it.

I closed my LinkedIn account a long time ago, should I open it back up? I do literally no “online” networking, all geographical and in-person. I do have an oDesk account, which is 100% complete and I’ve completed 5 tests. My oDesk account is entirely filled out.

I’ve been thinking of doing this for a while, but @daniAWESOME made me think a lot more about it.

Any successful freelancers have any advice? Leave a comment, or @tlongren on Twitter.



I recently made a post over at the blog just letting folks know what’s going on and why there’s bee such a delay in getting our product out there for everyone to use. Rather than go into that again, just checkout the post at the Blog.

The gist of it is, a friend and I have been working on a new startup idea., a SaaS business that helps liquor stores to better manage their kegs, with many additional features in the pipeline. Ace (the friend), who runs I-35 Spirits in Ankeny, IA, was the inspiration for the idea. Managing kegs, such as pick up dates, return dates, weather or not the customer needs a tapper, etc, can be a real time drain. Most liquor store owners have much, much better things they could be doing.

We’re almost ready to release a private beta and invite some local liquor stores to try it out. “Local” being in Iowa, Central Iowa preferably, but that doesn’t mean we won’t leave Iowa if we can get a few potential customers lined up out of state.

There’s a very, very basic homepage up now at Please forgive me for it’s ugliness, most of my time so far has been spent developing the software that’s installed on customer sites. I’ll be hitting pretty hard in the next few weeks, including incorporating Pure CSS to make development a bit faster, and also provide full responsiveness.

Below is an overview of how to integrate into your website:

  1. Signup for a account
  2. Choose a plan (beta will be totally free, no cc details required)
  3. Choose the keg beers that your store has available from our admin interface, or send us a spreadsheet and we’ll import it just for you
  4. Install our script on the page on your site you’d like to have the keg request form
  5. That’s it! Direct customers to the page you installed the script on and they’ll be able to submit keg requests. Requests are sent to your email and also stored in a database so you can have all sorts of neat reports and graphs.

Since this is a service that can immediately have a positive impact on businesses, and a friends business specifically, I’m focusing on getting launched before putting more work into Kegplan is a relatively simple piece of software so getting it production ready shouldn’t take more than a couple of weeks.

All the scripts that are installed on customer websites are hosted on Heroku for maximum availability. The customer control panel is hosted on a pretty beefy VPS from DigitalOcean. We may eventually switch to using DigitalOcean’s private networking with a few different VPS’s in different locations, but I have a feeling Heroku will be plenty sufficient.

Shortly before the private beta release, we’ll be integrating into Once it’s been thoroughly tested on, we’ll drop the private beta. If you’re interested in more info or if you want to get in the private beta right away, email me (Tyler) at tyler at kegplan dot io.

If you’ve got any suggestions on the best, most secure way to deliver scripts for installation on third-party websites, I’d love to hear your thoughts. Right now I’m including a script on customer sites that’s delivered via HTTPS, and basically prints the form on the customer website. And I’m using jQuery and AJAX to send the results back to an SSL enabled domain for storage in a database and to send the necessary notification emails.

Anyway, keep checking for updates. There’ll be a official blog eventually, but right now all announcements will be made here at, and maybe at the I-35 Spirits website.

Would love to hear any comments. If you know anyone who runs a liquor store or other establishment that sells kegs, please tell them about us! We’re new at this too, so we’ll be helping beta users through every step of the on-boarding process.

Please bear with us as we finish out the customer-facing website. I don’t have a lot of time to work on it, other than nights and some weekends, but there’s not a whole lot to do.

Using .aspx With IIS 5.0

I’m posting this here mostly so I can refer back to it later if I ever have the need to. I recently had to setup a Windows server running IIS 5.0 at work. It will be hosting a web application that will be used to verify all orders.

Anyway, I had IIS up and running but couldn’t get it to execute pages with a .aspx extension. It would just offer up the .aspx file for download instead of executing it and displaying in the browser. Turns out this is due to the ASP.NET ISAPI extension not being registered with IIS. To register the extension with IIS, open a command prompt and issue the following commands:

  1. cd C:winntMicrosoft.NetFrameworkv2.0.50727
  2. aspnet_regiis -i

In that example, I registered the ASP.NET 2.0 framework with IIS. If you want to use a different version of .NET, replace v2.0.50727 with whatever version you want to use. The various versions installed will be listed in the C:winntMicrosoft.NetFramework folder.

After running the apsnet_regiis command, my .aspx files loaded right away. I discovered all this at the Channel9 MSDN forums.

MySQL Is Huge

Take note of this graphic. Notice there’s been 3,775,826 queries processed by that MySQL server in a little more than 5 days. Nothing too impressive right? Right.
Lots of Queries

We know MySQL can handle many more queries than that in a much shorter period of time. What amazes me is how well MySQL performs on the server it’s running on. The box hosting that MySQL server is an old HP. It’s got 1 Pentium II 400mhz processor with 128Mb of RAM. And it serves data to anywhere between 10 and 14 seperate PC’s at any given point in time. In addition to that, this MySQL server also provides data to a web interface that is used by 50 or so people. The MySQL server pumps out about 500Mb worth of data every day.

MySQL never ceases to amaze me in what it can do on less than optimal hardware.