Ruby CSV write to a file – Gotcha!

Unlike the beautifully concise and familiar 1 liner of code to dump a document to a text file:, 'w') {|f| f.write(doc) }

The ruby csv library requires quite a bit more typing, and the documentation for it is easy to misunderstand.

One of my primary needs, is often data wrangling.  Changing the contents of a csv file for use in another framework, whether it’s reverse coordinates, stripping unwanted columns, or adding needed columns to the data, and I always trip up on how to dump the changed CSV after manipulating it.

As a reminder to myself, and maybe a hint to others, I’ve include the proper way to dump out your arr_of_arrs, once you’ve manipulated it as you will,, "w+",
             :write_headers => true,
             :headers => arr_of_arrs.headers) do |csv|
    arr_of_arrs.each{|row| csv << row}

The important bit is remembering to do an each loop of your arr_of_arrays object. This for instance will not produce the desired results:, "w+",
                :write_headers => true,
                :headers => arr_of_arrs.headers) do |csv|
   csv << arr_of_arrs

Bone Yard for Travel Startups

My personal math has the Travel Startup success rate at lower than 1/2 of 1%.

I’m calculating over 1000 travel startups in the last decade with less than 50 ‘successful’ startups.

The rate for Big Time success is even lower maybe 1/10 of 1%


It may be too early to tell, but I essentially agree with this post on Pando Daily from a few months ago.  Travel was one of the early candidates for a market that could be disrupted by the creation of the Internet.  There are several very profitable companies that have fundamentally monopolized the space.  In the US Market, there is Expedia (created by Microsoft in partnership with GDS’s) 1996. (created by United Airlines, Delta Air Lines, Continental Airlines & Northwest Airlines in 1999).  Two of Orbitz’s founding creators no longer exist.  was created by Sabre (a GDS) which was wholly owned by American Airlines at the time. was founded by Walker Digital (a very successful company with over $300M in revenues in 1998).  
So of the big 4 Online Travel Agencies in the US, none  represents what we typcially consider a startup, and 2 were actuall existing players in the market just shifting from offline to online.

If you look at the last decade, there a few very successful companies but very few that started in a dorm room.  Kayak was started by Paul English (an exec at Intuit) and Steve Hafner who was part of the original Orbitz team.  They started with a ton of funding and industry experience.

ITA Software was essentially a true startup.  It slogged along in the “Might Make it” status for 15 years before getting snatched up by Google.  Granted they had > $100M in revenues and > $200M in funding for many of their final years, but with a limited supplier chain and colossal failures in attempting to scale from Shopping Engine to PSS provider there was never going to be any future other than an acquisition for ITA.  Still an $800M acquisiton deal is clearly a SUCCESS. (11 years since founding) certainly meets the criteria.

As does which was acquried for $120M by Concur.

Farecompare has done very well (founded by Rick Seaney & Graeme Wallace from work they did at

There’s also Farecast (founded by Oren Etzioni) purchased by Bing.

Flightcaster (Evan Konweiser, ex-kayak staff member) was purchased by NextJump.  I’m not sure NextJump is successful, but I guess I count this as a good exit.

Portland based (a Datalex spin-out) seems to be doing quite well.

More recently there is Gogobot (too soon to tell whether it will last, but it has strong user growth)

And of course there is star-studded


Sidestep and Swoodo, both acquired by Kayak can probably also be considered true startups that succeeded by getting acquired. ($200M for Sidestep, unknown for Swoodo).  But now we’re venturing outside the US Market where there are a few other notables: (founded in 1996)

 Skyscanner (11 years in the making, started on the backs of 3 guys, 2 of whom kept their fulltime jobs for a while)

Danish born Momondo, (6 years old),

Maybe you can count Datalex (founded in 1985) but they don’t really fit the criteria of a start-up

There are many more notables like from India, but the point I’m trying to get it is this:

In just 2010-2011 Tnooz lists in excess of 300 startups in the travel space, only Gogobot and Hipmunk from that era are surviving at any significant level of success.

The era of the Travel startup may be over.  The cost of creating a startup in other areas is just too low, and trying to disrupt the travel space without serious connections and money is seeming less and less likely.  I’m not sure if developers will ever stop trying to tackle this space, but it’s certainly beginning to seem less and less likely that they will succeed.

Want to mention some other companies that you think qualify as ‘successful’ travel startups?  Send me a note or comment and I’ll update my post. 


Startup Failure Analysis

I saw this on  but the original source was 

I’m always astonished by the articles that discuss startup failures.  There are many definitions, but in the tech community.  If you’re not fully funded or have overwhelming user acquisition momentum within the 1st 12 months, you probably fall in the FAILED category.  This one doesn’t attempt to cover the whole 90% statistic, but looks at a few side by side cases.  Worth looking at.


Quit while you are behind

This is in response to a recent post by OM Malik

Basically it’s that Stick With It advice you hear so often.  I usually agree with most of his insights but this one just rubbed me the wrong way.

FACT => Most startups fail
CONJECTURE => Many go down in flames with debt, unpaid salaries, legal liabilities, broken promises, divorces, friendships ended etc

CONCLUSION => Most startups fail too late.

In my experience startup Entrepeneurs have by definition already got the stick with it gene. They wouldn’t be doing a startup of they didn’t. In fact I would say too many of them have a delusional sense that of they just keep trying to hang on, somehow it will all work out allright.

In fact the best piece of advice I can give is this: When you find yourself with a shovel, deep in a hole, STOP DIGGING.

Practically what this means is that it’s better to retreat when the writing is CLEARLY on the wall, regroup, maybe take a temp job, and come at it again a bit later when you’ve digested what went wrong how your luck worked against you.

So stick with it by all means, but don’t believe the fantasy that if you stick with something that isn’t working, all you need is persaverence.

Suits Versus Nerds

I’ve been working for a while on trying to develop a toolbox for the Suits I meet to understand the Geeks I work with.  One of the most common process problems I’ve encountered in a mangement culture is a complete and total misunderstanding of how tech works, what motivates technical people, and the value that technical teams bring.  The reverese is also completely true.

Ask any developer what the non-technical people in their organization do, and usually you’ll get an answer like:  

“There are non-technical people here?”

“The have meetings?”

or “I have no frigging clue.”

I’m designing a series of surveys (non-scientific) to suss out the nature of the most common problems and possible solutions.  If you’re a Geek, a tech person, a designer (still on the technical side of Suits versus Nerds) please help me out and take the survey.

Nerds Click Here

If you’re ALL Business, please help by taking the Survey for Suits!

Suits Click Here

Chick Geeks rule, so why are Managers afraid to hire them?

As a candidate: what should I think about a SW firm (25 people) that has zero female employees?

As a Manager I can tell you there are some things are generally different about leading female engineers or developers.
Though I’ll be careful. Stacy Johnson, one of the best engineers I’ve ever worked with typified what I call The skeptical girl model.

Whenever I came back from a Sales Engagement with a list of new features and gave a pep talk about how it’s going to be hard but that we can do it, her response was always: You’ve oversold this. We can try, but we won’t complete in time – you should go back to the customer and reset expectations. She wasn’t afraid to buck the enthusiasm, and she was right.

I’ve also had female programmers end up crying and needing a hug after being given an open ended assignment with no clear guidance for how she would be measured or what the consequences for failure were. That was my failure. Most of the young male hackers would’ve just started hacking, but this woman was right to be anxious. I hadn’t done my job. It took me off guard when she cried over what I thought was an opportunity to “own” the project, but We talked it through and she did a better job than the previous project owner.

Years ago, when I was young and single, I also once had an elderly female co-worker throw a cup of water on me when she overheard me and a mate joking in the cafeteria about a party we’d been too (he was sarcastically telling me that “chicks dig you man” while I was laughing that the girl in question was actually just chatting me up in order to get to him). I’ll never know what set the older co-worker off about our conversation. But that wouldn’t have happened with a male co-worker.

It’s a silly discussion though when all is said and done. In my opinion if you haven’t found quality women to round out your tech organisation you are probably not really looking.

UPDATE:I do realize there is a supply and demand problem.… clearly indicates some problems on the supply side. For instance, it’s weird that only 1.5% of the open source community contributors are women. To be clear, I’m not advocating preferential treatment, my only point is that hiring can tend to be a “Are they like us?” process and if you start with 5 guys, the danger is that you’ll end up with no women, and personally I think you’d be missing out on some ways of thinking that women have more access to.

Complexity and Simplicity, Difficulty, Ease

Now if he was talking about an IPhone Application, I’d agree with him.  But in this case, we’re are talking about a virtual rocket ship, or a Ferrari Steering Wheel, and make complex stuff like this is both complicated and difficult.  Our Code is designed to work, it’s not designed for developers to develop.  I try to force the team to keep the architecture as simple as possible but even still, it’s not easy, and it’s not simple.  
A newsgroup  posting from Douglas Gorney  “How not to design for ux” refers to the idea that some think a 9 minute video on how to use a steering wheel suggests that the wheel is too complex.   He quite correctly observes that this steering wheel is for RACECAR Drivers and a 9 minute video on how it’s used and how it was designed is not too much to ask for guys who drive at 200 MPH (360 KPH).  I guess I’d say the same about software that crawls thru 100s of Millions of possible combinations of fares and flights.  In order to do it correctly, in order to do it well, I guess it’s worth waiting 6 months before I let you hack around on it.Here is the original video on YouTube.