Heads up! To view this whole video, sign in with your Courses Plus account or enroll in your free 7-day trial. Sign In Enroll
Preview
Start a free Courses trial
to watch this video
In this episode, Treehouse Teacher, James Churchill, talks to Craig Dennis about Hype Driven Development.
Related Discussions
Have questions about this video? Start a discussion with the community and Treehouse staff.
Sign upRelated Discussions
Have questions about this video? Start a discussion with the community and Treehouse staff.
Sign up
Hi, welcome to the Dev Team show,
my name is James.
0:00
>> And I'm Craig.
0:03
>> In this episode, we're gonna be
talking about hype-driven development,
0:04
or as it sometimes is called, HDD
0:09
[MUSIC]
0:11
>> So, what is HDD?
0:14
>> Well, I think we're all
pretty guilty of this, and
0:17
there was recently this awesome
article that just came out called
0:19
HDD like Hype Driven Development,
and about, it's a cut,
0:22
everybody just jumping on the fact
of all my gosh there's a new tool.
0:25
Let's go use it.
0:29
>> I just got back from
a conference last week.
0:30
So, I can completely relate,
0:32
because I saw all these cool things that
I wanna like just turn around and do.
0:33
And it's probably a good thing that I'm
not actually on a development team.
0:38
>> Yeah.
0:41
>> Because I would just be
like a wave of disruption.
0:42
>> Right, and I don't know why it seems so
much more now than usual,
0:44
have you noticed that?
0:48
I do feel like there is,
0:50
I too, this year went to it to
a conference, and there it was just so
0:53
much of this new stuff that people
hadn't yet done, but yet 15 talks on it.
0:57
People wanting to switch over to
1:02
microservices away from
the monolithic application.
1:05
Now there's an enemy in the room.
1:08
>> We're naturally driven to want to
improve, I think, as developers, right?
1:10
We entered into this field because
it gave us the opportunity I think,
1:15
at least to some degree, and sometimes,
even what brought us to it was change.
1:19
>> Right.
>> That we're not
1:25
gonna be doing the same thing
even a year from now, or
1:26
the least of which five or
ten years from now, right?
1:29
>> Yeah.
>> But there is a dark side to that I
1:32
guess, is kind of what we're getting
at here with hype driven development.
1:35
>> Yeah.
1:39
>> That change just for
1:39
the sake of change, or maybe even
change that could be beneficial.
1:41
But done in not the transitioning to that,
or the process of adopting that new thing
1:44
is mishandled, or just not done in a
proper way, not thought through right now.
1:50
I thought through, so what is what would
be the absolute worst case scenario,
1:55
if you had to think of it
how it could go badly?
2:00
>> Yeah, I think there's a lot of
problems when you just look at the pros.
2:02
Right, you say this is going
to be this is gonna be fast,
2:06
this is gonna be scalable,
this is gonna, but
2:10
fast and scalable in all those
good words also have a dark side.
2:12
>> So all those have, well, the way that
that works is you have to think about this
2:16
new problem that you might not have had
before, actually, digress really quick,
2:21
there's a, there was a talk at Java one,
and the guy says Netflix was famous for
2:26
bringing in the micro services,
and it's really cool, right?
2:31
They showed this picture of
the Netflix page, and on that page, so
2:34
that there was something like
500 microservices running.
2:38
>> Wow.
2:42
>> Insane, all these different like
little bits for the the things there, and
2:42
managing that is a nightmare.
2:47
So, they built these tools around it.
2:48
So now you have this new management tool,
and there's all these new problems.
2:49
So, the lesson, the big takeaway for
me, cuz I was feeling a little bit
2:52
overwhelmed, right, and I was feeling
the my gosh, we need to get back.
2:56
We need to teach microservices tomorrow.
3:00
Everybody needs to be doing this, and
then he kind of summed it up pretty great.
3:02
He said, you aren't Netflix, but
soon you'll have their problems, right?
3:06
>> Interesting.
>> You could bring their problems on.
3:09
You're not even solving a problem.
3:11
And so, I think that's the big problem
there is that these tools are here.
3:12
These new tools, they're great for
3:16
solving a specific problem that
you might not have, right?
3:18
So you gotta be careful about that.
3:21
You have to be careful and
cautious about weighing the pros and cons.
3:23
But you did bring up a good point, you say
that we wanna evolve always as developers.
3:27
How do you do that?
3:33
>> Cuz some change is necessary.
3:34
You may have a problem with
your specific application or
3:38
product, something you've been struggling
with and there could be a better way.
3:41
I mean, I've seen that.
3:46
Yes, and it's not that you just
want to stay frozen in time, and
3:46
don't want to evolve, but
there has to be a process.
3:50
You want to introduce that thing,
you want to understand the effects.
3:53
You know that it has.
3:57
>> Yes.
>> So you want
3:58
to do some measuring before you
make a change to measuring after.
3:59
You wanna think about other things,
4:03
how long does to take someone
to learn this new technology?
4:05
>> Yeah, that's true.
4:07
>> What's the cost of that, right?
4:08
>> It's just some of this stuff takes
quite, it's a whole new mindset,
4:10
some of the newer stuff, right?
4:12
>> Right, and there's just a lot of
dependencies even on the learning side
4:14
right, it's, I wanna use X,
well now, I've gotta know Y, and
4:18
I've gotta know Z before,
would they call that, yak shaving?
4:21
>> Yeah [LAUGH] yeah, totally.
4:25
And then also, on top of that,
4:26
sometimes you even have to change the way
that your team is structured, right?
4:28
>> Yeah.
4:32
>> You're, okay in order to implement.
4:32
I keep going back and
harping on microservices, I don't mean to.
4:35
>> Well, the shift to single page
applications should be similar too, right?
4:39
>> Sure, yeah, absolutely.
4:41
>> Where you had full stack developers,
and then you say we're gonna switch to
4:43
doing spas, and not maybe fully
understanding what that was gonna mean,
4:47
and where, how many lines of code of
JavaScript were we gonna have now?
4:51
And is your team fully prepared for
that to understand what that means?
4:55
In managing that in writing good
proper JavaScript, it's tested.
4:59
>> Totally, totally.
5:02
>> And all the tooling around that, right?
5:03
>> And understand that you touch something
here, and it breaks it, is a new concept.
5:05
So, some people who are new to,
now it's the whole application,
5:10
it's not like that widget doesn't work,
[INAUDIBLE] application.
5:12
>> So there's a balance, right?
5:15
You don't want to just shut it down and
say hey,
5:17
these are our chosen technologies,
and we're not going to reevaluate.
5:21
You don't wanna do that either,
because if you go too far that direction,
5:24
you may alienate some people,
or you may demotivate them.
5:28
>> Right.
>> They may be, now I've lost something,
5:32
or I'm not as interested
in doing this work,
5:35
because we're just gonna be doing this for
the next two years?
5:37
>> Right, and XYZ Corp is doing it.
5:40
They're up the street, and they're hiring.
5:42
You don't want that sort of problem, you
also don't want at meetups, [INAUDIBLE].
5:43
>> Right.
5:48
>> I wonder if there's ways ways,
a lot of one of the good things, I think,
5:49
that that's been happening a lot lately,
is you don't need to go whole hog, right,
5:53
we talked a little bit about
react in the past, but.
5:57
You can you can kind of just start
with a little piece of it, and
6:00
say hey, how did that work?
6:02
Should we do this?
6:04
>> Right.
6:04
>> That's a nice, a nice bit about
these small little components.
6:05
>> Right.
>> Are starting to pop up.
6:08
>> And if you're lucky enough
to have more than one product,
6:09
or more than one application
that your team is working on,
6:12
maybe you do that in someplace
that's less active initially.
6:15
>> Sure, the admin side of things, right?
6:18
>> Right, where if something doesn't
behave, or you introduce a bug, or it
6:20
takes you a little while to implement or
do something, you're not blocking a whole
6:24
set a change requests while you have
this part of the application tore apart.
6:27
>> Right.
>> Right.
6:31
>> Right, and you get to kick the tires,
you get approved, you get to make
6:32
everybody feel a bit more comfortable,
I think, so that's a good approach.
6:35
We used to call those spikes,
you could spike on the new technology.
6:38
You take a certain amount of
time out of your sprint, or
6:43
whatever, whatever your development cycle
is, and you spike on a new technology.
6:45
And you come back with findings, and
that's the goal of that is say, hey, this
6:48
is pretty good, or hey, we don't, this is
going to take a long time to implement.
6:52
>> Right.
>> And I think that's really,
6:56
really beneficial,
as far as staying at the day.
6:57
And really thinking about do
I need to solve the problem
7:00
that all this hype is driving?
7:05
>> Right, or maybe even if, for instance,
if you're heavily reliant upon jQuery, and
7:07
you're, we need to move
to something different.
7:12
Don't just make the jump
from jQuery to React.
7:15
Maybe also look at angular two,
or or Ember,
7:17
or something else, and
have a couple, I have a competition.
7:22
To have a hackathon,
7:26
where you build out some prototypes using
a couple of different or three thing.
7:27
>> That's a great idea.
7:31
>> And see how they compare.
7:32
See where that where
the difficult spots are, and
7:34
whether the challenging bits rely, right?
7:37
>> Great.
7:39
>> People don't talk about that stuff
quite as much as we probably ought to,
7:40
I know I've been guilty of that.
7:43
You actually want to talk about all
the great things the technology does.
7:45
>> Yeah.
>> And where it falls flat on its space.
7:48
>> Right, right.
7:50
I really like the hackathon idea, think
that would work really well until they
7:51
test out some features that we're not
sure that people are gonna like, right?
7:55
So, here's a little beta test that we
can run out to a little group over here,
7:59
see other things, that's a great idea.
8:02
>> Yeah, and I know personally too
when I'm learning something new.
8:04
You gotta dig, you gotta give yourself
something just meaty enough to dig into
8:08
to discover where those
troubled areas are gonna be.
8:12
>> Absolutely.
8:15
>> Otherwise,
it's really easy to miss them.
8:15
>> Right, right.
8:17
>> You kinda skim across the surface,
and everything seems cool.
8:18
>> Right.
>> And
8:21
it's not gonna be when you actually
try to make something work.
8:22
>> Exactly,
the to-do list is a lot easier to make.
8:24
>> Yes, indeed, it is.
8:27
>> So, recently, I felt a little
bit into the hype bandwagon,
8:29
I've been working on some IoT stuff.
8:33
>> Mm-hm.
>> And I picked up,
8:35
everybody's been talking about
this reactive extensions.
8:37
I love it, totally cool, they're in
the middle of doing an upgrade right now.
8:40
So, the docs aren't all there.
8:44
So, I decided to use the new one, because
the hype was, this is the way to go,
8:46
and I don't want the old things,
those old document things.
8:49
>> Who does right?
8:51
>> Yeah, I don't want,
I'm gonna take the new thing.
8:52
So, I grabbed it, and
8:54
I was working on it, and of course,
the parts where I'm confused are the parts
8:55
in the documentation that
haven't been fully sussed out.
8:58
And then you'd run into some bugs,
right, I run into some bugs, and
9:01
I'm thinking it's my code,
because I'm the newb here, and
9:04
in this world trying to figure
out how this is working.
9:06
And it turns out that it was
actually a bug up higher, and
9:09
I was using it as it used to work, but
there was a bug in this rewrite, so.
9:13
I think that there's a bit too when
hype comes, it comes hard and fast.
9:17
And everybody wants to jump in on
to the main wag, it's labeled beta,
9:21
I know better.
9:25
I know better than to use beta
software and what I'm gonna be-
9:25
>> It's surprising it might like Angular 2
9:28
was in beta for a couple years.
9:31
>> [LAUGH]
>> And
9:33
people were building production
applications on nonreleased software.
9:34
And I think the understood,
in most of those cases, I would imagine,
9:39
what the responsibility, what they were
taking on but that's really amazing.
9:42
>> Yeah, yeah.
9:48
And just the fact that they could
totally wanted to do it, right?
9:49
>> Right [LAUGH].
9:53
>> So, that's something to think about
with the height is to kind of take
9:55
a look at the issues that are there.
9:59
I think, take a look at the mixture,
and again, we are all.
10:00
This fear of missing out is such
a thing that's prevalent right now.
10:05
>> Right.
>> And
10:08
I feel like marketing is taking a shift
where they're, if you don't do this,
10:09
you're never gonna have a chance to do it.
10:13
If you don't look at the snapshot photo,
you won't see, if you don't look at this
10:15
Instagram story, that sort of
thing is present in tech, almost.
10:18
It's bleeding into it, and
it's probably cuz we have so
10:22
much stuff that we're paying attention
to that they need to break through.
10:25
So maybe maybe PR is just,
I don't know if that's what's causing it.
10:29
We need to be cautious,
I think, I feel, I feel, and
10:33
I'm not one to usually lean on
the conservative side of things.
10:37
Check out, look at the issues.
10:41
>> Yep.
10:43
>> Look at how many how many
bugs people are having.
10:43
>> Look at the roadmap.
10:45
>> Yep, totally.
10:46
>> Get a sense and understanding of
how the project's being managed, and
10:47
what it's trajectory is, and
velocity, those kinds of things.
10:50
>> Yeah.
>> Yeah, good advice.
10:54
>> Great.
10:55
>> Thanks for watching.
10:56
>> We'll see you next time.
10:57
[SOUND]
10:57
You need to sign up for Treehouse in order to download course files.
Sign upYou need to sign up for Treehouse in order to set up Workspace
Sign up