The career of a web developer is an interesting one with many slopes. Considering a learning curve this steep, you can fully expect to live through periods of frustration, enlightenment, self-righteousness, and every mindset in between. In this article, we'll have some fun, by reviewing each of these phases through the lens of a meme!
Phase 1 - Noob
We all have warm feelings for the early days of our careers; the period when you have absolutely no clue what you're doing. Like a fish out of water, each new line of code is a mystery. Doctype? Huh? What the heck does a do? The first phase is an intimidating, scary, but exciting one. How many dang languages are there?
Perhaps your greatest advantage, though, is that you have no idea how deep the rabbit hole goes. Learning HTML is the baby step.
Phase 2 -The First Steps
Though it takes a while, you'll eventually learn enough to begin taking your first steps into the coding world. While Phase 1 is the overwhelming "how/where do I start" period, Phase 2 is the one in which you slowly begin building your skill-set. Sure, the syntax for defining styles with CSS still feels foreign, but at least you're able to make a change in your freshly bought code editor and see it reflected in a web browser. That's a wonderful feeling!
Phase 3 - Complete Frustration
Imagine being lost in a cave, shining your flashlight down each tunnel, as you search for a way out. With each step, you hope to see a glimmer of light. Unfortunately, the learning curve in our industry is a steep one. That speckle of light won't come for a long time, I'm sorry to say. Expect to spend hundreds of hours in this phase, reading technical books over, and over, and over, as you desperately try to make sense of the madness!
If the frustration becomes too overwhelming, find peace in the fact that every one of us felt that exact way at one point or another in our careers. You're not alone. Stick with it, and, before long, you'll reach the aha phase!
Phase 4 - The Aha Moments
An "aha" moment is one of the greatest feelings in the world: that brief instance when, suddenly, you "get it." "Ohhhhh, now I see!" Personally, I've found that these coding break-throughs occur late at night, when the rest of the world is sleeping. After the eighth read, what was once blurry is now, at least somewhat, clear!
This is the phase when all of the technologies and languages you've been learning begin to click.
Phase 5 - Fragile Code
Like it predecessors, the Fragile phase is a lengthy one. At this point, you are successfully building applications and achieving your desired end result, but the underlying code is one client feature-request away from popping. In this phase, your methods are dozens of lines long, and the concept of testing hasn't yet entered your brain.
But at least you're building things! For now, though, keep your GitHub pull requests limited to documentation and typos fixes. Don't underestimate how helpful that can be!