30-Josiah-Davisson.txt

(00:00:00):
Hey everybody, welcome back.

(00:00:01):
This is Jim Grisanzio from Java Developer Relations and we are here at Duke’s

(00:00:05):
Corner and today’s conversation is with Josiah Davisson.

(00:00:10):
Josiah is a really cool guy.

(00:00:12):
He is a high school teacher in Las Vegas, Nevada.

(00:00:16):
And he teaches Java to high school kids,

(00:00:18):
which is really cool because,

(00:00:19):
I mean,

(00:00:20):
I’ve had lots of conversations with professors over the years about computer science.

(00:00:25):
I’ve spoken to hundreds of students about computer science.

(00:00:32):
But I don’t think I’ve actually ever had a conversation with a high school teacher.

(00:00:36):
So the challenges are unique here.

(00:00:39):
They’re certainly worth listening to and how to generate really good content for

(00:00:46):
kids that age,

(00:00:47):
how to break them into teams and to keep them interested,

(00:00:50):
what’s the best path forward to teaching Java in high school if you want to go to

(00:00:56):
college versus directly into the software development industry,

(00:01:02):
and the different tests that the kids are required to take,

(00:01:05):
he’s got to prepare them for,

(00:01:07):
etc.,

(00:01:08):
And also, you’ll notice at the end of the conversation, he specifically has a call to action.

(00:01:13):
He’s specifically reaching out to you guys out there.

(00:01:17):
So if there’s anybody there with expertise in this subject, I put his email in the show notes.

(00:01:23):
Feel free to give him a ping because he’s looking for advice and suggestions on the

(00:01:27):
best track to teach at this level to get kids to succeed directly into industry.

(00:01:36):
Good stuff.

(00:01:37):
More coming soon.

(00:01:39):
And cheers.

(00:01:41):
josiah josiah davison welcome to duke’s corner thank you i’m glad to be here it’s

(00:01:45):
good to meet you we’re raining here actually for the first time and i got your name

(00:01:50):
from heather on on my team and she you come highly recommended which is really

(00:01:55):
great i’m doing a little bit of a kind of a mini series here where i’m talking to

(00:01:59):
educators talk about java and education and it’s kind of a pet project of mine i

(00:02:05):
i’ve been doing a lot of community development over the years and

(00:02:08):
Whenever I talk to developers,

(00:02:11):
I always find a way to talk about education because I’m just very interested in it.

(00:02:15):
And so I spoke to Heather and she was looking for teachers to talk to.

(00:02:20):
And so, yeah, that’s how we’re coming together.

(00:02:24):
And so I wanted to talk about your experiences.

(00:02:26):
You teach high school.

(00:02:28):
You teach computer science to high school kids.

(00:02:31):
Back when I was in high school, struggling through high school, computer science wasn’t the thing.

(00:02:36):
So tell me what it’s like just in general.

(00:02:41):
What is it like teaching computer science to 17, 18-year-olds?

(00:02:45):
Yeah, it wasn’t a thing when I was in high school either.

(00:02:48):
And so it’s been really interesting learning how to make it effective in high school.

(00:02:56):
And so what it’s like,

(00:02:58):
I try to really bring teamwork into it,

(00:03:02):
which is difficult because they have to take standardized tests on it,

(00:03:06):
like the AP Computer Science A test.

(00:03:08):
And so while that’s individual, there’s very much teamwork and development.

(00:03:15):
We do projects and I have them do our free response questions in practice for the

(00:03:23):
AP exam and they’ll team up together.

(00:03:25):
And I try to mix it up so that they can learn from other students who understand it

(00:03:30):
better than they can or they can teach it because best way to learn is really by teaching.

(00:03:35):
And so by putting them into teams and switching up those teams and they get the

(00:03:40):
experience from learning from others and teaching it,

(00:03:43):
And that’s been really effective.

(00:03:45):
But what’s most classes right now, there’s canned curriculums through CodeHS, Code.org.

(00:03:53):
Amazon has partnered and funded a lot of things.

(00:03:57):
And MIT has coding and a ton of different canned curriculums.

(00:04:03):
And so those are primarily what’s being used.

(00:04:05):
I myself am trying to find ways to take it beyond the canned curriculum and make it

(00:04:10):
more into what they’re actually going to be doing when they get out of high school.

(00:04:13):
Interesting.

(00:04:14):
So is so did you always want to be a teacher?

(00:04:16):
So how did you step into this profession?

(00:04:19):
I studied business in college,

(00:04:22):
and after I started traveling,

(00:04:24):
I had a few experiences with teaching and realized that that’s where my passion lied.

(00:04:28):
So then I decided I wanted to become a business teacher.

(00:04:32):
That wasn’t available.

(00:04:34):
And so I ended up teaching sixth grade computer science for a few years, and I was JavaScript.

(00:04:40):
And I’d always been interested in computer science.

(00:04:43):
And so getting to teach that, like I said, it wasn’t available to me in school.

(00:04:48):
And so it ignited a passion that was always just there.

(00:04:52):
And I realized,

(00:04:53):
wow,

(00:04:53):
this is really fun and interesting and seeing kids take their ideas and create them

(00:05:00):
in the programming environments that we had.

(00:05:02):
just ignited that passion.

(00:05:04):
And so I continued with it for three years at that sixth grade level.

(00:05:08):
And then I was able to move up into high school and start teaching Java.

(00:05:11):
And now I’ve been doing that.

(00:05:13):
I just finished my second year teaching Java in high school.

(00:05:16):
Cool.

(00:05:17):
So are you self-taught?

(00:05:18):
Somewhat.

(00:05:20):
I met another high school teacher who’s been teaching Java for, I think, 15 years or so.

(00:05:27):
And so he taught a lot.

(00:05:29):
It helped me a lot.

(00:05:30):
And then I did a training on how to teach the class that I’m teaching.

(00:05:35):
But yeah, I’ve never done any formal classes.

(00:05:39):
And I’ve gotten a lot of the answers just through connecting with people who know a lot more than I do.

(00:05:45):
Yeah, I’m always impressed with people who are self-taught.

(00:05:48):
It’s amazing.

(00:05:50):
So what is… I mean, I’m long removed from hanging out with 17 and 18-year-olds.

(00:05:56):
So what is it like?

(00:05:57):
What are the kids like in school in terms of their interest level of computer science?

(00:06:03):
I mean, everyone’s hacking on something these days.

(00:06:06):
But you’re not just…

(00:06:07):
Playing around, it’s not just kind of hacking, it’s an actual class, right?

(00:06:10):
So you’re teaching a curriculum in hopes of preparing them to go into college and

(00:06:15):
then eventually after that.

(00:06:17):
So what are the kids like?

(00:06:18):
Are they really interested in this or is it just another class?

(00:06:21):
It really depends on where they’re at and if they chose to take the class or not, right?

(00:06:27):
In Nevada,

(00:06:29):
we have a state requirement where every student has to take a half credit course

(00:06:34):
that is an introduction to computer science.

(00:06:37):
but then schools can have further computer science classes.

(00:06:42):
And we’re getting two new classes for career and technical education,

(00:06:47):
CTE,

(00:06:47):
where it’s going to be advanced computer science one,

(00:06:50):
advanced computer science two.

(00:06:52):
I am lucky enough to be at a magnet school where students apply to attend,

(00:06:57):
and then it’s a raffle and lottery system,

(00:07:00):
whether they

(00:07:00):
get in or not.

(00:07:01):
But once they’re at my school, they get to choose what they want to study.

(00:07:04):
So my students not only chose to attend my school,

(00:07:07):
but then they chose to take my program of study,

(00:07:10):
computer science,

(00:07:11):
for the four years that they’re there.

(00:07:13):
So I have a lot more buy-in from these students than I did.

(00:07:17):
Like last year, I was at a comprehensive school, which is just a regular neighborhood school.

(00:07:22):
And computer science was very much a dumping ground for

(00:07:25):
as it is through a lot of schools that students don’t necessarily elect to go into.

(00:07:31):
And so even there is much more disparity between the students who want to be there

(00:07:37):
and learn it and the students who are just dumped in and have no interest in it.

(00:07:41):
So it all very much depends.

(00:07:44):
And I’m very lucky with where I’m at.

(00:07:45):
Interesting.

(00:07:46):
So motivation should be pretty high then.

(00:07:47):
Yeah, in general.

(00:07:49):
So,

(00:07:49):
I mean,

(00:07:49):
do the kids realize that when you’re teaching them these tools of software,

(00:07:55):
do they realize that it’s a very liberating thing?

(00:07:59):
I mean, it’s just not information.

(00:08:01):
It’s something that they can do to create something else.

(00:08:06):
It’s a tool of creation.

(00:08:08):
Do they realize that distinction?

(00:08:10):
So I think…

(00:08:11):
What’s interesting, you’re talking about tools and creating software.

(00:08:15):
A lot of the computer science education that’s happening right now isn’t necessarily that.

(00:08:21):
You go into code.org is a huge provider and they have their own built-in IDE and

(00:08:30):
their own libraries and students don’t leave code.org.

(00:08:35):
So it becomes really challenging for them to make the connection between what

(00:08:39):
they’re learning in Code.org versus how that’s going to apply to the real world.

(00:08:44):
Same thing with any other of these, the canned curriculums that are really popular right now.

(00:08:50):
And so…

(00:08:51):
A lot of them don’t realize and make the connection that what they’re learning is a

(00:08:56):
powerful way of making things happen.

(00:08:58):
So that’s why I was saying earlier that I’m trying to find ways to actually make those connections.

(00:09:04):
We started using IntelliJ.

(00:09:07):
I taught them how to use Postman and we created a Spotify player.

(00:09:12):
that could actually control my Spotify being open on another page and allowing them

(00:09:18):
to navigate it from the software that they did develop themselves.

(00:09:22):
And that really started opening them up to seeing,

(00:09:25):
okay,

(00:09:25):
I can use Postman and these APIs to start developing tools beyond the text-based

(00:09:33):
input output that we had been developing and that is common in a lot of these

(00:09:39):
canned curriculum and canned IDEs.

(00:09:42):
Interesting.

(00:09:42):
Oh, that’s really interesting.

(00:09:44):
So they never leave the environment, so they don’t necessarily see the distinction.

(00:09:48):
So then how does Java fit into this?

(00:09:51):
Because Java is,

(00:09:52):
you mentioned JavaScript,

(00:09:53):
and obviously there’s,

(00:09:54):
you know,

(00:09:55):
I’m sure at that age you’re doing a lot of web development kind of thing.

(00:09:58):
And well,

(00:09:59):
Java is a different animal in terms of it’s a very,

(00:10:01):
very sophisticated piece of software,

(00:10:04):
tools,

(00:10:04):
and platform,

(00:10:05):
obviously.

(00:10:06):
And how does Java fit into your mix when you’re teaching?

(00:10:10):
Yeah.

(00:10:10):
So Java is actually a required language because we go into AP Computer Science A

(00:10:18):
from the college board so students can get college credit.

(00:10:21):
And so initially they’re most,

(00:10:25):
so JavaScript is not a required one and it’s open to any language for the AP

(00:10:31):
Computer Science Principles course.

(00:10:34):
and the half credit course that I mentioned.

(00:10:37):
But we find it’s better to use Java in more than just the one year of AP Computer

(00:10:44):
Science A because then students get more familiar with it.

(00:10:47):
They have a easier time to pass the exam when they take it.

(00:10:50):
But then,

(00:10:51):
like you said,

(00:10:51):
it’s number one or number two largest language and most used language in the world

(00:10:57):
and has such a huge community that it’s imperative that they know Java

(00:11:04):
if they want to go into development and continue in this career.

(00:11:07):
So my passion for and enthusiasm to teach Java really stems from all the

(00:11:13):
opportunities that it can provide them and the amazing community that I’ve experienced.

(00:11:19):
So what are the prerequisites to get into some of the courses?

(00:11:24):
What do they require to have previously taken in order to study computer science at that level?

(00:11:29):
It depends on the school.

(00:11:31):
Some schools will have a requirement that they took higher level math.

(00:11:36):
Math, okay.

(00:11:37):
Yeah, just the higher level math to get into it.

(00:11:40):
Meanwhile, other schools will not have any requirements.

(00:11:44):
And as I mentioned, just use it as somewhat of a dumping ground.

(00:11:47):
Generally,

(00:11:48):
it goes the half credit,

(00:11:50):
then AP computer science principles,

(00:11:53):
and then they could continue into AP computer science A and potentially advanced

(00:11:58):
studies if a school offers all of those.

(00:12:00):
But it very much depends on the school and the teachers.

(00:12:04):
Right.

(00:12:04):
The reason I ask is just because Java is not, depends on how you teach it, obviously.

(00:12:08):
I mean, it could be considered hard, but everyone’s telling me nowadays it’s easy, easier.

(00:12:14):
But one of the reasons it’s easier is the language has evolved substantially and

(00:12:20):
the tools have evolved substantially as well over the years.

(00:12:24):
And so things 15 years ago that people would have struggled over aren’t necessarily the case now.

(00:12:32):
Okay, so you mentioned a little bit about the community.

(00:12:35):
Obviously,

(00:12:37):
Java has a big global community,

(00:12:39):
and we were talking earlier,

(00:12:40):
which I want to talk about as well,

(00:12:41):
is that you were at Java 1 last year in Vegas in 2022.

(00:12:45):
Do the students realize the value of that community,

(00:12:50):
that it’s an open-source community,

(00:12:52):
the code is out there,

(00:12:53):
there are millions of developers all over the world?

(00:12:57):
that they can connect to.

(00:12:59):
And I’m just wondering,

(00:13:00):
are they participating or are they attempting or even thinking about participating

(00:13:05):
in the community even at that early stage?

(00:13:07):
I think that’s one of the challenges that I’ve been trying to get them to recognize.

(00:13:12):
I was very fortunate to not only be able to attend Java 1,

(00:13:16):
but also get a couple of tickets to provide to a couple of my students.

(00:13:21):
Oh, okay.

(00:13:23):
They loved it and were incredibly grateful for the opportunity as their first conference experience.

(00:13:31):
And after that point,

(00:13:32):
they talked about how welcoming the community was and how friendly and kind

(00:13:37):
everyone was.

(00:13:38):
But beyond that, there definitely is lacking in students’ understanding and recognition of that.

(00:13:47):
And I’m trying to share that with them.

(00:13:50):
But I get a lot of questions on, well, why not Python or why not this other language, right?

(00:13:56):
And so trying to share with them how valuable the Java community is in Java.

(00:14:01):
um everything you said getting the room to recognize it is a bit of a challenge but

(00:14:06):
it’s definitely one of my goals i i would imagine so because i mean i have to even

(00:14:11):
just keep reminding myself even in this conversation we’re talking about 17 years

(00:14:15):
old and 18 years old even even at the college level i remember way back at sun who

(00:14:20):
would do hiring and

(00:14:22):
This is a while ago, but we were oftentimes asked, these are kids who graduated from college.

(00:14:29):
Tell us about projects you did on the weekend.

(00:14:32):
Tell us about projects that you were hacking around with your friends that you published as open source.

(00:14:38):
Tell us about the communities that you contributed to.

(00:14:42):
And there were a few, certainly there were a few, but this is a while ago.

(00:14:47):
But I was surprised that there really weren’t that many.

(00:14:50):
And I would oftentimes explain to them that you have such an opportunity here since

(00:14:54):
all this code is out there under open licenses that you can connect to these

(00:14:59):
communities and build your portfolio as a developer slowly in school.

(00:15:04):
it’s the same thing for high school.

(00:15:06):
It’s just a little bit earlier.

(00:15:07):
And it’s hard for me to relate to a 17 year old at this point, which is why I want to talk to you.

(00:15:12):
Right.

(00:15:14):
Yeah.

(00:15:14):
So how, how do you solve that?

(00:15:16):
What kind of, what’s the conversation like when you’re talking about this, like in class?

(00:15:22):
For, can you restate, rephrase the question or restate it?

(00:15:25):
Like what’s it,

(00:15:26):
what’s it like,

(00:15:27):
but this is a sophisticated concept that you’re trying to get across to a young kid who,

(00:15:33):
that contributing to a global community is something that you know will help you

(00:15:36):
right how do you have conversations that are so big like java it’s so big it’s so

(00:15:43):
massive the community contributing to open source these are big and sophisticated

(00:15:48):
things how do you that you distill it down to the level of someone that age um who

(00:15:56):
can handle it basically and and i

(00:15:58):
guess that’s the skill of a teacher i can’t teach anything so i mean i guess that’s

(00:16:02):
the question how do you have these these really sophisticated conversations with

(00:16:07):
young people yeah um i’m very lucky like i said that i’m teaching juniors and

(00:16:12):
seniors so they can have those more conversations but i think for any age the idea

(00:16:18):
of just teamwork and collaboration it’s it’s

(00:16:22):
universal.

(00:16:23):
And so by explaining to them that we’re helping them see big problem,

(00:16:29):
there are huge problems in the world that would be impossible for any one or two

(00:16:34):
people to solve.

(00:16:36):
They can start recognizing the value of the teamwork.

(00:16:39):
And as I mentioned, I try to put my students in teams as well to solve the problems.

(00:16:44):
So they start seeing the value in the teamwork and learning from each other and

(00:16:49):
building on each other’s ideas.

(00:16:51):
And I think right there is the gateway to getting them to understand and recognize the value.

(00:16:57):
It might not be to the extent in getting them to recognize fully how big it is and

(00:17:04):
how valuable it is,

(00:17:05):
but it definitely opens the door to that understanding and recognition.

(00:17:10):
I hadn’t mentioned it previously,

(00:17:12):
but there’s in education,

(00:17:14):
there’s also another push to create simulated workplaces.

(00:17:20):
And so I try to, I’m trying to build my classroom as a simulated workplace as well.

(00:17:25):
So students start developing projects that they could be

(00:17:29):
To build a portfolio and like they would in real world developing projects.

(00:17:35):
And so when you mentioned the open source,

(00:17:38):
that actually ignited a big interest in my head and like,

(00:17:42):
oh,

(00:17:42):
that could be a great way for me,

(00:17:44):
not like a tool to use in teaching Java while also helping them build a portfolio.

(00:17:49):
portfolio and get real world experience,

(00:17:52):
if we could find some open source projects that they could explore and potentially

(00:17:57):
contribute to,

(00:17:58):
then that would be another incredible tool to get them to start recognizing that

(00:18:03):
while building a portfolio,

(00:18:05):
while preparing for the exams,

(00:18:07):
while preparing to go on to further education.

(00:18:10):
Absolutely.

(00:18:11):
I mean, GitHub is there, right?

(00:18:12):
I mean, years ago it wasn’t.

(00:18:14):
And so I can only imagine it would be a fantastic teaching tool.

(00:18:21):
But also,

(00:18:22):
once somebody sees the result,

(00:18:24):
and that’s why I’m so interested in software,

(00:18:26):
is that it’s a tool,

(00:18:28):
you know,

(00:18:28):
it’s sort of in general.

(00:18:30):
It’s not just knowledge.

(00:18:31):
I mean, I used to be in the construction business.

(00:18:33):
I know the value of tools.

(00:18:34):
You can’t do anything without a shovel, right?

(00:18:36):
You need a tool.

(00:18:37):
Yeah.

(00:18:38):
And it just is self-empowering, okay?

(00:18:42):
You’re able to use this knowledge to create something else, an income, jobs, careers, right?

(00:18:49):
Food, and also to change the world.

(00:18:53):
These technologies are…

(00:18:55):
are evolving so, so rapidly.

(00:18:58):
But one of the things I remember,

(00:19:00):
and this is older,

(00:19:01):
older people,

(00:19:02):
but I remember the open Solaris community at Sun.

(00:19:06):
I remember very,

(00:19:07):
but they were young developers at the time,

(00:19:09):
but they were out of school and they wanted to create a distribution of open Solaris.

(00:19:13):
This is in India.

(00:19:14):
And I said, well, I already know a group of guys in China who created a distribution.

(00:19:19):
And so I’m going to connect you guys.

(00:19:20):
And there’s some guys in Germany who they’re working on their own distribution of

(00:19:24):
open Solaris as well,

(00:19:25):
because the code is open and people want to create their own basically distribution.

(00:19:29):
cd you know i could like it you know cd with it you stick it in your computer and

(00:19:32):
it just runs right that was so long time ago so um and what the point is connecting

(00:19:39):
these groups so they’re trying to figure out how to do this how to solve this

(00:19:43):
problem and since everything is open they can talk to each other through open

(00:19:47):
communication channels and the code was open they can

(00:19:50):
share.

(00:19:50):
And they did.

(00:19:51):
They actually did.

(00:19:53):
And they developed relationships.

(00:19:54):
So I can only imagine.

(00:19:55):
I see these conversations.

(00:19:57):
Oh, really?

(00:19:58):
I can do that?

(00:19:58):
Yeah, yeah, absolutely.

(00:19:59):
Here’s his email.

(00:20:02):
You know enough English.

(00:20:03):
He knows enough English.

(00:20:04):
It’s broken on both sides, but you can muddle through.

(00:20:07):
But the point is, their eyes lit up like Christmas trees.

(00:20:11):
They were really excited about that concept of collaborating with somebody who’s already done it.

(00:20:16):
and or is or is in the process of doing it and this is oh he’s just you know one

(00:20:21):
guy says oh i don’t know what to ask and he says i’ll ask the question okay i’ll

(00:20:25):
introduce you i’ll ask the question and you can just you know your engineers you

(00:20:29):
can you can you know take it from there and they and it was great you know so i can

(00:20:33):
only imagine that a student would also have a similar experience online and it’s

(00:20:40):
out there the code is out there it’s open source you know and it’d be for everyone

(00:20:44):
to see

(00:20:45):
Yeah, for sure.

(00:20:46):
I mentioned it depends on the student, depends on their interest level.

(00:20:50):
But for those students who see the potential,

(00:20:54):
see their future in it and that this is what they want to do,

(00:20:57):
then it definitely opens up the doors.

(00:20:59):
And I’ve seen the spark in my students’ eyes just on the little pretty basic things

(00:21:06):
that I’ve been able to get them doing so far with IntelliJ and APIs.

(00:21:11):
I’m just connecting them to those tools that help them take it to the next level.

(00:21:17):
They have that spark and it’s incredible.

(00:21:20):
Tell me a little bit about Java.

(00:21:22):
You mentioned that JavaScript earlier and people asking about Python and all these different languages.

(00:21:28):
I mean,

(00:21:28):
there’s lots of languages,

(00:21:29):
there’s lots of tools,

(00:21:31):
there’s lots of,

(00:21:31):
you mentioned,

(00:21:33):
basically platforms out there.

(00:21:35):
that allow for the teaching of programming in one way or another.

(00:21:39):
Why specifically Java?

(00:21:40):
What’s so interesting about it from a teaching perspective that it solves problems

(00:21:47):
for you as a teacher or the school district?

(00:21:49):
In other words, why are they teaching Java?

(00:21:51):
Yeah, I think for the school district, it goes back to this is what college boards set for the AP exam.

(00:22:01):
And that goes back into the 90s where when they

(00:22:04):
created the CSA exam.

(00:22:05):
And they had at one point CSA B,

(00:22:08):
which was even more in depth than CSA and aligned to a second college course.

(00:22:14):
But what’s really ignited my passion,

(00:22:17):
like you said,

(00:22:18):
when you did it,

(00:22:19):
then you’ve always thought of it as really complicated and almost difficult to learn.

(00:22:24):
And that was always my experience or my

(00:22:27):
thought of computer science when I was in school and why I didn’t go and try to

(00:22:32):
teach myself when I was in high school.

(00:22:34):
But just getting to experience it in the, like, here I am, I have to teach this, so I have to learn it.

(00:22:42):
Then, and I have someone who I can ask questions to.

(00:22:46):
It was very, it was pretty accessible to myself.

(00:22:50):
And

(00:22:51):
only only a step up from what i had already been doing and i’ve just been able to

(00:22:56):
see how the object-oriented programming and how how many tools there are in these

(00:23:03):
java standard library how that just opens it up pretty easily to solve a lot of

(00:23:09):
problems and solve a lot of challenges it’s been yeah it’s just been a lot of fun

(00:23:15):
and hasn’t been too difficult so that it’s been

(00:23:19):
Yeah, generally pretty accessible to both myself and students.

(00:23:23):
So how much of Java can you possibly teach at that level?

(00:23:30):
So that’s where I’m trying to explore.

(00:23:34):
A couple of my students this past year gave me some feedback.

(00:23:41):
It seemed a lot of your lessons were experimental.

(00:23:45):
Yeah, that’s exactly right.

(00:23:47):
I’m experimenting and trying to see my computer science education here starting so early.

(00:23:54):
Students are getting introduced to the concepts in elementary school.

(00:23:57):
Really?

(00:23:59):
Yeah.

(00:23:59):
And JavaScript, am I coding games in sixth grade?

(00:24:04):
And that’s a high school level course.

(00:24:06):
And so my view is there should be no reason that a student starts computer science

(00:24:13):
in elementary school,

(00:24:14):
but still has to go through college to get the same degree,

(00:24:18):
to get the same job that someone who had never touched computer science or Java or

(00:24:23):
anything before entering college would.

(00:24:26):
Like,

(00:24:26):
why would,

(00:24:27):
why are they going through elementary school or high school if the value just comes

(00:24:31):
in that college education?

(00:24:33):
And so if we have them from elementary school through high school,

(00:24:37):
I’ve seen a lot of boot camps where people are promising come for these couple of

(00:24:42):
months and we’ll get you a job in development.

(00:24:45):
If they can get someone a job in development after just those couple of months,

(00:24:50):
we should be able to get them to that point and beyond in all these years that we have them.

(00:24:56):
So I’m really trying to find where do we,

(00:24:59):
like,

(00:25:00):
what is it that we need to be teaching to take them to that next level?

(00:25:03):
Because yeah, it’s great if they can pass the APCSA exam.

(00:25:07):
And I had

(00:25:08):
People at Java 1 tell me that if a student can pass that exam,

(00:25:12):
then they would hire them just based off of that.

(00:25:16):
But we can take them so much further because a lot of these students are so interested and motivated.

(00:25:23):
In Las Vegas, I mean, throughout the world, but in Las Vegas, we have a really…

(00:25:30):
interesting community where there could be really wealthy people across the street

(00:25:37):
from people living in just extreme poverty.

(00:25:40):
And we’re such a tourist destination that students see the allure of going to the

(00:25:45):
casinos where they don’t need an education and they can get a decent job,

(00:25:49):
but there’s no job security there.

(00:25:52):
And when COVID hit our community, just like it crashed.

(00:25:56):
As did so many.

(00:25:58):
And so there’s a big push to diversify our economy.

(00:26:03):
And that’s going to come through providing these students with the education they need to get these jobs.

(00:26:09):
But because of the low socioeconomic positions that so many of these students and their families are in,

(00:26:14):
They can’t wait to finish college before entering the workforce.

(00:26:19):
So I need to give them the skills they need to get a job straight out of high school,

(00:26:24):
and then they can continue working while getting their education to go deeper and

(00:26:29):
get those higher level skills that they need to really become full developers and

(00:26:35):
as you said, go into physics and things like that as they’re needed.

(00:26:39):
Yeah, I guess it makes sense.

(00:26:41):
I mean,

(00:26:41):
the question I asked originally,

(00:26:43):
I’m kind of groping my way through this as I understand the issue.

(00:26:48):
And I mean, we teach language for years and years and years and years.

(00:26:52):
We teach biology for years and years and years.

(00:26:55):
I mean, starting through high school, junior high, obviously even earlier and then on up through college.

(00:27:03):
There’s no reason why computer science can’t be broken apart and taught

(00:27:08):
sequentially at these different levels.

(00:27:11):
It’s just something relatively new compared to language or history or something like that.

(00:27:16):
You mentioned something that interested me a couple of times here, programming versus computer science.

(00:27:22):
There seems to be a little bit of a tension,

(00:27:26):
not that it’s negative,

(00:27:27):
but a little bit of,

(00:27:28):
you know,

(00:27:29):
there’s this need to,

(00:27:30):
at some point,

(00:27:31):
relatively quickly,

(00:27:32):
depending on your situation,

(00:27:33):
earn a living,

(00:27:34):
right?

(00:27:34):
Using your skills to earn a living versus taking more advanced academic classes to

(00:27:41):
get more of a computer science degree.

(00:27:43):
There’s a lot more math, a lot more physics, a lot more.

(00:27:46):
There’s just a lot of everything more in a CS degree versus just programming, right?

(00:27:51):
But that’s a college.

(00:27:52):
We’re talking about some of these terms even in high school.

(00:27:55):
What is the distinction that you see in terms of programming?

(00:27:59):
How do you explain to a student,

(00:28:00):
explain it to me because I don’t know the difference at that level,

(00:28:03):
the distinction?

(00:28:04):
What do you mean by computer science versus programming?

(00:28:07):
So there’s a tension even here in education right now where the idea of computer

(00:28:14):
science is the concepts of problem solving and troubleshooting,

(00:28:21):
debugging,

(00:28:22):
things like that,

(00:28:22):
that are universal among any language.

(00:28:26):
and language agnostic.

(00:28:28):
And so one of our tests, like the computer science principles test, it is only language agnostics.

(00:28:35):
And it just tests students on whether they can follow the logic of the loop.

(00:28:41):
They can follow the logic of conditional condition statements, things like that.

(00:28:47):
Versus programming is actually writing the code with using a language,

(00:28:52):
using the tools provided and building a program.

(00:28:56):
Is one dependent on the other?

(00:28:57):
In other words, do they start off by programming and then get into computer science?

(00:29:02):
Or are some interested more in computer science and not necessarily so much in

(00:29:09):
doing a lot of keying in things,

(00:29:11):
programming,

(00:29:12):
writing the actual code?

(00:29:13):
Yeah, they’re definitely starting off with the computer science and the concepts.

(00:29:19):
I’m a first, right?

(00:29:21):
I’m a student in elementary school.

(00:29:24):
can understand the concept of yes or no.

(00:29:29):
If I want, hey, do I want to do this?

(00:29:31):
Yes or no?

(00:29:32):
Okay, then do this.

(00:29:34):
And so then they go into different coding IDEs,

(00:29:39):
but they’re not coding as much as they’re just blocks that say,

(00:29:43):
if this,

(00:29:44):
then do this.

(00:29:46):
And they’ll have blocks that say jump or they’ll have blocks that say run or things

(00:29:53):
like that,

(00:29:54):
turn left,

(00:29:54):
turn right.

(00:29:55):
And so that’s how computer science is being introduced.

(00:29:59):
And they’re getting familiar with the concepts and starting to learn those.

(00:30:03):
And then once they get into,

(00:30:05):
depending on what school they’re at,

(00:30:07):
sixth grade,

(00:30:08):
eighth grade,

(00:30:09):
ninth grade,

(00:30:10):
there are the classes that introduce them to an actual programming language,

(00:30:14):
JavaScript,

(00:30:15):
Python,

(00:30:16):
Java.

(00:30:17):
are the primary ones that they are introduced to.

(00:30:20):
Interesting.

(00:30:21):
Okay.

(00:30:22):
All right.

(00:30:22):
So where do we go from here?

(00:30:24):
I mean, what are some of the challenges you see right now in your job?

(00:30:29):
Because your job is to prepare these kids primarily for college.

(00:30:33):
Or actually, I should ask the question, what is your primary goal in terms of your situation?

(00:30:39):
Is it college or is it to get a job right out of high school?

(00:30:42):
So my position is a career in technical education position.

(00:30:47):
And the goal is definitely to get them a job right out of high school.

(00:30:53):
The goal that I pitch to students and that I hope becomes reality is you get a job

(00:30:58):
out of high school into a starting position as a programmer or whatever it is that

(00:31:03):
they need.

(00:31:04):
And then hopefully the employer is incentivized to

(00:31:09):
help those students pay for college or even pay for their tuition to further those skills in college.

(00:31:15):
That way they don’t need to take on all this debt that so many people are receiving.

(00:31:19):
That way they don’t need those burdens on their families and they can support their

(00:31:23):
family and themselves as they go through it.

(00:31:25):
Yeah, no, the debt is a real serious issue for sure.

(00:31:29):
And so…

(00:31:31):
Yeah,

(00:31:31):
so based on everything that you’ve said so far and the types of questions that I’m asking,

(00:31:36):
are you hopeful?

(00:31:38):
You sound very passionate.

(00:31:39):
You certainly seem very interested in the technology and in the students.

(00:31:43):
Are you hopeful for the direction of computer science at the high school level

(00:31:50):
nationally and also locally?

(00:31:52):
Yeah, I am hopeful for it.

(00:31:53):
I know it’s definitely needed to be a focus of the state.

(00:32:00):
to make it happen.

(00:32:02):
So I can’t speak for nationally,

(00:32:04):
but it’s definitely a focus here in Nevada and throughout a good amount of states.

(00:32:10):
A lot of teachers who have talked to in Nevada in our state leadership, they’ve

(00:32:16):
Talked about how they’ve gone to different computer science and programming

(00:32:20):
education conferences around the country.

(00:32:23):
And Nevada is definitely one of, if not the leading state for computer science education right now.

(00:32:32):
And so it’s really interesting and a cool place to be.

(00:32:36):
You asked previously, where do we go from here and what challenges do I face with it?

(00:32:43):
The biggest challenge,

(00:32:43):
I think,

(00:32:44):
is just knowing and learning and keeping up with what is it that students need to

(00:32:50):
be learning.

(00:32:51):
I have got this set curriculums for them to pass the AP CSA exam, as I’ve mentioned.

(00:32:57):
But beyond that, where I’m trying and I’m piecing together, where do I need to take the students?

(00:33:05):
But I didn’t come from a development background.

(00:33:10):
And most of the teachers teaching computer science, they also didn’t.

(00:33:14):
And we have such a huge shortage of teachers.

(00:33:17):
It’s really difficult to fill computer science positions.

(00:33:20):
And so we need to be able to have curriculums and trainings for these teachers who

(00:33:26):
don’t have backgrounds in computer science so that they can teach it,

(00:33:29):
but without taking away what is actually going to get the students to where they

(00:33:33):
need to go.

(00:33:34):
It needs to be something that the teachers can teach and learn and guide the

(00:33:39):
students on,

(00:33:40):
but not the basic just only coding code.org or whichever IDE it is.

(00:33:47):
They need to take it beyond.

(00:33:49):
So my challenge is learning where,

(00:33:52):
what exactly they need to be learning to be career ready once they’ve graduated

(00:33:57):
high school.

(00:33:58):
And Java one was really helpful making connections to start finding out where they need to go.

(00:34:04):
But it’s been really unclear also what the pipeline looks like across industry,

(00:34:08):
what the best pipeline for development would be for the students to be learning.

(00:34:13):
And so.

(00:34:14):
If any listeners out there want to help out and get connected,

(00:34:17):
then I’d love to have industry advisors to help guide us and help us figure out

(00:34:23):
what exactly they need to be learning to best support the school.

(00:34:28):
So by pipeline,

(00:34:29):
you mean what you’re teaching in high school to get them either a job right away or

(00:34:34):
into college?

(00:34:36):
That and just,

(00:34:38):
okay,

(00:34:40):
they know how to write code in IntelliJ and write a program,

(00:34:44):
but they know how to use JavaFX and Scene Builder to build something there.

(00:34:49):
But what is the pipeline there?

(00:34:51):
look like an industry to make sure that the code is safe and secure and how do they

(00:34:57):
start like incorporating databases or am i getting it to be production ready

(00:35:03):
something that they could even an android studio put in the app store and

(00:35:08):
that go to potential employers say, here’s what I created.

(00:35:12):
And my fear is that I might be guiding them in some way that they put it out there

(00:35:18):
and it’s completely unsafe or secure because I don’t have all the current best practices.

(00:35:25):
And that’s my challenge right now.

(00:35:27):
Interesting.

(00:35:27):
And you’re highly motivated.

(00:35:29):
What about the, you said there’s a shortage of teachers.

(00:35:33):
So there’s a shortage and presumably there’s some teachers who aren’t as motivated as you are.

(00:35:39):
And so, you know, there’s a shortage.

(00:35:41):
So that means sometimes you’re going to have to be a teacher who’s going to be

(00:35:44):
teaching a class that might not be as skilled as you are in terms of

(00:35:48):
self-motivation to learn.

(00:35:50):
Right.

(00:35:50):
Yeah,

(00:35:51):
so that’s definitely like and along with the teacher aspect,

(00:35:55):
there’s the gap in student motivation with the students who choose to take it and

(00:36:01):
the students who are just there.

(00:36:02):
And my way of working to solve that is one,

(00:36:08):
figuring out what the best route is and the best practices with my students who do

(00:36:12):
want to do it.

(00:36:14):
But once we figured that out in my setting,

(00:36:17):
how can I then make it so easy for other teachers to follow and give students the

(00:36:24):
freedom to do what interests them with it that they become invested in it?

(00:36:29):
If I tell the students, OK, you everyone has to build this project.

(00:36:34):
then there’s going to be some students who are like,

(00:36:36):
oh,

(00:36:36):
I really like this,

(00:36:37):
but other students who are completely not interested at all.

(00:36:41):
But if we say,

(00:36:42):
all right,

(00:36:42):
here’s how you use this tool,

(00:36:44):
or here’s how you do this thing,

(00:36:46):
then say,

(00:36:47):
all right,

(00:36:47):
now figure out what is going to interest you and allow them to build projects that

(00:36:53):
they are interested in.

(00:36:54):
Then that starts bridging that gap and bringing the students who weren’t interested

(00:36:59):
in bringing them in and building that interest.

(00:37:01):
That’s really interesting.

(00:37:03):
And you’re focusing these projects on group work?

(00:37:06):
Yeah.

(00:37:07):
Or some level of it has to be working on a team?

(00:37:10):
Yeah.

(00:37:12):
So some of the projects we did this past year, we built a reservation system.

(00:37:18):
And I let students decide whether it was for a restaurant, a movie theater, a hotel, things like that.

(00:37:23):
We then learned how to use persistent data to store the reservations and

(00:37:28):
And we learned how to use JavaFX and Scene Builder to build the GUI for the

(00:37:33):
customers to create their reservations.

(00:37:38):
And I had every student had to build their own,

(00:37:41):
but I allowed the students to collaborate and help each other on how to solve the

(00:37:47):
problems that they came across.

(00:37:50):
And so not all students have the same problems,

(00:37:52):
but most of the students were able to then collaborate and problem solve together.

(00:37:58):
One of the other programs that we did was

(00:38:02):
As we were learning the persistent data,

(00:38:04):
then we learned how to create a calculator that would have the persistent data and

(00:38:09):
could reload and show the history as well.

(00:38:11):
And on that one,

(00:38:12):
I allowed students to work together in teams of two or three,

(00:38:16):
and that way they could learn from each other and support each other.

(00:38:20):
That’s really good to hear,

(00:38:21):
because I remember when I was learning C,

(00:38:24):
it was just me,

(00:38:28):
an empty screen,

(00:38:29):
and a book in front of me,

(00:38:30):
and that was it.

(00:38:33):
That’s a rough way to learn.

(00:38:35):
Oh, my goodness.

(00:38:36):
Yeah.

(00:38:37):
Long time ago.

(00:38:38):
All right, Josiah.

(00:38:39):
It was really great talking to you.

(00:38:41):
Any last words?

(00:38:42):
Did I forget to ask you anything really important?

(00:38:44):
Probably anything that we should be talking about, but we haven’t.

(00:38:49):
I think we touched on the points that I thought of prior to coming.

(00:38:56):
And you had some great questions as well.

(00:38:58):
So thank you for having me and thank you to all your listeners.

(00:39:03):
Yeah, I think we’re good.

(00:39:04):
Cool.

(00:39:05):
Excellent.

(00:39:05):
All right.

(00:39:05):
Well, I hope to meet you at a conference.

(00:39:07):
You were at Java 1 in Las Vegas because that’s where you live.

(00:39:11):
I was there too.

(00:39:12):
I didn’t know you then, but…

(00:39:15):
Maybe we’ll meet again.

(00:39:17):
I loved Vegas.

(00:39:18):
It was my first time to Vegas, by the way.

(00:39:21):
I thought it was surreal.

(00:39:23):
No, actually, it was the second time.

(00:39:24):
But the first time was 30 years ago.

(00:39:25):
I was at 3Com.

(00:39:27):
But it was a really, really quick in and out.

(00:39:30):
And it was 30 years ago.

(00:39:32):
But yeah, I thought it was really cool.

(00:39:34):
It was a really cool place.

(00:39:35):
And so I will hope to meet you at a conference somewhere.

(00:39:40):
And we can talk more about this.

(00:39:42):
That’d be great.

(00:39:43):
I look forward to it.

(00:39:44):
Thank you, Jim.

(00:39:45):
Talk to you soon.