1 00:00:00,000 --> 00:00:01,470 2 00:00:01,470 --> 00:00:05,390 >> [MUSIC PLAYING] 3 00:00:05,390 --> 00:00:11,270 4 00:00:11,270 --> 00:00:12,990 >> ABBY FICHTNER: Hello, I'm Abby Fichtner. 5 00:00:12,990 --> 00:00:15,739 Most people know me as Hacker Chick, because I do the Hacker Chick 6 00:00:15,739 --> 00:00:18,310 Blog on how to build better technology. 7 00:00:18,310 --> 00:00:20,660 And I'm also over at Harvard Innovation Labs. 8 00:00:20,660 --> 00:00:22,890 Do you know the Innovation Lab? 9 00:00:22,890 --> 00:00:24,510 OK, so that is wicked fun. 10 00:00:24,510 --> 00:00:26,960 I'm hacker in residence there, where my role 11 00:00:26,960 --> 00:00:30,330 is to help students do everything from hacking on cool side projects, all 12 00:00:30,330 --> 00:00:34,710 the way up to starting tech startups. 13 00:00:34,710 --> 00:00:36,760 >> I am a programmer, so that's my background. 14 00:00:36,760 --> 00:00:42,059 I kind of got into programming and startups by an interesting route. 15 00:00:42,059 --> 00:00:44,600 When I was in school, I wanted to be a management consultant, 16 00:00:44,600 --> 00:00:46,619 because I thought that would be the shit. 17 00:00:46,619 --> 00:00:48,160 I don't know if that's still a thing. 18 00:00:48,160 --> 00:00:50,150 Do students still want to be management consultants? 19 00:00:50,150 --> 00:00:51,380 Is that considered really cool? 20 00:00:51,380 --> 00:00:52,740 >> OK, so I thought that was really cool. 21 00:00:52,740 --> 00:00:54,670 I landed a job with one of the top management consulting 22 00:00:54,670 --> 00:00:55,753 firms right out of school. 23 00:00:55,753 --> 00:00:59,450 I was very excited right up until I started working there, 24 00:00:59,450 --> 00:01:02,477 and then absolutely hated it. 25 00:01:02,477 --> 00:01:03,560 I didn't like the company. 26 00:01:03,560 --> 00:01:04,160 I didn't like the culture. 27 00:01:04,160 --> 00:01:06,870 >> I didn't like anything about it except that they very bizarrely 28 00:01:06,870 --> 00:01:10,010 put me in programming, which was really weird, because my title wasn't 29 00:01:10,010 --> 00:01:10,889 programmer. 30 00:01:10,889 --> 00:01:13,430 There was nothing that I can remember in the interview about, 31 00:01:13,430 --> 00:01:14,820 you're going to be programming. 32 00:01:14,820 --> 00:01:18,100 I thought I was going be consulting managers, whatever that means. 33 00:01:18,100 --> 00:01:21,270 I'm still not actually sure, but it made sense to me at the time. 34 00:01:21,270 --> 00:01:23,490 >> So I go there, and they actually gave me an office, 35 00:01:23,490 --> 00:01:25,270 which was cool, because I think it's the only job I've ever 36 00:01:25,270 --> 00:01:26,520 had where I had an office. 37 00:01:26,520 --> 00:01:30,530 And they gave me a computer and this big equipment that the computer was hooked 38 00:01:30,530 --> 00:01:34,770 up to, so I was writing code to control this equipment, which was really neat. 39 00:01:34,770 --> 00:01:37,370 And that part I actually liked. 40 00:01:37,370 --> 00:01:41,720 >> And I was doing code for the NSA, which was really weird. 41 00:01:41,720 --> 00:01:44,380 It was my first job out of college. 42 00:01:44,380 --> 00:01:45,660 And so I'm writing this code. 43 00:01:45,660 --> 00:01:47,868 I'm just totally hacking, because I have no idea what 44 00:01:47,868 --> 00:01:49,920 I'm doing, and trying to make it do things. 45 00:01:49,920 --> 00:01:54,180 >> And I get to this point where I'm using libraries to control this equipment. 46 00:01:54,180 --> 00:01:55,950 And I can only do what's in the libraries, 47 00:01:55,950 --> 00:01:59,675 and the thing that I need to do, there isn't any functions for. 48 00:01:59,675 --> 00:02:01,537 And I'm like, OK. 49 00:02:01,537 --> 00:02:03,370 But there was a support number, so I call up 50 00:02:03,370 --> 00:02:06,910 the company who created the software, and I said I need to do this. 51 00:02:06,910 --> 00:02:10,490 And they were like, yeah, you can't do that. 52 00:02:10,490 --> 00:02:14,220 And it was my first job out of school and my first project, 53 00:02:14,220 --> 00:02:17,270 and I just didn't feel like I could just go to the boss and be like-- 54 00:02:17,270 --> 00:02:19,040 and he did just kind of put me on my own. 55 00:02:19,040 --> 00:02:20,600 >> I didn't really feel like I could go to the boss 56 00:02:20,600 --> 00:02:23,560 to be like, oh, go tell the NSA sorry, we're not going to do this for them, 57 00:02:23,560 --> 00:02:25,115 because the library isn't available. 58 00:02:25,115 --> 00:02:27,104 It just didn't seem acceptable. 59 00:02:27,104 --> 00:02:29,770 And so I kind of stayed up all night hacking something together, 60 00:02:29,770 --> 00:02:31,140 and I made it work. 61 00:02:31,140 --> 00:02:34,619 >> And it was this turning moment for me, where it just clicked. 62 00:02:34,619 --> 00:02:36,410 And I realized this is what I wanted to do. 63 00:02:36,410 --> 00:02:39,480 I thought it was the coolest thing ever, that I was like I did something 64 00:02:39,480 --> 00:02:42,146 that the creators of the software thought weren't even possible. 65 00:02:42,146 --> 00:02:45,490 And I was possibly the first person ever to do this, right? 66 00:02:45,490 --> 00:02:49,200 And it wasn't that big of a thing, but it was just such a cool idea. 67 00:02:49,200 --> 00:02:51,265 >> And so I left the big management consulting firm, 68 00:02:51,265 --> 00:02:53,640 and I went to work for startups, because startups are all 69 00:02:53,640 --> 00:02:55,900 about creating things that no one's ever created before. 70 00:02:55,900 --> 00:02:58,025 And I thought that was the most awesome thing ever. 71 00:02:58,025 --> 00:03:01,990 So I did that for a number of years, kind of built out 72 00:03:01,990 --> 00:03:03,530 the technology for startups. 73 00:03:03,530 --> 00:03:08,530 And then I kind of, as I was saying before, got into this area 74 00:03:08,530 --> 00:03:11,562 where I'm just going around helping hackers and tech entrepreneurs who 75 00:03:11,562 --> 00:03:14,020 are building innovative, disruptive products-- helping them 76 00:03:14,020 --> 00:03:16,246 to do that and find ways to do that in which they 77 00:03:16,246 --> 00:03:17,790 can be successful in the market. 78 00:03:17,790 --> 00:03:22,300 >> So that's what I want to talk to you guys about today. 79 00:03:22,300 --> 00:03:26,540 So for me, I think it's a really exciting time to be in this space 80 00:03:26,540 --> 00:03:29,609 right now, because technology is expanding at this incredible rate, 81 00:03:29,609 --> 00:03:31,650 and it's making all these opportunities available 82 00:03:31,650 --> 00:03:32,850 that were never available before. 83 00:03:32,850 --> 00:03:35,210 So I feel like we're back to that point, where you can create things 84 00:03:35,210 --> 00:03:36,564 that no one ever created before. 85 00:03:36,564 --> 00:03:38,730 And especially, you look at things like 3D printing. 86 00:03:38,730 --> 00:03:43,810 So people are 3D printing things like human organs or food. 87 00:03:43,810 --> 00:03:46,140 NASA has started 3D printing food astronauts, 88 00:03:46,140 --> 00:03:50,950 so this is a 3D printer with dough and pizza sauce 89 00:03:50,950 --> 00:03:53,940 and cheese as its cartridges, rather than polymers. 90 00:03:53,940 --> 00:03:54,810 >> And cars. 91 00:03:54,810 --> 00:03:58,640 Urbee 3D printed the world's cheapest and most fuel efficient car, 92 00:03:58,640 --> 00:04:00,640 and they're about to drive it across the country 93 00:04:00,640 --> 00:04:04,420 on under 10 gallons of fuel, which is pretty crazy. 94 00:04:04,420 --> 00:04:07,770 And of course, everything going on with mobile, and the fact with things 95 00:04:07,770 --> 00:04:11,770 like 3D printing are making creating physical devices so much cheaper 96 00:04:11,770 --> 00:04:15,173 has led to the internet of things, which is this notion that hey, why do we 97 00:04:15,173 --> 00:04:17,839 have to have the functionality in our computers and our tablets? 98 00:04:17,839 --> 00:04:19,470 Why don't we take it out of those and actually 99 00:04:19,470 --> 00:04:21,269 put it right into the devices, where we care about. 100 00:04:21,269 --> 00:04:23,170 >> And so we're getting things like-- David Rose 101 00:04:23,170 --> 00:04:25,470 over at the Media Lab created an umbrella that tells the weather. 102 00:04:25,470 --> 00:04:28,000 And so you can imagine it in an umbrella stand by the door. 103 00:04:28,000 --> 00:04:30,916 And as it senses you walk past it, if it's going to rain, it'll blink, 104 00:04:30,916 --> 00:04:33,430 so you know to take it with you. 105 00:04:33,430 --> 00:04:36,200 Or Valour created a bike that gives you directions and gives you 106 00:04:36,200 --> 00:04:38,540 all of your riding stats. 107 00:04:38,540 --> 00:04:42,390 >> Or Hapi created a fork that monitors your eating habits 108 00:04:42,390 --> 00:04:44,660 to help you eat more healthy. 109 00:04:44,660 --> 00:04:50,060 And everything from self-driving cars to mind-controlled helicopters-- 110 00:04:50,060 --> 00:04:51,290 >> [LAUGHS SLIGHTLY] 111 00:04:51,290 --> 00:04:54,767 >> Even things that we thought of as very low-tech, like reading the news. 112 00:04:54,767 --> 00:04:57,350 Gannett just announced that they're working on virtual reality 113 00:04:57,350 --> 00:05:00,990 journalism, where you absorb the news not by reading it, 114 00:05:00,990 --> 00:05:05,179 but by actually experiencing it and being a part of it. 115 00:05:05,179 --> 00:05:07,970 Or other things that we might think of as low-tech, like gardening, 116 00:05:07,970 --> 00:05:08,700 because you need to de-stress. 117 00:05:08,700 --> 00:05:10,500 Because I don't know about you guys, but I 118 00:05:10,500 --> 00:05:13,550 would find living the news being very stressful. 119 00:05:13,550 --> 00:05:15,420 >> [LAUGHS] 120 00:05:15,420 --> 00:05:15,930 121 00:05:15,930 --> 00:05:20,380 >> A team out of MIT, Grove, has created a produce appliance 122 00:05:20,380 --> 00:05:23,690 that actually, you can put in your kitchen to grow fruits and vegetables. 123 00:05:23,690 --> 00:05:27,100 And so it's really cool looking at all of the startups. 124 00:05:27,100 --> 00:05:29,002 There's just this amazing number of startups 125 00:05:29,002 --> 00:05:30,960 that are out these days that are trying to take 126 00:05:30,960 --> 00:05:32,293 advantage of these technologies. 127 00:05:32,293 --> 00:05:35,836 And what's really interesting-- just looking at all of these things that are 128 00:05:35,836 --> 00:05:38,960 coming up, but realizing only a very small percentage of those startups are 129 00:05:38,960 --> 00:05:40,970 actually going to make it into the future, 130 00:05:40,970 --> 00:05:46,070 and kind of understanding why some of them make it and some of them don't. 131 00:05:46,070 --> 00:05:50,124 >> So I gave a talk last month at an engineering conference, 132 00:05:50,124 --> 00:05:52,040 and I wanted to talk to them about this topic. 133 00:05:52,040 --> 00:05:53,373 And I thought they're engineers. 134 00:05:53,373 --> 00:05:54,190 They want rules. 135 00:05:54,190 --> 00:05:54,750 Like, I'm an engineer. 136 00:05:54,750 --> 00:05:55,220 I like rules. 137 00:05:55,220 --> 00:05:56,470 It's very nice and neat, right? 138 00:05:56,470 --> 00:05:58,390 So I was trying to come up with the rules of innovation. 139 00:05:58,390 --> 00:06:00,848 >> And as soon as I did that, I realized that's kind of silly. 140 00:06:00,848 --> 00:06:05,240 The first rule of innovation is that there are no rules of innovation. 141 00:06:05,240 --> 00:06:07,160 Because if you're doing it right, then you're 142 00:06:07,160 --> 00:06:09,237 breaking more rules than your following. 143 00:06:09,237 --> 00:06:12,070 And, of course, Thomas Edison famously said that "I have not failed. 144 00:06:12,070 --> 00:06:14,736 I've just found 10,000 ways that won't work." 145 00:06:14,736 --> 00:06:17,110 And so, of course, the more innovative that you're being, 146 00:06:17,110 --> 00:06:18,943 you need to kind of expect that you're going 147 00:06:18,943 --> 00:06:21,850 to find more ways that don't work. 148 00:06:21,850 --> 00:06:25,320 But the good news is that it's not a complete black hole. 149 00:06:25,320 --> 00:06:27,780 When you look at the startups that have been successful, 150 00:06:27,780 --> 00:06:29,515 the innovators that have built these products that 151 00:06:29,515 --> 00:06:31,470 have been successful in markets, what you'll see 152 00:06:31,470 --> 00:06:33,770 is time and again, the same patterns emerging of the things 153 00:06:33,770 --> 00:06:34,640 that they're doing. 154 00:06:34,640 --> 00:06:38,320 And a lot of these, when you kind of dig down into them, 155 00:06:38,320 --> 00:06:42,070 they're kind of predicated on a lot of the principles behind Lean and Agile-- 156 00:06:42,070 --> 00:06:45,900 and people just taking those and saying, how can these make sense for a startup? 157 00:06:45,900 --> 00:06:48,160 >> So I want to go through these. 158 00:06:48,160 --> 00:06:50,884 To be honest, I think I'd like to spend about half 159 00:06:50,884 --> 00:06:52,550 the time on this last one-- this "Focus! 160 00:06:52,550 --> 00:06:53,490 And get shit done." 161 00:06:53,490 --> 00:06:55,839 Because really, that's what it comes down to. 162 00:06:55,839 --> 00:06:58,380 But I think the first four are really important to understand 163 00:06:58,380 --> 00:07:00,120 the context and the mindset that you need 164 00:07:00,120 --> 00:07:03,020 to enter into when you're doing something really innovative that 165 00:07:03,020 --> 00:07:06,120 hasn't been done before. 166 00:07:06,120 --> 00:07:08,287 >> So the first principle is eliminate waste, 167 00:07:08,287 --> 00:07:10,370 which, if you know anything about Lean principles, 168 00:07:10,370 --> 00:07:14,520 that's one of the key principles of Lean. 169 00:07:14,520 --> 00:07:17,170 And, in fact, Eric Ries, who's the creator of the Lean startup 170 00:07:17,170 --> 00:07:20,960 methodology, says the number one most important thing for a startup 171 00:07:20,960 --> 00:07:24,580 is learning to tell the difference between value and waste-- 172 00:07:24,580 --> 00:07:27,310 which is pretty weird, right? 173 00:07:27,310 --> 00:07:30,150 Like how could you not know what's value and what's waste? 174 00:07:30,150 --> 00:07:33,830 >> But I think it makes more sense if you think about the roots of Lean. 175 00:07:33,830 --> 00:07:38,560 So Lean comes from Lean manufacturing Toyota Production System in Japan. 176 00:07:38,560 --> 00:07:43,550 And "waste" is a translation from the term "muda," which is actually broader. 177 00:07:43,550 --> 00:07:45,860 So really, what you want to do is eliminated muda. 178 00:07:45,860 --> 00:07:48,260 And muda means not just anything that's unproductive, 179 00:07:48,260 --> 00:07:50,784 but anything that isn't adding value today. 180 00:07:50,784 --> 00:07:52,700 Because especially when you're doing something 181 00:07:52,700 --> 00:07:56,110 so uncertain as doing a startup, creating something innovative, 182 00:07:56,110 --> 00:07:58,900 if you think that you're going this way and you 183 00:07:58,900 --> 00:08:01,254 start building something for this, and then you 184 00:08:01,254 --> 00:08:03,420 find out what's really going on and you go this way, 185 00:08:03,420 --> 00:08:05,440 then anything you did over here is wasteful, right? 186 00:08:05,440 --> 00:08:07,110 And so in Agile, we have an expression called 187 00:08:07,110 --> 00:08:08,710 YAGNI, which is "You Ain't Gonna Need It." 188 00:08:08,710 --> 00:08:09,340 >> [CHUCKLES] 189 00:08:09,340 --> 00:08:12,630 >> So it's a really good thing to remember as you're building new technologies. 190 00:08:12,630 --> 00:08:14,713 Anything that you think that you're going to need, 191 00:08:14,713 --> 00:08:18,510 just assume that you're not until you do. 192 00:08:18,510 --> 00:08:22,410 >> So it's interesting to look at examples of startups that have made it 193 00:08:22,410 --> 00:08:24,200 and see where they came from. 194 00:08:24,200 --> 00:08:28,612 So PayPal actually started as a way to beam payments between PDAs. 195 00:08:28,612 --> 00:08:31,320 But it turned out that the world wasn't ready for mobile payments 196 00:08:31,320 --> 00:08:32,220 in '99, right? 197 00:08:32,220 --> 00:08:35,919 We're only just starting to get there now. 198 00:08:35,919 --> 00:08:39,734 >> Flickr started as a massively multiplayer online role playing game. 199 00:08:39,734 --> 00:08:41,900 But it turned out, like when people were playing it, 200 00:08:41,900 --> 00:08:43,875 that the most fun aspect was sharing photos. 201 00:08:43,875 --> 00:08:45,810 It's kind of funny. 202 00:08:45,810 --> 00:08:50,140 >> And then Instagram started as a gamified Foursquare. 203 00:08:50,140 --> 00:08:53,300 And they actually built out the entire app and looked at it, and went wow, 204 00:08:53,300 --> 00:08:54,800 there is way too much going on here. 205 00:08:54,800 --> 00:08:55,920 This is way too complex. 206 00:08:55,920 --> 00:08:58,070 And they just scrapped the whole thing and said, you know what? 207 00:08:58,070 --> 00:09:00,040 We're just going to focus again on the photos. 208 00:09:00,040 --> 00:09:01,812 And that was what was successful for them. 209 00:09:01,812 --> 00:09:04,520 And so these are the ones that made it, but when you kind of look 210 00:09:04,520 --> 00:09:06,760 across the board, the stats are pretty bleak. 211 00:09:06,760 --> 00:09:09,480 Because the stats are that nine out of ten new products fail, 212 00:09:09,480 --> 00:09:10,690 which is pretty abysmal. 213 00:09:10,690 --> 00:09:15,070 And as developers, as people who work with technology, 214 00:09:15,070 --> 00:09:17,100 I think when we look at a stat like this, 215 00:09:17,100 --> 00:09:19,260 we understand how hard it is to build the tech when 216 00:09:19,260 --> 00:09:21,551 you're building something that's not been built before. 217 00:09:21,551 --> 00:09:24,700 And we assume that these are failing because we can't build the technology. 218 00:09:24,700 --> 00:09:28,780 But when you really dig deep, what's happening-- these products 219 00:09:28,780 --> 00:09:31,170 aren't failing because the technology didn't work. 220 00:09:31,170 --> 00:09:33,160 They're failing because the people who created 221 00:09:33,160 --> 00:09:36,140 them weren't able to find a market for them. 222 00:09:36,140 --> 00:09:39,510 >> My favorite example of this is a company called 223 00:09:39,510 --> 00:09:42,250 Actuality Systems, which was actually here in Boston. 224 00:09:42,250 --> 00:09:44,510 They created a 3D holographic display. 225 00:09:44,510 --> 00:09:46,940 That's pretty badass, right? 226 00:09:46,940 --> 00:09:49,290 They create it, and they got it working, and then 227 00:09:49,290 --> 00:09:51,530 they spent the next 10 years-- so they created this. 228 00:09:51,530 --> 00:09:52,960 This would be impressive to create today, right? 229 00:09:52,960 --> 00:09:54,459 They created this over 10 years ago. 230 00:09:54,459 --> 00:09:58,340 They spent the next 10 years trying unsuccessfully to find a market for it 231 00:09:58,340 --> 00:10:01,340 and create a viable business out of it, and in the end had to shut down, 232 00:10:01,340 --> 00:10:04,700 and all they could do was sell off a license for the technology. 233 00:10:04,700 --> 00:10:06,444 So were they successful in innovating? 234 00:10:06,444 --> 00:10:08,110 I mean, they got the technology to work. 235 00:10:08,110 --> 00:10:09,090 That's amazing. 236 00:10:09,090 --> 00:10:12,280 But if you're trying to actually build a viable business out of this, 237 00:10:12,280 --> 00:10:15,130 not so much. 238 00:10:15,130 --> 00:10:19,210 >> And so what's interesting is there's been research 239 00:10:19,210 --> 00:10:22,675 into what's the single biggest predictor of startup failure. 240 00:10:22,675 --> 00:10:26,784 Do any of you want to guess what this is? 241 00:10:26,784 --> 00:10:29,070 >> AUDIENCE: No market? 242 00:10:29,070 --> 00:10:31,275 >> ABBY FICHTNER: No market, yes. 243 00:10:31,275 --> 00:10:34,400 So something that actually I should have said-- something that startups do, 244 00:10:34,400 --> 00:10:36,890 that if they do this thing, it's the biggest predictor that they're 245 00:10:36,890 --> 00:10:38,556 going to fail, or the biggest indicator. 246 00:10:38,556 --> 00:10:41,980 247 00:10:41,980 --> 00:10:46,610 So no market is sort of something that happens to them. 248 00:10:46,610 --> 00:10:48,480 >> So Don [INAUDIBLE] did a survey into this, 249 00:10:48,480 --> 00:10:51,355 and what he found was the single biggest predictor of startup failure 250 00:10:51,355 --> 00:10:57,230 was sticking to the initial business plan-- which 251 00:10:57,230 --> 00:10:59,630 is pretty confusing, right? 252 00:10:59,630 --> 00:11:03,260 Because if you're starting on any new venture, 253 00:11:03,260 --> 00:11:05,810 you should try to figure out if you're on track or not. 254 00:11:05,810 --> 00:11:09,160 Even that terminology, on track, implies that you're talking according to plan. 255 00:11:09,160 --> 00:11:11,618 And so if sticking to plan means that you're going to fail, 256 00:11:11,618 --> 00:11:13,240 it's very confusing. 257 00:11:13,240 --> 00:11:14,570 Right? 258 00:11:14,570 --> 00:11:17,260 >> And so that brings us to innovation pattern number 259 00:11:17,260 --> 00:11:19,800 two, which is that you should really start small. 260 00:11:19,800 --> 00:11:21,600 And this sort of breaks our mental model, 261 00:11:21,600 --> 00:11:24,020 I think, for how people think about how startups operate. 262 00:11:24,020 --> 00:11:27,430 Because I feel like we've got this image of startups as go big or go home, baby. 263 00:11:27,430 --> 00:11:27,960 Right? 264 00:11:27,960 --> 00:11:29,784 Like I've got a big vision, and boom. 265 00:11:29,784 --> 00:11:32,242 I'm going to go big, and I'm going to be the next Facebook. 266 00:11:32,242 --> 00:11:34,310 >> But the question is how do you do that, right? 267 00:11:34,310 --> 00:11:37,950 How do you go from nothing but an idea to like a billion users, 268 00:11:37,950 --> 00:11:39,910 like Facebook has? 269 00:11:39,910 --> 00:11:42,985 How would you even build out enough features from day one 270 00:11:42,985 --> 00:11:45,460 that you could appeal to a billion users? 271 00:11:45,460 --> 00:11:47,980 And even if you wanted to build the next Facebook 272 00:11:47,980 --> 00:11:50,030 tomorrow, how do you start getting people on it? 273 00:11:50,030 --> 00:11:54,120 Because would any of you use "the next Facebook" if no one you knew was on it? 274 00:11:54,120 --> 00:11:55,860 Probably not, right? 275 00:11:55,860 --> 00:12:00,320 >> And so what I view startups as-- when you're really early 276 00:12:00,320 --> 00:12:04,070 stages-- sort of doing the search for the intersection of our big vision 277 00:12:04,070 --> 00:12:08,120 of what we want to accomplish with what reality can actually accommodate today. 278 00:12:08,120 --> 00:12:10,870 And the way that you do this is usually through a series 279 00:12:10,870 --> 00:12:14,137 of small experiments or small tasks. 280 00:12:14,137 --> 00:12:16,970 So just to take a couple examples of companies that have made it big 281 00:12:16,970 --> 00:12:19,474 and how they started, Microsoft started with writing 282 00:12:19,474 --> 00:12:21,640 a version of BASIC, which is a programming language, 283 00:12:21,640 --> 00:12:24,570 for the Altair, which was like the first home computer. 284 00:12:24,570 --> 00:12:27,320 So I don't know exactly how many Altairs were made, 285 00:12:27,320 --> 00:12:29,560 but I'm guessing only a few thousand. 286 00:12:29,560 --> 00:12:31,950 So this is not a big market, right? 287 00:12:31,950 --> 00:12:35,415 >> And then, of course, Facebook, which is the quintessential-- go big, 288 00:12:35,415 --> 00:12:37,890 become the next Facebook-- started here at Harvard, 289 00:12:37,890 --> 00:12:39,530 where there's only 20,000 students. 290 00:12:39,530 --> 00:12:41,170 So again, not a big market. 291 00:12:41,170 --> 00:12:45,190 And so when you're thinking about the mental model for how startups 292 00:12:45,190 --> 00:12:47,140 should look, it should look more like this. 293 00:12:47,140 --> 00:12:50,230 You start with your big vision, but then you go small. 294 00:12:50,230 --> 00:12:53,040 And you figure out a way to dominate a really niche market, 295 00:12:53,040 --> 00:12:56,047 and then you can build on that success to go big. 296 00:12:56,047 --> 00:12:57,630 And there's a couple reasons for this. 297 00:12:57,630 --> 00:13:02,930 One is if we accept the fact that sticking to the initial business plan's 298 00:13:02,930 --> 00:13:05,600 going to fail, we're going to find 10,000 ways that don't work, 299 00:13:05,600 --> 00:13:07,840 whatever, we're going to make a lot of mistakes. 300 00:13:07,840 --> 00:13:10,140 We're going to have a lot of misses. 301 00:13:10,140 --> 00:13:13,140 If we try to go big, we're going to use up all of our time and resources 302 00:13:13,140 --> 00:13:13,940 on the wrong thing. 303 00:13:13,940 --> 00:13:17,220 And so it's much better to go small so we can experiment quickly. 304 00:13:17,220 --> 00:13:19,970 >> But even more importantly, it's so much easier 305 00:13:19,970 --> 00:13:22,819 to be successful when we go small, because all you have to do 306 00:13:22,819 --> 00:13:25,860 is find that market that you want to go after-- that really niche market. 307 00:13:25,860 --> 00:13:28,193 And then just identify the one thing that they're really 308 00:13:28,193 --> 00:13:29,880 dying to have, and build that for them. 309 00:13:29,880 --> 00:13:31,690 And then you can be really compelling. 310 00:13:31,690 --> 00:13:35,782 >> So like the Altair users really wanted a way to program their computer. 311 00:13:35,782 --> 00:13:38,240 And I don't know-- I think it was just like toggle switches 312 00:13:38,240 --> 00:13:39,185 and blinking lights, right? 313 00:13:39,185 --> 00:13:40,601 So I don't know how they did that. 314 00:13:40,601 --> 00:13:43,510 So providing BASIC so they could program it is amazing. 315 00:13:43,510 --> 00:13:46,660 Or Harvard students just wanted a single, centralized student directory, 316 00:13:46,660 --> 00:13:47,160 right? 317 00:13:47,160 --> 00:13:49,410 And so Facebook only had to provide that one feature. 318 00:13:49,410 --> 00:13:52,451 They didn't have to build it out like it is today to really get traction. 319 00:13:52,451 --> 00:13:55,080 320 00:13:55,080 --> 00:13:58,210 >> So that takes us to number three, which is in order 321 00:13:58,210 --> 00:14:01,940 to find that one feature that your market is really dying for, 322 00:14:01,940 --> 00:14:04,130 you have to really deeply understand your customers. 323 00:14:04,130 --> 00:14:06,890 324 00:14:06,890 --> 00:14:11,030 And I feel like people underestimate the importance of this-- 325 00:14:11,030 --> 00:14:13,871 especially today, when there's so many startups that are out there. 326 00:14:13,871 --> 00:14:16,620 If you are really looking at what's going on in the startup space, 327 00:14:16,620 --> 00:14:18,950 you're going to find 100 startups all doing the same thing. 328 00:14:18,950 --> 00:14:19,210 Right? 329 00:14:19,210 --> 00:14:22,140 >> And that's because everybody can see that technology is here today, right? 330 00:14:22,140 --> 00:14:23,200 But we want to be here. 331 00:14:23,200 --> 00:14:25,780 So people see those gaps, and everybody tries to go after those gaps. 332 00:14:25,780 --> 00:14:27,260 And you have all these startups all doing the same thing, 333 00:14:27,260 --> 00:14:29,343 and you're like, why isn't any of them succeeding? 334 00:14:29,343 --> 00:14:30,479 There's a gap here. 335 00:14:30,479 --> 00:14:32,520 I believe that the ones that are going to succeed 336 00:14:32,520 --> 00:14:36,340 are the ones that take the time to really understand their customers. 337 00:14:36,340 --> 00:14:38,820 A great example of this, I think, is Dropbox. 338 00:14:38,820 --> 00:14:42,280 When Drew Houston, the founder, went to try to raise money for Dropbox, 339 00:14:42,280 --> 00:14:43,826 the VCs really discouraged him. 340 00:14:43,826 --> 00:14:46,700 They're like, I don't understand why you're even entering this space. 341 00:14:46,700 --> 00:14:50,490 There's already like a million billion cloud storage startups out there. 342 00:14:50,490 --> 00:14:54,000 >> And Drew was like, yeah, but do you use any of them? 343 00:14:54,000 --> 00:14:54,730 And they weren't. 344 00:14:54,730 --> 00:14:57,120 And so I feel like Drew succeeded because A, 345 00:14:57,120 --> 00:14:58,520 he started with a small market. 346 00:14:58,520 --> 00:14:59,730 He didn't try to go after everybody. 347 00:14:59,730 --> 00:15:01,521 He went after the hardcore techies who have 348 00:15:01,521 --> 00:15:03,440 a lot of devices, a lot of computers, and they 349 00:15:03,440 --> 00:15:05,040 have this problem in transferring files. 350 00:15:05,040 --> 00:15:06,123 And he just targeted them. 351 00:15:06,123 --> 00:15:09,780 And all he had to do was provide a solution that worked for them. 352 00:15:09,780 --> 00:15:13,110 >> So again, I feel like there's a lot of myths around startups, 353 00:15:13,110 --> 00:15:15,770 because we see so many startups happening today. 354 00:15:15,770 --> 00:15:19,010 And you just hear the 20,000 foot view of oh, they made it overnight. 355 00:15:19,010 --> 00:15:21,130 They were a success. 356 00:15:21,130 --> 00:15:24,919 But the myth of if you build it, they will come-- when you really 357 00:15:24,919 --> 00:15:27,460 dig deep into what's happening in those success stories, time 358 00:15:27,460 --> 00:15:29,460 and again, I think what you'll find are founders 359 00:15:29,460 --> 00:15:32,795 who went to these extraordinary lengths to understand their customers. 360 00:15:32,795 --> 00:15:35,920 So just to give a couple examples-- I don't know if this is still the case, 361 00:15:35,920 --> 00:15:39,100 but at least initially, one of the co-founders of Airbnb 362 00:15:39,100 --> 00:15:40,320 did not own or rent a home. 363 00:15:40,320 --> 00:15:42,800 He just went around and lived in Airbnbs. 364 00:15:42,800 --> 00:15:46,610 Like I don't even know what that looked like-- like living out of a suitcase? 365 00:15:46,610 --> 00:15:49,000 >> Or Ben Silverman from Pinterest is amazing at this. 366 00:15:49,000 --> 00:15:53,135 He went and personally reached out to the first 5,000 customers. 367 00:15:53,135 --> 00:15:54,260 He gave them his cellphone. 368 00:15:54,260 --> 00:15:55,780 He met them for breakfast. 369 00:15:55,780 --> 00:15:58,500 I just spoke to their CTO a couple weeks ago. 370 00:15:58,500 --> 00:16:00,360 And they're entering into new countries now, 371 00:16:00,360 --> 00:16:01,890 and he's going out and doing it again. 372 00:16:01,890 --> 00:16:04,723 So he's incredible for going out and individually talking to people. 373 00:16:04,723 --> 00:16:06,612 374 00:16:06,612 --> 00:16:09,570 So, of course, as you're going out and having these conversations, what 375 00:16:09,570 --> 00:16:12,069 you want to be doing is always learning from your customer 376 00:16:12,069 --> 00:16:14,860 about what's going to make sense and what's going to be successful. 377 00:16:14,860 --> 00:16:17,410 378 00:16:17,410 --> 00:16:19,910 I feel like the best startups, the best innovators, 379 00:16:19,910 --> 00:16:23,410 treat innovation as if it was a science experiment-- or in a very 380 00:16:23,410 --> 00:16:25,740 scientific way, I guess I should say. 381 00:16:25,740 --> 00:16:29,000 >> So I'm not a scientist, but as I understand, scientists come up 382 00:16:29,000 --> 00:16:33,120 with hypotheses, and then they develop experiments to validate or invalidate 383 00:16:33,120 --> 00:16:34,114 their hypotheses. 384 00:16:34,114 --> 00:16:36,530 And so the question is how can we do that with innovation? 385 00:16:36,530 --> 00:16:38,340 We have an idea, but it's just an idea. 386 00:16:38,340 --> 00:16:41,051 If we're truly doing something that's never been done before, 387 00:16:41,051 --> 00:16:42,050 all we have are guesses. 388 00:16:42,050 --> 00:16:42,610 Right? 389 00:16:42,610 --> 00:16:46,290 And so what are some experiments that we can do to validate or invalidate 390 00:16:46,290 --> 00:16:50,060 those ideas without building out the entire thing? 391 00:16:50,060 --> 00:16:53,710 >> So talking is great, and I can't actually 392 00:16:53,710 --> 00:16:55,770 emphasize how strongly-- how important it 393 00:16:55,770 --> 00:16:59,115 is to go out and talk to your customers, at least initially, 394 00:16:59,115 --> 00:17:01,679 to understand who they are, what problems they 395 00:17:01,679 --> 00:17:03,470 have today, how they're solving them today. 396 00:17:03,470 --> 00:17:05,349 But talking can only take you so far. 397 00:17:05,349 --> 00:17:05,849 Right? 398 00:17:05,849 --> 00:17:09,030 You can't use talking to say, hey, I've got this great idea! 399 00:17:09,030 --> 00:17:10,329 Do you want to buy it? 400 00:17:10,329 --> 00:17:12,537 Because they're going to be like, oh, yeah of course. 401 00:17:12,537 --> 00:17:13,470 That sounds great. 402 00:17:13,470 --> 00:17:16,437 >> Because people want to encourage you. 403 00:17:16,437 --> 00:17:19,520 They see that you're excited about something, so they're going to say yes. 404 00:17:19,520 --> 00:17:22,890 And people-- human beings are just terrible at predicting their behavior. 405 00:17:22,890 --> 00:17:26,650 And so if you ask them-- if you say, I'm going to, at some point in a future, 406 00:17:26,650 --> 00:17:31,455 release this abstract, hypothetical product, are you going to want it? 407 00:17:31,455 --> 00:17:34,080 They might say no, but if you actually put it in front of them, 408 00:17:34,080 --> 00:17:34,630 they might want it. 409 00:17:34,630 --> 00:17:36,700 >> And so really, to do the test of understanding 410 00:17:36,700 --> 00:17:38,110 if people are going to want it or not, you really 411 00:17:38,110 --> 00:17:39,820 need to put something in front of them. 412 00:17:39,820 --> 00:17:43,330 So I like this quote from Linus Torvalds, which is "Talk is cheap. 413 00:17:43,330 --> 00:17:45,060 Show me the code." 414 00:17:45,060 --> 00:17:47,310 Or if you're a startup, you might say, "Talk is cheap. 415 00:17:47,310 --> 00:17:49,170 Show me the MVP." 416 00:17:49,170 --> 00:17:52,210 >> So have you guys heard MVP, Minimum Viable Product? 417 00:17:52,210 --> 00:17:55,250 It's kind of this buzzword that I love and hate at the same time. 418 00:17:55,250 --> 00:17:59,050 Because I love the concept of it, but it gets a little bit overused. 419 00:17:59,050 --> 00:18:02,310 But the idea is valid, which is don't go build out 420 00:18:02,310 --> 00:18:04,700 this product that's going to take you a year to build. 421 00:18:04,700 --> 00:18:08,260 Instead, figure out what's that one thing that people are dying for? 422 00:18:08,260 --> 00:18:10,310 What's the minimum thing I can build for them? 423 00:18:10,310 --> 00:18:14,500 And put that in front of them, and see how they react. 424 00:18:14,500 --> 00:18:18,755 >> So quintessential MVP is a landing page. 425 00:18:18,755 --> 00:18:20,130 I'm sure you guys have seen this. 426 00:18:20,130 --> 00:18:25,257 If you tried to sign up for Ello or Gmail's new inbox, and they're like oh, 427 00:18:25,257 --> 00:18:26,090 we're not ready yet! 428 00:18:26,090 --> 00:18:28,040 I guess those are a little different, because those are ready. 429 00:18:28,040 --> 00:18:31,180 But they give you a landing page, and it's like, it's invite only right now. 430 00:18:31,180 --> 00:18:32,490 But give us your email address. 431 00:18:32,490 --> 00:18:33,512 Right 432 00:18:33,512 --> 00:18:36,470 A lot of places will do this before they've even built out the product, 433 00:18:36,470 --> 00:18:38,094 just to see if there's interest or not. 434 00:18:38,094 --> 00:18:41,420 So with Dropbox, drew Houston, there was complex technology behind it. 435 00:18:41,420 --> 00:18:44,420 So he went, and he figured out the technology-- kind of proved that out, 436 00:18:44,420 --> 00:18:45,586 that that was going to work. 437 00:18:45,586 --> 00:18:48,040 But before he built out the final product, 438 00:18:48,040 --> 00:18:51,730 he did this mock-up on his computer, this three-minute screencast 439 00:18:51,730 --> 00:18:54,497 video-- very scrappy. 440 00:18:54,497 --> 00:18:57,330 Put it out on Hacker News, because he knew was sort of his audience, 441 00:18:57,330 --> 00:18:58,950 were the really technical people. 442 00:18:58,950 --> 00:19:01,430 Put up a landing page that just said, here's the video. 443 00:19:01,430 --> 00:19:04,850 We haven't launched yet, but if you're interested, give us your email address. 444 00:19:04,850 --> 00:19:08,642 >> Overnight, got 75,000 sign-ups, which is incredible. 445 00:19:08,642 --> 00:19:10,850 Even today, that would be impressive, but today, they 446 00:19:10,850 --> 00:19:12,520 have like 300 million users, right? 447 00:19:12,520 --> 00:19:14,450 When he posted this, nobody knew who Dropbox 448 00:19:14,450 --> 00:19:16,320 was because they didn't exist yet. 449 00:19:16,320 --> 00:19:19,420 And so that was a really strong signal that he had gotten something right. 450 00:19:19,420 --> 00:19:22,490 451 00:19:22,490 --> 00:19:27,260 >> To give you a little bit more extensive of an example of that, 452 00:19:27,260 --> 00:19:29,800 do you guys know Buffer? 453 00:19:29,800 --> 00:19:32,350 It's a social media sharing site, and the idea 454 00:19:32,350 --> 00:19:36,440 is-- I tend to read news at like 2:00 AM, because I 455 00:19:36,440 --> 00:19:37,620 don't want to go to sleep. 456 00:19:37,620 --> 00:19:39,540 And so I might read like 10 articles that are all really cool 457 00:19:39,540 --> 00:19:41,081 and I want to share them with people. 458 00:19:41,081 --> 00:19:43,630 But A, if I share them out on Twitter right now, 459 00:19:43,630 --> 00:19:45,370 nobody is awake at 2:00 AM except for me. 460 00:19:45,370 --> 00:19:47,453 And B, if they are awake, they're like why are you 461 00:19:47,453 --> 00:19:49,489 spamming me with 10 articles at once, right? 462 00:19:49,489 --> 00:19:51,780 And so what it does is it's kind of a queue or a buffer 463 00:19:51,780 --> 00:19:56,330 that you add things to, and it'll push them out a couple times a day 464 00:19:56,330 --> 00:19:58,570 at a more realistic schedule. 465 00:19:58,570 --> 00:20:00,050 >> So this is how it looks today. 466 00:20:00,050 --> 00:20:02,030 That's not how it started. 467 00:20:02,030 --> 00:20:05,639 The founder had this idea, and he thought this was a good idea, 468 00:20:05,639 --> 00:20:06,930 but he didn't want to build it. 469 00:20:06,930 --> 00:20:08,964 He didn't want to quit his day job yet until he 470 00:20:08,964 --> 00:20:11,880 got some validation that other people thought it was a good idea, too. 471 00:20:11,880 --> 00:20:13,342 So he didn't even need a video. 472 00:20:13,342 --> 00:20:14,550 It was such a simple concept. 473 00:20:14,550 --> 00:20:17,630 >> Just start with Twitter, puts up a landing page. 474 00:20:17,630 --> 00:20:18,590 This is what we do. 475 00:20:18,590 --> 00:20:19,540 He tweets it out. 476 00:20:19,540 --> 00:20:23,755 When people click Plans and Pricing, it just gives them 477 00:20:23,755 --> 00:20:26,380 a "you caught us before we're ready." but if you're interested, 478 00:20:26,380 --> 00:20:27,810 give us your email address. 479 00:20:27,810 --> 00:20:28,600 Tweets it out. 480 00:20:28,600 --> 00:20:30,460 People went to the site. 481 00:20:30,460 --> 00:20:31,960 They were given their email address. 482 00:20:31,960 --> 00:20:35,250 >> He was like, OK, that's a pretty good indicator that there's some interest, 483 00:20:35,250 --> 00:20:36,920 so I'm ready to go to the next step. 484 00:20:36,920 --> 00:20:38,300 But I don't want to build it yet. 485 00:20:38,300 --> 00:20:41,216 I want to see-- people are interested, but can I make money off of it? 486 00:20:41,216 --> 00:20:42,570 Can I make it into a business? 487 00:20:42,570 --> 00:20:47,450 So all he did was added a middle page when people clicked Plans and Pricing 488 00:20:47,450 --> 00:20:49,160 with three pricing plans-- one was free. 489 00:20:49,160 --> 00:20:50,640 Two were paid. 490 00:20:50,640 --> 00:20:51,980 >> Kept tweeting it out. 491 00:20:51,980 --> 00:20:53,892 People kept clicking. 492 00:20:53,892 --> 00:20:56,600 Most people did the free plan, but some people did the paid plan. 493 00:20:56,600 --> 00:20:57,641 He's like, you know what? 494 00:20:57,641 --> 00:21:00,850 That's enough validation-- not for me maybe to quit my day job 495 00:21:00,850 --> 00:21:03,770 and spend a year on this, but for me to just go heads-down and do 496 00:21:03,770 --> 00:21:05,880 a really simple version of this. 497 00:21:05,880 --> 00:21:07,630 He thought it was going to take him a day. 498 00:21:07,630 --> 00:21:09,713 Technology's hard, so it took him like seven days. 499 00:21:09,713 --> 00:21:12,620 But it was enough for him to spend seven days on it. 500 00:21:12,620 --> 00:21:16,097 >> And very quickly, he started getting users on that first version, 501 00:21:16,097 --> 00:21:17,430 even though it was very minimal. 502 00:21:17,430 --> 00:21:19,180 And what was awesome about that was he was 503 00:21:19,180 --> 00:21:22,120 able to see how people were really using it, 504 00:21:22,120 --> 00:21:25,260 and then kind of evolve it based on them using it. 505 00:21:25,260 --> 00:21:27,760 So Buffer's wonderful, because it's a really simple example. 506 00:21:27,760 --> 00:21:29,560 Not all technology is that simple, but this 507 00:21:29,560 --> 00:21:32,250 is sort of the quintessential Lean startup approach, right? 508 00:21:32,250 --> 00:21:34,260 This is great-- you're testing it every step, 509 00:21:34,260 --> 00:21:36,257 and you're only going far enough that you've 510 00:21:36,257 --> 00:21:38,340 validated that it's kind of worth your time to do. 511 00:21:38,340 --> 00:21:41,330 512 00:21:41,330 --> 00:21:44,170 >> Another great way to get validation, of course, 513 00:21:44,170 --> 00:21:46,940 is doing a crowdfunding campaign like Kickstarter, 514 00:21:46,940 --> 00:21:48,630 where you can get pre-orders. 515 00:21:48,630 --> 00:21:51,710 This makes a lot of sense if you're doing anything that's hardware. 516 00:21:51,710 --> 00:21:54,760 Again, Pebble was the biggest Kickstarter 517 00:21:54,760 --> 00:22:01,170 until that title got taken by a cooler-- did you guys see this? 518 00:22:01,170 --> 00:22:04,030 Like an actual cooler that you bring to the picnic beat out, 519 00:22:04,030 --> 00:22:05,446 so they got more than $10 million. 520 00:22:05,446 --> 00:22:06,998 [LAUGHS SLIGHTLY] 521 00:22:06,998 --> 00:22:08,489 522 00:22:08,489 --> 00:22:11,700 >> But again, like Dropbox, with Pebble, it was complex technology. 523 00:22:11,700 --> 00:22:14,899 They had to do a proof of concept, make sure they could prove out 524 00:22:14,899 --> 00:22:16,190 that the technology could work. 525 00:22:16,190 --> 00:22:19,830 But then it's expensive to manufacture, so before they actually manufactured, 526 00:22:19,830 --> 00:22:21,310 they put up a Kickstarter. 527 00:22:21,310 --> 00:22:24,170 And they used it to get pre-orders, right? 528 00:22:24,170 --> 00:22:26,570 They said if we can get $100,000 in pre-orders, 529 00:22:26,570 --> 00:22:28,420 it's worth it to go forward. 530 00:22:28,420 --> 00:22:31,390 They got $10 million, so doing pretty good-- pretty good validation. 531 00:22:31,390 --> 00:22:33,950 532 00:22:33,950 --> 00:22:39,090 >> So these ideas are all really great, but as we say in startups, 533 00:22:39,090 --> 00:22:40,159 ideas are a dime a dozen. 534 00:22:40,159 --> 00:22:41,200 It's all about execution. 535 00:22:41,200 --> 00:22:44,300 536 00:22:44,300 --> 00:22:46,310 So this is my favorite part is the "Focus! 537 00:22:46,310 --> 00:22:49,750 And get shit done." 538 00:22:49,750 --> 00:22:53,110 So the best entrepreneurs are able to just have 539 00:22:53,110 --> 00:22:58,280 this crazy, intense hyper-focus and get things done at an amazing pace. 540 00:22:58,280 --> 00:23:03,940 >> So I kind of walk through some of the development practices. 541 00:23:03,940 --> 00:23:06,330 And ask questions if you have them. 542 00:23:06,330 --> 00:23:09,870 I wasn't quite sure how much you guys knew about development practices, 543 00:23:09,870 --> 00:23:12,610 so kind of have a discussion about what that 544 00:23:12,610 --> 00:23:15,890 looks like when you're developing something like this. 545 00:23:15,890 --> 00:23:17,900 So the first thing is to figure out OK, what 546 00:23:17,900 --> 00:23:21,205 is it that I should be focusing on-- which can be really challenging when 547 00:23:21,205 --> 00:23:22,330 you're doing something new. 548 00:23:22,330 --> 00:23:23,940 Because everybody has all these ideas, and there's 549 00:23:23,940 --> 00:23:26,310 so many different directions you can go, and so many different questions 550 00:23:26,310 --> 00:23:27,480 that you have. 551 00:23:27,480 --> 00:23:29,615 >> So step number one, figure out what to focus on. 552 00:23:29,615 --> 00:23:32,740 A lot of times, as developers, as people who are thinking about technology, 553 00:23:32,740 --> 00:23:34,448 we're really thinking about the products. 554 00:23:34,448 --> 00:23:37,720 We think about things kind of in this order-- first, can I build it? 555 00:23:37,720 --> 00:23:41,420 Assuming that I can build it, then can I get people to know about it? 556 00:23:41,420 --> 00:23:44,490 Assuming that I can, can I make money from it? 557 00:23:44,490 --> 00:23:47,820 >> But if we're trying to do a viable business, 558 00:23:47,820 --> 00:23:51,620 we might want to be thinking of those in the opposite order. 559 00:23:51,620 --> 00:23:55,246 The reason is I feel like-- and I do this myself, so I get it. 560 00:23:55,246 --> 00:23:57,620 I feel like we get very hung up on this "Can I build it?" 561 00:23:57,620 --> 00:24:01,154 question, because if you're a technology person-- if you're a developer-- 562 00:24:01,154 --> 00:24:02,570 you're really thinking about that. 563 00:24:02,570 --> 00:24:05,580 >> But the truth is usually, when we come up with an idea for a startup, 564 00:24:05,580 --> 00:24:08,337 we're coming up with it based on I've seen this technology here 565 00:24:08,337 --> 00:24:10,420 and this technology here and this technology here, 566 00:24:10,420 --> 00:24:12,190 and if I just combine them in some new way, 567 00:24:12,190 --> 00:24:13,815 I think it would be really interesting. 568 00:24:13,815 --> 00:24:16,610 Well, if I've already seen the technology in those places, 569 00:24:16,610 --> 00:24:18,160 you kind of know it exists, right? 570 00:24:18,160 --> 00:24:20,340 >> So sure, do some proof of concepts. 571 00:24:20,340 --> 00:24:22,360 If there's some technical risk in there. 572 00:24:22,360 --> 00:24:24,530 But for the most part, the things that we're coming up with-- 573 00:24:24,530 --> 00:24:26,960 unless we're really awesome and doing something totally new, in which case, 574 00:24:26,960 --> 00:24:28,530 figure out if you can build it. 575 00:24:28,530 --> 00:24:31,420 But usually, most of the startups I see, you can build it. 576 00:24:31,420 --> 00:24:34,100 That isn't even a question. 577 00:24:34,100 --> 00:24:37,620 >> So start thinking about is something that people 578 00:24:37,620 --> 00:24:42,070 are going to be able to pay me for And then how am I going to reach them? 579 00:24:42,070 --> 00:24:45,560 That's really hard, especially if you are a technical person, 580 00:24:45,560 --> 00:24:48,000 do you have a way to reach out to these people 581 00:24:48,000 --> 00:24:51,140 and get them to buy your product? 582 00:24:51,140 --> 00:24:57,344 >> So once you figure out, OK, what's that question-- kind of always have in mind, 583 00:24:57,344 --> 00:25:00,260 this is the most important question that I need to be driving towards, 584 00:25:00,260 --> 00:25:02,250 or the most important thing that I need to be validating. 585 00:25:02,250 --> 00:25:04,670 And then you want to get back to this notion of eliminating waste. 586 00:25:04,670 --> 00:25:07,030 Just figure out like the leanest, most efficient way 587 00:25:07,030 --> 00:25:10,110 that you can go about answering that question. 588 00:25:10,110 --> 00:25:12,690 >> So I talked about minimum viable product. 589 00:25:12,690 --> 00:25:17,584 I would say get into this mindset of minimum viable everything-- 590 00:25:17,584 --> 00:25:20,500 by which I don't mean that you should be doing a crappy job at things. 591 00:25:20,500 --> 00:25:22,924 I just mean how can you cut out the waste? 592 00:25:22,924 --> 00:25:25,090 How do you get just right to the heart of the matter 593 00:25:25,090 --> 00:25:29,010 and figure out how to validate things without gold-plating, 594 00:25:29,010 --> 00:25:31,460 without doing more than you need to. 595 00:25:31,460 --> 00:25:35,040 >> So just to give some examples, I feel like initially, you're 596 00:25:35,040 --> 00:25:36,874 trying to figure out I have this great idea. 597 00:25:36,874 --> 00:25:38,206 Is anyone even going to want it? 598 00:25:38,206 --> 00:25:41,310 So a really easy way to do that is a landing page, like we talked about. 599 00:25:41,310 --> 00:25:43,060 You don't have to write any code for that. 600 00:25:43,060 --> 00:25:45,800 There's tools that do it for you. 601 00:25:45,800 --> 00:25:48,670 >> If you say, OK, I figured that out. 602 00:25:48,670 --> 00:25:52,234 Now I want I'm assuming that-- OK, people seem to want it. 603 00:25:52,234 --> 00:25:53,900 Would they actually pay me money for it? 604 00:25:53,900 --> 00:25:56,569 You can do things like what Buffer did with the pricing page, 605 00:25:56,569 --> 00:25:58,610 or even better, a Kickstarter and get pre-orders. 606 00:25:58,610 --> 00:26:00,150 Orders 607 00:26:00,150 --> 00:26:03,400 >> The next thing that I think you're going to be wanting to look at is-- OK, 608 00:26:03,400 --> 00:26:04,691 it seems like people wanted it. 609 00:26:04,691 --> 00:26:09,070 It seems like people will pay for it, but especially with apps, 610 00:26:09,070 --> 00:26:10,330 will people actually use It? 611 00:26:10,330 --> 00:26:12,580 So I don't know the stats, but they're pretty abysmal. 612 00:26:12,580 --> 00:26:15,570 A huge number of apps get downloaded and then never used. 613 00:26:15,570 --> 00:26:16,920 And that isn't helpful. 614 00:26:16,920 --> 00:26:18,850 That's nice that you got a lot of people downloading it. 615 00:26:18,850 --> 00:26:21,516 But if it's not used, you're not going to stick around for long. 616 00:26:21,516 --> 00:26:24,746 617 00:26:24,746 --> 00:26:26,620 When you're thinking about that first version 618 00:26:26,620 --> 00:26:29,203 that you want to put out there-- your minimum viable product-- 619 00:26:29,203 --> 00:26:32,200 think about what is it exactly that I'm trying to test? 620 00:26:32,200 --> 00:26:35,290 And what can I do that just figures that out? 621 00:26:35,290 --> 00:26:36,790 I just kind of took a guess at this. 622 00:26:36,790 --> 00:26:39,706 I don't actually know what Buffer's first version looked like exactly. 623 00:26:39,706 --> 00:26:42,659 But if you think about Buffer-- just because of this simple example-- 624 00:26:42,659 --> 00:26:44,450 you might think this is what they feel like 625 00:26:44,450 --> 00:26:46,879 as their first minimum viable product. 626 00:26:46,879 --> 00:26:48,670 I need to be able to create a user account, 627 00:26:48,670 --> 00:26:51,180 obviously, link it to my social media accounts. 628 00:26:51,180 --> 00:26:53,530 I need to add posts like tweets into my buffer. 629 00:26:53,530 --> 00:26:54,470 Edit them. 630 00:26:54,470 --> 00:26:55,770 Delete them. 631 00:26:55,770 --> 00:26:58,320 >> Set the time when I want those to be posted. 632 00:26:58,320 --> 00:27:01,650 Obviously, the software needs to automatically post to Twitter 633 00:27:01,650 --> 00:27:03,470 or whatever based on that schedule. 634 00:27:03,470 --> 00:27:05,970 And then I should be able to view a history of my post. 635 00:27:05,970 --> 00:27:08,900 That feels pretty minimal, pretty basic, right? 636 00:27:08,900 --> 00:27:11,710 >> I always encourage startups-- especially like, this is easy for us, 637 00:27:11,710 --> 00:27:12,800 because it's not our baby. 638 00:27:12,800 --> 00:27:13,300 Right? 639 00:27:13,300 --> 00:27:17,220 Be like, oh, Yeah whatever Look at it again, and keep saying is there a way 640 00:27:17,220 --> 00:27:19,840 that I can get it stripped down even more? 641 00:27:19,840 --> 00:27:21,860 >> So what is it we're trying to figure out? 642 00:27:21,860 --> 00:27:23,860 If we're trying to figure out if they'll use it, 643 00:27:23,860 --> 00:27:26,943 we're trying to see if are they even going to post anything to the bumper? 644 00:27:26,943 --> 00:27:31,125 So this feels a little hacky, but if they haven't posted it to the Buffer 645 00:27:31,125 --> 00:27:33,760 yet, you don't really need to allow them to edit 646 00:27:33,760 --> 00:27:36,357 or delete or view posts in history. 647 00:27:36,357 --> 00:27:38,690 If you can plant that something out there really quickly 648 00:27:38,690 --> 00:27:42,517 and see if people can even add postings to it, once you see that, 649 00:27:42,517 --> 00:27:44,850 you can very quickly start adding on this functionality. 650 00:27:44,850 --> 00:27:48,120 But just get something out there. 651 00:27:48,120 --> 00:27:50,489 Do you need to allow the user to set a posting schedule? 652 00:27:50,489 --> 00:27:52,780 Probably not, if they're like me and they're just like, 653 00:27:52,780 --> 00:27:56,490 I don't want my all my treats going out at 2:00 AM on Sunday night. 654 00:27:56,490 --> 00:27:58,487 >> You can say these are the most popular times. 655 00:27:58,487 --> 00:28:00,820 Whatever, we're just going to post it according to that. 656 00:28:00,820 --> 00:28:02,300 You can probably do that. 657 00:28:02,300 --> 00:28:04,950 And then I kind of made this up, because I know they only started with Twitter. 658 00:28:04,950 --> 00:28:06,991 But obviously, you can just pick the social media 659 00:28:06,991 --> 00:28:10,050 network that makes the most sense and just start with that. 660 00:28:10,050 --> 00:28:12,030 And so now you're down to four out of 10. 661 00:28:12,030 --> 00:28:15,770 >> And if you can get something out there, a pet peeve of mine 662 00:28:15,770 --> 00:28:17,870 is that people think and MVP means crappy product. 663 00:28:17,870 --> 00:28:18,994 And I don't think it needs. 664 00:28:18,994 --> 00:28:23,220 I think you can get something out there that it's still useful, 665 00:28:23,220 --> 00:28:27,151 but isn't gold plated-- is just the absolute bear minimum. 666 00:28:27,151 --> 00:28:30,400 And I guess you have to kind of figure out based on your audience what's going 667 00:28:30,400 --> 00:28:31,610 to make sense or what isn't. 668 00:28:31,610 --> 00:28:34,068 >> But a lot of times you get something out there more minimal 669 00:28:34,068 --> 00:28:38,610 than you'd think-- just a test, how people use it. 670 00:28:38,610 --> 00:28:41,330 So as you're building out these features, 671 00:28:41,330 --> 00:28:43,922 you want to think about what's the minimum viable process. 672 00:28:43,922 --> 00:28:46,880 And so a lot of times when we think about really lightweight processes, 673 00:28:46,880 --> 00:28:48,171 we think about agile processes. 674 00:28:48,171 --> 00:28:52,100 We think about lean-- this is a little bit random-- just some agile and lean 675 00:28:52,100 --> 00:28:54,557 books that I like. 676 00:28:54,557 --> 00:28:56,890 So there's great practices like from Extreme Programming 677 00:28:56,890 --> 00:28:59,075 and continuous integration, and refactoring, 678 00:28:59,075 --> 00:29:01,010 which I'll speak to a little bit. 679 00:29:01,010 --> 00:29:04,220 But the thing is, once you start getting into the Agile and mean practices, 680 00:29:04,220 --> 00:29:07,800 it can very quickly get overwhelming. 681 00:29:07,800 --> 00:29:11,260 And it can wind up begin real overkill for a startup. 682 00:29:11,260 --> 00:29:14,320 >> So the thing is that a lot of these books 683 00:29:14,320 --> 00:29:16,490 are talking about how to do Agile when you're 684 00:29:16,490 --> 00:29:18,310 doing a product for an established company. 685 00:29:18,310 --> 00:29:18,810 Right? 686 00:29:18,810 --> 00:29:21,870 And you know who the market is, and you know what your product road map. 687 00:29:21,870 --> 00:29:23,130 And they wind up-- even though we're supposed 688 00:29:23,130 --> 00:29:25,170 to be light weight-- they wind up actually being way too heavyweight 689 00:29:25,170 --> 00:29:27,003 for our startup, because the startup is just 690 00:29:27,003 --> 00:29:29,450 operating at this completely different level. 691 00:29:29,450 --> 00:29:32,340 So my feel is that when you're going a startup, 692 00:29:32,340 --> 00:29:33,750 you need to be scrappy as hell. 693 00:29:33,750 --> 00:29:34,300 Right? 694 00:29:34,300 --> 00:29:36,180 So initially, there's no process. 695 00:29:36,180 --> 00:29:37,930 You want to keep it as simple as possible. 696 00:29:37,930 --> 00:29:41,070 And only add process that's sort of a just-in-time process. 697 00:29:41,070 --> 00:29:42,490 OK, we see that there's a problem? 698 00:29:42,490 --> 00:29:45,345 Let's add just enough process to address that problem. 699 00:29:45,345 --> 00:29:47,396 Do you know what I mean? 700 00:29:47,396 --> 00:29:51,970 It's because you don't want any of us holding you down, right? 701 00:29:51,970 --> 00:29:56,030 >> Scrum is a really popular process for Agile development. 702 00:29:56,030 --> 00:29:59,248 I don't know if you guys are familiar with this. 703 00:29:59,248 --> 00:30:00,560 OK, well-- 704 00:30:00,560 --> 00:30:01,680 >> [CHUCKLES] 705 00:30:01,680 --> 00:30:04,194 >> It would be just too overkill for a startup. 706 00:30:04,194 --> 00:30:05,360 So I won't worry about that. 707 00:30:05,360 --> 00:30:09,370 So OK, if you think about what's the absolute simplest thing that I need. 708 00:30:09,370 --> 00:30:11,540 Well, I need to probably keep track of what 709 00:30:11,540 --> 00:30:14,460 I'm doing, especially if there's more than one person, 710 00:30:14,460 --> 00:30:16,375 but even if there's one person. 711 00:30:16,375 --> 00:30:17,250 What am I working on? 712 00:30:17,250 --> 00:30:20,377 >> So a simple task board-- very easy. 713 00:30:20,377 --> 00:30:21,460 This is what I want to do. 714 00:30:21,460 --> 00:30:22,250 This is what I'm working on. 715 00:30:22,250 --> 00:30:23,410 This is what I've done. 716 00:30:23,410 --> 00:30:28,050 The only problem that I see when I see startups doing something like this, 717 00:30:28,050 --> 00:30:31,620 is that very quickly, their in-progress column 718 00:30:31,620 --> 00:30:36,170 tends to look like that, which is not very helpful-- especially if there's 719 00:30:36,170 --> 00:30:37,990 only one person or only one developer. 720 00:30:37,990 --> 00:30:38,230 Right? 721 00:30:38,230 --> 00:30:39,938 >> Because you're not getting anything done. 722 00:30:39,938 --> 00:30:44,805 All you're doing is going back and forth trying to get all these things done. 723 00:30:44,805 --> 00:30:47,930 And so this is a really good example of where just enough process can come. 724 00:30:47,930 --> 00:30:51,720 So Kanban is a really great tool. 725 00:30:51,720 --> 00:30:53,940 It comes also from Lean manufacturing. 726 00:30:53,940 --> 00:30:57,580 >> And the idea is that what we want to do is put constraints 727 00:30:57,580 --> 00:31:00,760 around how much work we can handle at any given time. 728 00:31:00,760 --> 00:31:05,510 And so if we're one person, then we can only work on one item at a time. 729 00:31:05,510 --> 00:31:06,360 Sorry. 730 00:31:06,360 --> 00:31:08,630 So all that other stuff needs to go over there. 731 00:31:08,630 --> 00:31:11,310 So what we do is we put work in progress limits on the columns. 732 00:31:11,310 --> 00:31:12,851 If there's two people, it can be two. 733 00:31:12,851 --> 00:31:16,510 You can figure out what makes the most sense for you. 734 00:31:16,510 --> 00:31:19,367 >> But the idea is keep things sane, so that you're just 735 00:31:19,367 --> 00:31:20,450 doing one thing at a time. 736 00:31:20,450 --> 00:31:21,325 You're able to do it. 737 00:31:21,325 --> 00:31:23,130 You're able to actually get it done. 738 00:31:23,130 --> 00:31:27,349 One thing to keep in mind is-- if you have a one item 739 00:31:27,349 --> 00:31:29,640 that you're doing but the item takes three months, that 740 00:31:29,640 --> 00:31:31,550 would be a difficult for a startup, obviously. 741 00:31:31,550 --> 00:31:32,850 You need to be able to be flexible and be 742 00:31:32,850 --> 00:31:34,340 able to handle things as they come at you. 743 00:31:34,340 --> 00:31:36,548 You can't say I'm not doing anything for three months 744 00:31:36,548 --> 00:31:38,450 until I get the login screen done. 745 00:31:38,450 --> 00:31:39,370 I don't know. 746 00:31:39,370 --> 00:31:42,840 >> So I advise startups to keep this really short, 747 00:31:42,840 --> 00:31:45,180 to keep these tasks so that they fit into a day. 748 00:31:45,180 --> 00:31:48,305 Obviously, if it's more complex, that might need to be a little bit longer. 749 00:31:48,305 --> 00:31:49,970 But figure out what works best for you. 750 00:31:49,970 --> 00:31:51,440 You can try different lengths. 751 00:31:51,440 --> 00:31:54,290 But generally, just as an example, if you keep all the tasks 752 00:31:54,290 --> 00:31:57,640 so they fit within one day, that means that every single day, 753 00:31:57,640 --> 00:31:58,890 you're getting something done. 754 00:31:58,890 --> 00:32:00,014 And you're providing value. 755 00:32:00,014 --> 00:32:03,300 And that momentum can really move you forward 756 00:32:03,300 --> 00:32:08,050 instead of the situation before, where you have 500 things going, 757 00:32:08,050 --> 00:32:10,622 and none of them are done. 758 00:32:10,622 --> 00:32:12,330 The other thing, though, is still looking 759 00:32:12,330 --> 00:32:15,120 at this to-do column-- I'm overwhelmed looking at that. 760 00:32:15,120 --> 00:32:18,950 And so if I was a developer and I was working on A, and I was like oh, shit. 761 00:32:18,950 --> 00:32:21,730 I've got B and C and De and E and F and G and H. Blah! 762 00:32:21,730 --> 00:32:22,650 Coming down the road. 763 00:32:22,650 --> 00:32:25,060 I'm like freaking out, and I"m trying to figure out how the design is going 764 00:32:25,060 --> 00:32:26,393 to accommodate all these things. 765 00:32:26,393 --> 00:32:30,004 And the truth is that if we accept the fact that we don't actually quite know 766 00:32:30,004 --> 00:32:32,920 what the product's going to need to look like until we've put in front 767 00:32:32,920 --> 00:32:37,030 of a customer, then do we really know that we need all those tasks yet? 768 00:32:37,030 --> 00:32:38,810 Or are we kind of fooling ourselves? 769 00:32:38,810 --> 00:32:40,890 >> So if you really have all those ideas, great. 770 00:32:40,890 --> 00:32:43,515 Put them in a notebook or a spreadsheet or something like that. 771 00:32:43,515 --> 00:32:46,280 But I advise startups to keep a work-in-progress limit 772 00:32:46,280 --> 00:32:47,360 on the to-do column, too. 773 00:32:47,360 --> 00:32:50,010 774 00:32:50,010 --> 00:32:52,430 That's an absolute maximum, I would say, how much 775 00:32:52,430 --> 00:32:54,500 you can get done in one or two weeks. 776 00:32:54,500 --> 00:32:56,950 So it doesn't even have to be that many. 777 00:32:56,950 --> 00:32:59,591 >> That way you are just hyper-focused on this 778 00:32:59,591 --> 00:33:01,340 is what I'm doing, getting done this week. 779 00:33:01,340 --> 00:33:03,140 Or maybe these two weeks, right? 780 00:33:03,140 --> 00:33:04,935 And nothing else is getting in your way, and you're just 781 00:33:04,935 --> 00:33:06,893 making sure that you're getting that out there. 782 00:33:06,893 --> 00:33:10,932 And especially as you start adding new team members, this really helps. 783 00:33:10,932 --> 00:33:13,390 A lot of people like to do this in software, which you can. 784 00:33:13,390 --> 00:33:15,740 But it's even better if you all can be in the same space 785 00:33:15,740 --> 00:33:16,740 and just put it up on a wall. 786 00:33:16,740 --> 00:33:18,060 It's just really visible, and everyone can just 787 00:33:18,060 --> 00:33:19,643 see it, and see what's most important. 788 00:33:19,643 --> 00:33:22,310 789 00:33:22,310 --> 00:33:24,860 >> So OK, that's how you're figuring out what to do. 790 00:33:24,860 --> 00:33:26,060 As you're doing it, you want to be thinking 791 00:33:26,060 --> 00:33:27,684 about what's the minimum viable design? 792 00:33:27,684 --> 00:33:31,040 Or in Agile, we actually have something called 793 00:33:31,040 --> 00:33:33,180 emergent design, which is the same idea. 794 00:33:33,180 --> 00:33:36,190 So have you guys heard of emergent design before? 795 00:33:36,190 --> 00:33:36,850 OK. 796 00:33:36,850 --> 00:33:42,060 >> S-- actually, I'm trying to remember where-- OK. 797 00:33:42,060 --> 00:33:45,037 So the idea of a merchant design is rather than coming up 798 00:33:45,037 --> 00:33:46,870 with this big, upfront design and saying I'm 799 00:33:46,870 --> 00:33:49,960 going to spend a month figuring out the right architecture what components 800 00:33:49,960 --> 00:33:54,280 go where and everything, let me just design enough for the features 801 00:33:54,280 --> 00:33:56,220 that I know I'm putting in this first release. 802 00:33:56,220 --> 00:33:59,510 And nothing else-- or the features that I'm doing this week, even. 803 00:33:59,510 --> 00:34:03,790 >> And then only as I need new features do I figure out the design for those. 804 00:34:03,790 --> 00:34:06,280 You're not figuring out design upfront. 805 00:34:06,280 --> 00:34:11,650 I think in reality, it's not this on-off switch or this toggle. 806 00:34:11,650 --> 00:34:14,780 I think it's more of a spectrum of where you've fall 807 00:34:14,780 --> 00:34:16,241 on the certainty to uncertainty. 808 00:34:16,241 --> 00:34:19,199 And so if in a startup up, or if you're building something that's never 809 00:34:19,199 --> 00:34:21,948 been built before, you're pretty far over on the uncertainty curve 810 00:34:21,948 --> 00:34:22,495 here, right? 811 00:34:22,495 --> 00:34:25,670 >> And if you think about it in terms of the business plan-- like, 812 00:34:25,670 --> 00:34:28,272 we talked about the single biggest predictor of failure 813 00:34:28,272 --> 00:34:29,980 is sticking to the initial business plan. 814 00:34:29,980 --> 00:34:32,033 If you do this big upfront business plan, 815 00:34:32,033 --> 00:34:34,949 and you say I'm just going to blindly follow that and not do anything. 816 00:34:34,949 --> 00:34:36,989 But you're just going to fail, right? 817 00:34:36,989 --> 00:34:38,659 Because there was too much uncertainty. 818 00:34:38,659 --> 00:34:40,960 And I feel like the same is true for design. 819 00:34:40,960 --> 00:34:44,790 820 00:34:44,790 --> 00:34:48,181 >> Sorry, so instead of doing a big upfront business plan, 821 00:34:48,181 --> 00:34:50,139 you would do a very light weight business model 822 00:34:50,139 --> 00:34:51,750 canvas, which you might have heard of. 823 00:34:51,750 --> 00:34:53,239 It's like a one-pager, just getting my ideas out. 824 00:34:53,239 --> 00:34:54,679 It's not that you don't think about it at all. 825 00:34:54,679 --> 00:34:56,110 It's good to think about it at first. 826 00:34:56,110 --> 00:34:58,960 But just get it something really flexible out there-- just one page. 827 00:34:58,960 --> 00:35:02,979 And then, as you go, kind of emerge that plan over time 828 00:35:02,979 --> 00:35:05,270 as you learn from customers, and you can adapt to them. 829 00:35:05,270 --> 00:35:07,450 >> And so then the same thing is true for design. 830 00:35:07,450 --> 00:35:09,200 You can do a big, upfront design, but that 831 00:35:09,200 --> 00:35:11,720 doesn't make sense if there's a lot of uncertainty. 832 00:35:11,720 --> 00:35:15,080 A lot of people would argue there's never that much certainty in software, 833 00:35:15,080 --> 00:35:16,830 even if you're not doing in startup. 834 00:35:16,830 --> 00:35:19,290 So you never want to do that big of an upfront design. 835 00:35:19,290 --> 00:35:23,770 But I feel like the level of design is going 836 00:35:23,770 --> 00:35:27,207 to vary based on how much certainty or uncertainty there is. 837 00:35:27,207 --> 00:35:30,290 And so if you have no freaking clue and you're just throwing something out 838 00:35:30,290 --> 00:35:32,124 there like a landing page, obviously, you're 839 00:35:32,124 --> 00:35:34,539 not going to go take the time to architect a whole system. 840 00:35:34,539 --> 00:35:35,590 That's ridiculous, right? 841 00:35:35,590 --> 00:35:37,131 So you don't need any upfront design. 842 00:35:37,131 --> 00:35:41,890 A lot of times, the first version you put out of software for a startup 843 00:35:41,890 --> 00:35:42,890 just gets thrown away. 844 00:35:42,890 --> 00:35:45,056 And so a lot of times, even though I might say this, 845 00:35:45,056 --> 00:35:46,970 you can just kind of hack something together. 846 00:35:46,970 --> 00:35:48,553 It's probably going to be thrown away. 847 00:35:48,553 --> 00:35:52,680 But again, use that just-in-time idea for design as well. 848 00:35:52,680 --> 00:35:54,099 That OK, you know what? 849 00:35:54,099 --> 00:35:55,390 This is actually some traction. 850 00:35:55,390 --> 00:35:58,204 Some people are interested in this. 851 00:35:58,204 --> 00:35:59,620 I'm going to add some features on. 852 00:35:59,620 --> 00:36:03,060 Now, I feel like I should be a little bit smarter about the design. 853 00:36:03,060 --> 00:36:06,910 >> So the idea is as your designing, just keep this YAGNI in mind. 854 00:36:06,910 --> 00:36:07,910 You Ain't Gonna Need It. 855 00:36:07,910 --> 00:36:09,830 Don't design for things that aren't there yet. 856 00:36:09,830 --> 00:36:14,260 And the keep it simple, stupid principle-- 857 00:36:14,260 --> 00:36:16,840 do the simplest thing that could possibly work. 858 00:36:16,840 --> 00:36:21,090 >> A lot of times, it's interesting, because as developers, 859 00:36:21,090 --> 00:36:23,480 we get taught to do these really complex designs. 860 00:36:23,480 --> 00:36:25,513 And we're taught that that's good. 861 00:36:25,513 --> 00:36:28,702 But it prevents us from being flexible, and it can be really wasteful 862 00:36:28,702 --> 00:36:30,660 if we wind up going in at different directions. 863 00:36:30,660 --> 00:36:33,310 So Agile kind of says, don't do that. 864 00:36:33,310 --> 00:36:35,950 Just figure out what the simplest way, the simplest code 865 00:36:35,950 --> 00:36:38,200 that you can put in here that's going to make it work. 866 00:36:38,200 --> 00:36:42,950 And then if I need to add onto it, I can kind of fix that code up 867 00:36:42,950 --> 00:36:44,050 and readdress the design. 868 00:36:44,050 --> 00:36:46,883 >> So there's something called refactoring that's really important when 869 00:36:46,883 --> 00:36:48,450 you do emergent design. 870 00:36:48,450 --> 00:36:56,460 And the idea with refactoring is-- sorry, I'm going to back up a little. 871 00:36:56,460 --> 00:36:59,460 So if you're doing emergent design, you're only designing for the future 872 00:36:59,460 --> 00:37:00,400 that you have today. 873 00:37:00,400 --> 00:37:02,150 But that doesn't mean that you're hacking. 874 00:37:02,150 --> 00:37:03,680 That doesn't mean when you add another feature, 875 00:37:03,680 --> 00:37:05,160 you're just going to kind of duct tape it on. 876 00:37:05,160 --> 00:37:05,360 Right? 877 00:37:05,360 --> 00:37:07,770 Because that's going to give you this big ball of mud code 878 00:37:07,770 --> 00:37:09,520 that's going to be impossible to maintain. 879 00:37:09,520 --> 00:37:13,620 The idea with the refactoring is OK, I know I only need, say, Twitter today, 880 00:37:13,620 --> 00:37:16,620 so I'm not going to do this big abstraction that says, 881 00:37:16,620 --> 00:37:19,749 oh, let me have this abstraction layer that will work with any social media 882 00:37:19,749 --> 00:37:22,290 network that I could ever possibly think of it in the future, 883 00:37:22,290 --> 00:37:23,570 because that takes time. 884 00:37:23,570 --> 00:37:25,590 Let me just-- the simplest thing that could possibly work 885 00:37:25,590 --> 00:37:26,710 is let me just make it known with Twitter, 886 00:37:26,710 --> 00:37:28,293 because that's all I need to do today. 887 00:37:28,293 --> 00:37:33,680 Then tomorrow, we realize OK, we do need to make this work with Facebook. 888 00:37:33,680 --> 00:37:37,530 So refactoring would say, let me revisit the design before I even add Facebook, 889 00:37:37,530 --> 00:37:40,370 and say given that I know that now I need 890 00:37:40,370 --> 00:37:43,590 to handle most multiple social networks, what would the optimal design look 891 00:37:43,590 --> 00:37:44,090 like? 892 00:37:44,090 --> 00:37:46,620 Let me refactor the code to handle that design, 893 00:37:46,620 --> 00:37:48,830 and then I can plug Facebook functionality in. 894 00:37:48,830 --> 00:37:50,005 Does that make sense? 895 00:37:50,005 --> 00:37:52,860 896 00:37:52,860 --> 00:37:56,870 >> So a lot of people think, when they hear something like emergent design, 897 00:37:56,870 --> 00:37:59,610 that you're doing less design or that you're just hacking. 898 00:37:59,610 --> 00:38:01,850 But the truth is you're actually doing more design. 899 00:38:01,850 --> 00:38:03,280 It's sort of the same thing with planning, right? 900 00:38:03,280 --> 00:38:04,400 You're actually doing more planning-- it's 901 00:38:04,400 --> 00:38:06,250 just that instead of doing it all up front, 902 00:38:06,250 --> 00:38:10,470 you're doing it continuously as you go along. 903 00:38:10,470 --> 00:38:16,150 >> So I think it's really great that you guys are taking CS50, 904 00:38:16,150 --> 00:38:20,110 because I hear this so many times a day, I can't even tell you. 905 00:38:20,110 --> 00:38:22,860 People come up to me and they say, Abby, I've got this great idea! 906 00:38:22,860 --> 00:38:24,390 All I need is a developer. 907 00:38:24,390 --> 00:38:28,000 And I kind of want to shoot myself in the head when I hear that. 908 00:38:28,000 --> 00:38:31,380 >> Because that kind of assumes-- they'll come up, 909 00:38:31,380 --> 00:38:33,580 and they'll be like I have the idea all figured out. 910 00:38:33,580 --> 00:38:34,705 I've got the business plan. 911 00:38:34,705 --> 00:38:35,540 I've got the design. 912 00:38:35,540 --> 00:38:37,440 I just need a developer to go code it for me, right? 913 00:38:37,440 --> 00:38:40,148 And it's just assuming that they've got all the answers up front, 914 00:38:40,148 --> 00:38:42,120 and this person can just go code it for them, 915 00:38:42,120 --> 00:38:48,180 and they're going to make a million dollars-- which 916 00:38:48,180 --> 00:38:50,850 just doesn't take into fact all the uncertainties. 917 00:38:50,850 --> 00:38:54,060 >> So if we kind of look at the steps of development-- and I apologize. 918 00:38:54,060 --> 00:38:55,480 This is a little waterfall-y. 919 00:38:55,480 --> 00:38:59,780 But what typically happens is you figure out OK, this is what I want to code. 920 00:38:59,780 --> 00:39:02,380 You take some time to develop it, test it. 921 00:39:02,380 --> 00:39:04,494 Quality assurance is testing it. 922 00:39:04,494 --> 00:39:06,660 And then once you've got an entire release together, 923 00:39:06,660 --> 00:39:07,450 which might take a month. 924 00:39:07,450 --> 00:39:08,533 It makes two three months. 925 00:39:08,533 --> 00:39:11,260 Then you release that out, right? 926 00:39:11,260 --> 00:39:14,660 >> But if we say, OK, let's think about how do we 927 00:39:14,660 --> 00:39:16,650 maximize the learning that happens here? 928 00:39:16,650 --> 00:39:20,770 Because if we just go heads-down for three months or a year or something 929 00:39:20,770 --> 00:39:22,770 and put some code out there and it doesn't work, 930 00:39:22,770 --> 00:39:24,720 then we're kind of screwed, right? 931 00:39:24,720 --> 00:39:27,044 So where does the learning happen in here? 932 00:39:27,044 --> 00:39:28,960 Some learning happens when we do requirements, 933 00:39:28,960 --> 00:39:32,210 because we're talking to customers, and we're trying to understand about them. 934 00:39:32,210 --> 00:39:34,192 But the reality is that most learning doesn't 935 00:39:34,192 --> 00:39:36,400 happen until we actually put something in their hands 936 00:39:36,400 --> 00:39:38,330 and see how they use that. 937 00:39:38,330 --> 00:39:42,840 And so what this means is that the time, the places 938 00:39:42,840 --> 00:39:47,550 that we spend the most time-- which is development and QA or testing-- there's 939 00:39:47,550 --> 00:39:49,710 very little learning that happens. 940 00:39:49,710 --> 00:39:53,830 >> And so if we look at this and say how can we maximize learning? 941 00:39:53,830 --> 00:39:57,580 Or how can we reduce the time that happens between learning? 942 00:39:57,580 --> 00:40:00,340 943 00:40:00,340 --> 00:40:02,264 A great thing is continuous deployment. 944 00:40:02,264 --> 00:40:04,930 I don't know if you guys have heard about continuous deployment. 945 00:40:04,930 --> 00:40:07,947 So the idea with that-- instead of saying, OK, we're going to go. 946 00:40:07,947 --> 00:40:09,530 We have this releases at three months. 947 00:40:09,530 --> 00:40:11,120 We're going to build all the features for it. 948 00:40:11,120 --> 00:40:12,600 And then only at the end of the release are 949 00:40:12,600 --> 00:40:14,190 we are going actually push that into production 950 00:40:14,190 --> 00:40:15,400 and put it in front of users. 951 00:40:15,400 --> 00:40:19,460 >> The idea with continuous deployment is taking that to the other extreme. 952 00:40:19,460 --> 00:40:22,460 So are you guys familiar with the version control? 953 00:40:22,460 --> 00:40:25,010 So ideally, when you're working on your code, every time you 954 00:40:25,010 --> 00:40:27,230 add some new functionality, you're gonna check it into version control. 955 00:40:27,230 --> 00:40:28,890 So if you screw something up, you can always go back. 956 00:40:28,890 --> 00:40:31,440 Or you can see what changed, if something's broken. 957 00:40:31,440 --> 00:40:33,335 >> So the idea with continuous deployment is 958 00:40:33,335 --> 00:40:35,750 as soon as you check something into version control, 959 00:40:35,750 --> 00:40:37,692 it pushes the code to a staging server. 960 00:40:37,692 --> 00:40:40,900 It's going to run automated tests on it, make sure you didn't break anything. 961 00:40:40,900 --> 00:40:42,875 If you didn't break anything, it's going to push it right out 962 00:40:42,875 --> 00:40:43,640 from the production. 963 00:40:43,640 --> 00:40:44,170 >> So boom. 964 00:40:44,170 --> 00:40:45,586 It's in the hands of the customer. 965 00:40:45,586 --> 00:40:48,020 966 00:40:48,020 --> 00:40:48,784 Very different. 967 00:40:48,784 --> 00:40:51,700 But if we do this, if we're pushing things out to the customer as fast 968 00:40:51,700 --> 00:40:54,410 as possible, then we're getting the code into their hands. 969 00:40:54,410 --> 00:40:56,470 We can see how they're working with them, 970 00:40:56,470 --> 00:40:58,220 and we can really maximize learning. 971 00:40:58,220 --> 00:41:01,610 >> So I'm going to talk through this a little bit more, 972 00:41:01,610 --> 00:41:05,162 because I don't know if that was-- continuous deployment 973 00:41:05,162 --> 00:41:06,370 can be pretty extreme, right? 974 00:41:06,370 --> 00:41:08,380 And that can be pretty tough to do. 975 00:41:08,380 --> 00:41:12,217 So people, companies usually kind of start with continuous integration, 976 00:41:12,217 --> 00:41:13,550 and they work their way forward. 977 00:41:13,550 --> 00:41:17,800 >> So continuous integration is this concept that's kind of the first part 978 00:41:17,800 --> 00:41:18,900 that I talked about. 979 00:41:18,900 --> 00:41:21,550 So the idea with continuous integration is 980 00:41:21,550 --> 00:41:23,192 you still have your release schedule. 981 00:41:23,192 --> 00:41:26,400 You're going to release every two weeks or every three months or whatever is. 982 00:41:26,400 --> 00:41:28,740 >> But every single time someone checks some code in, 983 00:41:28,740 --> 00:41:31,450 it does push the code onto a staging server. 984 00:41:31,450 --> 00:41:34,170 The staging server looks like production and it 985 00:41:34,170 --> 00:41:37,070 runs a series of automated tests on them to make sure nothing broke. 986 00:41:37,070 --> 00:41:39,430 If something broke, then it's going to let everybody know hey, 987 00:41:39,430 --> 00:41:40,330 the build was broken. 988 00:41:40,330 --> 00:41:42,970 And everybody has stop and make sure it's fixed. 989 00:41:42,970 --> 00:41:48,750 >> So that way, you're always guaranteeing that everything that you check in 990 00:41:48,750 --> 00:41:54,213 is keeping the code at an OK state. 991 00:41:54,213 --> 00:41:58,109 Then when you're ready to release it in the fraction, you realize everything. 992 00:41:58,109 --> 00:42:00,900 Continuous delivery is sort of the next step in this process, which 993 00:42:00,900 --> 00:42:06,210 is that every time you check-- it says the same thing-- every time we check 994 00:42:06,210 --> 00:42:10,010 something into version control, it pushes it to the staging server. 995 00:42:10,010 --> 00:42:11,386 It runs the tests on it. 996 00:42:11,386 --> 00:42:16,270 >> But the culture is set as such that you always 997 00:42:16,270 --> 00:42:19,370 keep the code so that it can be pushed to production at any time. 998 00:42:19,370 --> 00:42:21,440 So with continuous integration, you might have a road map and say, 999 00:42:21,440 --> 00:42:23,800 we're only going to push it to production in three months. 1000 00:42:23,800 --> 00:42:24,330 Right? 1001 00:42:24,330 --> 00:42:26,460 It doesn't really have to be ready to be seen by a customer. 1002 00:42:26,460 --> 00:42:28,793 But with this, you're saying at any given point in time, 1003 00:42:28,793 --> 00:42:31,020 you can be like yep, I'm happy with this feature set, 1004 00:42:31,020 --> 00:42:32,140 even though we're only two weeks in. 1005 00:42:32,140 --> 00:42:34,390 I'm going to go ahead and push it out to the customer, 1006 00:42:34,390 --> 00:42:35,820 and I know it's going to be OK. 1007 00:42:35,820 --> 00:42:40,800 >> And so you might have something like switches in your code 1008 00:42:40,800 --> 00:42:42,780 that say for features that are only half done. 1009 00:42:42,780 --> 00:42:43,710 They're not actually visible. 1010 00:42:43,710 --> 00:42:45,280 Why is it visible to the customer yet? 1011 00:42:45,280 --> 00:42:46,238 Or something like that. 1012 00:42:46,238 --> 00:42:48,450 But you always make sure that you don't have anything 1013 00:42:48,450 --> 00:42:52,460 that's in this weird state, because it can push out to production at any time. 1014 00:42:52,460 --> 00:42:58,310 >> And just once you're in, you've kind of gotten everybody used to that idea 1015 00:42:58,310 --> 00:43:02,649 that you're always coding such that it's ready to go out into production. 1016 00:43:02,649 --> 00:43:05,190 Then it's not so hard to move to continuous deployment, which 1017 00:43:05,190 --> 00:43:07,231 is that every single time you check something in, 1018 00:43:07,231 --> 00:43:09,560 as long as the test passed, it goes out to production. 1019 00:43:09,560 --> 00:43:11,660 Does that kind of make sense? 1020 00:43:11,660 --> 00:43:14,490 >> So it can still be really scary concept, but it's 1021 00:43:14,490 --> 00:43:16,790 interesting to look at how some companies are doing it. 1022 00:43:16,790 --> 00:43:18,760 So Etsy does a really good job with this. 1023 00:43:18,760 --> 00:43:21,270 If you're interested, they've got a blog that 1024 00:43:21,270 --> 00:43:24,530 talks about how they do continuous deployment, which is really awesome. 1025 00:43:24,530 --> 00:43:29,010 They deploy to production up to 50 times a day-- right? 1026 00:43:29,010 --> 00:43:32,920 Which is crazy-- can you imagine if you go to the Etsy website, 50 times 1027 00:43:32,920 --> 00:43:36,470 in day, that site is being updated behind the scenes. 1028 00:43:36,470 --> 00:43:43,430 >> And in 2011, they deployed 10,000 times over the year with 100 engineers. 1029 00:43:43,430 --> 00:43:47,240 And what they said is contrary to what you might think-- like oh my god, 1030 00:43:47,240 --> 00:43:47,920 that's terrible! 1031 00:43:47,920 --> 00:43:50,030 The code, the site's going to be a disaster. 1032 00:43:50,030 --> 00:43:54,330 They said actually, once you're deploying that often, the system is 1033 00:43:54,330 --> 00:43:57,610 so much more stable, they actually call it confidence as a service. 1034 00:43:57,610 --> 00:44:02,930 Because when we deploy, we've already done this 9,999 times. 1035 00:44:02,930 --> 00:44:05,670 We got this. 1036 00:44:05,670 --> 00:44:08,750 >> It also makes it so much easier for them to experiment with things. 1037 00:44:08,750 --> 00:44:12,160 So what they said before is they used to release to production 1038 00:44:12,160 --> 00:44:14,190 every two weeks or every month. 1039 00:44:14,190 --> 00:44:16,200 And you guys might imagine if you've ever 1040 00:44:16,200 --> 00:44:18,350 got a deadline for a big project you're working on, 1041 00:44:18,350 --> 00:44:20,990 and you have this list of things that you want to get done, 1042 00:44:20,990 --> 00:44:22,320 and then as it gets closer to the deadline, 1043 00:44:22,320 --> 00:44:23,900 the list starts shrinking a little bit. 1044 00:44:23,900 --> 00:44:25,340 Like well, maybe I don't really need to do this. 1045 00:44:25,340 --> 00:44:26,470 Maybe I don't really need to do that. 1046 00:44:26,470 --> 00:44:27,590 >> So that's what they said would happen. 1047 00:44:27,590 --> 00:44:29,630 As they'd get closer to the release-- and it was such a big deal. 1048 00:44:29,630 --> 00:44:30,990 They had to get the release out on time. 1049 00:44:30,990 --> 00:44:32,573 But they'd start paring away features. 1050 00:44:32,573 --> 00:44:35,230 And so they actually did less features, because they were only 1051 00:44:35,230 --> 00:44:37,637 releasing every two weeks or a month. 1052 00:44:37,637 --> 00:44:39,345 Now that they're releasing so many times, 1053 00:44:39,345 --> 00:44:42,137 it gives them this flexibility to say, you know what? 1054 00:44:42,137 --> 00:44:43,970 We want to build a new feature, but we don't 1055 00:44:43,970 --> 00:44:45,810 know if we should put a lot of time into it. 1056 00:44:45,810 --> 00:44:47,940 Let's put out this really minimum version of the feature 1057 00:44:47,940 --> 00:44:50,648 and see if anyone even clicks on it, if anyone's even interested. 1058 00:44:50,648 --> 00:44:53,630 If they are, then we can either pull it back and build it out, 1059 00:44:53,630 --> 00:44:56,250 or we can very quickly add new features to it. 1060 00:44:56,250 --> 00:45:00,650 >> And so they said it just gave them so much more flexibility to experiment. 1061 00:45:00,650 --> 00:45:04,990 And so it's really interesting to see bigger companies doing that. 1062 00:45:04,990 --> 00:45:10,670 And at a startup, especially, where it's so important to learn what's going on, 1063 00:45:10,670 --> 00:45:13,600 it can be really effective. 1064 00:45:13,600 --> 00:45:16,160 And then coming back to our Kanban board. 1065 00:45:16,160 --> 00:45:16,939 >> It's interesting. 1066 00:45:16,939 --> 00:45:18,980 A lot of times, when people do a board like this, 1067 00:45:18,980 --> 00:45:21,680 there's a lot of debate over what the Done column means. 1068 00:45:21,680 --> 00:45:23,760 So OK, I'm working on a task. 1069 00:45:23,760 --> 00:45:25,317 Is it done when its code complete? 1070 00:45:25,317 --> 00:45:28,150 Is it done when someone's reviewed it and it feels like it's tested? 1071 00:45:28,150 --> 00:45:30,010 Is it done when it goes out into production? 1072 00:45:30,010 --> 00:45:32,370 >> And so a lot of startups will say, you know what? 1073 00:45:32,370 --> 00:45:36,584 We're going to add a new column in here, which is a learning column. 1074 00:45:36,584 --> 00:45:39,250 It's not actually done until we've not only put into production, 1075 00:45:39,250 --> 00:45:41,070 we've put it in customers' hands-- but we've actually 1076 00:45:41,070 --> 00:45:42,720 learned from how they've used it. 1077 00:45:42,720 --> 00:45:44,830 And what's really cool about that is then, 1078 00:45:44,830 --> 00:45:47,415 we get to incorporate that learning back into the cycle, 1079 00:45:47,415 --> 00:45:49,165 and say based on what we've learned, based 1080 00:45:49,165 --> 00:45:53,680 on what we se-- how we see them use it-- we can figure out the next set to do. 1081 00:45:53,680 --> 00:45:56,970 1082 00:45:56,970 --> 00:46:02,980 >> So those are the patterns that I have seen for successful innovation 1083 00:46:02,980 --> 00:46:06,380 across the startups that have been successful. 1084 00:46:06,380 --> 00:46:09,835 I was going to also talk a little bit about resources 1085 00:46:09,835 --> 00:46:12,873 that are available if you're interested in doing a startup iLab. 1086 00:46:12,873 --> 00:46:17,590 But I can also stop it here, if you guys have questions about what I talked. 1087 00:46:17,590 --> 00:46:18,350 Keep going? 1088 00:46:18,350 --> 00:46:20,093 OK. 1089 00:46:20,093 --> 00:46:21,450 >> [CHUCKLES] 1090 00:46:21,450 --> 00:46:24,320 >> OK, so do you know about the iLab? 1091 00:46:24,320 --> 00:46:24,870 OK, awesome. 1092 00:46:24,870 --> 00:46:28,345 So the iLab has awesome resources. 1093 00:46:28,345 --> 00:46:30,470 If you're looking to do a startup, we have anything 1094 00:46:30,470 --> 00:46:31,880 from-- we do hacknights there. 1095 00:46:31,880 --> 00:46:33,755 Sometimes, we do hackathons, if you just want 1096 00:46:33,755 --> 00:46:35,750 to go hack on cool projects with people. 1097 00:46:35,750 --> 00:46:36,724 >> We have workshops. 1098 00:46:36,724 --> 00:46:39,890 We have classes that re for credit that are kind of cool on entrepreneurship 1099 00:46:39,890 --> 00:46:43,190 that are open to-- most of those are open to everybody. 1100 00:46:43,190 --> 00:46:46,020 But we also have free workshops a couple times a week, 1101 00:46:46,020 --> 00:46:48,040 that we just bring in experts from the industry 1102 00:46:48,040 --> 00:46:52,750 to talk about anything-- from technical concepts, to raising money, 1103 00:46:52,750 --> 00:46:54,830 to how to do sales. 1104 00:46:54,830 --> 00:46:57,340 >> Anything that you want around startups, we 1105 00:46:57,340 --> 00:47:01,520 have experts and residents who are available to do one-on-ones. 1106 00:47:01,520 --> 00:47:03,520 You can just sign up for office hours with them. 1107 00:47:03,520 --> 00:47:05,103 You don't even have to have a startup. 1108 00:47:05,103 --> 00:47:08,140 Just if you've got ideas and you want to balance-- 1109 00:47:08,140 --> 00:47:11,150 get information or insight from an expert 1110 00:47:11,150 --> 00:47:13,980 on the same thing-- sales, financing. 1111 00:47:13,980 --> 00:47:16,450 We get legal help. 1112 00:47:16,450 --> 00:47:19,830 You could sign up for those there. 1113 00:47:19,830 --> 00:47:21,370 We've always got stuff going on. 1114 00:47:21,370 --> 00:47:24,740 >> So if you're interested, it's a really great resource. 1115 00:47:24,740 --> 00:47:27,846 You can go to our site. 1116 00:47:27,846 --> 00:47:29,220 The newsletter is really awesome. 1117 00:47:29,220 --> 00:47:31,770 I kind of usually hate getting email, but it's cool. 1118 00:47:31,770 --> 00:47:34,279 We have so much going on, I don't even know what all it is. 1119 00:47:34,279 --> 00:47:36,070 So if you sign up for the newsletter, we'll 1120 00:47:36,070 --> 00:47:37,860 let you know every week what's going on. 1121 00:47:37,860 --> 00:47:43,830 You can also look at our calendar to see what events are coming up. 1122 00:47:43,830 --> 00:47:47,710 >> And I am there to help if you want to do a tech startup. 1123 00:47:47,710 --> 00:47:48,805 >> [CHUCKLES] 1124 00:47:48,805 --> 00:47:50,420 >> So that's what I've got. 1125 00:47:50,420 --> 00:47:53,720 1126 00:47:53,720 --> 00:47:55,220 >> [APPLAUSE] 1127 00:47:55,220 --> 00:47:56,720 >> [LAUGHS] 1128 00:47:56,720 --> 00:47:58,570 >> Thank you. 1129 00:47:58,570 --> 00:48:00,598