Menu Icon

Getting Apps Done

Kel goes back to school

July 04, 2019

1x
Audio Player 15 Seconds Back Button Audio Player Play/Pause Button Audio Player 15 Seconds Forward Button

Episode

32

Happy 4th of July to all the Americans in our audience! Kel is back from teaching at Code Fellows bootcamp. We discuss his experiences while teaching new developers, share thoughts about the process, who bootcamps are great for, how they compare to universities and find out if he’s thinking about doing it again.
Heads up! There is one swear word in this episode, so it’s probably not 100% safe for kiddos! Kel has some strong opinions about gatekeepers!
Be sure to check out our new Slack community to meet others who are facing the same things you are and share your journeys!

Tune-in using
Listen on iTunes Listen on Spotify Listen on Google Play Listen on Overcast Listen on Tune In Link to our RSS Feed
  • 00:01 Joshua

    Welcome to getting apps done. A mostly non-technical podcast with the goal of helping you deliver software. With your host, Joshua Graham and Kel Piffner.

  • 00:13 Joshua

    I want your cup of coffee now.

  • 00:17 Kel

    Yeah, I'm a little caffeinated today.

  • 00:20 Joshua

    I, uh, can't do that anymore. Two is my limit and to generally get to the end of the day and I, uh, I kind of regret that.

  • 00:29 Kel

    I don't regret it until it's time to go to sleep. And then it's like, why am I still awake? Oh, right.

  • 00:34 Joshua

    You know, I used to drink coffee from the moment I woke up to the moment I went to bed and it never bothered me at all. But I have noticed that now if I drink anything after about 7:00 PM, I go lay down. The clocks are ticking really loud and I just can't sleep at all.

  • 00:50 Kel

    It's strange to me because it doesn't really feel like I'm caffeinated or anything. It's just, Oh yeah, it's, it's like seven o'clock. It's too early to go to bed and then you look at the time. Oh No, it's midnight. Oh Wow.

  • 01:01 Joshua

    Yeah. Certainly in my early twenties. If I drank a lot of coffee and I got to the point that I had jitters and things like that, then okay, yeah. Yeah. But you knew it was going to happen because you're sitting there like you're foaming at the mouth and you know you kind of got a lot going on in there. Yeah. But now it's, no, I've had one cup of coffee this evening at all and I'm up.

  • 01:25 Kel

    Yeah. Mine's more just I'm up. It's like I'm awake. I slept too long. I didn't wake up until noon. Like I'm up. It's time to do something else apparently. So yeah, I do have to cut back a little bit, which I totally failed to do at that school.

  • 01:40 Joshua

    Cool. At the school. Yes we are. We're kind of welcoming Kel back today because you've been teaching at a bootcamp. You're a better person than I am. You're actually teaching and educating people and helping them become better at what they want to do. I can't say the same.

  • 01:57 Kel

    I learned a new word, a practice, which means practice, which I kind of appreciate because it is practicing the things that you know, in the abstract. So we talk a lot about teaching, we talk a lot about, you know, fear and motivation in those scenarios. And I wanted to actually practice that in reality. And so yeah, I went and, I went and did the bootcamp thing for three months, somewhere around there. And it was a 10 week. Yeah, it was 10 weeks of Java, which is exciting, so terribly exciting. Um, but yeah, these folks had gone through, I forget how many weeks total. It's like 30 or 40, something like that. Maybe 20. I don't really remember. They've gone through, uh, three other courses of general web development and you know, so it was all javascript, html, CSS for the most part. And then that last one was starting to get pretty dev stuff. They did things in node, they did like actual apps that did things. They worked with APIs, you know, things were getting kind of complicated and then they'd get to pick whatever languages wanted to go into after that. You know, javascript, python, Java, a few others they offered. Um, but yeah, so I went in and did Java. It was fun for 10 weeks and kind of jammed in a, um, you know, a minor cs degree within that 10 weeks,

  • 03:17 Joshua

    That's kind of interesting. I'll, I will warn you right now, there's a slight spoiler here of next week's episode where we actually talked to a, a university professor as well as the lead of the technical division of the university who helps design the courses that they do there. And one of his arguments against bootcamps, he was not anti bootcamp. I won't say that. Um, but certainly obviously he works for university. He's got a certain point of view. One of his arguments was that the bootcamps are just too short for somebody to learn enough and he's quite right because a lot of them are 12 week courses, things like that. And that's just a ludicrously small amount of time to learn how to develop software. But you just mentioned that they've been going for 20, 30 weeks at a much more approachable amount of time when you're taking closer to a year. That's an amount of time that actually you could probably learn something pretty significant there if it's focused on just developing software.

  • 04:11 Kel

    Well, and this, this program to had a pretty high commitment right on time. They were, I think their program actually said 50 hours a week is expected, which kind of ridiculous from my point of view. That was something I had a lot of talks about, uh, with their lead lead instructor per people. Um, that I'm not a huge fan of that for real works. I don't know that I want to normalize that as a concept in the development world. Um, but yeah, they were working like 50 hours a week at least to study, to practice, to learn these things. And this particular curriculum was kind of interesting because they were very focused on getting past interviews, not just, like useful development, but like both of those things. And so they actually did a lot of data structures and algorithm work and it was kind of strange in like week one I think we introduced the concept of a link list and had them build it, and they they created, you know, those sorts of things. And I remember that being like the final for my first programming class in college. So it was very compressed, very high speed, but they definitely were learning a lot of the same concepts. And I mean to be honest, most folks come out of CS degrees and don't really remember most of it or use most of it. It's useful. They come in with all these things. We've talked about this a million times. But...

  • 05:27 Joshua

    Yeah, the key thing there is you've got four years to learn all this stuff, which I think is good and I think it is, it can, there can be a lot of benefit to spreading it out and not learning all of your programming in one year, but having four years to experiment, to play around, do things in your side time and to let things sink in. But you're also taking a lot of courses that have nothing to do with software development. And I know a lot of people will tell you that, you know the math courses and learning derivatives and things like that are gonna help. You'd never gonna use them.

  • 05:58 Kel

    If you do, you can probably relearn them as someone. One of the, you know, as someone who's actually had to use real math in programming on several occasions, it was not that fancy of math. I have a notebook that I found it been a few years now. I was pulling going through old like college coursework and it was like oh wow I made it to calc three I have no idea what any of this stuff is. I don't remember any of this. I have never used it and I probably never will. Some folks will. And I'm a little odd that I'm a very big proponent. I don't actually like the bootcamp style of instructing. If given the option, I would love to teach people from basic principles because I find that to be more educational in the long run. Understanding why something works and then also showing them how to use those things.

  • 06:42 Kel

    But I don't know in terms of time constraints, that's a difficult thing to create a course that teaches you both of those things in 10 weeks. So, you know, I can't complain too much about the course I did end up instructing, but a CS course, you know, teaches you from basic principles to an extent, you know, they teach you with basic. Um, when I did it, I was a c plus plus and we had to write our own strings library. So I'm very, very aware that a string is actually just an array of characters. While someone who goes through a bootcamp may never, you know, that might not be a concept that they ever really had to care about. So there are things in there that I would like to teach differently. There are differences in that. I'm not really convinced this is a huge difference in folks that come out though. And to be honest, most... when you hire folks, most of the stuff they have to learn is on job anyway. And at the junior level, I'm not really convinced it was a huge difference.

  • 07:36 Joshua

    No, agreed. I think particularly when you are not talking about somebody who's 18 and in fact when we spoke to Avi Flombaum the other week, he was specifically saying he doesn't think boot camps are for people who are 18. He was specifically talking about particularly people who are going for a second career, that changing careers because they have a lot of life experience. They have a lot of business experience because they've been doing something and switching into development, a boot camp is great. It compresses all that information, allows you to build up from something that you have already gained experience in into and transition into either software development or a different type of software development. He specifically talked about people who had a more legacy background like programmers who want to transition into more modern technologies. Again, they're in a position where they don't need to learn a lot of the fundamentals.

  • 08:29 Joshua

    They don't need to learn a lot of the basics. We don't need to teach them how to live and become human beings and wash their clothes and you know, fill their fridge with food that isn't going to kill them within the next 10 20 years. But they do need a transition between the knowledge that they have from whatever they were doing before to the knowledge that's relevant today and would allow them to start to learn those things when they start a new job. Because absolutely right. Most jobs you're going to come in, they're going to tell you exactly what they want you to learn because they'll have their own stack that's different than most other stacks. That's one of the great things and terrible things about technology is there are so many different options. Everybody's got a different one. So you're going to have to learn something.

  • 09:11 Kel

    Yeah. You speak of the old, you know the folks coming from older legacy languages to new ones. I ran into more folks that knew BASIC at that job than I have at any point before. It was kind of great to run into folks who's also their first language was BASIC, you know, not visual basic, just basic, basic. There were instructors, there were folks going through the program that were, had, had done programming in the past and you know, it was old, ancient languages that they hadn't used and you know, 15, 20 years. So it was kind of wild. There were a few, there were a few younger folks, but most of the folks I talked to were, you know, like you said, switching careers, which was kind of also great. So like we compare like university degrees where they have to, you know, you get the four years, it's like going to school, you show up to class, you pass your homework.

  • 09:59 Kel

    There's not a lot of like motivation, throughout the course for most people. And that's very different when you are someone like an adult having to go through this program, like, what am I going to eat next week? It's a very different motivation. A very different set of people going through those courses. So it was very different than going to a university. The students were much more motivated. They were much more, you know, how much can I jam in in these 50 weeks? Oh No, if I don't pass then I just spent all this money and they won't recommend me. And that was like a real fear that came out of this.

  • 10:31 Joshua

    Yeah. And while you were going through this, you mentioned fear quite a bit and you mentioned it as at the beginning of this conversation? Because obviously as we've mentioned on the podcast quite a few times, there's a lot of fear and a lot of this first off because there's just so much stuff to learn now. Second, there's a huge expectation. You were talking about the time expectation that already in business people just assume that people are going to put in a huge amount of hours more than they can efficiently put in in a week. After, what is it, 30 some odd hours you become less efficient. But we're still expected to put in 40 50 60 70 hours a week. And there's also the fear of what they're expected to know because as we just said, there's just so much technology out there, so many different options. And I've heard a lot of new developers talking about how much they think they need to know and that's not helped at all by businesses who think they need to know all these things and schools that think they need to know all these things. So fear must be a huge part of what they're going through and what teachers have to try to help them through.

  • 11:41 Kel

    Well then what you just described too is a very like common gatekeeping thing. Oh you have to know these things or you're not a real dev. You see it all the time and it's absolutely ridiculous. Like we taught, so I taught data structures, I taught linked lists and trees and like tree traversals and all of these stupid puzzle games entirely so folks could pass whiteboard interviews. Like there was no other point to that other than the ability to pass a whiteboard interview and like that was like the blunt reason. Like, that's what I told the students. I am teaching you this so you can survive shitty gatekeeping. You know, you can survive these terrible gatekeeping interviews and yeah. It's awful. It's very fear driven pretty much

  • 12:22 Joshua

    every single one of those things you just mentioned. I've learned and I've used, they are valid things. I learned them when I needed them. Yeah,

  • 12:31 Kel

    I learned most of them by accident. First Time I ran into a tree?, Try? Trie? Forget what it is. I built one by accident and was like trying to solve a random problem and you know, stumbled across a wiki article on Oh that's how you traverse this thing faster. That makes sense. Oh that's exactly what I'm trying to... These are things you discovered naturally and it is kind of cool to learn them in advance because I did kind of like that like especially since it didn't take up that much time in their coursework. Like we went through all these data structures in 10 weeks while also learning Java and learning Spring and learning Android development. So I kind of appreciated that. It was like a little bit of both sides of the development world. You know, the really, really basics and also the useful stuff and you may not use one or the other, but yeah, the idea that you have to know these things or you're not a real dev is very much gatekeeping. It's very much, it's just complete bs. That's not what makes you a dev. That's not what makes you productive

  • 13:28 Joshua

    with some of these things. It's also not even just learning the concepts because most of them are quite straightforward. I'm figuring out how a queue works is not a complex concept. We all know how queuing works. I live in England, we really know how queuing works.

  • 13:41 Kel

    You even use the correct word.

  • 13:43 Joshua

    Yes, we call it Queuing, but knowing that it's called a queue is an important thing and that is actually critical in a lot of technology because I've actually walked into places where they asked me, do you know how to deal with this? And I thought, I don't know what the hell they're talking about, and they'll show me, oh, oh, I call that this. And they're looking at me like I'm from another planet because they're just a lot of different things going on and there are legitimately sometimes different names for the same thing or just don't, more often than not, I just don't know the name that they happen to be calling it. I, well yeah, that's just what I do.

  • 14:19 Kel

    Yeah. Specializing your language is very, it's useful when you're in a group of people who know what you're talking about. It's shorthand. It's, it's describing a thing quickly, efficiently. It's a useful thing to have specific words for this stuff. It is also very exclusive. It is a very easy way to confuse folks. It's a way for folks to have different definitions for the words and cause extra confusion. Like use more words for crying out loud. Um, basic data structures. Sure. I, that seems like a reasonable expectation. Though, I don't know that I've ever actually to know something was a linked list before ever. I've built a million of them at this point because they're like a naturally emergent data structure and they're all basically graphs and trees. Uh, as I told my class over and over again, they're all just graphs. Everything's a graph.

  • 15:11 Joshua

    Well, speaking of message queues, that's another great example of this because I actually a message queue and service bosses in pubsub are all subtly different. But people use all the names interchangeably and they're all the basically the same thing. Yeah, the same.

  • 15:28 Kel

    Yeah. It's all at the edges and at the edges. Well then you have to use more words anyway. And why did you have to use this fancy exclusionary word?

  • 15:36 Joshua

    Yeah. The pattern itself is the same. Whether you can pull them at any order or if they're in a particular order first come first serve. But the reality is people use the name wrong all the time. I mean we're talking professional people like Rabbit MQ is actually not a mail queue or message queue.

  • 15:55 Kel

    It's a thing. Yeah. You know, this might actually be our most technical podcast thus far.

  • 16:01 Joshua

    They might be, we try to be mostly non technical, but we're talking about teaching new developers and there are a lot of technical things to learn and knowing the names of these things and what they are can be really important. Particularly for those first few interviews where you don't have a lot of experience. You just shoved in front of a whiteboard and you're told, show me what a message queue looks like versus pubsub. Okay. Uh, I don't think I could... I know exactly what they are and I'm not sure I could draw it on a whiteboard in the middle of an interview.

  • 16:33 Kel

    Oh, absolutely not.

  • 16:34 Joshua

    And what's the one thing that I really liked when you were talking about how much you were teaching them to do these whiteboard interviews? Because that's the part that would scare me the most. Even if I were to go do an interview now, whiteboard would scare the crap out of me. I've been developing for a long time. I should not be afraid of a whiteboard interview, but I'm terrified of it because I don't know what words they are going to use. And then you know, the moment they use a word that isn't the same word you use and you don't have any clue what they're talking about. Oh this guy's an idiot. Even if you got 20 years of experience backing you up, it's just, it's

  • 17:08 Kel

    I spent a lot of time on like questions like, oh, what do you mean by that? Like you should be, don't be afraid to show your ignorance. There's nothing you can do about your ignorance. If you don't know something, you don't know something. And that when you're in an interview situation, there's no real point in hiding it. Especially if someone's not going to hire you based off of ignorance, well then they're not gonna want to hire you anyway. Like there. There's no reason to fake that. And so ask the questions. Go out of your way. Ask what these things mean. Ask for examples. Like I spent a lot of time on interviewing because that's like all you can really do is bounce back and forth with your interview or try to figure out what they're getting at regardless of what they presented and then work through, you know, break it down into chunks, that sort of thing.

  • 17:51 Kel

    So that was more or less the strategy I tried to teach, which is a kind of a limited on how much you can do and in 10 weeks and by the end, I was really good at whiteboards. Um, I had one of the other instructors interview me when I first started and I just barely passed though. The, her comments were kind of entertaining cause she kept making notes of going That's the exact opposite of how the problem's that, you know, new developers have. Um, but they really weren't that my, my practice interview was very much not that different than these folks at 10 weeks. Like I made the same mistakes about, you know, showing confidence or those types of things. The mistakes I didn't do were the ones from experience of me knowing, okay, I have no idea what you mean by a balanced binary search tree. Can you describe that to me? Um, now I know what it means, but there's a lot of things like that that are, yeah. It's like how do you teach that? That's very much the folks who already had business experience knew how to do that.

  • 18:47 Joshua

    That's exactly how to do that. That's the problem with all these things. It's like standardized testing in school. It's not actually proving that kids are intelligent, that they know what they're doing, that they're going to do any good at anything. It's just proving that they can pass the test.

  • 19:05 Kel

    yeah, and especially for things like that, it's like those are absolutely useless on an individual basis. Those are totally statistical like, anyway,

  • 19:12 Joshua

    We're taking something that is useless on an individual basis and then we're applying it to job interviews, which is an individual basis and saying, well, these people should be the people who can have gone through training like what you just did with your students because that's the only way they're going to pass these things. And it's not actually proving in any way whatsoever that they're going to be able to develop software any better than anybody else.

  • 19:38 Kel

    Absolutely. Though. I don't know if they follow, if they really dig into the interviewer, they might, the interviewer might discover some new skills like confidence and the ability to problem solve the correct way. Um, so it might work out. It's hard telling like interviews are so hit and miss. I mean like I remember the first time I got to do an interview, I was filling in for you if I remember correctly.

  • 20:01 Joshua

    That sounds about right.

  • 20:02 Kel

    And all I had was a script that I showed somebody and you know, like, hey, tell me what this script does. And like I was not qualified to give this interview in any way, shape or form. My expectations were totally wrong on what to expect from an interviewee. Like this is a skill you have to learn how to be a good interviewer. And if you just grab your random software dev and throw them at it, who knows what, like they're going to use as their gatekeeping what, what their tests are going to be or what they're looking for. So...

  • 20:31 Joshua

    Yeah, I probably wasn't really qualified to give that interview when you were the one filling in for me. So that tells you something about the people who are likely to be interviewing you as a new developer.

  • 20:42 Kel

    We were both kids at that point.

  • 20:44 Joshua

    Yeah. I have run into people who are really, really good at interviewing and they knew exactly where I was and they asked the right questions to get the information they needed out of me. But that is by far the exception. So as a new developer, absolutely learning these things and practicing whiteboard testing and learning how to ask the right questions of your interviewers because as we've said before, you are interviewing them as much as they're interviewing you, if not more. So learning how to do that is critical.

  • 21:15 Kel

    I liked, I kept trying to bring it back to imagine they're your client because that's more or less the same mindset, the same types of questions. Your clients when you work as you know, even as a developer, your client will be, you know, stakeholders, quote unquote stakeholders or managers or customers or if you're freelancing, there'll be your own clients. But they will request the silliest stuff. You will have no idea what they're actually requesting because they will say I needed to be magic. And you're like, great. So what's that mean? And you have to dig into these things and break it down and that's the mindset you have to be in. But it's kind of loops back to where we started on this conversation about fear. You can't do that if you're scared. You can't do that if you're anxious in an interview situation. You can't do that as a developer when you're scared. And so, I spent a lot of time in class trying to lower fear. That was kind of my main thing was there's too much anxiety in this building for folks who are putting in 50 hours a week and still scared they're not going to pass. Let's, let's bring that down. You can learn to program, it's going to be great and you will do better if you're not terrified of it.

  • 22:23 Joshua

    Yeah, absolutely. And it's something that we keep coming back to on the podcast because it is such a big problem. Now that said, you've just spent the past 10 weeks or so teaching a bunch of new developers, do you feel more encouraged or less after doing so?

  • 22:42 Kel

    One of the interesting things was to realize exactly how unskilled I am as a teacher. So like I was an alright instructor. I feel like I did pretty good. I got some really great reviews from my students, but it was to me, all I could notice was, oh, I wish I knew how to do that better. I wish I knew how to bring that out, how to ask questions of them better. The instructors I worked with were amazing, like just some of the best teachers I've ever encountered, which is kind of fascinating for a random bootcamp. But they were, they were superb, I watched a video of the other Java instructor and she would ask questions of the class and software would emerge from their answers. Like she would just write whatever they told her to write.

  • 23:28 Kel

    And it was, it was amazing and I have no idea she did it. And so like one of the things I learned after 10 weeks was that I can, I can do that, but it takes practice to be a good teacher and it is very much a challenge, to draw folks into the correct directions to get them thinking along the lines of what you want to and to not get stuck basically. So yeah, the general encouragement of when they're done, they definitely could learn to program like everybody in 10 weeks could code something. The part that I found probably the most frustrating as an instructor was trying to get folks to that, I don't even know how to describe it to non programmers, but that moment when all of it clicks and you, you realize you can totally code and it's just time after that.

  • 24:15 Kel

    Like when you, the loops start to make sense and like, oh yeah, I can totally do that. And you can, and you can recognize that in a new developer because they start saying, oh yeah, I can totally do that. And then drastically underestimating how much time it really will take them. And so that was the stage I couldn't quite figure out how to walk somebody to, all the students had to figure it out themselves, but they generally did. And so that was, that was totally encouraging. It's enough time to go. Like you can become a programmer. You could completely become a programmer in 10 weeks, but it will take you more time after that to become an employable programmer. Yeah. Um, but it is encouraging. It was not. Overall, it was a pretty great experience.

  • 24:58 Joshua

    There you go. If any of Kel's students are listening, you did good.

  • 25:03 Kel

    Y'all did great. They gave me a book at the end. They wrote little notes on it. Really sweet. We mentioned with school, this was, we made it through like the entire episode and I feel like I should actually mentioned that. I should mention that I was teaching at Code Fellows. So yeah, I was teaching a code fellows here in Seattle, um, which is a little odd since we just randomly ended up, uh, interviewing the FlatIron folks the other day. So that's odd. Uh, kind of a competitor. But yeah, I was just there for, for one class teaching Java. It was kind of a nice, a nice change of pace too. Like I said at the beginning to practice these things that we've been talking about so much about fear and the motivation and trying to see how that works in real environments and really pushing those as strategies for both teaching and you know, growing up as developers, it was very important thing.

  • 25:59 Joshua

    Well, that's the thing is we build a lot of software and we do the job, we lead teams, we do a lot of these things, but sometimes you can do that every day, day in and day out, but you miss some of those core fundamental skills to actually be able to do that. And teaching is a huge chunk of leading a team, whether it's new developers or experienced developers. There's a lot of teaching involved and I certainly, I would say that I am not as prepared as I would like to be to teach developers when they come in and that makes me less efficient at it. So taking the time to learn new skills that aren't necessarily directly related to how to code actually makes you a better software developer. It makes you a better team member, it makes you a better employee or founder or whatever it is you're doing and it's a worthwhile investment that a lot of people kind of miss out on because they just get on with their job. They learn more tech stuff. They want to learn more tech stuff. They learn more tech stuff, new framework, new frameworks, new frameworks, new language, new framework, new framework.

  • 26:57 Joshua

    And they miss things like this and that's really what the podcast has always been about is these other skills is not and that's why we're mostly nontechnical because we don't teach you how to do bubble sorts and things like that that Kellen has been teaching people how to do. We teach you or talk about at least those other skills. Those other things that make you a better developer that aren't necessarily just code

  • 27:24 Kel

    Teaching specifically is a great thing to do, especially for something that you don't understand that well, because to teach a subject you have to understand it in full. Like you can't, you can't get away with just enough information about a bubble sort and then be able to teach it to somebody else.

  • 27:42 Kel

    You actually have to understand it like how it all glues together, why it's happening that way. Why this was clever, how you got there. You have to be able to explain it to a group of folks who all will have different questions about whatever it is that you're trying to show them, and you have to be at least somewhat prepared to answer these questions. And so it's a great way to learn. You hear it all the time that you learn by teaching and it's, it's kind of like a forced learning of, oh no, how will I be able to explain this? I don't know. I don't even know how to describe why. I know why this works. And by the time you're done, you have a very succinct version of your own learning and you have a more fuller idea and a fuller concept that you can explain to other people, which is a very important thing to be able to do.

  • 28:22 Joshua

    Absolutely. I don't know how often people ask me, how do you do this? And my answer when I was younger used to be and just move over. I'll do it for you. But I've gotten better at that. I will teach them, but I certainly know that the way I'm explaining it doesn't sink in the first time, quite often. Doesn't sink in the second time or the third time or the fourth time. And sometimes that's normal. But I suspect if I were getting better at identifying which parts they were struggling with and how I could better explain that to them, it would go a lot smoother. People would pick it up a lot quicker.

  • 28:57 Kel

    Exactly. That's exactly the teaching skill. So the difference between the, the learning, the abstract, the theory and the practice is that. I know what it is and I sort of know how to describe it, but it takes me five tries instead of one. It takes me, you know, three iterations of this over multiple weeks to get that concept in a way that everyone understands when someone else might've been able to do it in a day. And that's the, that's the part that takes practice. That's the teaching skill. Um, which I am, I very much admire.

  • 29:29 Joshua

    I always think about it like any other skill, particularly things like sporting skills, where do you have muscle memories and things like that. You have the same when you're coding or any other knowledge based skill. I was telling my eldest son the other day, I was biking down a mud trail and how about a little bit of fun going a little bit too fast and it was a little bit muddier than I thought it was and I went completely sideways and I pulled it out and didn't kill myself. He says, how did you do that? I just did and it was one of those moments I thought, you know, and I run into this when people ask me programming questions all the time, how do you do that? Um, and I have to stop and I have to think about, okay, what steps do I take? Because it doesn't naturally come to me. I just naturally I just, I do it. But taking a step back and thinking, well, how do I do that is difficult because it's not something I do every day.

  • 30:25 Kel

    And then, yeah. Then once you figure out how the next step is describing it to them in a way that they'll understand it in the same route and iterating on that over and over and over again until learning happens.

  • 30:37 Joshua

    Yeah, because certainly when I told him, you know you turn the wheel toward where your back wheels going and he looked at me like I was an alien.

  • 30:45 Kel

    It's kind of interesting though, you talk about that muscle memory that I remember as a kid I hit like a snowbank and my car spun out and I totally reacted like I did by playing video games and completely corrected instantly. It was a little strange. I had this moment of wow, I actually learned something from this silly racing game. Probably not the best thing you're supposed to learn, but it, you know, muscle memory, it's, it works. Practice makes perfect.

  • 31:12 Joshua

    All right, so now that you've done this, would you teach again?

  • 31:18 Kel

    Quite possibly. I did not like the level of anxiety at that school. Which I imagine it's probably pretty normal for bootcamps. They're not cheap. There is definitely a level of proficiency expected at the end because they act as not just a, not just a teaching school but a place that recommends you. And so they have like their own, they have their own gatekeeping basically, though it's not quite that way, but they have their own expectations of, you know, these are the folks we recommend and to get into that there's still that level of anxiety and all of that. So I don't know that I would teach in that scenario anymore. Um, you know, taking on your students, your students' stress and bringing it on to yourself as a lot of, a lot of stress and a lot of effort. Um, I dunno if I'd want to continue doing that, but actually teaching in general, absolutely. I love teaching. I mean that's basically why we're doing the podcast, right. Because we want to describe the things that we have learned over time and we want, we want to share those things.

  • 32:16 Joshua

    Without the stress of making sure you get a job and you can feed your family.

  • 32:20 Kel

    Exactly. And so I definitely would teach again. Um, I might even teach there again. Uh, Though probably not for another 10 week course. Those were, that was a lot of stress.

  • 32:30 Joshua

    Yeah. And to be fair is not, they aren't being hard on people because they want to be hard on people and being hard because they have to prepare you to get ready for a job. They want you to be able to feed your family.

  • 32:40 Kel

    Exactly. And my personal, I do want more schools to iterate on making things less scary, to iterate on making things less stressful. If your students are anxious, that is a thing that you should try to make better. It might not be possible like that. That's kind of just an artifact of the school and the money and the, the, the world we live in. But if you can make it better, try to iterate on that. You iterate on your curriculum to put more content, to teach people faster. Also try to iterate on lowering that anxiety, lowering the fear, what works better, how can you motivate them better? You know, do the same thing. Try to make those things better as well and you will likely find that the group of people who can pass will grow. It won't just be the people that have been, that can handle that high stress environment. It will be everybody.

  • 33:35 Joshua

    All right, well I will put some transcripts up at gettingappsdone.com. Please be sure to check out my website at joshuagraham.info and Kel's website at piffner.com where I'm sure you'll probably have some blog posts about teaching and bootcamps and learning pretty soon.

  • 33:51 Kel

    I'm working on them today.

  • 33:53 Joshua

    If you have been to a bootcamp or you're in a bootcamp or you're at university or you're in any way learning how to develop software on your own, reading books... I have been talking about a VHS tapes recently because somehow I managed to speak to a lot of people recently who are doing remote learning and my first remote learning experience was quite awhile ago. I signed up for an online course where they sent me a giant box full of VHS tapes. The online portion of it was I could email questions to the teacher and they would email back.

  • 34:35 Kel

    It's not that different than the modern era. It just requires more physical media..

  • 34:40 Joshua

    Well there's some more spoilers on that next week because we are talking with Capella University who is largely, I think almost entirely remote university if not entirely remote. Uh, and they, we do discuss some of that and you'll hear about my VHS tapes again because we did talk about that. That should be out next week, so keep an eye out for that. Uh, in the meantime, thanks for listening and be sure to check out a new slack channel. That's where I was headed with all this. If you're on your learning journey, we have quite a few people in the slack channel who are also doing the same thing and it seems to be going really well. People are learning a lot from each other as well as being able to chat with us and learn more things that we haven't mentioned on the podcast.

  • 35:20 Kel

    All right.