« swipe left for tags/categories
swipe right to go back »
After a two-fer of deeply annoying arrogance demonstrated by two different VCs on the first business day of 2011 that I’m still pondering (a mix of conflict avoidance behavior and passive aggressive behavior) I’m really looking forward to CES.
Several years ago, my partners and I started going to CES together. Jason and Ryan had being going for a while. I’m not a trade show guy although I diligently went to Comdex for several years in the 1990′s as part of Softbank (which owned Comdex at the time.) Generally, I’m completely overwhelmed by the people and the stuff and the idea of spending a few days in Las Vegas playing trade show monkey makes me tired just thinking about it.
But there’s something deliciously seductive to me about CES. When combined with an attitude change (rather than fighting the crowds, I just roll with it and pretend like I’m in the ocean, swimming around, not really noticing all the dirt and animals), I’m really enamored with wandering around, looking at, and playing with all the new stuff on display. Rather than target specific stuff, I just spend two days looking at everything.
It helps that we have two really fun dinners with a bunch of friends (it’s my year to organize – actually, that means Kelly has done all the work – thanks Kelly). An early morning run, followed by eight hours of walking around playing with technology, followed by three hours hanging out with good friends and colleagues at a great Las Vegas restaurant. Ok – that’s a good day.
In the past we’ve discovered new investments (such as Cloud Engines) and seen lots of companies we are investors in make good progress (e.g. this year I expect both Sifteo and Orbotix to get a lot of airplay based on what they are announcing.)
I’m heading out a day early for a BigDoor board meeting. It seems appropriate that we’d kick of our 2011 gamification of the universe with a meeting in Las Vegas. So make that three great dinners with friends.
I nominate “platform” for overused tech word of 2010. Yeah, I whined about this a few months ago in my post Your Platform Is Not In My Space.
I hear the word “platform” in over 50% of the short pitches I get. A friend of mine who is working on a new startup that isn’t even funded yet (and he’s grinding on the financing) described his goal of “creating a platform for a-phrase-that-only-73-early-adopters-will-userstand.) Entrepreneurs everywhere describe the first release of their MVP (“minimum viable product” – for those of you that haven’t intersected with the Lean Startup movement) app as a “platform”. The first three pages of a google search on “platform” are 33% tech, 33% politics, and 34% other. At least Google image search is more accurate, for example:
Ahem – give me a fucking break. Yup – I get it – it’s great to be a platform. I give you Facebook and Twitter as examples. But real platforms are few and far between. And creating “a platform” is not necessarily the right first move for your brand new consumer facing application. Why don’t you start by being super useful to a bunch of consumers first.
I know I’ve been overusing the word “platform” lately – it’s like a weird brain infection that is hard to diagnose and then eliminate. I’ve found it – now it’s time to remove it from my vocabulary.
As a user, how often have you thought “I wish this web service was faster.” As a CEO, how often have you said “just make it faster.” Or, more simply, “why is this damn thing so slow?”
This is a not a new question. I’ve been thinking about this since I first started writing code (APL) when I was 12 (ahem – 33 years ago) on a computer in the basement of a Frito-Lay data center in Dallas.
This morning, as part of my daily information routine, I came across a brilliant article by Carlos Bueno, an engineer at Facebook, titled “The Full Stack, Part 1.” In it, he starts by defining a “full-stack programmer“:
“A “full-stack programmer” is a generalist, someone who can create a non-trivial application by themselves. People who develop broad skills also tend to develop a good mental model of how different layers of a system behave. This turns out to be especially valuable for performance & optimization work.”
He then dissects a simple SQL query (DELETE FROM some_table WHERE id = 1234;) and gives several quick reasons why performance could vary widely when this query is executed.
It reminded me of a client situation from my first company, Feld Technologies. We were working on a logistics project with a management consulting firm for one of the largest retail companies in the world. The folks from the management consulting firm did all the design and analysis; we wrote the code to work with the massive databases that supported this. This was in the early 1990′s and we were working with Oracle on the PC (not a pretty thing, but required by this project for some reason.) The database was coming from a mainframe and by PC-standards was enormous (although it would probably be considered tiny today.)
At this point Feld Technologies was about ten people and, while I still wrote some code, I wasn’t doing anything on this particular project other than helping at the management consulting level (e.g. I’d dress up in a suit and go with the management consultants to the client and participate in meetings.) One of our software engineers wrote all the code. He did a nice job of synthesizing the requirements, wrestling Oracle for the PC to the ground (on a Novell network), and getting all the PL/SQL stuff working.
We had one big problem. It took 24 hours to run a single analysis. Now, there was no real time requirement for this project – we might have gotten away with it if it took eight hours as we could just run them over night. But it didn’t work for the management consultants or the client to hear “ok – we just pressed go – call us at this time tomorrow and we’ll tell you what happened.” This was especially painful once we gave the system to the end client whose internal analyst would run the system, wait 24 hours, tell us the analysis didn’t look right, and bitch loudly to his boss who was a senior VP at the retailer and paid our bills.
I recall having a very stressful month. After a week of this (where we probably got two analyses done because of the time it took to iterate on the changes requested by the client for the app) I decided to spend some time with our engineer who was working on it. I didn’t know anything about Oracle as I’d never done anything with it as a developer, but I understood relational databases extremely well from my previous work with Btrieve and Dataflex. And, looking back, I met the definition of a full-stack programmer all the way down to the hardware level (at the time I was the guy in our company that fixed the file servers when they crashed with our friendly neighborhood parity error or Netware device driver fail to load errors.)
Over the course of a few days, we managed to cut the run time down to under ten minutes. My partner Dave Jilk, also a full-stack programmer (and a much better one than me), helped immensely as he completely grokked relational database theory. When all was said and done, a faster hard drive, more memory, a few indexes that were missing, restructuring of several of the SELECT statements buried deep in the application, and a minor restructure of the database was all that was required to boost the performance by 100x.
When I reflect on all of this, I realize how important it is to have a few full-stack programmers on the team. Sometimes it’s the CTO, sometimes it the VP of Engineering, sometimes it’s just someone in the guts of the engineering organization. When I think of the companies I’ve worked with recently that are dealing with massive scale and have to be obsessed with performance, such as Zynga, Gist, Cloud Engines, and SendGrid I can identify the person early in the life of the company that played the key role. And, when I think of companies that did magic stuff like Postini and FeedBurner at massive scale, I know exactly who that full system programmer was.
If you are a CEO of a startup, do you know who the full-stack programmer on your team is?
Rather than simply observe new things, I like to use them. I’ve been keeping an eye on the daily deal phenomenon and have had an opportunity to explore it in more detail mentoring Deal Co-op, a TechStars Seattle team. Deal Co-op is in the program via Alabama and has been running a profitable online deal company for the last three years. During one of our weekly mentoring meetings, they told me they could turn anyone with good business contacts and an online audience into their own Groupon. They asked me if I knew anyone that fit the bill, and I told them I did… me!
Deal Co-op thinks that daily deal marketing is best served at local levels, with more targeted distribution. I’m interested to see if they are right. My first deal features $50 in credit from Giantnerd.com for $25. Giantnerd is a Boulder based company that specializes in “Social Shopping” for outdoor apparel and gear. You can shop online at Giantnerd.com, so anyone reading this blog can taking advantage of the offer.
I’ll have more offers coming up soon, so sign up for the email alert list, and keep an eye out for more Amazing Deals.
In my never ending quest to use all the things I find interesting, I’ve started an email newsletter called Feld On Work-Life Balance. While I periodically post on Work-Life Balance, Amy and I are working on a book called The Startup Marriage. There is also a chapter on Work-Life Balance in the book David Cohen and I just wrote called Do More Faster. This is a topic that’s long been important and interesting to me, especially as I travel around explaining to my completely unbalanced friends how they are actually balanced and they just don’t realize it yet.
In the mean time, I’ll do some longer pieces on my Feld On Work-Life Balance email newsletter. It’ll also help me better understand yet another vector of media (in this case microsubscriptions) that I think is going to be increasing interesting and important in the future.
BTW – if you missed the Tahoe Tech Talk, we are about 66.7% of the way done and it has been unbelievable. The talks have been from Chris Sacca, Ben Kaufman, Dave Morin, Travis Kalanick, Kevin Rose, Dave McClure, and Alexia Tsotsis. Gary Vaynerchuk who organized it is up on stage doing his piece now talking about his goal of trying to humanize a conference. He’s also trying to say “Fuck” more times than McClure did. Great crowd – powerful stuff – well worth the 36 hours.