explaingit

selfteaching/the-craft-of-selfteaching

Analysis updated 2026-06-24

15,881Jupyter NotebookAudience · generalComplexity · 1/5LicenseSetup · easy

TLDR

An open Chinese-language book taught through interactive Jupyter Notebooks that uses Python to teach beginners how to teach themselves new skills.

Mindmap

mindmap
  root((craft-of-selfteaching))
    Inputs
      Jupyter Notebooks
      Markdown source
    Outputs
      Readable book
      Runnable code cells
    Use Cases
      Self-learn Python
      Build study habits
      Set up dev environment
    Tech Stack
      Python
      Jupyter
    Topics
      Mindset
      OOP and testing
      Regex and recursion
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Read the notebooks locally to learn Python from zero

USE CASE 2

Practice deliberate self-teaching using the chapter exercises

USE CASE 3

Use as a Chinese-language Python primer for a study group

What is it built with?

PythonJupyterMarkdown

How does it compare?

selfteaching/the-craft-of-selfteachingkarpathy/microgradcamenduru/stable-diffusion-webui-colab
Stars15,88115,83215,942
LanguageJupyter NotebookJupyter NotebookJupyter Notebook
Setup difficultyeasyeasyeasy
Complexity1/52/51/5
Audiencegeneralresearchergeneral

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 30min

Need a working Python plus Jupyter install to run the notebooks, the text is primarily Chinese.

Free to share for non-commercial purposes, but you cannot modify the content or use it commercially.

In plain English

The Craft of Self-Teaching is an open book written in Chinese, aimed at people who want to learn how to learn, and specifically, how to teach themselves new skills, with coding used as the primary example. The central argument, stated in the description, is that people who cannot teach themselves have no future. The book is structured as a series of interactive Jupyter Notebooks, documents that mix readable text with live, runnable code, so readers can experiment directly as they read. It covers three broad areas: the mindset and methods of effective self-teaching (why self-learning matters, how to read to actually absorb knowledge, deliberate practice), a practical introduction to Python programming (values, control flow, functions, strings, data structures, files), and deeper topics (object-oriented programming, writing reusable functions, testing, recursion, and regular expressions). Beyond the Python content, the book addresses how to avoid common learning pitfalls, how self-learners should engage with communities, and what to do next after finishing. It includes appendices on setting up a development environment and using version control tools. The book is released under a Creative Commons BY-NC-ND license, meaning it can be shared freely for non-commercial purposes but cannot be modified. It is delivered as Jupyter Notebooks, also available in a Markdown version. Written in Python/Jupyter Notebook format, and primarily in Chinese.

Copy-paste prompts

Prompt 1
Walk me through the first three notebooks of the-craft-of-selfteaching and give me a daily study plan for one month
Prompt 2
Translate the chapter on regular expressions from the-craft-of-selfteaching into English and add 5 practice exercises
Prompt 3
Set up a Python and Jupyter environment on macOS so I can run every notebook in this book
Prompt 4
Summarize the self-teaching mindset chapters from this book and turn them into a one-page checklist

Frequently asked questions

What is the-craft-of-selfteaching?

An open Chinese-language book taught through interactive Jupyter Notebooks that uses Python to teach beginners how to teach themselves new skills.

What language is the-craft-of-selfteaching written in?

Mainly Jupyter Notebook. The stack also includes Python, Jupyter, Markdown.

What license does the-craft-of-selfteaching use?

Free to share for non-commercial purposes, but you cannot modify the content or use it commercially.

How hard is the-craft-of-selfteaching to set up?

Setup difficulty is rated easy, with roughly 30min to a first successful run.

Who is the-craft-of-selfteaching for?

Mainly general.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Scan in gitsafehub Deploy in gitdeployhub selfteaching on gitmyhub

Verify against the repo before relying on details.