« swipe left for tags/categories
swipe right to go back »
My post on How to Fix Obamacare generated plenty of feedback – some public and some via email. One of the emails reinforced the challenge of “traditional software development” vs. the new generation of “Agile software development.” I started experiencing, and understanding, agile in 2004 when I made an investment in Rally Software. At the time it was an idea in Ryan Martens brain; today it is a public company valued around $600 million, employing around 400 people, and pacing the world of agile software development.
The email I received described the challenge of a large organization when confronted with the kind of legacy systems – and traditional software development processes – that Obamacare is saddled with. The solution – an agile one – just reinforces the power of “throw it away and start over” as an approach in these situations. Enjoy the story and contemplate whether it applies to your organization.
I just read your post on Fixing the Obamacare site.
It reminds me of my current project at my day job. The backend infrastructure that handles all the Internet connectivity and services for a world-wide distributed technology that was built by a team of 150 engineers overseas. The infrastructure is extremely unreliable and since there’s no good auditability of the services, no one can say for sure, but estimates vary from a 5% to 25% failure rate of all jobs through the system. For three years management has been trying to fix the problem, and the fix is always “just around the corner”. It’s broken at every level, from the week-long deployment processes, the 50% failure rate for deploys, and the inability to scale the service.
I’ve been arguing for years to rebuild it from scratch using modern processes (agile), modern architecture (decoupled web services), and modern technology (rails), and everyone has said “it’s impossible and it’ll cost too much.”
I finally convinced my manager to give me and one other engineer two months to work on a rearchitecture effort in secret, even though our group has nothing to do with the actual web services.
Starting from basic use cases, we architected a new, decoupled system from scratch, and chose one component to implement from scratch. It corresponds roughly to 1/6 of the existing system.
In two months we were able to build a new service that:
- scales to 3x the load with 1/4 the servers
- operates at seven 9s reliability
- deploys in 30 seconds
- implemented with 2 engineers compared to an estimated 25 for the old system
Suddenly the impossible is not just possible, it’s the best path forward. We have management buy-in, and they want to do the same for the rest of the services.
But no amount of talking would have convinced them after three years of being entrenched in the same old ways of doing things. We just had to go build it to prove our point.
Orbotix just released a new version of the Sphero firmware. This is a fundamental part of our thesis around “software wrapped in plastic” – we love investing in physical products that have a huge, and ever improving, software layer. The first version of the Sphero hardware just got a brain transplant and the guys at Orbotix do a brilliant job of showing what the difference is.
Even if you aren’t into Sphero, this is a video worthwhile watching to understand what we mean as investors when we talk about software wrapped in plastic (like our investments in Fitbit, Sifteo, and Modular Robotics.)
When I look at my little friend Sphero, I feel a connection to him that is special. It’s like my Fitbit – it feels like an extension of me. I have a physical connection with the Fitbit (it’s an organ that tracks and displays data I produce). I have an emotional connection with Sphero (it’s a friend I love to have around and play with.) The cross-over between human and machine is tangible with each of these products, and we are only at the very beginning of the arc with them.
I love this stuff. If you are working on a product that is software wrapped in plastic, tell me how to get my hands on it.
Irony alert: A lot of this post will be incomprehensible. That’s part of the point.
I get asked to tweet out stuff multiple times a day. These requests generally fit in one of three categories:
- 1. Something a company I’m an investor in wants me to tweet.
- 2. Something a smart, respected person wants me to tweet.
- 3. Something a random person, usually an entrepreneur, who is well intentioned but unknown to me wants me to tweet.
Unless I know something about #3 or are intrigued by the email, I almost never do anything with #3 (other than send a polite email reply that I’m not going to do anything because I don’t know the person.) With #1 and #2, I usually try to do something. When it’s in the form of “here’s a link to a tweet to RT” that’s super easy (and most desirable).
There must have been a social media online course somewhere that told people “email all people you know with big twitter followings and ask them to tweet something out for you. Send them examples for them to tweet, including a link to your product, site, or whatever you are promoting.”
Ok – that’s cool. I’m game to play as long as I think the content is interesting. But the social media online course (or consultant) forgot to explain that starting a tweet with an @ does a very significant thing. Specifically, it scopes the audience to be the logical AND clause of the two sets of twitter followers. Yeah, I know – that’s not English, but that’s part of my point.
Yesterday, someone asked me to tweet out something that said “@ericries has a blah blah blah about http://linktomything.com that’s a powerful explanation”. Now, Eric has a lot of followers. And I do also. But by doing the tweet this way, the only people who would have seen this are the people who follow Eric AND follow me. Not OR. Not +. AND.
Here’s the fun part of the story. When I sent a short email to the very smart person who was asking me to tweet this out that he shouldn’t start a tweet like this since it would be the AND clause of my followers and Eric’s followers, he jokingly responded with “that’s great – that should cover the whole world.” He interpreted my comment not as a “logical AND” but a grammatical AND. And there’s a big difference between the two.
As web apps go completely mainstream, I see this more and more. Minor syntatical things that make sense to nerds like me (e.g. putting an @reply at the beginning of a tweet cause the result set to be the AND clause of followers for you and followers for the @reply) make no sense to normal humans, or marketing people, or academics, or – well – most everyone other than computer scientists, engineers, or logicians.
The punch line, other than don’t use @ at the beginning of a broadcast tweet if you want to get to the widest audience, is that as software people, we have to keep working as hard as we can to make this stuff just work for everyone else. The machines are coming – let’s make sure we do the best possible job with their interface which we still can influence it.
Marc Andreessen recently wrote a long article in the WSJ which he asserted that “Software Is Eating The World.” I enjoyed reading it, but I don’t think it goes far enough.
I believe the machines have already taken over and resistance is futile. Regardless of your view of the idea of the singularity, we are now in a new phase of what has been referred to in different ways, but most commonly as the “information revolution.” I’ve never liked that phrase, but I presume it’s widely used because of the parallels to the shift from an agriculture-based society to the industrial-based society commonly called the “industrial revolution.”
At the Defrag Conference I gave a keynote on this topic. For those of you who were there, please feel free to weigh in on whether the keynote was great, sucked, if you agreed, disagreed, were confused, mystified, offended, amused, or anything else that humans are capable of having as stimuli-response reactions.
I believe the phase we are currently in began in the early 1990′s with the invention of the World Wide Web and subsequent emergence of the commercial Internet. Those of us who were involved in creating and funding technology companies in the mid-to-late 1990′s had incredibly high hopes for where computers, the Web, and the Internet would lead. By 2002, we were wallowing around in the rubble of the dotcom bust, salvaging what we could while putting energy into new ideas and businesses that emerged with a vengence around 2005 and the idea of Web 2.0.
What we didn’t realize (or at least I didn’t realize) was that virtually all of the ideas from the late 1990′s about what would happen to traditional industries that the Internet would distrupt would actually happen, just a decade later. If you read Marc’s article carefully, you see the seeds of the current destruction of many traditional businesses in the pre-dotcom bubble efforts. It just took a while, and one more cycle for the traditional companies to relax and say “hah – once again we survived ‘technology’”, for them to be decimated.
Now, look forward twenty years. I believe that the notion of a biologically-enhanced computer, or a computer-enhanced human, will be commonplace. Today, it’s still an uncomfortable idea that lives mostly in university and government research labs and science fiction books and movies. But just let your brain take the leap that your iPhone is essentially making you a computer-enhanced human. Or even just a web browser and a Google search on your iPad. Sure – it’s not directly connected into your gray matter, but that’s just an issue of some work on the science side.
Extrapolating from how it’s working today and overlaying it with the innovation curve that we are on is mindblowing, if you let it be.
I expect this will be my intellectual obsession in 2012. I’m giving my Resistance is Futile talk at Fidelity in January to a bunch of execs. At some point I’ll record it and put it up on the web (assuming SOPA / PIPA doesn’t pass) but I’m happy to consider giving it to any group that is interested if it’s convenient for me – just email me.
For some reason I’ve been doing a lot of interviews lately. In many of them I get asked similar questions, including the inevitable “what makes a great entrepreneur?” When I’m on a VC panel, I’m always amused by the answers from my co-panelists as they are usually the same set of “VC cliches” which makes it even more fun when I blurt out my answer.
“A complete and total obsession with the product”
The great companies that I’ve been an investor in share a common trait – the founder/CEO is obsessed with the product. Not interested, not aware of, not familiar with, but obsessed. Every discussion trends back toward the product. All of the conversations about customer are really about how the customer uses the product and the value the product brings the customer. The majority of the early teams are focused entirely on the product, including the non-engineering people. Product, product, product.
And these CEO’s love to show their product to anyone that will listen. They don’t explain the company to people with powerpoint slides. They don’t send out long executive summaries with mocked up screen shots. They don’t try to engage you in a phone conversation about the great market they are going after. They start with the product. And stay with the product.
When I step back and think about what motivates me early in a relationship with an entrepreneur, it’s the product. I only invest in domains that I know well, so I don’t need fancy market studies (which are always wrong), financial models (which are always wrong), or customer needs analyses (which are always wrong). I want to play with the product, touch the product, understand the product – and understand where the founder thinks the product is going.
I don’t create products anymore (I invest in companies that create them), but I’m a great alpha tester. I’ve always been good at this for some reason – bugs just find me. While my UX design skills are merely adequate, I’ve got a great feel for how to simplify things and make them cleaner. Plus I’m happy to just grind and grind and grind on the product, offering both detailed and high level feedback indefinitely.
How a founder/CEO reacts to this speaks volumes to me. I probably first noticed this when interacting with Dick Costolo at FeedBurner when I first met him. I am FeedBurner publisher #699 and used it for my blog back when it was “pre-Alpha”. I had an issue – sent email@example.com a note – and instantly got a reply from Dick. I had no idea who Dick was, but he helped me and I quickly realized he was the CEO. Over the next six months we interacted regularly about the product and when he was ready to start fundraising, I quickly made him an offer and we became the lead investor in the round. My obsession with the product didn’t stop there (as Eric Lunt and many of the other FeedBurner gang can tell you – I still occasionally email SteveO bugs that I find.)
I can give a bunch of other examples like FeedBurner, but I wrap up by saying that I’m just as obsessed with product as the founders. And – as I realize what results in success in my world, I get even more obsessed. Plus, I really like to play with software.