 So picture the scenario, you're sitting in a room, you're sitting there with a prospective client or your boss or somebody and they're presenting you with a problem they want you to solve, right? And they're looking at this really long form, you're looking at this really long form that they want you to implement and you're going, what, you know, have they even thought about the problems behind this and they want the submit button up at the top outside the form and there's just all these issues with it and you know, your first thought is like, have they ever thought about anything in usability and how stupid are they and what are they doing when they're coming to you and saying, oh, I want you to do this long form, I want you to, the interesting thing is you're both coming at this with two very different perspectives and two very different sets of eyes. And so our biggest assumption a lot of times is, our customers are stupid, our users are retarded, right? Sorry, I shouldn't have used that word. You know, but we have these mental thoughts of, you know, what are they doing? When in reality, they've got their own reasons for what they're doing, they've got their own visuals that they're bringing into the situation and that's what I wanted to talk about today. I had the thought of the title, your customers aren't stupid and your coworkers aren't morons. This is not a blanket statement, there are morons out there given, I've worked with many of them before. I have been the moron on the team many times but I wanted to talk about how the brain works and how we interact as people and hopefully give us a little bit of a better understanding to what's going on. So the purpose of this talk is not to be up here like a psychology professor because I'm not. None of this material is original, I stole every single bit of it, which is great for you because it means you can go steal it. If you go buy one book when you're done here, I will have achieved what I wanted to do. Who here has read Pragmatic Thinking and Learning? Who here has it and has meant to read it? Oh, come on, that's usually a larger subset. So Andy Hunt, one of the Pragmatic programmers, now running, helping run the, co-running the Pragmatic programmers publishing company, wrote a book called Pragmatic Thinking and Learning, Refactoring Your Wetwear. He talks about the brain and he describes it in terms of how a computer works. It's a dual core CPU with a shared bus. Fantastic analogy, turns out, because that describes so many of the things going with the brain. It also is really cool because if you describe the brain as a computer, you can understand why we're so screwed up. We have a lot of bugs in there, okay? I've gotten some of my information from that. I've gotten some of it from my sister who is getting her PhD in psychology. She quit her job and decided to go back to school. I was all proud of her. She went back to get her undergrad. She's like, yes, I'm studying psychology. And I went, no, everybody does that. But she actually went on to get her PhD and she's, I guess they call her ABD, all but dissertation. They call me ADD, but that's a whole nother story. And so she gave me some material that I was pointed to as well. And so the talk kind of pulls from both of those. So first of all, let's start off with the scenario I'm setting up. You're working with users. You're working with your boss. You're working with people external, right? We have this tendency to think of them in terms of how they're stupid. One way or another, something's deficient. We're smarter than they are and the conversation's very, very abrasive. Walked into a company one time one of the most successful projects we had lasted four days. The reason I thought it was incredibly successful, a friend of mine who I tried to pitch sales to early on when he started this project, he'd gone a different direction, I totally understood, helped set him up with one of the most brilliant programmers at the time that was available in the user group. He calls us up four or five months later and he's like, look, I'm at the 90 yard line. I need to get a touchdown. I'm right here. Help me get across the goal line. Of course, being into football, I understood what he was talking about. He's like, we just cannot get that last little bit done. What's going on? So I walk in, brought a couple of my teammates with me and he'd given us a list of things that we needed to do. And some of it was like a Capistrano deployment they were having trouble with and some other things. This guy that he had hired was good. He wasn't exactly an expert in Rails. He hadn't been there for a long period of time. But we get in there and there's palpable tension. I mean, just you can feel it in the air. He's the CEO. He's got a couple of sales people that are off doing their thing. There's Gary, this brilliant developer sitting over in the corner. And he is by far a picture of a geek. You walk into this office, he's got six monitors off. There's Star Wars posters, I mean, completely. These guys couldn't communicate at all. And it turned out to just be a communication issue. We heard what he was saying, mapped it out, gave it to my guys and they went in and worked with them. Brought us in a couple of days later and he goes, it was brilliant because I expected you guys to be productive on what you did. I didn't expect you guys to be able to make him more productive, right? And it was interesting because it just turns out they couldn't communicate on the same level. But they had a lot of biases coming in and a lot of stereotypes. Turns out the brain loves to stereotype and it loves to pattern match. We take in lots of complex bits of information and we like to make patterns out of them very quickly. It's how we survive. We have tons of information we're taking in now more than ever. And so we have natural tendencies to group things in sometimes inappropriate ways, sometimes appropriate ways. So the term stereotyping actually came about in 1922 by a journalist named, heck was his name anyway, Walter Lipman. And he borrowed the term from the printing process. A stereotype was actually a metal plate used to make copies of pieces of paper. We call it Xerox now, but back in the day they didn't have it. And what stereotyping is is a set of beliefs about the personal attributes of a group of people. So these are, you take a group of people, you take a certain set and you apply certain assumptions about personal traits based on the larger group that's there. We've all heard it in negative terms, you're not supposed to stereotype, you're not supposed to do this. But if we understand that we do and we understand what the motivations are behind it, it helps us go a lot further into what we're doing. So three distinct functions that they serve for our brain on an individual basis. I'm not talking about a group basis, I'm talking about an individual basis, why we would stereotype. Number one is a cognitive function. I just alluded to that a minute ago. The cognitive function is a way to make our brain's life easier. We all have this natural lazy tendency, we try to simplify things. And so we have this natural kind of cognitive reason to go out and start magic. We know certain things about a group of people so we apply it to a larger set. The other reason is an ego defensive function that I call it and that's pretty obvious, right? We feel better about ourselves by applying stereotypes to others. Who was in Orlando for RubyConf, what, two years ago? Anybody? Okay, so just a few of us. One of the most interesting events I've seen in a long time. The last day of the conference, we shared the conference center with another group. So you had a group of, I'm gonna stereotype us, geeks, laptops, and backpacks. And then there was a suntanning convention. Lots of fake tans in silicone walking around the hotel. That was the most awkward bar scene that night I have ever seen in my life. He got offensive function was really interesting to observe there because as geeks we kind of ruffled our feathers and went up oh my god, they've all got an IQ of 50. Okay, some of them did, we talked to them, it was weird. Of course, they're doing the same thing to us. They're like, oh my god, don't let them touch me. Nerds from high school, they're coming back. But it was an ego, that's a great example of ego defensive function. We see people that are physically fit, especially me. I look at people that are physically fit, right? And there's stereotypes that start applying. Why? Because I feel bad about myself, right? It helps, it's a natural, it's an inner thing we do. And so it's one of the reasons, not all the time, just some of them. The other one is a social function. We help foster loyalty by having those stereotypes, by having stereotypes that our group shares, right? If I have this, I have a better identity as a certain type of person, as a certain group, right? I fit in better with the geeks if I don't like fraternities, right? We have certain, they serve as purpose for helping us fit in the larger social setting we're trying to fit into. So, looking at the- Is this the whole Vim socks thing? What's that? Is this the whole Vim socks thing? No, no, no, Vim actually does suck, so. No, no, no, no, no. That's not a stereotype. That's not a stereotype, that's a fact, so. What's that? I can hear you. I know. It's okay, one of these days, you guys will get enlightened and come up to us, or that you max. But we'll wait. So, if you, but let's understand the culture and the stereotypes that we have, okay? Some of them are difficult to think about. What do you think of somebody who sits across from a table from you and has a really thick southern accent? I don't want you to answer, okay? Because I don't want this video going out, getting offensive, you know, having another go-garuco moment. But just think about it, right? Think about the group we're in and think about how we feel about people who are right-wing, who are very much in the Republican Party and have a certain set of beliefs that align with that, right? Some of us, it's okay. Some of us have a certain mindset that we do. Now that Twitter's out and there's a lot more personal interaction going on and personal exposure, you know, people that we know we've always looked to in a geek status, you know, on this kind of like geek fame status, right? But you only see them through their blogs and their books. Now that we've got Twitter, we start seeing how people feel about things personally. I know a lot of people who are not very fond of Uncle Bob anymore now that they follow him on Twitter, right? So there's that. In the geek setting, a lot of developers that I know feel a certain way with people who have very strong Christian beliefs, very strong religious beliefs in any sense. Something to think about. What do you think of when somebody sits down in a suit at a meeting? This one you can shout out. Asshole. This one fascinates me because actually my sister and I were talking about this talk and we were talking about stereotypes and we were talking about, she's talking about an interviewing, how people come in in a suit and I started laughing. And I said, this is interesting because this is one of the places in our culture where it's completely reversed, right? If people don't show up to a suit in most situations, they're looked down upon. If they show up in a suit, they're more professional, they take care of themselves, they're serious. For us, if somebody shows up in a suit, they're trying to be someone they're not. They're trying to give us something that we don't want. They're trying to sell something to us, right? Fascinating thought process unless of course you're top funky who can pull it off at RailsConf. Coolest guy we all know, right? Again, thinking about our culture, if I sat up here and said, what does it mean? Are you guys gonna laugh as hard as a group of librarians? If I say double rainbow, are people here gonna laugh versus over there? I was just at Ruby Hohdown last week and Ben Schofield put up a slide at the very end of his talk. It was brilliant. A beautiful slide of this double rainbow and he had, what does it mean? And the whole place starts laughing. And Glenn Vandenberg and I are sitting next to each other. We start laughing. And he's like, the funniest part about this is the fact that the whole entire audience just laughed. Like we all know the mean, right? We all know what's going on. We say fail well, people know what we're talking about. There's certain cultural things that we have as a group and we identify with in certain ways we think. Now, you're sitting at that same meeting. This person has told you to put a button on a page. Stand in their shoes for a minute. Because who walked in the door? Well, a person's about 30 years old. They haven't shaved in about three days. They have a T-shirt on of Han Solo and it says who shot first, right? And they're sitting down there and they're realizing I'm spending an ungodly amount of money on this person, whether it's through salary or through consulting fees or whatever. And they're understanding that they're playing a gigantic game of Simon Says. Because sometimes the way we work, we hear questions and we think real answers. They expect questions. They would love nothing more than to come into a room and go, I don't know, just make it work. But they've had that happen before because we sit there and go, well, tell us what to do. They've had these discussions before. They're just as frustrated with us as we are with them. And so they've tried to anticipate these questions and probably anticipated a little too far. We're cutting them this much slack, right? But they're cutting us this much slack as well. They're trying to hedge their bet. So just because we come in with stereotypes doesn't mean they're not. It was really funny. I'm sitting here working on this talk. Okay, I've been working on this talk for this whole conference, I'll admit. But I'm sitting on the couches yesterday, we're outside there and we had the sign up and this guy goes walking by with his suitcase. It was hilarious. With his wife and he stops and he reads his sign, he says, Ruby Web Conference. Why, that's a bunch of exciting guys in there. And he walks off. It's like, wow, man, that was just, talking about giving me some material to talk about. And then I sat back and watched everybody coming out. I started laughing even harder because he was right. And I fit in with it as well. I mean, my sister's always made fun of me because I've always been in programming, in computers in some way and hanging out with people that way. It wasn't until recently she got into the PhD program and so she's gotten into her own little geek culture and her geek enclave. And I went out to drinks with her and her friends one time and they start talking and I've got this just deadpan blind look on my face. Like, I have no idea what's being said. She turns to me, she kind of giggles. She goes, I now know how you feel. Like, you know, I now know that you go over here not understanding why I can't understand what's going on, what the jokes are, what's going on. So if we understand these, I'm not saying we have to break them. It's really hard to break them, but if we understand they're there, maybe we can look past them. Because by applying these at large to people individually, we often miss the individual characteristics of the person standing in front of us. And these are in the form of bugs. Again, our brain is like a computer, in which case it's got a crapload, it's like a Windows computer. It's got a lot of bugs in it. And these are defined as cognitive biases. One of the many types of bugs we have are defined as cognitive biases. Things in which they're known bugs. They're the errata, whatever you want to call it. If you go out on Wikipedia and look for them, you're gonna find a ton of them. No, don't do it right now. Actually, I'd like you to listen. But some of the ones that Andy Hunt mentions in Pragmatic Thinking Learning are really interesting. I find. One of them is the cognitive bias. The ways in which, or excuse me, that's what you get for reading notes and talking and not thinking about what's happening. The symbolic reduction fallacy. You oversimplify something. You take it down to a point at which by doing that you've missed a large set of information. Really interesting. It would be why the business model for the jump to conclusions mat is not gonna work. Again, trying to head on that common culture there. Nominal fallacy. By labeling something means you can understand it better. It's a type of this symbolic reduction fallacy, but it's called nominal fallacy. If I give it a label, I'm gonna understand it more. Well, that doesn't happen. And it really throws people when I tell them I'm a vegan if they see me in person. Because they look down and go, but the dude's huge. How many fat vegans do you guys know? Come on, you can laugh. It's okay, really. But if I tell them that over IRC they have a very different mental picture of me. It happens. Just by labeling doesn't mean we're gonna understand it in the larger sense. The Hawthorne effect. People do better when being measured. It's a natural occurrence that happens. It's why it takes a long time to come up with some of these research projects because they really have to work hard about this. Anybody ever hear been on an Agile Transformation project? Wow, nobody? You guys are, okay. So I've been on a lot of these, okay? I used to go out before I found Ruby. I was out evangelizing Agile. Excuse me, Agile Extreme Programming. Iteration three, on every Agile Transformation project, our velocity has always been at or near zero. Guaranteed to happen. Agile Transformation means you're coming in. Some consultants are coming in. They're floating in a couple of people. They're getting people from the company as well and they're gonna teach you how to do Agile. And everybody gets excited. We all rah, rah, rah, we're all there to do it. And we come in and we start working. So the velocity on the first iteration, ah, we're kinda getting used to it. It might be kinda good, it might be kinda bad. The next iteration, it's just through the roof. Everybody's going crazy. The third iteration, it just goes to hell. Because all of a sudden, people stop looking at you as closely, right? So you're not tempted to keep going as hard as you were before. First time you go to do some training or to produce some code to prove to somebody, if they're watching you, you're gonna perform a lot better just naturally. So understanding this helps you. Anchoring, this is just by seeing something, a number or whatnot, can lead us to think differently about it, okay? The example Andy Hunt uses in his book is just phenomenal. I can't think of a better example. But if I keep talking to you about the books that cost $100 and the books that cost $100 and the books that cost $100. And then I show you this book that's $85. Wow, it's a deal, right? By telling you a number already, you anchor on it. The maker of the bread machine first found this out the hard way when they came out with this bread machine that was $150. Everybody thought it was expensive because they didn't think it was something they needed. So they went back to the drawing board, they created another one that was $450. And the $150 bread machine sold like crazy, right? Because all of a sudden now it's a deal. Walmart does it to people all the time. They bring you in with a certain price that's there or they take another price and they actually jack it up way beyond what they think you're gonna buy it because the one sitting next to it is gonna look a lot cheaper and they want you to pick it up. So anchoring happens. Now, let's talk about anchoring in our environment. When I first came into the geek culture, right? I came from sales. I was, yes, the double reincarnate, I know. But I came in and somebody pointed me to thinkgeek.com. I found this place hilarious. But I also was really surprised at all the t-shirts that were out there that were extremely negative. Things like, and I was just looking them up again today. The ones that just say you are dumb, except in binary. Select star from users where clue is greater than zero. Zero results returned, right? PEPCAC, bow before me for I am root, which you would love. Absolutely. And then my favorite is I see dumb people. We're anchoring ourselves. We're telling ourselves over and over again that nongeeks are stupid, that they're not as smart as us. Now we go into those meetings, how is it we think positively? How can we? We've just anchored it, right? So think about it. Exposure effect. We prefer things because they're familiar. It's a natural cognitive bias. It's there. If it's familiar, we prefer it over something else. And we will find, there's other cognitive biases. One is about finding data, I didn't write it down, but it was about finding data that proves your point, right? You just look for the things that are gonna work with you, not for you. It's a whole liberal media versus right-wing media type argument. And in these last two, the exposure effect, and then the last one, need for closure, we get extremely nervous when we don't know the ending to something, or the ending to something hasn't come yet. It's a natural part of the brain go absolutely freaks out. We have a need for closure. Now think about the last two, and think about the customers we deal with. Exposure effect, we prefer things we're familiar with. And the need for closure, we cannot, we don't like open-ended scenarios. Is this why we have such a hard time selling agile to people? Is this a hard time why we have such a hard time convincing people to look at Ruby? It's a natural part of the brain. This talk is 30 minutes. I'm not gonna sit up here and convince you how to debug your mind. But if we're aware of them, we're gonna know some of the things we can work around. That's the whole purpose here. So yes, I'm up here hand-waving, but I'm admitting it, okay? That was the users, the clients, the people we're talking to there. But what about the person sitting next to you and the company that you didn't have any control hiring, right? We think of them as morons a lot of times. Oh my God, they're asking another stupid question. Oh my God, they use design patterns for this. They copied them directly from the book. What was going on? Who here knows about the Dreyfus model? Okay, you guys can go to sleep for the next couple minutes. And please, you do, because I don't want you hickling. Back in the 1970s, they had the same exact problem we do in nursing, okay? Again, I stole all this from Pragmatic Thinking and Learning. You can find it there. But just like us, a programmer is a programmer is a programmer to people outside, right? But does anybody here really believe that? We don't. Nursing has the same issue. A nurse is a nurse is a nurse. The girl drawing your blood in your doctor's office that sees five patients a day, 10, okay, she probably says, hopefully she sees more than five, the doctor's not gonna be around long. But she sees maybe a dozen patients or so. Maybe they're okay with sticking with a needle. Versus the nurse that's in the emergency room, right? She knows as much, if not more, than some of the doctors that work out in suburbs, right? What about an emergency room out in the suburbs versus an ER in a downtown Metro Detroit, right? A nurse is a nurse is a nurse. Well, no, not really. And they had the same problem we do. How do you identify where people are? How do you identify how to promote them, how to reward them, how to train them? So they came up with the Dreyfus Model of Learning. They talked to a bunch of experts and said, what does it take to become an expert? What does it mean? And they boiled it down to two really interesting things. Picture two dials that work in the exact opposites. One of them is context and the other is rules. It's a constant dial that you move and manipulate as you go up the chain. So we have five stages. We start with stage one. I get what do they call them, the novice? Yeah, the novice. These people have little or no experience, okay? They desperately need a win. Their only concern is not screwing up. And their only concern is accomplishing something. They wanna be told exactly what to do to get from here to something that happens that's positive, okay? They need a lot of rules. They need a lot of rules surrounding them. They need recipes, okay? Take this, put this together with it, throw it in the oven for exactly 20 minutes, pull it out. Okay? They need these recipes to follow, these steps to follow, and here is the result. There is a big concern for when things go wrong and these rules also need to be context free. Don't tell me the context of it, just tell me what to do, okay? Andy's example that he uses in the book is in the term of taxes. I'm always gonna be in a stage one driver's model with my taxes. I've never taken another step to know what to do next. If things go wrong and they send me a letter, as he says, he writes up a check, sends it to his accountant and says, please handle, right? We have quicken and things like that that just say, how much did you make? Did you spend anything on this? Did you do this? Click here, done, send this amount to this address, okay? Right, we've never taken the time to learn the bigger picture, to learn what's going on. Then you go on to stage two, the advanced beginner. This is the point at which they're just now starting to pull from past experiences. They've gathered a little bit behind them, they've seen some things occur, and they can just start applying a little bit of context, very small amount here. They desire to learn more at this point, okay? Stage one, you just don't wanna screw up. You wanna do something good. Stage two, you wanna start trying to figure out what's going on. You have a little bit of curiosity starting to peak and see what's happening here. But if you're given the big picture, you're gonna dismiss it as irrelevant. And he gives an example of a CEO standing up in front of the company and giving sales figures. This is really interesting, I was reading this. I actually own the company Edgecase, and we had these meetings once a month, and we came out with these sales figures. We wanna be transparent, right? So we're showing this to everybody. Turns out half the people there didn't care. They just wanna know, are we at risk of firing somebody next month, or are we doing okay? It was a simple answer. So we changed it and basically said, come to me and ask me, and I'll tell you. Once a month, we have about two people come to us and ask how we're doing to see some details, and we show it to them. It's great. The others don't care. Just let us know if things go wrong. And we will. You move on then to stage three in competency. You begin forming conceptual models. You start trying to make sense of the area and the problem domain you're in. You're putting things in context. You're putting them together. You're starting to. You can actually, at this point, start to work on troubleshooting a little bit. Maybe if I know something's happening, let me pull from some past experience. These often are the people who make the best leaders on your team. There's an interesting reason for that. I'll go into in a minute. Anybody here familiar with or in the military have been in the military? Well, family. Yeah, family, right. These are, think of these as your NCOs. You're non-commissioned officers. These are the guys in the trenches, leading guys, but also doing, okay? So they're the team leads on the projects. The tech leads. Not necessarily the managers and the architects, but the team leads. They're going through and they just naturally start helping people. So you also start taking action based on planning and past experience, not exactly on what you're being told. You start, you become proactive, as much as I hate to use the word. It fits well. Stage four is proficient. At this point, you need a big picture. You just get desperate, you desire it desperately, okay? You need the big picture in order to function. What's happening at the large so I know what to apply and when, okay? You can start reasoning why certain maximum, why certain maxims make sense in some areas and they don't in others, okay? I say TDD all the time to level one, two, and three in the driver's scale. You talk to people in the level four driver's scale, now we can start talking about those times where we don't. All right, sacrilege, oh my God. All right, been teaching TDD for six, seven years now. Oh my God, there's a time you don't. Yes, there is. But if you're not far enough on the scale, I'm not gonna talk to you about it, right? Because there's certain context in which it makes total sense. We just talked about it out in the lobby this weekend. At this point, you can also digest feedback and self-correct. You don't need somebody else to correct you and point you in a different direction. You can see things have happened and gone wrong and you can start digesting that and doing it yourself. So level four, you're gaining really close to that top expertise. At this point, you re-case studies from others and you learn from what others are doing. You learn a lot on conferences hearing about other technologies that people are applying at certain conditions. And you're able to start digesting what information is relevant and what's not. And this is a real important part of this scale. It's up to this point, you're digesting all the information you can possibly take in and trying to figure out what to do. At this level four, you're starting to listen to the information, taking it in, you're kind of half listening, but only parts of it are being pulled out of the stream. Because your brain's going, yep, that's important. Yep, that's important. But that doesn't matter, throw it out, okay? And you're able to go on from there. Level five is the expert. They are the primary sources of knowledge. Not everybody achieves level five no matter how hard they try. But these are the people that set the tone for what we do. They're estimated to be maybe five, like two to 5% of the audience in a particular field. Are these level five experts? These are the guys, the wizards, okay? They're all context, very few rules. They set the tone for what we do. And they really know which details to sort out and what not to listen to. Interesting discovery when they came up with this model. It was always believed up until this point. In fact, they built knowledge management systems around this belief that experts went through a series of thought processes. They just went through them really damn fast, right? The fire chief got to a fire and he would go through a checklist of about 20 particularly things before he would send somebody in or nowhere to put the lighter truck or what to do. They did the study and they found out that it was a complete crock. That was wrong. They don't. They go by their gut. They've trained their gut well. But they go by this gut feeling, this intuitive instinct of context and they just know. But they've had a lot of experience by this point in time. Another interesting study was done where they took a bunch of experts and they said write down a set of rules and regulations for this. I think they did it with pilots. Again, don't hold me on this because I'm taking it off of memory. But Andy talks about in the book, one of these studies he did, they set write down rules that people should follow as they're coming up and they did. And the people on the level two and level three on the dry fist scale improved their proficiency quite a bit. But they turned it around on them. They made them follow those exact same rules and they actually decreased their abilities quite dramatically. They actually, these are the people who following rules completely throttles them. In extreme programming we had a saying when we were training people because they came up and said, whoa, we kind of, you know, this XP thing looks good but we don't know about this peer programming thing. Or we don't know about this metaphor thing or this planning game thing. Or they would pick random parts and just shoot in or out. And we always used to say in the very beginning you're not smart enough to know what to exclude. Take it all as you go. Now that knowing the dry fist model you understand why this makes sense. The other thing I forgot to mention about the dry fist model is it's particular to a type of activity. It's not a global thing. You are not a dry fist level five and that means you're that for everything. It depends on the activity and what you're doing. You could be a dry fist level one cook, please don't invite me over to your house. But you're a dry fist level five skydiver, God, I hope so. Better than the reverse, right? It applies to certain domains and what you're doing. This was really important for me to understand because I tried to learn a new language about three and a half years ago. Went on this crusade, it had been a while. By this point I had a lot of Ruby experience and I felt like an expert in it. Pretty close. So I picked up Erlang. Yes, it's an ugly language but it just didn't make sense to me. I immediately scrapped it and then I went to iPhone development and I really tried and tried and tried and I threw it away. I put the book down, could not get it. Terrible language, terrible environment. I still feel the same way but that's a whole nother story. But I just, I couldn't understand it. I sat, this book comes out, I sit down and read it and it occurs to me what was going on. So I pick up the iPhone book again and things just fell into place. I went to the Pragmatic Studio for iPhone training. It was wonderful. The reason, I was allowing myself to be stupid. When I first picked up the book on Erlang I'm immediately looking for architectural patterns. I'm immediately looking for the large picture of what's going on. I desperately am craving that. I'm trying to jump in at level four. That doesn't work. You have to work your way through things. Yes, the worlds can be faster, right? I was at level two Ruby for God, what, two years. I don't have to sit at two years to learn Lisp now but maybe I need to spend a couple months there. Let myself be there. It's fascinating how much more productive I was at that point. I immediately ran up the chain and iPhone development, it was great. And then scrapped it because the language and environment sucks. I don't think Evan's even listening to me. One of the big problems that comes in with the driver's model in development shops is because of political correctness and because of the way we've been about ourselves we feel we need to treat everybody equally and that actually harms us. Told you I'd get back to the design patterns book. This is a great example because everybody knows what happens with the design patterns book, right? These young developers get it and they run around, as Dave Thomas says, they run around like it's a Bible. I was sitting in an audience one time where he's giving this talk and again I'm sitting next to Glenn Vandenberg and he starts laughing hysterically and he raises his hand and he says, yeah, and they even made the mistake of putting the red ribbon in there that make it look just like a Bible. Dave looks up and goes, yes, I prefer to call that the fuse. These guys run around with this and think, oh my God, I've got design patterns and they go and they apply them and then we all look and we point and we laugh later. The problem is that was a book written for a particular audience but it can't say on the front, please don't pick up if you're still young, if you're still weak. Only pick up for the strong developers. They can't say that, right? We don't say that. Don't talk to people about that. This book is wrong for you right now but that's the way it happens and we treat all the developers in our shop with the same level of expertise and some flounder and some thrive. We start teaching to the lower developers and we chase our larger, our better developers out of the door because now they're bored, right? But because we feel like we have to treat everybody the same, we cause these types of problems. I talked before about level three sometimes make the best teachers and I still believe this to this day. There's a lot of subjects I've given conference talks on that I feel are a lot stronger than the people who have actually written the framework because a lot of times picture yourself in a talk with somebody who's written a framework who's deep, deep in it, who doesn't understand what it's like to be new. They'd forgotten what it's like to be there at the very beginning of something. They don't know how to form the information to put it together. I encounter this all the time when I pick up books that are written about a particular subject by people in them. Now I'm not saying this blanket approach that applies in the larger sense, but a lot of times it does. So as a leader or as somebody in your development shop, now that you know the drive this model, if somebody comes to you and your first reaction, they ask you a question, your first reaction is, oh my God, this guy's an idiot. Stop for a second. Think about the skill level. Think about what's there. Is it an intern? Well he might need an exact thing to come up. He comes up to you and says, should I use a singleton here? And your first reaction is, oh my God, don't ever use a singleton. If you're in the Java world and he comes up and says, should I use a checked exceptions? Checked exceptions are always shit. You know this is gold, but they haven't been through those arguments. On a smaller example, when I was in college, I was smoking at the time. We'd always go outside this particular point in Student Center. My friends and I, and we started playing the Kevin Bacon game because, well, it's cold as hell in Ohio and we're out there killing ourselves. And so, we would start playing the Kevin Bacon game. Somebody named a movie. We'd have to name the movies to get to a point where Kevin Bacon was associated with it. After about, I don't know, two or three weeks, we had a couple people come in late to the group and we started playing the game. And we'd be like, oh yeah, so and so too. I can't even think of half the movies now, but. Like the Lion King was one of them. Rumblefish, not Rumblefish. What was the Essie Hinton book that was real popular? Outsiders was another one. We'd get to that, we'd all fall like, laugh. Like, oh, okay, yeah. And there's, they're going, what? Well, we had already been through this rotation before. We knew the other three. We knew where we were going, right? That's a smaller scale, but think of it in the larger terms with the Dreyfus model. Next time somebody comes to you and think, and it sounds like they're a complete idiot. So I hope I've given you some food for thought. I've punted on the last part of my abstract because when I submitted the abstract, I thought we were talking for an hour and my discovers we're talking for, tells me we're talking for 30 minutes, despite Pat's example. But there's a book out there called Difficult Conversations. Not the most well-written book, but some really interesting strategies to having really difficult conversations when we come to a time where somebody is being an idiot or somebody is making bad assumptions of people or whatever, right? There's lots of examples in there. I told you I'd have examples of what to do. That's a whole nother half hour easily, okay? So pick up the book, it's a great one. If you only pick up one book though, Pragmatic Thinking and Learning by Andy Hunt, consider it a meta book. If you've got a lot of books sitting on your bookcase, you've got a lot of things you wanna learn, take time to learn this. Anybody familiar with what they call the J-Curve? Anybody? Okay, J-Curve was a thing they, I'm not even gonna pretend to know when they studied it or who did because I can't remember anymore, but it basically was this idea that if you're gonna learn something new, there's gonna be a time where you're gonna be worse than when you started. I decided to learn the Dvorak keyboard layout. I was useless for about two to three weeks, right? And then I was just somewhat okay for another, okay, let's take out the fact that some people think I'm useless in the company anyway. But the goal was it's a J, right? You start off here, you're gonna be worse for a while, but at the end you wanna be better than when you started. Same thing if you go to learn the Vim Editor or Emacs or anything like that, okay? You're gonna be worse for a little while and then eventually you're gonna be really, really good and that's the goal. Take this book, spend some time, it's gonna take some time, you're gonna put some other things on hold, but read through it. It's gonna help you in personal relationships and it's gonna help you in understanding how your brain works and help you more effectively learn. So if you have any questions, I'll be out in the hallway all night. Obejo on Twitter, thank you very much. Thank you.