Your education doesn’t have to stop once you leave school. We’ve put together a curriculum of some of the best free online classes available on the web this fall for the latest term of Lifehacker U, our regularly-updating guide to improving your life with free, online college-level classes. Let’s get started.Whether you’re headed to college for the first time or you’re back in classes after a relaxing summer vacation, or long out of school and interested in learning something new, now’s the time to turn it on and amp up your skills with some interesting and informative classes and seminars. Anyone with a little time and a passion for self-growth can audit, read, and “enroll” in these courses for their own personal benefit. Schools like Yale University, MIT, Stanford, the University of California at Berkeley, and many more are all offering free online classes that you can audit and participate in from the comfort of your office chair, couch, or computing chair-of-choice.
- Stanford University – Principles of Computing – This course is self-paced, geared completely towards beginners, and requires no computer science or technology background to really appreciate. If you’ve ever wanted a super simple, basic primer to computing technology—something you could send to a completely tech-phobic friend (or maybe that’s you!) this is it. You’ll learn basic lingo like CPUs and chips, GPUs and memory, disk and megabytes and gigabytes and so on, but you’ll also learn the nature of computers and code, how digital images work, and you’ll eventually dive into the basics of logic, how the internet itself works (IP addresses, routing tables, Ethernet, Wi-Fi, and so on), and the basics of computer security.
- Hebrew University of Jerusalem – Build a Computer from First Principles: From Nand to Tetris – Professors Shimon Schocken and Noam Nisan – By “first principles,” this course means teaching you the basics of elementary logic and how logic gates work, and you’ll use that knowledge to work through six hands-on projects that will have you building a completely functioning computer by the end of the course. You won’t need previous computer engineering or science knowledge to get the most out of this, either. All of the tools and the hardware simulator you need will be supplied with the course. In the process, you’ll learn exactly how computers work on a ground level, in probably the best way possible.
- Harvey Mudd College – CS For All: Introduction to Computer Science and Python Programming – Professor Zachary Dodds – Python is one of our favorite programming languages for first-time learners, and this course will introduce you to both the language and to computer science in general. The course covers concepts around computer science from both a high and ground level, showing you how circuits work as well as how computers handle information in general. You’ll then learn the basics of Python to see how computers process and handle instructions, sift through data, and how to design algorithms to make computers do your bidding. Of course, no programming knowledge is required in advance.
- The University of British Columbia- How to Code: Systematic Program Design – Part 1 – Professor Gregor Kiczales – This course is part one in a short series of classes that will walk you through concepts like how to represent information as data that a computer can understand, and the basics of how to structure code and commands in a way that computers can understand, how to properly test a program, and how to simplify and streamline code. The first part of the series focuses on how to make sure your code is as tight and well-structured as possible. If you follow all three parts of the series, you’ll end up at the final project, where you’ll make an interactive game, and learn a ton along the way.
- Microsoft – Introduction to Windows Server – Professor Cynthia Staley – If you’re going to work in technology as a sysadmin or an analyst, you’ll probably have to work on Microsoft’s Windows Server at some point or another—and even if you don’t, having it in your back pocket is a valuable skill. This course will introduce you to the technology and its capabilities, help you learn the basics of installing and administering a Server 2012 system, and get the fundamentals down you may need for future classes (or an MCSA certification!) on the topic. You’ll learn about server roles and features, learn to install and monitor Windows server, and choose between Server 2012 editions based on you and your needs.
- The University of Maryland at College Park – Software Security – Professor Michael Hicks – Learn the foundations of software security and common attack vectors like SQL injections, buffer overflows, and session hijacking and sidejacking in this course. The course takes the approach that you’re learning to build a system with security in mind as a practice, so while you’re learning how threats work and how exploits are used against common platforms, you’ll learn how to design systems to protect against them and minimize risk at the same time. At the end of the course, you’ll get a great introduction to penetration testing, which is a great aspect of cybersecurity often saved for expensive certification courses.
- Cornell University – The Computing Technology Inside Your Smartphone- Professor Dave Albonesi – You probably have a smartphone in your pocket already, and it’s likely a very powerful computer in its own right. But how much do you know about that tech, aside from that it’s just smaller and lighter than what you may use in your desktop or laptop computer? This course will explain all of that to you, including concepts like how smartphone CPUs work, how mobile computer systems are designed, and common methods to speed up computing for smaller, mobile platforms. It’s still a computer science course, so you’ll design your own small, working computer in the process, and you’ll also learn about logic, instruction sets, and application software along the way.
- Code School – Learn HTML/CSS – This is actually a course series from Code School on learning to build web sites and manage front ends of web platforms, but we’re focusing here on the first two classes in the series,Front End Foundations and Front End Formations. Both courses will teach you up to date HTML and CSS, how to build basic web sites with those technologies, and how to customize web pages and sites accordingly based on specific needs or design choices. From there though, the sky’s the limit, and you can move on through the course path to more complex technologies, like intermediate CSS and SVG.