CodeAcademy

CodeAcademy aims to make learning how to code fun, and they do this by making all
 of their courses game-based in nature. The site offers “tracks”, which are series
of courses grouped around a particular topic or language. Course offerings include
 JavaScript, HTML, CSS, Python, Ruby, and JQuery. Registration is free, and
 once you get going in a class, you start to earn points and badges as a way
 to keep you motivated. No certificate or credits are offered here, however,
 the interactive classes make complicated concepts seem not as intimidating.
 CodeAcademy also runs CodeYear, a year-long collaborative effort to get as
 many people learning how to code (one lesson per week) as possible.
 More than 400,000 people have signed up at the time of this writing.

Google Code University

Learning how to code from the team behind the most popular search engine in the world?
 Seems like a pretty good deal. Course content here includes information on
 Computer Science, Programming Languages, Web Programming, Web
 Security, even Google APIs and Tools. Google Code University is free and
 does not require registration; classes are offered via recorded video lectures,
 talks, problem sets, exercises, documents, and slides. Computer programming
 language courses are mostly introductory in nature, and include languages
such as Python, C++, Go, and JavaScript. No certificates or credits are
awarded with the completion of these classes.

P2PU

Peer to Peer University (P2PU) is a collaborative experience where you’re mean
t to learn in community with others. Registration and courses are totally free.
 There are several “schools” within the P2PU organizational framework,
including one for Web-based programming backed by Mozilla, creator of the
Firefox web browser. As you complete courses, you can display badges on
 your website or social profiles. Courses include WebMaking 101 and
 Programming with the Twitter API; no developer certifications are offered here
, but the courses are well executed and worth taking a look.

HTML5 Rocks

HTML5 is quickly becoming the language to know for cutting edge developers.
 HTML5 Rocks is not necessarily a coursework platform; rather, it’s a massive
 database of informational resources on anything and everything to do with
HTML5, from nuts and bolts to semantics to storage. Pick what kind of HTML
 development you’d like to focus on from three different groupings: mobile,
 gaming, or business, and you’ll get a comprehensive hub of tutorials, articles
, and in-browser simulators to get going on HTML5. No credits or certifications
 are awarded here; registration and use of the site is totally free. Example
s of information offered here include web application frameworks, debugging
 tools, and compatibility resources.

The Code Player

If you’ve ever wanted to be a fly on the wall and watch over the shoulder
of someone who really knows what they’re doing with HTML5, CSS3, or
JavaScript, then The Code Player is for you. Click on any of the video
offerings, and you’ll first see the proposed code snippet in action; for example,
 a gauge chart written with Canvas and Javascript. Click on “play walkthrough”,
 and here’s where it gets really interesting: a screencast of how the code was
 written, along with background information and comments. The end result of
 the code is also included if you just want to copy and paste for your own project.
Want to learn Ruby in a very Zen-like fashion? You’ll want to check out
 RubyZoans, a simply arranged series of Ruby tutorials that aim to teach
the Ruby language, syntax, structure, and common functions and libraries.
A (free) download of the Ruby framework is required in order to get the
most out of these classes, which are all completely free.

Stack Overflow

Stack Overflow isn’t a place for free classes, but if you’re looking for
advice/help/shoulder to cry on for nearly any coding issue you might
run into, than this is the right place. Thousands of developers use Stack
 Overflow to trade ideas, collaborate on common problems, or simply
 help each other out in a snag. Coding languages discussed here are
plentiful, ranging from C# to jQuery to Python to CSS. Stack Overflow
isn’t just a programming forum, however; it’s also a collaborative website
 built and maintained by those who use it (much like Wikipedia) with the
 goal of being an authoritative resource on all things code.

Scratch

While Scratch, a project of the MIT Media Lab, is aimed for kids,
 anyone who wants to dive right into the basics of programming
will find this site enjoyable. Scratch is a programming language
meant for creative Web projects: games, music, art, stories, animations
, etc. Learning how to use Scratch is an exercise in logic, which is
a foundational building block for
any code language out there. Scratch is free to download and fun to
 learn; once you’ve made something with this platform, you can upload i
t to the Scratch gallery and share it with the world.

Apple Developer Center

As one of the most popular companies in the world, Apple offers a huge hub
 of resources specifically for developers who might (or might not) be familiar
 with their apps, devices, or web browser. From this core of information, anyone
can access basic coding tutorials as well as much more advanced information, all for free.

Android Developer Center

If you’ve ever thought about developing for Android, a mobile platform with
millions of users in nearly 200 countries all over the world, than this nucleus
 of everything you ever wanted to know (and more) is what you’ve been
looking for. There’s something for everyone here, including the absolute
 beginner who has never coded in his or her life. SDKs, API documentation,
 design guidelines, etc. are also available, as well as training modules offered
 for novices to advanced users.

MobileTuts+

Mobile development is where it’s at on the MobileTuts+ site. There are
 a vast variety of high quality tutorials and articles here for mobile developers
, ranging from Windows Phone SDK to cross-platform development to HTML5.
 There’s also the occasional insight with working mobile developers who
give you a glimpse at what successful development technologies and
 strategies they themselves are using. The site is nicely organized into
 sections, so you can find tutorials, articles, tips, or videos quite easily.

Programr

Learn and practice your coding right in your web browser with this
 interactive site. There are several ways you can use Programr to learn
something new or brush up on coding you already know and love: visit
the Training Labs, where you can practice programming by solving real
world exercises, take on one of the coding Challenges, check out one
 of the 2000+ apps that have been made by other Programr users for
 inspiration, or enter one of the ongoing Contests. All of the information
here is free, and a wide variety of coding languages from Java to SQL are offered.

edX

edX is a collaborative effort between Harvard University and MIT to
bring free online courses from both institutions to the Web for anyone
to take advantage of. Classes from Harvard, MIT, and Berekley are offered
 here for free, with more universities joining in the near future. Certificates
 of completion are awarded at the time of this writing for free; however,
 a “modest fee” for these certificates is planned for future students. Classes
are somewhat sparse right now, but the origin of the classes as well as the
 informational content is well worth a look; for example, you could try Software
 as a Service from Berkeley, Introduction to Computer Science from Harvard,
 or Introduction to Computer Science and Programming from MIT – all for free.

YouTube EDU

YouTube, along with millions of cats-doing-stuff videos, offers a hub of educational
 content with offerings from organizations such as NASA, the BBC, TED,
and many more. If you’re a visually oriented person who learns by watching
 someone else do something, than this is the place for you. You’ll find coding
-related videos under the Engineering category; course offerings range from
Intro to Computer Science to Web Development to Database Management.
These are meant to be standalone informational offerings rather than part of
a cohesive course; however, if you would like to dip your toes in a subject and
want to get a quick video introduction from leaders in the field, this is a good solution.

Processing

Processing.org is a central place for Processing, “is a programming
 language, development environment, and online community that since
2001 has promoted software literacy within the visual arts.” Everything
you need to learn this language from the ground up is here, including a
 free download of the software platform, tutorials, example code, and a
forum for when you really get stuck.

Eloquent Javascript

Whether you’d like to learn JavaScript from the ground up, or merely
brush up on a few fundamentals, then you’ll want to check out this website
. It’s actually based around a full-length book, and is browser-based with
 game-based interactive tutorials that let you see what JavaScript can do
 in a fun and intuitive way.

Code Avengers

Get your inner superhero on with this fun, game-based site that offers
 comprehensive courses on HTML, CSS, and Javascript. No registration
is required, just click the “Get Started” button and you’re off and runnin
For example, the JavaScript 1 course is 40 short lessons with five tasks that 
you must complete in each lesson before moving on to the next. Each module
 also offers interactive challenges and a quiz to test your newfound skills. Cool
 features: a glossary that is instantly available for whatever node you’re 
currently working on, a notepad application if you want to take notes, and 
a list of Code Avengers keyboard shortcuts so you can easily navigate within
 the website. Classes are free.

Code School

Not all the courses offered at Code School are free, but there are
several good ones that are (and you might just be tempted to take
 a paid one once you run through one of the classes!). The first
thing you’ll notice about Code School is how well everything is
designed – it’s just a very aesthetically pleasing site. Code School
delivers all classes within your web browser via video lectures,
various coding challenges and quizzes, screencasts, and intuitive
coding tutorials where you get hands on with what you just learned.
 Each class has at least five levels, and all challenges/quizzes must
be solved before you can advance to the next level. Once you get to
 the end and unlock the final level, you’ll receive a cool badge and
 potentially win some swag – like discounts off your next Code School course.

Hackety Hack

Hackety Hack is meant for people who have had zero previous
 programming experience; however, if you’ve been meaning to
 learn Ruby and you’d like to do it as painlessly as possible then
 this might be a good spot for you. You’ll be using the Shoes
 cross-platform toolkit to go through the lessons and figure out
 how to use Ruby effectively; once you get going you can upload
 your project to the Gallery of programs that other users have
shared and show off your expertise.

Learn Code The Hard Way

Okay, yes, the title of this website is a little bit less than inspirational.
 However, this is definitely one of the most useful sites on the Web for
 learning code: C, Python, Ruby, SQL, and Regex. All of these languages
 are meant to learn using in-depth instruction found in a book for each
coding platform. The “hard way” is basically this: learning each exercise
 in depth, making the code run, and not moving on until you’ve mastered
 what you’re currently looking at. The books are free online to read within
your web browser; you can also choose to purchase them for a nominal
 fee if you’d like to keep them.

Alice

Just like MIT’s Scratch (another entry on this list), Alice is primarily aimed
at the younger set who want to try their hand at programming. However,
 anyone who wants to give coding a go or simply flex their skills in another
 kind of environment will enjoy this particular platform. Alice is educationa
l software that teaches students how to program in a 3D environment.
Animations or games are the focus here, with tools and materials intended
 to encourage logical thinking, problem solving, and of course, computer
 programming. Alice was developed and is maintained by Carnegie
Mellon University. The downloads and teaching materials are free,
and it’s a great introduction to object-oriented programming, as well
as fundamental coding concepts.

Google it

While all of the resources listed here are fantastic in their own right, there
 are still many more too numerous to list, for whatever coding language you
might possibly be interested in learning. Here are a few Google queries
 you can use to narrow down .
“learn (insert coding language here)”
Believe it or not, this is an incredibly powerful search string, and
will bring up a solid first page of results.
inurl:edu "python"
This tells Google to search within the URL keeping the search
 parameters to only .edu sites, looking for the coding language Python.
-inurl:htm -inurl:html intitle:"index of" +("/ebooks"|"/book") +(chm|pdf|zip) "python"
Now we’re getting fancy. Basically, this tells Google to find book or e-book
directories with Python books in them, in several different formats. You
can also look for specific publishers, like this:
-inurl:htm -inurl:html intitle:"index of" +("/ebooks"|"/book") +(chm|pdf|zip) +"o'reilly"
Or specific disciplines of study:
-inurl:htm -inurl:html intitle:"index of" +("/ebooks"|"/book") +(chm|pdf|zip) +"software development"