Z wyrazami miłości od Stepika: platforma edukacyjna Hyperskill

Chcę z Tobą porozmawiać o tym, dlaczego częściej naprawiamy hydraulikę niż piszemy na ten temat prace dyplomowe, o różnych podejściach do nauczania programowania i o tym, jak jedno z nich staramy się zastosować w naszym nowym produkcie Hyperskill.

Jeśli nie lubisz długich wstępów, przejdź od razu do akapitu o programowaniu. Ale będzie mniej zabawnie.

Z wyrazami miłości od Stepika: platforma edukacyjna Hyperskill

Dygresja liryczna

Wyobraźmy sobie pewną młodą damę Maszę. Dzisiaj Masza miała zamiar w spokoju umyć owoce i obejrzeć film, ale pech: nagle odkryła, że ​​zlew w kuchni jest zatkany. Nie jest jeszcze jasne, co z tym zrobić. Możesz odłożyć tę kwestię na czas nieokreślony, ale teraz jest wolny czas, więc Masza postanawia od razu uporać się z problemem. Zdrowy rozsądek podpowiada dwie możliwości: a) wezwać hydraulika b) zająć się tym samodzielnie. Młoda dama wybiera drugą opcję i zaczyna studiować instrukcje na YouTube. Idąc za radą użytkownika Vasya_the_hydraulika, Masza zagląda pod zlew i widzi wijącą się plastikową rurę złożoną z kilku części. Dziewczyna ostrożnie odkręca jeden element u podstawy zlewu i nic nie znajduje. Dolny fragment rury okazuje się mocno zatkany nieznaną substancją i nawet znaleziony na stole widelec nie jest w stanie sobie z tym poradzić. Eksperci z Internetu podają rozczarowujące prognozy: część będzie trzeba zmienić. Na mapie Masza znajduje najbliższy sklep, zabiera ze sobą nieszczęsny kawałek fajki i kupuje ten sam, tylko nowy. Za radą sprzedawcy Masza chwyta również nowe sitko w celu zapobiegania. Zadanie zostało zakończone: zlew znów działa tak, jak powinien, a tymczasem jego główny bohater nauczył się następujących rzeczy:

  • Możesz samodzielnie odkręcić i dokręcić rury pod zlewem;
  • Najbliższy sklep hydrauliczny znajduje się półtora kilometra od mieszkania Masziny.

Najprawdopodobniej Masza nawet nie zauważyła, ile nowych rzeczy się nauczyła i nauczyła, ponieważ martwiła się o własny komfort w przyszłości, a jednocześnie oglądała film i myła jabłko. Następnym razem, gdy pojawi się podobny problem, dziewczyna rozwiąże go wielokrotnie szybciej. W rzeczywistości Masza nie tylko przywróciła świat do zwykłego stanu; ona studiowała indukcyjnie, czyli w szczególnych przypadkach, i zorientowany na praktykęto znaczy, robiąc pewne rzeczy, zamiast studiować je szczegółowo i z wyprzedzeniem.

Wszystko mogło potoczyć się inaczej. Załóżmy, że Masza siedzi wieczorem na krześle i nagle zdaje sobie sprawę, że jest psychicznie i fizycznie nieprzygotowana na zatkanie zlewu. Szybko zapisuje się do akademii hydraulików, studiując rodzaje zlewów, rur i możliwych połączeń, klasyfikację problemów hydraulicznych i możliwe rozwiązania. Masza nie śpi w nocy, zapamiętując terminy i imiona. Być może pisze nawet pracę doktorską z teoretycznej nauki o rurach, w której omawia uszczelki gumowe. Wreszcie po otrzymaniu certyfikatu Masza z dumą rozgląda się po kuchni z całkowitą pewnością, że teraz nawet najmniejszy problem ze zlewem zostanie rozwiązany na pstryknięcie palca. W tym scenariuszu dziewczyna studiowała dedukcyjnie, przechodząc od ogółu do szczegółu i był bardziej skupiony teoria.

Które podejście jest zatem najlepsze? W przypadku zlewu i zlewu - to pierwsze, a z następujących powodów:

  1. Jeśli ważny jest tylko działający zlew, wystarczy wiedzieć tylko, co dotyczy tego konkretnego obszaru. Kiedy Masza zda sobie sprawę, że brakuje jej wiedzy, na pewno znajdzie sposób, aby dowiedzieć się więcej.
  2. Wiedza encyklopedyczna może nie zostać aktywowana w rzeczywistej sytuacji, ponieważ nie wykształcił się w niej nawyk. Aby poznać sekwencję działań, warto nie czytać o nich, ale je wykonać.

Zostawmy biedną Maszę w spokoju i przejdźmy do procesu uczenia się jako takiego.

Programowanie: uczyć się czy robić?

Przyzwyczailiśmy się myśleć, że aby się rozwijać i stać się ekspertem w nieznanej nam dziedzinie, trzeba najpierw ukończyć studia lub przynajmniej zapisać się na kursy. Regularnie słuchamy, co nam mówią i realizujemy zadania. Kiedy mamy w rękach upragniony dyplom czy certyfikat, od razu się gubimy, bo wciąż nie rozumiemy, po co nam tyle informacji i jak konkretnie je zastosować. Nie stanowi to problemu, jeśli Twoimi następnymi planami są pisanie artykułów naukowych i podróżowanie z nimi na konferencje. W przeciwnym razie warto dążyć do umiejętności, czyli robienia i robienia konkretnych rzeczy od nowa, próbowania i popełniania błędów, aby na długo pamiętać, czego lepiej nie robić.

Jedną z dziedzin, gdzie „twarda ręka” lub „diamentowe oko” idzie w parze z szerokim spojrzeniem, jest programowanie. Jeśli porozmawiasz z doświadczonymi programistami, usłyszysz odważne historie, w których ktoś od najmłodszych lat uczył się matematyki/fizyki/nauki, a potem zmęczył się i przeniósł na backend. Nie zabraknie także programistów bez wyższego wykształcenia! Po pierwsze, u programisty nie liczy się certyfikat czy dyplom, ale ilość i jakość napisanych programów, skryptów i stron internetowych.

„Ale czekaj!”, sprzeciwiasz się, „Brzmi pięknie – weź to i zrób to!” Nie mogę łatwo napisać programu, jeśli wcześniej tego nie programowałem! Ważne jest dla mnie, aby zrozumieć, gdzie pisać, jak w zasadzie rozmawiać w języku programowania z kompilatorem. To nie jest tak, jak znaleźć numer telefonu hydraulika w Google”.

Jest w tym także gorzka prawda. Jeden nieznany aspekt prowadzi do drugiego, który z kolei prowadzi do trzeciego i wkrótce ten proces zamienia się w pokaz magika, który w dalszym ciągu wyciąga zawiązane chusteczki i nie może ich wyciągnąć z cylindra. Proces, szczerze mówiąc, jest nieprzyjemny, przy piątej „chustce” wydaje się już, że głębokość ignorancji jest bliska rowu Mariana. Alternatywą dla tego są te same wykłady o 5 typach zmiennych, 10 typach pętli i 3 potencjalnie przydatnych bibliotekach. Niestety.

Hyperskill: budowaliśmy, budowaliśmy i wreszcie budowaliśmy

Długo zastanawialiśmy się nad tym problemem. Data ostatniego wpisu na naszym blogu wiele mówi o tym, jak długo się nad tym zastanawialiśmy. Po wszystkich debatach i próbach zintegrowania nowego podejścia na Stepiku, skończyliśmy z... inną stroną. Być może słyszeliście już o tym w ramach Akademii JetBrains. Nazwaliśmy to Hyperskill, zbudowaliśmy uczenie się oparte na projektach, połączyliśmy z nim bazę wiedzy Java i pozyskaliśmy wsparcie zespołu EduTools. A teraz więcej szczegółów.

Z wyrazami miłości od Stepika: platforma edukacyjna Hyperskill

Konkretny cel. Oferujemy „menu” projektów tj. programy, które możesz napisać z naszą pomocą. Wśród nich są: kółko i krzyżyk, osobisty asystent, blockchain, wyszukiwarka itp. Projekty składają się z 5-6 etapów; Efektem każdego etapu jest gotowy program. „Więc po co nam inne etapy, skoro na pierwszym wszystko już się udało?” Dziękuję za pytanie. Z każdym krokiem program staje się coraz bardziej funkcjonalny i szybszy. Na początku kod zajmuje 10 linii, ale ostatecznie może nie zmieścić się nawet w 500.

Trochę teorii. Nie da się usiąść i napisać nawet Hello World, nie znając ani słowa o programowaniu. Dlatego na każdym etapie projektu widzisz, jakie podstawy teoretyczne musisz opanować i co najważniejsze, gdzie je zdobyć. Podstawy znajdują się również na Hyperskill w sekcji „Mapa wiedzy”. Jeśli w pierwszym etapie projektu studenci nie będą musieli czytać danych z pliku, wówczas kontynuacja może nie być możliwa. Nauczą się tego sami później, dla ogólnego rozwoju, albo będą potrzebować tego na kolejnym etapie.

Z wyrazami miłości od Stepika: platforma edukacyjna Hyperskill

Mapa wiedzy. Pokazuje, jakie tematy już studiowałeś i jak są one ze sobą powiązane. Otwórz dowolny ładny top. Można go przeglądać, ale zalecamy wykonanie drobnych zadań, aby mieć pewność, że informacje zmieszczą się w Twojej głowie. Najpierw platforma da Ci testy, po czym zleci Ci kilka zadań programistycznych. Jeśli kod się skompiluje i przejdzie testy, porównaj go z rozwiązaniem referencyjnym, czasami pomaga to znaleźć bardziej optymalny sposób jego wdrożenia. Lub upewnij się, że Twoje rozwiązanie jest już doskonałe.

Nic dodatkowego. Czekamy zarówno na „zielonych” użytkowników, jak i doświadczonych programistów. Jeśli już napisałeś programy, nie ma to znaczenia, nie będziemy Cię zmuszać do dodawania 2+2 ani ponownego odwracania linii. Aby od razu przejść na pożądany poziom, podczas rejestracji wskaż to, co już znasz i wybierz trudniejszy projekt. Nie bój się przecenić siebie: jeśli coś się stanie, zawsze możesz wrócić do zapomnianego tematu na mapie wiedzy.

Z wyrazami miłości od Stepika: platforma edukacyjna Hyperskill

Instrumenty. Świetnie jest pisać małe fragmenty kodu w specjalnym oknie na stronie, ale prawdziwe programowanie zaczyna się od pracy w środowisku deweloperskim (Izintegrowane DOZWOJU Eśrodowisko). Doświadczeni programiści wiedzą nie tylko jak pisać kod, ale także jak zaprojektować interfejs graficzny, złożyć różne pliki w projekt, skorzystać z dodatkowych narzędzi programistycznych, a IDE zajmuje się częścią tych procesów. Dlaczego nie nauczyć się tych umiejętności podczas nauki programowania? Tutaj z pomocą przychodzi JetBrains i specjalna wersja IntelliJ IDEA Community Educational z preinstalowaną wtyczką EduTools. W takim IDE możesz brać udział w szkoleniach, sprawdzać rozwiązane problemy i przeglądać wskazówki dotyczące projektu, jeśli o czymś zapomniałeś. Nie martw się, jeśli po raz pierwszy słyszysz słowo „wtyczka” lub „IDE”: powiemy Ci, co to jest i jak zainstalować je na komputerze lub laptopie przy minimalnym wysiłku. Zapoznaj się z teorią, a następnie przejdź do IDE i już tam wykonaj kolejny etap projektu.

Terminy. Nie ma żadnego z nich! Kim jesteśmy, żeby pukać po głowie i mówić, w jakim tempie pisać program? Jeśli pisanie kodu sprawia Ci przyjemność i chcesz go dokończyć, zrób to dzisiaj lub jutro. Rozwijaj się dla własnej przyjemności.

Błędy. Każdy je przyznaje, Ty też na którymś etapie projektu i wtedy ten etap nie przejdzie automatycznych testów. Cóż, musisz sam dojść do tego, co poszło nie tak. Moglibyśmy powiedzieć Ci, gdzie leży błąd, ale czy to nauczy Cię, jak ostrożnie pisać kod? Przeczytaj porady od IDEA lub temat teoretyczny o Bugach, a gdy program w końcu zacznie działać, przypływ dopaminy najprawdopodobniej nie będzie długo oczekiwany.

Wyraźny wynik. Masz już gotowy pierwszy szkic, co dalej? Ciesz się owocami swojej pracy! Graj w kółko i krzyżyk ze znajomymi i jednocześnie chwal się swoim sukcesem. Wrzuć projekt na GitHub, aby pokazać go przyszłemu pracodawcy, sam napisz opis i wskaż tam wiedzę, którą zastosowałeś. 4-5 skomplikowanych projektów i już gotowe skromne portfolio dla początkującego programisty.

Szansa na rozwój. Załóżmy, że patrzysz na Hyperskill i nie widzisz tam żadnego ważnego tematu ani przydatnego projektu. Daj nam o tym znać! Jeśli Twoje zaplecze jest szersze i bogatsze niż mapa wiedzy, napisz do nas w formularzu Przyczynić się. Nasz zespół podzieli się z Tobą naszymi własnymi wskazówkami i trikami, dlatego chętnie pomożemy Ci przekształcić Twoją wiedzę w użyteczną treść, zrozumiałą dla użytkowników w różnym wieku i na różnym poziomie. Być może nawet zapłacimy, ale to nie jest pewne.

Witamy: hi.hyperskill.org Przyjdź, zobacz, spróbuj, zasugeruj, chwal i krytykuj. Uczymy się także uczyć Ciebie.

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

Dodaj komentarz