Nate Schutta: I Just Love to Learn!
Jim Grisanzio and Nate Schutta
Duke’s Corner Java Podcast — July 18, 2025
https://dukescorner.libsyn.com/nate-schutta-i-just-love-to-learn
Duke’s Corner Java Podcast with Nate Schutta, an author, a teacher, a software architect, and Java Champion. Nate lives in the United States and teaches computer science to university students. He loves teaching and he loves learning, and he specializes in exploring the big picture of complicated systems in his career as a software architect. The conversation covers the Java community, the value for developers if they contribute to Java User Groups (JUGs), the benefits and some possible drawbacks of AI, and the engineering feat that is the Java Virtual Machine (JVM).
Nate has a passion for learning and here’s his advice for young developers and engineering students. “The fundamentals can’t be skipped! And they take time to learn! You just have to put in those hours to understand the basics, and then you can graduate to the more complicated stuff.”
Nate tripped over Java a bit in school and joined his first Java project right in his first job. Once he heard about this new Java project, he said: “Heck, yeah! I want in on that!”
Transcript:
(00:00:00):
Nate, Nate Schutta from the United States.
(00:00:02):
Welcome to Duke’s Corner.
(00:00:03):
Thanks, Jim.
(00:00:04):
Glad to be here.
(00:00:05):
It’s really great to see you here.
(00:00:07):
I actually met you at a couple of conferences and actually most recently at Java 1.
(00:00:13):
in California back in march and i was taking pictures of the event i was the
(00:00:17):
photographer at the event and i walked into your session to shoot you and i said oh
(00:00:22):
man this this sounds really interesting i want to i want to actually interview him
(00:00:26):
but i had to scoot out to you know shoot other things so that’s why you’re here
(00:00:30):
we’re going to continue talking about the stuff you were talking about because it
(00:00:33):
really interested in me i sat down for a few minutes so i thought it was really
(00:00:37):
really interesting
(00:00:38):
Yeah, so let’s just start off with, you know, what you do in the United States.
(00:00:43):
You’re in the Midwest, right?
(00:00:44):
Yeah, I’m based in Minnesota.
(00:00:45):
So it’s the Great White North, sometimes they call us.
(00:00:48):
Southern Canada, sometimes we get called, you know.
(00:00:51):
Despite popular belief, they did not actually film any of the Hoth scenes from Empire here.
(00:00:56):
It’s actually quite lovely here right now.
(00:00:57):
The rain finally stopped.
(00:00:58):
We’ve been having a very wet spring and summer, but…
(00:01:01):
you know, such as life.
(00:01:02):
So, yeah, I actually work for ThoughtWorks right now.
(00:01:05):
I’m a technical director, which is just a really fancy way of saying architect as a service.
(00:01:10):
First time someone called me that, I thought that’s a pretty good definition of what I do.
(00:01:14):
I go places, talk to people about architecture, cloud, things like that.
(00:01:17):
And I will admit,
(00:01:18):
though,
(00:01:18):
I sounded the acronym out in my head and realized it might not have been intended
(00:01:22):
as a compliment.
(00:01:23):
But, you know, I try to take it in the best spirit of the term.
(00:01:27):
All right.
(00:01:27):
Well, I’ve always wanted to ask an architect, what is an architect?
(00:01:31):
Because I actually,
(00:01:33):
I was in the construction business years ago and I know what an architect is,
(00:01:36):
you know,
(00:01:36):
the old session kind.
(00:01:37):
I work with architects a lot, actually.
(00:01:40):
And so I’m just interested to hear what the translation is to software.
(00:01:44):
Yeah.
(00:01:44):
Well, because we’re such a young industry, we just steal terms from other industries.
(00:01:49):
And we’re like, that looks like a good idea.
(00:01:50):
And so I do like to always try to remind people I’m a software architect.
(00:01:55):
I don’t know anything about your house or how any of that works.
(00:01:59):
I don’t know local building codes or anything that practical.
(00:02:02):
But some people have,
(00:02:04):
I would say,
(00:02:05):
this vision that all architects do is sit around drinking coffee and drawing boxes
(00:02:10):
and lines on a whiteboard.
(00:02:11):
And,
(00:02:11):
you know,
(00:02:12):
we’re this person who occasionally spins into the project room and gives you a
(00:02:14):
whole bunch of new direction and you get really angry because,
(00:02:17):
wait,
(00:02:17):
we just changed everything we were doing two weeks ago.
(00:02:20):
And who was that person?
(00:02:21):
But I always look at our job is to figure out what the tradeoffs are.
(00:02:25):
You know, every decision we make in software in life has tradeoffs.
(00:02:30):
And somebody has to be thinking about that sort of bigger picture,
(00:02:35):
much in the same way that an architect on a building,
(00:02:38):
a house or a building has to think about how do we get all these things to fit
(00:02:41):
together?
(00:02:42):
So you look at a house and you realize there’s a lot of intricacies that go into
(00:02:47):
making sure that the plumbing gets to all the right places and the electricity and
(00:02:51):
the heating ducts and the cooling ducts and all of that stuff.
(00:02:54):
Somebody’s got to think about that and how that actually all works and then fits
(00:02:58):
within local building codes and things of that nature.
(00:03:00):
And so our job on a software project is to see that bigger picture,
(00:03:04):
to understand what those tradeoffs are,
(00:03:06):
to sort of get out of some of the tribalism and evangelism around real specific
(00:03:11):
technologies and be able to answer,
(00:03:13):
well,
(00:03:14):
why is that something we should use?
(00:03:16):
How is that going to make things better for our business, for our developers, et cetera?
(00:03:21):
So it’s really trying to understand that.
(00:03:23):
you know,
(00:03:23):
the bigger quality attribute pictures that go into a software project,
(00:03:28):
you know,
(00:03:28):
all the ilities,
(00:03:29):
you know,
(00:03:29):
the scalability and the reliability and the deployability and all of those types of
(00:03:34):
things that you have to have that bigger macro view.
(00:03:37):
You can’t get lost in the minutia.
(00:03:39):
Not that it’s unimportant.
(00:03:41):
Obviously, we need to make sure those functions are working the way they should.
(00:03:44):
And then there’s a lot of value in that detail, but you got to see the forest too.
(00:03:49):
That’s an interesting response there,
(00:03:50):
because I remember way back,
(00:03:52):
I was on the Open Solaris project at Sun,
(00:03:54):
and I remember it was on every single mailing list,
(00:03:58):
actually,
(00:03:58):
that we had,
(00:03:59):
over 100.
(00:03:59):
And I remember the ARC conversations were very much just exactly what you said.
(00:04:05):
I wasn’t able to follow them in detail, obviously, nor was I involved.
(00:04:09):
But I did like to actually see these long,
(00:04:12):
multi-hundred email threads that would snake around when somebody wanted to
(00:04:17):
integrate
(00:04:17):
something that maybe shouldn’t have been integrated or should be written in another way.
(00:04:24):
really be superficial about it.
(00:04:25):
But I did notice that it was taken very, very seriously because it was a system-wide approach.
(00:04:33):
So it’s very interesting to hear you say that.
(00:04:35):
To your point, some changes are very localized.
(00:04:40):
If I change the name of a variable inside a class, that’s a very localized change.
(00:04:44):
That’s something that really shouldn’t bubble out beyond my little universe if I’m
(00:04:48):
working on that class.
(00:04:49):
So if you choose to name it this versus that,
(00:04:52):
like you and I might quibble about,
(00:04:53):
is there a better word for that?
(00:04:55):
And does that really capture this?
(00:04:56):
And is that something that I can understand later and whatnot?
(00:05:00):
But really, it’s very localized change.
(00:05:01):
There’s other changes where it’s like, oh, wow, this is going to affect the entire project.
(00:05:05):
This could hurt our ability to scale.
(00:05:07):
This could maybe jack our costs way up in terms of deployment and what that’s going
(00:05:12):
to do in a cloud environment.
(00:05:13):
You know, so somebody has to think about those things.
(00:05:16):
And,
(00:05:16):
you know,
(00:05:17):
sometimes somebody also has to be that person who makes that decision of,
(00:05:20):
yeah,
(00:05:21):
we have to go this way.
(00:05:22):
This is the lesser of two evils.
(00:05:24):
You know,
(00:05:24):
I think one of the things that I used to think when I was very,
(00:05:28):
very new to this space is that there was a best way to do it.
(00:05:31):
You know, I think we get taught that in school.
(00:05:33):
You know, there’s an answer that gives you an A, an answer that gives you a B.
(00:05:36):
answer that gives you a C. And so I sort of naively thought, well, software is the same, right?
(00:05:41):
You know, I read these books and I read about these principles.
(00:05:44):
And so as long as I apply all these principles and I use every design pattern,
(00:05:47):
I get an A.
(00:05:48):
And then you realize pretty quickly that,
(00:05:51):
oh,
(00:05:51):
no,
(00:05:51):
there’s just least worst answers.
(00:05:54):
And so much of this is understanding,
(00:05:55):
well,
(00:05:56):
boy,
(00:05:56):
both of these kind of suck,
(00:05:58):
but this one sucks less.
(00:06:00):
And this one doesn’t paint us into a corner.
(00:06:02):
And this one will allow us to evolve because my experience tells me we’re going to
(00:06:06):
end up changing that.
(00:06:06):
We’re going to have to go in this direction at some point.
(00:06:08):
So I might as well kind of get ready for that and kind of balancing those competing forces.
(00:06:12):
And it’s a fascinating gig, to be sure.
(00:06:15):
So to be an architect,
(00:06:17):
is that just something that you grow into over time with experience or is there
(00:06:23):
like a curriculum that you take at the master’s level,
(00:06:26):
let’s say,
(00:06:27):
or PhD?
(00:06:27):
I mean, is there a specific education for this or is it just experience?
(00:06:33):
It’s both.
(00:06:34):
I do teach a graduate-level architecture course at the University of Minnesota,
(00:06:38):
and my whole task there is basically just to get my students to understand the
(00:06:42):
answer to everything as it depends and really get them into that mindset of how do
(00:06:47):
I evaluate these trade-offs and how do I understand the
(00:06:50):
you know and how do i communicate that how do i influence that a lot of being an
(00:06:54):
architect is people skills and soft skills and and it’s less of that hard
(00:06:59):
engineering which drives some people nuts a lot of times people ask me for book
(00:07:04):
recommendations and what i always reach for is neil and mark’s software
(00:07:09):
architecture fundamentals or fundamentals of software architecture i like to get
(00:07:11):
the name back you know backwards
(00:07:14):
I think a second edition just came out recently.
(00:07:15):
But I also really, really like How to Win Friends and Influence People by Dale Carnegie.
(00:07:21):
Really?
(00:07:21):
Wow.
(00:07:22):
Yes.
(00:07:23):
I make my grad students read that.
(00:07:24):
And I actually recommended those two books to somebody at a conference.
(00:07:28):
And I went back to that same event a year later, and that person tracked me down and said,
(00:07:33):
Thank you.
(00:07:34):
That really changed my career.
(00:07:36):
I’m like, wow.
(00:07:37):
OK.
(00:07:38):
And yeah, the Dale Carnegie book is amazing.
(00:07:41):
And I’ve got there’s at least two copies of it within arm’s reach here, as I sit in my office.
(00:07:45):
And I think it’s one of those things that as engineers we overlook.
(00:07:49):
We think my job is just to talk to a computer, make the computer do what I want.
(00:07:54):
It’s like, no, you realize pretty quickly in our space that this is a collaborative game.
(00:07:59):
You’re working with other people, especially as an architect.
(00:08:03):
I’ve got to influence people.
(00:08:05):
I’ve got to get you to do what I want you to do.
(00:08:07):
And I can’t order you to do it because I don’t you don’t report to me.
(00:08:11):
I’m just the architect.
(00:08:13):
And my experience with developers, we can be like cats.
(00:08:16):
I’ve got two cats floating around this house.
(00:08:17):
And at some point, one of them is probably going to leap on here and mess with my microphone.
(00:08:21):
But if I ask my cat to come here,
(00:08:24):
Han’s going to go in the opposite direction,
(00:08:26):
just on principle.
(00:08:27):
Just like, dude, I’m a cat.
(00:08:28):
If you wanted an animal that was going to come when called, you should have gotten a dog.
(00:08:32):
developers, we kind of have that same modality.
(00:08:36):
If I order a developer to do something,
(00:08:39):
they’re going to do the opposite thing just out of spite.
(00:08:41):
Even if what I ask them to do is exactly what they wanted to do.
(00:08:44):
It’s like, well, I can’t do it because he told me to do it now.
(00:08:46):
So I’ve got to figure out how to make you think this is your idea and get you to
(00:08:51):
look at it from that perspective.
(00:08:53):
And it’s a subtle skill.
(00:08:54):
It’s something that I didn’t learn that in my computer science undergraduate program.
(00:08:58):
We don’t even really teach it to you in a
(00:09:00):
master’s program most of the time,
(00:09:01):
you know,
(00:09:02):
but we,
(00:09:02):
we dismiss those,
(00:09:03):
those soft skills really at our own peril,
(00:09:05):
my opinion.
(00:09:06):
Yeah.
(00:09:06):
Carnegie, that goes way back.
(00:09:07):
That’s like a hundred years now, probably 20s.
(00:09:09):
Yeah.
(00:09:11):
But the principles remain.
(00:09:12):
That’s really interesting.
(00:09:13):
And it’s also interesting that you said that you don’t necessarily own people,
(00:09:18):
but you have to influence is very similar to like a program manager,
(00:09:22):
you know,
(00:09:22):
which is what I do.
(00:09:23):
You know,
(00:09:23):
I don’t own a team,
(00:09:25):
but I work with multiple teams and anything I need to get done needs to get done
(00:09:29):
through
(00:09:30):
persuasion or engagement or relationship building, which is the same thing really.
(00:09:35):
I’ve done community building really since Sun, a long time.
(00:09:39):
So that’s like over 20 years, 25 years.
(00:09:42):
And that’s the one thing I’ve done is build communities and all of these different things.
(00:09:46):
And that is the soft skill.
(00:09:49):
But I didn’t know that.
(00:09:51):
I mean, I was certainly aware that engineers have to engage in that sort of thing as well.
(00:09:56):
But I didn’t know that you would actually recommend How to Win Friends as a graduate level.
(00:10:01):
That is really interesting.
(00:10:02):
It’s an amazingly timely book.
(00:10:04):
I mean, it blows me away that that book’s probably been out at least 100 years.
(00:10:07):
I don’t know when the first printing was.
(00:10:09):
I don’t know how many, I’m sure millions of copies have sold.
(00:10:13):
And it’s still in every bookstore.
(00:10:15):
As it should be.
(00:10:15):
It’s absolutely foundational, in my opinion.
(00:10:17):
Yeah.
(00:10:18):
All right,
(00:10:18):
let’s go back to Java 1 because you talk about winning friends and influencing
(00:10:21):
people.
(00:10:22):
As I walked into the room,
(00:10:23):
you were talking about a conversation you were having with your kid who was coding
(00:10:28):
something.
(00:10:28):
And you were saying, oh, you got to put a space here, man.
(00:10:31):
Come on, dude, you got to put a space here.
(00:10:32):
And you’re arguing with your kid on this.
(00:10:34):
And so I got the sense that you, I mean, it was a,
(00:10:39):
charming example,
(00:10:41):
but still the underlying thought is I got the sense that you were really interested
(00:10:45):
in precision and quality and doing things the right way,
(00:10:49):
sort of doing things the right way so you don’t have to fix something that’s broken
(00:10:53):
later on,
(00:10:54):
or at least attempting to do that.
(00:10:55):
The reason I bring that up is because I’m really interested in the engineering mindset.
(00:10:59):
I’m interested in how engineers can learn highly technical things,
(00:11:03):
lots of math,
(00:11:04):
lots of science,
(00:11:05):
lots of technology that is beyond me.
(00:11:07):
But you go very,
(00:11:08):
very deeply into these subjects of physics and all this stuff,
(00:11:12):
and you create such products and systems that are so complex.
(00:11:17):
I’m interested into the thinking about how you guys can do that.
(00:11:22):
Do you have any thoughts on that?
(00:11:23):
Because it fascinates me.
(00:11:25):
So I think the common thread I see through the best engineers that I’ve worked with
(00:11:30):
or that I know,
(00:11:31):
it’s this intense curiosity and it’s this passion to understand what’s going on
(00:11:37):
here.
(00:11:37):
It’s this tinkering mindset.
(00:11:38):
And I want to take this apart and play with it.
(00:11:41):
There’s a lot of details.
(00:11:42):
You got to be detail-oriented to do this right.
(00:11:45):
You know,
(00:11:45):
the compiler,
(00:11:46):
you know,
(00:11:46):
if we’re talking about like a language like Java,
(00:11:48):
it cares where that semicolon is.
(00:11:51):
And you learn that when you first start learning how to program that these details
(00:11:55):
are important.
(00:11:56):
Now,
(00:11:57):
some of those things,
(00:11:57):
like you’re right,
(00:11:58):
my son was writing some code and I was trying to help him debug it and he just kind
(00:12:01):
of jammed everything together.
(00:12:02):
I’m like, dude, you really want spaces here, you know, white spaces, make it more readable.
(00:12:06):
And he’s like, but it works.
(00:12:06):
I’m like,
(00:12:07):
I understand that.
(00:12:08):
The compiler doesn’t care, but the human does.
(00:12:11):
And the human is going to spend a lot more time looking at this than the compiler.
(00:12:14):
And we should emphasize the human over the compiler, my opinion.
(00:12:19):
And so to me, it’s that mindset of I want to know more about this.
(00:12:26):
Some people,
(00:12:26):
when they encounter something they don’t understand,
(00:12:29):
their reaction is to avoid it,
(00:12:31):
move away from it,
(00:12:32):
distract.
(00:12:33):
Oh, no, I’m not going to say I’m not going to ask any questions.
(00:12:36):
the engineering mindset is tell me more about that i want to know what’s going on
(00:12:40):
here can you can you explain that to me you walk me through that i would sit down
(00:12:43):
with you and say show me your camera and and show me how you how do you know what
(00:12:46):
settings to use and and which lens should you use here and what’s the difference
(00:12:50):
between these three lenses and that to me is fascinating and interesting and the
(00:12:54):
more that you do that that’s what allows you i think to to get down into those
(00:12:58):
weeds and understand that but to me it’s just a mindset it
(00:13:02):
It transcends your educational background, though, too.
(00:13:05):
I know plenty of people that are very,
(00:13:06):
very good at computer science who’ve never taken a computer science class in their
(00:13:11):
life.
(00:13:11):
It’s not about a specific course or a specific coursework.
(00:13:15):
It’s just that I want to tinker and play, and I’m very, very curious about what’s going on here.
(00:13:21):
So if you didn’t become a software developer,
(00:13:23):
you would have manifested that in some other field then?
(00:13:27):
I would assume so.
(00:13:28):
Yeah.
(00:13:29):
Yeah.
(00:13:29):
I mean, I actually started as a chemistry major.
(00:13:31):
That’s what I was originally going into in college and sort of wound my way into
(00:13:38):
computer science,
(00:13:39):
partially because I realized with a chemistry experiment,
(00:13:43):
if you make a mistake at step 27,
(00:13:44):
you got to start over.
(00:13:47):
There’s no way to back it out.
(00:13:48):
There’s no undo.
(00:13:50):
And then I’m like,
(00:13:50):
but over here,
(00:13:51):
I just go change the line that doesn’t work and I compile it again and I move on.
(00:13:56):
And
(00:13:57):
You know,
(00:13:57):
so that was a little more appealing to me,
(00:13:59):
honestly,
(00:14:00):
you know,
(00:14:00):
so that shifted my mindset.
(00:14:02):
Now,
(00:14:02):
in terms of developers,
(00:14:03):
like the kids coming out of school now,
(00:14:06):
learning with today’s modern educational processes and tools versus,
(00:14:13):
say,
(00:14:14):
when you went to school,
(00:14:16):
do you see a big difference in their mindset and their ability to solve problems
(00:14:22):
with the current tools that we have now?
(00:14:24):
Certainly a difference in Toolset.
(00:14:26):
When I learned to code, it was a text editor in the command line.
(00:14:30):
We didn’t have IDEs.
(00:14:32):
Some of my classmates were using VI to do their code.
(00:14:37):
I mean, obviously, the languages were simpler.
(00:14:39):
And the things we do in college are toy apps anyway.
(00:14:42):
Nothing’s really that big compared to what we have today.
(00:14:45):
And then you see what our modern tool set can do.
(00:14:48):
And that’s before you even get into some of the new AI tools and the agentic tools
(00:14:53):
and the powers that they unlock for you.
(00:14:56):
But a lot of that, honestly, is, I would say, just necessary.
(00:15:00):
I mean, you can’t be on a multimillion line code base and just have a text editor.
(00:15:05):
I did briefly code to somebody that I worked with a gentleman and sort of been in
(00:15:09):
the early aughts,
(00:15:10):
I think,
(00:15:11):
who was still coding Java in VI.
(00:15:13):
And I couldn’t get my head wrapped around how he was productive writing Java in VI, but he was.
(00:15:19):
And I just think,
(00:15:20):
man,
(00:15:21):
I don’t know how you would do that today on some of the applications that I’ve been
(00:15:25):
around.
(00:15:27):
I think you maybe appreciate it more when you’ve had to do it the hard way.
(00:15:31):
Like I teach a cloud class to at the U and I make my students do things the hard
(00:15:37):
way first to introduce them to why we now have these easier and simpler
(00:15:42):
abstractions.
(00:15:43):
You know, so I make them do some bare metal things.
(00:15:46):
And then I introduced Docker.
(00:15:47):
And in fact,
(00:15:47):
one of my students last spring told me that she was asking a colleague of hers for
(00:15:51):
some help.
(00:15:51):
And his response was, well, why don’t you just do that in Docker?
(00:15:54):
Well, we’re going to get there.
(00:15:55):
That’s the next assignment.
(00:15:56):
But I want you to do it the hard way first so that you appreciate why we’ve moved
(00:16:02):
to this containerization concept.
(00:16:04):
yeah so there is some value i think into you’ve got to do it this way so that you
(00:16:08):
can now see what these tools are unlocking for you and and the fundamentals always
(00:16:12):
matter and that’s that is one thing i i do have some concern about that people
(00:16:17):
think there’s a way of short-circuiting that and and there isn’t you know if you
(00:16:21):
don’t understand the fundamentals of photography how to compose a shot how to deal
(00:16:25):
with lighting doesn’t matter how expensive or fancy the lens is and the camera body
(00:16:30):
You’re not going to take very good photos.
(00:16:32):
You know, I could give you my phone.
(00:16:34):
You could give me your rig.
(00:16:35):
And if I didn’t know how to do all the right knobs,
(00:16:37):
any photo you’re going to take with my phone is going to far exceed anything I can
(00:16:40):
take with your glass.
(00:16:43):
So the fundamentals can’t be skipped and they take time.
(00:16:47):
You know, that’s the other part of this.
(00:16:48):
I think people are in such a hurry to get past.
(00:16:51):
It’s like you just got to put in those hours to understand the basics and then you
(00:16:55):
can graduate to the more complicated stuff.
(00:16:58):
I remember my father,
(00:17:00):
my father was a photographer,
(00:17:02):
among other things,
(00:17:03):
actually among many things.
(00:17:05):
I used to be in the darkroom with him and he’d be developing pictures.
(00:17:08):
And first I’d go out into the field with him and he would shoot,
(00:17:12):
which was a completely different experience now because everything was film.
(00:17:16):
So it was a completely different way of thinking because,
(00:17:18):
you know,
(00:17:18):
you don’t have like 500 images,
(00:17:20):
right?
(00:17:20):
Right.
(00:17:21):
You’re going to shoot into the two hour thing.
(00:17:24):
He was shooting with all the Hasselblads, you know, and beautiful cameras.
(00:17:29):
They still function beautifully today.
(00:17:31):
And this is like 50 years ago.
(00:17:32):
Yeah.
(00:17:34):
And,
(00:17:34):
but he would really set up a shot and he would,
(00:17:37):
he’d be very careful and diligent about things,
(00:17:39):
but he would have a light meter,
(00:17:41):
a separate light meter,
(00:17:42):
not the one on the camera.
(00:17:43):
But now he got to be over the years very,
(00:17:45):
very fast at doing these things and focusing,
(00:17:48):
which was a completely different experience back then.
(00:17:50):
And then we go into the dark room.
(00:17:52):
And he would have maybe 100 images and four or five different rolls of film.
(00:17:55):
And then there was the art from the field just translated into the art of the darkroom.
(00:18:02):
And this is a whole different,
(00:18:04):
you know,
(00:18:04):
mix the chemicals and everything in multiple different trays.
(00:18:07):
And you’re going through this whole process of dodging and,
(00:18:10):
you know,
(00:18:10):
to create some sort of effect.
(00:18:13):
It’s interesting what you just said about thinking,
(00:18:15):
you know,
(00:18:15):
throughout all this time,
(00:18:17):
you have time to think.
(00:18:19):
You have time to think about what you want to do because that was the process.
(00:18:25):
You couldn’t just shoot 100 images and dump them into Lightroom and then have some
(00:18:29):
AI do a base level edit for you in 10 minutes.
(00:18:34):
There’s no thinking involved there.
(00:18:35):
And it’s interesting that Java one,
(00:18:37):
one of the engineers,
(00:18:37):
a friend of mine actually asked me about,
(00:18:40):
you know,
(00:18:40):
how to use his camera.
(00:18:41):
Cause he bought a new camera and I said, Oh, great.
(00:18:44):
Something I can, I can help an engineer with.
(00:18:46):
Okay.
(00:18:46):
So I’m going to go to town on this, you know?
(00:18:48):
So I said, Oh, you got this and that is a Sony.
(00:18:50):
It’s beautiful.
(00:18:50):
And here’s the lens.
(00:18:51):
This is what you do here.
(00:18:52):
And he had no idea what I was talking about.
(00:18:54):
I felt so good.
(00:18:55):
I felt so good.
(00:18:56):
He’s a, he’s a good friend.
(00:18:58):
And so be at the, having that time to think is very, very important.
(00:19:02):
So when I talk to high-end engineers or even scientists,
(00:19:06):
because I used to work at Tufts University as well.
(00:19:08):
So I was around physicians and doctors and veterinarians at the various technical schools.
(00:19:14):
They had a similar mindset as well about thinking.
(00:19:18):
And that’s why I loved Solaris,
(00:19:19):
Sun,
(00:19:20):
and Java here at Oracle is because they’re very high-end engineers.
(00:19:25):
They take this very seriously.
(00:19:27):
These are very scalable systems that are everywhere in society,
(00:19:31):
banks and stock markets and hospitals and things like this,
(00:19:36):
ships and airplanes.
(00:19:39):
And they have a similar way of thinking as you describe.
(00:19:44):
So it’s very fortunate for me to be around them.
(00:19:47):
So where did Java come along for you?
(00:19:50):
You were in school, computer science degree.
(00:19:53):
Is that where Java came along?
(00:19:55):
So I learned C++ in my undergrad,
(00:19:57):
but right,
(00:19:58):
I can’t remember if it was my junior or senior year,
(00:20:01):
Java kind of came on the scene.
(00:20:03):
And one of my professors did like a little seminar on it and showed off this calculator he made.
(00:20:09):
And I think he used Swing.
(00:20:10):
I’m pretty sure he built it in Swing.
(00:20:12):
And I just thought, well, that’s really cool.
(00:20:13):
This is a very elegant looking language.
(00:20:15):
It looks a lot like the C++ that I learned to code.
(00:20:17):
And this seems like a good deal.
(00:20:19):
And then I got into the real world.
(00:20:21):
I got my first job and I got stuck on a project that I probably shouldn’t have been
(00:20:25):
on given my background,
(00:20:27):
but didn’t have a lot of choice,
(00:20:28):
you know,
(00:20:28):
right out of school,
(00:20:29):
first assignment.
(00:20:31):
But one of my, kind of my original manager was kind of keeping an eye out for me.
(00:20:36):
She said, hey,
(00:20:37):
You want to go talk to this guy.
(00:20:39):
He’s starting a new project and he’s going to need people with your skill set who
(00:20:43):
have a background in languages.
(00:20:45):
They’re going to write this new app in Java.
(00:20:48):
And I’m like, heck yeah, I want in on that.
(00:20:51):
And so I posted off my team before I was supposed to,
(00:20:54):
you know,
(00:20:55):
the HR rules say you got to be there for a year.
(00:20:57):
But they let me go because they knew I wasn’t going to be happy doing the billing
(00:21:01):
system for the next however many years.
(00:21:03):
And so I got this opportunity to get on the ground floor,
(00:21:06):
brand new app,
(00:21:07):
you know,
(00:21:07):
is very exciting,
(00:21:08):
very fun.
(00:21:09):
And I just love to learn stuff.
(00:21:11):
And so for me,
(00:21:11):
that opportunity to just be exposed to brand new things,
(00:21:15):
the web,
(00:21:15):
what’s,
(00:21:16):
you know,
(00:21:16):
we’re just starting to play around with that,
(00:21:17):
you know,
(00:21:18):
being able to build an app that you can use on the web and we’re getting a whole
(00:21:22):
new deployment topology and everything is brand new,
(00:21:25):
like,
(00:21:25):
yeah.
(00:21:26):
And so, yeah.
(00:21:27):
That just kind of got that all kickstarted for me and kind of never looked back,
(00:21:32):
just kept doing it over and over and over again and graduated into doing more of
(00:21:35):
the architecture side of it,
(00:21:36):
which I love.
(00:21:38):
Yeah, that for me, it all started there.
(00:21:39):
I just was lucky that I got an opportunity to get onto one of those cool new
(00:21:43):
projects back in the day and away we went.
(00:21:46):
So then for your whole career,
(00:21:48):
for your whole professional career,
(00:21:49):
Java’s been at the center of it.
(00:21:51):
Yeah, pretty much.
(00:21:53):
I shudder to think how long I’ve been doing this.
(00:21:55):
Well, there’s a lot of people that say that.
(00:21:56):
And it’s really interesting because a lot of people,
(00:21:58):
I mean,
(00:21:59):
I talked to young engineers,
(00:22:01):
obviously they’re learning this,
(00:22:02):
obviously they’re young,
(00:22:03):
but I mean,
(00:22:03):
if this is an older engineer,
(00:22:05):
some of them,
(00:22:06):
it’s been their primary focus of their career.
(00:22:10):
Yeah, I can legitimately say that.
(00:22:12):
And I guess I had the good fortune of sort of growing up with Java.
(00:22:16):
I’m old enough to remember when Java in a nutshell really was a skinny little book.
(00:22:22):
And I don’t know when the last time I ran into that copy, but
(00:22:26):
I remember seeing a version of Java in a nutshell that was like five or six inches
(00:22:30):
thick,
(00:22:30):
and I thought,
(00:22:31):
that’s not a nutshell.
(00:22:32):
You can’t call it that anymore.
(00:22:34):
There’s so much there.
(00:22:35):
And I think one of the things I find remarkable about Java, I put Spring in the same category,
(00:22:41):
It has managed to evolve along with the types of programs that we’re writing and
(00:22:47):
the demands that we place upon that.
(00:22:49):
And I think that’s remarkable and speaks an awful lot to the stewardship.
(00:22:53):
And I don’t think we give enough credit to the people behind that.
(00:22:57):
It’s an incredibly complicated thing.
(00:23:00):
You know, you made this comment about, you know, building ships and things like that.
(00:23:03):
It’s really hard to refactor those things.
(00:23:05):
And I’ve seen over the years as we’ve had these debates about adding a new feature
(00:23:10):
and somebody’s like,
(00:23:10):
but this is so easy.
(00:23:12):
All you got to do is this.
(00:23:13):
Right.
(00:23:14):
Right.
(00:23:14):
Just adding the features, not the hard part.
(00:23:17):
It’s the ripple out effect to what that means for every other part of the system.
(00:23:21):
And by the way,
(00:23:23):
we can’t break things that are five or 10 or 15 or 20 or 25 years old because
(00:23:28):
that’s not going to fly.
(00:23:30):
And so how do you make that change safely,
(00:23:34):
knowing that there’s all these ramifications and you’ve got to think through
(00:23:38):
things?
(00:23:38):
Well,
(00:23:38):
if I change this,
(00:23:39):
it’s going to change that’s going to change that and be able to trace that down.
(00:23:42):
It’s that detail oriented piece that that is hard.
(00:23:45):
And I get it.
(00:23:46):
I mean, we’re all want things to move faster.
(00:23:48):
You know,
(00:23:49):
I remember somebody was complaining about how long it took to fix the Golden Gate
(00:23:54):
Bridge or something like,
(00:23:55):
can you imagine it took 11 years?
(00:23:57):
You know, it only took him four years to build it.
(00:23:59):
And I looked at this guy and I said.
(00:24:00):
How many cars were going over the bridge when they built it?
(00:24:02):
And he said, what do you mean?
(00:24:04):
I said,
(00:24:04):
dude,
(00:24:05):
if you could shut it down,
(00:24:07):
yeah,
(00:24:07):
you could probably do everything you needed to do in two or three years.
(00:24:11):
You can’t do that.
(00:24:12):
Yeah, it’d be great if you could just start over, nuke and pave, but we don’t have that luxury.
(00:24:17):
For a lot of these systems,
(00:24:18):
you’ve got billions and billions of dollars flowing through every single day.
(00:24:22):
We can’t afford to just shut it off for two years and rewrite it and everything will be fine.
(00:24:27):
So
(00:24:27):
How do you do that safely is a really important thing for us to think about.
(00:24:33):
It brings up,
(00:24:34):
you brought up the whole vitality or I can’t think of the exact word that you use
(00:24:40):
in terms of Java has evolved.
(00:24:41):
That’s what it is.
(00:24:42):
Java has evolved very, very well.
(00:24:44):
Some technologies don’t evolve.
(00:24:46):
Some companies don’t evolve.
(00:24:47):
Everything has a lifespan.
(00:24:50):
But I, too, am fascinated by this because when I joined Sun, I joined Sun in 2000.
(00:24:55):
So Java came a few years before that,
(00:24:58):
but it was still very small back then in terms of the community.
(00:25:01):
Well,
(00:25:02):
actually,
(00:25:02):
the community by then,
(00:25:04):
actually,
(00:25:04):
my first Java 1,
(00:25:05):
there were 25,000 people there in Moscone.
(00:25:08):
So it was a very different time.
(00:25:10):
But there were no other Java conferences to water it down, you know.
(00:25:14):
Those were good times.
(00:25:16):
I remember being at Java 1 and just the energy was amazing.
(00:25:20):
It was amazing.
(00:25:21):
Yeah.
(00:25:23):
You always knew where the Brazilians were.
(00:25:25):
Oh, my God.
(00:25:25):
Yes.
(00:25:26):
Bruno and those flags.
(00:25:27):
Yes.
(00:25:29):
But I guess what I mean is.
(00:25:31):
It was new, and it was growing very fast, and we had a single big conference.
(00:25:37):
But still, among all things in technology, it wasn’t pervasive of anything.
(00:25:43):
It was still emerging at that time that I joined Sun.
(00:25:47):
But yet, here we are 25 years, actually 30 years for Java.
(00:25:52):
And it seems thriving.
(00:25:54):
I mean, I go to conferences, depends on where you are in the world and everything.
(00:25:58):
But I was at JavaZone last year.
(00:26:00):
Oh, heck yeah.
(00:26:02):
Great event.
(00:26:02):
It was a fantastic, 3,000 people.
(00:26:06):
And I was clearly one of the older people there.
(00:26:09):
A lot of young people,
(00:26:11):
a lot of Europeans,
(00:26:12):
but there are a lot of people from all over the world.
(00:26:15):
90% of the sponsors were local.
(00:26:17):
So you had a real,
(00:26:18):
it just wasn’t,
(00:26:20):
you knew this was a local event that was started by a user group years ago.
(00:26:24):
You had that feel.
(00:26:25):
It just had scaled over time to become a very big conference.
(00:26:30):
I was talking about Java 1 and I was talking to some random people I met and I was
(00:26:35):
asking them what their first Java 1 was.
(00:26:37):
Had they been to Java 1?
(00:26:37):
It was like 2015 or something.
(00:26:39):
Oh, man.
(00:26:39):
Yeah.
(00:26:41):
You asked me, when was mine?
(00:26:43):
Well, mine was 2000.
(00:26:44):
They weren’t even born, you know?
(00:26:46):
And it’s really amazing that that’s really a cool thing.
(00:26:50):
For sure.
(00:26:52):
Because the community is involved.
(00:26:54):
It’s not only the technology, but the community as well.
(00:26:56):
But you also said something interesting is that the people behind the technology…
(00:27:01):
The ones that are writing the core code,
(00:27:03):
either at Sun and Oracle years ago,
(00:27:06):
or the contributors,
(00:27:07):
there’s lots of contributors as well.
(00:27:09):
Those people,
(00:27:10):
they are responsive to ebbs and flows of the community and the market and customers
(00:27:15):
and everything else.
(00:27:16):
But it is the community.
(00:27:18):
And I think that’s part of what you’re hitting at there.
(00:27:20):
And I know user groups aren’t unique to Java, but we seem to have started that very early.
(00:27:26):
I remember going to lots of user groups over the years.
(00:27:28):
I’ve spoken at a lot of user groups.
(00:27:30):
And I think that was part of it,
(00:27:31):
is that you had this,
(00:27:33):
in almost any major city,
(00:27:35):
there was going to be a Java user group that was going to meet once a month
(00:27:39):
somewhere.
(00:27:39):
And you’d go down and you’d
(00:27:40):
See an interesting talk and you’d get some pizza and maybe you’d win a book.
(00:27:43):
And I think that’s part of it is a very welcoming community.
(00:27:48):
And that is one of the most positive changes I’ve seen in my career.
(00:27:51):
You know,
(00:27:51):
there was,
(00:27:52):
I think,
(00:27:52):
this very brief era and there’s still a little pockets of it where there’s like
(00:27:55):
hazing that goes on like,
(00:27:57):
oh,
(00:27:57):
we’re going to have to kind of rough you up a little bit before we let you be in
(00:28:00):
the club.
(00:28:00):
And I.
(00:28:02):
I’ve never experienced that in Java.
(00:28:03):
I’ve never experienced that with spring.
(00:28:05):
In fact, just the opposite where there’s so many people who are just like welcoming you in.
(00:28:10):
Like, how can I help you?
(00:28:11):
What can I, sure.
(00:28:12):
I’ll explain that to you.
(00:28:13):
Yeah.
(00:28:13):
Let’s sit down and code on this.
(00:28:15):
Let’s pair on this.
(00:28:16):
You know,
(00:28:16):
I mean,
(00:28:17):
this even goes back to when I was really early in my career,
(00:28:20):
I was,
(00:28:20):
I was taking like a Java language certification of some sort or another.
(00:28:24):
And I,
(00:28:25):
This consultant that was on my team,
(00:28:27):
he sat with me multiple evenings and we just kind of poured through the books and
(00:28:31):
he was asking me questions and he really worked it through and we paired on a lot
(00:28:34):
of stuff.
(00:28:34):
And that I think is part of what has allowed Java to thrive and evolve and grow
(00:28:40):
instead of sort of stagnating and becoming this little insular thing.
(00:28:45):
I think that speaks to the people.
(00:28:47):
And you’re right.
(00:28:48):
I think that the folks behind Java are very aware of that.
(00:28:51):
They’re very responsive.
(00:28:52):
It’s an open arms kind of policy.
(00:28:55):
At least that’s been my experience.
(00:28:57):
And I think, again, that speaks to the people who are there.
(00:29:01):
Is there anything about the technology itself?
(00:29:04):
Most recently, there’s been like a specific project, a specific release.
(00:29:09):
Is there anything that you can point to that is really significant from an
(00:29:14):
engineering perspective,
(00:29:16):
maybe enables you to do something for your clients or your customers or whatever,
(00:29:22):
or just working with community people and other developers?
(00:29:27):
Any innovations that are interesting to you recently?
(00:29:30):
Well, I mean, to me, the JVM is amazing.
(00:29:33):
And just the feat of engineering, what that’s enabled over its entire lifespan.
(00:29:37):
And you think about how many…
(00:29:39):
I mean,
(00:29:40):
I wouldn’t hesitate to even put a number on how many people years has gone into
(00:29:45):
creating this thing.
(00:29:46):
And then again,
(00:29:46):
the fact that it’s managed to evolve and grow and adapt to new programming styles
(00:29:51):
and new approaches is amazing.
(00:29:53):
I think one of the more maybe unheralded things that we’re really addressing is
(00:29:58):
what’s that on-ramp look like for new developers?
(00:30:01):
I mean, I think about how I learned Java and you do the typical printout hello world.
(00:30:07):
And most times when someone’s teaching you that in Java,
(00:30:09):
it’s like,
(00:30:10):
okay,
(00:30:10):
here’s a bunch of stuff to just ignore.
(00:30:11):
Don’t worry about this public class thing and don’t worry about the static void main thing.
(00:30:15):
Just write this thing and don’t worry about all this overhead.
(00:30:17):
Then you see what that is in other languages that have some popularity and go,
(00:30:21):
oh,
(00:30:22):
okay,
(00:30:22):
yeah,
(00:30:22):
I can see why that learning curve can be a bit of an issue.
(00:30:26):
And I don’t think about it anymore because, well, I’ve long since passed that on-ramp, right?
(00:30:30):
But watching my son learn Java through his AP course in a senior year of high
(00:30:36):
school,
(00:30:37):
I kind of was reminded of some of that.
(00:30:38):
And so that was one of the things I really picked up on at Java 1 this year was,
(00:30:42):
hey,
(00:30:42):
we want to make that on-ramp smoother.
(00:30:44):
We want to simplify things for that next generation so that they realize that you
(00:30:50):
can get – we’ll teach you these things,
(00:30:52):
but you don’t need that right away.
(00:30:53):
And so let’s get you in there,
(00:30:55):
get you learning,
(00:30:55):
get your feet wet,
(00:30:56):
and then we can start showing you some of this other stuff too.
(00:30:59):
Yeah.
(00:31:00):
But that I think is impressive.
(00:31:02):
And again,
(00:31:02):
just its ability to evolve as our programming approaches evolve,
(00:31:08):
I think is really impressive.
(00:31:10):
A couple of thoughts on that.
(00:31:11):
You mentioned the JVM.
(00:31:12):
A couple of people in previous interviews have mentioned the JVM specifically as
(00:31:18):
being just a very advanced piece of software to say the very least.
(00:31:22):
Yeah, I get words like amazing, rocket science, this kind of thing, or a marvel of engineering.
(00:31:28):
One guy called it actually.
(00:31:30):
And he was emphatic about it.
(00:31:32):
And he was not a junior engineer.
(00:31:33):
He was a very senior guy.
(00:31:35):
And he so he could make a statement like that in a very substantive way.
(00:31:41):
But also actually juxtapose that to the opposite of somebody just getting involved.
(00:31:45):
I will tell you this.
(00:31:46):
This is a big deal at Oracle.
(00:31:48):
I mean, I never talk about Oracle on my podcast, but.
(00:31:50):
they are serious about this.
(00:31:52):
That’s good to know because I’ve done a lot of,
(00:31:55):
over the years,
(00:31:56):
a lot of work at universities and talking to students about getting them involved
(00:31:59):
in communities and stuff,
(00:32:01):
getting them to join user groups and these kinds of things,
(00:32:03):
get involved.
(00:32:04):
And I certainly know about learning curves because-
(00:32:06):
When I sat down in front of my Spark station at Northeastern University in the
(00:32:11):
basement,
(00:32:11):
and all I had was the blinking cursor and a piece of paper in front of me.
(00:32:16):
No ID.
(00:32:16):
A little intimidating.
(00:32:17):
Oh, my God.
(00:32:18):
And somebody else wanting to get on the machine.
(00:32:23):
But it was cool.
(00:32:23):
It was a Sun system, so that’s cool.
(00:32:25):
But wow, what about a learning curve?
(00:32:28):
Very intimidating.
(00:32:29):
So it’s good that these systems, because you have IDEs now, it is more intuitive.
(00:32:36):
Not to say it’s easy, but it’s just more intuitive now in general.
(00:32:40):
But the engineers and the program managers,
(00:32:44):
we have a new website,
(00:32:45):
learn.java,
(00:32:46):
out there now,
(00:32:46):
which we announced at Java 1.
(00:32:48):
So OK, commercial over.
(00:32:51):
It’s an important thing,
(00:32:52):
and I think very important people are taking it seriously,
(00:32:56):
which is good for people like me because it’s not only young people.
(00:32:59):
I keep telling them.
(00:33:00):
It’s not only for young people,
(00:33:02):
but there are a lot of people out there who do career changes and they’re older.
(00:33:05):
Yeah.
(00:33:06):
Oh, yeah, for sure.
(00:33:06):
Yeah.
(00:33:07):
And I know several who’ve done that.
(00:33:08):
And again,
(00:33:09):
I think it speaks to this industry that if you have that mindset,
(00:33:13):
if you are curious and want to tinker,
(00:33:16):
you can absolutely be part of this.
(00:33:18):
You don’t have to.
(00:33:19):
I mean, I feel like there’s some careers where.
(00:33:21):
Yeah, you kind of got to make that decision pretty early.
(00:33:24):
And then once you’re kind of down that path, you’re kind of committed.
(00:33:27):
There’s not a whole lot of switching out, at least not with maybe some great cost.
(00:33:31):
But I feel like our industry is more forgiving to that and more welcoming to that.
(00:33:37):
And again, if you’ve got the mindset, you can do it.
(00:33:39):
And the more the merrier.
(00:33:41):
I want to hear your thoughts on something related to this,
(00:33:43):
because you mentioned that,
(00:33:45):
you know,
(00:33:45):
when you were in school,
(00:33:46):
you were a chemistry major and you might have gone into science.
(00:33:49):
And science also is a very collaborative process, similar to open source.
(00:33:54):
And we have this concept of user groups and software and conferences and open
(00:34:00):
source projects and GitHub really works.
(00:34:02):
All over the place.
(00:34:03):
And people contribute code.
(00:34:05):
You can become a part of the community.
(00:34:06):
Code would be the highest level thing,
(00:34:09):
maybe the most complex thing,
(00:34:10):
but contributing is many things.
(00:34:13):
Talk a little bit about contributing.
(00:34:15):
Even the simplest thing of showing up to a user group,
(00:34:19):
that in itself is the first level of contribution because you’re there.
(00:34:22):
The user group couldn’t hold a meeting if no one was there.
(00:34:26):
Talk about contributing in terms of your own experience,
(00:34:28):
but also how did this concept of community and contributing evolve in software and
(00:34:35):
science as well,
(00:34:36):
but not necessarily in all fields.
(00:34:38):
I find this fascinating because I’ve worked in multiple industries.
(00:34:42):
It’s not just software.
(00:34:44):
And I can assure you, this concept of contributing is not pervasive in society.
(00:34:50):
Yeah.
(00:34:50):
Sure.
(00:34:51):
What do you think?
(00:34:51):
Yeah, that’s a that’s a great point.
(00:34:53):
And one of the things that I always try to emphasize to people,
(00:34:56):
especially that are new,
(00:34:58):
there seems to be some hesitance or even reticence.
(00:35:01):
Oh, I don’t I don’t know enough to contribute.
(00:35:03):
Sure you do.
(00:35:04):
Come on in,
(00:35:05):
you know,
(00:35:05):
and the simplest thing is come to a meeting,
(00:35:08):
come to a conference,
(00:35:10):
attend a talk,
(00:35:11):
ask a question.
(00:35:12):
volunteer to give a talk.
(00:35:14):
I think a lot of folks get very caught up in that,
(00:35:17):
well,
(00:35:17):
I need to,
(00:35:18):
I don’t know,
(00:35:18):
pass some tests in order to be worthy of contributing.
(00:35:22):
Not at all.
(00:35:24):
One of the simplest things you can do is you find a bug in the docs or in a tutorial, report it.
(00:35:30):
Contribute a pull request for, hey, this isn’t right.
(00:35:34):
It should be this instead.
(00:35:36):
And that’s one of those things that gets overlooked.
(00:35:39):
And sometimes people don’t put their focus on it.
(00:35:41):
But it’s still really important.
(00:35:43):
If you’ve ever gone through a tutorial and the steps are wrong or this command got
(00:35:46):
changed and you’re spinning your wheels for two hours,
(00:35:49):
well,
(00:35:49):
you just saved a whole bunch of people a lot of time by fixing the docs.
(00:35:54):
So contribute.
(00:35:55):
And that’s how you get started.
(00:35:57):
Everyone I know that contributes to open source
(00:35:59):
It almost always begins with something like that.
(00:36:01):
It isn’t,
(00:36:02):
well,
(00:36:02):
I wrote this module that saved 30% of processing or some really big,
(00:36:07):
important thing.
(00:36:08):
It’s,
(00:36:09):
well,
(00:36:09):
I fixed a couple of small defects in here,
(00:36:11):
and then I fixed this,
(00:36:12):
and then I fixed that,
(00:36:13):
and then I got more confident,
(00:36:14):
and I started doing more things,
(00:36:15):
and they pulled me in.
(00:36:17):
And away it goes.
(00:36:18):
So I think part of that is recognizing me helping you doesn’t diminish me.
(00:36:24):
It’s not a zero sum game.
(00:36:26):
It’s not like I now have less because I’ve helped you.
(00:36:29):
It’s better for both of us.
(00:36:31):
If I’m teaching you something,
(00:36:33):
I’m learning something at the same time or I’m focusing or I’m thinking a better
(00:36:36):
way of teaching it.
(00:36:38):
And almost every time I’ve done that,
(00:36:40):
people end up doing something like,
(00:36:42):
oh,
(00:36:43):
I hadn’t thought of that.
(00:36:43):
Or that’s a really interesting point.
(00:36:45):
Or
(00:36:46):
You know, let me tweak it this way.
(00:36:47):
And OK, now I’ve found out how to teach this particular concept.
(00:36:51):
And that makes me better as a teacher and makes you hopefully better as a student.
(00:36:56):
And so it’s recognizing that we all have something to contribute and we’re all
(00:37:01):
better for that contribution.
(00:37:02):
You know, we’re all built on top of other people’s contributions and genius.
(00:37:07):
And that doesn’t diminish mine or theirs.
(00:37:10):
I think it’s amazing that we get to stand on the shoulders of these giants who have
(00:37:14):
built these things.
(00:37:15):
You know, I mean, again, look at the JVM.
(00:37:18):
How much amazing stuff is in there and we all get to take advantage of it.
(00:37:21):
Like, that’s super cool.
(00:37:23):
And the fact that that enables all of us to do these amazing things, that’s great.
(00:37:29):
And I just I get giddy about that stuff.
(00:37:32):
And what’s really,
(00:37:33):
and what’s interesting also is that that technology that those people created is
(00:37:38):
leading to other innovation because then you can stand,
(00:37:41):
like you mentioned,
(00:37:42):
it just enables so many other things.
(00:37:45):
And you specifically,
(00:37:46):
you can bring it into the classroom and your enthusiasm can be transmitted right
(00:37:50):
into a student who was separated by decades of time and maybe thousands of miles in
(00:37:57):
geography from people who wrote that code.
(00:38:00):
I think about this.
(00:38:01):
It’s weird.
(00:38:01):
I don’t know.
(00:38:02):
I don’t know, maybe I’m just weird, but I think about these things all the time.
(00:38:05):
I was at Java One specifically,
(00:38:07):
I did a little Duke’s Corner podcast episode,
(00:38:11):
basically,
(00:38:11):
where I interviewed some guests on stage at the community keynote on the last day.
(00:38:17):
And in my opening,
(00:38:18):
basically I had to introduce,
(00:38:20):
I walked on stage and I had to introduce them,
(00:38:22):
but I had about a minute for myself to just introduce Duke’s Corner,
(00:38:25):
what this podcast is and profiles and things like that.
(00:38:29):
And I was looking out over the stage and I saw some of the core engineers that I knew from Sun.
(00:38:35):
Okay.
(00:38:35):
So these are people that have been writing this code for a long time.
(00:38:40):
And I thought about one of the podcast guests that I had on last year who told me
(00:38:47):
that this technology saved his life.
(00:38:50):
He had employment issues.
(00:38:52):
He lived in a country where there weren’t opportunities, but he was able to
(00:38:57):
scramble enough money to get to school.
(00:38:59):
And he learned this technology and he can send his little sister to school.
(00:39:03):
He can feed his mother, these kinds of things.
(00:39:05):
And here I am telling this story,
(00:39:07):
a very short version of it,
(00:39:10):
but I was getting emotional because I had this kid in my mind.
(00:39:14):
And I’m looking at a couple of engineers who I’ve known for
(00:39:17):
for 25 years.
(00:39:18):
Who wrote this code that enabled this kid all these years later to do that?
(00:39:23):
And I just said to myself, I’m having this thing here on stage.
(00:39:26):
Stop it.
(00:39:26):
You know, you just got to get through this, you know?
(00:39:29):
And it just came to me how amazing that is.
(00:39:33):
And it’s fortunate that someone like yourself takes these things seriously and
(00:39:37):
could talk about that in a classroom.
(00:39:40):
And I just think that’s really interesting.
(00:39:42):
Teaching, is that something that you’ve always wanted to do?
(00:39:44):
Oh, for sure.
(00:39:46):
Oh, really?
(00:39:46):
So you’ve done it for a while?
(00:39:48):
Long time.
(00:39:50):
When I was probably in high school, I thought, well, I’ll be a teacher of some sort.
(00:39:53):
I just didn’t know what.
(00:39:55):
I didn’t know, well, would I be a high school teacher?
(00:39:57):
Would I get a PhD and go be a professor?
(00:39:58):
Yeah.
(00:39:59):
And by the time I got to college,
(00:40:00):
my plan at that time was,
(00:40:01):
well,
(00:40:02):
I’ll just go get a PhD and go be a college professor.
(00:40:04):
And then I got towards my senior year and started realizing,
(00:40:08):
well,
(00:40:09):
I could go be poor for another six to eight years and get my PhD somewhere.
(00:40:14):
Or this company wants to pay me how much money a year to come write code?
(00:40:18):
Well, that sounds like a good idea.
(00:40:19):
And I can pick up a master’s degree, a PhD later.
(00:40:22):
And
(00:40:22):
About a year after I graduated, I did start my master’s.
(00:40:25):
I have a master’s of science and software engineering.
(00:40:28):
But I still don’t have the PhD.
(00:40:29):
I still, you know, I harbor that desire at some point.
(00:40:32):
But, you know, who knows?
(00:40:33):
As I get older and older, it gets harder, you know.
(00:40:35):
But I’ve been lucky that I’ve had lots of opportunities to teach.
(00:40:40):
And for me, it started just at my local user group.
(00:40:43):
I wrote a book on Ajax with a good friend of mine.
(00:40:47):
And we started going to various places to pitch the book and talk about Ajax.
(00:40:51):
And that just kind of snowballed into speaking at No Fluff, Just Stuff.
(00:40:55):
And that snowballed into other conferences.
(00:40:58):
And so I got to scratch that itch on a really regular basis.
(00:41:01):
And around probably a year or two after I graduated from my program,
(00:41:06):
my master’s program,
(00:41:07):
I was working with one of my professors.
(00:41:09):
He was a consultant at the company I was at.
(00:41:11):
And he’s like, hey, you should pitch an elective.
(00:41:14):
I’m like, what?
(00:41:14):
Yeah, we’re always looking for new new people.
(00:41:16):
You should pitch an elective.
(00:41:17):
I’m like, OK.
(00:41:19):
And so I did and it got selected.
(00:41:21):
And then I started teaching in the grad program I graduated from.
(00:41:24):
And just again, one thing led to another.
(00:41:27):
And here I am.
(00:41:28):
And I love that part of it.
(00:41:30):
I think that’s I actually I was very gratified.
(00:41:33):
One of my students pinged me over LinkedIn a couple of days ago and wanted to connect.
(00:41:37):
And he’s like, hey, I just wanted to thank you.
(00:41:38):
I really enjoyed the architecture class.
(00:41:40):
It was one of my favorites.
(00:41:41):
And
(00:41:41):
Every time you hear that, you’re just like, oh, it works.
(00:41:44):
You know, somebody got something out of what I spoke and it’s like, yay, success.
(00:41:48):
And so, you know, I appreciate that stuff.
(00:41:50):
Right.
(00:41:50):
And I but I also feel like it’s part of my I mean,
(00:41:54):
maybe duty is too strong of a word,
(00:41:56):
but so many people helped me.
(00:41:59):
So many people reached out a hand and helped me up,
(00:42:01):
whether that’s,
(00:42:02):
you know,
(00:42:02):
Venkat or Neil or Brian or all these other amazing people.
(00:42:06):
So my job is to turn around and help somebody else to and help them understand
(00:42:12):
something or put them in a position to succeed or help them with a conference
(00:42:16):
proposal.
(00:42:17):
And,
(00:42:17):
you know,
(00:42:18):
so I think that’s a huge part of this,
(00:42:19):
too,
(00:42:20):
is recognizing people who have given you a hand and then turning around and
(00:42:25):
reaching down to that next level,
(00:42:26):
that next generation and bring them along,
(00:42:28):
too.
(00:42:29):
Fascinating and really, really great thought as well.
(00:42:32):
Let’s shift gears a little bit and talk about what everybody is talking about to an
(00:42:38):
extreme AI,
(00:42:41):
the dreaded two letters.
(00:42:44):
You know,
(00:42:44):
look,
(00:42:45):
I use these tools for my stuff and I find them very helpful there,
(00:42:49):
but I also am profoundly shocked by how,
(00:42:53):
how bad they can be as well,
(00:42:55):
you know?
(00:42:56):
And what I, what I find is I’m going and having conversation with,
(00:43:00):
chat or grok or what you know whatever i happen to be on and i’m finding it very
(00:43:05):
helpful and i’m it’s it’s like talking to a person it’s very engaging and the topic
(00:43:10):
i’m familiar with enough to know that i’m on the right track okay so and then all
(00:43:16):
of a sudden we’re in left field where i mean we’re just this is just broken i mean
(00:43:20):
you you are wrong mr grok you are wrong completely and i actually i know here’s the
(00:43:25):
answer i found it on google let’s say you know
(00:43:28):
And so,
(00:43:28):
you know,
(00:43:29):
I find so many people talking about how this is going to take over the world and
(00:43:32):
change things so dramatically and this and that.
(00:43:35):
And I said to myself, okay, fine.
(00:43:37):
I can accept the technology is certainly profound.
(00:43:40):
Okay.
(00:43:41):
But on the other hand, why can’t some of these things get a time zone correct?
(00:43:46):
Yeah.
(00:43:47):
Or the day or what year it is.
(00:43:49):
Exactly.
(00:43:49):
And then when I talk to engineers,
(00:43:52):
they’re using these AI assistants to generate code and stuff like that.
(00:43:56):
Very helpful.
(00:43:57):
People speak very highly of them in general, but there are issues and stuff.
(00:44:01):
And look,
(00:44:02):
it’s early days and I’m not judging it really too harshly,
(00:44:06):
but the mania seems to be what I’m asking you about here.
(00:44:10):
What are your comments about all this mania versus some of the reality?
(00:44:14):
Yeah.
(00:44:14):
Yeah, I think we’re seeing a massive hype cycle.
(00:44:17):
And that’s not unsurprising given the sheer volume of money that has been poured into the space.
(00:44:22):
And to be fair, there are some amazingly cool things.
(00:44:25):
The fact that you can ask these chat tools,
(00:44:29):
create me a bedtime story for my kid based on X,
(00:44:32):
Y,
(00:44:32):
and Z.
(00:44:33):
That’s very cool.
(00:44:34):
I was doing some experiments on rounding errors.
(00:44:38):
And so I was playing around with Big Decimal.
(00:44:40):
And
(00:44:41):
I asked Gemini, like, hey, explain this to me.
(00:44:43):
I’m an experienced Java developer, but explain Big Decimal to me.
(00:44:47):
And it was very helpful.
(00:44:48):
That’s one of those things that to me is sort of a force multiplier,
(00:44:52):
you know,
(00:44:52):
and so that I don’t have to go search the web and read through the docs.
(00:44:55):
I can ask that tool and it will go ahead and conceptualize that for me.
(00:44:58):
And then it’ll tell me this is what the different rounding rules do and when you
(00:45:01):
should apply one or the other.
(00:45:02):
I’m like, sweet.
(00:45:03):
That’s awesome.
(00:45:04):
But you still have to have the expertise.
(00:45:07):
You still have to have the fundamentals.
(00:45:08):
I mean,
(00:45:09):
this to me is the part that I’m concerned by is that people seem to think they can
(00:45:12):
skip over the fundamentals and somehow AI will be the salve over all of that.
(00:45:19):
And where I think we get in trouble is if you just blindly accept whatever the AI
(00:45:24):
says and like,
(00:45:25):
oh,
(00:45:25):
it must be right.
(00:45:26):
But it might not be, you know, to your point, it wasn’t that long ago I did that little search.
(00:45:30):
Is it 2025?
(00:45:31):
And it said, no, it’s not.
(00:45:32):
I’m like,
(00:45:33):
Really?
(00:45:34):
Because it sure as heck is.
(00:45:36):
And then I think I said, is it May?
(00:45:38):
And it said, yes, today is May 23rd, 2025.
(00:45:42):
I’m like, OK, so when I ask you what month it is, you know the right year.
(00:45:47):
You’re still wrong on the day.
(00:45:49):
You’re off by one on the day,
(00:45:50):
which I guess computer science joke 101 right there,
(00:45:53):
you know,
(00:45:53):
off by one error.
(00:45:54):
But OK, so that probably has to do with
(00:45:58):
When it gets new information,
(00:45:59):
when it crawls new information and at a certain point it kicks over and now it
(00:46:03):
knows it’s the next day because it’s been taught that it’s now the 25th instead of
(00:46:06):
the 24th or whatever.
(00:46:08):
I don’t know.
(00:46:09):
So you’ve got to use it with a grain of salt.
(00:46:11):
You know, it’s no different than the sort of automation we have in our cars.
(00:46:16):
you can’t just lock in your crews and close your eyes and sit back.
(00:46:19):
You still have to be an active participant here.
(00:46:22):
As my friend Dan Vega likes to say, you are the pilot, not a passenger.
(00:46:28):
And so you still have to understand what is this really doing?
(00:46:32):
Is this the right way to do it or not?
(00:46:34):
And anybody who tries to use these tools to skip over that step is going to be,
(00:46:40):
I think,
(00:46:41):
unhappy with the results.
(00:46:42):
You know, you and I were talking a bit about photography earlier and, um,
(00:46:45):
I know just enough about photography to be dangerous and I’m sure the AI could
(00:46:49):
probably give me all sorts of benefits and it might make me a little better
(00:46:52):
photographer,
(00:46:53):
but I’m still wouldn’t know enough to go,
(00:46:55):
Oh no,
(00:46:55):
I need to override that.
(00:46:56):
That’s not, that’s not the right exposure.
(00:46:58):
That’s not the right shutters to speed and all that kind of stuff.
(00:47:00):
I just, I just don’t know the basics to the level I once did.
(00:47:04):
And so that’s my concern is that people are going to lose sight of how important it
(00:47:08):
is to learn those fundamentals.
(00:47:09):
And that takes time.
(00:47:10):
There’s no shortcut to learning that, you know, if,
(00:47:13):
If you said to me, Nate, I want to learn how to be a golfer.
(00:47:16):
Well, we don’t immediately jump to here’s the driver.
(00:47:19):
Here’s how to hit the driver 300 yards with a slight draw.
(00:47:22):
No, no, we’re going to go to the putting green.
(00:47:24):
We’re going to teach you how to putt.
(00:47:25):
And then we’re going to teach you how to chip.
(00:47:26):
And then we’re going to have you hit pitching, you know, little pitches and work your way back.
(00:47:30):
And you can’t skip those steps.
(00:47:33):
I actually used it a lot before Java 1 to get used to the new camera that I was,
(00:47:38):
you know,
(00:47:38):
given the
(00:47:40):
Oracle bought a new camera for me to shoot the event.
(00:47:46):
But it was ordered and sent to Char, my boss, in California.
(00:47:52):
And I said, well, I need to show up a day early so I can play with the darn thing.
(00:47:58):
It was a Sony, so I would be mostly familiar with it.
(00:48:01):
But still, it’s a different camera.
(00:48:04):
And so I played around with
(00:48:07):
I was using Grok and also ChatGPT for this, giving it scenarios.
(00:48:12):
What would the settings be in this situation given this lighting condition?
(00:48:17):
Walk me through how to set it up and this and that.
(00:48:20):
And since I was already familiar with Sony,
(00:48:22):
I found it very,
(00:48:23):
very helpful for me to move rapidly into more sophisticated questions.
(00:48:29):
And then when I got there, I got the camera, started playing with it.
(00:48:32):
It was mostly accurate in terms of what it was suggesting.
(00:48:36):
And it was very accurate in terms of where the settings were,
(00:48:40):
how to manipulate the settings,
(00:48:42):
and things like that.
(00:48:44):
Presumably because that documentation is very readily available.
(00:48:47):
Right.
(00:48:49):
But the fact that I could ask specific questions without me having to myself scroll
(00:48:53):
through a million different websites to find,
(00:48:56):
it was a huge time.
(00:48:57):
And that is super useful.
(00:48:58):
That stuff is super useful.
(00:49:00):
It was unbelievable.
(00:49:01):
And I was so, so impressed with it.
(00:49:03):
And I’ve been continuing to use it for other things.
(00:49:05):
And I was so shocking that it didn’t know what time in San Francisco it was right now.
(00:49:12):
Right.
(00:49:12):
Right.
(00:49:13):
And so I wanted to ask the question,
(00:49:15):
I asked this question to most of the people that I talk to now,
(00:49:19):
since everyone’s talking about this thing,
(00:49:22):
particularly for new developers,
(00:49:25):
students,
(00:49:25):
younger people who are getting into software engineering,
(00:49:28):
who have these tools that you didn’t have when you were…
(00:49:32):
You know, I love tools, but the tools can be so sophisticated.
(00:49:36):
You know,
(00:49:36):
as I said,
(00:49:37):
I was in the construction business and it mattered a lot what tool you used,
(00:49:41):
but you had to use the tool correctly.
(00:49:44):
You don’t want to use a certain, you know, I used to run a bulldozer.
(00:49:48):
You know, you don’t want to grade a road with a loader.
(00:49:51):
You know, you want to use a different type of machine for that.
(00:49:54):
But the tools abstract out a lot of the complexity.
(00:49:57):
Yeah.
(00:49:57):
So when you’re a student,
(00:49:58):
a young student who does not have that history,
(00:50:01):
how do you approach learning now since you’re a teacher?
(00:50:04):
How do you approach learning now with these unbelievable tools,
(00:50:07):
even just the IDE stuff because the AI is being embedded into the IDEs?
(00:50:11):
So my argument has always been you need to know one layer of abstraction beneath
(00:50:14):
the one you’re using.
(00:50:16):
And so we get leverage, and that’s awesome.
(00:50:19):
And it gives us a coarser-grained abstraction,
(00:50:23):
which is generally something that allows us to either move faster or do more
(00:50:26):
complicated things more readily.
(00:50:28):
And so that’s absolutely a win.
(00:50:29):
Believe me, I don’t want to go back to writing code in a text editor.
(00:50:33):
I have no interest in doing that.
(00:50:34):
I will take my IDE from my cold, dead hands.
(00:50:37):
So I love IntelliSense,
(00:50:39):
and I love that fact that,
(00:50:40):
hey,
(00:50:40):
it looks like you’re trying to write a for loop.
(00:50:41):
Like, sweet, go ahead.
(00:50:43):
I don’t need to write a frickin’ for loop again.
(00:50:44):
I’ve written enough of those in my life.
(00:50:46):
But I understand what it’s doing and I understand the iteration behind it.
(00:50:50):
And so you’ve got to know what’s going on under the covers and be able to debug that.
(00:50:54):
And so I think that’s the way I try to teach people this.
(00:50:58):
So when I teach cloud,
(00:50:59):
I make my students do some of these things the hard way first so that they
(00:51:04):
appreciate a little bit.
(00:51:05):
This is why we have this new abstraction like containers.
(00:51:09):
So I walk them through this sort of process where you have to install something on
(00:51:12):
bare metal on a cloud provider.
(00:51:15):
And then get this little simple website up and running.
(00:51:17):
And it’s not overly complicated and it’s not something you’re going to do in your
(00:51:20):
day to day life,
(00:51:21):
I hope.
(00:51:21):
But it helps you understand.
(00:51:23):
And this is why we have containerization and why that’s such a powerful abstraction.
(00:51:28):
And then from there, you keep kind of moving forward.
(00:51:30):
And so you still have to understand that under the covers,
(00:51:33):
even when I just deploy a container,
(00:51:35):
well,
(00:51:35):
there’s some IaaS going on.
(00:51:37):
Like some some bare metal is getting spun up on my behalf.
(00:51:40):
And that’s all through virtualization.
(00:51:41):
And that’s that at the end of the day, somewhere there is a rack with a blade in it.
(00:51:46):
And that’s where my code’s running.
(00:51:47):
And so you’ve still got to understand that even though you’re never going to log
(00:51:51):
into it,
(00:51:51):
you’re probably never going to have to plug it in or maintain it or upgrade it or
(00:51:55):
anything like that.
(00:51:55):
But but you got to know it’s there.
(00:51:57):
So it’s just understanding what we’re building on top of, I think, is really important.
(00:52:02):
Are the students, how are they reacting to all the AI now?
(00:52:06):
Is it something that’s intimidating or are they just normal?
(00:52:09):
I think it depends on the students.
(00:52:11):
So I think there’s some who,
(00:52:14):
you know,
(00:52:14):
because I’m not in write me an essay land,
(00:52:17):
I don’t know that I’m getting a lot of stuff that’s clearly been done by AI.
(00:52:21):
I mean, from what I gather, that’s becoming fairly commonplace in certain disciplines where,
(00:52:28):
teachers are trying to figure out what do we do with this is this a good thing or a
(00:52:31):
bad thing and you know do we ban it do we you know let people use do we encourage
(00:52:34):
people to use it i don’t pretend to have only answers to that but i love it in the
(00:52:38):
sense of if a student is using this because i actually one of my students did this
(00:52:41):
last last spring he he was doing some stuff with kafka and he couldn’t quite figure
(00:52:46):
out how to get it configured and so he he asked you know chat gpt or whatever how
(00:52:49):
do i configure this and like oh here’s what you do and he’s like that’s awesome
(00:52:52):
right
(00:52:53):
Now, this is an incredibly experienced engineer.
(00:52:54):
He’s 25 plus years in industry, so he knows what’s going on under the covers.
(00:52:59):
But that saved him a lot of time digging and experimenting and trying things out.
(00:53:03):
I do worry if somebody says, vibe code me this assignment that my teacher gave me.
(00:53:09):
You’re not learning what we’re trying to get you to learn by doing this assignment.
(00:53:15):
Yes,
(00:53:16):
a lot of computer science undergrad programs,
(00:53:18):
we’re going to have you write something trivial like bubble sort.
(00:53:21):
Are you ever going to write bubble sort in the real world?
(00:53:23):
Of course not.
(00:53:24):
But we’re trying to teach you concepts that you will use in your day job.
(00:53:30):
And so if we miss that step and you don’t get the concepts,
(00:53:34):
that could have some pretty serious negative repercussions,
(00:53:36):
in my opinion.
(00:53:37):
That’s good.
(00:53:38):
That’s good for thought.
(00:53:39):
I actually agree a lot with what you’re saying.
(00:53:42):
It was very helpful to me in certain situations for things, saving time.
(00:53:47):
And I actually encourage my daughter to use it at school.
(00:53:50):
They give them, you know, subscriptions or, you know, advanced features to chat.
(00:53:55):
And so they use it,
(00:53:56):
but I always,
(00:53:57):
you know,
(00:53:57):
just use it as a teaching aid,
(00:53:59):
you know,
(00:54:00):
use it to extend what you’ve learned in school,
(00:54:04):
you know,
(00:54:04):
blow out your notes a little bit, have conversations with you, check yourself.
(00:54:09):
Summarize my notes or,
(00:54:10):
you know,
(00:54:10):
take this lecture and turn it into a transcript and summarize it.
(00:54:14):
But that kind of stuff I think is useful.
(00:54:15):
And it’s important we don’t just bury our heads in the sand.
(00:54:18):
You know,
(00:54:18):
I think that’s the worst thing you can do as frankly,
(00:54:21):
as a teacher is to pretend it’s not there and all my students aren’t using it.
(00:54:24):
They are.
(00:54:24):
So figure out how to incorporate it, figure out how to
(00:54:28):
Give them that advice on how to use it intelligently and not just as a total crutch
(00:54:33):
to avoid learning the concepts that we’re trying to teach you.
(00:54:36):
Okay.
(00:54:36):
Well, Nate, it’s been great talking to you.
(00:54:38):
I’m going to go to bed soon.
(00:54:39):
So let’s just wrap this up.
(00:54:41):
That’s a good idea.
(00:54:41):
It’s late for you, man.
(00:54:42):
Thanks for staying up.
(00:54:43):
It’s late.
(00:54:44):
Well, I do this.
(00:54:45):
It’s kind of a feature of what I do.
(00:54:48):
So let’s wrap up with, is there anything that I didn’t bring up that I should have?
(00:54:53):
Is there anything that I forgot?
(00:54:54):
Is there anything that you forgot?
(00:54:56):
Any final words of wisdom?
(00:54:59):
You know,
(00:54:59):
I would just encourage folks to get involved,
(00:55:02):
whether that’s attending your local user group,
(00:55:04):
volunteering to give a talk at your local user group,
(00:55:07):
contribute and be a part of this community.
(00:55:09):
There’s nothing that’s holding you back and don’t let your experience level be an
(00:55:13):
issue,
(00:55:14):
you know,
(00:55:14):
just
(00:55:15):
throw it in there and see what happens.
(00:55:16):
And again, my opinion, this has been a very welcoming place for a lot of people as it should be.
(00:55:22):
And we value your contribution.
(00:55:24):
So please, please be a part of that.
(00:55:26):
Beautiful, beautiful thought.
(00:55:28):
And thank you.
(00:55:29):
And we will see you hopefully at a conference somewhere again.
(00:55:32):
Talk to you soon.
(00:55:34):
Thanks, buddy.
(00:55:34):
Cheers.
