Mike Perham

On Ruby, software and the Internet

Entries Tagged as 'Software'

Changelog vs Commitlog

February 18th, 2010 · 4 Comments

One of the things I really like about some software projects is when they provide an actual changelog or release notes. RabbitMQ released 1.7.2 the other day and I asked the developers if they could link to a changelog. They pointed me to this page. Unfortunately this is not exactly what I [...]

[Read more →]

Tags: Software

Varnish on 32-bit systems

January 18th, 2010 · No Comments

We run three small EC2 instances for content caching purposes at OneSpot. These systems are 32-bit machines with 1.7GB of RAM. Originally we figured even on a small system Varnish could flood a 100Mb line so we wouldn’t need a more expensive, large EC2 instance. This blog post explains why this turned [...]

[Read more →]

Tags: Software

Event-Driven Applications

December 1st, 2009 · 1 Comment

Getting concurrency in Ruby is tough: Ruby 1.8 threads are green so they don’t execute concurrently. Ruby 1.9 threads are native but they don’t execute concurrently due to the GIL (global interpreter lock) necessary to ensure thread-safety with native extensions. Only JRuby provides a stable, concurrent Ruby VM today. On top of [...]

[Read more →]

Tags: Ruby · Software

Document-oriented Database Shootout Part 2: Performance

October 16th, 2009 · 6 Comments

After talking about document-oriented databases in general in Part 1, for Part 2 I’ve written some code comparing MongDB 1.1.1, CouchDBX 0.9.1 and Tokyo Tyrant 1.4.32 in an apples to apples test.
 
The shootout code is on Github. I welcome patches and improvements as long as they don’t bias the tests in favor of any [...]

[Read more →]

Tags: Software

Looking for Machine Learning Specialist

October 12th, 2009 · No Comments

We’re looking for a Ph.D-level machine learning specialist who will maintain and improve our content scoring algorithms and codebase at OneSpot. Our current system is based on technologies like Hadoop, Cascading and EC2. The position is full-time in Austin, TX. Please contact me if you or someone you know is looking for [...]

[Read more →]

Tags: Software

Comparing Document-oriented Databases

September 1st, 2009 · 7 Comments

MongoDB is a relatively new “schema-free, document-oriented database.” The closest competitor to MongoDB is probably CouchDB or Tokyo Cabinet’s Table database but all three differ in significant ways:

CouchDB guarantees the ACID properties when saving documents through an MVCC mechanism like postgresql. Tokyo Cabinet provides ACID support via locking, like mysql.  Mongo updates documents in [...]

[Read more →]

Tags: Software

Slabs, Pages, Chunks and Memcached

June 22nd, 2009 · 1 Comment

Many people don’t know this but the latest memcached release (1.2.8 right now) can be about 15% more efficient in its memory usage than older releases. If you have a 600MB memcached server, upgrading will magically “gain” you 100MB of RAM. Why is this?
When you ask memcached to store a value, it looks [...]

[Read more →]

Tags: Software

A Guide to Varnish VCL

May 19th, 2009 · 1 Comment

I’ve been working with Varnish 2.0 for the last two weeks, going from complete n00b to someone who knows enough to feel I can improve the terrible lack of documentation for Varnish and VCL. There’s not a lot out there and what’s there is hard to find and sometimes erroneous. I’m hoping this [...]

[Read more →]

Tags: Software

memcache-client 1.6.2 released

February 4th, 2009 · No Comments

I released the first official update to memcache-client since 1.5.0 tonight. In the last year, my fork added a number of stability features, became the de facto “best” version and is now the official version. My goal for the next year is to get the latest version integrated into Rails.
Highlights since 1.5.0

Socket failover [...]

[Read more →]

Tags: Ruby · Software

How I Achieved my Dream with the iPhone

January 15th, 2009 · 4 Comments

This article spurred me in a completely unexpected technical direction over the winter break: Massive Christmas iPod Touch Sales Boost App Store Downloads. Two facts struck me:

An application which makes farting sounds was selling 40,000 units/day.
I’ve had a secret dream for a year…

My dream? To make a $5 keychain sold at the checkout [...]

[Read more →]

Tags: Gadgets · Personal · Software