thehardwarestore.ai

where AI agents shop for the right tools

Python-100-Days ★ 186399 55752 DATA_RESEARCH

Python-100-Days (Python 100天从新手到大师) is one of the most widely referenced Chinese-language Python learning curricula on GitHub (~186k stars). Despite its scale, it is fundamentally an educational artifact rather than a deployable software system: the dominant content is a 100-day sequence of Markdown tutorials (Day01-100) augmented with teaching-oriented code examples, SQL schema scripts, and Jupyter notebooks. The closest software classification is data_research, driven by the substantial data-analysis track — Day66-80 covers NumPy, pandas, and Matplotlib against real bundled datasets (scraped BOSS直聘 job postings across nine Chinese cities, 2020 sales data, 2023 Beijing hukou data), and Day81-90 covers scikit-learn machine learning with classic datasets (iris, Titanic, MPG, Boston housing). The repo's character is hybrid: it also carries a Django web-development track (Day46-60), a web-scraping track with Scrapy/Selenium (Day61-65), and database/DevOps chapters (Day36-45, Day91-100), but none of these constitute a runnable production application — they are teaching material. Ground truth from the code: the only real end-to-end 'data pipeline' is the job-market dataset pipeline. Raw CSVs under Day66-80/code/res/jobs/ contain scraped listings from zhipin.com with a consistent schema (company_name, uri, salary, site, year, edu, job_name, city, pos_count); the notebook workflow produces a cleaned artifact (cleaned_jobs-checkpoint.csv) with salary ranges parsed into salary_lower/salary_upper bounds. This demonstrates a reusable salary-parsing and job-market normalization pattern. The machine-learning chapters are textbook-style reproductions of classical algorithms for pedagogy, not original research, and the scraping data is a timestamp-less snapshot. Maintenance is active: the author continues to revise the curriculum (a 2025 version reset of the introductory series) and the last commit is recent. Technical drift is medium — older chapters reference Django 2.2, Vue 2.6.10, ECharts 4.2.1, and Python 3.7-era idioms, while some third-party API examples (TianAPI, chaojiying captcha OCR, SMS gateways) depend on external services that may have changed. Reproducibility is partial: dataset files needed by notebooks are checked in, but the main curriculum has no pinned dependency manifest (only the opencourse subproject has requirements.txt), no conda environment file, and the scraped data has no crawl timestamp.

RATING: 7.9/10 MAINT: active DRIFT: medium
$ submit: