What are the best resources available (online and in books) to teach yourself to code? My goal is to be able to do all the front-end work on my designs using web standards in the next 6 months. I wonder how many of the books for beginners are outdated, but jumping directly into CSS3 and HTML5 seems like a step to far.
The great news is that, although old books are old, a lot of the techniques they describe are still very relevant. The practice of opening/closing a tag or writing a CSS rule hasn’t changed at all. As someone who has learned and taught in both formal and informal settings (still do!), here are a few resources I’ve found useful:
- Jeffrey Zeldman’s Designing With Web Standards is a great book for learning HTML and CSS, from both a theoretical and tactical standpoint. The latest version (third edition) is co-authored by Ethan Marcotte, the man who coined the term “responsive design,” so it’s full of best practices that set you up to learn more advanced techniques. It’s my go-to as a textbook when I’ve taught in a university setting.
- Web Standards Solutions by Dan Cederholm is a pragmatic way to learn about the intricacies of semantic markup. Taking a series of examples and revealing the pros and cons of each approach helps the reader learn how to think critically about their code.
- Once you’ve got a great handle on the syntax of HTML and CSS, it’s now time to develop your personal approaches in areas that aren’t so black and white.Bulletproof Web Design by Dan Cederholm walks you through scenarios to make the code you write really tight.
- HTML & CSS teaches the fundamentals of markup and styling in a well-presented format, unlike many more technical-looking books.
- HTML5 for Web Designers and CSS3 for Designers are two wonderful books from the A Book Apart series. Rather than being extensive manuals, they take the approach of giving you just enough knowledge to be well-versed. Small books with large impact.
- WestCiv has a fantastic self-paced course. While some of the syntax might be outdated, the principles are still ones I use today when building websites.