content(rehber): gece vardiyasının 14 yeni yazısı + 2 düzeltme, ekip raporları ve kurallar
14 yeni rehber yazısı (hepsi editör denetiminden geçti, 46 yazıda 829 iç link tarandı, 0 kırık hedef; 180+ DB rakamı yazıların kendi filtreleriyle yeniden koşuldu): taban-siralamalari-alti-yilda-nasil-degisti · kac-net-ile-hangi-bolum · siralama-bandlari-hangi-kapilar-acilir · ayni-bolum-farkli-universite-siralama-farki · hangi-bolumlerin-kontenjani-azaldi · yeni-acilan-bolumler-nasil-degerlendirilir · bilgisayar-mi-yazilim-muhendisligi-mi · kktc-universiteleri-okunur-mu · yapay-zekaya-tercih-sordum-guvenilir-mi · ek-madde-1-puanim-yetiyor-mu · universitede-ilk-hafta-ders-kaydi-muafiyet-kayit-dondurma · yks-2027-takvimi · rehber-ogretmenler-icin-veri-kaynaklari · bolumumu-sevmedim-hangi-kapilar-var İki canlı yazı düzeltildi: - veliler-icin-tercih-rehberi: veli diliyle kapanış; altındaki "sıralamanı gir" kutusu artık veliye ölü uç değil - bos-kontenjanlar-ne-anlatiyor: "birkaç yüz kişilik fark" aslında ~9 bin (ÖSYM 265.356 ↔ bizim 256.532); payda açıklaması tersti — ek kontenjan paydaya girseydi oran düşerdi. guncelleme alanı eklendi (sitemap lastmod). Kurallar (AGENTS.md): - Yayın sonrası arama motoru bildirimi: URL denetimi yalnız canlıda 200 dönen adrese; kota sayacı; mülk/hesap notu; sitemap grep kuralı - Yıkıcı git komutları yasak: reset/checkout --/restore/clean/stash - Tarayıcı açma: tasarımcı ve UX gerekli gördüğünde açabilir (yetenek için .claude/agents/tasarimci.md'ye tarayıcı araçları eklendi) docs/gece-vardiyasi/2026-09-22/ — 34 rapor: CEO kararları ve kapanış turu, marka/ödeme analizi, sıfır ödeme teşhisi, SEO konu planı, veri kalitesi, editör denetimi, CTO şartnamesi, yazılımcı ve güvenlik raporları, SABAH-OZETI. docs/ekip/YAYIN-KUYRUGU.md — Search Console bildirim kuyruğu. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
292
docs/gece-vardiyasi/2026-09-22/18-yazar-kac-net.md
Normal file
292
docs/gece-vardiyasi/2026-09-22/18-yazar-kac-net.md
Normal file
@@ -0,0 +1,292 @@
|
||||
# 18 — Yazar raporu: `kac-net-ile-hangi-bolum`
|
||||
|
||||
**Rol:** rehber-yazari · **Tarih:** 22 Eylül 2026 (gece vardiyası) · **Şartname:** `02-seo-konu-plani.md` §0 + §2 Dalga A #2
|
||||
**Yazılan tek dosya:** `content/rehber/kac-net-ile-hangi-bolum.md` · Commit atılmadı, `git add` yapılmadı, başka dosyaya dokunulmadı.
|
||||
|
||||
---
|
||||
|
||||
## Özet (5 madde)
|
||||
|
||||
1. **Şartnamedeki en temel iddia yanlıştı ve düzeltildi.** SEO planı (§2 #2) ve görev brief'i `netler` tablosunu "yerleşenlerin gerçekte yaptığı netlerin **ortalaması**" diye tanımlıyor. Veri bunu desteklemiyor: bu tablo YÖK Atlas'ın **"son yerleşen kişinin netleri"** (Net Sihirbazı) verisidir — tek bir öğrencinin, taban puanı yapan kişinin profili. Üç bağımsız kanıt aşağıda. Yazı bu doğru tanımla kuruldu; "yerleşenlerin ortalaması" cümlesi yazının içinde açıkça **yanlış okuma** olarak işaretlendi.
|
||||
2. **Rakamlar YÖK Atlas'ın canlı servisinden 5 programda alan alan doğrulandı** (Hacettepe Tıp, ODTÜ Bilgisayar Müh., Boğaziçi Bilgisayar Müh., Ankara Ü. Hukuk, İstanbul Ü. Psikoloji, Ege Ü. Hemşirelik — 6 program, 6/6 birebir tuttu). **Yayımlanabilir.**
|
||||
3. **"2026 net verisi yok" iddiası doğrudan kaynaktan teyit edildi:** canlı API `yil DESC` sıralandığında en yeni kayıt 2025 (22 Eyl 2026, 03:40 civarı). Yazıda her net rakamının yanında yıl etiketi var; ayrı bir H2 "Neden 2026 netleri yok?" bunu okura anlatıyor.
|
||||
4. **Vaat dili yok.** "Şu kadar net yaparsan girersin" cümlesi kurulmadı; tersine, üç ayrı bölüm (OBP, puan türü ağırlıkları, yılın sınav zorluğu) neden kurulamayacağını anlatıyor. `/rehber/obp-nedir-nasil-hesaplanir` ve `/rehber/taban-puan-mi-siralama-mi` bağlantıları istenen yerde.
|
||||
5. **40 iç linkin 40'ı doğrulandı** (bölüm slug'ları `turkishSlugify(bolumBazAdi(isim))` ile DB'deki 634 slug havuzuna karşı, rehber linkleri `content/rehber/` dosya listesine karşı, `#hero-form` `src/app/page.tsx:241`'e karşı). `/tercih-robotu` kullanılmadı.
|
||||
|
||||
---
|
||||
|
||||
## 1. Şartname düzeltmesi: `netler` ne değildir
|
||||
|
||||
SEO planı §2 #2: *"bu rakamlar hedef değil, **yerleşenlerin gerçekte yaptığı netlerin ortalaması**"*. Bu tanım yanlış. Kanıtlar:
|
||||
|
||||
**(a) Kod zaten doğrusunu yazıyor.** `src/features/katalog/components/program-netleri.tsx:3-4` — *"YÖK Atlas'ın **'yerleşen son kişinin netleri'** verisini … gösterir"*. Aynı ifade `scripts/detay.ts:5` başlığında: *"A) Yerleşen son kişinin netleri"*.
|
||||
|
||||
**(b) Değerler tek kişiye ait.** Net = doğru − yanlış/4 olduğu için tek bir kişinin neti daima 0,25'in katıdır; yüzlerce kişinin ortalaması neredeyse hiç tam çeyreğe oturmaz.
|
||||
|
||||
```sql
|
||||
SELECT COUNT(*) toplam,
|
||||
SUM(CASE WHEN ABS(tytMatNet*4 - ROUND(tytMatNet*4)) < 1e-9 THEN 1 ELSE 0 END) ceyrek_katlari
|
||||
FROM netler WHERE yil=2025 AND tytMatNet IS NOT NULL;
|
||||
-- çıktı: 20821 | 20820 (%99,995)
|
||||
```
|
||||
|
||||
**(c) Satırın taban puanı = programın taban puanı.** Yani satırın sahibi, o programın taban puanını yapan kişi = en son yerleşen.
|
||||
|
||||
```sql
|
||||
SELECT COUNT(*) FROM netler n JOIN programs p ON p.id=n.program_id
|
||||
WHERE n.yil=2025 AND ABS(n.tabanPuan - p.puan2025) < 0.0001; -- 17265
|
||||
SELECT COUNT(*) FROM netler n JOIN programs p ON p.id=n.program_id
|
||||
WHERE n.yil=2025 AND n.tabanPuan IS NOT NULL AND p.puan2025 IS NOT NULL; -- 17301
|
||||
-- %99,8
|
||||
```
|
||||
|
||||
`scripts/detay.ts:158-183` bu eşitliği zaten bir emniyet kilidi olarak kullanıyor (≥%95 tutmazsa betik duruyor).
|
||||
|
||||
**Sonuç:** Veri aslında *daha* kullanışlı — "ortalama" bölümü tanıtır, "son yerleşen" ise o yıl o programa en düşük hangi profille girilebildiğini söyler. Ama "eşik/baraj" diye satılamaz, çünkü tek kişilik bir gözlem ve yıldan yıla çok oynuyor. Yazı tam olarak bunu anlatıyor.
|
||||
|
||||
**Editöre not:** `02-seo-konu-plani.md` §2 #2'deki tanım ve "İlk paragraf cevabı" cümlesi düzeltilmeli; ayrıca §2 #15 (veli yazısı) aynı yanlış tanımı devralmasın. Ben o dosyaya dokunmadım.
|
||||
|
||||
---
|
||||
|
||||
## 2. Kullanılan SQL sorguları (tam metin)
|
||||
|
||||
Hepsi `sqlite3 -readonly /Users/bilalgursen/Desktop/kolaytercih/data/yokatlas.db` ile koşuldu.
|
||||
|
||||
### 2.1 Kapsam / kapsama kontrolü
|
||||
|
||||
```sql
|
||||
SELECT yil, COUNT(*) FROM netler GROUP BY yil;
|
||||
-- 2023|21341 2024|20813 2025|20821
|
||||
SELECT COUNT(*) FROM netler; -- 62975
|
||||
SELECT COUNT(DISTINCT program_id) FROM netler; -- 25166
|
||||
SELECT COUNT(*) FROM netler x JOIN programs p ON p.id=x.program_id
|
||||
WHERE x.yil=2025 AND p.onlisans=0 AND p.unitur='DEVLET' AND p.sira2025 IS NOT NULL; -- 5801
|
||||
SELECT COUNT(DISTINCT p.isim) FROM netler x JOIN programs p ON p.id=x.program_id
|
||||
WHERE x.yil=2025 AND p.onlisans=0 AND p.unitur='DEVLET' AND p.sira2025 IS NOT NULL; -- 409
|
||||
```
|
||||
|
||||
### 2.2 Tablo 2 — SAY bölüm ortalamaları (yazıdaki ana tablo)
|
||||
|
||||
```sql
|
||||
SELECT p.isim, COUNT(*) n,
|
||||
ROUND(AVG(x.tytTrkNet),1) tyt_trk, ROUND(AVG(x.tytMatNet),1) tyt_mat,
|
||||
ROUND(AVG(x.aytMatNet),1) ayt_mat,
|
||||
ROUND(AVG(x.aytFizNet + x.aytKimNet + x.aytBioNet),1) ayt_fen,
|
||||
CAST(AVG(p.sira2025) AS INT) s25
|
||||
FROM netler x JOIN programs p ON p.id=x.program_id
|
||||
WHERE x.yil=2025 AND p.onlisans=0 AND p.unitur='DEVLET' AND p.tur='SAYISAL'
|
||||
AND p.sira2025 IS NOT NULL
|
||||
AND p.isim IN ('Tıp','Diş Hekimliği','Eczacılık','Endüstri Mühendisliği',
|
||||
'Bilgisayar Mühendisliği','Hemşirelik','Elektrik-Elektronik Mühendisliği',
|
||||
'Yazılım Mühendisliği','Makine Mühendisliği','Veteriner','Mimarlık',
|
||||
'İnşaat Mühendisliği','Beslenme ve Diyetetik','Fizyoterapi ve Rehabilitasyon',
|
||||
'Moleküler Biyoloji ve Genetik')
|
||||
GROUP BY p.isim ORDER BY s25 ASC;
|
||||
```
|
||||
|
||||
Çıktı (yazıdaki tabloyla birebir):
|
||||
|
||||
```
|
||||
isim n tyt_trk tyt_mat ayt_mat ayt_fen s25
|
||||
Tıp 106 31.5 28.2 33.8 34.5 17237
|
||||
Diş Hekimliği 75 30.2 25.5 30.9 31.9 31607
|
||||
Eczacılık 36 29.1 24.4 29.2 29.6 44463
|
||||
Endüstri Mühendisliği 64 28.6 21.0 22.0 23.8 111114
|
||||
Bilgisayar Mühendisliği 114 27.9 19.4 20.7 23.2 120182
|
||||
Hemşirelik 116 26.6 16.1 17.2 19.9 143896
|
||||
Elektrik-Elektronik Mühendisliği 110 27.0 18.3 17.9 21.4 147235
|
||||
Yazılım Mühendisliği 37 26.3 17.6 17.1 20.1 152171
|
||||
Makine Mühendisliği 101 26.0 16.9 18.1 19.4 163481
|
||||
Veteriner 34 26.7 16.0 17.1 21.4 164612
|
||||
Mimarlık 57 27.3 16.3 15.9 18.2 165879
|
||||
İnşaat Mühendisliği 95 25.8 14.9 14.3 16.1 206016
|
||||
Fizyoterapi ve Rehabilitasyon 63 24.8 11.3 11.0 13.1 260335
|
||||
Beslenme ve Diyetetik 65 25.5 12.8 10.5 11.3 271607
|
||||
Moleküler Biyoloji ve Genetik 43 25.0 12.2 9.6 13.3 327838
|
||||
```
|
||||
|
||||
### 2.3 Tablo 3 — EA / SÖZ / DİL
|
||||
|
||||
```sql
|
||||
SELECT p.tur, p.isim, COUNT(*) n,
|
||||
ROUND(AVG(x.tytTrkNet),1) tyt_trk, ROUND(AVG(x.tytMatNet),1) tyt_mat,
|
||||
ROUND(AVG(x.aytMatNet),1) ayt_mat, ROUND(AVG(x.aytTdeNet),1) tde,
|
||||
ROUND(AVG(x.aytTrh1Net + x.aytCog1Net),1) sos1,
|
||||
ROUND(AVG(x.ydtYdilNet),1) ydt,
|
||||
CAST(AVG(p.sira2025) AS INT) s25
|
||||
FROM netler x JOIN programs p ON p.id=x.program_id
|
||||
WHERE x.yil=2025 AND p.onlisans=0 AND p.unitur='DEVLET' AND p.sira2025 IS NOT NULL
|
||||
AND p.isim IN ('Hukuk','Psikoloji','Rehberlik ve Psikolojik Danışmanlık',
|
||||
'Sınıf Öğretmenliği','İşletme','İktisat','Uluslararası İlişkiler',
|
||||
'Özel Eğitim Öğretmenliği','Okul Öncesi Öğretmenliği','Türkçe Öğretmenliği',
|
||||
'Tarih','Türk Dili ve Edebiyatı','İngilizce Öğretmenliği',
|
||||
'İngiliz Dili ve Edebiyatı','İlahiyat','Sosyal Hizmet')
|
||||
GROUP BY p.tur, p.isim ORDER BY p.tur, s25 ASC;
|
||||
```
|
||||
|
||||
Çıktı:
|
||||
|
||||
```
|
||||
tur isim n trk tmat amat tde sos1 ydt s25
|
||||
DİL İngilizce Öğretmenliği 66 29.3 8.2 - - - 64.5 20078
|
||||
DİL İngiliz Dili ve Edebiyatı 60 28.0 4.8 - - - 56.7 32283
|
||||
EA Hukuk 51 30.1 19.4 21.9 17.6 11.5 - 22999
|
||||
EA Sınıf Öğretmenliği 75 28.0 13.8 12.8 16.3 9.1 - 94565
|
||||
EA Psikoloji 72 28.8 12.8 12.0 16.7 9.0 - 126270
|
||||
EA Rehberlik ve Psikolojik Danışmanlık 72 27.4 12.1 10.0 15.8 8.8 - 133579
|
||||
EA Uluslararası İlişkiler 61 23.9 7.6 7.1 11.8 6.8 - 425022
|
||||
EA İşletme 146 24.0 8.4 7.5 11.6 6.4 - 441022
|
||||
EA Sosyal Hizmet 61 24.4 4.3 3.0 12.9 5.9 - 449096
|
||||
EA İktisat 120 23.2 6.6 6.3 10.5 5.3 - 549489
|
||||
SÖZ Özel Eğitim Öğretmenliği 54 29.4 5.3 - 18.4 12.4 - 9538
|
||||
SÖZ Okul Öncesi Öğretmenliği 69 26.6 5.2 - 16.5 11.4 - 18849
|
||||
SÖZ Türkçe Öğretmenliği 71 25.3 4.6 - 13.4 9.0 - 73366
|
||||
SÖZ Türk Dili ve Edebiyatı 100 21.0 2.3 - 9.8 5.0 - 330169
|
||||
SÖZ Tarih 107 20.1 2.6 - 8.2 6.4 - 365385
|
||||
SÖZ İlahiyat 164 18.1 1.8 - 6.9 4.2 - 478545
|
||||
```
|
||||
|
||||
### 2.4 Tablo 4 — aynı bölüm içinde bant dağılımı
|
||||
|
||||
```sql
|
||||
SELECT CASE WHEN p.sira2025<=10000 THEN 'ilk 10 bin'
|
||||
WHEN p.sira2025<=50000 THEN '10-50 bin'
|
||||
WHEN p.sira2025<=150000 THEN '50-150 bin'
|
||||
ELSE '150 bin ustu' END bant,
|
||||
COUNT(*) n, ROUND(AVG(x.tytTrkNet),1), ROUND(AVG(x.tytMatNet),1),
|
||||
ROUND(AVG(x.aytMatNet),1), ROUND(AVG(x.aytFizNet),1),
|
||||
ROUND(AVG(x.aytKimNet),1), ROUND(AVG(x.aytBioNet),1)
|
||||
FROM netler x JOIN programs p ON p.id=x.program_id
|
||||
WHERE x.yil=2025 AND p.isim='Bilgisayar Mühendisliği' AND p.unitur='DEVLET'
|
||||
AND p.onlisans=0 AND p.sira2025 IS NOT NULL
|
||||
GROUP BY bant;
|
||||
-- ilk 10 bin | 5 | 33.3 | 31.8 | 39.5 | 12.5 | 12.0 | 12.0
|
||||
-- 10-50 bin | 18 | 31.9 | 25.4 | 31.1 | 10.6 | 11.3 | 10.0
|
||||
-- 50-150 bin | 52 | 28.2 | 20.2 | 21.3 | 8.3 | 8.3 | 7.6
|
||||
-- 150 bin ustu | 39 | 25.0 | 13.9 | 12.8 | 6.1 | 4.4 | 5.5
|
||||
```
|
||||
|
||||
### 2.5 Tablo 5 — üç yıl eşleşmeli karşılaştırma
|
||||
|
||||
```sql
|
||||
WITH uc AS (
|
||||
SELECT program_id FROM netler WHERE yil IN (2023,2024,2025)
|
||||
GROUP BY program_id HAVING COUNT(DISTINCT yil)=3
|
||||
)
|
||||
SELECT p.isim, COUNT(DISTINCT p.id) n,
|
||||
ROUND(AVG(CASE WHEN x.yil=2023 THEN x.tytMatNet END),1) tm23,
|
||||
ROUND(AVG(CASE WHEN x.yil=2024 THEN x.tytMatNet END),1) tm24,
|
||||
ROUND(AVG(CASE WHEN x.yil=2025 THEN x.tytMatNet END),1) tm25,
|
||||
ROUND(AVG(CASE WHEN x.yil=2023 THEN x.aytMatNet END),1) am23,
|
||||
ROUND(AVG(CASE WHEN x.yil=2024 THEN x.aytMatNet END),1) am24,
|
||||
ROUND(AVG(CASE WHEN x.yil=2025 THEN x.aytMatNet END),1) am25
|
||||
FROM netler x JOIN programs p ON p.id=x.program_id JOIN uc ON uc.program_id=x.program_id
|
||||
WHERE p.onlisans=0 AND p.unitur='DEVLET'
|
||||
AND p.isim IN ('Tıp','Hukuk','Bilgisayar Mühendisliği','Psikoloji','Hemşirelik')
|
||||
GROUP BY p.isim;
|
||||
-- Tıp 102 | 34.6 34.9 28.4 | 35.1 29.6 33.8
|
||||
-- Bilgisayar Mühendisliği 111 | 27.1 24.2 19.3 | 26.4 17.9 20.6
|
||||
-- Hukuk 50 | 24.8 23.4 19.3 | 23.8 17.4 21.9
|
||||
-- Hemşirelik 110 | 19.2 19.5 16.2 | 18.5 12.4 17.3
|
||||
-- Psikoloji 62 | 17.8 15.7 12.5 | 15.7 9.9 12.0
|
||||
```
|
||||
|
||||
Aynı CTE ile tüm devlet lisans kesiti (yazının en güçlü tek bulgusu):
|
||||
|
||||
```sql
|
||||
-- ... aynı uc CTE ...
|
||||
SELECT COUNT(DISTINCT p.id) n,
|
||||
ROUND(AVG(CASE WHEN x.yil=2023 THEN x.tytMatNet END),1),
|
||||
ROUND(AVG(CASE WHEN x.yil=2024 THEN x.tytMatNet END),1),
|
||||
ROUND(AVG(CASE WHEN x.yil=2025 THEN x.tytMatNet END),1),
|
||||
ROUND(AVG(CASE WHEN x.yil=2023 THEN x.tytTrkNet END),1),
|
||||
ROUND(AVG(CASE WHEN x.yil=2024 THEN x.tytTrkNet END),1),
|
||||
ROUND(AVG(CASE WHEN x.yil=2025 THEN x.tytTrkNet END),1)
|
||||
FROM netler x JOIN programs p ON p.id=x.program_id JOIN uc ON uc.program_id=x.program_id
|
||||
WHERE p.onlisans=0 AND p.unitur='DEVLET';
|
||||
-- n=5213 | TYT Mat 13.6 → 12.5 → 9.9 | TYT Türkçe 24.0 → 24.3 → 24.6
|
||||
```
|
||||
|
||||
### 2.6 OBP rakamları
|
||||
|
||||
```sql
|
||||
SELECT COUNT(*), ROUND(AVG(x.obp),0) FROM netler x JOIN programs p ON p.id=x.program_id
|
||||
WHERE x.yil=2025 AND p.onlisans=0 AND p.unitur='DEVLET' AND p.sira2025 IS NOT NULL;
|
||||
-- 5801 | 411
|
||||
-- aynı filtreyle: Tıp (n=106) 478 · Psikoloji (n=72) 433
|
||||
```
|
||||
|
||||
### 2.7 Adlandırma kontrolü (tabloya girmeyen varyantlar)
|
||||
|
||||
```sql
|
||||
SELECT isim, COUNT(*) FROM programs
|
||||
WHERE unitur='DEVLET' AND onlisans=0 AND isim LIKE 'Bilgisayar Mühendisliği%' GROUP BY isim;
|
||||
-- Bilgisayar Mühendisliği 125
|
||||
-- Bilgisayar Mühendisliği (KKTC Uyruklu) 2
|
||||
-- Bilgisayar Mühendisliği (İngilizce) 5
|
||||
-- (İngilizce) (%50 İndirimli) 1
|
||||
-- (İngilizce) (KKTC Uyruklu) 1
|
||||
-- (İngilizce) (UOLP-Saraybosna) (%25 İndirimli) 3
|
||||
```
|
||||
|
||||
`programs.isim` 2026 kılavuzundaki adı taşıyor (2.537 programın adında parantez var). ODTÜ ve Boğaziçi Bilgisayar Mühendisliği 2026'da düz adla geçiyor, bu yüzden tabloya giriyorlar. Bu kısıt yazının "nasıl hesaplandı" kutusunda açıkça yazılı.
|
||||
|
||||
---
|
||||
|
||||
## 3. YÖK Atlas gözle doğrulaması
|
||||
|
||||
YÖK Atlas 2026'da SPA'ya geçtiği için eski `lisans-panel.php` / `content/lisans-dynamic/*.php` panelleri artık HTML dönmüyor (hepsi boş React kabuğu; `scripts/detay.ts:27` bunu zaten not etmiş). `netler-tablo.php` ve `net-sihirbazi` sayfaları da SPA. Bu yüzden doğrulama **sitenin kendi canlı servisinden** (`POST /api/netler/search`, tarayıcıdaki Net Sihirbazı'nın çağırdığı uç) program program yapıldı. Değerler bugün (22 Eyl 2026) canlıdan çekildi ve `data/yokatlas.db` ile alan alan karşılaştırıldı.
|
||||
|
||||
| # | Program (kılavuz kodu) | Alan | Canlı YÖK Atlas (2025) | Bizim DB | Sonuç |
|
||||
|---|---|---|---|---|---|
|
||||
| 1 | Hacettepe Ü. Tıp (104810617) | tabanPuan / obp / TYT Trk / TYT Mat / AYT Mat / Fiz / Kim / Biyo | 530.58733 / 483.88 / 35,25 / 36,25 / 37,5 / 14,0 / 13,0 / 11,75 | aynı | ✅ birebir |
|
||||
| 2 | ODTÜ Bilgisayar Müh. (İng.) (108410336) | tabanPuan / TYT Trk / TYT Mat / AYT Mat | 534.56656 / 32,25 / 32,25 / 40,0 | aynı | ✅ birebir |
|
||||
| 3 | Boğaziçi Bilgisayar Müh. (İng.) (102210277) | tabanPuan / obp / TYT Trk / TYT Mat / AYT Mat / Fiz / Kim / Biyo | 533.05003 / 473.958 / 33,75 / 38,75 / 38,75 / 12,75 / 11,75 / 13,0 | aynı | ✅ birebir |
|
||||
| 4 | Ankara Ü. Hukuk (101110518) | tabanPuan / obp / TYT Trk / TYT Mat / AYT Mat / TDE / Trh1 / Coğ1 | 461.84071 / 459.008 / 34,25 / 26,75 / 27,25 / 19,0 / 10,0 / 4,75 | aynı | ✅ birebir |
|
||||
| 5 | İstanbul Ü. Psikoloji (105610255) | tabanPuan / obp / TYT Trk / TYT Mat / AYT Mat / TDE / Trh1 / Coğ1 | 417.22453 / 433.971 / 28,25 / 9,25 / 27,0 / 19,0 / 8,75 / 2,25 | aynı | ✅ birebir |
|
||||
| 6 | Ege Ü. Hemşirelik (103410793) | tabanPuan / obp / TYT Trk / TYT Mat / AYT Mat / Fiz / Kim / Biyo | 400.41912 / 398.02 / 17,5 / 16,5 / 24,25 / 10,25 / 10,5 / 11,75 | aynı | ✅ birebir |
|
||||
|
||||
Ek olarak filtresiz ilk sayfadaki 4 kayıt (Medipol Tıp İng. Burslu 203110477, Koç Tıp İng. Burslu 203910699, Koç Tarih 203910187, Koç Ekonomi 203910275) da alan alan tuttu — **10/10**.
|
||||
|
||||
**2026 verisinin yokluğu doğrudan teyit edildi:**
|
||||
|
||||
```
|
||||
POST /api/netler/search {"filters":{},"page":0,"size":3,"sortBy":"yil","direction":"DESC"}
|
||||
→ totalElements: 63063 ; ilk 3 kaydın hepsi yil=2025
|
||||
```
|
||||
|
||||
Yani canlı serviste en yeni net yılı 2025. (Bizde 62.975 satır var; canlıda 63.063 → %99,86 kapsama. Fark küçük, yazının hiçbir iddiasını etkilemiyor, ama veri mühendisine not.)
|
||||
|
||||
**Hüküm: YAYIMLANABİLİR.** Veri doğrulandı, editör notuna gerek yok.
|
||||
|
||||
---
|
||||
|
||||
## 4. Çıkarılan / yazılmayan iddialar
|
||||
|
||||
| İddia | Neden yazılmadı |
|
||||
|---|---|
|
||||
| "Şu kadar net yaparsan X bölümüne girersin" | Veri tek kişilik gözlem; ÖSYM net barajı yayımlamıyor. Yazı bunun yerine "en son yerleşenin profili" dilini kullanıyor. |
|
||||
| "Yerleşenlerin ortalama neti" | Veri ortalama değil (bkz. §1). Yazıda bilerek **yanlış okuma** olarak işaretlendi. |
|
||||
| 2026 net rakamı | YÖK Atlas yayımlamamış (canlı API ile teyit). "Açıklanmadı" diye yazıldı. |
|
||||
| Vakıf üniversitesi net tablosu | Burslu/İndirimli/Ücretli varyantları bölüm adında ayrışıyor ve karşılaştırma yanıltıcı olurdu; SEO planı §1 bu kesiti zaten ayrı yazıya bırakmış. Kapsam DEVLET ile sınırlandı. |
|
||||
| Önlisans (TYT) net tablosu | Kapsam dışı bırakıldı (yazı lisans odaklı); ayrı yazı konusu. |
|
||||
| n < 10 olan bölümler | Tabloya alınmadı. Brief "5'ten az" diyordu, eşik 10'a çekildi (daha muhafazakâr). Tek istisna görünürdeki bant tablosunun "ilk 10 bin" satırı: n=5, satırın yanında açıkça yazıyor. |
|
||||
| "Net → sıralama" dönüşüm tablosu | Resmî bir dönüşüm tablosu yok; kurumların tahmini tabloları kaynak gösterilemezdi. Yazı yalnızca "denemeni sıralamaya çevir" diyor, rakam vermiyor. |
|
||||
|
||||
---
|
||||
|
||||
## 5. Engeller ve veri kalitesi notları (editör / veri mühendisi için)
|
||||
|
||||
1. **SEO planı §2 #2'deki tanım hatalı** (bkz. §1). `02-seo-konu-plani.md` düzeltilmeli; aynı hatayı devralabilecek konu: §2 #15 (veli yazısı, "net tablosu tekrarlamaz ama tek örnek verir").
|
||||
2. **Brief'in "netler tablosu sitede hiçbir yerde kullanılmadı" varsayımı yanlış.** Tablo zaten katalogda ve liste ekranında kullanılıyor: `src/app/api/netler/route.ts`, `src/features/katalog/components/program-netleri.tsx` (program satırındaki "netler" butonu → modal), `universite-program-tablosu.tsx:114`, `bolum-program-listesi.tsx:262`, `liste/components/program-tablosu.tsx:387`. **Yazıda kullanılmamıştı**, doğrusu bu. Fark önemli, çünkü modal zaten "son yerleşen kişi" dilini kullanıyor; yazı onunla tutarlı.
|
||||
3. **Şüpheli program kayıtları (veri kalitesi).** Bölüm içi uç değer taramasında `fakulte` alanı bölümle uyuşmayan kayıtlar çıktı — ör. `108411025` ORTA DOĞU TEKNİK ÜNİVERSİTESİ / isim "Psikoloji" / fakülte **"Mühendislik Fakültesi"** / `sira2025 = 750343`; benzer şekilde `108410857` ODTÜ "Bilgisayar Mühendisliği" / Mühendislik Fakültesi / `sira2025 = 252139`. Bunlar büyük olasılıkla KKTC uyruklu / özel kontenjan satırları ama adlarında ek taşımıyor. **Yazıda hiçbiri tek tek anılmadı**; yalnızca 72 ve 114 programlık ortalamaların içinde kaldılar (etkileri ihmal edilebilir). `veri-muhendisi`'ne bakması için not.
|
||||
4. **Kapsama farkı:** canlı API 63.063 satır, bizde 62.975 (88 satır eksik, %0,14). Sebebi incelenmedi.
|
||||
5. **Disk:** vardiya sırasında makinenin kök diski doldu (`/` %100, ~117 MB boş); iki komut `ENOSPC` ile düştü ve tekrar denenerek aşıldı. Orkestratöre not.
|
||||
|
||||
---
|
||||
|
||||
## Bilal'den istenen (yayın öncesi kontrol)
|
||||
|
||||
1. **Terminoloji onayı:** Yazı, YÖK Atlas net verisini "yerleşenlerin ortalaması" değil **"o programa en son yerleşen kişinin neti"** diye anlatıyor (kanıtlar raporda). Bu dil ürünün her yerinde aynı kalmalı — onaylıyor musun? (~5 dk)
|
||||
2. **Tablo genişliği:** Sayısal tablosu 7, EA/SÖZ/DİL tablosu 10 kolon. Mobilde yatay kayan `rehber-tablo` sarmalayıcısına giriyor ama bir göz atman iyi olur. (~3 dk)
|
||||
3. **Güncelleme tetiği:** YÖK Atlas 2026 netlerini yayımladığında bu yazı ve tabloları yenilenmeli; backlog'a "2026 netleri gelince `kac-net-ile-hangi-bolum` güncelle" kalemi açılsın mı? (~2 dk)
|
||||
Reference in New Issue
Block a user