1 00:00:25,896 --> 00:00:27,535 Hey everybody, I'm Pete. 2 00:00:29,621 --> 00:00:33,581 So, who is exited for some big O-notation in the morning? 3 00:00:34,655 --> 00:00:36,995 Alright, alright, so we gonna get to that. 4 00:00:37,312 --> 00:00:39,377 but before we do 5 00:00:39,377 --> 00:00:41,008 i'm just gonna say I'm Pete. 6 00:00:41,018 --> 00:00:43,959 I work at Facebook on the Instagram team 7 00:00:44,079 --> 00:00:46,801 and I'm a contribute to a library called react 8 00:00:46,801 --> 00:00:51,966 which you may have heard is the one that puts the angle brackets in your javascript 9 00:00:52,186 --> 00:00:57,958 .. but, I'm not gonna really talk to much of that React and why it is so awesome because 10 00:00:57,958 --> 00:01:00,007 that's not the interesting part 11 00:01:00,007 --> 00:01:02,388 what I wanna talk about the ideas behind React 12 00:01:02,388 --> 00:01:05,678 and React is a reference implementation of those ideas. 13 00:01:06,528 --> 00:01:08,378 So. This isn't a turial 14 00:01:08,675 --> 00:01:12,289 and I give a focus on ideas and not implementations. 15 00:01:12,315 --> 00:01:14,500 So. I'm gonna talk about the ideas behind react 16 00:01:14,531 --> 00:01:16,769 Some ideas behind other systems 17 00:01:16,769 --> 00:01:18,546 how they're a different kind a 18 00:01:18,546 --> 00:01:21,879 what a different tradeoffs are in there are different tradeoffs between them 19 00:01:22,386 --> 00:01:25,996 and hopefully you take some of the ideas and bring them to your favourite system 20 00:01:26,674 --> 00:01:29,523 or you maybe you think that react is cool and you can tribute to it. 21 00:01:31,580 --> 00:01:35,200 Lets talk about what makes user interfaces difficult to build. 22 00:01:36,881 --> 00:01:40,136 Has anyone build an user interface before? 23 00:01:40,136 --> 00:01:42,678 Alright, OK. I figured it. 24 00:01:42,678 --> 00:01:45,065 Was it really easy? 25 00:01:45,135 --> 00:01:46,792 Yeah, testing it was super-easy, 26 00:01:46,792 --> 00:01:49,200 maintainng quality was probably a joke, right. 27 00:01:49,402 --> 00:01:51,341 It's just a kind a .. always works 28 00:01:51,341 --> 00:01:53,280 He said sarcastically 29 00:01:53,280 --> 00:01:55,219 But you get this a lot 30 00:01:55,615 --> 00:01:57,474 This doesnt feel right 31 00:01:57,645 --> 00:02:01,381 So, you know - even if you use all the test driven development that you can throw at it 32 00:02:01,581 --> 00:02:04,091 you still have to have a human look at this 33 00:02:04,091 --> 00:02:05,762 this doesnt look right and this doesnt fell right 34 00:02:05,915 --> 00:02:09,311 and when I click this button and I click this button and I click this button ... it breaks 35 00:02:10,865 --> 00:02:13,381 There's a lot of things that come in to this 36 00:02:13,757 --> 00:02:17,429 They are human verifiedy but UIs are also deceptely complex