Dear future self, future readership, future generally,
This post is very conspicuously NOT titled "X Things I Wish I Knew Before I Started Coding" or something similar. Try to ignore the fact that I've been coding for a little while now - that would futz with the logic. It's all very fresh.
Let me be clear --- "advice for your younger self" posts are pure mana from heaven. There will never be too much mid-career advice to junior career people in the world. It's gold. Case in point: Ali Spittel's sage advice to newcomers.
But the junior perspective is the only perspective I have, dear reader. This is what a new boot camp graduate might take with them as they head into a world of balancing goals and expectations. Last week, I was certified for completing General Assembly's Software Engineering Immersive.
I expect to encounter growing pains on a whole other order of magnitude, as a career-changer (from classical music) seeking their first job. With those fast-approaching adversities in mind, let me record this advice from my younger self ... the one still unencumbered by...whatever might be holding down my future self. These are my "affirmations."
1. Learning how to learn is even more important than what you've learned.
Technologies and job duties will come and go, but what lives as long as you do? Good, logical thinking; an increasingly refined intuition for technological concepts; and a receptive mind, that's what.
When we're in "tutorial hell," I think what we're experiencing is the repression of this sentiment above. This Feynman quote is definitely metaphorically pinned to my metaphoric cubicle. Just don't take the word "undisciplined" to mean you should throw out your schedule planner. It just means that sandboxes are fun, and good learning doesn't feel like a chore.
3. Keep calm and learn you something good.
"What did I do there?" "How am I getting this error?" A pang of the unexpected or a boulder of frustration... neither of these things are ever too far off when dealing with code. Or even worse - "How do I even begin to tackle that?"
Take a breath. Remember that the moment "when it clicks" is a discrete instance in a long smear of "trying to wrap your head around." It's recognizable by now -- the motion from ignorance to knowing. It happens often enough that you have to make time for it. It is inexorable and addictive.
Think about it -- in what other field do beginners have access to more or less the same knowledge base as the most practiced experts? That's the kind of democratized learning that the internet was more or less built for, and it's really cool. Nobody needs to be ignorant for long, so just...take a deep breath and learn something. Learn new things several times a week, if not several times a day. It's just a matter of time.
4. Remember your reasons
To list my own reasons for what thrills me about programming would probably be a bit too much here (I keep thinking of some mental image I've started calling "the Watchmaker's Joy"... and maybe other feelings that have words in German). But the upshot is this - in code, you likely found some compelling interest, some playful power that appealed to your inner child, that made you voluntarily and happily scrutinize flotillas of pixellated light for meaning as they float over black seas of screen space. Your reasons nourish you in the driest chapters of the docs. They compel you to tab out 5 different Stack Overflow answers to the same line of questioning. And they keep you coming back after bugs beckon you from your dreams.
Thanks
Thanks to all my teachers at General Assembly, and particularly @aspittel who introduced me and my classmates to DEV and impressed on us the goodness of blogging (and hooks-based React!). Thanks @jmfayard for Yes, you should write that first post!
Top comments (0)