Jak odwiedziłam legendarną Szkołę 42: „basen”, koty i internet zamiast nauczycieli. Część 2

Jak odwiedziłam legendarną Szkołę 42: „basen”, koty i internet zamiast nauczycieli. Część 2

В ostatni post Zacząłem opowieść o Szkole 42, która słynie z rewolucyjnego systemu edukacji: nie ma tam nauczycieli, uczniowie sami sprawdzają sobie nawzajem pracę i nie trzeba płacić za szkołę. W tym poście opowiem Wam bardziej szczegółowo o systemie szkolenia oraz o tym, jakie zadania wykonują uczniowie.

Nie ma nauczycieli, jest internet i przyjaciele. Edukacja w szkole opiera się na zasadach wspólnej pracy projektowej – peer-to-peer learning. Studenci nie studiują żadnych podręczników, nie prowadzą wykładów. Organizatorzy szkoły wierzą, że wszystko można znaleźć w Internecie, zapytać znajomych lub bardziej doświadczonych uczniów, z którymi pracuje się nad projektem.

Wykonane zadania są sprawdzane 3-4 razy przez innych uczniów, dzięki czemu każdy może być zarówno uczniem, jak i mentorem. Nie ma też ocen - wystarczy poprawnie i całkowicie wykonać zadanie. Nawet jeśli uda się to w 90%, będzie to policzone jako porażka.

Nie ma ocen, są punkty. Aby zgłosić projekt do recenzji należy posiadać określoną liczbę punktów – punktów poprawkowych. Punkty zdobywa się sprawdzając prace domowe innych uczniów. A to jest dodatkowy czynnik rozwoju – bo trzeba rozumieć różnorodne zadania, czasem przekraczające Twój poziom wiedzy.

„Niektóre projekty to prawdziwa przestrzeń, robią wrażenie. A potem, żeby zdobyć chociaż jeden punkt poprawkowy, trzeba się pocić cały dzień, żeby zrozumieć kod. Któregoś dnia miałem szczęście i w ciągu jednego dnia zdobyłem aż 4 punkty – to rzadki przypadek.”, mówi mój przyjaciel, student Siergiej.

Siedzenie w kącie nie pomoże. Projekty realizujemy indywidualnie i w parach, a także w większych grupach. Są oni zawsze chronieni osobiście i ważne jest, aby wszyscy członkowie grupy brali czynny udział, a także aby każdy rozumiał kodeks i był wysoce zmotywowany. Nie da się tu milczeć i siedzieć z boku. Szkoła doskonali w ten sposób umiejętności pracy w grupie i skutecznej komunikacji. Poza tym wszyscy uczniowie poznają się i komunikują ze sobą, co jest bardzo przydatne do nawiązywania kontaktów i przyszłej kariery zawodowej.

Grywalizacja. Podobnie jak w grze komputerowej, uczniowie przechodzą kolejne poziomy i śledzą swoje postępy za pomocą Świętego Wykresu – „świętej” mapy, która wyraźnie pokazuje całą przebytą przez nich ścieżkę i ścieżkę przed nią. Podobnie jak w RPG, za projekty przyznawane jest „doświadczenie”, a po zgromadzeniu jego określonej ilości następuje przejście na nowy poziom. Podobieństwo do prawdziwej gry polega na tym, że każdy nowy poziom jest trudniejszy od poprzedniego i jest coraz więcej zadań.

Jak odwiedziłam legendarną Szkołę 42: „basen”, koty i internet zamiast nauczycieli. Część 2

Glass i Adm. W szkole działają dwa główne działy - Bokal (technicy) i Adm (administracja). Bokal zajmuje się kwestiami technicznymi i częścią pedagogiczną, natomiast Adm zajmuje się kwestiami administracyjno-organizacyjnymi. Rezerwę kadrową Bokala/Adm uzupełniają sami studenci, którzy odbywają praktyki w Szkole.

Jak i czego się tutaj uczy

Wszystko zaczyna się na „S”. W szkole używają wyłącznie Uniksa, uznając, że Windows nie jest najlepszym wyborem. Kodu uczymy od podstaw, zmuszając do zrozumienia samej logiki programowania. Pierwsze kilka poziomów wszystkich projektów jest wykonywanych wyłącznie w językach C i C++, nie używa się IDE. Uczniowie korzystają z kompilatora gcc i edytora tekstu vim.

„Na innych kursach podadzą ci funkcje, poproszą o wykonanie projektu i dopiero potem wyjaśnią, jak są programowane. Tutaj nie możesz użyć tej funkcji, dopóki sam jej nie napiszesz. Na początku, będąc jeszcze w „puli”, nie rozumiałem, po co mi ten malloc, dlaczego muszę sam przydzielać pamięć, dlaczego nie uczę się Pythona i JavaScriptu. A potem nagle wszystko do ciebie dociera i zaczynasz rozumieć, jak myśli komputer.

Norminuj. Po pomyślnym zabezpieczeniu wszystkie projekty trafiają do lokalnego odpowiednika GitHuba. Ale wcześniej należy je sprawdzić, aby upewnić się, że kod jest zgodny z przepisami szkolnymi korzystającymi z programu Norminette.

„Jeśli kod działa idealnie, ale występuje wyciek pamięci, projekt uznaje się za porażkę. Sprawdzają także składnię. Mamy listę zabronionych funkcji, atrybutów, flag, a ich użycie jest uznawane za oszustwo. Wszystko trzeba robić własnymi rękami i bardzo ostrożnie.”– mówi Siergiej.

Jak odwiedziłam legendarną Szkołę 42: „basen”, koty i internet zamiast nauczycieli. Część 2

Przykłady zadań

Wszystkie zadania wykonane przez studentów sprawdzane są na trzy sposoby: programowo, według listy kontrolnej sporządzonej przez innych studentów i przedstawicieli Glassa. Poniżej znajdują się projekty typu „zrób to sam” wraz z listą kontrolną:

Init (Administracja systemem i siecią) — należy zainstalować system operacyjny Debian na maszynie wirtualnej i skonfigurować go zgodnie z wymaganiami określonymi w zadaniu.

Libft — implementuj standardowe funkcje biblioteczne w języku C, takie jak: strcmp, atoi, strlen, memcpy, strstr, toupper, tolower itp. Żadnych bibliotek stron trzecich, zrób to sam. Sam piszesz nagłówki, sam je implementujesz, sam je tworzysz Makefile, kompilujesz go sam.

Drukuj — konieczne jest pełne wdrożenie funkcji standardowej printf ze wszystkimi argumentami w C. Jest to dość trudne dla początkujących.

Wypełnij to - konieczne było złożenie kwadratu o minimalnej powierzchni z listy tetromino dostarczonej jako dane wejściowe. Na każdym nowym etapie dodawano nowe tetromino. Zadanie komplikuje fakt, że obliczenia trzeba było wykonać w C i w jak najkrótszym czasie.

Biblioteki — zaimplementuj własną wersję polecenia ls ze wszystkimi standardowymi flagami. Możesz i powinieneś korzystać z rozwiązań z poprzednich zadań.

sitowie

Oprócz zadań realizowanych samodzielnie istnieje osobna kategoria zadań realizowanych przez grupę uczniów – szuwary. W przeciwieństwie do niezależnych projektów, pośpiech sprawdzają nie uczniowie za pomocą listy kontrolnej, ale pracownicy szkoły z Bokal.

Pipex — program jako dane wejściowe przyjmuje nazwy plików i dowolne polecenia powłoki, student musi wykazać się umiejętnością pracy z potokami na poziomie systemu i zaimplementowania funkcjonalności identycznej ze standardowym zachowaniem systemu w terminalu.

Minitalk — zaimplementować aplikację klient-serwer w języku C. Serwer musi obsługiwać pracę z wieloma klientami i drukować wiadomości wysyłane przez klienta za pomocą sygnałów systemowych SIGUSR1 i SIGUSR2.

Mrożony — napisz serwer IRC w Golangu, który będzie w stanie pracować z kilkoma klientami jednocześnie, wykorzystując współbieżność i goroutines. Klient musi mieć możliwość zalogowania się przy użyciu loginu i hasła. Serwer IRC musi obsługiwać wiele kanałów.

wniosek

Do Szkoły 42 może zapisać się każdy i nie jest do tego potrzebna żadna specjalna wiedza. Pomimo tego, że program przeznaczony jest dla początkujących, proste zadania szybko zostają zastąpione nietrywialnymi problemami, często o niejasnych sformułowaniach. Od studenta wymagane jest maksymalne zaangażowanie, umiejętność wyszukiwania brakujących informacji w oficjalnej dokumentacji w języku angielskim oraz współpraca z innymi studentami w celu wykonania zadań. Program szkolenia nie ma ścisłej kolejności, dlatego każdy wybiera własną ścieżkę rozwoju. Brak kompleksowych ocen pozwala skoncentrować się na postępach i rozwoju, zamiast porównywać się z innymi.

Źródło: www.habr.com

Dodaj komentarz