Wow. Time flies when you’re having fun. Especially when you’re learning, debugging, and building web applications. It’s been a while since I’ve posted on this blog because of the craziness of part time classes and personal projects. There is so much to talk about, so much to cover, and so much more learn. Instead of a giant wall of text, I’d like to condense the experience down into bullet points. Little bagel bites of wisdom; things that I have come to realize from the past year.
1. Expect to drink from a firehose of knowledge, and be prepared to handle it.
Do not underestimate the amount of work required to go through learning to code. There are a million times where you will have to pick up a new library or framework. You might have a week on the job to get familiar with a completely new programming language. Sometimes, you will only have a day to take in a new tool.
There are ways to prepare yourself mentally and physically. Start slow, learning deeply, and keep building. The most educational experiences I’ve had so far are from building and debugging from scratch. It is also helpful to “simulate” a fire-hosing environment every now and then, tasking yourself with the goal of diving into a foreign language or framework with nothing held back. All in all, the process is challenging – but you come out a little smarter, wiser, and well equipped to tackle the hardships of professional development.
2. Learn how to *learn* at a rapid pace.
Yes, learning to code comfortably in the language is important. Problem solving and debugging are also critical. But in a field where new tools pop up like fireworks, it’s a daunting task to navigate the expanse for the tools you need. Web development is a rapidly growing field, especially with the growth of screen based tech such as VR and Augmented Reality. Other exciting areas include AI, machine learning, and the Internet of Things. It’s an endless amount of topics.
As you continue coding, remember that the journey has just begun. Remember that you have so much more to learn, and this will always be the case. Throughout the coding journey, you’ve had to trek through massive amounts of information and utilize them in such a way to create compelling programs. This is a skill. Don’t forget that. You have the newly acquired ability to pick up very technical knowledge. Use it, abuse it, and keep improving at it.
3. You will never “know” all of the numerous frameworks, libraries, and languages.
Just accept defeat now. Make Google an extension of your brain. Utilize Stack Overflow when necessary. Ask questions, provide answers, and be active in an ever-growing community. Feed the coding hive mind. It is not a weakness to reach out for help. This is why pair programming is so effective at times, and also why team based projects are so valuable to a programmer’s growth.
Remember, as you transfer knowledge to other people, you are reinforcing that knowledge. Keep your mind open, just as you were during those hours learning code, and you will go far.
4. Be prepared to continue learning, debugging, and creating projects.
If your primary goal for learning to code is to snatch a dev job, then you should just stop right now and save yourself the trouble. Coding requires a raw dedication and love for the craft. You don’t have to be head over heels for it, but the passion and grit needs to be there. Coding should not be another quick “in” to score a job in a rapidly growing industry. If you step in with that mindset, you will be mentally torn apart by the end of it.
Don’t forget to keep coding. There’s no definitive finishing point – it’s a lifelong commitment. A commitment to continuous problem solving, learning, and building. Don’t stop coding just because your initial portfolio is done, continue exploring frameworks, libraries, and even other fields in programming. Be active in the community and build new projects. Practice writing clean code, and refactor old code. There should always be that part of your brain that needs to be scratched.
That’s all for today. I’m going to continue building projects, getting better at my craft, and hopefully pick up some new skills, techniques, and practices as the journey continues!