Meet The Champion: Perl Weekly Challenge - 016

Wednesday, Jul 17, 2019| Tags: Perl, Raku

Welcome to the weekly series “Meet The Champion”.

Last week we spoke to Joelle Maslak, the winner of Perl Weekly Challenge - 015. Today we are talking to the “Perl Weekly Challenge - 016” winner Adam Russell. I hope you are going to enjoy the interview.

Mohammad: Tell us about your technical background?

Adam: I am presently a Principal Software Engineer for Optum, which is part of United Health Group. My main focus right now is on Graph Databases on how we can best use them to develop applications, improve analytics, and in general be able to get greater value out of the data available in the enterprise. I also teach Computer Science courses as an Adjunct Lecturer at Wentworth Institute of Technology. Academically speaking I earned a B.S. from the University of Rhode Island with a double major in Zoology and Applied Mathematics, I received an M.S. in Mathematics from Salem State University, and did my PhD in the Computer Science department at the University of Massachusetts Lowell. My dissertation included topics in Data Visualization and Computational Geometry. All the code for my dissertation was written in Perl!

Mohammad: How/When did you start using Perl/Raku?

Adam: I first started using Perl at my first job in the late 90s at a Tier II ISP that sold dial up and broad band connections that also had a significant web development and hosting component. I started using Perl to do dynamic web pages with CGI, as was very common at the time. I also used Perl as a shell script replacement and system programming language.

Mohammad: How did you come to know about “Perl Weekly Challenge”?

Adam: I came across it on Twitter just as it had first came out. I was intrigued when I saw what it was and then was excited to see that it had just started and I was getting in right at the beginning!

Mohammad: What do you like the most about “Perl Weekly Challenge”?

Adam: There are a few aspects I really like. For starters I like that it encourages blogging about the solutions and reviewing all the other solutions and writeups. Furthermore, I have the frame of mind that this is a sort of “master class” where a Perl programmer can roll up their sleeves and work on something that will be almost guaranteed to be interesting in some way and open doors to learn more deeply about something that you’ve uncovered. For example, I’ve gotten interested in experimenting a bit with threads and Perl SWIG interfaces to C++ just based on the weekly challenges.

Mohammad: Is there any thing you like to change?

Adam: Referring back to my “master class” comment in the previous answer I think that there really is a lot of potential for this weekly challenge format. The most popular technical site right now is likely StackOverflow which is just a help site. Most users there are beginners or frustrated practitioners asking questions. Sticking around those sites and answering questions can get (for me anyway) very boring. I think the same is true for others, it’s not that fun. There seems to be an empty niche which has the community aspect of SO but topics which can keep any level of programmer interested and engaged. The Perl Weekly Challenge is unlike any other attempt at a programming challenge I’ve seen before. It’s not a programming contest like TopCoder, it’s not just a pile of tricky problems like Project Euclid, instead it’s a fresh set of interesting problems and a community of talented enthusiasts looking to sharpen their skills.

To answer the question, the only thing I would change would be to take this great format and extend it further! Keep growing but stay true to what we have now which is, in my opinion, really kind of special.

Mohammad: How much time you dedicate every week to “Perl Weekly Challenge”?

Adam: About four or five hours usually. I prefer to spread the effort out over the week. I can usually do each part in an hour or two working at a pretty casual speed. I then spend another hour or two revisiting the code for each part and revising and trying new approaches. When I am satisfied with what I’ve done I’ll spend an hour or so with the writeup.

Mohammad: Do you checkout others solutions and who is your favourite?

Adam: Absolutely! Although I always wait until after I have submitted my code to look at others. I don’t have any favorites per se. In fact, I think I consciously try not to have any favorites and just look at the code without worrying about the name attached.

Mohammad: What do you suggest someone just started the weekly challenge?

Adam: Don’t forget TIMTOWTDI! No matter what you think of your solution it is quite likely that no one else thought of the same implementation as you. So, no matter what, do it however you want, entirely your way, in your favorite style and have as much fun as you can. Perl programmers really do have the best sense of enjoyment over writing code, embrace that spirit!

Mohammad: Do you find the website user friendly? What do you like most?

Adam: Yes, I think the website is well done. My sensibility is towards a more minimalist style and the site seems to match what I tend to like in a site. None of the pages are too “busy” and it is easy to find whatever you’re looking for. I really like the weekly blog summaries. That is just the most valuable and amazing thing in my opinion.

Mohammad: Anything else you would like share with us?

Adam: The Perl community is the best programming language community! Certainly there are trends and fashions and fads in technology but even though individuals may come and go the community as an entity in and of itself has maintained a strong vital spirit at it’s core. The people that take the extra steps to ensure that community strength deserve so much gratitude from all of us that benefit from it. Thank you Mohammad for all that you’ve done and continue to do!

That brings the end of the conversation with Adam Russell. Please do let us know your view. We will come back next week with another champion.


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

Contact with me