Dear Old Me / Dear Young Me - On Comparisons

Dear Old Me,

Whether it's in classes, talking to friends, or in interviews - I'm really feeling like I'm never good enough. When I see what others can do, the solutions they create, it looks so easy for them.

I really want to be a programmer - so hopefully you've gotten better?



Dear Young Me,

Let's start simple: Output is a terrible way of measuring difficulty. You never know how hard something is for someone - even if they explain their thought process. That's why we say "they make it look easy." 

Have you ever looked at one of those images that has a hidden image inside it? The first time, it can be tricky to find - but once you see it, it's always there. A lot of problem solving boils down to how many things you've already seen. The fewer things you see for the first time, the better equipped you become at solving them.

Part of the trick is taking those problems and simplifying it down to basic parts. Then, whenever you encounter a new problem, break it down to basic parts to see if it matches something you've seen before.

Learn by doing. Don't fall into the trap of copy and pasting Stack Overflow solutions without understanding them and making your own. Don't just read about problems - do the exercises. Contextualize them, ground them in reality.

Get good at asking: What is the problem we're really trying to solve? How might you solve it the "hard way", without any handy tools? And if you're out of ideas - experiment. Dive in, try something while knowing you'll fail. And in failing, you'll learn something more. Iterate.

Last but least: I won't say "Don't compare yourself to others." You should. Compare yourself to others, but compete against yourself. Look at others to find where/how/what you want to be, then get there by looking at your own progress.

You'll learn "being a programmer" doesn't mean one thing. Comparing yourself to others, while competing with yourself gets you to be the programmer you want to be.

- Alishah 


Let's Clear Up The Ambiguity!

FAQs for a Software Engineering Hiring Manager

7 Steps to Writing an Amazing Resume

7 Steps to Building your Portfolio MVP

On Systems Debt