From Mentee to Mentor: Singing the Kevin Blues

Kevin Blues is a former Lighthouse Labs student, turned mentor for our Web Development Bootcamp! Kevin is passionate about programming and loves to spread his coding knowledge to the next generation of Junior Developers. Take a read and learn a little more about what it's like to both mentor and be mentored as a coding bootcamp student.

Tell us about yourself, Kevin!

I'm Kevin Blues and I've been into computers my whole life. At first, just as a
way to play video games. Later, I wondered how video games were made and how
all of the lines of code ended up producing something so dynamic and complex. As time went on, I pursued other studies but always came back to programming.

I ended up studying at BCIT part-time, learning to use Java, C, C++, C# and the
basics of HTML, JavaScript and jQuery. I ended up becoming a Linux junkie on my
own time, learning to use Ubuntu and Debian, as well as teaching myself to use
Python. I also learned about team communication, agile with scrum, database
design and software development in general.

What's your background, and how did you get into the tech industry?

As much work as I did in my studies, it still seemed like there was no way for
me to break into the tech industry. Everywhere I went told me that if I didn't
have a Bachelor's of Computer Science, that I couldn't even get entry-level work
anywhere, which was ridiculous, since a solid chunk of developers from the last 30
years were basically self-taught.

I found out about Lighthouse Labs from The HTML500, an event for anyone to come
learn the basics of HTML to create a portfolio site. Every mentor I spoke to there
described how they were able to get into the workforce shortly after the full-time
bootcamp and gave me tips on how to improve myself as a developer in the meantime.

The bootcamp itself was a ridiculous amount of work, but there were ample opportunities
to network and push myself to be better. The best part for me was talking to
everyone about code and building cool things. That had been a significant part of
my life for the previous few years, where I constantly had game designs in my head
and kept talking my co-workers ears off about programming and building things.
Even the mentors were stoked to talk about anything tech, so you could start with
an idea and learn how to start putting it into motion.

The bootcamp itself was a ridiculous amount of work, but there were ample opportunities
to network and push myself to be better.

Since graduating the bootcamp, I've been working full-time at Thinkific Labs Inc
as a Web Developer. I'm happy to report that I'm still there and I love my work.
I was actually worried that the career I'd studied for the last 4 years was going
to be something that I'd hate, but that couldn't be further from the truth.

Why you decided to come mentor for Lighthouse Labs?

Since before the bootcamp, I loooooooooooooved talking about tech and trying to
get people more interested about how their computers and devices worked. I loved
solving problems and helping show people how to prevent/solve them in the future.
I made it clear throughout the bootcamp (I'm sure Don and Rosy remember well) that
I wanted to pass on what I've learned about Computer Science. Anytime my cohort-mates
(or mentors) had questions, I would jump in and try to answer and help out. It
actually got to the point that some of my cohort-mates made a tool to make asking
me about stuff easier: Call Kevin.

As soon as I got the opportunity to mentor, I dove on it as fast as I could.

What is your mentorship philosophy?

The most important thing for me is to teach WHY. It's one thing to know how
code works, it's another thing completely to know why to use it (or not).

One of my favourite quotes goes like this:

The great thing about programming is that there's 1000 ways to do the same thing. The bad thing about programming is that there's 1000 ways to do the same thing.

There's so many ways to solve a problem, but the most important thing is that
a programmer chooses the best solution for the situation. Sometimes it needs to
be the fastest running solution. Others it needs to be the most readable or
the most easily swapped-out for later. The most common though, is the one that
can be finished the fastest.

There are many more ways to solve a given problem, but it's all about why you're
solving it. Knowing why we use different tools and techniques lets a coder make
the best possible decisions.

What interests you about mentoring?

The thing that interests me most about mentoring is passing on my knowledge,
experience and enthusiasm about computers and problem-solving. At first, it's so
hard to see how to solve these problems, but then (seemingly magically at first)
the problem is broken down into smaller and smaller pieces until it's solvable.

This way of thinking is very empowering, since it's how we humans have been able
to travel to space and back, or connect the greater part of the world as a network.
Teaching people to think this way means we can keep pushing technology and science
to do even more amazing things.

What are some best practices you follow as a programming mentor?

Make sure the student reads the error messages and knows how to decode them.

Share resources that are relevant to what they're learning.

Don't solve the problem for them at first. Talk through the problem and start at the beginning (or ending), breaking things down just in english.

Help implement the first part and get them to continue.

If they look like they're burned out, convince them to take a break, whether it be just some impromptu foosball or if it's late, getting them to get a proper night's sleep. Having time away from code helps immensely.

If they're still hitting roadblocks, keep in mind they might not even know what's POSSIBLE with code yet. It takes a lot to comprehend a totally different way of thinking. Examples are still a very important foundation. Sometimes, it's okay to solve a problem that's very close to what they're doing, or if what they're trying to do is relatively small, work through it and help them solve it through to the end. They'll pick up some of your coding style, which resources you use and if you talk enough, the way you think about the problem.

What you enjoy the most about being a mentor, what you hate about being a mentor?

Enjoy:

Talking about code all the time

Seeing the progression from the first to last day. seriously, it's astounding

Seeing the moment where things just 'click'

Being in the home-away-from-home that is LHL

Impromptu foosball breaks when students get frustrated

Hate:

When you know a student hasn't been giving their work enough time/effort, so the code is sloppy and it's done just to be finished. This is a skill-based industry, so it's important to show that you're willing to do it right. Every assignment should be something else to show on a resume!

How has your experience being a Lighthouse Labs student impacted your mentorship style?

Coming from being a student keeps things in perspective. Some students coming into
the full-time program have barely touched the material beforehand, sometimes only
in the prep-course material. This means that they're learning what's even possible
with code, as well as coming to terms with a whole new way of thinking. I try to it keep down-to-earth and stay very positive.

Kevin's cohort on day one of Bootcamp.

Every student that's
made it into the program has the capability to get through it and into the industry,
as long as they give it their all. You can see people create amazing things, even from humble
computer beginnings. That said, banging your head against the wall for hours
helps nobody. Breaks are the most wonderful thing for solving problems. The
subconscious brain can come up with some pretty amazing solutions if you give it
space.

How do you feel about Lighthouse's approach to mentorship, both as a former bootcamp student and as a mentor?

I like how open and hands-on the mentors and teachers are. In fact,
looking back there's a big push to the students to use the mentors and teachers
as resources to succeed as much as possible.

Mentors and teachers can inspire others to build off of what's out there. It's always cool to see people share their current projects and toys.

Any time anyone wants to take their lessons further, there's a myriad of techniques and technologies that everyone
wants to show. Mentors and teachers can inspire others to build off
of what's out there. It's always cool to see people share their current projects
and toys.

What do you enjoy about the Lighthouse education team?

I'm quite a shy person, so it was hard for me to ask for help during the program.
As soon as I got help for the first time though, I knew I didn't need to worry
about asking anymore. Everyone I've worked with and have been helped by has been super
relaxed and immediately willing to help. Sometimes people can try too hard to
bring in their favourite technology to help out, but programming is very
opinionated, so it's those debates are natural.

What do you find rewarding as a mentor?

My favourite thing is probably when other people
start listening in when I'm talking to a student, whether it be other mentors or
students, and they look surprised and say, "Oh wow, I didn't know that!". It's
always funny what people can pick up just by osmosis.

Otherwise, the look on a person's face when they've been fighting a problem for
a while and then it all just 'clicks'. It all makes sense, whether they feel
stupid at first for not seeing it or feel like a genius for solving the problem.
It's always fun to share in the excitement and egg them forward.

Why do you think it's important to mentor the next generation of Junior Developers?

As tech becomes more relevant in our lives, we have a responsibility to understand
what we're really doing. A knowledge and respect for the technology that powers
our world is required to move forward any further, so educating more developers
is very important. The whole team at Lighthouse Labs is dedicated to such a cause
and everyone there is excited to work towards such a future.

As I proceed along the path of a developer, I feel empowered by everyone who's
helped me and everyone I've helped. It's really a community that Lighthouse Labs
is developing and it's one that I want to remain a part of.