An open API service indexing awesome lists of open source software.

https://github.com/fielding/redstone-university

An interactive course on computer science and digital architecture, built from the ground up in Minecraft.
https://github.com/fielding/redstone-university

bitwise-operators boolean-algebra boolean-logic computer-science course digital-architecture minecraft

Last synced: 11 months ago
JSON representation

An interactive course on computer science and digital architecture, built from the ground up in Minecraft.

Awesome Lists containing this project

README

          




Redstone University Logo

Redstone University


An interactive course on computer science and digital architecture, built from the ground up in Minecraft.




Course Structure
·
Report a Bug or Typo in the Course
·
Request a Feature


Course Status: In Development
Contributions Welcome

---

## About The Project

Have you ever used a computer and wondered what’s *really* happening inside? Not just the software, but the deep, physical magic behind it all?

**Redstone University** is a journey into the heart of the machine. This project provides a complete, university-level curriculum for learning computer architecture from first principles. But instead of abstract Hardware Description Languages and simulators, our campus is the world of Minecraft. We will make the abstract tangible, turning theory into a physical, working machine that you can walk around inside of.

As a self-taught computer engineer, I found myself wanting to explore the foundational principles of computer science. The initial spark for this project, however, came from wanting to build something that could share these incredible ideas with my daughter, Ada. Ada introduced me to minecraft when she was 2 years old, and we've been building together ever since. I realized that the abstract concepts of binary, bitwise operations, logic gates, and computer architecture are sometimes introduced in ways that make them feel very intangible. At the same time, I saw the incredibly complex and logical machines being built in Minecraft with Redstone. The idea was born: **what if we could learn these concepts in a tangible way, by building a computer from scratch, using tools we already love?**

That is the mission of Redstone University. We will make the abstract tangible. We will turn theory into a physical, working machine that you can walk around inside of.

### Who Is This For?

This course is for the curious. It's for:
* **My daughter, Ada**, for whom this project was first imagined.
* **Students and kids** who want a fun, hands-on introduction to STEM and computer science.
* **University CS students** who want a physical way to visualize the concepts from their "Computer Architecture" class.
* **Self-taught programmers and professionals** who want to solidify their understanding of what's happening at the hardware level.

---

## Course Structure & Curriculum

This course is structured as a complete curriculum, taking you from zero knowledge to a fully functional, programmable 4-bit computer. We will follow a clear, logical path, broken into five distinct parts:

* **Part I: The Foundations - Speaking to the Machine.** We will begin by building the essential human-computer interface. We'll learn the language of binary, the grammar of Boolean logic, and construct our own "keyboard" and "monitor."
* **Part II: Engineering a Robust Arithmetic Unit.** Here, we will build the mathematical core of our machine. We'll engineer an adder and subtractor, discover our machine's natural limitations through "bugs" like overflow, and upgrade our system to solve them, just like real engineers.
* **Part III: The Processor Core.** With our arithmetic unit perfected, we will forge the true brain of our computer: the Arithmetic Logic Unit (ALU). We will combine all our mathematical and logical circuits into one powerful, versatile, and controllable component.
* **Part IV: Creating an Automated Computer.** In the final core modules, we'll give our processor a memory to store its thoughts and a clock to act as its heartbeat. We will assemble everything into a single, automated machine that can run a simple program on its own.
* **Part V: Post-Graduate Studies.** For those who want to go even further, we'll explore advanced topics, tackling the complex challenge of making our computer display multi-digit decimal numbers, just like a real-world calculator.

Please see 'curriculum.md' for the full course outline and 'structure.md' for details on how the course is organized.

---

## Contributing

Contributions are what make the open-source community such an amazing place to learn and create. Any contributions you make are **greatly appreciated**.

If you have a suggestion to improve a lesson, fix a typo, or correct a circuit diagram, please feel free to fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement".

Please see [contributing.md](.github/CONTRIBUTING.md) for more details.

---

## License

This project is dual-licensed to ensure it remains a free educational resource while protecting the creator's rights.

#### Course Content
The educational content of this course, including all Markdown files (`.md`), images, diagrams, and assets, is licensed under the [Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License (CC BY-NC-SA 4.0)](http://creativecommons.org/licenses/by-nc-sa/4.0/).

Creative Commons License

This means you are free to share and adapt the material for **non-commercial** purposes, as long as you give appropriate credit and distribute your contributions under the same license.

#### Software
All source code in this repository, such as the build script, is licensed under the [MIT License](LICENSE). You are free to use, modify, and distribute this code for any purpose.