Technical musings from an opinionated Platform Engineer/Leader

nReduce: Virtual team meetings


I’m participating in the awesome new ‘open source incubator’ that is nReduce. And, I’m plugging: my team’s project is Soapbox, if anyone is looking for a real-time polling service that lets you embed dynamic results with javascript, sign up, we’ll keep you posted.

Anyway, one of the issues we encountered is a direct result of being a ‘virtual’ team. This was one of the factors that is awesome about nReduce, anyone can get in, from any location. But that perk is simultaneously an extreme challenge, as it’s distinctly more difficult to interface with other teams if you can’t participate in a physical weekly meeting.

Read more ⟶

Colosimo: Chicago Boss, PostgreSQL, and bcrypt


If you are interested in Chicago Boss and PostgreSQL (then hopefully you’ll like this!), and you have not reviewed it already, go check out An Evening With Chicago Boss, I’m going to borrow a good deal from that example.

The items I want to cover that enhance the example in An Evening with Chicago Boss are:

  • PostgreSQL DB shard for content
  • Static content: CSS, images, javascript
  • More in-depth Django templates with extensions and blocks
  • Bcrypt for password storage
  • Front-end user registration

The source for Colosimo is available on github; I did not include boss.config, logs, or ebin. If you clone the repo, add a boss.config with appropriate credentials (my boss.config is below for reference) and make sure you run “./rebar compile”, or start it in dev mode.

Read more ⟶

Getting started with Zotonic


Here are step by step instructions for running Zotonic (the Erlang CMS) on CrunchBang Linux (works for most Debian distros with minimal package and version changes). This is on a vanilla CrunchBang Linux installation, where ‘developer’ packages are installed during the CrunchBang welcome script. If you didn’t install these on launch, you can execute ‘cb-welcome’ to run through CrunchBang’s initial options again and just be sure to install developer-labeled items. If you want to be more cautious about package installation, I think you’ll need ‘sudo apt-get install gcc g++ make’, but that may leave you with a few errors.

Read more ⟶

AWS: Install Nginx and PHP-FPM on Amazon Linux


First launch an Amazon Linux EC2 instance, and I’ll add the usual caveat that much of this technique works on all Red Hat derivative distributions, though the package names and versions may be unique.

I am going to do this as the root user, and first start with a system update from the default repositories (always a good practice).

Installing Packages

After security updates and standard patches are applied to the server, install Nginx, PHP-FPM, and the PHP packages that many frameworks and CMS use.

Read more ⟶

Msikivu 0.8.3: A responsive, configurable theme for Habari


Get Msikivu (zip) Get Msikivu (tar.gz)

After some prodding from GitHub user jniggemann (thanks!), I finally got around to addressing some of my Msikivu todo list. For those interested in more details on Msikivu, check out my earlier post. In short, the following enhancements are present in the 0.8.3 release:

  1. Habari 0.8.x compatibility (Sorry this took so long…)
  2. Two additional stylesheets added. There is a ‘blue’ (which is oddly Drupal-ish and doesn’t quite support IE - though to be honest I haven’t really tested Msikivu’s general IE support…) and a ‘custom’ (which is pretty devoid of non-positional styling, and ideal for creating your own custom Msikivu look and feel).
  3. Adds a 1200px wide grid to Skeleton for nicer presentation on widescreens (IMO).

There are still a couple issues with the comments interface on the iPhone, and I plan to make some cosmetic updates to the admin area as well. Note that if you want a lighter weight and less configurability-focused responsive base template, I also put together iwBase as a responsive starter theme for Habari 0.8 and greater.

Read more ⟶