skip navigation

Here you will find ideas and code straight from the Software Development Team at SportsEngine. Our focus is on building great software products for the world of youth and amateur sports. We are fortunate to be able to combine our love of sports with our passion for writing code.

The SportsEngine application originated in 2006 as a single Ruby on Rails 1.2 application. Today the SportsEngine Platform is composed of more than 20 applications built on Rails and Node.js, forming a service oriented architecture that is poised to scale for the future.

About Us
Home

Performance

How we upgraded our largest Rails application to Ruby 2 with lots of small changes and no downtime. It wasn't easy, but it was definitely worth it.

Universal Principals of (Software) Design

02/21/2014, 11:30am CST
By Doug Rohde

A talk by Doug Rohde. Concepts from the world of design and how they can inform decisions we make as software developers to reduce complexity and increase maintainability.

AWS C3 Servers Deliver Outstanding Performance

01/10/2014, 8:45am CST
By Luke Ludwig

Twice the throughput, 33% reduction in app response times, same cost.

We are seeing a 33% application response time improvement and the ability to serve twice as much traffic when comparing a new generation c3.2xlarge AWS server directly to the c1.xlarge on real production traffic.

Skipping ActiveRecord While Keeping ActiveRelation

09/27/2012, 12:17pm CDT
By Patrick Byrne

When working with large amounts of records, it's sometimes a good idea to avoid creating ActiveRecord objects altogether.

I think that we can all agree that Active Record is pretty great. Working with ActiveRecord objects, though, comes at a cost. It has to fetch data from the database and then work with it a bit to give you the easy-to-use object with lots of bells and whistles.

3

Fast Rails Mass Inserts

09/26/2012, 1:46pm CDT
By Jon Phenow

Trying to insert a bunch of join records in your Has And Belongs To Many relation could likely use a speed-up, see how we did it here.

Ruby on Rails is surprisingly slow to insert a few thousand records into a join table. In Ngin there are a few cases where the speed of an insert like that is of utmost importance. See how we're able to speed up such data insertions by several orders of magnitude.

Upgrading to Ruby 1.9.3: Maximizing Performance

07/17/2012, 8:30am CDT
By Luke Ludwig

See how TST Media developers keep Ngin running in top-notch shape by measuring changes against live production traffic.

See how TST Media developers keep Ngin running in top-notch shape by measuring changes against live production traffic.

6

Rails Middleware Timing with Rack Timer

03/14/2012, 8:45am CDT
By Luke Ludwig

Gain full insight into your middleware performance with Rack Timer!

Gain full insight into your middleware performance with Rack Timer!

2

Rails 3 Performance - Not Good Enough

05/11/2011, 8:53am CDT
By Luke Ludwig

A simple reproducible benchmark shows ActiveRecord 3.0.7 to be 1.43 times slower than ActiveRecord 2.3.2.

At TST Media we upgraded our NGIN application from Rails 2.3.2 to Rails 3.0.5 on April 6th. Unfortunately, we immediately saw the average response time of our application double.

29