< Return to Video

RailsConf 2014 - Panel: Teaching the Next Great Developers by Noel Rappin

  • 0:17 - 0:18
    NOEL RAPPIN: Hey everybody.
  • 0:18 - 0:19
    I think we'll get started.
  • 0:19 - 0:20
    We've got a lot of people on here who
  • 0:20 - 0:22
    are all gonna wanna talk and we don't have
  • 0:22 - 0:26
    that much time. So, I'm gonna quickly introduce,
  • 0:26 - 0:27
    this is, we're doing a panel here on teaching
  • 0:27 - 0:30
    the next great developers. I have a panel
    of
  • 0:30 - 0:32
    experts here. We'll let them briefly introduce
  • 0:32 - 0:34
    themselves, and then we will get on with it.
  • 0:34 - 0:38
    So, I'm Noel Rappin. I'm a Table XI senior
  • 0:38 - 0:41
    developer, and to some extent I'll be representing
    traditional
  • 0:41 - 0:43
    CS education, if that ever comes up at any
  • 0:43 - 0:46
    point over the next forty minutes, which I'm
    sure
  • 0:46 - 0:50
    nobody would ever bash traditional CS education
    in, in
  • 0:50 - 0:55
    this forum. So, OK. First up, we got Jeff.
  • 0:55 - 0:56
    We also only have two microphones so you guys
  • 0:56 - 0:59
    are gonna pass them around.
  • 0:59 - 1:01
    JEFF CASIMIR: Hi. My name is Jeff Casimir.
    I
  • 1:01 - 1:04
    run a company called JumpstartLab, and most
    recently started
  • 1:04 - 1:07
    up a training program called Turing, Turing
    School of
  • 1:07 - 1:07
    Software and Design.
  • 1:07 - 1:10
    N.R.: I put 'labs' up there. I got it
  • 1:10 - 1:11
    wrong.
  • 1:11 - 1:12
    J.C.: It's all right. I'll just call it Table
  • 1:12 - 1:13
    X.
  • 1:14 - 1:16
    BREE THOMAS: Hi. I'm Bree Thomas, and I'm
    a
  • 1:16 - 1:20
    developer with a company named, called iTriage.
    And a
  • 1:20 - 1:24
    recent grad of this guy's school.
  • 1:24 - 1:26
    JEN MEYERS: Hi. My name is Jen Meyers, and
  • 1:26 - 1:28
    I am part of the team at Dev BootCamp
  • 1:28 - 1:29
    here in Chicago.
  • 1:30 - 1:32
    N.R.: Jen is filling in at the last minute
  • 1:32 - 1:34
    for Dave Hoover, who couldn't make it due
    to
  • 1:34 - 1:35
    a family emergency.
  • 1:37 - 1:39
    LIZ ABENANTE: I'm Liz Abenante. I am a developer
  • 1:39 - 1:43
    at Instructure and I also co-lead the Girl
    Develop
  • 1:43 - 1:45
    It chapter here in Chicago with this gal.
  • 1:46 - 1:49
    KATHRIN EXLINE: Hi, my name is. Is. Just kidding.
  • 1:49 - 1:53
    Is it ready? My name is Katie Exline. You
  • 1:53 - 1:58
    can call me Katie. I am the co-leader of
  • 1:58 - 2:01
    Girl Develop It, Chicago. Started in Girl
    Develop It
  • 2:01 - 2:04
    with Girl Develop It, Columbus with that girl.
    And
  • 2:04 - 2:07
    I'm currently a software engineer at a company
    called
  • 2:07 - 2:08
    Fooda. 600 West.
  • 2:09 - 2:11
    BEN ORENSTEIN: Hi. I'm Ben. I work at ThoughtBot
  • 2:11 - 2:13
    in Boston. I run our program for training
    developers
  • 2:13 - 2:16
    there called Learn. And I write code and talk
  • 2:16 - 2:18
    to people and do things like this.
  • 2:18 - 2:21
    N.R.: So, I'm gonna. So, I want to start
  • 2:21 - 2:24
    this off by, so, we have a couple of
  • 2:24 - 2:27
    different kinds of programs here represented.
    We have two
  • 2:27 - 2:30
    different boot camps that are sim- somewhat
    similar in
  • 2:30 - 2:32
    structure, but different in length. We have
    the Girl
  • 2:32 - 2:35
    Develop It, which is more shorter interventions
    aimed at
  • 2:35 - 2:38
    bringing novices into the, into the field,
    and we
  • 2:38 - 2:43
    have online, online inter- somewhat more in-depth
    online interventions.
  • 2:43 - 2:45
    And, I guess, maybe, what I want to start
  • 2:45 - 2:49
    with is, what is, what do you think is
  • 2:49 - 2:53
    the most important part that you, in your
    program,
  • 2:53 - 2:55
    bring to teaching a novice developer, and
    how do
  • 2:55 - 3:00
    you think that that fits towards bringing
    in the
  • 3:00 - 3:05
    next generation of developers? To start with.
    Anybody can
  • 3:05 - 3:05
    feel free. Jen's got the mic.
  • 3:05 - 3:05
    J.M.: I've got the mic. OK. I'll go for
  • 3:05 - 3:06
    that.
  • 3:06 - 3:09
    N.R.: So what's the most, what's the most
    important
  • 3:09 - 3:11
    thing at Dev BootCamp. If, if you were to
  • 3:11 - 3:14
    say that a Dev BootCamp boot came out of
  • 3:14 - 3:17
    there knowing one or two things, like what,
    what's
  • 3:17 - 3:19
    the most important thing that you try to impart?
  • 3:19 - 3:21
    J.M.: Honestly, I think the most important
    thing that
  • 3:21 - 3:24
    we try to foster is just being able to
  • 3:24 - 3:28
    love and learning how to learn. And really
    being
  • 3:28 - 3:31
    able to carry themselves on and our, our goal
  • 3:31 - 3:35
    is to really produce people who know enough
    about
  • 3:35 - 3:37
    Ruby on Rails to get a job where they
  • 3:37 - 3:39
    can continue to learn, and that they have
    the
  • 3:39 - 3:42
    tools and the, the muscles built up, that
    they
  • 3:42 - 3:44
    know how to keep learning on their own, and
  • 3:44 - 3:46
    keep exploring and finding out new things.
  • 3:46 - 3:47
    So, it's a little bit meta, but I really
  • 3:47 - 3:49
    do feel like that's one of the things that
  • 3:49 - 3:51
    is our main goal, to make sure that people
  • 3:51 - 3:53
    can continue learning for the rest of their
    careers
  • 3:53 - 3:54
    and lives.
  • 3:54 - 3:59
    J.C.: Kind of a similar vein, I would say
  • 3:59 - 4:03
    the most important outcome for students is
    understanding really
  • 4:03 - 4:06
    how to take difficult technical problems and
    turn them
  • 4:06 - 4:10
    into sets of small, still difficult but more
    manageable
  • 4:10 - 4:13
    technical problems. And we happen to do that
    with
  • 4:13 - 4:16
    Ruby on Rails, but I'm, it's really validating
    when
  • 4:16 - 4:18
    we see students go into jobs where they do
  • 4:18 - 4:21
    JavaScript full time, or iOS full time, and
    they're
  • 4:21 - 4:24
    still able to apply all those same patterns
    to
  • 4:24 - 4:26
    a different language and framework and so
    forth.
  • 4:26 - 4:28
    L.A.: And Girl Develop It comes from a slightly
  • 4:28 - 4:31
    different perspective, because we work with
    complete novices in
  • 4:31 - 4:33
    a wide range of classes, and we're just now
  • 4:33 - 4:35
    starting to get into programming here in Chicago
    with
  • 4:35 - 4:38
    our gals. But, I think the most important
    thing
  • 4:38 - 4:41
    that I've found teaching these students is
    how to
  • 4:41 - 4:43
    ask questions and where to ask them. Who to
  • 4:43 - 4:46
    ask, what kind of responses are good responses,
    and
  • 4:46 - 4:47
    what kind of responses are terrible and you
    should
  • 4:47 - 4:51
    ignore them because they're from terrible
    people.
  • 4:51 - 4:55
    B.O.: So, this is actually something that
    I think
  • 4:55 - 4:58
    that it's important for all levels that I'm
    working
  • 4:58 - 5:01
    on myself, honestly, is a willingness to admit
    you
  • 5:01 - 5:04
    don't understand something. There's, I, there's
    this phenomenon I've
  • 5:04 - 5:06
    seen in developing, in particular, where,
    because it's an
  • 5:06 - 5:10
    intellectual-based activity, we have this
    really strong impulse to
  • 5:10 - 5:12
    always act like we know what's going on and
  • 5:12 - 5:13
    we understand what people are saying.
  • 5:13 - 5:16
    And I've tried really hard to develop in myself
  • 5:16 - 5:17
    the ability to be like, I did not follow
  • 5:17 - 5:19
    that. I don't understand what's going on.
    And I
  • 5:19 - 5:22
    think more of that is really good for the
  • 5:22 - 5:24
    world. I think, I've seen people, I've seen
    myself
  • 5:24 - 5:26
    do it, too, where you sort of fake it.
  • 5:26 - 5:27
    Where it's like, oh, are you familiar with
    this?
  • 5:27 - 5:29
    Yeah. I mean, I know I should be, so
  • 5:29 - 5:33
    therefore I'm gonna say yes. And that definitely,
    that
  • 5:33 - 5:35
    hurts you. Like, you cheat yourself out of
    that
  • 5:35 - 5:37
    immediate learning, and you cheat, you know,
    your, your
  • 5:37 - 5:39
    colleague or the person you're talking to
    out of
  • 5:39 - 5:40
    being able to trust you when they find out
  • 5:40 - 5:42
    you weren't telling the truth. And there's
    just all
  • 5:42 - 5:44
    this negative impacts from that.
  • 5:44 - 5:48
    N.R.: So, actually. Let's. I have a, I have
  • 5:48 - 5:50
    a sort of jumble. Do you guys have questions
  • 5:50 - 5:52
    in the audience? Like, I have a couple of
  • 5:52 - 5:54
    prepared questions that are gonna be kind
    of vague,
  • 5:54 - 5:56
    but if you guys have questions in the audience,
  • 5:56 - 6:01
    yes, no, maybe? Then we, this would be, this
  • 6:01 - 6:03
    would be, I think, more fruitful if you guys
  • 6:03 - 6:05
    com- if we come from there.
  • 6:05 - 6:10
    AUDIENCE: I think everyone thinks they're
    terrible at programming
  • 6:10 - 6:12
    when they start, so how do you help people
  • 6:12 - 6:13
    N.R.: So the question is, how do you help
  • 6:13 - 6:15
    people build confidence, given that everybody
    thinks they're terrible
  • 6:15 - 6:18
    when they start, or possibly for several years
    after
  • 6:18 - 6:19
    they've started?
  • 6:19 - 6:23
    B.O.: I love that question. Did, you repeated
    it,
  • 6:23 - 6:24
    right? Yeah.
  • 6:24 - 6:24
    N.R.: Yes.
  • 6:24 - 6:27
    B.O.: Because I still struggle with believing
    that I
  • 6:27 - 6:29
    am a good programmer, and I think this happens
  • 6:29 - 6:31
    to everybody, is, there's this impostor syndrome,
    and I
  • 6:31 - 6:32
    think everybody has. Wow.
  • 6:32 - 6:34
    N.R.: Sorry. I'm just going back in the slides.
  • 6:34 - 6:39
    B.O.: There we go. That's OK. Shwoo. It still
  • 6:39 - 6:41
    kind of blows my mind when people think nice
  • 6:41 - 6:44
    things about me. And I think that impostor
    syndrome
  • 6:44 - 6:46
    is, like, is very prevalent. And, again, we're
    in
  • 6:46 - 6:51
    a intellectual based field, again, so I try
    to
  • 6:51 - 6:53
    be, like, humility, I think, is my answer
    to
  • 6:53 - 6:55
    that. Like, I try to be humble myself, because
  • 6:55 - 6:58
    I've had those own feelings of impostor syndrome,
    of
  • 6:58 - 6:59
    like, not even believing that I know what
    I'm
  • 6:59 - 7:01
    doing. And so, I know that's just amplified
    a
  • 7:01 - 7:04
    thousand fold when you're brand new and everything's
    super
  • 7:04 - 7:06
    confusing. So when I've done stuff, particularly
    with like,
  • 7:06 - 7:09
    really new people, like a RailsBridge type
    workshop, I
  • 7:09 - 7:12
    like to like, open by saying, like. Don't
    worry.
  • 7:12 - 7:15
    The state of being confused and like, this
    should
  • 7:15 - 7:17
    work but it doesn't work. That is the normal
  • 7:17 - 7:20
    state of the working programmer.
  • 7:20 - 7:21
    That's like, how it is. And so, it's not
  • 7:21 - 7:24
    you. It's never you. It's that this is hard
  • 7:24 - 7:26
    and it's always gonna be like that. So, hopefully
  • 7:26 - 7:27
    you like it.
  • 7:27 - 7:31
    R.N.: Despair is what we teach. Long term
    despair.
  • 7:31 - 7:34
    J.M.: Yeah, I was gonna, to back-track a little
  • 7:34 - 7:37
    bit on what you were saying, you know, we,
  • 7:37 - 7:38
    as Liz mentioned, we deal with a lot of
  • 7:38 - 7:40
    people who are just starting out. So, actually,
    a
  • 7:40 - 7:45
    lot of them aren't, they're not faking it,
    and
  • 7:45 - 7:47
    what we're working with, they think they're
    totally incapable
  • 7:47 - 7:49
    of learning it. You know, on the, on the
  • 7:49 - 7:52
    reverse side. So, there's a few things that
    we
  • 7:52 - 7:54
    do in order to make sure that they feel
  • 7:54 - 7:58
    comfortable is, for one, we make sure to encourage
  • 7:58 - 8:01
    them to ask questions and do not scoff when
  • 8:01 - 8:05
    they ask any sort of question, because then
    we're
  • 8:05 - 8:08
    validating them and saying, that is a totally
    valid
  • 8:08 - 8:10
    question, and it's OK if you don't know that.
  • 8:10 - 8:12
    And we may not even have the answer. So,
  • 8:12 - 8:14
    that type of, like, open discussion, being
    able to
  • 8:14 - 8:16
    ask questions is great.
  • 8:16 - 8:19
    And then also, just providing positive feedback.
    Actually, constructive
  • 8:19 - 8:23
    feedback. Both positive and even if it's constructive,
    providing
  • 8:23 - 8:25
    it in a positive way, I think really helps
  • 8:25 - 8:26
    build peoples' confidence.
  • 8:26 - 8:30
    J.C.: Smart. Cause that's what I was thinking.
    Giving
  • 8:30 - 8:31
    a set up where you can give somebody a
  • 8:31 - 8:34
    small, a small, quick win, that they've done
    something
  • 8:34 - 8:36
    that they could point to, I think is helpful
  • 8:36 - 8:38
    in my experience as a teacher.
  • 8:38 - 8:41
    B.T.: So I'll just add to that. As one
  • 8:41 - 8:44
    who spent six months in a course, I wasn't
  • 8:44 - 8:47
    getting it at all, for like, the first three
  • 8:47 - 8:51
    months. And it was brutal. And I consider
    myself
  • 8:51 - 8:54
    someone who's actually, I never had any question
    about
  • 8:54 - 8:59
    my ability to learn something new. And so,
    I
  • 8:59 - 9:01
    think, I think in terms of what's important,
    from
  • 9:01 - 9:04
    a student perspective, when you're, when you're
    in a
  • 9:04 - 9:10
    course, is having instructors in an environment
    where they
  • 9:10 - 9:14
    can adapt to your learning style, so they
    can
  • 9:14 - 9:15
    understand, they can look at you and they
    can
  • 9:15 - 9:17
    understand, OK, here's where you're having
    problems.
  • 9:17 - 9:20
    And, change course if that's what's required.
    Because I
  • 9:20 - 9:22
    can say that that was my experience. I kind
  • 9:22 - 9:24
    of went, oh my gosh. I still have no
  • 9:24 - 9:26
    idea what's going on and we're halfway through
    the
  • 9:26 - 9:29
    course and it's not clicking. And I kept getting
  • 9:29 - 9:31
    the, it's gonna be OK. It's gonna be OK.
  • 9:31 - 9:33
    No. It's not OK. I'm half way through, and
  • 9:33 - 9:35
    I spent all this money and there's only three
  • 9:35 - 9:39
    months left. And essentially, the instructors,
    you know, at
  • 9:39 - 9:43
    least with, with Jeff's group, they took a
    step
  • 9:43 - 9:45
    back and said, OK, let's focus on the fundamentals.
  • 9:45 - 9:48
    And, let's do some smaller steps, and let's
    do
  • 9:48 - 9:51
    that work with you, and that was extraordinarily
    helpful
  • 9:51 - 9:55
    for me. And, by the time I graduated, I
  • 9:55 - 9:59
    can honestly say I finally felt like, oh,
    I'm
  • 9:59 - 10:01
    a developer now. I may not be, you know,
  • 10:01 - 10:04
    a great one, but I like, feel comfortable
    calling
  • 10:04 - 10:06
    myself a developer now.
  • 10:06 - 10:08
    L.A.: And in terms of not seeing yourself
    as
  • 10:08 - 10:10
    terrible, you're not terrible if you do one
    thing
  • 10:10 - 10:14
    right. Like, in programming. If you get that
    image
  • 10:14 - 10:17
    to render on your ht- your very first html
  • 10:17 - 10:20
    page, but you cannot figure out freaking CSS
    for
  • 10:20 - 10:23
    the life of you, it doesn't matter because
    you
  • 10:23 - 10:26
    got that one thing, that tiny victory, reinforcing
    those
  • 10:26 - 10:29
    tiny victories, celebrating those tiny victories,
    and using those
  • 10:29 - 10:33
    as moments to break away from the frustrations
    really
  • 10:33 - 10:35
    helps break students out of that pattern of,
    I'm
  • 10:35 - 10:37
    terrible. I don't get this. It's really hard.
  • 10:37 - 10:42
    J.C.: I think the, the whole conversation
    around, like,
  • 10:42 - 10:45
    impostor syndrome, I found really interesting.
    I kind of
  • 10:45 - 10:47
    want to ban that phrase. Like, I will probably
  • 10:47 - 10:50
    stop saying it, because I, I think it's just
  • 10:50 - 10:54
    a part of programming. Thinking, or perhaps
    knowing that
  • 10:54 - 10:57
    you're not good at programmer. And, for me,
    when
  • 10:57 - 10:59
    I first started, our first program as Hungry
    Academy
  • 10:59 - 11:01
    in D.C., and I, when I laid out the
  • 11:01 - 11:04
    course plan, there were pieces in there that
    I
  • 11:04 - 11:05
    did not know how to do and had never
  • 11:05 - 11:07
    done in a project. And I was so nervous
  • 11:07 - 11:09
    and I was like, oh, we're gonna. I'm gonna
  • 11:09 - 11:10
    be exposed.
  • 11:10 - 11:12
    Right? But I had this co-teacher and I was
  • 11:12 - 11:14
    like, he'll know. He's a real consultant and,
    like,
  • 11:14 - 11:17
    he knows how to do these things. It'll be
  • 11:17 - 11:19
    OK. And, I think what's happened to me over
  • 11:19 - 11:22
    that time is just realizing that, like, I
    don't
  • 11:22 - 11:24
    give a shit. Like, if I'm not the best
  • 11:24 - 11:27
    programmer - I'm sure Ben's a much better
    programmer
  • 11:27 - 11:31
    than I. So what? Like, it, it, it, probably,
  • 11:31 - 11:33
    you know. And so, I'm fortunate, you know,
    through
  • 11:33 - 11:36
    things like RailsConf to talk with amazing
    people and
  • 11:36 - 11:38
    people are like, oh, you know, Jose Valim,
    like,
  • 11:38 - 11:41
    building Elixir. Poof. Like, no idea. I can't
    even
  • 11:41 - 11:43
    understand Elixir, much less how to build
    it.
  • 11:43 - 11:45
    And, he's a much better developer, or, much
    better
  • 11:45 - 11:49
    programmer than I am. But, who cares? Is really,
  • 11:49 - 11:51
    I think, something that's valuable to your
    career.
  • 11:51 - 11:52
    N.R.: One thing I feel- sorry.
  • 11:52 - 11:54
    J.C.: Like, you're not, you're not measured
    on some,
  • 11:54 - 11:57
    like, benchmark against other, there's no
    like, programming test,
  • 11:57 - 11:59
    like, program this thing in thirty-seven minutes.
    It's like,
  • 11:59 - 12:01
    oh, Jen can do it in thirty-six minutes. She's
  • 12:01 - 12:03
    smarter than you. Like, it, it doesn't matter
    to
  • 12:03 - 12:03
    me.
  • 12:03 - 12:05
    N.R.: I did it in thirty-five, but.
  • 12:05 - 12:09
    J.C.: It's that CD degree. You can do it
  • 12:09 - 12:09
    in one minute.
  • 12:09 - 12:10
    N.R.: I, one thing that I think is really
  • 12:10 - 12:14
    important, is try to keep- I saw. Is to
  • 12:14 - 12:17
    try to keep novices from comparing themselves
    against, like,
  • 12:17 - 12:19
    the quote on quote heroes. Like, it's really
    easy
  • 12:19 - 12:23
    for somebody to say, like, oh, I see Steve
  • 12:23 - 12:25
    Clapnick submit, you know, I see these people
    who
  • 12:25 - 12:27
    submit to open source all day long, and a
  • 12:27 - 12:28
    lot of the people who do that, that's actually
  • 12:28 - 12:31
    one way or another their job. And to compare
  • 12:31 - 12:35
    their output, their very public, very voluminous
    output to
  • 12:35 - 12:37
    yours, when it's not really your job to do
  • 12:37 - 12:40
    that, is unfair to yourself, and a little
    bit
  • 12:40 - 12:42
    unfair to them. But mostly unfair to yourself.
    And
  • 12:42 - 12:46
    to try, I've seen, like, novice developers
    get kind
  • 12:46 - 12:48
    of locked in that, that idea that they're
    not
  • 12:48 - 12:52
    doing everything they could be doing. And
    that's dangerous
  • 12:52 - 12:54
    for them. Like, you want them to be celebrating
  • 12:54 - 12:56
    the victories that they are doing and not
    comparing
  • 12:56 - 12:59
    themselves with the things that they're not.
    Sorry, what's?
  • 12:59 - 13:02
    AUDIENCE: Yes. So, what that brings to mind,
    for
  • 13:02 - 13:06
    me, is [indecipherable - 00:13:04], one of
    the concerns
  • 13:06 - 13:09
    that was brought up was this idea that we
  • 13:09 - 13:12
    were missing a lot of developers who are perhaps
  • 13:12 - 13:16
    gonna even do some harm in their first, you
  • 13:16 - 13:18
    know, first few gigs, perhaps.
  • 13:18 - 13:19
    N.R.: All of us do a lot of harm
  • 13:19 - 13:26
    in our first few gigs, right. Like. Yes.
  • 13:26 - 13:32
    AUDIENCE: So this question's for all of you.
    I
  • 13:32 - 13:32
    wonder if, if teaching the next 'great' developers
    is
  • 13:32 - 13:33
    even the right question to be asking. And
    if
  • 13:33 - 13:33
    N.R.: So, OK. So, the question is whether
    teaching
  • 13:33 - 13:35
    the next great developers is the right question,
    and
  • 13:35 - 13:38
    if so what is? Great developers was my fault.
  • 13:38 - 13:40
    Don't blame them for calling this great developers.
  • 13:40 - 13:42
    J.C.: That's link bait.
  • 13:42 - 13:43
    N.R.: Yeah.
  • 13:43 - 13:44
    B.O.: And you're here.
  • 13:44 - 13:46
    N.R.: If I had only said, if I had
  • 13:46 - 13:49
    only said good developers, half of you would
    be
  • 13:49 - 13:51
    off learning- teaching the next half-assed
    developers.
  • 13:51 - 13:54
    J.C.: Yeah. I, I think one of the privileges
  • 13:54 - 13:58
    of working with these programs and people
    that come
  • 13:58 - 14:01
    into our program and, and programs like all
    these
  • 14:01 - 14:05
    people participate in is that they might not
    be
  • 14:05 - 14:08
    great developers. And, like, Bree wants to
    be a
  • 14:08 - 14:11
    full-time developer. In ten years, will Bree
    be a
  • 14:11 - 14:13
    full time developer? I'm not so sure. But
    will
  • 14:13 - 14:16
    she be doing something amazing in technology,
    and like
  • 14:16 - 14:18
    probably be running a company? Will I be working
  • 14:18 - 14:21
    for her? Like, above zero change, you know.
  • 14:21 - 14:25
    Like, and so the people that, mostly, I guess
  • 14:25 - 14:27
    one of the things that surprises people about
    our
  • 14:27 - 14:28
    program, and I think it's probably similar
    for Dev
  • 14:28 - 14:32
    BootCamp, is most of our students are career
    changers.
  • 14:32 - 14:34
    It's not their first career. And so they've
    got
  • 14:34 - 14:36
    these years of experience about how to be
    a
  • 14:36 - 14:39
    professional. They've got years of experience
    in some domain,
  • 14:39 - 14:42
    whether it's finance or health or restaurants
    or whatever
  • 14:42 - 14:46
    it is. And that experience is gonna be amazing
  • 14:46 - 14:49
    for what they do next, after their first couple
  • 14:49 - 14:50
    jobs, right.
  • 14:50 - 14:52
    Noel and I, we have these CS degrees. We're
  • 14:52 - 14:53
    like, one day gonna get thrown out of a
  • 14:53 - 14:57
    Ruby Conference. Like, marked and thrown out.
  • 14:57 - 14:58
    N.R.: Re-education.
  • 14:58 - 15:00
    J.C.: But those people, I'm excited to see,
    like,
  • 15:00 - 15:02
    yes, they're gonna really mess up some projects
    in
  • 15:02 - 15:04
    the short term. But what they do when they
  • 15:04 - 15:06
    get to the point of leading teams and starting
  • 15:06 - 15:08
    companies I think is, well, it's gonna be
    really
  • 15:08 - 15:08
    cool.
  • 15:08 - 15:11
    J.M.: Yeah. I think that the question really
    is,
  • 15:11 - 15:14
    what does great mean? And my, my definition
    of
  • 15:14 - 15:16
    it is similar to what Jeff is describing,
    is
  • 15:16 - 15:19
    that people who bring a really great diversity
    of
  • 15:19 - 15:22
    experience and backgrounds and to, to kind
    of enrich
  • 15:22 - 15:25
    the products that we're making. That's exciting.
    And he's
  • 15:25 - 15:27
    right. In Dev BootCamp, we do have a lot
  • 15:27 - 15:30
    of people who have really unique backgrounds,
    and have
  • 15:30 - 15:33
    some really cool perspectives that they bring
    into things,
  • 15:33 - 15:36
    and are just, like, great people.
  • 15:36 - 15:37
    And those are people you want to work with
  • 15:37 - 15:40
    on teams, and they, you know, they just help
  • 15:40 - 15:42
    you make better things together. So that,
    I'd like
  • 15:42 - 15:46
    to have that definition of great, and kind
    of
  • 15:46 - 15:48
    tease out the, the potential in those people
    who
  • 15:48 - 15:50
    have other things that they can bring to it,
  • 15:50 - 15:53
    and help them contribute that for making the
    developers
  • 15:53 - 15:53
    they are.
  • 15:53 - 15:55
    B.O.: I really like both those answers, because
    I
  • 15:55 - 15:57
    think one of the, the best things about programming
  • 15:57 - 16:00
    is that it's an awesome force multiplier on
    something
  • 16:00 - 16:02
    else that you want to do. So rather than
  • 16:02 - 16:03
    being like, I want to be really amazing at
  • 16:03 - 16:05
    writing code, if you can say, I want to
  • 16:05 - 16:07
    do, I want to change lives in this way
  • 16:07 - 16:09
    or make this sort of thing, and programming
    is
  • 16:09 - 16:11
    the super power that lets you do it harder
  • 16:11 - 16:13
    and faster, I think that's like, the best
    way
  • 16:13 - 16:14
    to think about that.
  • 16:14 - 16:15
    I have a friend who has just enough programming
  • 16:15 - 16:17
    background, that at, he works at a bank with
  • 16:17 - 16:20
    a bunch of finance people, and everyone he
    works
  • 16:20 - 16:24
    with, basically they massage Excel spreadsheets
    all day. And
  • 16:24 - 16:27
    he has just enough programming background
    to write VB
  • 16:27 - 16:30
    to do some of this massaging automatically.
    And he
  • 16:30 - 16:33
    is, you know, the one-eyed man in the land
  • 16:33 - 16:35
    of the blind. Like, he is, there is, he
  • 16:35 - 16:37
    is revered, and people are blown away, because
    he
  • 16:37 - 16:38
    can do these things.
  • 16:38 - 16:39
    And I think that's the perfect way to say,
  • 16:39 - 16:41
    rather than saying I'm gonna be amazing at
    code
  • 16:41 - 16:43
    for code's sake, if you think, you know, I'm
  • 16:43 - 16:46
    gonna get good at using code as this amplifier,
  • 16:46 - 16:48
    as a tool for the other things I want
  • 16:48 - 16:48
    to do.
  • 16:48 - 16:50
    N.R.: What they used to say about journalism
    school
  • 16:50 - 16:52
    is don't do journalism school as an undergraduate.
    Learn
  • 16:52 - 16:54
    something, and then learn how to apply journalism
    to
  • 16:54 - 16:57
    it. I think programming is very similar. Like,
    learn
  • 16:57 - 16:59
    how to do something and then learn how to
  • 16:59 - 17:00
    apply programming to it.
  • 17:00 - 17:02
    One thing I have seen from both the, I've
  • 17:02 - 17:05
    met a number of Dev BootCamp and GSchool,
    Jumpstart
  • 17:05 - 17:09
    graduates, and they do seem very enthusiastic
    as a
  • 17:09 - 17:11
    group, as people who have, like, chosen something
    and
  • 17:11 - 17:14
    gone through and succeeded in this challenging
    program. They
  • 17:14 - 17:17
    tend to come out being, being very enthusiastic.
  • 17:17 - 17:18
    K.E.: You have to.
  • 17:18 - 17:18
    N.R.: Yeah.
  • 17:18 - 17:20
    K.E.: I mean, you spend eighty to ninety hours
  • 17:20 - 17:22
    a week.
  • 17:22 - 17:24
    N.R.: So the question is, how do we make
  • 17:24 - 17:26
    sure that the next generation of developers
    has the
  • 17:26 - 17:31
    interpersonal skills to be leaders and, and
    mentors within
  • 17:31 - 17:32
    the community.
  • 17:32 - 17:33
    L.A.: I don't know if you've noticed this
    about
  • 17:33 - 17:35
    me. I'm kind of a perky person. I'm kind
  • 17:35 - 17:38
    of, you know, friendly, I hug a lot. When
  • 17:38 - 17:40
    I introduce myself at Girl Develop It classes,
    I
  • 17:40 - 17:43
    always say, I wasn't doing this a year ago.
  • 17:43 - 17:45
    I don't get to say that anymore because it's
  • 17:45 - 17:48
    now been a year. I'm so proud of myself.
  • 17:48 - 17:51
    But, I tell them, when I tell them my
  • 17:51 - 17:53
    story, I say, I made this career transition.
    I
  • 17:53 - 17:55
    went to Dev BootCamp. I made this choice.
    And
  • 17:55 - 17:57
    I would not have been able to do this
  • 17:57 - 18:00
    without the assistance of my mentors, of my
    friends,
  • 18:00 - 18:03
    of the teachers at Dev BootCamp who, Jen talked
  • 18:03 - 18:05
    me down from a ledge a couple times. It
  • 18:05 - 18:09
    was not easy. It was really difficult. And
    I
  • 18:09 - 18:11
    preach that to them, and I tell them, I'm
  • 18:11 - 18:13
    here for you. Katie's here for you. We have
  • 18:13 - 18:15
    meet ups. We're your friends. We're your mentors.
    We
  • 18:15 - 18:18
    are here. You should be here for the people
  • 18:18 - 18:20
    that you need help with. And we encourage
    them
  • 18:20 - 18:23
    to help each other during class. So it's not
  • 18:23 - 18:25
    just something we say, do this, maybe, you
    know,
  • 18:25 - 18:27
    in a year or a month or however long,
  • 18:27 - 18:30
    x days, until you become a developer.
  • 18:30 - 18:32
    It's do this right now. Do this in class.
  • 18:32 - 18:35
    Help this person next to you when they're
    struggling.
  • 18:35 - 18:38
    J.M.: And, and, at Dev BootCamp, we actually
    kind
  • 18:38 - 18:40
    of take it a bit further and formalize it.
  • 18:40 - 18:41
    So we actually have a portion of our curriculum
  • 18:41 - 18:45
    that's called Engineering Empathy. The students
    all go through
  • 18:45 - 18:51
    guided sessions in feedback and communication
    and, you know,
  • 18:51 - 18:54
    understanding themselves as, as kind of touchy-feely
    as that
  • 18:54 - 18:57
    sounds. The goal is exactly what you described,
    is
  • 18:57 - 19:01
    to get people to know how to communicate better,
  • 19:01 - 19:04
    know themselves better, have better team dynamics,
    and just
  • 19:04 - 19:07
    be well-rounded individuals that know how
    to connect with
  • 19:07 - 19:11
    other people. Whether it's on their teams
    or clients
  • 19:11 - 19:13
    or customers, any of those sort of things
    that
  • 19:13 - 19:15
    you need to be able to, to build really
  • 19:15 - 19:16
    good software.
  • 19:16 - 19:18
    We formalize that, we have sessions for it,
    and
  • 19:18 - 19:21
    then we try to support structure around it.
    Like
  • 19:21 - 19:24
    Liz describes, of all of us being on board
  • 19:24 - 19:26
    and all the instructors are there to kind
    of,
  • 19:26 - 19:28
    to reinforce it as they go all the way
  • 19:28 - 19:28
    through the program.
  • 19:28 - 19:31
    B.T.: I would just add to that, specifically
    to
  • 19:31 - 19:33
    your question about how do we foster this?
    I
  • 19:33 - 19:38
    would say that, in, I am a very extroverted
  • 19:38 - 19:42
    person, and aside from that, I think it's
    really
  • 19:42 - 19:45
    important when you, when you work with new
    developers,
  • 19:45 - 19:49
    be in their business. Like, don't let them,
    you
  • 19:49 - 19:51
    know, OK, yeah, yeah, yeah, I got this. I'm
  • 19:51 - 19:53
    just gonna go work over here on this thing,
  • 19:53 - 19:55
    or I'm gonna do a couple hours of code
  • 19:55 - 19:58
    school till you give me a task to do.
  • 19:58 - 20:01
    Because I think as new developers, no matter
    how
  • 20:01 - 20:04
    extroverted we are or, there, there is still
    a
  • 20:04 - 20:06
    little bit, that fear of, oh gosh. We're gonna
  • 20:06 - 20:09
    break production. Oh shit.
  • 20:09 - 20:11
    Or whatever it is. Or you know, maybe we're
  • 20:11 - 20:14
    just, we're too nervous to ask questions because
    you
  • 20:14 - 20:17
    guys look really busy doing the real work.
    So,
  • 20:17 - 20:20
    I would, I just think it's important, at least
  • 20:20 - 20:22
    for me, I mean, I like it when mentors
  • 20:22 - 20:25
    and people that I look up to are, they're
  • 20:25 - 20:27
    like in my business. They're like, OK, what
    are
  • 20:27 - 20:30
    you doing? Let's talk about that. Let me shoulder
  • 20:30 - 20:32
    hawk you for a few. Let's pair program. I
  • 20:32 - 20:35
    think all of that is really important in fostering
  • 20:35 - 20:37
    new developers.
  • 20:37 - 20:42
    J.C.: Anybody in the room been a mentor for
  • 20:42 - 20:45
    a program like one of ours? So, number one,
  • 20:45 - 20:47
    want to give you tremendous shout outs, that
    those
  • 20:47 - 20:52
    relationships are incredibly valuable for
    our students. People like
  • 20:52 - 20:55
    Shawn had a mentor, a mentee in our program,
  • 20:55 - 20:58
    and like, Shawn changed that young man's life.
    Like,
  • 20:58 - 21:03
    without a doubt. So, tremendous shout outs.
  • 21:03 - 21:05
    Fostering the interpersonal communication
    I think is the most
  • 21:05 - 21:08
    valuable piece we can add, right. Like, the
    code
  • 21:08 - 21:10
    you can get from a book. And how to
  • 21:10 - 21:12
    work with a team and how a team goes
  • 21:12 - 21:15
    wrong and right, you only get through experience.
    And
  • 21:15 - 21:18
    so, that's like, with our program, we're fortunate
    to
  • 21:18 - 21:21
    have a very long time. And so, they work
  • 21:21 - 21:24
    primarily in three week projects with groups
    of four
  • 21:24 - 21:28
    people. And you learn all the hard lessons
    of,
  • 21:28 - 21:29
    hopefully, some of those first projects that
    you would
  • 21:29 - 21:32
    otherwise screw up for money, you screw up
    on
  • 21:32 - 21:34
    your own time and your own money.
  • 21:34 - 21:37
    You see the team that has all the all-stars
  • 21:37 - 21:39
    and they go in with all the confidence, and
  • 21:39 - 21:41
    they're like, yeah, we've been doing this
    Rails thing
  • 21:41 - 21:43
    for six weeks, we're gonna build a Backbone
    frontend.
  • 21:43 - 21:45
    And we're like, yeah, don't do it. And they're
  • 21:45 - 21:46
    like, no, we're gonna do it. OK. And then
  • 21:46 - 21:48
    it all burns down, right.
  • 21:48 - 21:50
    Or, you see the team that is honestly kind
  • 21:50 - 21:52
    of mediocre with their skills, but they get
    along
  • 21:52 - 21:55
    and they pair well together, and they communicate
    well,
  • 21:55 - 21:57
    and then they end up delivering better software
    than
  • 21:57 - 21:58
    the all-star team, and the all-star team is
    like,
  • 21:58 - 22:01
    hey, wait a second. Like, we should talk to
  • 22:01 - 22:03
    each other and, like, figure stuff out. Hmm.
    This
  • 22:03 - 22:04
    works better.
  • 22:04 - 22:08
    And, just getting to iterate on those problems
    and
  • 22:08 - 22:10
    learn them yourself, not just, like, hear
    it in
  • 22:10 - 22:12
    a conference talk and try to follow through.
    We
  • 22:12 - 22:14
    do little things like lightning talks. I know
    you
  • 22:14 - 22:17
    guys do lightning talks also. So, I, I like
  • 22:17 - 22:19
    to think that that has like, lead to like,
  • 22:19 - 22:21
    Bree's giving a talk tomorrow and a couple
    of
  • 22:21 - 22:24
    your grads are giving talks and so forth.
  • 22:24 - 22:29
    R.N.: Sorry, next. Yeah. Go ahead.
  • 22:29 - 22:31
    So, so the question is, is does it scare
  • 22:31 - 22:32
    us that we're bringing in a bunch of people
  • 22:32 - 22:35
    into an industry that's horrible at onboarding
    people.
  • 22:35 - 22:37
    J.C.: I heard there's a talk about crafting
    your
  • 22:37 - 22:40
    own onboarding experience that's really phenomenal.
  • 22:40 - 22:44
    J.M.: I mean, it's a little scary, especially
    as
  • 22:44 - 22:47
    somebody who has been an instructor, you really
    care
  • 22:47 - 22:49
    a lot about those students, and they go out
  • 22:49 - 22:50
    into the world and it's a little bit like,
  • 22:50 - 22:52
    yeah, you're, you're sending your kid off
    to school
  • 22:52 - 22:56
    or something like that. You don't know what's
    gonna
  • 22:56 - 22:57
    happen.
  • 22:57 - 22:58
    But, you know, I'm not really sure how to
  • 22:58 - 23:01
    solve that problem other than just attack
    it. And
  • 23:01 - 23:04
    so I think that if we can bring people,
  • 23:04 - 23:06
    or produce people that do know how to own
  • 23:06 - 23:10
    their own learning and know how to communicate
    well,
  • 23:10 - 23:12
    then those are some of the best weapons we
  • 23:12 - 23:14
    have to improve the overall process for other
    people
  • 23:14 - 23:17
    coming in. And hopefully we can also, for
    those
  • 23:17 - 23:20
    of us who know some these challenges, can
    provide
  • 23:20 - 23:22
    more structure and, and, you know, we, we
    have
  • 23:22 - 23:25
    a placements team who works with companies
    to hire
  • 23:25 - 23:27
    our grads and things like that. So, we, we
  • 23:27 - 23:30
    can build a structure that maybe can help
    provide
  • 23:30 - 23:32
    more resources or help for the companies that
    are,
  • 23:32 - 23:34
    are taking our grads, and just make it smoother
  • 23:34 - 23:36
    for everybody. And hopefully the more we do
    that,
  • 23:36 - 23:38
    the better it gets.
  • 23:38 - 23:40
    B.O.: I'm sort of the opposite of scared of
  • 23:40 - 23:42
    bringing more people in. I think we desperately
    need
  • 23:42 - 23:45
    to do it. Right now, at, at least what
  • 23:45 - 23:47
    I see, demand is so much higher than supply,
  • 23:47 - 23:49
    and that works out pretty well for us as
  • 23:49 - 23:51
    developers that already know what we're doing,
    right, because
  • 23:51 - 23:53
    we're, we're very much in demand. The power
    is
  • 23:53 - 23:56
    on our side right now. But if that demand
  • 23:56 - 23:58
    are supply are mismatched for too long, the
    demand
  • 23:58 - 24:00
    will drop. It'll have to drop. And I, I
  • 24:00 - 24:02
    know someone who is a CTO for hire. And
  • 24:02 - 24:03
    so he works a lot of companies. And so
  • 24:03 - 24:05
    he had a start up that just got funded
  • 24:05 - 24:07
    and was like, OK. Now we're ready. Let's go
  • 24:07 - 24:09
    hire a Rails developer. And they couldn't.
    They couldn't
  • 24:09 - 24:11
    find someone. They said, OK, let's not write
    it
  • 24:11 - 24:13
    in Rails. We're gonna go somewhere else.
  • 24:13 - 24:14
    So, if we have this mismatch for too long,
  • 24:14 - 24:16
    I think it will be bad for us. And
  • 24:16 - 24:18
    so I think, if we've got this crazy giant
  • 24:18 - 24:20
    demand up top, we've got to, got to satisfy
  • 24:20 - 24:20
    it.
  • 24:20 - 24:21
    N.R.: Speaking of-
  • 24:21 - 24:22
    B.O.: And it'll be better in the long run.
  • 24:22 - 24:23
    N.R.: Speaking from the side of this of somebody
  • 24:23 - 24:28
    who onboards novices, I think that, I mean,
    this
  • 24:28 - 24:30
    is a problem that, to some extent, is outside
  • 24:30 - 24:31
    of all of their control, right, as Jen was
  • 24:31 - 24:33
    alluding to. What we need to do on that,
  • 24:33 - 24:37
    on the, on the incoming, on the incoming side,
  • 24:37 - 24:41
    is understand that in some cases, the, where,
    understand
  • 24:41 - 24:43
    where these students are coming from, that
    the experiences
  • 24:43 - 24:45
    that they have had and the experiences they
    haven't
  • 24:45 - 24:48
    had, and ideally put them in a situation where
  • 24:48 - 24:50
    they can be successful, and where we're matching
    them
  • 24:50 - 24:51
    to expectations that are reasonable.
  • 24:51 - 24:53
    You know, I think a lot of the students,
  • 24:53 - 24:54
    I think that you guys would agree that, that
  • 24:54 - 24:57
    there are better situations for your students
    to go
  • 24:57 - 24:59
    to, and worse situations for your students
    to go
  • 24:59 - 25:00
    to, and you want them to go to a
  • 25:00 - 25:02
    place where there are going to be other p-
  • 25:02 - 25:04
    you don't want them to go to a place
  • 25:04 - 25:05
    where they're going to be the entire straw
    holding
  • 25:05 - 25:07
    up, you know, the one straw holding up this
  • 25:07 - 25:09
    huge weight of stuff. You want them to go
  • 25:09 - 25:12
    to a place where they're going to be more
  • 25:12 - 25:14
    senior people who can put them in a situation
  • 25:14 - 25:15
    where they're gonna be successful.
  • 25:15 - 25:17
    And I do think we have to get better
  • 25:17 - 25:21
    at doing that, generally.
  • 25:21 - 25:23
    Creating senior developers is a whole different
    ball. Jeff,
  • 25:23 - 25:26
    did you have a point you wanted to make?
  • 25:26 - 25:28
    J.C.: As far as companies that do and do
  • 25:28 - 25:33
    not have apprenticeships, I think of it really
    as
  • 25:33 - 25:36
    evolution. Like, there are so many companies
    that sit
  • 25:36 - 25:39
    around waiting to hire a senior engineer and
    look
  • 25:39 - 25:41
    for six months and don't find any and all
  • 25:41 - 25:44
    that. And meanwhile, the company who brought
    in apprentices,
  • 25:44 - 25:47
    they now have six months experience, and they're
    delivering
  • 25:47 - 25:49
    probably, like, somebody with two years of
    experience, if
  • 25:49 - 25:51
    they're doing it well. And the reality is,
    if
  • 25:51 - 25:54
    your company does, in my opinion, does not
    work
  • 25:54 - 25:57
    on bringing in young people, young in their
    career,
  • 25:57 - 26:00
    you're gonna die. Like, you're just gonna
    lose. Because
  • 26:00 - 26:03
    the teams that build up their own people keep
  • 26:03 - 26:06
    those people. Those people are tremendously
    valuable six months,
  • 26:06 - 26:09
    a year, eighteen months in. And they'll just
    beat
  • 26:09 - 26:09
    you.
  • 26:09 - 26:10
    N.R.: Dave, Dave Hoover had a theory at Optiva
  • 26:10 - 26:13
    that the goal of a, a small company was
  • 26:13 - 26:15
    to have people at every level. You have the
  • 26:15 - 26:17
    best novices, you have the best intermediate
    juniors, you
  • 26:17 - 26:19
    have the best people right after that. You
    don't
  • 26:19 - 26:21
    just have a bunch of seniors and a bunch
  • 26:21 - 26:23
    of novices. You have people, to the extent
    that
  • 26:23 - 26:26
    you can have people at every step in between.
  • 26:26 - 26:28
    What's great about that is, everybody has
    somebody who's
  • 26:28 - 26:31
    about six months ahead of them to point what
  • 26:31 - 26:33
    their next six months are gonna be like, and
  • 26:33 - 26:35
    everybody has somebody who's six months behind
    them, that
  • 26:35 - 26:39
    they are an obvious and immediate, like, partner
    for.
  • 26:39 - 26:40
    So if you can build up a business like
  • 26:40 - 26:42
    that, if you can build up a team like
  • 26:42 - 26:44
    that, that's, that's fantastic.
  • 26:44 - 26:46
    B.O.: We've embraced that like crazy. Like,
    bringing in
  • 26:46 - 26:48
    apprentice level people. We have an apprentice
    program. And
  • 26:48 - 26:49
    it's been huge for us. We've been able to
  • 26:49 - 26:52
    hire so many more awesome people than we would
  • 26:52 - 26:53
    have if we had just said, we're looking for
  • 26:53 - 26:57
    senior only. We're not willing to invest in
    these
  • 26:57 - 27:00
    people and train them.
  • 27:00 - 27:02
    N.R.: So the question is, how do we get,
  • 27:02 - 27:03
    how do we get the people coming in to
  • 27:03 - 27:07
    set reasonable goals for what they can accomplish,
    technically?
  • 27:07 - 27:12
    B.T.: I'll start. Well, after being a student
    of
  • 27:12 - 27:16
    this gentleman, he's actually, I would say,
    over the,
  • 27:16 - 27:19
    over the six months that I was school, to
  • 27:19 - 27:22
    that point, he was actually really good in
    that
  • 27:22 - 27:24
    learning time about, like, oh. You think you
    can
  • 27:24 - 27:28
    do this thing? Go ahead. Knock yourself out.
    Right?
  • 27:28 - 27:30
    So, much like with children, I have a seven
  • 27:30 - 27:31
    year old, it's kind of like, you're in charge
  • 27:31 - 27:33
    of your own fun. You learn a lot by
  • 27:33 - 27:36
    being crushed by some of those, oh, this was
  • 27:36 - 27:38
    a lot harder than I thought it was gonna
  • 27:38 - 27:42
    be. So I think there's something important
    about that.
  • 27:42 - 27:45
    In terms of at the work place, I'd, at
  • 27:45 - 27:48
    least where I work, you know, they're very
    good
  • 27:48 - 27:52
    about, and, and they have a, a focus on
  • 27:52 - 27:54
    kind of onboarding, right. And so they're
    very good
  • 27:54 - 27:57
    about, hey, we're going to help define these
    goals
  • 27:57 - 28:00
    with you. We're gonna help ease you into the
  • 28:00 - 28:04
    code base. And we're gonna do that with smaller
  • 28:04 - 28:07
    sets of problems to solve. And we're not going
  • 28:07 - 28:10
    to place this burden on you for, get this
  • 28:10 - 28:13
    feature done by this exact time.
  • 28:13 - 28:15
    And so I think all of that is, is
  • 28:15 - 28:18
    really, really helpful. And the other thing
    that I
  • 28:18 - 28:20
    think's really helpful and goes a little bit
    back
  • 28:20 - 28:21
    to what we were talking about just a second
  • 28:21 - 28:26
    ago is, in terms of students, you know, even
  • 28:26 - 28:29
    in being novices, there's different levels
    of that. And,
  • 28:29 - 28:32
    and people are different. And so I think that
  • 28:32 - 28:34
    the programs that do exist right now, Dev
    BootCamp
  • 28:34 - 28:36
    and the other ones, I think one thing that's
  • 28:36 - 28:39
    really important and that was beneficial for
    me especially,
  • 28:39 - 28:43
    was as I went through the interview process,
    my
  • 28:43 - 28:47
    instructors were there with me through the
    whole thing.
  • 28:47 - 28:50
    And they were really, really honest with me,
    as
  • 28:50 - 28:54
    well as having conversations with employers,
    about my ability.
  • 28:54 - 28:58
    And so, that helped, that honesty about, you
    know,
  • 28:58 - 29:00
    where I'm at in my learning and the type
  • 29:00 - 29:02
    of learner that I am and the things that
  • 29:02 - 29:05
    I'm interested in, is beneficial so that I
    don't
  • 29:05 - 29:09
    find myself in a work place where, you know,
  • 29:09 - 29:11
    that's all I'm gonna be is, sort of buried
  • 29:11 - 29:14
    under these goals or things that I can't,
    you
  • 29:14 - 29:16
    know, where I can't really prosper.
  • 29:16 - 29:19
    L.A.: On that note, it's also important to
    teach
  • 29:19 - 29:22
    people to reassess their goals and to be able
  • 29:22 - 29:25
    to take note of where they are and where
  • 29:25 - 29:27
    they expected to be, and maybe think about
    why
  • 29:27 - 29:29
    they're not. I think that's also a very important
  • 29:29 - 29:29
    piece.
  • 29:29 - 29:31
    J.M.: Yeah. I just want to kind of, I
  • 29:31 - 29:32
    like, really both of those, and I like what
  • 29:32 - 29:35
    you're saying, too. Maybe it's a parent thing.
    I
  • 29:35 - 29:37
    have an eight-year-old. And I feel the same
    way,
  • 29:37 - 29:40
    where, I feel very strongly it's important
    for people
  • 29:40 - 29:42
    to make mistakes and be able to learn from
  • 29:42 - 29:44
    them. And I don't think it's so much about
  • 29:44 - 29:46
    preventing them from, you know, trying to
    scale back
  • 29:46 - 29:48
    the goals to prevent them from making any
    mistakes,
  • 29:48 - 29:51
    but, creating an environment where it's safe
    to do
  • 29:51 - 29:53
    that, and them helping them in figuring out
    what
  • 29:53 - 29:55
    they can learn from it when they do that.
  • 29:55 - 29:57
    So that's kind of, in general, the philosophy
    that
  • 29:57 - 29:59
    I like to ascribe to, and I think, Dev
  • 29:59 - 30:02
    BootCamp is in a little bit of a different
  • 30:02 - 30:04
    situation, where we don't have people as long
    as
  • 30:04 - 30:05
    some of the other schools. We only have people
  • 30:05 - 30:08
    for nine weeks. So we don't have as much
  • 30:08 - 30:09
    time to do that, but I think we do
  • 30:09 - 30:11
    that in general, and then also the way we
  • 30:11 - 30:14
    structure the program starts with the basic
    building blocks,
  • 30:14 - 30:16
    and then builds on top of them.
  • 30:16 - 30:18
    We're a Ruby on Rails training program, but
    you
  • 30:18 - 30:21
    don't even get to Rails until your seventh
    week
  • 30:21 - 30:24
    of the program. So, we're teaching the fundamentals
    before
  • 30:24 - 30:25
    then. So I think if you start out with
  • 30:25 - 30:28
    the, the basic blocks and build up from there,
  • 30:28 - 30:29
    and also at the same time kind of create
  • 30:29 - 30:32
    this environment where it's OK to screw things
    up,
  • 30:32 - 30:34
    and somebody's gonna help you figure out,
    you know,
  • 30:34 - 30:36
    how to learn from that, or, as the two
  • 30:36 - 30:38
    things together make it a lot easier to understand
  • 30:38 - 30:40
    what you can achieve and how to do it.
  • 30:40 - 30:43
    J.C.: No, hold on man. I'm going. Hold on.
  • 30:43 - 30:46
    N.R.: I'm sorry. You can have your question
    after
  • 30:46 - 30:47
    Jeff says something.
  • 30:47 - 30:50
    J.C.: So, TDD I heard is over.
  • 30:50 - 30:50
    N.R.: Dead.
  • 30:50 - 30:52
    J.C.: But, we teach it anyway.
  • 30:52 - 30:54
    N.R.: Not, not, not, not just over. Dead.
    Dead.
  • 30:54 - 30:56
    J.C.: So we're old fashion. It's dead. Well,
    we're
  • 30:56 - 30:59
    old fashioned. And so we, we teach TDD, and
  • 30:59 - 31:03
    it starts on day two, and I think that
  • 31:03 - 31:06
    the approach behind TDD is the same approach
    behind
  • 31:06 - 31:09
    lean start up. And, like, breaking off incredibly
    small
  • 31:09 - 31:12
    problems, getting feedback right away and
    iterating on that.
  • 31:12 - 31:15
    And so by starting with TDD, as the means
  • 31:15 - 31:17
    to build software, and then we try, through
    these
  • 31:17 - 31:20
    three week projects they work on in their
    teams,
  • 31:20 - 31:23
    really take, like, a lean approach to delivering
    it
  • 31:23 - 31:26
    early, adding on incremental features.
  • 31:26 - 31:27
    Well, first we let them try and build all
  • 31:27 - 31:28
    the features and deliver it day of, and it
  • 31:28 - 31:31
    all burns down and we're like, see. That sucks.
  • 31:31 - 31:32
    Don't do that again.
  • 31:32 - 31:36
    And, but, like, by, by starting with the tests,
  • 31:36 - 31:39
    and then applying that to the product, I think
  • 31:39 - 31:41
    it teaches you how to take an idea and
  • 31:41 - 31:44
    figure out, what is the essential component
    here? Like,
  • 31:44 - 31:46
    whether, whether it's an aspiration for a
    company I'm
  • 31:46 - 31:49
    gonna build, or just the goal for, I'm gonna
  • 31:49 - 31:52
    learn something. Like, it's critically important
    to figure out,
  • 31:52 - 31:53
    like, what's the first step. And I think that's
  • 31:53 - 31:55
    the hardest part of any good idea.
  • 31:55 - 31:59
    N.R.: OK. Now you can ask your question.
  • 31:59 - 32:02
    J.C.: So I'm very involved in the interview
    process
  • 32:02 - 32:04
    and do a lot of like, coaching with the
  • 32:04 - 32:08
    students and so forth. And, your technical
    interviews are
  • 32:08 - 32:12
    a hot mess. Like, people have cargo culted
    their
  • 32:12 - 32:16
    process from, like, two companies ago, and
    you'll see,
  • 32:16 - 32:19
    sometimes, it, it makes absolutely no sense.
    There is
  • 32:19 - 32:22
    a company that'll put, like, students through
    six rounds
  • 32:22 - 32:24
    of interviews, and then say no. And I'm like,
  • 32:24 - 32:26
    do you understand how much of your own time
  • 32:26 - 32:29
    you've wasted here? Like, it's insane.
  • 32:29 - 32:32
    Specifically with the technical questions,
    you'll see such a
  • 32:32 - 32:35
    broad range. People will be like, I have an
  • 32:35 - 32:36
    array. How do I pull out an element? And
  • 32:36 - 32:40
    it's like, really? Come on. And then there's
    others,
  • 32:40 - 32:41
    we, we did have a student get asked, like,
  • 32:41 - 32:44
    are you familiar with binary trees? And he
    said,
  • 32:44 - 32:45
    like, yeah. I've built a binary tree. And
    they're
  • 32:45 - 32:49
    like, do you know, like the, the lookup efficiency
  • 32:49 - 32:51
    of something? And he's like, oh, you mean
    like,
  • 32:51 - 32:53
    n log(n)? And it's like boom. Bomb dropped
    on
  • 32:53 - 32:54
    you. Like, you didn't see that coming from
    somebody
  • 32:54 - 32:57
    who's been doing it for six months, right.
  • 32:57 - 33:00
    The reality is that, code, like, everyone,
    I guess
  • 33:00 - 33:04
    not everyone. You should agree that coding
    on a
  • 33:04 - 33:06
    white board is dumb, right. I tell students
    that
  • 33:06 - 33:08
    if somebody asks you to code on a white
  • 33:08 - 33:11
    board, tell them how do I run the tests?
  • 33:11 - 33:14
    And, like, question over.
  • 33:14 - 33:20
    But the, the piece about, like, how do they
  • 33:20 - 33:22
    learn? How do they solve problems? That is
    incredibly
  • 33:22 - 33:25
    valuable. So, yeah. I, I think we need to
  • 33:25 - 33:29
    have a lot more conversation around how, as
    teams
  • 33:29 - 33:31
    and companies, do we want to build up interview
  • 33:31 - 33:34
    processes that actually achieve the goals
    and, and like
  • 33:34 - 33:36
    find the people that we want?
  • 33:36 - 33:39
    Because, from what I've seen, there's like.
    There's no
  • 33:39 - 33:41
    understanding. There's kind of like, fear
    and uncertainty about
  • 33:41 - 33:43
    it. We had a student this time ask, get
  • 33:43 - 33:46
    asked to sign an MVA about the interview process.
  • 33:46 - 33:49
    There's, it's not that interesting, bros.
    Like, whatever it
  • 33:49 - 33:51
    is, it's not that interesting. So, I think
    there's
  • 33:51 - 33:53
    a lot of work to be done there.
  • 33:53 - 33:56
    K.E.: I can just talk on a personal level
  • 33:56 - 33:58
    of, I had a really, well, I don't want
  • 33:58 - 34:00
    to say I had a bad technical interview. But
  • 34:00 - 34:02
    I want to speak to the good technical interview
  • 34:02 - 34:05
    that I had at the current company that I'm
  • 34:05 - 34:06
    with, and part of the reason why I chose
  • 34:06 - 34:07
    to go to that company is because of the
  • 34:07 - 34:09
    technical interview.
  • 34:09 - 34:11
    And, the interview I had was a take home
  • 34:11 - 34:13
    assignment. And this is one of the different
    formats
  • 34:13 - 34:15
    you can do. I had a take home assignment
  • 34:15 - 34:18
    for three days to build an API. It was
  • 34:18 - 34:21
    my first API, and it was just an amazing
  • 34:21 - 34:23
    experience, in that, not only did I get to
  • 34:23 - 34:26
    learn something, as part of the interview,
    I got
  • 34:26 - 34:30
    to see how accessible my manager would be,
    and
  • 34:30 - 34:32
    then he was also able to judge, how did
  • 34:32 - 34:35
    I attack something that I didn't know? And
    also,
  • 34:35 - 34:38
    what kind of questions that, did I ask? And
  • 34:38 - 34:41
    I think we each got a really good understanding
  • 34:41 - 34:45
    of what this type of relationship would be
    like.
  • 34:45 - 34:47
    So that's just personal experience.
  • 34:47 - 34:49
    B.O.: So the, the process that we do I
  • 34:49 - 34:50
    think is actually pretty good. So we do have
  • 34:50 - 34:53
    a, a technical screen, which is sort of a
  • 34:53 - 34:54
    discussion of, how might you build this? How
    might
  • 34:54 - 34:56
    you build that? But the real meat of the
  • 34:56 - 34:59
    interview is, in person pairing in the office.
    A
  • 34:59 - 35:02
    full day. And you work on real stuff. Real
  • 35:02 - 35:05
    client work. Real open source work. Whatever
    people would
  • 35:05 - 35:07
    actually normally be doing. And you sit next
    to
  • 35:07 - 35:08
    somebody. And I like that a lot.
  • 35:08 - 35:10
    You know, you can run the tests. It's not
  • 35:10 - 35:13
    a, a fake, contrived problem. You can see,
    also,
  • 35:13 - 35:14
    what it's like to sit next to somebody, and
  • 35:14 - 35:16
    it's cause there's, there's that social fit,
    which is
  • 35:16 - 35:18
    so important, too. And so that, the white
    boarding
  • 35:18 - 35:20
    thing, I agree. That needs to die, for sure.
  • 35:20 - 35:22
    And, you know, let's move more towards pairing
    and
  • 35:22 - 35:24
    seeing what people are actually like on real
    stuff
  • 35:24 - 35:26
    that you're working on.
  • 35:26 - 35:30
    J.C.: I forgot to mention one of my favorite
  • 35:30 - 35:32
    interviews that I ever saw, that you reminded
    me
  • 35:32 - 35:35
    of, was ThoughtWorks asks you to create a
    code
  • 35:35 - 35:38
    sample, or, like, solve a sample assignment
    and submit
  • 35:38 - 35:39
    it. You have, like, a week, or something along
  • 35:39 - 35:41
    those lines. And then when you get into the
  • 35:41 - 35:42
    in person interview, what you do is sit down
  • 35:42 - 35:46
    with an engineer and pair on refactoring your
    submission
  • 35:46 - 35:47
    to the assignment.
  • 35:47 - 35:49
    And so they get to see a lot of
  • 35:49 - 35:51
    great things that way. Like, how do you understand
  • 35:51 - 35:53
    that you, that you wrote? Did you actually
    write
  • 35:53 - 35:56
    it? You know. Like, and how do you think
  • 35:56 - 35:58
    about refactoring. Do you go, like, what it
    works?
  • 35:58 - 35:59
    Why would I change it? You know. Or, do
  • 35:59 - 36:04
    you understand how to restructure, abstract
    objects, abstract methods.
  • 36:04 - 36:05
    I thought it was awesome.
  • 36:05 - 36:05
    N.R.: We do something like that too, while
    we're
  • 36:05 - 36:06
    sharing, we've done that before. I think we
    have
  • 36:06 - 36:08
    time for one more question.
  • 36:08 - 36:08
    B.O.: That guy's had his hand up like the
  • 36:08 - 36:09
    whole time.
  • 36:09 - 36:10
    N.R.: OK. So I will, I will go with
  • 36:10 - 36:13
    you. I hope it's a good question. We actually,
  • 36:13 - 36:15
    we're last. I have no place to go, I
  • 36:15 - 36:16
    have no place to go after this. But they
  • 36:16 - 36:21
    may stop recording us.
  • 36:21 - 36:22
    After dark.
  • 36:22 - 36:24
    AUDIENCE: [indecipherable]
  • 36:24 - 36:26
    L.A.: We spent a lot of time getting women
  • 36:26 - 36:30
    familiar with technical concepts and comfortable
    talking about technical
  • 36:30 - 36:33
    concepts so they can take on more technical
    roles.
  • 36:33 - 36:35
    Not necessarily as an engineer, but perhaps
    as a
  • 36:35 - 36:38
    product manager, instead of doing project
    management. And, that's
  • 36:38 - 36:40
    a subtle difference to us, but it's a huge
  • 36:40 - 36:41
    difference to them. It's a world of difference.
    It's
  • 36:41 - 36:45
    more technical responsibility. They're more
    comfortable with their knowledge.
  • 36:45 - 36:49
    And so, my goal, teaching people, is not to
  • 36:49 - 36:51
    get them to be x, it's to get them
  • 36:51 - 36:55
    to whatever their x happiness will be. I love
  • 36:55 - 36:56
    what I do, but that may not be right
  • 36:56 - 36:59
    for them. I want to help them in any
  • 36:59 - 37:01
    way that I can to get to the technical
  • 37:01 - 37:03
    career that they want to have, that will work
  • 37:03 - 37:05
    for them. And whatever resources I have, I
    will
  • 37:05 - 37:11
    just like waterfall at their face. So.
  • 37:11 - 37:14
    J.C.: It's one of the questions I really try
  • 37:14 - 37:17
    and watch out for in students, or applicants,
    at
  • 37:17 - 37:20
    that stage, is do you want to be a
  • 37:20 - 37:23
    professional developer? And if the answer
    is no, please
  • 37:23 - 37:26
    don't come. Because it's a tremendous waste
    of time.
  • 37:26 - 37:29
    Like, spending twenty-seven weeks to prepare
    for a job
  • 37:29 - 37:32
    you don't want makes no sense. And I redirect
  • 37:32 - 37:34
    them, like, you're a lot better off, like,
    going
  • 37:34 - 37:37
    to Dev BootCamp, and you can come out and
  • 37:37 - 37:40
    like, you have some programming skills and
    you can
  • 37:40 - 37:43
    reappropriate those into a management position,
    in a project
  • 37:43 - 37:44
    position if you want to. It makes a lot
  • 37:44 - 37:46
    more sense.
  • 37:46 - 37:48
    J.M.: Yeah. I'll, I'll just add to that. That,
  • 37:48 - 37:50
    I think that, sometimes even Dev BootCamp
    is a
  • 37:50 - 37:53
    little too intense for that, just because
    most of
  • 37:53 - 37:54
    the people, like, it's still hard to like
    quit
  • 37:54 - 37:56
    your job for nine weeks if you're just kind
  • 37:56 - 37:59
    of doing it to, to pivot. But it is,
  • 37:59 - 38:01
    it's less intense, or it might be a little
  • 38:01 - 38:03
    bit easier. And we do have people who go
  • 38:03 - 38:05
    through who want to apply it to, maybe, a,
  • 38:05 - 38:08
    a certain area that isn't just being a straight
  • 38:08 - 38:10
    up developer. But I think, like, Liz was talking
  • 38:10 - 38:13
    about, things like Girl Develop It and other
    organizations
  • 38:13 - 38:16
    that are working on really reaching out to
    people,
  • 38:16 - 38:18
    and there's lots of them. And they have lots
  • 38:18 - 38:20
    of different focuses. But I think that's where
    they
  • 38:20 - 38:22
    really come into play, is that just opening
    these
  • 38:22 - 38:24
    doors, and you get to choose where you go
  • 38:24 - 38:25
    after that.
  • 38:25 - 38:26
    You know, you kind of just go, maybe a
  • 38:26 - 38:28
    door is the wrong word, but more of a
  • 38:28 - 38:30
    gateway. And, so then you can go in many
  • 38:30 - 38:33
    directions after that. So, I think that these
    are
  • 38:33 - 38:36
    compliments, not nec- they're not all necessarily
    the same
  • 38:36 - 38:38
    thing. We kind of have a spectrum of different
  • 38:38 - 38:40
    organizations, and they compliment each other
    really well.
  • 38:40 - 38:43
    The really nice thing about just being, reaching
    out
  • 38:43 - 38:45
    and letting people choose where they want
    to go,
  • 38:45 - 38:47
    maybe they don't know what they want and they
  • 38:47 - 38:50
    don't know what's out there. I know, you know,
  • 38:50 - 38:51
    as I was growing up, I didn't even have
  • 38:51 - 38:54
    the internet, you know. Web, being a web application
  • 38:54 - 38:57
    developer didn't even exist. So I had no idea
  • 38:57 - 38:59
    until I was probably like in my early twenties
  • 38:59 - 39:01
    that maybe this might exist and maybe I can
  • 39:01 - 39:03
    start working towards it.
  • 39:03 - 39:05
    And there are still, and that was kind of
  • 39:05 - 39:06
    a time thing for me. But there are many
  • 39:06 - 39:09
    people who don't have access to the opp- to
  • 39:09 - 39:10
    the kind of opportunities that we do, and
    so
  • 39:10 - 39:13
    just being able to give them more accessible
    ways
  • 39:13 - 39:15
    to see what is out there, might be able
  • 39:15 - 39:17
    to say, oh, well maybe I actually do want
  • 39:17 - 39:18
    to do that. And then they can take one
  • 39:18 - 39:19
    of these other programs.
  • 39:19 - 39:21
    N.R.: Yeah. Things like CodeSchool and Rails
    for Zombies
  • 39:21 - 39:23
    and stuff also have a place in that, too.
  • 39:23 - 39:26
    You get, you get a certain amount, enough
    knowledge
  • 39:26 - 39:28
    to understand. You have to have enough. There
    are
  • 39:28 - 39:29
    some positions where all you need to know
    is
  • 39:29 - 39:31
    you need to know when your technical person
    is
  • 39:31 - 39:35
    totally bull shitting you. And that, that's,
    those kinds
  • 39:35 - 39:37
    of things move to that, go to speak to
  • 39:37 - 39:38
    that.
  • 39:38 - 39:39
    I am obligated to tell you that we're at
  • 39:39 - 39:41
    time. I, I don't have any place to go.
  • 39:41 - 39:44
    I don't know about you guys. So, if people
  • 39:44 - 39:46
    have questions, I'm willing to, with whoever
    wants, continue
  • 39:46 - 39:49
    to answer questions. If you have some place,
    if
  • 39:49 - 39:51
    you guys have places to go, that's fine. But
  • 39:51 - 39:54
    first, just a round of applause for the panel.
  • 39:54 - 39:57
    Thank you guys all for showing up. And, thank
  • 39:57 - 39:58
    you for coming.
Title:
RailsConf 2014 - Panel: Teaching the Next Great Developers by Noel Rappin
Description:

more » « less
Duration:
40:20

English subtitles

Revisions