Well, it’s been a little while but I’m still studying and learning the road to being a web developer. Once again I’ve returned to find the site has tremendous slowdown, with some of the styling out of whack. I still haven’t officially studied anything WordPress, so winging it for the most part.
I’ve stopped using the page ninja plugin and started using Hummingbird, which seems to have added a decent speed boost, readjusted the style settings so the site regained it’s appearance, and while the account page needs a lot of work, I did add a new link to it.
I finished studying procedural PHP and have started studying ReactJS on Udemy. I have gained a basic understanding of JavaScript and decided that it was time to learn a framework. I have also started building a subscription site, with more details to come moving forward as I get closer to taking it live.
It is certainly difficult to take this journey without a guiding mentor to steer me in the right direction. There’s always a new article or post claiming this scripting language is great or this framework is the best, and browsing job listings in the web development field brings about only more questions. One day the market is favoring developers with ReactJS knowledge, the next they want Vue. One day there is are several companies needing PHP, and the next they want NodeJS.
The big thing I have learned, the knowledge I wish to forward to anyone wishing to take this journey, is to decide what path you want to take and stick to it. Don’t do like I have tried to do and be a jack of all trades immediately. I have studied HTML, CSS, and JavaScript, the basic building blocks of the modern website. I have studied procedural PHP and mySQL. I have started object-oriented PHP and got distracted by trying to learn more JavaScript. I started getting a grip on it and attempted jQuery, got distracted once more and have started learning React.
And let’s not forget Bootstrap. Bootstrap is amazing, especially after learning how to customize it’s appearance with custom CSS. I haven’t quite gotten a handle on Sass, the CSS pre-processor that bootstrap uses, but it isn’t hard to write straight CSS to change the components.
So you might think that learning these things, I would be confident and able to enter the workforce as at least a junior web developer, right? Not quite.
The problem is, having only a general knowledge in these areas really isn’t enough. I can hand-code a good looking page, create a database, and have the website link to it. I can modify bootstrap’s appearance, change fonts, build a simple CMS, but I can’t do it fast enough for a business. Because I started learning, stopped, picked up something else, stopped, rinse and repeat, I have to use google frequently to find what I’m looking for. The more advanced concepts are outside of my reach currently, and this is causing me to go back and learn what I skipped over the first time. I became to eager to learn new and shinier things, dropping before getting to the advanced areas. Had I focused on learning PHP in it’s entirety, I could market myself with that knowledge. If I had focused on learning all of JavaScript and a couple frameworks, I could use that as my entry. Instead, I focused on trying to learn front and back-end at the same time, and now my learning path has stagnated, my progress halted while I go back and fill in the gaps.
Focus on a path. Learn it. Study it. Get the basics down. Learn HTML and CSS, followed by plain old JavaScript. Then grab a JavaScript front-end framework and learn it. Pick up bootstrap and learn it. When that’s done, learn how to put them all together and make a beautiful page or two and make sure the knowledge is solid in your mind. Then learn the back-end if you want, or start with the back-end of things if that is what you want to specialize in.
That’s all I’ve got. Just some helpful advice from someone who is still learning, in the hopes that it helps someone else make this journey faster. I believe we all learn better by learning together, so we don’t repeat the mistakes of someone else needlessly.