Testing #fail

by Tom Harrison Jr on May 11, 2013

Testing code is good, and test driven development (TDD) is better. But people who write bad code and create bad designs will also write bad tests, and a bad test suite may be worse than none at all. I am working hard to turn an incredible concept, proven, and validated and delivered to the world [...]

Finding Signal from Noise (repeat)

by Tom Harrison Jr on April 21, 2013

I am not sure whether I have written these words before. That I do not know illustrates my point. The following is another in a series of rants about the product I am currently working on. Rails has some amazing built-in logging. Each action is logged, and even has built-in times, even in production (unless [...]

Cruft

April 18, 2013

We have spent the last several days getting rid of cruft. We have deleted 146,000 files in the last three days. And we’re still cranking. We will lose around 20 databases. Not tables, databases. In the real database, we’ll lose probably 40 tables. Several of these are huge tables containing data that is never used [...]

Read more →

Boston Bombing: Finding Patterns in what seems like Noise

April 15, 2013

After 3pm today, someone or some people appear to have planted several bombs along the stretch of finish line of the Boston Marathon. People were killed and severely injured. It was Patriot’s Day. It was tax day. Who knows what grievance the perpetrator(s) had … certainly not against the victims, one of whom was an [...]

Read more →

Don’t Put Wrong Data In Your Relational Database

March 11, 2013

Last week we had an error in which some data — one column of an important table having 1500 rows was lost. So we went to our backup. The backup was stored as a snapshot on AWS (not a dump file). It took more than 5 hours to restore, and that’s not OK. So I [...]

Read more →

24 Feet of Snow Predicted for Boston Tomorrow

February 8, 2013

Boston will get 24 feet of snow tomorrow?  That’s not right, and you know it. So we’re having an odd performance issue with our “memcached” layer — a memory cache (I’ll bet you guessed) subsequent to a major new platform release.  We’re seeing times between 300 and 500ms where we normally saw times of around [...]

Read more →

Facts That are not True

February 4, 2013
Thumbnail image for Facts That are not True

I was pretty convinced that I could reduce our server load by a third with almost no effort. While I am still convinced this is likely, the method I was heading for was rudely disrupted by facts. Damned facts. At one time, it was true that 90% of our server load, the fundamental requests that [...]

Read more →

Jabberwocky: Abstract to Concrete

December 22, 2012
Thumbnail image for Jabberwocky: Abstract to Concrete

My daughter’s middle school assignment last night was to translate Lewis Carroll’s Jabberwocky into simple prose. You know this poem, right? It’s part of Through the Looking-Glass and What Alice Found There. If you don’t, read the short poem here and forget everything else — it’s pure brilliance and wonder. Here’s the first stanza: `Twas [...]

Read more →

Root Cause: Not Just A Story that Fits

December 19, 2012
Thumbnail image for Root Cause: Not Just A Story that Fits

When something isn’t working, I find it difficult to leave it alone until I figure out the root cause of the problem. Today, I went to our site to make sure a bug I fixed was resolved.  And when I did, I got the Rails Screen of Death — the default “server error” page that [...]

Read more →

What Agile Isn’t

December 5, 2012
Thumbnail image for What Agile Isn’t

Agile isn’t prescriptive.  It isn’t driven by rules.  It is most definitely not a methodology.  It is not a process. And it’s not a cult!  Forget the word “manifesto.” If you ask me, the single biggest mistake the creators of Agile made was just in an aspect of its definition.  The first thing you’ll learn about [...]

Read more →