TL;DR
If you haven’t already, learn one of the popular JS frameworks: React, Angular, Vue, etc.
Read this instead: A Review of Udacity’s React Nano Degree
If you aren’t using one of these post-modern frameworks yet, take some time to dig into it a bit. There are plenty of tutorials.
However you do it, do it.
From the job listings I’m seeing all up in my inbox, you need to know a framework and you need a design/developer portfolio. In other words, have side or exploratory projects or code samples of public-facing web sites, applications, or github repos.
Completing tasks in VM workspaces and sandboxes? I love that stuff, even though I miss VS Code because I’ve got it all decked out with extensions that suit my brainspace and make it easier to navigate, traverse, provide mental context, have shortcuts for writing tedious HTML; color code matching braces, brackets and parentheses; code formatting, gitlens, and even Quokka for a nearly sentient code sandbox.
Back to the matter at hand.
TO CLASS/COURSE OR LEARN ON YOUR OWN?
“Why?” is a fair question. Many developers believe in the power, dignity, and satisfaction of autodidactism.
ON YOUR OWN
Why not sign up for your favorite tutorial site, go through it, and follow along while building something interesting in a code sandbox? That’s always worth doing.
It doesn’t cost much — a few books, a few tutorials — and you follow the path you want to take. You can also take advantage of coding meetups where you can work on projects but in a group setting. Very cool. It’s easy to get sidetracked, though.
How many projects have we started but not taken through to completion so that it lives up to the idea we had in our heads? Life happens, right.
ON THE JOB
In my opinion, the best way to learn a professional skill is on the job with mentoring or pair programming, training, and room to experiment a little. That would be the ideal situation. Trial by fire works, too, but in those situations, you only learn what you need to know to solve the immediate task at hand — effective, but not comprehensive.
Let’s face it, though. Workplaces are rarely ideal. It’s often difficult to transition to a new skill set. How often are we allowed to actually revamp the codebase of an existing project or application? How often do we start a new project where we can drop a bucket of all-the-latest into it? That’s why so many job listings are for experienced JS framework developers, as opposed to converting their in-house talent to JS framework developers.
STRUCTURED CLASSES
Bootcamps cost thousands of dollars. We’re talking college tuition levels of money. Ouch. It’s not out of the ordinary to see $15,000 immersive bootcamps. They also advertise job services and placement, as well. Some don’t come for your money until you’re employed, from what I’ve heard.
Udacity’s nanodegree is $999, which you can spread out over 3, 6, or 12 months. Not an insignificant investment, I know. Seriously. I know. Paying money doesn’t make you smarter. It’s the effort and the investment of time and energy, and people thrive in different environments. Some will excel on their own, some will excel with guidance.
I don’t know about you, reader, but I like a little structure. I like having a community to learn and interact with. It looks like there are a few dozen people in this particular cohort. Ideally, I would have taken an actual physical on-location class but the timing wasn’t right.
Sometimes it’s hard to know where to start. In this program, concepts are introduced, quizzed, applied, and then you get projects with expert feedback or mentoring. There’s a deadline for each project and a scheduled escalation of skills and knowledge. Plus when I pay my money I want to make the most of the investment.
Last but not least, I’ll also have projects for a dev portfolio that I can tweak and add my spin to. That can’t happen soon enough. I don’t know how true it is, but I read an article yesterday that stated:
“Potential employers will be suspicious if you don’t have a github account and presence.”
REALITY CHECK
Training/degrees/certificates/certifications are not the same as experience. They aren’t a magic key to high paying tech jobs. However, it’s clear that React is in demand, as are the other “top-tier” frameworks/libraries. It’s here to stay for a bit.
Most important, when you choose to learn a ubiquitous framework you’ll also be learning the buzzwords and buzz-concepts du jour. With React you’ll be using functional programming, git, npm, webpack, yarn, React Native is on the syllabus, HTML, JavaScript ES6, and you’ll be styling with postCSS or something like it.
Functional programming is a reoccurring concept in React and it’s all the rage right now, but you don’t necessarily need to understand Category Theory and terminology — unless you’re trying to impress someone in a job interview?
THE LEARNING CONTINUES
I’ll come back with a few updates along the way. I’m digging it and I’m looking forward to learning more. It’s well done and it’s appropriately challenging.
Let’s go.
New things: pug, ParcelJS, Atomic Design, :empty, :blank