ebooks

Collection of open-access textbooks covering core Computer Science topics and geospatial modeling, published with MkDocs + Material.

Open-access textbooks covering core topics of an undergraduate Computer Science curriculum plus a specialized geospatial track. All books are published with MkDocs + Material and hosted free on GitHub Pages.

🌐 Language note: The books themselves are in Portuguese, as they were developed for Brazilian undergraduate courses. This index page is in English to align with the rest of the site.


🧭 Computing Track (8 books)

Textbooks for undergraduate Computer Science and Computer Engineering students, organized by prerequisites.

📘 Series: Foundations

No CS prerequisites — entry point.

  • C para Programadores Python e VisuAlg — C language leveling through comparative mapping with Python and VisuAlg. Prerequisite: already programming in Python and/or VisuAlg.

  • Introdução ao Computador — Data representation, architecture, and operating systems, without programming. Designed for continuing education of teachers (PROFCOMP), not CS undergraduates.

📙 Series: Computing Core

Requires an introductory programming course.

📗 Series: Advanced / Applied

Requires Data Structures and/or a consolidated language.

  • Compiladores — do zero ao Hack — Complete compiler construction (Jack → VM → Assembly), in the spirit of Nand2Tetris. Prerequisite: Estrutura de Dados.

  • Engenharia de Software — Processes, requirements, architecture, testing, and CI/CD.

  • Tutoriais — Guided practice in Docker, Clojure, Elixir, and Haskell; complements the assessment projects from the IPF book.


🌍 Geospatial Track (2 companion books)

A didactic textbook and a technical reference for geographic data science and discrete spatial simulation, designed to be read together.

Book Type When to use
Geospatial Modeling in Python Didactic textbook (from scratch) Learning geospatial Python. Chapters 1–13 are independent of DisSModel.
DisSModel Book Technical reference Already know DisSModel or migrating from TerraME. API, architecture, migration guide.

💡 Recommended flow: Read the textbook up to Chapter 14, then consult the DisSModel Book for framework details.


🤝 How to Use These Books

For Students

  • Follow the prerequisite chain within each series
  • Use the books as primary material alongside your courses
  • Check the “Tutoriais” book for hands-on practice with tools like Docker

For Instructors

  • All books are open-source and can be adapted for your courses
  • Each book has its own GitHub repository — contributions welcome
  • Feel free to use, modify, and redistribute (check individual licenses)

For Self-Learners

  • Start with Introdução ao Computador (no prerequisites)
  • Or jump to C para Programadores Python if you already know Python
  • For geospatial topics, begin with Geospatial Modeling in Python

📊 Overview

Category Books Language Format
Foundations 2 Portuguese Web + Jupyter
Computing Core 3 Portuguese Web + Jupyter
Advanced 3 Portuguese Web + Jupyter
Geospatial 2 English/Portuguese Web + Jupyter

Total: 10 open books · All free · All on GitHub Pages · All with source code available


Contributions welcome! See each book’s repository for guidelines.