Getting PHP sessions to work on AWS Elastic Beanstalk

October 9, 2013

I recently used Amazon Elastic Beanstalk to deploy a PHP web app that used $_SESSION. Initially, things did not work. My logs filled up with errors caused by session_start(), indicating that the session data could not be written to disk. Permission denied. The messages all looked like this:

PHP Warning...

Using Go's Built-in Logger to Log to Syslog

September 14, 2013

The Go language has a built-in logging system, as well as a built-in syslog interface. It is convenient to be able to call Go's log.Print() from anywhere in your code and know that the message will make it's way somewhere useful. But Go's basic logging mechanism simply logs to STDOUT.

However, it...

The Right Tools for the Job: What I Used to Write My Dissertation

August 1, 2013

With several books under my belt, I didn't think writing a dissertation would require different writing tools. I fully expected to be able to make do with the word processor-centered workflow that I had grown accostomed to.

But when it comes to a serious writing project, a word processor just didn...

Object Storage: A love story

June 28, 2013

The HP Cloud blog is running what is likely to be my last HP Cloud video. This one focuses on HP Cloud Object Storage.

Working with object storage has been one of my favorite projects while at HP Cloud. Together with Matt Farina, I built:

  • A PHP library for working with object storage and CDN.

How the Cloud Powers Agile (video on the HP Cloud blog)

June 26, 2013

The HP Cloud blog is running the second in my series of videos about dev/test. The focus this time is on how we accelerated our agile development using the cloud.

In case you missed it, the first installment was on Image Snapshots for Dev/Test. I also wrote an article in the same series on The Holy...

Creating a Personal PaaS with Dokku on HPCloud

June 21, 2013

Would you like to build your own PaaS-like playground? It works like Heroku, runs on Ubuntu, and is entirely Open Source. What's it called? Dokku.

In this article, I explain how to install Dokku on an HP Cloud instance to build your own mini-PaaS with hardly any work. <!--break-->

Step 1: Create...

Why Containers Won't Beat VMs

June 21, 2013

Are LXC-style containers the alternative to using cloud-based virtual machines? There's been some hype suggesting that "the cloud" is moving away from virtual machines and toward containers. In a way, this is yet another misunderstanding of what the cloud is. These are not two solutions to the same...

Go: Calling pointer functions in C with CGO

June 20, 2013

The Go programming language provides the cgo tool for calling C code inside of a Go program. At compile time, Go can even compile C code into the Go executable.

One of the gotchas for using this functionality is that from within Go, you cannot execute C function pointers. I ran into this while working...

Video: Accelerating Dev/Test Using HP Cloud Snapshots

June 6, 2013

HP Cloud asked me to do a quick 2-minute video on how we use phoenix images to manage dev/test/production platform stability. There's a short blog post at HP Cloud, but here's the video.

(Craig Winters at HP did all the fancy stuff. I was just the talking head.) <!--break-->

Using Fabric to Create a LAMP server on HP Cloud

May 29, 2013

Fabric is a network-aware build tool. Think of it like make (or rake, or pake, etc.) for remote servers. With Fabric, it is just as easy to script a remote environment as it is to script a local one. In fact, with Fabric, you can do both.

Fabric can actually be used to automate installing a server...