posts by : Dave Sanders

A new Team Member! – Now send us another!

First, we want to give our hearty Avenue 80 welcome to Tida Rask, a new employee here at Avenue 80.  Dave and Tida go way back to a little company called AnnuityNet.  We went our separate ways over the years, then were reunited last year when Tida came to work for us as a contractor.  John and I can’t be more thrilled that she’s now a full time part of our team! Second, we need another contractor!  We’ve just posted a new position on our Jobs page for a Web Application Contractor.  This would be an hourly contractor position, but ...[more]


Avenue 80 is hiring: Contract Rails developer


Avenue 80 is looking for another contract Rails developer.  Find out more about how we work and the position here.

Tiny Tip: Change Schema on all SQL tables


This tip saved my life today.  I have a database at a hosting provider that needed to have the schema changed on all of the tables I imported into it.  I googled and found this line: Simple and clean! Credit: Ruslan Trifonov


Tiny Tip: 32bit ODBC Drivers on a 64bit Windows


Blogging this one because I tripped across it today and I really want to log it for posterity. So here goes. We have a client who is setting up a new server architecture and we are moving an existing system to it. The old architecture is 32bit through and through, and our software is compiled for 32bit. The new architecture is 64bit, but will be running the exact same version of our software there. We have to talk to a third party database that has its own ODBC drivers, both in 32bit and 64bit. Being a 64bit system, we installed ...[more]

Daily Ritual – Practical Task Management


Last week, I talked about Asana, the tool we use for daily task management here at Avenue80. This week I wanted to talk about how I “Get Things Done.” I’ve read David Allen’s books about GtD but I don’t consider myself a “GtD’er”. I just know that I’m so dang busy between work, house, wife and three kids, that I cannot possibly keep it all in my head. So, years ago I forced myself to get really good at writing down everything.  Every task I was given, every random thought about “I need to go look this up”, sometimes even ...[more]

Tools We Use: Asana


Asana – Cloud based task management Price: Free, though they have paid plans for higher usage and feature levels We’re starting a new feature on our Ave80 blog called “Tools We Use”, which will talk about tools that we use nearly every day in our company. Hopefully this will help others out there trying to manage their “virtual” companies day to day. Because we are a “virtual” company with no shared office space (in fact, all of us are several hundred miles apart) we face unique challenges with managing ourselves and our information. One challenge is managing our To ...[more]

On Agile and Elephants


I’ve been giving this speech a lot lately, so I decided to try to codify it a bit better in this blog entry. Not that I would ever just point a client to a blog post of course… One point I try to get across to new and prospective clients is that “software is not a building.” I think by using the term “architecture” in our practice we are doing a disservice to lay people trying to understand what we do. When a typical person thinks “architecture” they think blueprints and t-squares, exact measurements and set in stone plans built ...[more]

Avenue:80 is now hiring


Avenue:80 is now cautiously dipping its toe into hiring one or two sub-contractors to help us out with work we have available.  We are looking for one, or possibly two, Junior Developer types, and a Business Development person who can help us grow.  You can find more about these jobs here. We’re a different sort of company, so we are going to bring on new talent in a different sort of way.  Being a virtual company, we’re not looking to just staff up a bunch of developers to meet the demand of billable work.  We’re looking for those who can ...[more]



My oldest son turned 13 this past weekend, which is a major milestone for him. But it’s also a pretty big milestone for both John and I: we were both finishing up a very large project for the company we worked for at the time when I got the call that my son was on his way. The company was USWeb, the project was the first e-commerce site for Dick’s Sporting Goods, a major retail chain that was making the first steps to move their bricks and mortar store online. The nice thing about milestones is that they provide a ...[more]


Quick Link: Rails or Sinatra The Best of Both Worlds


I’m going to start adding more links to our stream, as I read interesting content, and some with very little commentary. I just read this article which is a fascinating collection of quotes / interviews about the positives and negatives of Rails vs. Sinatra, another Ruby based framework.  To be honest, I had only heard passing information about Sinatra, but the article has piqued my interest and I’ve added it onto my “must go check out” pile. But I think the quotes from DHH in the article speak volumes about Rails.  Here was my comment on the article: It strikes ...[more]

Recommitting to BDD


John and I were having a good conversation yesterday about my overall thoughts of BDD, TDD, unit testing, and so on.  Overall, I still think they are a “good thing” though there are some days when I seem to spending a lot more time on fixing weird timing issues in Cucumber tests than actually moving forward on functionality.  This is the most annoying thing about BDD to me: the browser interface is not perfect, especially when you have asynchronous AJAX heavy pages. Part of this is being alleviated by me finding the better headless web driver capybara-webkit. It’s not perfect, but it seems ...[more]


Punishment Followup


I wanted to post a brief follow-up to my “Don’t Punish Your Customer” blog from before Christmas. It’s been 27 days since I reported the hacking of my Xbox Live account and it’s still not resolved. They did contact me but all that accomplished was give me two new tips to add: Don’t give false hope - If you are going to contact your customer and tell them everything’s fine, then be damn sure to keep your commitment.  A representative from Microsoft called me, early last week and, thinking that all was finally fixed, I was elated to hear the guy ...[more]

Sublime Text 2 really is sublime


There have been a number of threads on the LinkedIn Ruby On Rails boards lately about “Which IDE is the best for Rails?” These threads go back months, as everyone and their sister chimes in with their current toolset. Its a credit to the group for the lack of IDE wars in the message threads because for many programmers, their toolset and work style is almost a religion. In the past year I’ve gone from TextMate to VIM for my Rails (and other) editing needs. As someone who bounces between operating systems a dozen times a day (OSX and Windows ...[more]

Don’t punish your customer


My Story After a long night of working hard on a client project, I got up late this morning and decided I wanted to unwind a bit with some gratuitous XBox violence.  I was shocked to see, once again, that I was missing a ton of gamer points.  (The Microsoft currency, used to buy games and content.)  After searching through the XBox to see if my kids had bought anything, I realized that something was wrong. This isn’t the first time this has happened.  Back in May of this year, I woke to find $99 worth of gamer points purchased on ...[more]


Rake db:migrate and Factory Girl weirdness


Today in my rails project, I needed to blow away my dev database and recreate it from scratch. Usually this isn’t a problem but all of the sudden I was getting this weird error message: …service_codes being one of my tables. What struck me funny was that this was absolutely true – of course the table was missing – I just blew it away! It took running a “rake db:migrate –trace” to find the exact offending line. Buried in the stack trace was a line that pointed to one of my Factory Girl test factories, that looks like so: For ...[more]


Tiny Tip: Remove all gems from a Windows Ruby install


Windows + Ruby is such a love / hate relationship. I have a Windows (and Linux) laptop, and while I program most of my Ruby code on a Mac, I really need to have a mobile solution. I’ve been working at it for several months now, and still haven’t found a perfect solution. (My quest will probably be the subject of many later blog posts.) But something I routinely have to do on multiple platforms is wipe all of the rubygems I have installed and then rebundle them in. Doing a “gem list” and a “gem uni” were all fine ...[more]

Tiny Tip: Spork not reloading classes


I have no clue what caused this today, but when I went to run Guard, which monitors files in my Ruby on Rails project, Spork was behaving badly.  I would go into a model, put in a “debugger” line and then save the file.  Guard picked up the file fine, but Spork was not reloading the class or hitting the break point. I tried all sorts of things, including restarting Spork a dozen times, tried running it without Guard and then again with Guard, and nothing was working.  The kicker is that the last time I ran all of this, it ...[more]


Respect the Duck!


Just a quick tip: I’m really in love with a duck.  A CyberDuck.  Its a very nice FTP (and other protocol) client for the Mac that saved my life today.  Ok, that’s a bit hyperbolic, but it did really help John and I out in finishing up the website. We have all of our templates and such that drive this WordPress site set as “read only”, as far as the web site is concerned, for security purposes.  But with the ‘Duck we were able to select a file from the FTP, edit it via TextMate or VIM and then every time ...[more]


Everything old is new again


This year was a real turning point for me as a developer.  It was the year that I can say I really moved away from the Microsoft World, and more toward the Mac / Ruby on Rails / Open Source Software world.  That’s not to say that I still don’t code in .NET, I still do that almost daily.  And I have my main monitor set to switch back and forth between my Mac Mini and my trusty PC, all day long.  But after a solid year of Rails, my “developer lifestyle” is much different. One place that this shows ...[more]


Obligatory First Post


All blogs have one thing in common, no matter what they are about, who the author is, or what the background color shade is: they all have to have a first post. Many choose something like “Welcome to my blog!”  Or for those programmer blogs, “Hello, World” is popular.  If you are from Hawaii you might go with the title that’s neither coming nor going but simply, Aloha! We’re realistic.  This is the first post for a blog, for a company that has experience, but is still relatively new.  We don’t have 100,000 twitter followers, or a network of Facebook ...[more]