Index ¦ Archives ¦ RSS

Deployment is Scary - Part 2

The is the second installation of a series of posts about my deployment experiences with Enteract. Part 1 is available here.

In this post, I will focus on our use of Faraday and Upstart for some simple monitoring.


We wanted a tool to monitor the web application and notify …

Predicting User Ratings on Yelp

Several weeks ago, Yelp launched a dataset challenge and released data on their users and businesses in Phoenix, AZ. The challenge shared some similarities with the Netflix Prize, and I was curious to see if the Alternating Least Squares algorithm that I used for my Netflix project was versatile enough …

Deployment is Scary - Part 1

As part of a class project, I was given the opportunity to field a Rails application at Spring Carnival, an annual event held by Carnegie Mellon University (official press release.) Here, I will describe a subset of the risk mitigation strategies that we used to avoid hacking and maximize uptime …

Numbering the Last Line of Align* in LaTex

On numerous occasions, I find myself trying to number the last line (and only the last line!) of a long series of derivations in an align* environment. I usually switch to the align environment and use \notag to turn off the number on each line except the last.

There is …

Some Custom Matchers for RSpec with Shoulda

It should have a valid factory

I use Factory Girl in my tests, and I have found it useful to check that I have valid factories for each model in my tests/specs. Here is a matcher you can use for that purpose.

Add this file to spec/support. Then …

Deploying a Thrift Server with Capistrano

At the time of writing, I couldn't find an existing Capistrano recipe for deploying thrift servers. So here is an example that works with ubuntu.

Before you use the recipe, don't forget to update the configuration options to match your server setup. At the very least, you will need to …

Monopoly Heat Map

I am working on a Monopoly manual for my professional writing class, and did a heat map showing the relative probabilities of landing on each square of the Monopoly board. It's done using canvas on HTML5.

Here is a preview:

Monopoly Heat Map

Check it out here.

Passwordless Kerberized SSH for CMU's UNIX machines

If you use SSH frequently to access, you must have tried at some point to set up passwordless login using public/private keys. That didn't work for me, and when I did ssh -vv, it always failed at

debug2: we did not …

Backbone, Faye, and Reaction

I was jealous of what MeteorJS did for NodeJS developers, and decided to steal some of their ideas for Rails. The result is the reaction gem, and a demo app can be downloaded from here.

Transparent Synchronization

Using Reaction, you write your app like a usual Backbone app. However, instead …

Hello world

This is my first blog post using Pelican.

I first tried using Wordpress, then migrated to Tumblr. Hope this works better! Old posts are still accessible at tumblr. This one is starting anew.

© James Lim. Built using Pelican. Theme by Giulio Fidente on github.