Meet The Champion: March 2021

Sunday, May 30, 2021| Tags: Clojure, Lua, Python, Perl, Raku

Get to know about Tyler Wardhaugh

Welcome to the monthly series Meet The Champion.

Last month we spoke to Aaron Smith, the winner of April 2021.

Today we are talking to Tyler Wardhaugh, the winner of March 2021 of The Weekly Challenge. I hope you are going to enjoy the interview.

Mohammad: Tell us about your technical background?

Tyler: I began my career doing web development in the early ’90s. My first programming job was writing Perl CGI scripts and doing minor system administration tasks. In university and later in my career, I expanded to other languages, such as Bash shell, PHP, Python, Lua, CLIPS, Common Lisp, Java, and JavaScript. For hobbies and personal projects I taught myself Clojure. My interests include Un*x tooling, databases, and functional programming.

Mohammad: Your choice of languages are Clojure, Lua and Python so far. Have you ever attempted Perl/Raku before?

Tyler: I have not done a Weekly Challenge in either language, but I suspect I will be submitting a Perl solution soon. I use coding challenges to practice languages that I don’t use much at work, and since I was writing so much Perl at my last job I wanted to branch out when it came to PWC. However, my new job is mostly Python, so I will probably have an itch to write some Perl again shortly. I have not yet tried Raku, but I often read the Raku solutions offered by others, and may give it a go soon as well.

Mohammad: How did you come to know about The Weekly Challenge?

Tyler: I have a ‘Perl/Raku’ list on Twitter, where I follow all sorts of Perl and Raku people (both programmers who often tweet about those languages and various official and unofficial announcement accounts). I kept seeing the Perl Weekly Challenge being discussed and it looked like a lot of fun!

Mohammad: What do you like the most about The Weekly Challenge?

Tyler: There are so many things I like about it. As a developer, I love solving puzzles and thinking about different ways to approach the problems, which are often different for different languages. For example, Clojure is very much a library language, since it runs on the JVM and has access to the entire Java ecosystem. I often reach for matrix libraries, math libraries, etc. in my Clojure submissions. Lua is more of a minimalist/bare-bones language (as opposed to Python, which is known as a “batteries included” language), so when I develop solutions for it I frequently roll my own.

As a lifetime learner, I really enjoy reading others’ solutions and blog posts.

Mohammad: How much time you dedicate every week to The Weekly Challenge?

Tyler: It varies, but usually at least 1 hour on my solutions and 1 hour reading blogs and others’ solutions throughout the week. I also read the recaps and reviews as they come out.

My typical approach is to try the challenges on my own, but if I am pressed for time I will sometimes search for the algorithm and implement it in my submission.

Mohammad: Any suggestions to make guest contributors like you feel more welcome?

Tyler: I think you already do a lot to make guest contributors welcome! But if someone has the time and inclination, I would love to see a “guest contribution review” to sit alongside the Perl and Raku ones.

Mohammad: What do you suggest someone just started The Weekly Challenge?

Tyler: As I mentioned in a previous answer, my approach is often dependent on the language I use, but also my own learning goals. For example, Clojure has access to the Java ecosystem and it is very much a library language, so I will typically use libraries there. Lua is minimalist, and there I will “hand-roll” solutions and avoid libraries. For Python, which markets itself as a batteries-included language, typically I will stick to its standard library, but occasionally I will reach for NumPy or Pandas.

I have also selected libraries or particular styles in order to learn something new. For example, I solved Challenge #81 using LPeg in Lua so that I could learn it. I highly encourage doing things like this from time to time to expand one’s horizons.

Mohammad: Anything else you would to like to share with us?

Tyler: I am very grateful for this corner of the Perl and Raku communities.

I remain optimistic for the future of both Perl and Raku, but they certainly face challenges ahead. Often times in the communities I will see posts where people pose the question, “What can we do to increase the language’s popularity?". While I don’t claim to have the answer, I am sure things like the Perl Weekly Challenge are steps in the right direction.

As a practical benefit for the PWC, I can point to my recent experience interviewing for a new job. During interviews I was tested with several coding challenges. Having practiced on Perl Weekly Challenges for several months, I felt very confident approaching the questions. I am positive my time doing the PWC positively contributed to my performance and ultimately securing an offer.

That brings the end of the conversation with Tyler Wardhaugh. Please do let us know your view. We will come back next month with another champion.


If you have any suggestions or ideas then please do share with us.

Contact with me