If you're learning to code, sometimes it can be more fun to work through practical end-to-end projects than to learn the theory.
These 15+ tutorials will be helpful whether you're:
- Just starting out and want to get a feel for coding before deciding if it's for them
- Going through another Python course but want to do more practical projects alongside the theory
- Have finished a course and are stuck in the "What should I build phase"
- Are building up your portfolio to apply for jobs
You can go through them all in order, or jump in wherever looks interesting. If you prefer, they're also all available as a free e-book (direct download, no email required) in PDF, epub, or mobi formats.
Note: these posts were commissioned by Repl.it and also show you how to use their online IDE and hosting platform. Everything is entirely free (freedom and beer) though and you are not required to purchase any premium services to go through them. A video version will be released soon.
In this section of the course, you'll learn the basics of Repl.it. But that doesn't mean you won't build some fun stuff along the way.
Learn the basics of the Repl.it IDE. Why use an online IDE and what are all those different panes? Build a simple program to solve your maths homework.
Computers were initially created to read and write files, and although we've come a long way files remain central to everything we do. Learn how to create them, read from them, write to them, and import and export them in bulk.
No one is an island, and if you build software you'll build it on top of existing modules that others have written. Here we show you how to work with other people's code in a variety of ways: in many cases all you need to do is import antigravity and fly away.
Data is only useful if it can be easily understood. Plots, charts, and graphs are the easiest way to know what's happening in the world around you. And did you know that data science is the sexiest job of the 21st century. Follow along to plot every city in the USA and find out if richer people live longer.
Did we mention that no one is an island? Coders don't have to work alone. You can invite your friends to code along with you, a technique used by beginners and experts alike. Learn how to code collaboratively, as if you were using a Google Doc.
Once you know the basics, it's time to build larger and more complicated projects and keep them secure.
Most open source software lives on GitHub and it's easy to take advantage of all of this free software by pulling code from GitHub to Repl.it and running it with one click. Some software needs to be configured in specific ways so you'll also learn how to modify what happens when you press that big green "run" button.
Do you want to develop games? Of course, you can do that with Repl.it to. We'll build a 2D juggling game using PyGame in this lesson and you'll learn more about graphics programming at the same time: sprites, physics, and more.
Have you been hacked? It's only a matter of time if you haven't. Learn how to keep your secrets safe, even when coding in public spaces. Pro tip: if you accidentally paste a password into your code and then remove it, others might still find it in your history, so you'll learn how to navigate that too.
By this stage you'll have made a few mistakes. Learn the TDD way and how to write code that tests your other code to catch frustrating errors before they can hurt anyone. Repetitive jobs is what computers are best at after all.
Have you seen the Matrix? Learn to be the Neo of coding by getting more than one cursor, using keyboard shortcuts, and all of the other productivity features that Repl.it offers. You'll be soon producing more code in less time.
Once you've gone through everything, you might think "but what should I build?". It's a common problem and we've got you covered. Choose your favourite projects from a list (or turn on the coffee machine, order some pizza, and get through them all). Once you've gone through the step-by-step guides you can easily modify or extend the projects to make them your own.
Learn more about what web scraping is, how websites are built, and how to automatically scrape data from websites.
Extending the beginner's web scraping tutorial, you'll build a more advanced scraper that extracts the plain text from news articles, stripping away the 'boilerplate' content, such as text in sidebars.
Build an echo bot using the Discord API. Your bot will always respond with exactly what you send it, but you can customize it afterwards to do something more useful.
A NodeJS version of the Discord bot tutorial above. Even if you prefer Python, it's good to go through this one too to get experience with other languages.
Build a django web application and host it with Repl.it. You'll use geolocation a weather API to show the user their local weather forecast.
Another web application, but using NodeJS instead of Django. This is a different application where you'll build a basic app to manage customer information.
Build a machine-learning based text classifier. We skip the maths but show how you can use machine learning libraries to implement useful solutions without in-depth theoretical knoweldge.
Whether you're applying for jobs or just like algorithms, it's useful to understand how sorting works. In real projects, most of the time you'll just call
.sort(), but here you'll build a sorter from scratch and understand how it works.