Paprikon34
Období: Týden 11/2026 (od 15.03.) Skupina: tria
1. Splnění základních podmínek
| Podmínka | Status |
|---|---|
| Alespoň 3 commity v daném týdnu | ✅ SPLNĚNO |
| Rozestup alespoň 12h mezi 3 commity | ✅ SPLNĚNO |
| Projektová dokumentace (README, projekt.md) | ✅ SPLNĚNO |
Vypočtený Index za tento týden: 336
Týdenní Index Náročnosti dodaných skriptů (1-5): 4
2. Kvantitativní přehled úprav
| Metrika | Hodnota |
|---|---|
| Počet všech commitů | 8 |
| Počet změněných souborů | 11 |
| Počet přid./odeb. řádků kódů | 1160 |
Přehled commitů
- 2026-03-16 07:17: Update project docs structure and details
Reworked the documentation for the 'Kámen, nůžky, papír' project: simplified top header, reorganized sections (added "Funkcionalita programu" and "Technická část"), adjusted heading levels, and expanded explanations of features such as Dark/Light mode, unbounded FPS, stats persistence, asset path handling and fallback graphics, menu settings and drawing/logic details. Also updated pozadavky.md with a clarifying sentence about choosing the project name. - 2026-03-16 07:20: Add weekly project scoring guide (hodnocení.md)
Add a new Czech-language document outlining the weekly project scoring system. It details AI code evaluation (up to 40 points), administrative bonuses (up to 60 points) with the 30% minimum rule, the difficulty multiplier (1–5), an example index calculation, and a note on converting percentages to grades. - 2026-03-16 07:25: Add .gitignore for Python cache files
Create a .gitignore that excludes Python bytecode and cache artifacts (pycache/, .py[cod], $py.class) to avoid committing compiled files and reduce repository clutter. - 2026-03-16 09:39: Přidána funkce pro globální crash reporting a error popup. - 2026-03-16 09:39: Dnes jsem provedl změny v kódu. - 2026-03-20 11:21: Aktualizoval jsem funkce pro načítání obrázků a assetů. - 2026-03-20 11:25: Add processed URL to zpracovane_odkazy.txt
Append a newly processed erudios.com report URL to 02_web_scraper_ai/zpracovane_odkazy.txt to prevent the scraper from reprocessing it. The new entry records the report ID for tracking. - 2026-03-21 14:07: Add crash reporting for unhandled exceptions
Wraps the top-level main() invocation in a try/except to catch unhandled exceptions and create a timestamped crash report under SCRIPT_DIR/crash_reports. The handler writes timestamp, error message and full traceback to a crash_report_YYYY-MM-DD_HH-MM-SS.txt file, prints status messages, handles file write errors, and exits with code 1.
3. Hodnocení asistentem AI (Logika a úsilí)
Ahoj, jsem tvůj asistent pro výuku Pythonu. Prostudoval jsem tvůj repozitář a odevzdanou práci za uplynulý týden. Je vidět, že ses pustil do ambiciózních témat (automatizace a robustní ošetření chyb), ale zároveň se v tvém kódu objevily poměrně zásadní logické nedostatky a chaos ve struktuře.
Zde je tvé hodnocení:
1. Smysluplnost popisů u commitů [3 body]
Tvoje commit zprávy jsou na velmi vysoké úrovni. Jsou deskriptivní, vysvětlují nejen co se změnilo, ale i proč (např. commit z 2026-03-21 ohledně crash reportingu). Jedinou výjimkou je slabší zpráva „Dnes jsem provedl změny v kódu“, ale zbytek je příkladný.
2. Smysluplnost komentářů v kódu [4 body]
Komentáře v souboru bot.py jsou užitečné a vysvětlují logiku ošetření chyb. Nicméně v souboru main.py (projekt Kámen, nůžky, papír) došlo k bizarní situaci, kdy jsi v historii vytvořil asi 20 identických kopií funkce načit_req_studentske_prace(), což naznačuje nepozornost při kopírování kódu nebo chybu při generování AI. To značně snižuje přehlednost.
3. Kvalita a srozumitelnost dokumentace a struktura repozitáře [1 bod]
Dokumentace v README.md a _projekt.md vypadá velmi profesionálně a splňuje formální náležitosti. Bohužel jsi ale zásadně porušil pravidla adresářové struktury:
- Soubory /zpracovane_odkazy.txt a /01_Kamen_nuzky_papir_projekt.md se nacházejí v rootu (hlavní složce), ačkoliv mají být uvnitř složek k daným projektům.
- V repozitáři jsi nechal složku __pycache__, která tam nepatří (má být v .gitignore).
- Soubor /pozadavky.md v rootu je v pořádku, pokud je globální, ale ostatní výše zmíněné soubory nikoliv.
4. Logika řešení a přemýšlení studenta v Pythonu [4 body]
Zde mám největší výhrady, zejména k projektu „Kámen, nůžky, papír“:
- V souboru main.py jsi nahradil funkční kód hry skriptem, který pomocí with open(..., 'w') vytváří prázdné soubory. zde je chyba: Tímto jsi de facto smazal svou práci.
- Logická chyba: Ve stejném skriptu se pokoušíš načíst obrázky pygame.image.load(image_path) hned poté, co jsi je vytvořil jako prázdné textové soubory. To způsobí pád programu, protože prázdný soubor není validní obrázek.
- Také voláš load_assets() předtím, než jsou soubory fyzicky připraveny pro Pygame, a chybí ti pygame.init() před prací s assety v novém návrhu.
- Naopak v 02_web_scraper_ai/bot.py oceňuji pokročilou práci s modulem traceback a datetime pro generování crash reportů. To je logicky správně a ukazuje to na dobrou úroveň v oblasti ošetření výjimek.
Celkem získáno bodů: [12 / 60%] z 20 možných
Slovní shrnutí: Tvůj Web Scraper se vyvíjí slibně a implementace crash reportingu je velmi dobrá. Nicméně projekt s Pygame jsi tímto týdnem v podstatě znefunkčnil („rozbil“) regresí kódu a nedodržením struktury složek. Příště si dej pozor na to, co commituješ, a hlídej si, aby soubory neležely volně v rootu.
DIFFICULTY_INDEX: [4]