Skip to content

Commit 2fa4b75

Browse files
feat(parte-8): v3.5.0 — Capstones completos · 🎓 currículo 232/232 = 100%
Parte 8 (4 capstones · 229-232) cierra el currículo. Cobertura final del programa: 228 → 232 (98% → 100%). Patrón pedagógico v3.0 en cada clase (README ~110 líneas + notebook ejecutable self-contained, solo numpy/pandas/sklearn + opt-ins con try/except). Clases desarrolladas - 229 — Capstone 1 tabular E2E: dataset sintético churn 10K, ColumnTransformer + GradientBoostingClassifier + Optuna 20 trials, MLflow opcional, curvas ROC/calibración, threshold F1, stubs FastAPI/Streamlit/SHAP, Model Card JSON. - 230 — Capstone 2 NLP o series: README cubre dos ramas opt-in (A: DistilBERT/ sentence-transformers/RAG mini · B: forecasting). Notebook implementa rama B completa — serie sintética multi-estacional 3 años, baselines naive y seasonal, ETS (statsmodels), Ridge con features lag/rolling, backtesting expanding window 5 folds, intervalos cuantiles, drift KS, stub FastAPI. - 231 — Capstone 3 visión transfer learning: notebook CPU-friendly con dataset sintético 1000 patches 32×32 (3 clases), baseline LogReg, features HOG manuales, augmentation manual, CNN PyTorch opcional con try/except, stubs timm/ONNX/FastAPI base64. README describe stack completo (ConvNeXt/ EfficientNetV2/ViT + RandAugment/MixUp/CutMix + AMP + torch.compile). - 232 — Portafolio público: clase final. Notebook generador end-to-end — dataclass Project, los 3 capstones llenos, renderers de project page + index + Model Card, validador con gate de calidad, stubs mkdocs.yml + GitHub Actions Pages, outlines de deck 10-15 slides y blog post, checklist 15 ítems, paths de especialización. README sin "siguiente clase": cierre del programa con links al índice general. Sincronización de docs (v3.4.0 → v3.5.0) - README.md, ROADMAP.md, CHANGELOG.md → badge v3.5.0; mapa del currículo marca 9/9 partes ✅; sección "trabajo pendiente" reemplazada por "🎓 programa completo". - Parte-8/README.md → fuentes ampliadas + foco específico por capstone. - RECRUITER, SECURITY, datasets/, mobile/, docs/syllabus, docs/GUIA_EVALUACION, docs/CATALOGO_PRODUCTO, docs/ARQUITECTURA_PRODUCTO → contadores 228→232, capstones agregados al stack, "siguiente foco" reapuntado a superficies (PDFs/PPTX, mobile UI, lab Flask, instalador Windows). Fuentes principales Parte 8: integrador de Partes 0-7 + Huyen *Designing ML Systems* + Hyndman & Athanasopoulos *FPP3* + Géron *Hands-On ML* 3ª ed. + timm/Lightning/Albumentations + MkDocs Material/Quarto. 🎓 232/232 clases desarrolladas (100%). Currículo del programa completo. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
1 parent 4a9b36e commit 2fa4b75

20 files changed

Lines changed: 2131 additions & 265 deletions

File tree

CHANGELOG.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,28 @@
1313
1414
---
1515

16+
## [v3.5.0] — 2026-06-18 (Parte 8 — Capstones completa · 🎓 currículo 232/232 = 100%)
17+
18+
### Añadido
19+
20+
- **Parte 8 — Capstones: 4/4 clases desarrolladas** (229-232) con patrón pedagógico v3.0 completo. Integrador de Partes 0-7 + Huyen *Designing ML Systems* + Hyndman & Athanasopoulos *FPP3* + timm/Lightning + MkDocs Material/Quarto.
21+
- **229 — Capstone 1: tabular E2E**: dataset sintético churn 10K filas, ColumnTransformer + GradientBoostingClassifier + Optuna 20 trials, MLflow opcional, curvas ROC + calibración, threshold F1, stubs FastAPI/Streamlit/SHAP + Model Card JSON.
22+
- **230 — Capstone 2: NLP o series**: dos ramas opt-in en README (A: DistilBERT/sentence-transformers/RAG mini; B: forecasting). Notebook implementa rama B completa — serie sintética multi-estacional 3 años, baselines naive + seasonal naive, ETS (statsmodels), Ridge con features lag/rolling, backtesting expanding window 5 folds, intervalos cuantiles, drift KS sobre residuos, stub FastAPI.
23+
- **231 — Capstone 3: visión transfer learning**: notebook CPU-friendly con dataset sintético 1000 patches 32×32 (círculo/cuadrado/triángulo), baseline LogReg, features HOG manuales, augmentation manual (flip+rotación+jitter), CNN PyTorch opcional con try/except, stubs timm/ONNX/FastAPI base64. README describe stack completo (ConvNeXt/EfficientNetV2/ViT, RandAugment/MixUp/CutMix, AMP, torch.compile).
24+
- **232 — Portafolio público**: clase final del programa. Notebook generador end-to-end del portafolio (dataclass Project, los 3 capstones llenos, renderers de project page + index + Model Card, validador con gate de calidad, stubs mkdocs.yml + GitHub Actions Pages, outlines de deck 10-15 slides y blog post, checklist 15 ítems, paths de especialización). README sin "siguiente clase" — cierre del programa con links al índice general.
25+
26+
### Cambiado
27+
28+
- ROADMAP v3.4.0 → v3.5.0; Parte 8 marcada `✅ completada`; entrada "🎓 Currículo completo: 232/232 (100%)" agregada.
29+
- README de Parte 8 actualizado (fuente principal + estructura temática con numeración real 229-232 + foco específico por capstone).
30+
- README raíz, badge de versión, estado del producto y mapa del currículo sincronizados a v3.5.0 (232/232 = 100%, "trabajo pendiente" reemplazado por sección "🎓 Programa completo").
31+
32+
### Cobertura del currículo
33+
34+
- **232/232 clases desarrolladas (100%)**. 🎓 Programa completo. Próximo foco del repo (no del currículo): regenerar PDFs/PPTX por bloques, migrar contenido a UI Android, mejoras al laboratorio Flask.
35+
36+
---
37+
1638
## [v3.4.0] — 2026-06-18 (Parte 7 — Ética, Fairness y Privacidad completa)
1739

1840
### Añadido

README.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
[![Security](https://github.com/vladimiracunadev-create/python-data-science-program/actions/workflows/security.yml/badge.svg?branch=main)](https://github.com/vladimiracunadev-create/python-data-science-program/actions/workflows/security.yml)
1313
[![Pages](https://github.com/vladimiracunadev-create/python-data-science-program/actions/workflows/deploy-pages.yml/badge.svg?branch=main)](https://github.com/vladimiracunadev-create/python-data-science-program/actions/workflows/deploy-pages.yml)
1414

15-
[![Version](https://img.shields.io/badge/release-v3.4.0-2e8b57?style=for-the-badge)](CHANGELOG.md)
15+
[![Version](https://img.shields.io/badge/release-v3.5.0-2e8b57?style=for-the-badge)](CHANGELOG.md)
1616
[![Clases](https://img.shields.io/badge/clases-232%20%C2%B7%209%20partes-7c5cff?style=for-the-badge)](classes/README.md)
1717
[![Parte 0](https://img.shields.io/badge/Parte%200-49%2F49%20%E2%9C%85-3fb950?style=for-the-badge)](classes/parte-0-prerrequisitos/README.md)
1818
[![Parte 1](https://img.shields.io/badge/Parte%201-50%2F50%20%E2%9C%85-3fb950?style=for-the-badge)](classes/parte-1-machine-learning-clasico/README.md)
@@ -59,10 +59,10 @@ Integra currículo modular extenso, laboratorio interactivo local, portal del al
5959

6060
| 🎯 Aspecto | Estado |
6161
|---|---|
62-
| 🏷️ **Versión** | `v3.4.0` (junio 2026 — Parte 7 completa) |
62+
| 🏷️ **Versión** | `v3.5.0` (junio 2026 — **currículo completo 232/232**) |
6363
| 📚 **Clases** | **232 en 9 partes** · numeración secuencial limpia 001-232 |
6464
| 🗂️ **Estructura** | ✅ las 232 clases con `README.md` + `notebook.ipynb` |
65-
| ✍️ **Contenido pedagógico** | 🟢 **Partes 0-7 (228 clases ≈ 98%) — completas y modernizadas** con Definiciones · Errores comunes · FAQ en cada clase + 35 clases dedicadas a temas modernos 2024-2026 + stack completo de MLOps (DVC, MLflow, Feast, K8s, FastAPI, drift, shadow/canary, SHAP, Great Expectations, behavioral tests) + data engineering (Airflow, Prefect/Dagster, PySpark, Polars, DuckDB/BQ/Snowflake, Kafka, Parquet/Avro, star schemas) + recomendadores (CF, SVD/ALS, content+FAISS, LightFM, métricas top-N, cold-start) + ética/fairness/privacidad (DP/EO/calibration, DP-SGD, FedAvg, GDPR + AI Act 2024/1689, reproducibilidad) · ⏳ Parte 8 (4 capstones) en desarrollo |
65+
| ✍️ **Contenido pedagógico** | 🟢 **Las 9 partes (232/232 = 100%) — completas y modernizadas** con Definiciones · Errores comunes · FAQ en cada clase + 35 clases dedicadas a temas modernos 2024-2026 + stack completo de MLOps (DVC, MLflow, Feast, K8s, FastAPI, drift, shadow/canary, SHAP, Great Expectations, behavioral tests) + data engineering (Airflow, Prefect/Dagster, PySpark, Polars, DuckDB/BQ/Snowflake, Kafka, Parquet/Avro, star schemas) + recomendadores (CF, SVD/ALS, content+FAISS, LightFM, métricas top-N, cold-start) + ética/fairness/privacidad (DP/EO/calibration, DP-SGD, FedAvg, GDPR + AI Act 2024/1689, reproducibilidad) + **4 capstones integradores** (tabular E2E con MLflow+FastAPI+Streamlit, NLP o series con backtesting cuantil, visión transfer learning con ONNX, portafolio público en GitHub Pages con MkDocs/Quarto) |
6666
| 🧭 **Descubribilidad Pages** | ✅ tabla de contenidos automática + badges por clase + banner global de progreso |
6767
| 🧪 **Laboratorio Flask** | ✅ ejecución Python local, captura de gráficos, guardado de notebooks |
6868
| 🖥️ **App Windows** | ✅ código operativo · binario pendiente de rebuild (Edge WebView2, sin navegador) |
@@ -83,11 +83,11 @@ Cada parte tiene su **propio README** con narrativa completa: de qué trata, qu
8383
| 5️⃣ | Ingeniería de datos ✅ | 8 (208-215) | Airflow TaskFlow, Prefect/Dagster, PySpark (AQE/skew), Polars (lazy/streaming), DuckDB/BQ/Snowflake, Kafka+Kinesis, Parquet/Avro, star schema SCD2 | [📘 leer](classes/parte-5-ingenieria-de-datos/README.md) |
8484
| 6️⃣ | Recomendadores ✅ | 7 (216-222) | CF user/item-based, SVD+ALS implicit, content (TF-IDF+sentence-transformers+FAISS), hybrid LightFM, métricas top-N (NDCG/MAP/recall), cold-start (Bayes+bandits) | [📘 leer](classes/parte-6-sistemas-de-recomendacion/README.md) |
8585
| 7️⃣ | Ética, fairness, privacidad ✅ | 6 (223-228) | Sesgos (Suresh-Guttag), métricas DP/EO/calibration + impossibility theorem, privacidad diferencial (Laplace/Gauss/DP-SGD), federated learning (FedAvg + leakage), GDPR + AI Act EU 2024/1689, reproducibilidad (seeds/lock files/model cards) | [📘 leer](classes/parte-7-etica-fairness-privacidad/README.md) |
86-
| 8️⃣ | Capstones | 4 (229-232) | Proyectos integradores end-to-end | [📘 leer](classes/parte-8-capstones/README.md) |
86+
| 8️⃣ | Capstones | 4 (229-232) | Tabular E2E (EDA+ColumnTransformer+GBM+Optuna+MLflow+FastAPI+Streamlit+SHAP), NLP/series (rama A: DistilBERT/RAG · rama B: forecasting con baselines+SARIMA+ML+backtesting+cuantiles), Visión transfer learning (ConvNeXt/EfficientNetV2/ViT + RandAugment/MixUp + ONNX), Portafolio público (MkDocs Material/Quarto + GitHub Pages + demos hosted + deck + CV técnico) | [📘 leer](classes/parte-8-capstones/README.md) |
8787

88-
### 🚧 Trabajo pendiente
88+
### 🎓 Programa completo
8989

90-
- 📝 Rellenar contenido pedagógico de las **4 clases restantes** (Parte 8 capstones, 229-232 — orden recomendado en [`docs/syllabus.md`](docs/syllabus.md) y [`ROADMAP.md`](ROADMAP.md))
90+
**232/232 clases desarrolladas (100%)** con patrón pedagógico v3.0 — Definiciones · Resultados · Temas · Dataset · Ejercicios · Homework verificable · Errores comunes · FAQ · Referencias + notebook ejecutable. Siguiente foco del repo: regenerar PDFs/PPTX, migrar contenido a UI Android, mejoras al laboratorio Flask (ver [ROADMAP.md](ROADMAP.md)).
9191
- 📱 Listar las 232 clases en la UI Android (`mobile/`) — el dato ya está actualizado a v3.0.0
9292
- 📄 Regenerar PDFs y PPTX (`docs/pdfs/`, `docs/presentaciones/`) con la nueva numeración 001-232 de cada parte
9393

@@ -129,7 +129,7 @@ Cada parte tiene su **propio README** con narrativa completa: de qué trata, qu
129129
| 🧪 Laboratorio interactivo (`app/`) | entorno local de clase — notebooks, runner, ejecución Python | ✅ operativo |
130130
| 🌐 Portal del alumno (`site/`) | punto de entrada oficial para estudiantes | ✅ operativo |
131131
| 🏛️ Vista institucional (`site/product/`) | presentación visual del producto | ✅ operativa |
132-
| 📚 Currículo modular (`classes/`) | **232 clases** en 9 partes (numeración secuencial 001-232): Prerrequisitos, ML clásico, Deep Learning, Estadística inferencial y causal, MLOps, Ingeniería de datos, Recomendadores, Ética, Capstones | 🟢 Partes 0-7 (**228 clases ≈ 98%**) completas y modernizadas — 35 clases dedicadas a temas 2024-2026 + stack MLOps + data engineering + recomendadores + ética/fairness/privacidad · 🟡 Parte 8 (4 capstones) scaffold operativo, contenido en desarrollo |
132+
| 📚 Currículo modular (`classes/`) | **232 clases** en 9 partes (numeración secuencial 001-232): Prerrequisitos, ML clásico, Deep Learning, Estadística inferencial y causal, MLOps, Ingeniería de datos, Recomendadores, Ética, Capstones | 🟢 **Las 9 partes (232/232 = 100%) completas y modernizadas** — 35 clases dedicadas a temas 2024-2026 + stack MLOps + data engineering + recomendadores + ética/fairness/privacidad + 4 capstones integradores end-to-end |
133133
| 🖥️ App de escritorio Windows (`launcher.py` + `program.spec` + `installer/`) | ventana nativa con Edge WebView2 — sin navegador, sin Python en el PC del alumno | 🟡 código operativo · binario pendiente de build |
134134
| 📱 App Android (`mobile/`) | Expo/React Native con integración Google Colab | 🟡 código operativo · contenido pendiente de migración |
135135
| 📄 PDFs (`docs/pdfs/`) | guías por clase | 🔄 se regeneran por bloques al madurar el contenido |
@@ -181,7 +181,7 @@ graph LR
181181

182182
La arquitectura completa, con flujos y fronteras, está en [docs/ARQUITECTURA_PRODUCTO.md](docs/ARQUITECTURA_PRODUCTO.md).
183183

184-
### 🗺️ Mapa del currículo (9 partes · 232 clases · v3.4.0)
184+
### 🗺️ Mapa del currículo (9 partes · 232 clases · v3.5.0 · 100% completo)
185185

186186
```mermaid
187187
graph TD
@@ -226,7 +226,7 @@ graph TD
226226

227227
### 📚 Currículo y pedagogía
228228

229-
- **Currículo (v3.4.0):** **232 clases** en 9 partes (numeración secuencial 001-232) — Prerrequisitos (49), ML clásico (50), Deep Learning (75), Estadística inferencial y causal (19), MLOps (14), Ingeniería de datos (8), Recomendadores (7), Ética (6), Capstones (4). **Partes 0-7 (228 ≈ 98%) completas y modernizadas 2024-2026** · Parte 8 (4) scaffold;
229+
- **Currículo (v3.5.0):** **232 clases** en 9 partes (numeración secuencial 001-232) — Prerrequisitos (49), ML clásico (50), Deep Learning (75), Estadística inferencial y causal (19), MLOps (14), Ingeniería de datos (8), Recomendadores (7), Ética (6), Capstones (4). **Las 9 partes (232/232 = 100%) completas y modernizadas 2024-2026**;
230230
- pauta derivada de **Hands-On ML** (Géron 3ª ed.), **Python Data Science Handbook** (VanderPlas), **Designing ML Systems** (Huyen), **ISLP** (James et al), **Fairness and ML** (Barocas/Hardt/Narayanan);
231231
- cada clase: `README.md` (ficha) + `notebook.ipynb` (stub); materiales adicionales se agregan al madurar;
232232
- **6 datasets** sintéticos: ventas_tienda, retencion_clientes, soporte_tickets, transporte, estudiantes, comentarios_productos;

RECRUITER.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717
Un sistema de capacitación en Python y Data Science que integra:
1818

19-
- 📚 **currículo modular** (232 clases · 9 partes · v3.4.0 · pauta derivada de Géron 3ª ed., VanderPlas, Huyen, ISLP, Barocas/Hardt/Narayanan + Reis & Housley, Kimball & Ross, Aggarwal + Suresh-Guttag, Hardt-Price-Srebro, Chouldechova, Kleinberg, Dwork-Roth, Abadi, McMahan + papers seminales 2002-2026) — **Partes 0-7 (228 clases ≈ 98%) completas y ampliadas** con Definiciones, Errores comunes y FAQ en cada clase + 35 clases dedicadas a temas modernos 2024-2026 + stack completo de MLOps (DVC, MLflow, Feast, K8s, FastAPI, drift, shadow/canary, SHAP, Great Expectations, behavioral tests) + data engineering (Airflow, PySpark, Polars, DuckDB/BQ/Snowflake, Kafka, Parquet/Avro, star schemas SCD2) + recomendadores (CF, SVD/ALS, content+FAISS, LightFM, métricas top-N, cold-start) + ética/fairness/privacidad (Suresh-Guttag taxonomía sesgos, DP/EO/calibration + impossibility theorem, privacidad diferencial (Laplace/Gauss/DP-SGD), federated learning (FedAvg + gradient leakage), GDPR + AI Act EU 2024/1689, reproducibilidad (seeds/lock files/model cards/datasheets)); Parte 8 (4 capstones) en desarrollo;
19+
- 📚 **currículo modular** (232 clases · 9 partes · v3.5.0 · pauta derivada de Géron 3ª ed., VanderPlas, Huyen, ISLP, Barocas/Hardt/Narayanan + Reis & Housley, Kimball & Ross, Aggarwal + Suresh-Guttag, Hardt-Price-Srebro, Chouldechova, Kleinberg, Dwork-Roth, Abadi, McMahan + Hyndman & Athanasopoulos FPP3 + timm/Lightning/Albumentations + MkDocs Material/Quarto + papers seminales 2002-2026) — 🎓 **currículo completo 232/232 = 100%** con Definiciones, Errores comunes y FAQ en cada clase + 35 clases dedicadas a temas modernos 2024-2026 + stack completo de MLOps (DVC, MLflow, Feast, K8s, FastAPI, drift, shadow/canary, SHAP, Great Expectations, behavioral tests) + data engineering (Airflow, PySpark, Polars, DuckDB/BQ/Snowflake, Kafka, Parquet/Avro, star schemas SCD2) + recomendadores (CF, SVD/ALS, content+FAISS, LightFM, métricas top-N, cold-start) + ética/fairness/privacidad (Suresh-Guttag taxonomía sesgos, DP/EO/calibration + impossibility theorem, privacidad diferencial (Laplace/Gauss/DP-SGD), federated learning (FedAvg + gradient leakage), GDPR + AI Act EU 2024/1689, reproducibilidad (seeds/lock files/model cards/datasheets)) + **Capstones integradores** (Capstone 1 tabular E2E (ColumnTransformer+GBM+Optuna+MLflow+FastAPI+Streamlit+SHAP+CI), Capstone 2 NLP/series (DistilBERT o forecasting con baselines+SARIMA+backtesting+cuantiles), Capstone 3 visión transfer learning (ConvNeXt/EfficientNetV2/ViT + RandAugment/MixUp/CutMix + ONNX), Portafolio público (MkDocs Material/Quarto + GitHub Pages + demos hosted + deck + CV técnico)); ya no quedan clases pendientes — siguiente foco: superficies (regen PDFs/PPTX, mobile UI, mejoras lab Flask);
2020
- 🧪 **laboratorio interactivo** (Flask + ejecución Python en tiempo real, matplotlib, pandas);
2121
- 🖥️ **app de escritorio nativa para Windows** (pywebview + Edge WebView2, sin navegador);
2222
- 📱 **app Android** (Expo/React Native, contenido embebido + Google Colab) — pendiente migrar contenido al índice actual;
@@ -31,7 +31,7 @@ Un sistema de capacitación en Python y Data Science que integra:
3131
|---|---|---|
3232
| Backend Flask | ✅ operativo | 10 rutas, tests automatizados, CI en GitHub Actions |
3333
| Ejecución de código Python | ✅ operativo | pandas, matplotlib (gráficos), scikit-learn, timeout 30s |
34-
| 232 clases (228 desarrolladas, 4 scaffold) | ✅ operativo | `/api/classes` → 232 clases, `/api/class/<path:slug>` → HTML |
34+
| 232 clases (232 desarrolladas · 🎓 100%) | ✅ operativo | `/api/classes` → 232 clases, `/api/class/<path:slug>` → HTML |
3535
| 6 notebooks interactivos | ✅ operativo | `/api/notebooks` → 6 templates, ejecución por celda |
3636
| App de escritorio Windows | 🟡 código operativo · binario pendiente | pywebview 6.1 + PyInstaller 6.19, ZIP portable 92MB |
3737
| Instalador Windows | 🟡 pendiente de rebuild | Inno Setup — sin Python requerido en el PC del usuario |

0 commit comments

Comments
 (0)