Skip to content

PROJECT: Standardize core lecture repo names → lecture-<topic> (drop python) #333

Description

@mmcky

PROJECT: Standardize core lecture repo names → lecture-<topic> (drop python)

Goal

Align the core lecture repositories with the lecture-<topic> naming pattern that most QuantEcon lecture repos already follow (e.g. lecture-jax, lecture-stats, lecture-dp, lecture-eqm). This means naming each series by its topic/level rather than its implementation language, dropping the redundant python tag and the vestigial .myst suffix. The result is a clean pedagogical ladder: intro → programming → intermediate → advanced.

This is a coordinated, cross-repo action. It should be executed after the gh-pages → artifact migration (#282) is complete for each repo, so we change one thing at a time.

Scope constraint — no hosting changes. This is a repository-rename-only exercise. Every current hosting arrangement stays exactly as it is: custom domains, GitHub Pages configuration, Netlify deploys, and HTTPS are all unchanged. Renaming a GitHub repo does not touch its Pages custom domain or CNAME, so every site keeps serving at its current URL with zero downtime.

Proposed renames (core Python series)

Current repo Site (unchanged) New repo Series
lecture-python-intro intro.quantecon.org lecture-intro A First Course / undergrad foundations
lecture-python-programming python-programming.quantecon.org lecture-programming Python Programming for Economics & Finance
lecture-python.myst python.quantecon.org lecture-intermediate Quantitative Economics with Python
lecture-python-advanced.myst python-advanced.quantecon.org lecture-advanced Advanced Quantitative Economics with Python

All four target names are currently free. The topic-based scheme deliberately avoids the legacy lecture-python / lecture-python-advanced repos (see "Related" below).

Companion & translation repos (rename in lockstep)

Current New
lecture-python-intro.notebooks lecture-intro.notebooks
lecture-intro.zh-cn (already conforms — no change)
lecture-python-programming.notebooks lecture-programming.notebooks
lecture-python-programming.zh-cn lecture-programming.zh-cn
lecture-python-programming.fa lecture-programming.fa
lecture-python.notebooks lecture-intermediate.notebooks
lecture-python.zh-cn lecture-intermediate.zh-cn
lecture-python-advanced.notebooks lecture-advanced.notebooks

Important technical notes

  • No hosting or domain changes, no downtime. Renaming a GitHub repo does not touch its Pages configuration, custom domain, CNAME, or Netlify deploy — each site keeps serving at its current subdomain. GitHub also auto-redirects the old repo URL and git remotes.
  • Repo ↔ domain mismatch is expected and accepted (e.g. repo lecture-intermediate → domain python.quantecon.org). Domains are intentionally left unchanged (see below); the sites are unaffected. intro already matches its domain.
  • Per-repo reference updates are required after each rename: the release-asset name and notebook-sync destination in publish.yml, _config.yml, notebook download links in lectures, README badges, and any inbound links from sibling repos or the main website.

Hosting & domains — explicitly unchanged (hard boundary)

No hosting arrangement changes as part of this work. The subdomains stay exactly as they are — intro / python / python-programming / python-advanced.quantecon.org — so the renamed repos will intentionally differ from their subdomains (e.g. repo lecture-intermediate → site python.quantecon.org). That mismatch is cosmetic and accepted. Any future subdomain change is explicitly out of scope and would be a separate, deliberate effort.

Open decisions

  1. Legacy source reposlecture-python and lecture-python-advanced (pre-MyST source, last touched 2021–2022, superseded by the .myst repos) are archive candidates. Coordinate with Review: Archive candidates for inactive repositories #267 rather than reusing their names.
  2. Theme reposlecture-python.theme, lecture-python-programming.theme, lecture-python-advanced.theme are out of scope here; fold any renaming into the theme-architecture work in Plan: Theme architecture — separate lecture, book, and topics themes #318.

Out of scope / tracked separately

  • lecture-julia.myst and lecture-datascience.myst (+ their .notebooks) — maintained by Jesse Perla as separate processes; a separate issue will track any renaming of those.
  • Already-conforming repos (no change): lecture-jax, lecture-stats, lecture-dp, lecture-dps, lecture-dle, lecture-dynamics, lecture-eqm, lecture-tools-techniques, lecture-wasm.

Per-repo rollout checklist

For each of the four core repos (once its #282 migration is complete):

  • Rename the repo in Settings (GitHub creates automatic redirects)
  • Rename its companion/translation repos
  • Update in-repo references: publish.yml release-asset name + notebook-sync destination, _config.yml, lecture notebook download links, README badges
  • Confirm the Netlify deploy still works (repo rename does not change NETLIFY_SITE_ID or the hosted site — no Netlify changes needed)
  • Update inbound links from sibling lecture repos and the QuantEcon website
  • Verify the custom domain is still serving (CNAME + Pages config unaffected)
  • Notify the team to update local remotes (git remote set-url …)

Dependencies & sequencing

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions