Learning, Coaching, and Coding with Jack Harrhy | Coach's Insights

Learning, Coaching, and Coding with Jack Harrhy | Coach's Insights

 m

I’m Jack Harrhy, a software developer working locally here in St. John’s for C-CORE, working on super neat web-based geospatial software. 

I originally grew up in Wales, but have lived in Newfoundland for the majority of my life.

How did you get into programming, and what attracts you to it?

If you go back far enough, honestly, being into Lego was the catalyst, and just overall being curious about technology beyond just using it for a given task, actually wanting to understand how things worked under the hood felt like something fun to do.

While looking into making video games as a young teenager, I instead went down the route of learning basic web development using free online resources, and over the years got good enough to already be competent before I entered a university setting, and started interacting with the local tech community in St. John’s before leaving High School.

Why did you decide to become a coach in Get Coding? What does coaching mean to you?

I had great mentors while I was improving my own programming skills found within the local dev community, so being able to give back within a structured setting and see others flourish is very rewarding.

Coaching to me is a chance to live vicariously through a beginner and experience the joys of gaining the tools required to build fun and useful websites and applications, and eventually see most of my students break their way into tech and enjoy a fulfilling career.

Is there something in your coaching that you consider unique or especially important to share with students or other coaches?

Finding projects to work on that are meaningful to you, which usually have no relation to technology. 

This could be something related to a sport you play/watch, or a card game you’re really into you’d like to try building yourself.  It makes wanting to spend time on the project less of a grind and more of a hobby, and during explaining the project to a potential employer, you will likely be much more passionate about it.Also, everyone learns differently, so its ok if you find some resources frustrating / non substantial. 

Some people like sitting down for a long video, others might want to do some interactive problems, or jump right into the docs.

What changes in the programming field are you most excited about right now?

AI is exciting, spooky for reasons of job security obviously, but I have already integrated AI into my daily work via GitHub Copilot, and know most of my other coworkers have too.

How have you evolved your coaching methods since starting at Get Coding?

I would like to say so yes, I’ve found more repeatable patterns to follow with different students, vs. being a bit more freeform at the start.

Do you use any techniques to maintain students' motivation?

Ensuring projects are fun is an obvious and often used tactic of mine and many coaches I assume.

How do you manage a student's workload?

I use a combination of Notion for session notes / project planning, and GitHub issues for specific tasks once a project is more defined and started.

Are there any things that you have learned while being a coach that you applied to your regular work life?

Coaching has helped in increasing my teaching skills in general, so in talking to junior technical/non-technical people at work, I feel better in assisting them than before.

What technical skills do you consider most important for beginner programmers?

The ability to hit a wall, but spend enough time thinking about the wall to eventually knock it down, or know when you should reach out for help in knocking down said wall.

I’d rather students shoot me a message to unblock themselves during the week than for progress to slow down between sessions.

Are soft skills, like communication and teamwork, important in programming? 

Maybe not in the act of sitting in front of a programming window, but in every other aspect (which I’d argue is most of the job), it's a crucial skill.

What is your perspective on the significance of grasping programming fundamentals in comparison to mastering a particular technology?

I’m biased as a generalist myself, but I think without the fundamentals across the board, mastering one piece of technology can be limiting.

Are there any new technologies or tools you strongly recommend students explore?

While not new, with every student I have had, I try to train the idea that a link to the MDN Web Docs by Mozilla is worth 10x any other link, especially these days with lots of AI-fillled nonsense sites filling up the search.

What role does community and networking play in a programmer’s professional growth?

Community is the best way to grow skills outside of a work environment, since you have the ability to hear about the tools and technologies outside of what you use.

Networking is how I personally have found all of my positions, so as far as getting into the industry and pivoting around it, I think its also crucial as well.

In your opinion, what is the role of coaches' feedback in the learning process of programming?

Ensuring the areas a student is lacking in is brought up earlier rather than later, so there’s always a goal of things to be working on.

What is the best advice you would give to students starting their journey in programming?

Even if you have yet to be accepted into a program, just go try and build stuff.  The amount of resources online to get you started without interacting with others is crazy.

Are there common mistakes you often see among beginner programmers, and how can they be avoided?

Tutorials are great, but if you are following a tutorial directly as your ‘project’, it has a high chance of not really in the end feeling like your project, since you were shown how to build each step of it by someone else.

Not saying don’t use tutorials, just only use for getting the grasp of programming at the start of your journey / taking parts of an unrelated tutorial to your project, and integrating it into your project.

How can students stay up-to-date with the latest trends in the world of programming, can you recommend some sites, channels or other sources of knowledge?

Local community groups have Slacks which people post articles to sometimes, and the classic news.ycombinator.com for general software-adjacent news.

About Get Coding

Get Coding trains people to become software developers by building real-life projects with the most in demand skills, while being coached, one-on-one, with software developers from local tech companies. Students learn on their own time, making the program accessible even to people with a full-time job, family or both.