Start to Learn Web Development on the Cheap in 2015

Learning to program has become such a Thing that there’s a ton of free and low-cost options available online. Quite a few more than there were in 2013, when I started learning JavaScript. Quite a few more than when I went to a bootcamp mid-2014. By the time you read this, there may very well be quite a few more resources available. Find them. Google is your friend. (And it will become your spouse when you start programming full-time. You’ve been warned.) As a (relative) newbie, I’m still close enough to the ground to recommend resources to fresh-faced newbies. Don’t just take these with a grain of salt, try them.

For HTML & CSS, start with the FREE stuff:

· Code Academy

I’m sure hope they’ve gotten better since I last used them, but if you’re noncommittal and/or broke, this will be your stomping ground for a time. They’ve got lots of tutorials but they’re a bit like your mom. They’ll make you feel really good about yourself with lots of hand holding and praise (badges) but you’ll never truly know if you’re up to task. IMO, that feeling comes from the fact that Code Academy is created to teach you how to code, not how programming works. There is a difference and it will bite you in your pleasantly plump hindparts at some point…

· Khan Academy

You can learn the basics here. It’s designed for a younger crowd (re: students), so it can be a bit cheesy at times. Because of this, pro: the lessons move pretty quickly. Con: there’s very little programming theory included. Similar to Code Academy, Khan Academy will make you feel good. And they’ve got great user interface design. ;)

Use these two to get your sea legs with HTML and CSS. After you’ve gotten a hold on the basics, if you want more experience with front-end development, head on over to:

· Intro to HTML & CSS on Udacity

This is the real deal because it’s practical. They introduce you to workflows that you would actually encounter in an employment situation. There are intermittent videos by developers explaining how/when they use the processes. They explain why you’d want to do certain things in certain ways. Score: WINNING. Udacity is very thorough and they don’t play patty cake. Put your big boy pants on before you go over.

Please Note: The previous recommendations are based on the idea that you’re interested in being a full-stack (or front-end) developer. If you’re only interested in Big Data, or mobile development, or hacking the government, this is not your post. #itsbeenreal

A Pause for the Cause:

¬ Learn how to use the console

This doesn’t need a number or a bullet — it needs a blinking light! Please, for the love of this blog post full of free knowledge, learn how to use the console. It’s such a small thing that nobody explained to me until I was drowning in JavaScript errors! I can’t emphasize it enough: If you learn it early on, you won’t even know why I got so worked up writing this paragraph. You’ll have the habit before you really need it. Lucky you.

Time to shell out some cash…

Front-End kids, try these:

· Team Treehouse ($25/mo.)

When this service was originally recommended to me, I chose not to use it because there were so many danged videos. I just wanna code! I mused to myself with consternation. Then I discovered the 2x speed button and got over it. If you decide to focus on front-end development, I’d strongly recommend subscribing to Team Treehouse (and not just because if you subscribe from my link I get a discount). Treehouse was founded to provide affordable education for new front-end developers. It’s a great resource that is constantly being updated as the field changes. It’s also possible to simply begin your coding journey here, sign up for a track, and be freelancing at the end. The choice is yours.

· Code School ($29/mo.)

This is the service I initially preferred to Team Treehouse. There are far fewer videos (and remarkably adorable animations at the beginning of each lesson). That said, it can feel a bit like a souped of version of Code Academy because of all the hand-holding. On the other hand, if you have something specific in mind that you’d like to build, you may find the lessons are just what you need to get started.

For ‘Team Windows’:

· Pluralsight ($29/mo.)

I’m ‘Team Apple’ at heart, but if for some reason you’ve committed yourself to the Microsoft stack, Pluralsight will be your new home. The courses are very thorough. And very grownup. Like Microsoft. No fun and games here folks… Even so, it is also very possible to hunker down into this service as a beginner and launch a career by diligently following one of their Learning Paths. If you chose to go with Microsoft and are transitioning into web development without a computer science degree, it would be wise to prepare for a certification exam. (Try Microsoft Exam 70–480: HTML5 with JavaScript and CSS3 if you’re interested in front-end development or Microsoft Exam 70–483: Programming C# if you ultimately want to focus on back-end/server-side. Either way, you’ll learn things you never knew you never knew.)

Another Pause for the Cause:

¬ Get JavaScript syntax down pat

A Smarter Way to Learn JavaScript is the only book/course I’ve seen that can hold a candle to the level of repetition in the now-internet-famous-classic Learn Ruby/Python the Hard Way. The e-book is $8. Cough it up and support this guy’s hard work. It’s absolutely worth it. You’ll build the muscle memory not to choke whenever you need to type some JavaScript out by hand. Even if you end up working on servers, you’ll encounter JavaScript at some point. Again, do this before you need it.

Moving forward with code:

Once you’ve gotten the markup languages (HTML & CSS) down and have some JavaScript syntax in your pocket, front-end folks will want to focus on jQuery and responsive design. (Heck to make it easier, you could just do the whole Udacity Front-End Nanodegree or Treehouse’s Front-End track.)

Full-stack programmers will need to choose a (first) server-side language. Resource-wise, if you go Microsoft, stick with C# and/or Java (used for Android app development) both of which can be found on Pluralsight. If you’re undecided, I’d say start with Python since that’s what Udacity and most of the up-to-date university Intro to Programming courses are based on. (I know I’m completely excluding Ruby but I’m basing that solely on the nature/structure of the resources available.) If you choose Python, use Learn Python the Hard Way. It’s not hard but it is repetitive. Do your reps, and you’ll be all set. You should probably buy this guy’s book too. I heard he’s a fabulous person. (It’s $30.)

One Last Pause for the Cause:

¬ Learn Git and GitHub

If you were following this paragraph by paragraph without reading on until you’ve completed the previous tasks, it is quite possible that you’d get to this and be cursing the day. #sorrynotsorry This link is to the Udacity course because it’s the most thorough one I encountered. Basically, as your projects get bigger, you need to have a way to “rewind” your code in case you write bugs into the code. This is especially important if you’re collaborating with other people. That’s what version control is for. The most widely used version control system is Git. It’s open source (re: free) as is its progeny, GitHub. If you end up working solely in a .NET environment, you might be able to get by with Microsoft Team Foundation Server (TFS) and call it a life. For everyone else or anyone with side projects, Git and GitHub will become part of your life. To use Git, you’ll need to know command line/terminal prompts. There’s a great tutorial for that in Appendix A of Learn Python the Hard Way. Get crackin!

Notice what I didn’t mention…

· University Courses

More than one illustrious university has taken the time to post course materials online that will allow you to follow the coursework of their on-campus students. These Massive Open Online Courses (MOOCs) are free or low-cost options for people who like a more traditional structure and/or the name recognition studying university curriculum provides. I didn’t include any of these because they’re 1) predominantly theoretical in nature, 2) not structured into useable knowledge paths. That is simply to say, at the moment, most of the larger MOOC programs are set up in an a la carte fashion that isn’t particularly helpful for beginners. Once you’ve figured out exactly what you want to do/learn/study and you know where your knowledge gaps are, MOOCs can be a wonderful tool. Until that moment in your journey…meh.

With that in mind, if you decide the traditional route is for you, go big. If you’ve got $5000 in the bank, Harvard has an open admissions graduate program that’s just for you. ;)

· Bootcamps

Again, there are definitely some good ones, but like sifting through MOOCs, it’s pretty hard to judge what will be best for you early in the game. It’s possible you’ll hit the jackpot. It’s also possible you’ll throw several thousand dollars down on something and not end up with what you really wanted/needed. I wrote about my bootcamp experience here.

· Frameworks

Angular.js, backbone.js, and whatever-trendy-else.js are important, but not basics. When you understand the foundations, you’ll be able to teach yourself what you need to know.

· Skillcrush

There is absolutely no good reason why I didn’t mention Skillcrush other than the price ($200/mo.) I *heart* these ladies! I love what Ada and her team are doing: providing a safe space for beginners to set up a new side hustle. The curriculum is very freelancer focused so if that’s you, you may prefer to start there. You can study design, front-end, Ruby, and/or Wordpress. The choice is yours. They offer a lot of free resources as well. At least check them out. ;)

That’s all I got. A little something to get you started on the cheap if that’s what you wanna do. Happy coding!