July 2nd, 2013
While walking down Mission St the other day, my plans changed unexpectedly and I needed to get to Market St. I pulled out my phone and within 2 minutes a Lyft driver was pulling up and giving me a ride. It hit me that this is now possible because we’re all nodes on the network. Between 2000-2005 every computer that was out there became a node on the network, but people weren’t nodes. Even though everyone was on AIM, I could only reach you if you were sitting in front of your computer. But in the last 5 years, now that we all have internet connected devices in our pocket, it’s funny to realize that *we* are now nodes on the network.
However, right now our nodes are not that interesting. Most of us only have one port open. It’s the “chat” port. I can call/text everyone but that’s about it. This is like the internet when interacting with computers consisted of Finger and Gopher.
But thanks to Lyft there are now ~10,000 people in the city of SF who have the “driving” port opened on their node. And Lyft runs a directory service where I can scan all open ports and benefit from a people node on the network in a way I never could before.
What other ports will soon be open on the people nodes? What other directory services need to exist? Facebook Graph search looks all the more interesting from this perspective.
September 23rd, 2012
My wife and I are both entrepreneurs. Many times we’ve discussed going into business together but there would be too many chiefs and not enough indians so we know it wouldn’t work out. But 10 months ago we decided to launch our first joint venture, a baby. (Well, technically we decided 9 months before that.)
Neither of us accept the standard doctrine on baby raising; we both question everything. And over this last year we’ve figured out many hacks for keeping our little guy happy, both of us well rested, and our household functioning. Today I decided to document these so I don’t forget in case we decide to go through all this again. I’m only going to tell you the things you won’t hear other places.
While in the oven
- Read The Panic-Free Pregnancy (link) – You will receive false information about risks to unborn babies. Caffeine, alcohol, lunch meets, fish. Read this book for the facts. Some of them are real risks but most of them are not. This book summarizes the actual studies that have been done and explains which risks are real.
- Prepare for delivery – During the ~24 hours of delivery there was no continuous person who was with us and overseeing things. Even my wife’s OB wasn’t going to handle the delivery, whomever in their clinic happened to be on call when the time came is who would handle it. This makes for a frustrating process and is probably one of the advantages to bringing your own midwife or doula. We interviewed a couple doulas and didn’t like them. Instead, we found a friend-of-friend who is a labor and delivery nurse. We really liked her and make arrangements to call her day or night with questions. I called 3 times during the ~24 hours to update her and ask questions. Every ~5 hours there was a new nurse taking over so it was super helpful to have someone I trusted to call for a second opinion, especially since my wife was drugged up and not much help in making some of the decisions I had to.
- Watch The Happiest Baby on the Block DVD (link). Your baby will cry. You will not be able to calm it. You will start to go crazy. This DVD reveals several kung fu moves that work like magic.
- Read Twelve Hours Sleep by Twelve Weeks Old (link). Unlike every other baby book you come across which is 1000 pages long with no chance of you completing in your sleep deprived state, this book will take you just an hour to read. It is a step-by-step guide to getting your baby to sleep. You can’t start until week 5-7 (depends on birth weight) but week 10 our baby was sleeping 12 hours. Many a friend thanked us for this recommendation. You will read it multiple times and follow every step. It really works.
- Practice the straight jacket swaddle (video) – A good swaddle can make the difference between a full nights rest or getting woken up. After many failed attempts I found this on YouTube. There is no getting out of this swaddle. Babies love it.
Equipment no one will think to buy you but you desperately need
- The best bottles (link). Not only do these bottles eliminate tons of regular cleaning, these are better than any of those anti-colic bottles (Dr Browns or others you will undoubtedly be recommended). I spent too much time researching the colic bottles. All they do is eliminate air intake. Air comes from two places: bad suction at the nipple or air within the bottle. These bottles have huge freakin nipples, no problems with suction. And the bag liner eliminates all air. Buy these bottles and you’ll never need any other.
- Sterilizer steamer bags (link) – You will go through a super-paranoid-I-must-sanitize-anything-that-comes-within-twelve-inches-of-my-baby phase. It will pass quickly. Soon you’ll be brushing dirt off the pacifier and slipping it right in junior’s mouth. But until the paranoia has passed these bags make sterilizing fast & easy.
- Pacifier leash (link) – Buy 5-10 of these so you can tether pacifiers to everything. The carseat. The stroller. The baby bjorn. Your baby. Pacifiers are one of the greatest inventions ever and you always want to have one within reach.
- Hazmat poopy diaper bags (link) – Poopy diapers stink. When on the go you will want to contain those suckers and these bags do the trick. Worth clipping to your diaper bag.
Random other tips
- Colic means nothing. Your baby will have colic. This is not a condition, it is a set of symptoms. Specifically, it’s the symptom of your baby being healthy but still deciding to cry or displays symptoms of distress frequently. This defines every baby.
- Crying. It is very easy to get worked up when your baby cries but changing your perspective can really help. As an adult, we only cry in very extreme circumstances when we are in real pain. For a baby, crying is their only method of communicating. If a baby is slightly cold, they let you know by screaming hysterically. If they don’t like the position of their leg, they let you know by screaming hysterically. If they are a tiny bit hungry, they let you know by screaming hysterically.
- Dream feeding. You don’t have to wake your baby to feed it! This is called dream feeding. I can’t believe this isn’t mentioned in the baby instruction manual. We didn’t learn this until about 4 months but it was a life saver. There are times when you know your baby needs to eat but you don’t want to wake him. You don’t have to! Just slip the bottle (or breast) in his mouth and he will eat without waking. It’s magic.
- More crying. When your baby finally gets mobile, it is okay to let him hit his head. He will try to pull himself up on things. Sometimes he will slip and he will fall. Don’t freak out when it happens and don’t go out of your way to prevent it. This is how they learn. It only took our guy a couple times of trying to pull himself up on something flimsy like a paper bag before he started testing how strong a support was before pulling up on it. Absent sharp objects, babies won’t do any real damage hitting their head from their own height.
January 20th, 2012
Pinterest is the best new social application I’ve seen in awhile. Exploring it has rekindled a lot of thinking about what it takes to get users to create online content. This is not an analysis of Pinterest in particular, but the mental framework I use to think about this design problem.
1) The creative container
The naive view of encouraging content production is to create really flexible creative controls so that your tool has a wide range of uses. The reality is that a more constrained container encourages production. Think about a coloring book versus a blank sheet of paper. Not only is the freedom of a blank piece of paper paralyzing, but the pre-drawn outline makes your final creative output better.
Let me elaborate on those two separate principles, first on the constraints. Think GeoCities vs Blogger. GeoCities was an easy way to create websites. You clicked to insert a page and had a WYSIWYG editor that let your imagination run wild. Then blogging came along. What was so great about blogging was that you were given a template; this wasn’t for creating just any website, it assumed your site was a series of posts, each with a title and body, ordered by date down the page. This spurred an explosion of content creation because a post template is helpful creative suggestion, yet it’s still incredibly versatile in it’s uses. Then in 2007 Twitter came along. For many people, it’s even easier to fill 140 characters than it is to write a complete post. Constraints breed creativity.
The second principle of the container is that it serves as imagination scaffolding. The constraints of your container, if done well, make the final creation more awesome than if the person created it from scratch. Blogging software assumes all the sites will be a list of posts so they can design beautiful themes for you to choose from. Paste ten random 140 sentences into an email and your friends will think your drunk, but call them Tweets and put them on your Twitter profile page with a customized background and the pretty icons and they become pearls of wisdom. Character creators in video games are another great example of this. By allowing you to customize the hair, eyes, skin, and clothes of this character there are millions of unique combinations but everyone’s character ends up looking really professional. Give them scaffolding to help creations turn out better.
It’s important to think a lot about the creative container you’re offering to users. A friend who is an avid Twitter user once remarked, “That would make a great Tweet!” when someone said something funny. Twitter power users filtering the world for Tweetable moments. Your users are going to be spending a lot of time thinking about what they can fill your containers with.
2) Community feedback and validation
When presented with a new creative container there is a learning curve in figuring out how to produce great content within it. It’s important that you’ve architected a good feedback loop so people can hear the opinions of others to improve, and to celebrate the great creations when one is crafted.
Blogging is an easy example to see with it’s comment thread beneath each post. Within video games where you have created a custom character, the feedback comes from your interactions with other players. When chatting with other people in the game or virtual world someone’s avatar is a conversation starter.
Wikipedia is a particularly interesting example. Their creative container is “an encyclopedia article” which turns out to be a great container for summarizing your knowledge on a subject you’re an expert of. But what you may not realize is that the feedback loop is a critical part of encouraging Wikipedia editors to continue creating great content. On every article is a “Talk” tab at the top where you can see the editors getting feedback about what they’ve written.
But it’s not enough to simply allow feedback, it’s also important to reduce friction in the feedback process and think about the constraints you’re setting up within the feedback mechanism. Facebook’s “Like” button let’s you endorse someone’s post with a single click and Amazon reviews can be marked as helpful. Following someone on Twitter makes it clear you’re interested in what this person has to say. All of these are easy and constrained. Even comments, which are relatively unconstrained: don’t allow titles of the comment, usually have a max length to keep them short, links are often prohibited to keep the discussion focused on the original post. And most of the time comments are not multi-threaded–you aren’t supposed to reply to another commentor, you’re there to give feedback to the original creator.
Your feedback process will drive the quality of your creations and the longevity of your creators. Figure out how to encourage it but to simultaneously keep it enjoyable and constructive.
I should write a full analysis of Pinterest, but they’ve done an amazing job with their creative containers and with their feedback loop.
January 8th, 2012
I was reading Clay Shirky’s latest post about the new pricing model that will supposedly save newspapers, and it struck me how little talk there is about the real fundamental issue at work here: price discrimination.
The same product or service is worth different amounts to different customers. You maximize revenue by figuring out how to charge the right amount to each customer without complicating (and therefore adding friction to) the buying experience.
My previous business was building social games on the Facebook platform that monetized with virtual currency. One of the reasons this has been one of the fastest growing sectors in history is because of this brilliant pricing model that allows for very efficient price discrimination (I didn’t develop it, I just recognized and emulated it). You let people play your game for free but something about the game play is restricted: limited number of turns per day, a certain class of accessories that cannot be purchased, levels or regions of gameplay that are off limits, etc. Then you allow people to purchase units which get them access to the restricted game play. The more they purchase, the more they get the restricted game play.
90-95% of your players will never pay, but then a good chunk of customers will spend a little and a very small fraction of a percent will spend incredible amounts of money: hundreds to thousands of dollars per month. You get a standard exponential decay when you graph the distribution of revenue, and these “whales” (high rollers) make up for all the non-paying users. Even when you include all the non-paying users, the revenue per user of virtual currency games is typically 10x per user greater than games that are entirely free but monetize through ads.
If the game is designed well you get almost a perfectly efficient discrimination — people pay exactly what the game is worth to them. Arcade games and casinos both have this same property as well.
Online advertising revenue models do a good job of discriminating as well but they typically undercharge the most valued customers. Your pageviews (and typically clicks on advertisements) are fairly proportional to the amount you use the product. However, the users who are receiving 100x or 1000x more value from the product are not generating proportionally more revenue for the business.
For physical products, price discrimination is crude. Typically there are 2-3 version of products; it’s the good, better, best approach. I’ve been been surprised how often online software — which sheds the constraints of physical goods — holds on to this approach. 37signals, often commended for being a pioneer with their products, still has a good, better, best packages.
I’ve always been impressed with WordPress in this regard. The vast majority of their customers use their free open source software, but if you don’t want to mess with hosting or configuring software you can sign up for wordpress.com. From that point the features are a la carte. I bet most customers pay $5 – $20 per year. But if you want all the goodies: video posting, custom domain, customizing CSS, a pretty theme, no ads, and lots of extra storage space — soon you’re paying $500 per year.
This is is a powerful revenue lever for iPhone/iPad and and the Kindle as well. I’m sure there are iPhone users who have spent many thousands of dollars on applications after purchasing their phone.
Reading Clay’s post, it sounds like newspapers are finally figuring out how to price discriminate. I bet a lot of businesses (and ultimately customers!) could benefit from revisiting their approach to pricing.
February 27th, 2011
This weekend I’ve been thinking how the range of options that most people consider available to them is much narrower than the truth. If they can’t find an enrollment form or a job description or a single person of “authority” tells them, “I’m sorry, that’s not an option,” too many people are too willing to accept that as fact. “Why?” is the real interseting question here, but right now I want to collect examples of people not doing this for every-day relatable situations. Do you have an example?
Here are three I have:
1) When I was in college and there were “required” classes that I didn’t want to take I figured out that I could skip them by “testing out the class.” I just had to ask the department how I could demonstrate mastery and typically they’d tell me if I could pass the final exam they’d give me class credit, but not a grade. It’s much easier to study for a couple days to pass a final than to sit through a whole semester of soul-killing lectures and wading my way through boring assignments. Avoiding “required” classes was door #4 that most students assumed was not possible. I also applied this trick to enroll in classes that I wanted to take but were “full.” Miraculously there was always an open desk in “full” classes so I’d happily attend every class and do every assignment that was interesting, skipping the ones that seemed pointless, since all I had to do was pass the final to make the university happy.
2) A friend told me a story about how he got his current “job,” let’s call him John Smith. The company was interested in hiring him but he had a very specific view of the job he wanted to do; he wanted to help with certain aspects of the project but not others and he wanted to work from home on his own time. When they didn’t agree he proposed they hire John Smith Consulting to instead to do what they needed and they were okay with that solution. Again, he just asked for door #4.
3) Another friend told me how his wife wants to attend a masters program in another city but he loves his job and doesn’t want to leave. The “one of us has to sacrifice our career” dilemmas are not uncommon, but his solution was a simple one. Monday through Thursday he’ll do his job as normal. Friday he’ll fly to home #2 in another city where his wife is holding down the fort and spend 3 days of every week there. This may not be the most convenient living arrangement, but anyone could pull this off for a couple years. Get a smaller apartment in city #1, sign up for a frequent flyer program, and get ready to explore a new city. This win-win behind door #4 is an option that so many would have never considered.
4) My wife and I have are up front with each other about the things that we don’t like doing. Inevitably there is a list of things that neither of us want to do: laundry, cooking, cleaning the house, random household essentials, etc. Most people solve this problem by the compromise, “I’ll do A if you do B.” But between a housekeeper, personal assistant, TaskRabbit, and Amazon prime–neither of us do things that neither of us want to do. The typical objection of hiring a personal assistant or housekeeper is that it costs too much, but it really doesn’t. It’s all about being explicit with your priorities. Getting a smaller apartment, cheaper car (or using Zipcar), eating out a little less often–it’s easy to squeeze a few hundred dollars out of any budget. You can find talented people for $8 or $9 per hour on craigslist, and 10 hours per week of someone’s time goes a long way. Wouldn’t you love 5-10 hours more time each week to do things you truly enjoy doing? That’s the option behind door #4…
November 10th, 2010
- You notice that your power users all have taken some action (e.g. filled out their profile) so you try to encourage all users to fill out their profile to get them more hooked on your product. Does this actually help?
- You have 24 hours of downtime, the next day you come back up your traffic is down. Will this have a long-term effect you need to worry about?
- You have 100K uniques per day and so does your competitor, but are these 100K people who come back every day or 700K people who each come once per week? Does it matter?
- You turn on a new advertising campaign and see your # of unique visitors per day start to increase, you assume that this will continue increasing so long as you keep the ads running, right?
- You start having email deliverability problems (or Facebook turns off notifications) so you can’t notify users of new activity on the site. The # of unique visitors decreases slightly but you’re not too worried, should you be?
What follows is a detailed how-to for analyzing your product’s customers. Read the rest of this entry »
September 19th, 2010
Adam Smith had an interesting comment about ebooks, “Imagine looking at a book on Amazon and seeing ‘We predict that you personally will read 5 pages of this book.’ Or, on the flip side, ‘You will read 98% of this book.’ Holy shit! So much better than average star ratings.”
This got me thinking. You’re probably already familiar with the entrepreneurial wisdom that the first step to improving something is to measure it, and it’s corollary, be careful what you measure because that’s what you’ll end up optimizing for. In applying this, there is lots of discussion about the benefits of A/B testing for web applications. And, a small tangent, I’ve seen some interesting discussion about this applied to video as well. I was intrigued to learn recently that Salman Khan of the KhanAcademy.org is able to see at what point in the videos his viewers stop watching, and, based on this, he works to improve his lessons.
Read the rest of this entry »
September 18th, 2010
I’ve had my iPad for a few months now and I’ve been surprised to see that it now has earned about 20% of my time in front of a computer. Email, reading, general web browsing are great when I’m on the go, but even when I’m at home and my laptop is right here, my iPad is till the preferred device for most of these task. It’s more pleasant to sit in a comfy chair and hold it like a book. And when I set it on a table I can touch type pretty well. I have no question it will have captured 80% of my computing within a couple years. I can’t wait for the next version.
I’m reminded of what it felt like to own my first laptop many years ago. Originally my laptop was a great option when I needed to do work on-the-go, but it was really only good for a subset of computing tasks. I still needed a desktop at home for “real” computing, but I haven’t owned a desktop for at least 5 years now ever since the speed of an affordable laptop caught up with desktops. Now with the iPad we’re starting the cycle all over again. I can’t wait till the day that I don’t own a laptop. Tablets are taking over.
What new class of applications are we going to see made possible by these?
July 15th, 2010
There is a feature that I’ve wanted in Gmail for awhile: email snooze. I want to defer a message until a future date and have it pop back up like a normal email. For the last week I’ve been using a solution that Pari found, an add-on called ActiveInbox. It’s a plugin for Firefox and Chrome that adds a bunch of new useful features to Gmail just like Google Labs does, but these features are way more useful than any Labs feature I’ve tried and snooze is my favorite. (They have a free version but you have to spend $25 for the Plus version to get this killer feature, they call it “schedule and deadline emails”)
First, I’ll explain my gmail problem, maybe you can relate. I want to stay on top of my email so I’m regularly reviewing and culling my inbox. Alas, I can almost never get my inbox to zero because there are always emails that I’m putting off, either because I’m waiting on something or because I just don’t want to do it today.
Have you ever noticed that when everything is put away in your home it’s easier to keep clean, but as soon as it gets cluttered it goes downhill quickly? That’s how I feel about my inbox. Most days it’s cluttered with about 25 “future” emails and on busy weeks it quickly spikes to 3 or 4 times that. There are three main problems I experience with these emails I’m putting off: (1) they clutter my view so I can miss important emails, (2) I end up reading these emails way too many times because I wonder “why is this in here again, oh yea, waiting on someone to get back to me”, (3) I never get a true feeling of being “done” with my work at the end of the day, there is the perpetual feeling of, “I’m sure I could get a few more of these done.”
I’ve tried implementing Gmail GTD by using labels, filters, superstars, but the problem with every approach is that they only solve issue #1. All these approaches get the emails out of my inbox, but then I’m forced to review my Actions and Waiting On list, most of which still aren’t ready to be done, so then I stop regularly reviewing them and they quickly pile up.
With ActiveInbox, a few times per day I go through inbox and get it to zero by quickly replying, putting it on my Today list, or scheduling it for a future date; I’ll never see this email again until that date! Then for the rest of the day I just work off my Today list. At the end of the day if I didn’t get everything done I force myself to look at all remaining items in Today and reschedule them. This last step is key, I’ve been surprised how I’m ready to bump an email to Tomorrow for the third time and I just decide it must not be that important and delete it or put it off till way in the future.
Some other cool features from ActiveInbox:
- Right-click on any person’s name and it pops up a window with every email related to this person
- It adds a “Finish” button next to Archive. This removes all labels from the email in one-click. If you use labels you’ve noticed that Archive becomes useless when you’re working through a bunch of labeled emails.
- Let’s you add labels to an email when you’re composing it so you don’t have to open it from your Sent folder
- Creates a new type of label called “Projects”
Anyone else have other killer Gmail tips?
June 29th, 2010
It’s been a few years since I’ve been in start-up mode: dissecting great products to learn, generating lists of ideas, and meeting lots of new people. In undergoing this process I’m reminded of my fundamental approach to developing a new product and how unusual it seems to be among other entrepreneurs. I’ll share….
When I have a new idea that I’m intrigued by that I want to bring into the world, the two most important first features I stay focused on are: (1) simplicity, and (2) community.
Let me explain. 1) Simplicity. Too many people create too many features way too soon. The most important feature in the first version of your product is that it’s simple. In one sense this is the absence of features, but in a very real sense “simple” is a feature in and of itself. “Simple” is achieved by distilling your concept down to its essence, by including only those features which are absolute core to your idea. Achieving “simple” is a very selective cutting of features: you don’t necessarily leave the easy features and cut the hard ones, you leave the essential/core features and cut the peripheral ones. Why? Because the most important goal at this stage of product development is that when a potential customer sees your product, they “get” what it does. You want them to almost instantly recognize the problem and understand how this product can potentially solve it. This first version of the product is a conversation starter.
When you’re trying to teach kids what a mammal is, you don’t start with the egg-laying platypus as the example. Likewise, you want your first product centered firmly around a quintessential use case. Lots of features you’ll add down the road will be added to address edge cases, “real-world” scenarios, but they’re a distraction at this first phase where clear understanding is the first goal. It’s not so important that the first version of your product actually solve the problem, it doesn’t have to be ready for someone to dive in and start inputting real data and using it on a daily basis, the purpose of the first version of your product is that you can show it to actual customers and they “get it” and get excited about it.
This leads directly into feature #2, Community. There are lots of different forms that “community” can take at this stage: a forum, a regular conference call, group sessions; but the essential is that you create a regular on-going interaction between an early group of customers that you get to eavesdrop on and participate in. Note that this is not a bunch of people talking only to you, you want a small group of real customers talking about your product among themselves, brainstorming ideas, hearing what each other think and disagreeing.
Your goal at this stage is to build an early version of your product that is distilled down to its essence and then get a group of vocal passionate real customers using it, and then, only then, do you start really building the product with them. You start listening and responding and iterating. This distilled essentialized first version of your product is situated at crossroads. There are a lot of subtly different but significant ways you can take this product, but you don’t want to add the small features that push it down one of these paths. You want it’s essentialized form to stand on it’s own feet, and then you want this early group of customers to push it in a particular direction.
What happens if you don’t achieve this? What happens if you build a first version of the product and no one really gets excited about it? Well, this means one of a few things. Either: 1) this is the wrong group of test customers, 2) this is the right group of customers but you’re wrong about their being a real underlying problem, 3) they’re not understanding how this particular solution solves their problem.
You’re allowed to try again with a slightly tweaked and modified version of a distilled product, but don’t make the mistake of thinking “my customers need more real working features” and start building, building, building. You’ll know that you’re making this mistake if, as you build more, your group of engaged passionate beta customers gets smaller and smaller. You’ll know you’re doing things correctly when you’re group of engaged passionate beta customers starts getting bigger and bigger, both because some of the initial people who weren’t quite clear on it start to really “get it” and get excited, and because those who are excited want to start showing it to their friends.
Some tips to increase your chance of achieving this:
- Keep your product ugly, don’t get slick graphics involved at this stage. You’ll actually get better, more honest feedback if your product looks and feels a little rough. Implicitly this communicates that it’s a work in progress and they’re helping to shape it. If you show them a really slick product and they don’t quite like it, they feel worse about criticizing it so they won’t, or you’ll start to hear feedback like, “I can see how some people might like this…” which is code for “I don’t like it, but a lot of effort went into this so I hope someone out there does!”
- If essential features are hard to program, use lots of screen shots, mock-ups, and fake data. Real customers generally have bad imaginations, so even though you tell them, “XYZ will happen when you click here”, and the customer says “oh yea, I get it” they’re either being nice and have no clue what you mean, or they’re imagining something but it’s very different than what you’re imagining. You don’t want an illusion of understanding. Create a mock-up with fake or static data, put the most weight on feedback to stuff they’ve actually seen and clicked on, not on stuff you hypothesized about with them.