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.
Part 1: The basics of Repl.it
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.
Lesson 1: Introduction to Repl.it and using the IDE
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.
Lesson 2: Working with files using Repl.it
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.
Lesson 3: Managing dependencies with Repl.it
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.
Lesson 4: Data science: plotting and graphing
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.
Lesson 5: Pair programming and using multiplayer
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.
Part 2: advanced Repl.it use
Once you know the basics, it’s time to build larger and more complicated projects and keep them secure.
Lesson 6: Running projects from GitHub
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.
Lesson 7: Building a game with PyGame
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.
Lesson 8: Can you keep a secret? What about from time travellers?
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.
Lesson 9: Introduction to TDD using PyTest
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.
Lesson 10: Become an elite hacker with productivity hacks
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.
Lesson 11: Keeping your data in check with the Repl.it database
Now that you are starting to build larger and more complicated applications, it is time to start using databases to keep your data clean and secure.
Lesson 12: Repl audio – control (or create) your music with code
Find, download, play, and control the volume of your music, all in code. If that’s not enough, create your own music too.
This is the part where you realize that the possibilities are endless while you learn how to control your music with code.
Part 3: building your own projects
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.
Beginner web scraping with Python and Repl.it
Learn more about what web scraping is, how websites are built, and how to automatically scrape data from websites.
Building news word clouds using Python and Repl.it
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.
Building a Discord Bot with Python and Repl.it
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.
Building a Discord bot with Node.js and Repl.it
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.
Creating and hosting a basic web application with Django and Repl.it
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.
Building a CRM app with NodeJS, Repl.it, and MongoDB
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.
Introduction to Machine Learning with Python and repl.it
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.
Quicksort tutorial: Python implementation with line by line explanation
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.