(from TDD entry on Wikipedia)

 

In the programming world there's this school of thought called Test Driven Development. The idea is basically that if you were going to write a piece of a program you'd start first by writing a test that would verify that it works. Then, you'd write the code and try to get it to pass the test. Let's say it's an adding calculator, so the first thing you'd write is not the code that adds two numbers together, but a test that would verify the results of what you are about to write. Your test is that you'll pass it "1" and "2" and expect the result to come back as "3". Next, you go and write the code that does this. The advantage of this approach is that the test cases drive the implementation. Plus, you continue to use all the tests you write. So anytime you make a change anywhere in the app, all the tests fire as verifiers that you didn't break anything you weren't aware that you broke.

It's a good practice in programming, but I think this is also a great metaphor for startups (and even goals and ambitions elsewhere in life). I've just started working out of a great new co-working space called 3rd Space and have the pleasure of being around some great people, some doing startups, some doing apps, design, marketing, etc. I met a new friend here, Kevin from Fashioning Change, who has solid startup failure and success experience. He engaged me in a great line of questioning the other day. I was showing him a quick proof-of-concept of an app idea that I had made just to test out where the rough parts of developing it might be. I'm integrating 3 services in 3 different programming languages, so I just wanted a quick test if all that was going to work.

Kevin looked at me, excited to show him the programming, and focused me back on the product design. "OK, so back to the idea -- what are your unknowns? What do you need to know in order to say that this is going to work?". Hmmm, I thought about it for a second. I listed a few things that the users would do with this app, over a period of weeks and months. If they did it, that's a success. "OK", he said, so I think you have enough here to test that, don't you?" I resisted a little and let the excuses fly: "The UI is almost non-existent, the color scheme is black on white, the layout makes no sense, the authentication flow is terrible....", I continued. "Well, then just get 5 people you know. If you can't get 5 friends to use it, whom you can show it to and explain it, then a better UI for people you don't know isn't going to help. You just need to test the idea". 

Wow, this caught me totally off guard. In my mind what I was showing him was just scratch-paper quality code. This is the napkin doodle before the sketch, before the color markers, before you open the box of brushes and paints. But he's right, and he helped me define the test cases that my idea needs to pass. If it doesn't, then it needs to be tweaked until it does pass. I made him a deal, I wasn't ready to just release this version, but I'd focus for 2 weeks after the new year to have something testable and semi-presentable. Then, with the feedback, decide the next move.

There are lots of names for this process, and lots of existing wisdom out there to test early and often, but for the programmers and programmer-minded, 'test driven idea development' is the way to think about it. If you have an idea for something, write the test case first, then do what you can to try to pass it. Will your user come back X number of times per week and do Y number of actions a month? Will they pay Z dollars for products A, B, and C? You don't need a lot of code to test that out. In fact, you could even hand-write emails and web pages that mimic what a bigger system would do once you build it out. Or, just a really crude proof-of-concept web app that you're scared out of your mind to release with your name on it. 

 

 

 

They say every good company solves a problem, or scratches an itch, yours or someone else's. The declining health in the country is an enormous challenge -- almost too big for a startup? I think not.

What's broken?

I was catching up with a good friend of mine a couple weeks ago, and among other things, I asked how his folks were doing (I love this family, I'd be a member of their clan if not for a Coleman). He told me a typical story that made me shake my head. His dad is overweight and probably needs to lose 40 pounds. He's been having some issues, amongst them is sleep apnea. Of course, it's pretty serious because your body is literally deprived of oxygen and your heart is put under large stress every night. This, and other ailments led the doctor to do what doctors sometimes feel is their only course correction tool: they scare the shit out of you hoping you'll go home and make a big life change. That's partly because of the system they work within. They can't be with you after you walk out the door. So, perhaps it's what we might label as the "wake up call" technique. It goes something like: "Your weight is going to kill you. You will probably not make it to birthday X, your odds of cancer are much higher, your odds of a hearth attack are high, your quality of life is lower, you won't live to meet your grandchildren, your spouse will be a widow..." Something like that, although I imagine that most doctors don't lay out all of those doomsday scenarios all in sequence.

The hope is that the patient goes home, re-evaluates their life and takes that downer message as a call to action to get on a plan like Weight Watchers or Jenny Craig, or even better, self-starts a rigorous routine of healthy food and marathon training. Yeah, that'd be nice. 

The truth is that mostly what happens is that even great people, people like my friend's dad that I have enormous respect for, don't know where to start. Further, they aren't given the tools to bridge the gap from that startling knowledge (not saying it isn't true, mind you), and the path forward. How do we help people start that journey? How to we put them on a life-long change of small daily habit changes that will divert them from the tragic closing scene just described to them by their doctor?

What has to happen

A lot has to happen to fix this problem. There isn't a one-size-fits-all approach to this either because different people's personalities gravitate to certain solutions over others. In the case of my friend's dad, he's got a lot going for him:

 

  1. Great family and friend support
  2. A physically-active son,  motivated
  3. Good sense of common technology (email, mobile, SMS, maybe even Facebook)
  4. A good job, upper middle class lifestyle (weekends / vacation)
  5. Motivation -- just maybe not a clear path to action.

That should be good enough. So, where's the answer?

Experimentation

Over the next few months I'll be putting my thoughts and my best programming skills towards this. "Health" is an interesting, exciting, cutting-edge space. However, I sometimes feel like I've bitten off more than I can chew. For a computer programmer, the problems that have a concrete solution are the low-hanging fruit. If you want 'Banking System A' to process payment to 'Vendor B', that's more concretely solvable.  

So what about the big players? Should we wait for Google or Microsoft to give consumers the answers to their health? Something tells me that neither is too eager to get back in to health:

It seems like there need to be lots of solutions to this for consumers to choose from. It's the very notion of the startup craze going on right now, that the little guy can disrupt the established brands and markets out there now. The entrepreneur says that things as they are now are not the way they should be and that he/she has an idea to offer to the mix.

My idea is coming along and I can't wait to share it with the world. What I want to do is make health behavior more about the journey than the destination. Diets don't work as big radical changes usually don't sustain. I think people need a metaphor that helps them see the small changes they make start to add up to big ones, and they need to start on that path with a system that is flexible to their needs and their current habits. It's a delicate balance. Push too hard and you'll lose them forever, push too soft and you won't see any changes. 

Compounded in the difficulty is how to problem of how to engage social support. In the era of online self-aggrandizing, how do we get people to collaborate (yes, a two-way street) on their health journey with other people using digital tools? I see lots of people posting their athletic feats to Facebook, but hardly never their struggles. 

What I'm Not Building

There are quite a few products out there that have already scratched some of the itches people have had. Here's a list of what I'm not building:

  • a health dashboard
  • a medical aggregator
  • a food journal
  • a fitness logger (although it's a part of it I guess)
  • a share-to-facebook health app (although nothing will be stopping you I suppose)
  • a diet and fitness community site

What I Will Be Building

  • something fun
  • something that conveys health is the journey, not the destination
  • something that rewards collaboration
  • something that rewards growth and mastery
  • a sense of accomplishment and awesomeness
  • an experience that adapts to the tools you have & use
  • something that works well with cool devices like the FitBit
  • something people my age would like, and that people my parents age would too

So, with that out there I'm going back to the drawing board. I can't wait to share what I come up with and along the way. I hope many of you get involved, either as beta testers or just to listen to me babble about ideas over a cup of coffee. Speaking of journeys, this whole startup thing is going to be a crazy one. Thanks for following along! 

Where do I get my coffee today?

9 Dec 2011 In: Startup Life, Habits


Today is my first day not having to go in to work. It's Friday, and I got up like I did yesterday, got dressed, but yet did not do my normal day. Nor did I do a day similar to any day I've done in... well, ever. It doesn't feel like the weekend, but I'm not going to work. The sensation is odd.

Next, where do I get my coffee? Sure, this might be a trivial thing for some, but I had my weekday coffee place (Cups cart at Calit2, Peruvian Organic was the best), and then I have my weekend coffee (at Coffee Bean), but where do I get coffee on a day like today? I was already planning to go to UCSD to go to the gym, maybe I could go to my favorite coffee cart one more time. No, time to move on.

It took me about an hour to figure out that all of this relates back to what I'm going to set out to do -- create software that changes people's habits. Having myself done the same routine for the last 2 years, it's tough. I had to conciously force myself to abide by a new model for the day, one which included an 11am workout. Being there was odd, partly because I've been struggling to keep a gym routine, but partly because I don't think I've ever been to the gym at that time of day.

All of this is unsettling a bit. I am home, but uncomfortable with what I should be doing right now. What's more unsettling, is that I'm only 28, and having been a fulltime employee has been my norm for just the last 6 years. Nevertheless, it has me really accustomed to habits and routines that I now may have to learn to undo. But what about other people, who have 20 year habits? If I'm thinking through tools to help others change small, but routine health habits, how do you fight such a strong sense of comfort / familiarity / routine? My guess is to replace the missing ones. 

Tomorrow is the weekend. I'm going to use that opportunity to plan out for Monday's habit-breaking crisis. I have two days to find a good bag of coffee, the creamer that I like, and start a new habit to make coffee at home. Why? Because it's cheaper, it's something I can get behind, and a new habit I can embrace. 

Lesson learned. New habits, hard, breaking old habits, much harder.

I have just a few more days of full time employment before I start out on this great new adventure. There have been a few surprises in the last couple weeks having announced my next steps:

1) No one has been skeptical, at least to my face. Ever since Mark Zuckerberg, no one dares doubt the computer-nerd-turned-entrepreneur. Where my parent's generation would have looked down on this new business-minded youngster for 'selling out' and being 'part of the establishment', it seems almost everyone now embraces and even celebrates it. I'm paraphrasing a bit from a great New York Times article about our entrepreneurial generation: http://www.nytimes.com/2011/11/13/opinion/sunday/the-entrepreneurial-generation.html?_r=1 

2) Opportunities are all around. Since I announced I was leaving full time, I have had 1 full time offer, 3 freelance gigs, and a teaching position offered to me all around apps and health. Turning stuff down is tough, and I haven't turned it all down, but I won't be taking anything that might crowd my creative forces. Then again, I do need to plan for a few breaks. The brain is a multi-tasker after all.

3) I haven't even started yet, and I've already spotted the signs of doubt / fear pop in to my mind. Building a business that asks people to spend minutes of their life using it, or even paying hard earned money to use, is opening yourself up to them. You're saying "here are my ideas, wrapped in my ability to execute, and your life will be better for engaging with it." Even scarier, is the notion that you launch early to get feedback. Get it out, just bare bones without all the frills. Scary. I came across this article by James Altucher just in time: http://techcrunch.com/2011/12/03/how-entrepreneurs-can-increase-productivity-by-500/ My biggest take-away from that article is that all negative thoughts, speculation of failure, are not based in reality. These are thoughts that are not useful. If I'm going to go for it, I need to go for it, and use my brain cycles to propel forward.

4) There isn't just one idea and one shot. Possibly the most interesting thing so far is that the only thing I've had to explain about my plan is that I'm not afraid of the first idea not succeeding. My in-laws started up too, with a candy sale business, travel business, baked breads, all before they came to realize their winning business which was a Mexican bakery in East LA. My grandfather also experimented before he eventually created a fabric business in LA that eventually took off. That same old-world business mentality should be followed in the internet entrepreneur world as well. Keep working at it until you find something people like. Tweak (or "pivot") what you're selling until you find what works. 

But those are all the surprises. Nothing has changed about my resolve. I'm excited to link my creativity to my financial success, and to build some thing(s) that I believe in and I can call my own.

So, what's the plan? The plan is to start out and make a plan. Then, the plan is to build it. More on that in the next installment. 

To friends and family -- thanks for the support. 

 

I Quit My Job Today

17 Nov 2011 In: Startup Life

Today, I gave notice at work that I'd be leaving. I have always wanted to take the plunge and take a stab at founding my own startup. I have so many ideas and no time to do it in. I've been working on side projects nights and weekends where I can, but it is almost impossible to make progress in large enough blocks.

I have a few ideas I'd like to pursue. In 2 weeks I'll lay out a game plan and make a go of it. I'm treating this like a writer who sets out to start their first book. I'm not sure where I'll end up but I'm excited to start the process.

I have a few goals in mind:

 

  1. Link my creativity to my financial success
  2. Work on something I am passionate about
  3. Blog the experience
  4. Live this experience with no regrets.

My dad tells me I was always a cautious kid. It's true. I take risks but not usually without lots of calculation. This, however, is a big risk, but I feel very excited to do it. I have an amazing wife who is supportive, and we've been saving a while to make this possible, but she'll be the rock throughout this journey. I can't wait to get started! I'll be blogging regularly about "starting up". More details to come soon.

As for what I'm leaving behind in my current work, all I can say is that I am very grateful to have been there. We built a great health behavior product, Three Two Me. I was lucky to get to lead the development team, teach students, mentor one to a full time staff, and work with others who stuck around despite low intern pay because they were enjoying it and we were teaching each other and working towards a quick but substantial product release. I'll miss the researchers that taught me a lot, and my students and fellow staff at the Center for Wireless and Population Health Systems.