Verbose Logging

software development with some really amazing hair

T + G I F R

The Philosophy of Naming Variables

· Posted in Software
Russ Cox made a good comment on the golang-dev mailing list about the philosophy of naming variables. He links to his original short post on the subject as well. A TL;DR version is that i makes more sense than index when you're looking at a small loop. For local variables that are only relevant for a short number of lines, having long verbose names actually makes them less efficient. As the context or reach of a variable increases, having longer…

Custom Scout Plugins For Lonely Sysadmins

· Posted in Software
When you run servers, there are certain things you need to know. When you're the only one running the servers, there are a few more things you need to know. One is the loneliest number Since I'm basically the only person running the servers keeping Yardstick Measure alive, I need to know as much as I can about them. More than that, I need to know things you might not really care about if you have a team of dedicated people managing the servers. …

NewRelic with Rails 2.3.x and Sinatra Metal Controllers

· Posted in Software
Our application at Yardstick is Rails 2.3.x, and we use some Sinatra based metal controllers. We also use NewRelic to monitor things. Get Low Something got updated somewhere, maybe the NewRelic gem, maybe something else. Our Apdex hit 0.3 or something stupid and stayed there. After a long debugging period going back and forth with the NewRelic folks, we figured it out. Problem, meet Solution The way a metal controller in Rails 2.3 works is that …

Do You Even Load Balance?

· Posted in Software
Recently at Yardstick, I completely rebuilt the server infrastructure for our high stakes online testing platform, Yardstick Measure. We need our data in Canada, so we have some physical servers running VMWare ESXi. I set up five front-end servers to run the actual exams on, and other servers that do other things: handle the database, the admin interface, search, redis etc. The front-end servers are load balanced behind a pair of firewalls confi…

Ruby Batteries Included

· Posted in Programming
At the beginning of April 2013, MWRC ensued in Salt Lake City, Utah. I rolled the dice and submitted a talk, not thinking that they'd pick it. Announcements started rolling out on the twitter, and boom, there it was. Speaking at MWRC 2013: @darkhelmetlive on "Ruby Batteries Included".…— MtnWest RubyConf (@mwrc) January 24, 2013 Well, the conference came and went, and I had a great time. Lots of great speakers, …

How Do I RDoc? Documenting Ruby

· Posted in Programming
Yesterday I did a talk at Mountain West Ruby Conf 2013 all about the Ruby Standard Library. The basic premise is you should be looking to the standard library first, before running to and GitHub for new code. If all you need is a hammer, you don't need to buy the hardware store. Where are the docs? The problem is that sometimes, the standard library doesn't have the documentation you might want. Maybe it's not that great of an examp…