 Who here remembers when Angular was like the thing? Everyone was using Angular. There's a lot of companies jumping to Angular, right? It wasn't too long ago. Ryan Florence was sitting there saying, I don't remember that because I never did that. The last time I cut my hair, Angular was like the thing. So essentially, my hair is outlasted like the hot new front end framework. Because a lot of people are going to react now. And Ember had a conference today and they're doing really well. So what we're going to talk about today is mostly learning. This isn't going to be a technical talk as much as it is about learning and the things I've learned from teaching other people the program. Whenever you get into a talk about learning, the very first thing you need to talk about is the brain. The brain is extremely complicated. It's the most complex organ we have, but it's arguably the most complex thing that we know about in this universe. It's capable of doing a lot of crazy things, remembering, filling, calculating, all of these things that allow us to live our day to day and they allow us to do our job as software engineers. Our brain, from an evolutionary standpoint, has evolved and it's probably our greatest advantage compared to other animals and other things on this planet. We are here today for a big part because of our brains. There was this guy named Pauli Bakirita. In the 60s, he was a neuroscientist. He did a lot of cool stuff with neuroscience research back then. What happened was in 1959, his dad Pedro, he had a stroke and at the time, before the stroke his dad was a professor, he was teaching a lot. So as far as academic achievements, he had kind of reached the pinnacle of being a professor. What happened was he had a stroke and that kind of took him off his feet. He was refined to a wheelchair. He couldn't talk. Essentially everything that we take for granted as humans just going to the bathroom and doing normal things, he lost those abilities. So what happened was his son and Paul's brother, George, he was a physician at the time and he was kind of naive to the study of neuroscience back then. Because back then our belief about neuroscience was you are a child and your brain changes a lot, you learn a lot of things, but when you become adult, your brain kind of solidifies and you can't really change your brain physically after you become an adult. But Paul or George was kind of naive to that. And so what him and his dad started doing was they started doing a lot of minuscule tasks. Meaning they'd have a bunch of quarters and his dad would try to take the quarter and just flip it over. Just something as simple as that, which was extremely difficult when a big portion of your brain has been messed up. Once he started doing that okay, they started crawling and eventually what happened was he got back to the point of being a professor. He kind of was able to retrain his brain to do a bunch of the things that we take for granted and he was able to get to the point where he was teaching and he was going hiking and he was doing a lot of the normal tasks that we can do every single day. What happened, seven years later, he passed away from a heart attack because he was hiking and they did a autopsy and they looked at his brain and what they found was amazing. It was kind of changed the direction of neuroscience back in the day. So what they found was the portion of his brain, which was kind of destroyed from the stroke, which is right along the brainstem, that was still completely dead. But what happened was all the parts around his brain kind of adapted and they all learned the new things that necessarily they shouldn't have before the stroke, but they had to adapt when he had the stroke. And this was huge because this introduced the idea of neuroplasticity, meaning once you grow out of your infancy, your brain still has the ability to change and it has the ability to adapt and grow. This is huge, especially for engineers because this allows us to be able to study and work and struggle and do all these things that physically change our brain that allow us to learn new things quickly. So learning, as you all know, is a lifeblood of engineers. You're all here because you love learning. This talk isn't necessarily going to be about the importance of learning because if you didn't really bind to that mantra of I need to learn in order to keep my career fresh, you wouldn't be here right now, you'd be doing something else. But because you're all here, I'm assuming that you all understand the importance of learning. So what we're gonna talk about specifically is more the things that I have learned from teaching other people the program. So a little background about me, I've been working in a place called Dead Mountain for about a year now. And what we do is we take people who are really excited and they're passionate about learning to program. And they come to our class and we start off with like HTML and CSS stuff. We go to JavaScript, do some jQuery and kind of just the full web stack. And it's really interesting to watch people as they go through this program because essentially what we're doing is we're taking people and we're putting a lot of knowledge in their heads in a very short amount of time. And whenever you do something that intense, you kind of see the bounds of human limits in a sense where a lot of our students have never experienced something, I don't wanna say it's revolutionary because we're really just being really disciplined and teaching them a lot. But they are having to be there all day. They're having to stay late in the night and they're here five or six days a week and we're teaching them all these things very quickly. And we have a lot of really good instructors who are really good at teaching these things but it's extremely hard to learn all these things this quickly. So it kind of opens up this whole realm that I never thought I would discover of psychology and sociology and about learning which is what this talk is about. So being in the position I'm at at Dead Mountain, a lot of the questions that I get is related to this. What should I learn? There's so many things that we can learn and usually what happens, the nature of Dead Mountain is I get this question specifically, iOS first web. Dead Mountain has a web course that they teach and they have an iOS course that they teach. If you do any research at all, it's really clear that the iOS course or the web course is the one you should take and then people get the question of, okay, should I focus on front end? Should I focus on back end like node's cool but should we do JavaScript and all these different things and then answer front end. Then we get the question of, well, should I learn jQuery or should I learn JavaScript? Then you have to explain to them how that's kind of a silly question because you shouldn't be doing any jQuery if you don't understand JavaScript. And then they get, they learn for a while and they come across this question. They said, hey, we've been doing fundamental JavaScript stuff for a while now. We've done a little bit of jQuery and now I'm opening up myself with this world of front end frameworks that's changing constantly. And eventually what my students will, beginners tend to find out is there's a lot of things to learn and it's extremely stressful as a beginner because you essentially need to trust people who are smarter than you and who have more experience with you to guide you and to tell you what you should learn. But the main point of this talk today is it necessarily doesn't matter what you learn. That kind of sounds kind of weird but the whole beginning of this talk was was on how our brains are this amazing thing and we can change our brains and we can adapt and we can grow. And the reason why it doesn't matter is because of these things. You're not your framework, you're not your library, you're not your language, you are a software engineer. The tools that you have are essentially just tools to solve the problem, right? And I think a lot of times, especially as engineers we get caught up and I'm a JavaScript developer or I'm an Angular developer. I saw a tweet the other day that was essentially, it would be super weird and kind of awkward if designers label themselves with the tools that they use. I mean I'm a Photoshop designer or I'm a sketch designer. That sounds extremely silly but that's what we do all the time. In our industries we label ourselves based on what our tools are. And that's not the best idea. What you learn is an implementation detail. The more important thing is that you're learning. When you learn and whenever you learn something new your brain is growing and your brain is adapting based on that neuroplasticity principle we talked about earlier. Ideally everyone's goal in this room with their career should be, I want to get to the point where I can learn things extremely quickly. I know a few people in the room already who do that. One of them is Ryan Florence. Sorry to call you out Ryan. So Ryan gives this talk, I've seen, he's given it a few times. I think he spoke about it as a ReactConf where he says, hey, I was preparing my talk for, I believe it was JSConf, sorry, I should have fact-checked before. Where he was going to compare Angular and Burn Backbone and they said, hey, it would be really cool if you threw in like Polymer and React. So he said, okay, cool, whatever. So he started learning React. So we got an hour into React and then he realized React doesn't have a router. So he started working on the very first prototype of React Router and as everyone knows, React Router is great and everyone uses it now in the React world. When I first heard that story, I was extremely impressed. The reason because when I was on my third hour or second hour of learning React, this was the question I had. Like why in the world isn't my JSX transforming? Which is like a very simple question to have. It's a very easy problem to solve but when I first jumped to React, it was just getting my JSX to transform so my web browser can read it was like not necessarily a struggle but slightly confusing. So this quote I love, you should no more expect someone to be born a highly developed critical thinker than you should expect someone to be born a concert violinist. This is, going back to the story of myself and Ryan, that's totally fair. Ryan's been doing this a lot longer than I have and he's kind of established those things in his brain which allow him to learn a lot quicker than I have. That doesn't mean I'm stupid but that does mean that I have a lot more work to do and to go before I can kind of get on Ryan's level or any other really extreme senior engineer. I don't know if that's a thing, extreme senior engineer. That's a lie, I know it. But it's that idea of my goal as kind of a mid-level engineer is to get to the point where I can learn things very quickly and so whenever the new friend and framework comes along whether it's React, I don't know, whatever the next one will be that I can adapt and I can learn those things really quickly. Going back to kind of what I've learned at Dev Mountain, there's a few things that either help students or they hurt students in their learning process and so what we're gonna do is break these out and go a little bit more into these. So fear, talking about how someone is scared to learn something sounds kind of silly but at the end of the day it's usually always true. Humans hate feeling vulnerable and what you do when you learn something new you essentially let go of everything that you know and you put yourself in a situation where you are going to be judged and you are completely vulnerable because you know nothing. How many of us will be walking and so we're walking this way whether we're coming out of grocery store or whatever and then we remember that we have to do something or we have to get something that's directly behind us but there's a bunch of people looking at us and we don't wanna look stupid. So naturally what we do is we look at our phone we pretend that something happened on our phone someone texted us and then we turn around and we go that way, right? It happens to all of us whether we wanna admit it or not. Jameson laughs because he does it every day, I see him. We hate feeling vulnerable and we hate the idea of other people thinking we're stupid and that's exactly what learning does. But if we think about this idea of vulnerability it's an extremely important aspect of kind of our human involvement. Every single night when we go to bed we put ourselves in a situation where we're extremely vulnerable whether that's now or whether that's 100, 200 years ago. We go to bed, we don't really know what's going on around us we can get killed, but it's kind of part of life. This idea of being vulnerable is completely necessary. So what we've tried to do at Dev Mountain is create this environment of learning and this environment of trust. It's extremely important on day one this is what everyone should do in your workplaces too. It's extremely important that you establish hey, in this room we have to establish that everyone is smarter, everyone is stupid. It's easier to just say everyone is stupid including the teachers, including the instructors and the mentors and once we establish all of that then it's cool because if someone says something that's a dumb question or whatever it doesn't matter because other people in the room have that question and there's this culture that's been established where if someone judges another person for asking a question or for making themselves look vulnerable then there's gonna be consequences for that. So comparisons, oh no, oh no. Let me check something real quick. Yep, that's too bad. Let me just verify the internet's working here. Okay, if you go to this URL you can see these funny pictures. So, Dunning-Kruger Effect, what it is is a lot of times you'll compare yourself to other people either you look down on them for thinking you're smarter or you look up on them in a sense where you think you're really stupid. Dunning-Kruger Effect is when you look down on someone and you think hey, I know it all there's really nothing more I can learn from anyone in this room and it's extremely bad especially when you're in a learning environment because there's always something you can learn from other people. The opposite of that, as we've all heard, imposter syndrome where you go in and everyone in the room is smarter then you don't feel like you belong there. It happens all the time in engineering because we're always doing code reviews and things like that and it's not really helpful to learning because it kind of limits yourself in a vulnerable state. Sorry, all these are dead. The solution is to check out whenever we see someone who they're either having kind of a Dunning-Kruger moment or an imposter syndrome moment what we do is we take those people aside, explain to them what's happening and kind of just try to help them get on the right path back to learning most effectively. Cool, stress. What happens from kind of an evolutionary standpoint is whenever we encounter stress what we do is flight or fight, meaning if a bear walks into this room right now I'm either going to decide to fight it or I'm going to run to try to stay alive, right? And what happens emotionally in your brain is two things, adrenaline and cortisol. Those two things get released into your brain. Adrenaline gets you really excited which gets you ready to fight the bear and cortisol when the bear leaves it kind of what levels you out to get you back to normal. These can be extremely dangerous whenever you're having chronic stress because what you're doing is you're essentially always having adrenaline, always having cortisol in your body which leads to some very bad things. Adrenaline creates scars in your blood vessels which lead to things like hypertension, heart attacks, things like that. And then cortisol messes with your hippocampus which is mainly responsible for taking short term memories and converting them to longer memories. Lack of sleep. So going back to what we talked about earlier we sacrifice a lot to get sleep. Every night from six to nine hours we put ourselves in a very vulnerable state and there's a reason for that is because sleep is absolutely necessary in order for us to function. You hear this a lot, oh this is one, I can describe this one. So what this picture was is Aaron Frost, he works at Delmo. He tweeted that we're doing, they, him, Merrick and a few other guys were doing a hackathon, it was 48 hours and Aaron Frost tweeted that Merrick after Merrick had gone to bed it was like one a.m. or whatever. And he said, hey, something making fun of him how he's weak or whatever. And Merrick tweeted back in the morning saying, something along the lines of, and I'll try to quote him, bro it's called sustainable hacking, where are you this morning? And I loved it because it was a very Merrick thing to say. And Merrick was there in the morning and I assumed he had stamina to go all day. Okay, so let's talk about some things that help learning. Movement, we are living in the most sedentary time in human history. Our brains, regardless of what your view on evolution is or whatever, whether it was thousands of years ago or even tens of years ago, we can all agree that the history before ours we are always moving more than we are today. A lot of times today we're sitting and sometimes we're standing now which is the cool thing to do. But we're staying in one place and we're sitting at a computer all day. And that's not the best for us. Exercise is a competitive advantage. If you're in a field where you're using your brain to do things and to make people or yourself money, which we all are, exercise is a competitive advantage and there's some facts about exercise. The brain can only focus on one thing sequentially. So essentially if you're familiar with like the JavaScript event system, our brains are kind of, it's a stretch but it's kind of the same idea where we can only focus on one thing at a time and a lot of the time what our workplaces do now in these open work environments is they don't really benefit that very much. Meaning we have a lot of distractions. We're always connected to the internet unless you're giving a talk where you need to be connected to the internet and you're not. But usually you're connected to the internet. Hey, look at that. So what this was was you were supposed to be focused on this and not on me but it didn't work at all. So enjoy these completely random gifts. I'm gonna check if these are up real quick. Not yet. Okay, we're cool. I'm not reloading anything. I'm not full. Okay, so let's talk about when we're programming our brain takes these mental steps. Very first thing is let's say we're going from like Twitter to programming. So we're going from Twitter, we're on Twitter. We're enjoying one of Jameson dances like GIFs for the day because he loves GIFs. Then we say, hey, we really need to get back to work. We have to start programming. So what we do is we go through this attention shift. We're in our brains, there's bloods moving around and our brains are saying, okay, I need to go from tweeting to programming which require two totally different aspects of our brain. So we'll activate for step one, meaning our brain says, okay, where is the information I need to program? It goes and finds it and then we start programming for say 10 to 15 minutes and then what happens is we get a tweet that pops up on our sidebar and then that entire process has to go and your brain has to go from now from programming back to Twitter and then from Twitter to programming. It's extremely difficult to try to stay entirely focused but the process of going back and forth is what can ruin your day and when you've had like a 10 hour day but you didn't get anything done it's probably because one, either your coworkers were distracting you or Twitter or whatnot was distracting you as well. Struggle. Society emphasizes the results and ignores the process, meaning a lot of the times whenever we hear about a basketball player for example, he just got drafted out of college and now he's going to make millions of dollars. We don't really focus on the fact that that basketball player has been getting up at five AM since they were like six and all they've done is play basketball and when they were in high school they tore the ACL and they had to work really hard to get back to the point where they're at today. As a society we ignore all the, for some reason we ignore all the process and we just focus on the end result and so for beginners learning to program that's extremely difficult. Who here has heard this or they've said this themselves? I hear it all the time being the position I'm at. Learning to program is easy. It's extremely hard. It's easy when you learn to program and then you go and you get a job and you're at a job for 10 years and then you talk to someone who's starting out and you remember when you learned a program but what you forgot was all the difficulties and all the hard work that you had to put in to get to the point where you're at today and so what you say is, hey learning to program is easy because I remember it being easy. When it never was easy it was extremely difficult. You just forgotten how hard it was. We always talk about or it's kind of a known fact that physical exertion will lead to physical gains. What we don't talk a lot about is that mental exertion leads to mental gains. A lot of times at Dev Mountain students will talk to me and they say, hey I'm trying really hard but I just don't feel like I'm learning. I just don't feel like I'm getting it. I haven't been all the time. When in fact they are learning they've just kind of forgotten how far they've come until they get to the end and they start working on their personal project or whatever and they've come all this way and now they're a developer or whatever that means and they can build things. So this is one of my favorite quotes about learning and it's the last slide I have. Learners inherit the earth while they'll learn, find themselves beautifully equipped to deal with a world that no longer exists. Questions? That's a really good question. So the question was how have I modified my teaching style based on what I've learned about learning? The biggest thing and everyone does this initially is say we're talking about just regular for loops like for var i equals zero. What always happens is the student will raise their hand. As we're in the middle of discussing like this very fundamental easy crap. This very fundamental aspect of programming, right? And I'll say hey online I was just reading and I read about this thing called reduce and map. How does this relate to what we're talking about? And that's a complete trap. Because what happens is you say okay I know this and I can prove to the whole class that I'm really smart by showing how broad my knowledge is of JavaScript. So you come over here and you say okay well what you can do with map is map the property on the arrays and blah, blah, blah and now you've just lost 90% of the class because you're now in map and reduce land when they're still trying to grasp this regular for loop plan. So I think that's the biggest thing is not letting lectures get to the point where students dictate the lecture and the students dictate what they learn but really sticking to the principles and kind of the learning objectives that students are supposed to learn. And if we wanna venture outside of those do it after the lecture. Good one. Question was what I think about learn once right everywhere. I like the idea of it. I mean for like a four word or five word quote it's obviously limited. But everything that that represents as far as React Native is beautiful. I love it. Approve. That is a very heavy question. I don't think I'm qualified to answer that. Yeah the question was we do this context switching and when you discover a hard problem you kind of naturally have to do that right. You have to go from not knowing the problem to going and figuring out the problem and coming back to it. I think that's fine. The biggest things where it becomes a problem is making context switching from two things that are totally unrelated. But I think related and I have no science to back this up obviously. That's what I do. No science. That's what I assume is if you're switching from something where the context are very similar I would say it's fine. Someone's gonna email me and tell me I'm an idiot. But that's what I would say. Perfect thanks.