Website-Adresse eintragen - und ein Fund beim Nachsehen

https://jamulix.de/OR/ steht jetzt im README (Kopfzeile und Lesen-Tabelle,
mit Direktlinks auf PDF, Gesamtdokument und Notebooks), in der
Namensnennungs-Vorlage von LICENSE-TEXT.md, in CLAUDE.md und in PROGRESS.md.

Beim Eintragen habe ich die Adresse geprueft: Landing-Page, Kapitelseiten,
Diagramme, Notebooks, Suchindex, KaTeX und PDF antworten alle mit HTTP 200,
und die fuenf neuen Synthese-Seiten sind da.

DABEI DER FUND: Die veroeffentlichte Fassung ist einen Bau alt. lp.html
enthaelt noch einen toten Colab-Link, die neue Notebook-Formulierung
("herunterladen und in Jupyter oeffnen...") fehlt, und das PDF dort ist
3.820.135 statt 3.816.207 Bytes gross. Der Stand liegt zwischen Phase 8.1
(die Synthese-Seiten sind schon oben) und der Colab-Umstellung.
OR_HTML_04/ muss also neu kopiert werden.

Damit das nicht wieder unbemerkt auseinanderlaeuft, steht in CLAUDE.md
jetzt, wie man es prueft: ein curl auf lp.html darf 0 Colab-Treffer ergeben,
und die Groesse des dort liegenden PDF muss zur lokalen Datei passen.

Nebenbei die Seitenzahl auf 759 nachgezogen - sie war seit dem Wegfall der
Colab-Zeile in 25 Kapiteln um eine Seite kleiner, im README stand noch 760.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
dschlueter 2026-09-08 15:00:28 +02:00
commit 6178afc263
4 changed files with 24 additions and 9 deletions

View file

@ -158,7 +158,13 @@ Im PDF steht stattdessen ein Hinweis auf die Website.
## Veroeffentlichung ## Veroeffentlichung
Das Repository liegt oeffentlich auf <https://kitux.de/forgejo/dschlueter/operations_research>. Das Buch steht online auf <https://jamulix.de/OR/>, das Repository oeffentlich auf
<https://kitux.de/forgejo/dschlueter/operations_research>.
**Nach jedem `--pdf --html` muss `OR_HTML_04/` neu auf den Webserver kopiert werden** — sonst
laeuft die veroeffentlichte Fassung dem Repository hinterher. Woran man das merkt: Ein
`curl -s https://jamulix.de/OR/lp.html | grep -c colab.research` muss **0** ergeben, und die
Groesse des dort liegenden PDF muss zur lokalen Datei passen.
**`COLAB_BASIS_URL` ist bewusst leer.** Colab oeffnet Notebooks nur aus GitHub, Google Drive **`COLAB_BASIS_URL` ist bewusst leer.** Colab oeffnet Notebooks nur aus GitHub, Google Drive
oder einem Upload; die URL-Form `colab.research.google.com/github/...` ist fest auf GitHub oder einem Upload; die URL-Form `colab.research.google.com/github/...` ist fest auf GitHub

View file

@ -33,7 +33,7 @@ die Lizenz und geben Sie an, ob Änderungen vorgenommen wurden. Eine
brauchbare Form: brauchbare Form:
> Nach *Optimierte Entscheidungsfindung mit Python* von Dieter Schlüter > Nach *Optimierte Entscheidungsfindung mit Python* von Dieter Schlüter
> (<https://kitux.de/forgejo/dschlueter/operations_research>), lizenziert unter > (<https://jamulix.de/OR/>), lizenziert unter
> CC BY-SA 4.0. Bearbeitet: [was Sie geändert haben]. > CC BY-SA 4.0. Bearbeitet: [was Sie geändert haben].
**Weitergabe unter gleichen Bedingungen.** Wenn Sie das Material verändern **Weitergabe unter gleichen Bedingungen.** Wenn Sie das Material verändern

View file

@ -1357,8 +1357,14 @@ Teilhistorie, die vollständig aussieht und es nicht ist. Volle Historie ginge n
Die Konstante steht jetzt auf `""`: Die Colab-Zeile entfällt, der **Download-Link auf das Die Konstante steht jetzt auf `""`: Die Colab-Zeile entfällt, der **Download-Link auf das
Notebook bleibt**, ergänzt um den Hinweis, was man damit tut. Ein späterer GitHub-Spiegel Notebook bleibt**, ergänzt um den Hinweis, was man damit tut. Ein späterer GitHub-Spiegel
braucht weiterhin nur diesen einen Wert. braucht weiterhin nur diesen einen Wert.
3. ⏳ **Veröffentlichen.** `OR_HTML_04/` ist selbstgenügsam und direkt auf einen Webserver 3. ✅ **Veröffentlicht** unter <https://jamulix.de/OR/> — Landing-Page, Kapitelseiten, Diagramme,
kopierbar. Sobald die Adresse feststeht, gehört sie ins README. Notebooks, Suchindex, KaTeX und PDF sind erreichbar (alles HTTP 200 geprüft).
⚠️ **Aber: Die dort liegende Fassung ist einen Bau alt.** Sie stammt aus der Zeit nach
Phase 8.1 (die fünf Synthese-Seiten sind da), aber vor der Colab-Umstellung: `lp.html`
enthält noch einen toten Colab-Link, die neue Notebook-Formulierung fehlt, und das PDF
ist 3 820 135 statt 3 816 207 Bytes groß. **`OR_HTML_04/` muss neu kopiert werden** — und
künftig nach jedem `--pdf --html`.
### Bewusst zurückgestellt (aus `Verbesserungen_02/_03`) ### Bewusst zurückgestellt (aus `Verbesserungen_02/_03`)

View file

@ -5,9 +5,11 @@ Technik und Finanzmärkte*
Ein Lehrbuch über Operations Research mit Python: **23 Kapitel in 5 Teilen, 5 Anhänge, Ein Lehrbuch über Operations Research mit Python: **23 Kapitel in 5 Teilen, 5 Anhänge,
141 Aufgaben mit vollständigen Lösungen, 76 lauffähige Beispielprogramme, 25 Jupyter-Notebooks, 141 Aufgaben mit vollständigen Lösungen, 76 lauffähige Beispielprogramme, 25 Jupyter-Notebooks,
33 Diagramme — 760 PDF-Seiten.** Von der linearen Programmierung über Constraint Programming 33 Diagramme — 759 PDF-Seiten.** Von der linearen Programmierung über Constraint Programming
und Metaheuristiken bis zu Portfoliooptimierung, CVaR und dem Weg vom Prototyp in den Betrieb. und Metaheuristiken bis zu Portfoliooptimierung, CVaR und dem Weg vom Prototyp in den Betrieb.
**Online lesen: <https://jamulix.de/OR/>** · Repository: <https://kitux.de/forgejo/dschlueter/operations_research>
Autor: **Dieter Schlüter** · Lizenz: MIT (Code) und CC BY-SA 4.0 (Text) Autor: **Dieter Schlüter** · Lizenz: MIT (Code) und CC BY-SA 4.0 (Text)
> **Der Grundsatz des Buchs:** Jede abgedruckte Ausgabe stammt aus einem echten Lauf des > **Der Grundsatz des Buchs:** Jede abgedruckte Ausgabe stammt aus einem echten Lauf des
@ -21,9 +23,10 @@ Autor: **Dieter Schlüter** · Lizenz: MIT (Code) und CC BY-SA 4.0 (Text)
| Format | Wo | | Format | Wo |
| --- | --- | | --- | --- |
| **PDF**, 760 Seiten | [`Operations_Research_mit_Python_Version_04.pdf`](Operations_Research_mit_Python_Version_04.pdf) | | **Website** — eine Seite je Kapitel, mit Volltextsuche, Stichwortverzeichnis und vier interaktiven Plotly-Figuren | **<https://jamulix.de/OR/>** — oder lokal `OR_HTML_04/index.html` |
| **Website** — eine Seite je Kapitel, mit Volltextsuche, Stichwortverzeichnis und vier interaktiven Plotly-Figuren | `OR_HTML_04/index.html` im Browser öffnen | | **PDF**, 759 Seiten | <https://jamulix.de/OR/Operations_Research_mit_Python_Version_04.pdf> — oder lokal [`…_Version_04.pdf`](Operations_Research_mit_Python_Version_04.pdf) |
| **Ein einziges HTML-Dokument** | `OR_HTML_04/gesamtdokument.html` | | **Ein einziges HTML-Dokument** | <https://jamulix.de/OR/gesamtdokument.html> |
| **Notebooks**, eines je Kapitel | <https://jamulix.de/OR/Notebooks_04/> — oder lokal `Notebooks_04/` |
Die Website ist selbstgenügsam — alle Verweise zeigen auf Unterverzeichnisse (`assets/`, Die Website ist selbstgenügsam — alle Verweise zeigen auf Unterverzeichnisse (`assets/`,
`bilder_04/`, `katex/`, `Notebooks_04/`). Der Ordner lässt sich unverändert auf einen `bilder_04/`, `katex/`, `Notebooks_04/`). Der Ordner lässt sich unverändert auf einen
@ -117,7 +120,7 @@ pip install -r Operations_Research_mit_Python_Version_04_Programme/requirements.
| `pandoc-defaults-*.yaml`, `pandoc/` | **Quelle**: Konfiguration des PDF-Baus | | `pandoc-defaults-*.yaml`, `pandoc/` | **Quelle**: Konfiguration des PDF-Baus |
| `PLAN.md` / `PROGRESS.md` | **Quelle**: Ziel des Umbaus und erreichter Stand | | `PLAN.md` / `PROGRESS.md` | **Quelle**: Ziel des Umbaus und erreichter Stand |
| `Operations_Research_mit_Python_Version_04.md` | generiert: Gesamtdokument (Pandoc-Eingabe) | | `Operations_Research_mit_Python_Version_04.md` | generiert: Gesamtdokument (Pandoc-Eingabe) |
| `Operations_Research_mit_Python_Version_04.pdf` | generiert: PDF, 760 Seiten | | `Operations_Research_mit_Python_Version_04.pdf` | generiert: PDF, 759 Seiten |
| `OR_HTML_04/` | generiert: **Mehrseiten-Website** — dieser Ordner wird veröffentlicht | | `OR_HTML_04/` | generiert: **Mehrseiten-Website** — dieser Ordner wird veröffentlicht |
| `Operations_Research_mit_Python_Version_04_Programme/` | generiert: 76 Beispielprogramme | | `Operations_Research_mit_Python_Version_04_Programme/` | generiert: 76 Beispielprogramme |
| `Notebooks_04/` | generiert: ein Jupyter-Notebook je Kapitel | | `Notebooks_04/` | generiert: ein Jupyter-Notebook je Kapitel |