Ometek Academy Ometek Academy
Zacznij trening → Aplikuj
#meta #philosophy

Dlaczego zbudowałem Ometek Academy.

O
Ometek
19 lipca 2026 · 5 min czytania

Szczere wyznanie trenera o tym, dlaczego automatyczne ocenianie nie zastąpi oceny człowieka, dlaczego sam LeetCode nie wystarczy na olimpiadę, i dlaczego w końcu przestałem czekać, aż ktoś inny zbuduje siłownię, której chciałem.

Każda automatyczna sprawdzarka daje ci werdykt. Zielone światło, czerwone światło. „Zła odpowiedź na teście 7”. Czasem powie ci, że przekroczono limit czasu. I tyle. Wpatrujesz się w kod, zgłaszasz go ponownie z drobną poprawką i albo światło robi się zielone, albo nie. Po kilku tygodniach takiej pracy zaczynasz wierzyć, że cała gra polega na znalezieniu sztuczki, która zadowoli sprawdzarkę — i dla wielu platform miałbyś rację. Ale informatyka olimpijska to nie ta gra, a przepaść między „sprawdzarka to zaakceptowała” a „to rozwiązanie jest naprawdę poprawne” to właśnie miejsce, w którym utyka większość uczniów.

Czego nie powie ci automatyczna sprawdzarka

Codeforces, LeetCode, CSES — korzystam ze wszystkich. Zadaję zadania ze wszystkich tych platform. To świetne narzędzia do zdobywania wprawy. Ale sprawdzarka, która mówi ci „zła odpowiedź”, nie powie ci, że leniwa propagacja w twoim drzewie przedziałowym załamie się na innej klasie danych wejściowych. Nie powie ci, że twoje BFS jest poprawne, ale reprezentacja krawędzi ugryzie cię w trudniejszym wariancie za miesiąc. Nie powie ci, że podejście, którego użyłeś, było wolną ścieżką i miałeś szczęście do słabych testów.

Widziałem uczniów, którzy miesiącami grindowali LeetCode, dobili do ratingu 1900, a potem siadali przed zadaniem z OI i nie mieli po co sięgnąć. Nie dlatego, że się nie starali — pracowali ciężko. Ale informacja zwrotna, jaką dostawali, była zbyt uboga. Zaliczone/niezaliczone bez wyjaśnienia nie buduje intuicji, jakiej potrzebujesz, gdy zadanie nie ma edytorialu ani społeczności upsolve'ującej, która by cię wybawiła.

Zgłoszenia sprawdzane przez trenera idą wolniej. Patrzę na kod. Zostawiam notatkę. Czasem odrzucam rozwiązanie, które sprawdzarka by zaakceptowała, bo widzę problem strukturalny, którego nie wyłapały dane testowe. To odrzucenie nie jest porażką — to jest to, co sprawia, że kolejne zadanie idzie szybciej. Platforma oznacza to jasno: to nie „błąd”, to „wymaga poprawki”. Jest różnica, a uczniowie, którzy ją rozumieją, zwykle przestają bać się trudnych zadań.

Dlaczego sam LeetCode cię tam nie zaprowadzi

LeetCode jest zbudowany wokół jednej konkretnej rzeczy: przygotowania do rozmów kwalifikacyjnych. Zadania mają ograniczony zakres, sufit trudności jest realny, a cała kultura platformy jest zoptymalizowana pod „potrafię to rozwiązać w 20 minut pod presją”. To wartościowa umiejętność. Po prostu nie jest to informatyka olimpijska.

OI, OI Junior, Logia — te zawody oczekują, że posiedzisz nad zadaniem godzinami, czasem przez wiele dni. Oczekują, że skonstruujesz argumentację, a nie tylko znajdziesz wzorzec. Oczekują dowodów poprawności, a nie tylko działających przykładów. Struktury zadań są inne. Horyzonty czasowe są inne. Nastawienie mentalne jest inne.

Uczeń, który pracował wyłącznie w trybie LeetCode, często zamarza przy zadaniu olimpijskim nie dlatego, że leżący u podstaw algorytm jest poza jego zasięgiem, lecz dlatego, że został wytrenowany, by oczekiwać, że rozwiązanie przyjdzie szybko albo wcale. Powolne, cierpliwe, strukturalne myślenie, którego wymagają trudne zadania olimpijskie, to osobna umiejętność i wymaga osobnego treningu.

Siłownia, którą prowadzę, jest dedykowana właśnie tej umiejętności. Zadania są przydzielane — wybieram je, w kolejności, którą przemyślałem, dopasowanej do tego, gdzie faktycznie jest dany uczeń. Niektóre zadania mają ukrytą kategorię. Widzisz „???” tam, gdzie powinna być kategoria. To celowe: część pracy polega na rozgryzieniu, z jakim typem zadania masz do czynienia, bo na zawodach nie ma tagu, który podpowie ci drzewo przedziałowe.

Siłownia, jakiej sam bym chciał

Zacząłem trenować, bo już robiłem to nieformalnie — siadałem z uczniami, patrzyłem na ich kod, tłumaczyłem różne rzeczy. W pewnym momencie potrzebowałem systemu, nie wątku na czacie. Rozglądałem się za czymś, co pasowałoby do tego, co próbowałem robić: małe grupy, sprawdzanie przez człowieka, uporządkowaną progresję, na tyle widoczności dla rodziców, by widzieli, że dzieje się coś realnego, bez stawiania uczniów pod nadzorem. Nie znalazłem tego.

Narzędzia, które znalazłem, były budowane albo pod masowe automatyczne ocenianie, albo pod drużyny programistyczne na poziomie uniwersyteckim. Żadne z nich nie jest tym, czego potrzebuje 13-latek przygotowujący się do swojego pierwszego OI.

Więc zbudowałem coś sam. Kalendarz serii, żeby uczniowie widzieli własny wzorzec — nie po to, by zamienić to w grywalizacyjną spiralę lęku, ale dlatego, że jednostką treningu jest dzień, a widoczne dni to dni, o których możesz rozumować. Poziomy XP i rangi, bo uczniowie reagują na poczucie progresji, które nie sprowadza się tylko do „rozwiązałem więcej zadań niż wczoraj”. Panel rodzica, bo rodzice inwestują w to realny czas i pieniądze i zasługują na to, żeby widzieć, co się dzieje, wprost, bez konieczności pisania przeze mnie cotygodniowego maila do każdej rodziny.

Grupę utrzymuję małą celowo. Każde zgłoszenie sprawdzam osobiście. To nie jest problem skalowalności, który czeka na rozwiązanie — to jest właśnie sedno. Sprawdzanie jest produktem. Kiedy odrzucam rozwiązanie i zostawiam notatkę, ta notatka pochodzi od kogoś, kto prowadził uczniów przez eliminacje do OI i widział dokładnie, jak powstają luki. Tego nie chcę zautomatyzować.

Czym to nie jest

To nie jest kurs. Nie ma tu wykładów wideo, certyfikatów ani rankingu, w którym rywalizujesz z obcymi. To bliżej programu treningowego z trenerem, który zna twoją pracę. Zadaję zadania, sprawdzam to, co zgłaszasz, i dostosowuję to, co przyjdzie dalej, na podstawie tego, co widzę.

To też nie jest dla każdego. Jeśli chcesz od czasu do czasu poeksplorować algorytmy we własnym tempie, są lepsze i tańsze opcje. To jest dla uczniów, którzy naprawdę próbują zakwalifikować się do OI, dobrze wypaść na Logii albo poważnie podejść do ratingu na Codeforces — i którzy rozumieją, że dojście tam wymaga konsekwentnej pracy sprawdzanej przez kogoś, kto potrafi odróżnić rozwiązanie, które przechodzi, od rozwiązania, które jest poprawne.

Zbudowałem to, bo chciałem, żeby to istniało. Teraz istnieje. Cała historia.


Powiązane