Dear Old Me / Dear Young Me - On Perl

Dear Old Me,

HI! Did you ever become a coder?

Should I learn Perl? What about ColdFusion? I'm worried I won't ever get a coding job unless I learn them all.



Dear Young Me,

Don't bother learning Perl.

I don't know a single coder who knows Perl.

In fact, you'll come across dozens of languages over the next 20 years. Every one of them will do the same thing but in slightly different ways.

Instead learn how to break problems down into simple steps. That's the important skill.

Ask yourself how you'd solve a problem manually (like how would you find the word "tiger" in any book?). If the problem is too hard on its own, or too hard to then translate into computer instructions - then ask yourself what tools or tricks could make it easier (what if the book had an index or table of contents?!)

In fact, you'll often find a lot of problems either:

  1. Lack a structure; If so, introduce what you need.
  2. Have the wrong structure; If so, break and rebuild.

Once you figure out the steps, work at them into pseudo-code. Don't worry about syntax. Make up imaginary functions if you need (shortenText(); is just as good as substring();) or even just draw boxes and arrows.

Think through each step and see how you could break it down into computer-friendly steps.

If you can get good are breaking problems down in plain terms, then make sure you know 2 different kinds of languages: 1 strongly-typed language, 1 weakly-typed and script-based language. Both require valuable skills. 

- Alishah

P.S. Yes! You were hired 1 week after writing your last exam at University. You were a coder for about 16 years or so, but then decided to change job roles. We should talk about that at some point (but for now, stay the course!)

P.S.S. Remember that your code needs to be maintainable & presentable. Stop naming your variables a, aa, aaa, abcd, aabcd, please_Work, pleaseWorkNow1. That is going to embarrass you Alishah. Seriously. Stop doing it.


Let's Clear Up The Ambiguity!

FAQs for a Software Engineering Hiring Manager

7 Steps to Writing an Amazing Resume

Work Experience vs Professional Experience

7 Steps to Building your Portfolio MVP