Picking the curriculum can seem pretty overwhelming at first. There are so many choices when picking an approach to learn how to code. From boot camps, to youtube and blogs, to paid courses. It is a pretty wide spectrum and each at wildly different price points. Even within each category, there are courses that range from $10 to $400, or some sort of monthly subscription to a course platform. How on earth will you know if you pick the right thing? Hopefully, by the end of this chapter, I will have eased any anxiety you have on this subject and you will be confident to pick up some curriculum and move forward with it. I am briefly going to share my thoughts on three categories, boot camps, free resources, and paid content, as well as share some examples I would recommend.
First, there are boot camps, and those themselves range wildly. They have both on-campus and online boot camps, ranging from thousands to tens of thousands of dollars. Some don't charge you till you get a job, some don't charge you till you make a certain amount, most of them are likely scamming and ripping you off. That isn't to say that they won't deliver on their promises, most of them simply don't provide anywhere near the amount of value they are charging you for. The number one asset these camps typically provide is a one on one, or a classroom environment with some sort of mentor/instructor. This is helpful, and hard to find elsewhere but in my honest opinion it would be worth trying to find someone who you can pay directly to mentor you if you think you need that. Paying a mentor directly can give you 100% of the real benefits these boot camps deliver at a fraction of the cost. I am saying this as someone who mentored for over a year at one of the largest online boot camps.
- Direct access to someone who is somewhat of a subject matter knowledge expert.
- Resources (most likely) to help you get unstuck, and help with the eventual job search.
- Typically a single source (or near single source) for decent curriculum.
- Often unreliable, even the good ones have questionable success.
- The actual course curriculum is often just ok, or even behind cheaper courses made by individual creators.
- Usually a huge commitment with a ticking time clock, not truly self paced.
Avoid boot camps if you can at all costs, to be honest. If you really want one-on-one mentoring do the legwork to find a competent Mid Level to even Junior developer that will mentor you within the price range of $40-$100 USD/HR and you will likely get everything you would out of a boot camp. Just do your diligence in finding and picking a mentor. There isn't any service I am aware of at this time that makes that easy. At that price point, you should be able to find some highly competent folks eager to help you if you look hard enough, and will pay a fraction of what a boot camp would charge you.
Learn to code at home. Build projects. Earn certifications. Since 2014, more than 40,000 freeCodeCamp.org graduates have gotten jobs at tech companies including Google, Apple, Amazon, and Microsoft.
FreeCodeCamp is extremely comprehensive, It can be your sole source of coding curriculum (this doesn't mean you won't still have to look stuff up) and by the end of it, you should be more than job-ready, you will have several finished portfolio-worthy projects, a deep understanding of web development fundamental and intermediate concepts. If you choose this route I would strongly recommend taking the three to four following certification courses if you hope to be a web developer in this order.
- Responsive Web Design Certification (300 hours)
Then I would take either one or the other of the following.
- Front End Libraries Certification (300 hours)
- API's and Microservices Certification (300 hours)
At this point, you should have enough skills to be employable, but it won't be the easiest thing to find and get a job. I would start applying but also start on the other from the second set of courses. This means at minimum 900 hours of work before you start applying, and you are likely on the hook for all 1,200 hours in the current market. Reading this might feel like a punch in the gut to a lot of you. If you can only do 20 hours per week on learning then from what I said above this will likely take you around a year. You might be eager to join "TwoFortnights" and see if that is some quick path to success. It won't be though, I have taught a lot of people how to code, either at the Bootcamp, I worked for, the meetups I ran, or the people in my life I just wanted to help, and I haven't found anything that shortens it much, other than a predisposition to computers from a young age, then sometimes they pick it up about twice as fast in my experience, but only to a certain point, then everyone kind of evens back out for the most part. What I am saying is, there are no shortcuts and you should accept that this path is long and arduous, you should not stay away from FreeCodeCamp for the sole reason that they don't lie to you and give you an unrealistic timeline. Benefits
- Great price point.
- Lots of others have taken the same course, and answers to common questions are not behind a paywall or hard to find.
- Very difficult to find good free resources.
- Often not one complete course, requiring you to piece a bunch of stuff together.
Go with freeCodeCamp if you go this route, it may be intimidating, and it may use some computer science jargon that is sometimes tough to understand, and can even be a bit dry, but it is the most surefire resource to ensure you learn all the skills you need to get job-ready as a web developer, and honestly, it outdoes a lot of paid resources in terms of quality and completeness.
Your first assumption might be that paid content means it will be better than free content, but this is not always... or even often true. You want to be careful to weed out scammers who put little to no effort into a course that they have little to no expertise on for a quick cash grab. Their people are pretty easy to spot, to be honest. They are usually on giant course platforms (Like Udemy for instance) and they have tons of average rated barely related courses. Be wary of someone who teaches Unity, React, Angular, iOS development, and basket weaving, because they probably won't teach anyone of those one things well.
Sometimes people will waste $100-$200 dollars and a lot of time on 10-15 low priced courses when they could have spent $50 on a great extensive course. Look for courses by specialists who focus on exactly what you are trying to learn. Assuming that is web development some great examples of places to get courses are:
Level Up Tutorials | Web Development & Design Tutorials
Skip to content Cutting-edge, focused & high quality video tutorials for web developers and designers Join over 300,000 developers learning from level up Learn to code the way pros do. Code skills that will "wow" in your next job interview. Step-by-step video tutorials that take you from a basic dev to a professional.
There are many more, but I hope this illustrates my point. There are hyper focused $50 courses by specialists, and if you do the due diligence to find them you can find great content for the fraction of a price of a single college textbook.
If you decided to pursue the paid course route I suggest you buy courses that match up pretty closely to the freeCodeCamp ones I mentioned above in the free curriculum section and take them in the same order.
- Tons of great content by hyper qualified specialists.
- Cheap relative to bootcamps and traditional education.
- Often very well produced and more lively content.
- Could end up buying garbage.
- Can be hard to get community support.
After you pick a course, no matter its quality, once you have completed let's say 10% of it consider yourself locked in. You must now finish this course to its completion. This will help you develop some important skills as a developer. First, it will teach you to identify bad projects early. You should be able to look at and figure out if a project is worth embarking on before accepting a job or a client as a developer. Learning to carefully research your courses is the first step in that. Don't let a lot of garbage courses take up a ton of your time only to end up half-finished. A lot of people make this part more difficult than it needs to be. They spend a long time looking for the perfect course for them. Then when stuff gets tough, or they don't understand something for too long, they blame the course and try to find another "better one". I was one of these people, hopping from course to course, subject to subject hoping that something would make everything magically click and get easy. That isn't how this, or really much of anything works. You need to see these things through to the finish. The author of the course might be leading to something you don't fully realize that might make everything click a lot more at the end, but even that is beside the point, more than anything learning to code is about determination, and if you adopt a mindset of giving up you straight up will not make it through the interviewing stage. Furthermore, on the job, there will often be times when you feel in over your head like there is no clear path out, and you will be expected to manage, break things into smaller chunks, seek help from, and overcome your problems. This is yet another skill you might as well start developing now because it will pay dividends for you. Do yourself a favor and finish the courses you start to a substantial degree, even if they seem questionable later on, if only to have the functioning code as a future reference or base to expand upon.