It's 6 PM on a Friday and you just noticed that  your homepage doesn't look … right. The text is wrapping strangely and there's a weird break in one of the paragraphs. Your web developer has already gone home. Do you call her or go through the weekend with a broken site? Knowing some basic coding can help you manage these website snafus. Sounds scary? It doesn't have to be! 

After a few years of writing about technology, I've finally decided to take the plunge and learn some basic coding. As someone with questionable math skills and zero computer programming experience, this has been a daunting subject to undertake … so I thought. I'm actually amazed at how quickly I'm picking up HTML and CSS.

 I don't think I'd be so successful, however, if there wasn't a wealth of free or inexpensive coding resources out there. Elliott Harmon wrote a great round up of free HTML resources a few years ago on the TechSoup blog. Since it was published, there's been an explosion of online education sites that offer free courses in everything from basic HTML to advanced Java programming. Let's dive in:

Online Courses/Training

The generic piece of advice for taking online classes is that they're "only as good as the effort you put into them." As somebody who has almost completed their Master's degree through an online program, here's my advice: online classes are only as good as you think you are. If you don't like the format or find the instructor annoying or boring, you'll be less likely to attend them. If you're new to online classes, try a couple different sites and programs to get a feel for your preferences.  

  • What better place to learn how to code than from MIT? The renowned computer science institution opened its course content to the online world with MIT OpenCourseWare, giving everybody access to its programming and design curriculum.
  • Udacity offers self-paced courses in subjects like "Intro to Computer Science," "Web Development" and "Intro to Programming in Java." The classes are broken up into short, engaging videos and supplemented with fun, interactive exercises. There are also class forums and meet-ups so you can get homework help from your peers.   
  • Coursera pairs with top universities and education organizations to offer free online courses in a wide range of subjects. Coursera offers many different options so you can pick a class depending on your needs. For example, you could take a 5-week coding class from the University of Toronto or a 10-week course from the University of Washington.    
  • Like the other sites listed, Khan Academy offers a library of free courses, including a whole index of computer science courses. One big difference, however, is that the Khan Academy is a nonprofit that relies on donations for its global mission.   
  • Codeacademy is different from the other sites listed here because it is just dedicated to teaching people how to code. You can take classes in different coding languages, from PHP to Ruby to Python. There's also a Web Fundamentals course that gives you the building blocks to create your own website.

Reference Sites and Books

W3CSchools is the go-to source for novice and advanced coders alike. As Elliott pointed out in his post, it isn't the most user-friendly, but you can find tutorials, reference sheets, and more here.  HTML Cheatsheet and HTML Dog are also helpful reference sites.

I'm going old school and recommending a physical book to help you learn how to code. CSS The Missing Manual has been by my side throughout my coding adventures. The author has a fun, easy-to-read writing style and provides helpful tutorials so you can put your knowledge into practice.

Bonus

While this isn't exactly a coding resource, I had to add Google's new Analytics Academy for Google Analytics. The site has free community-sourced videos about using Google Analytics—which can sometimes feel like deciphering code! 

Ginny Mies is a Content Curator at TechSoup Global.