Appendix F — Further Learning Resources

NoteIn this chapter, you will:
  • Find the official documentation of Python and the main libraries this book uses
  • Get a list of books and courses you can open on the web to keep learning
  • Learn about open data sources and GIS, ML, and AI resources
  • Find Indonesian-language resources and communities
  • Know how to judge a learning resource before trusting it

This book is only one doorway. When you finish (or midway, when you need detail), you will need other reading: official documentation to see every option of a function, other books that explain in a different style, or real data to practise on. This appendix gathers them by topic.

This appendix contains no code, so there are no scripts to download.

How to use this list

  • Every link was opened and checked on 2026-10-10. Everything listed below answered with HTTP status 200 (success), with one exception explained in the last section (Kaggle Learn). For most, the page title was also read to confirm that the content matches the description. When an address redirects to another address, the final address is the one listed.
  • Links can die or change content. This list is a snapshot of 2026-10-10. If a link no longer works, search for the resource’s name with a search engine.
  • We do not list prices or promotional claims, and there are no affiliate links. A resource marked “readable online” can really be opened at the site named; whether a printed or paid edition exists elsewhere is not the point of this list. A licence is mentioned only when it is clearly written on the resource’s own page.
  • Documentation versions. Many sites have a “stable” and a “latest” version. Choose the one that matches the library version on your computer; version numbers on the page may differ from what we saw.
  • Links that were dropped or could not be verified are in the last section, with the reasons.

Official Python documentation and core tools

Resource What for Link
Python 3.14 documentation The main reference for the language, the standard library, and “What’s new” docs.python.org/3.14
The official Python tutorial The language explained step by step docs.python.org/3.14/tutorial
The standard library A list of all built-in modules docs.python.org/3.14/library
Language reference Python’s grammar rules and data model docs.python.org/3.14/reference
What’s new in 3.14 New features of the book’s reference version (see also Chapter 47) docs.python.org/3.14/whatsnew/3.14
Using Python on Windows The Python install manager (see Appendix A) docs.python.org/3.14/using/windows
Virtual environments The official venv tutorial (see Chapter 17) docs.python.org/3.14/tutorial/venv
PEPs (Python Enhancement Proposals) The origin of and reasons for language features peps.python.org
PEP 8 The code style guide (Chapter 19) peps.python.org/pep-0008
PEP 20 “The Zen of Python”, the language’s design principles peps.python.org/pep-0020
Python Packaging User Guide Installing and publishing packages (Chapters 17, 45) packaging.python.org
pip Documentation of the package installer pip.pypa.io
uv Package and project manager (Chapter 17) docs.astral.sh/uv
ruff Linter and formatter (Chapter 19) docs.astral.sh/ruff
pytest Testing framework (Chapter 18) docs.pytest.org
mypy Type checker (Chapter 33) mypy.readthedocs.io
Python Developer’s Guide How Python development works and how to contribute (Chapter 68) devguide.python.org
PyPI The Python package repository pypi.org
conda-forge A community package channel for conda (Chapters 17, 38) conda-forge.org
conda documentation The package and environment manager (Chapter 17) docs.conda.io
Python wiki: Beginners Guide An entry point for beginners from the Python site wiki.python.org/moin/BeginnersGuide

Books and courses for learning Python

Resource What for Link
Automate the Boring Stuff with Python (Al Sweigart) Automating everyday tasks for beginners; the page says its content can be read under a Creative Commons licence automatetheboringstuff.com
Think Python, 3rd edition (Allen B. Downey) An introduction to programming with Python; the page states the CC BY-NC-SA 4.0 licence greenteapress.com
How to Think Like a Computer Scientist (interactive edition) An interactive book with exercises on the page runestone.academy
Python for Everybody (Charles Severance) Materials, lectures, and assignments for beginners; the page states the CC BY 4.0 licence py4e.com
CS50’s Introduction to Programming with Python An introductory course from Harvard cs50.harvard.edu/python
MIT OCW 6.0001 Introduction to computer science and programming with Python ocw.mit.edu
The Hitchhiker’s Guide to Python A guide to Python practice and tools docs.python-guide.org
Exercism: the Python track Practice problems with feedback exercism.org/tracks/python
Kaggle Learn Short lessons on Python, pandas, and ML (see the note in the last section) kaggle.com/learn
Real Python Python articles and tutorials realpython.com
Book list on the Python wiki A list of books compiled by the community wiki.python.org/moin/PythonBooks
PyVideo An archive of Python conference talk recordings pyvideo.org

Data, statistics, and data science

Resource What for Link
NumPy Numerical arrays (Chapter 23) numpy.org/doc
pandas Data tables (Chapters 23, 25) pandas.pydata.org/docs
Matplotlib Basic charts (Chapter 25) matplotlib.org
seaborn Statistical charts (Chapter 26) seaborn.pydata.org
SciPy Science and statistics (Chapter 26) docs.scipy.org
statsmodels Regression and statistical models (Chapter 27) statsmodels.org
scikit-learn Classical machine learning (Chapters 25, 54) scikit-learn.org
Jupyter Interactive notebooks (Chapters 25, 29) jupyter.org
Quarto Reports and documents that run code (Chapter 29) quarto.org/docs/guide
Snakemake Repeatable analysis workflows (Chapter 29) snakemake.readthedocs.io
DVC Data versioning (Chapters 29, 58) doc.dvc.org
Zenodo Storing and citing research data and code (Chapter 29) zenodo.org
Python Data Science Handbook (Jake VanderPlas) A book on numpy, pandas, matplotlib, and scikit-learn; the page states the text is CC-BY-NC-ND and the code is MIT-licensed jakevdp.github.io/PythonDataScienceHandbook
Scipy Lecture Notes Lecture notes on the scientific Python ecosystem scipy-lectures.org
Polars Fast data tables (Chapter 50) pola.rs
Apache Parquet Columnar format (Chapter 50) parquet.apache.org/docs
Dask Parallel computing for big data (Chapter 53) docs.dask.org

Web, APIs, databases, and interfaces

Resource What for Link
Requests HTTP client (Chapter 21) requests.readthedocs.io
HTTPX Modern HTTP client (Chapter 21) python-httpx.org
Pydantic Data validation (Chapter 34) pydantic.dev/docs
FastAPI Web framework for APIs (Chapter 36) fastapi.tiangolo.com
Flask Lightweight web framework (Chapter 36) flask.palletsprojects.com
Django Full-featured web framework (Chapter 36) docs.djangoproject.com
MDN: Learn web development The basics of HTML, CSS, and JavaScript for web developers developer.mozilla.org
Streamlit Quick data apps (Chapter 43) docs.streamlit.io
Gradio Model demo interfaces (Chapter 43) gradio.app/docs
Dash Interactive dashboards (Chapter 43) dash.plotly.com
Pyodide Python in the browser (Chapter 37) pyodide.org
SQLAlchemy Databases from Python (Chapter 24) docs.sqlalchemy.org
SQLite Documentation of the single-file database (Chapter 24) sqlite.org/docs
PostgreSQL Documentation of the server database (Chapters 24, 40) postgresql.org/docs
Scrapy Web scraping framework (Chapter 41) scrapy.org
Beautiful Soup Reading HTML (Chapter 41) crummy.com/software/BeautifulSoup
RFC 9309 The robots.txt standard (Chapter 41) rfc-editor.org/info/rfc9309
Celery Task queue (Chapter 67) docs.celeryq.dev
Docker Containers and Dockerfiles (Chapter 48) docs.docker.com/get-started

GIS and environmental data

Resource What for Link
GeoPandas Vector data (Chapter 38) geopandas.org
Shapely Geometry (Chapter 38) shapely.readthedocs.io
pyproj Coordinate systems and projections (Chapter 38) pyproj4.github.io/pyproj
Rasterio Raster data (Chapter 39) rasterio.readthedocs.io
GDAL The base library for geospatial formats (Chapter 38) gdal.org
QGIS Desktop GIS application (Chapter 40) qgis.org
PostGIS PostgreSQL’s spatial extension (Chapter 40) postgis.net/documentation
STAC Geospatial data catalogue specification (Chapter 51) stacspec.org
PySTAC Python library for STAC (Chapter 51) pystac.readthedocs.io
xarray Labelled multidimensional arrays (Chapters 51, 53) docs.xarray.dev
Geographic Data Science with Python A geographic data science book written in notebooks geographicdata.science/book
Google Earth Engine Earth imagery analysis platform (Chapter 59) developers.google.com/earth-engine
Planetary Computer A STAC-based catalogue of Earth data planetarycomputer.microsoft.com
Sentinel-2 COG (AWS Open Data) Sentinel-2 imagery in COG format registry.opendata.aws
Copernicus Data Space Ecosystem Sentinel and Copernicus data dataspace.copernicus.eu
USGS EarthExplorer Landsat imagery and USGS data earthexplorer.usgs.gov
ESA Earth Online ESA’s portal for Earth observation data and documentation earth.esa.int/eogateway
OpenStreetMap An open base map openstreetmap.org
Open-Meteo An open weather API (used in Chapter 21) open-meteo.com

Before using any data in real work, read its licence terms (see Chapter 63).

Machine learning and AI

Resource What for Link
PyTorch: installing Install commands by OS and GPU (Chapter 55) pytorch.org/get-started/locally
PyTorch tutorials The official tutorials (Chapter 55) docs.pytorch.org/tutorials
Dive into Deep Learning A deep learning book with code d2l.ai
Learn PyTorch for Deep Learning An online book introducing PyTorch learnpytorch.io
fast.ai: Practical Deep Learning A practical deep learning course course.fast.ai
Hugging Face: Learn Courses and guides on open models (Chapter 61) huggingface.co/learn
Hugging Face: LLM Course A course on language models (topic of Chapters 60 and 61) huggingface.co/learn/llm-course
Hugging Face documentation The transformers library and the Hub (Chapter 61) huggingface.co/docs
OpenCV Image processing (Chapter 56) docs.opencv.org
pymoo Multi-objective optimisation (Chapter 57) pymoo.org
Optuna Hyperparameter search (Chapter 57) optuna.readthedocs.io
SHAP Model explanation (Chapter 58) shap.readthedocs.io
MLflow Experiment and model tracking (Chapter 58) mlflow.org/docs
Model Context Protocol MCP documentation (Chapter 62) modelcontextprotocol.io
NVIDIA: drivers The official driver download page (Chapter 55) nvidia.com/drivers
NVIDIA: CUDA Toolkit The CUDA Toolkit download page (Chapter 55) developer.nvidia.com/cuda-downloads

AI library documentation changes fast. This book always states versions and dates; when a command in the newest documentation differs from the book, follow the official documentation.

Software engineering, security, and licences

Resource What for Link
Pro Git The official Git book (topic of Chapter 20) git-scm.com/book
GitHub documentation: getting started Repos, issues, pull requests, and GitHub Actions (Chapter 20) docs.github.com
Open Source Guides How to join and run open source projects (Chapter 68) opensource.guide
Choose a License Choosing a software licence (Chapter 63) choosealicense.com
SPDX License List A list of licences with standard identifiers (Chapter 63) spdx.org/licenses
GNU licences The text of the GPL and similar licences (Chapter 63) gnu.org/licenses
Creative Commons BY 4.0 A summary of the CC BY 4.0 licence (Chapters 21, 29) creativecommons.org
OWASP Top Ten A list of common web application vulnerabilities (topic of Chapter 49) owasp.org/projects/top-ten
Numba Speeding up numerical code (Chapter 66) numba.readthedocs.io
Cython Compiling Python-like code (Chapter 66) cython.readthedocs.io
PyO3 Python extensions with Rust (Chapter 66) pyo3.rs
Mermaid Diagrams from text (used in this book) mermaid.js.org

Indonesian-language resources

Resource What for Link
Dicoding: Memulai Pemrograman dengan Python A Python class in Indonesian from Dicoding Indonesia dicoding.com/academies/86
Petani Kode A programming tutorial site in Indonesian petanikode.com
Komunitas Python Indonesia The community blog: meetup news and job listings; some content may be old python.or.id
PyCon ID The Indonesian Python conference (the 2026 edition page) 2026.pycon.id
Portal Satu Data Indonesia The Indonesian government data portal data.go.id
Data Terbuka BMKG Weather forecast, earthquake, and weather early-warning data from BMKG data.bmkg.go.id
Ina-Geoportal The Indonesian geospatial portal (the page is titled “Ina-Geoportal”; we did not read its details) tanahair.indonesia.go.id/portal-web
JDIH BPK: regulations database Searching the text of laws and regulations (Chapter 63) peraturan.bpk.go.id

For Indonesian topics, start from primary sources (the agency that publishes the data or rules), not from third-party summaries. This book is itself written in parallel Indonesian and English; when reading English documentation, use Appendix C to match terms.

Communities and latest news

Resource What for Link
Discussions on Python.org The official Python community forum discuss.python.org
PyCon (conference organisation) Information about PyCon conferences pycon.org
Django community A doorway to Django forums and user groups djangoproject.com/community

How to judge a learning resource

The internet is full of learning material, but not all of it is good or current. A few simple questions before you trust a resource:

  1. Which version? Python, pandas, and other libraries change. A tutorial that is years old may use old ways. Match it to the version on your computer.
  2. Who wrote it? Official documentation and books maintained by their authors are usually more trustworthy than copies on other sites.
  3. Can you run the examples? Examples that cannot be run are often wrong. Type them in and run them yourself.
  4. What is the licence? Especially for data and code you will reuse (Chapter 63).
  5. Are there claims that are too good? Beware of promises like “become an expert in a day”.
TipTIP

The most useful habit: when you learn a new function, open its official documentation and read one example there. Official documentation is usually the only source that surely follows the newest version.

NoteREMEMBER

This list was compiled by checking each link on 2026-10-10, not by judging the quality of each content. Listing a resource is not a guarantee that its content suits you; it only means the link exists and the page appears to match the description.

Next: return to Appendix E to choose a learning path, or to Appendix C if a term needs remembering.