allenc allencheung

The Art of Knowing What to Learn, When

Common wisdom tells us that software development requires constant learning. Particularly, client-side development (web and mobile) iterates so fast that its designers, engineers, and product folk have to stay up-to-date with the latest advances. “Expertise” is not guaranteed and may not be attainable.

Hold on a sec.

First off, even if the characterization holds some merit, it sounds awful lot like a humblebrag:

Look at how dynamic my chosen profession is! Admire the amount of work and effort I put into keeping myself atop a continuously shifting mountain of advancements! And I’ve been doing this for 8 years now!

The unintended side effect is that this sounds legitimately horrifying for people who want to get into the field. Speaking specifically to front-end technologies[1], I have helped demystify how things work to backend engineers and designers and even non-technical folk, and the reaction has always been “that was not as complicated as I’ve heard.” No wonder newcomers who want to break into the industry feel compelled to spend tens of thousands of dollars on tuition to unaccredited coding schools.

Worst, the claim just is not accurate. There is nothing magical about a new framework or language or paradigm that requires you to drop everything to absorb and implement the latest whatever. Admittedly it is fun to mess around on a personal project, but production systems are designed and built on known quantities, where stability and longevity of the technology is highly valued. One can argue that programming for an audience is a tad less exciting.

With that in mind, the right strategy is not to get stressed about falling behind the curve (and subsequently bragging about falling behind), but to focus on specific technological milestones and deeply absorb that knowledge.

It does takes some time and experience and a little bit of luck to pick the right things to learn, and perhaps the resume won’t contain as many recruiter-friendly keywords. Yet, this is how expertise is earned: sticking it out in specific area, obtaining knowledge and experience that others may feel is premature or even outdated, and gaining a grasp on the tradeoffs in design and implementation.

Footnotes    (↑ returns to text)

  1. You know, that field where JavaScript frameworks spawn like rabbits and design fashion iterates faster than H&M inventory.
By allen
allenc allencheung