# ferdo R Lab — kamusal yayın ve içerik haritası

## 5 November 2026 — instructor teaching content now publicly available

**Current publication policy (supersedes earlier statements about keeping all instructor answers only in Divan):** The user's own authored R teaching guides, Lesson 0 model answers, synthetic numeric examples, instructor R script and blank session-report templates are intentionally published in the **existing unrestricted ferdo Lab** at:
- Turkish: `/r/ogretmen/`, `/r/ogretmen/hazirlik/`, `/r/ogretmen/ders-0-cozumler/`
- English: `/r/en/ogretmen/`, `/r/en/ogretmen/hazirlik/`, `/r/en/ogretmen/ders-0-cozumler/`
- Instructor key (public): `/r/ogretmen/lesson-0-teacher-key.R`
- Blank session records: `/r/ogretmen/session-template.md` and `/r/en/ogretmen/session-template.md`

**Not redistributed:** Original UCL handouts, lecture PDFs, student ZIPs, real participant records, private student observations, passwords or confidential resources, because public redistribution authorisation is not established. Original synthetic instructor examples and answers have no such restriction. The old master all-materials ZIP contains public instructor answers and must not be described as answer-free.

**Live-domain verification:** GitHub source commits are confirmed; publicly serving `https://lab.ferdo.net/` and TLS still require a separate externally successful browser/HTTP test. No DNS/custom-domain changes were made in this step.


## 5 November 2026 — existing lab.ferdo.net publication consolidation

**Do not create another Cloudflare project, domain or DNS record.** The existing Cloudflare Pages project `ferdo-lab`, output directory `site/`, deployment branch `lab-cloudflare` and intended public host `lab.ferdo.net` remain the configuration of record.

**Actions applied (GitHub source):**
- Both ferdo Lab home pages (`/`, `/en/`) link directly to Programming Lesson 0, UCL PALS Weeks 1–4, and the first 90-minute teacher lesson flow.
- TR and EN R Lab home pages now expose the existing teacher flow (`/r/ders-akisi-2026-11-04/`, `/r/en/ders-akisi-2026-11-04/`).
- Homepage summaries now reflect the actually committed Statistics Lab modules 0–14 rather than the older “only Module 0” launch state.
- Root `hreflang` URLs are origin-relative, so they work under either `lab.ferdo.net` or the existing `pages.dev` host without assuming domain readiness.

**Source verification:** GitHub tree contains all requested route files; static href/src resolution for both site home pages, R Lab home, bilingual Lesson 0, bilingual PALS Weeks 1–4, bilingual Statistics Lab home and bilingual teacher flows yielded **zero missing targets** in the checked HTML files. `site/r/en/app.js` and `site/r/lang-switch.js` pass JavaScript syntax checks. Template expressions in `app.js` are dynamic, not literal URLs and were not scored as missing files.

**Limitations:** The available runtime cannot resolve external domains; web retrieval could not fetch `lab.ferdo.net` or `ferdo-lab.pages.dev`, and browser access requires a connected browser context not present here. Therefore **domain mapping, Cloudflare deployment, TLS, all live HTTP responses, browser interaction and new RStudio runtime remain unverified**, not necessarily failed. No DNS or Cloudflare configuration was changed. Confirm the live URLs in a browser before changing canonical links or claiming external acceptance.

**Known legacy exception:** `site/r/ders-1/dosyalar/ucl-r-ders1-cozumler-v1.R` is a pre-existing public instructor answer key, and legacy public ZIP materials may also contain it. It was intentionally published in an earlier phase and **was not removed in this consolidation** to avoid changing existing downloadable resources without a separate migration. New UCL student originals and the private Lesson 0 teacher answer key are not included in these changes. Do not call the full public ZIP a solutions-free student pack.

**Private acceptance report:** `Projects/UCL 1 Sinif R Kodlama/Lab Ferdo Net Yayin Denetimi 20261105` in Genel Merkez / Divan.


**Tek başlangıç adresi:** https://ferdo-lab.pages.dev/r/  
**GitHub yayın dalı:** `lab-cloudflare`  
**Yayın klasörü:** `site/r/`  
**UCL notu:** Bağımsız öğretim materyalidir; gerçek öğrenci modülü henüz teyit edilmemiştir.

## Bilingual publication: Turkish and English (1 November 2026)

**Turkish entry:** https://ferdo-lab.pages.dev/r/  
**English entry:** https://ferdo-lab.pages.dev/r/en/

- The public R Lab has **28 Turkish HTML routes and 28 corresponding English HTML routes**. The public ferdo Lab landing also has Turkish `/` and English `/en/`.
- The shared **TR / EN** bar appears on every public HTML page and switches to the same route in the other language (preserving the query string and URL hash).
- Turkish pages retain their original URL and content. English pages mirror the paths under `/r/en/` with readable English lesson, homework and setup content.
- English page shells use `site/r/en/app.js` plus `content.js` (curriculum and assignments) and `tools.js` (Lesson 1 English instructor cockpit and interactive student quiz). All are first-party assets; no translation API or tracking is involved.
- English lesson workbooks display English explanations and reproduce existing R code examples from the corresponding Turkish source page; ZIP/CSV/R files are shared, avoiding divergent numerical results.
- The teacher cockpit and student diagnostic are interactive in English; the exact same base R code and synthetic dataset remain available.
- English is a *pedagogically equivalent adaptation*, not necessarily a line-by-line translation of every Turkish sentence or every comment inside downloadable `.R` and `.md` files.
- The English pages require JavaScript and an active connection to the public site. When updating teaching content, update **both languages** and test navigation, code examples and RStudio outputs.
- Language selector: `site/r/lang-switch.js` (also serves both ferdo Lab home pages).
- Localized page CSS: `site/r/en/styles.css`; this asset is included in the automatic full-material ZIP builder.
- Public master ZIP continues to include existing source files and must not be advertised as an answer-free student bundle, because the old Lesson 1 package contains an instructor answer.

### Add a new lesson or public page

1. Create/update the Turkish HTML under `site/r/`.
2. Create the corresponding English HTML shell under `site/r/en/`, extend `site/r/en/app.js` route handling and update `content.js` and/or `tools.js` as necessary.
3. Add `<script src="/r/lang-switch.js" defer></script>` before `</body>` in the Turkish page (only once).
4. Add matching links in both portal home pages and relevant lesson/assignment lists.
5. Verify TR ↔ EN same-route switches, English content, JS behavior, static links, and rebuild of the complete ZIP.
6. Keep private Divan records and student-specific information outside the public publication tree.

---

## Bilgi mimarisi

| Amaç | Kalıcı sayfa | Not |
|---|---|---|
| Her şeye tek giriş | `/r/` | Dersler, ödevler, öğretmen/öğrenci, indirme/test, proje yönetimi |
| Ders 1 | `/r/ders-1/` | Kokpit `/r/ders-1/kokpit.html`; öğrenci `/r/ders-1/ogrenci/` |
| Ders 2–6 | `/r/ders-N/` | Her dersin kendi çalışma kitabı, ZIP, kabul script'i |
| Ödev 1–6 | `/r/odevler/` | Tekil ödev: `/r/odevler/hafta-N/assignment.html` |
| Ödev teslim / yardım | `/r/odevler/teslim/` | R hata şablonu burada |
| Tüm dosyaları indir | `/r/materyaller/` | Kalıcı `/r/tum-materyaller.zip` |
| RStudio test komutları | `/r/materyaller/#rstudio-komutlari` | Downloads başlatıcısı ve RStudio Console komutları |
| Dar Ders 2–6 ZIP/test paketi | `/r/testler/` | Eski özel amaçlı paket, ana arşiv değil |
| Psikoloji alternatif lab | `/r/pals0046/labs-01-03/` | Koşullu aday içerik; gerçek modül teyitsiz |
| GitHub Actions | `.github/workflows/refresh-r-lab-bundle.yml` | Otomatik toplu ZIP yenilemesi |

## Erişim ayrımı

Bu klasör **kamusaldır**. Özgün öğretmen rehberleri ve kurgusal çözüm anahtarları da artık açıktır. Öğrenciye özgü kayıtlar, özel kimlik bilgileri ve üçüncü taraf orijinal kaynaklar **Genel Merkez / Divan** gibi özel ortamlarda tutulmalıdır.

**Dikkat:** `ders-1/dosyalar/ucl-r-ders1-prova-paketi-v1.4.zip` daha önce kamusal
yayımlanmış öğretmen çözüm içeriği de barındırır. `tum-materyaller.zip`
tüm kamusal arşivdir; çözümsüz öğrenci ZIP'i olarak dağıtılmaz.
Öğrenciye yalnız ilgili dersin dikkatle seçilmiş dosyalarını ve ödevlerini ver.

## Güncelleme kuralı

1. Yeni ders / ödev eklendiğinde ilgili `/r/ders-N/` veya
   `/r/odevler/hafta-N/` içeriğini yayımla.
2. **Her yeni üst seviye kaynak için aynı commit'te `site/r/index.html` içindeki
   ana portal navigasyonunu güncelle.** Tek giriş ilkesi böyle korunur.
3. Öğrenci bağlantılarını ve cevap anahtarının kamusal görünürlüğünü denetle.
4. `tools/build_r_materials_bundle.py` mevcut uygun `site/r/` dosyalarını
   `/r/tum-materyaller.zip` arşivine toplar; GitHub Actions otomatik çalışır.
   Yeni kaynak uzantısı eklenirse oluşturucu `EXTS` kümesi de güncellenmelidir.
5. GitHub Actions'ın başarı durumunu ve gerçek site bağlantılarını kontrol et;
   ZIP arşivinin GitHub'da bulunması tek başına canlı HTTP testinin yerine geçmez.
6. Dersin RStudio kabulü yalnız gerçek R çalıştırılmasıyla doğrulanmış sayılır.
   1 Kasım 2026 tarihinde Ders 1–6 teknik testlerinde **6/6 PASS**
   kullanıcı tarafından doğrudan raporlandı.
7. Kamusal `/r/` sayfası kişisel görevleri tarayıcıda işaretlemeye izin verir,
   fakat bu işaretlemeler Genel Merkez'e senkronize edilmez.

## Eski panel dosyaları

`site/r/app.js` ve `site/r/panel.json`, 30 Ekim 2026'da yapılan önceki
tarayıcı-içi görev panelinin kalan kaynaklarıdır. Güncel `/r/` ana sayfası
bunları kullanmaz; yeni portalın küçük etkileşimleri `site/r/portal.js` içindedir.
Eski panelin eski "test bekliyor" durumunu gerçek güncel statü sayma.

Kapsam ayarlama için öğrencinin gerçek UCL modül kodu ve Moodle/lab materyalleri beklenir.

## Student-supplied UCL PALS practicals (3 November 2026)

- Student-reported department: **Psychology and Language Sciences (PALS)**. Source handout heading: **Introduction to Statistical Methods**. Enrolled module code remains unconfirmed.
- Bilingual, tutor-authored public mapping: `/r/pals-weeks-1-4/` and `/r/en/pals-weeks-1-4/`.
- Weeks 1–4 map to R Lessons 1–4 (tidyverse/pivot_longer/ggplot2 additions) and Statistics Lab modules 2/3.
- Student-provided PDFs, lab worksheets and CSVs are **not** committed to the public branch; separate local instructor/student packages were prepared. Keep institution-supplied originals private.
- The supplied code book contradicts several practical-sheet hints: `occasion=0` pre, `occasion=1` post; `sex=1` female, `sex=2` male. Tutor notes record these and other conceptual caveats.
- The new HTML pages are static source additions; live Cloudflare and RStudio checks have not been performed for these new pages/packages.

## Programming Fundamentals Lesson 0 (4 November 2026)

- Original bilingual conceptual foundation: `/r/programlama-0/` ↔ `/r/en/programlama-0/`.
- Student base R starter: `/r/programlama-0/lesson-0-starter.R` (synthetic five-participant example, TODO practice, no instructor key).
- Objectives: input/output, algorithm design, objects, types, vectors, functions, conditions, missing values, debugging, interpretation, limits of causal claims.
- Introductory complements to R Lessons 1–4; not official UCL syllabus.
- Original authored instructor lesson plan and synthetic Lesson 0 worked solutions are now openly published at `/r/ogretmen/`; private student-specific notes and third-party course originals remain outside GitHub.
- New files are source-committed, not a claim of live Cloudflare or actual RStudio acceptance.
