Free STEM guides · 120+ and counting
Clear, practical guides for curious people.
Step-by-step tutorials in coding, math, web development, science, and more.
Searching…
New to coding? Start with Java
Start learning how to program in Java today with this introductory series, structured similarly to a Computer Science I course.
Featured guides
All guidesChapter 1: Introduction to Java
Welcome to the first chapter of this introductory programming series. In this chapter, you will learn the basics of how programming languages make computers…
Console Blackjack in Java (21)
The rules of the game will be: It will be played with a single, standard Deck of 52 cards, though you could easily change it to accommodate larger deck…
What's Python?
Python is a high level, object-oriented, general purpose programming language primarily used in data science and web development. Let’s break down what that…
Restoring the Old Context Menu in Windows 11
Editing the Registry is easy. Just be careful to follow these steps exactly. The registry is where Windows keeps all its important settings. So if you mess…
PGP Encryption with Kleopatra
In this guide, you will learn how to encrypt and decrypt messages and files using Kleopatra and OpenPGP.
What is the Dark Web?
In this guide, you will learn about the Dark Web, its history, how it's used and what it's used for.
Latest
All guidesAugust 2024
- Recursive npm package installHere's a simple script that recursively searches through a folder, finds any instances of package.json, and runs npm install to install any dependencies needed…
July 2024
- How Retail Phone Stores WorkLearn how retail phone stores operate and how you can avoid wasting some of your money. I previously worked in cellular sales at retailers for Verizon, AT&T…
- Hide ProWritingAid's Annoying Floating Icon WidgetHow to hide the annoying floating ProWritingAid browser extension widget icon which hovers above almost every page you visit.
- Simple Pong (Extras)This guide is a continuation of the previous Simple Pong project. I'd encourage you to begin there if you haven't already. In this guide, you will learn how to…
- Simple 2D PongThe game will contain 4 classes. Main - Launches the program, starts the game and game timerPongGame - Extends JPanel, serves as the game's canvas, tracks…
- GUI BlackjackIn this project, we will expand upon the earlier console blackjack project. You should begin there if you haven't already. This project relies on much of the…
Volunteers wanted
Help make these guides better
We’re looking for volunteer authors and editors. Write a guide on something you know well, tighten up an existing one, or point out what could be clearer. Every guide stays free to read.
Volunteer to helpWrite a guide
Know a topic inside out? Draft a new guide or a series as an author, and an editor will help you polish and publish it.
Edit and review
Editors check drafts for accuracy and clarity, fix typos and broken code, and keep older guides up to date.
Suggest a fix
Spotted a mistake? Select the text in any guide and choose “Suggest a fix”, or send feedback from the end of the guide.