If you’ve ever considered programming as a skill beyond your reach, think again. Every software and website developer started somewhere — and there are plenty of ways to break into the language of your choice and build your skills.
We tried out a number of courses for ourselves, and we’re sharing our hands-on experience below.
How these courses work
Each course is chock-full of concrete examples to go along with conceptual code. When an instructor adds lines of code, you can bet they’re going to show you what that addition actually does. We felt the lessons within the courses we’ve selected will help you learn by practice too; it’s an interactive experience, not a lecture. As you follow along, many instructors include challenges that you can try yourself.
And once you’ve purchased a course, it’s yours for life. You can stream lessons online 24/7 from just about anywhere, from your computer, phone or tablet. The lessons are yours to watch, skip and rewatch as you see fit.
Try it all with Python
Python is a versatile language, to say the least. It’s used in software development, data analysis, web development and more. Its simple structure makes it straightforward to learn, and it can be used in conjunction with cool tools like Django, a Python-based web framework for streamlining website creation.
Python for Everyone ($14.99; store.cnn.com) is a solid place to get started if you have little to no experience with the language. The course opens up with the building blocks of Python, like strings and variables, and some common errors you may encounter. Soon, you’ll be completing basic projects interspersed with more advanced lessons, and finally you’ll integrate HTML and CSS for some web development. We enjoyed the instructor’s frequent use of challenges to make sure we were up to speed.
Python is great for data analysis too. Learn Python for Data Analysis and Visualization ($12.99; store.cnn.com) is a course that sets out to help you manipulate, analyze and graph data using Python. The instructor works rather fast — so you may need a little more experience with Python to get started — but still does a good job at both explaining concepts and really showing how each new addition to the code affects the project. You can even download all the code you’ll be working with via Github to check your work.
If you’re looking to dive into specific projects in Python, The Python Mega Course: Build 10 Real World Applications is a good bet. This $42 course contains over 20 hours of lessons concentrating on projects like building a desktop application and creating a website — that is, after the instructor goes over many basic Python functions that you’ll use later on. And while the applications and sites you’ll design are simple, the instructor packs many essentials into the lessons and frequently runs his scripts to show how new lines of code affect the project. He also introduces important tools for Python, such as the built-in tkinter database for program interfaces, or pandas, a software manipulation library built for Python.
App-making with Swift, Xcode and SwiftUI
In discussions about creating software for macOS, iOS, iPadOS, watchOS and tvOS, you’ll often hear Xcode and SwiftUI come up. Rather than languages, these are resources you can use to intuitively develop software in a number of languages, such as Swift, Apple’s programming language. Xcode is essentially an environment in which you can create and test code, and SwiftUI is a set of tools for building your app’s user interface in Swift.
If you’re looking to get deep into app design, SwiftUI: The Complete Developer Course ($14.99; store.cnn.com) is a great tool. This course contains a tremendous range of lessons, with concise conceptual explanations from the basic to the complex. And thanks in part to Xcode’s preview section, you can see in real time how the code affects the software. Naturally, SwiftUI comes into play later on when we’re ready to create our interface. There’s just so much to learn from this instructor, like gesture controls, graphics and animations, and even enabling iCloud for your apps.
Another fun course to try out is SwiftUI Apps for All Apple Platforms Course. This course sets you on a similar path, starting you off with the fundamentals of Swift coding and using Xcode’s interface. But unlike the previous course, this one has modules for specific projects and platforms like widgets, iPad, Apple Watch, Mac and Apple TV. This is a great course for those who want to develop on specific platforms, as each has its own quirks and unique functions. The instructor explains these differences (and similarities) well, while walking you through projects and code functions.
Front-end web development
If you’ve got a good idea of what visual format you’d like for your site, you can check out The Complete Web Developer Course: Build 20 Websites ($14.99; store.cnn.com), which takes a different approach. The instructor still runs you through a great deal of HTML and CSS, but you’ll be developing your website in real time from the get-go instead of taking more conceptual lessons first. This style may work better for those who really want to dive in immediately. What you’ll end up with is a relatively simple but aesthetically awesome website, featuring anything from video backgrounds to a display with bold color and style.
Develop software with C++ and C#
Both C++ and C# have long been hailed for their complexity and power in the realm of coding. They can both be used to create web applications, desktop apps, games and more. They can also produce faster programs than those made with some other languages, such as Python, when dealing with complex code. And though they are both means to similar ends, these languages differ in both small and major ways, from written syntax to the way their codes are fundamentally compiled.
Breaking into C++ can be challenging, but there are courses out there to make things simpler. C++ for Beginners ($15; store.cnn.com) is all about the fundamentals. The instructor goes into great detail about concepts like variables, operators and vectors. His slides place heavy emphasis on both concepts and code, and when he’s teaching the latter, it’s always anchored in a concrete project or application. We especially appreciated the slideshows at the beginning of each new lesson that break down otherwise abstract concepts.
On the C# side of things, The Complete C# Master Class Course has you covered, whether you’re a beginner or just a little rusty. The $12.99 course contains over 20 hours of content and numerous practice exercises. As with other comprehensive coding courses, the instructor introduces the basics as well as what they’re used for. Ultimately, the instructor gradually covers more complex coding while developing a text-based game. You’ll always be practicing and checking your work alongside the instructor, and you’ll be doing it while creating something fun.
Programming is like art — there are just so many mediums out there. And while many of these mediums can be used to create similar products, each brings its own technique to the table. Whichever goals you have in mind, the courses we’ve covered can help you hone your skills and master your preferred form. Some courses aim for specific results, while others are generalized for a more holistic learning experience. And with lifetime 24/7 access, the pace is up to you. If you’re looking to learn multiple languages, the CNN Store offers a Learn to Code package for $59.99.