Stworzył samouczek do nauki programowania. Tak wygląda nauka Javy z CodeGym

Dodane: 15.02.2022

Mam Startup

Udostępnij:

Alex Yelenevych to współzałożyciel CodeGym, platformy do samodzielnej nauki programowania. Z przedsiębiorcą rozmawiamy o trendach panujących na rynku nauki online oraz o samej platformie CodeGym.

Zanim porozmawiamy o CodeGym, zatrzymajmy się na chwilę przy trendach dotyczących nauczania. Jakie trendy obecnie panują w nauce online?

Jest ich wiele, ale wymienię najistotniejsze:

Mikronauczanie. Ogrom informacji sprawia, że ludzie po prostu w nich toną. A czasami nie warto uczyć się wszystkiego, czasami wystarczy niewielka porcja wiedzy podana w zwięzłej, zrozumiałej formule. Na przykład w formie krótkiego tekstu, tekstu ze zdjęciem, nagrania wideo jak na TikToku, czy nawet memu. Oczywiście w tej metodzie są pewne niedociągnięcia, polegające np. na „wyrywkowym” zdobywaniu wiedzy. Dlatego jeśli branża jest skomplikowana i wymaga głębokiej wiedzy, warto przekazywać informacje w „zjadalnych” kęsach. W przeciwnym razie człowiek po prostu nie będzie mógł później efektywnie pracować, przytłoczony zadaniami, które nie zawsze da się podzielić na takie mniejsze kawałki.

Nauka mobile. Ten punkt łączy się z poprzednim. Często możemy zdobywać niewielkie porcje wiedzy, będąc w biegu, stojąc w kolejce lub idąc do pracy. Wystarczy mieć przy sobie smartfona.

Automatyzacja. Kiedy wchodziliśmy na rynek wschodnioeuropejski, praktycznie nie istniały „zautomatyzowane” samouczki, dziś jest ich całkiem sporo. Pomagają w tym różne technologie, na przykład rozpoznawanie wzorców, sztuczna inteligencja itp.

Grywalizacja. Uczącym się łatwiej zauważyć postępy, gdy posługują się zrozumiałymi miernikami, takimi jak w grach komputerowych – następny poziom, dodatkowe punkty itd. Swoją drogą, dla wielu właśnie te punkty stanowią doskonałą motywację.

Feedback. Będąc przytłoczonym nadmiarem informacji, czasami trudno samodzielnie ocenić poziom opanowania wiedzy. Potrzebujemy opinii z zewnątrz. Idealnie od „żywej osoby”, specjalisty. Nie zawsze jednak jest to możliwe, ale technologia przychodzi z pomocą. Dlatego w CodeGym rozwijamy naszego wirtualnego mentora.

Zdalna i hybrydowa nauka. Ten trend rozwija się od dawna, a pandemia uświadomiła nam wszystkim, że zdalny czy hybrydowy model nauczania jest niezbędnym elementem systemu.

Czy Wasz kurs bazuje na tych trendach?

Budowaliśmy nasz kurs w oparciu o niektóre z nich. Na przykład w oparciu o grywalizację, zautomatyzowany feedback, zdalne nauczanie i po części o mikronauczanie. Nasze lekcje od zawsze miały zwięzłą, krótką formułę. Od niedawna rozwijamy aplikację mobilną i muszę przyznać, że odnieśliśmy na tym polu spory sukces. Teraz eksperymentujemy z mentorami na żywo.

Uporządkujmy te informacje. Jak przebiega kurs oferowany przez CodeGym i czym różni się od innych dostępnych na rynku?

CodeGym to interaktywny, internetowy kurs Javy. Pewnie sobie myślisz: „Boże, kolejny kurs programowania, serio? Są ich już setki!” – i częściowo masz rację. Tak, CodeGym to kolejny kurs programowania, ale jest kilka niuansów:

1. Kurs utrzymany jest w formule gry questowej

Po testach, które na początku przygody z CodeGym określają poziom wiedzy ucznia, system zanurza użytkownika w określonej fabule. Ma to na celu uczynienie procesu nauczania bardziej interesującym, a także ma sprawić, aby użytkownik nie stracił motywacji w trakcie nauki.

W fabule znajdują się wykłady z Javy w formie praktycznych problemów ze świata programowania, które można rozwiązać bezpośrednio w przeglądarce, aplikacji mobilnej lub wtyczce IntelliJ IDEA, a także materiały o branży IT, testy sprawdzające wiedzę teoretyczną, materiały motywacyjne i wiele więcej.

Dodam, że nasi twórcy gier wcześniej byli zaangażowani w prace nad takimi bestsellerami jak STALKER czy Metro 2033.

2. W 80% kurs polega na rozwiązywaniu praktycznych zadań

Nasz kurs zawiera 1400 praktycznych zadań. A wszystkie linijki kodu, które napisze uczestnik kursu, sprawdzane są przez specjalne algorytmy bezpośrednio na stronie, w IntelliJ IDEA lub aplikacji. Użytkownik klika przycisk „sprawdź” i w ciągu 1-2 sekund otrzymuje zweryfikowany wynik. Jeśli poprawnie rozwiąże zadanie, otrzymuje „wewnątrz-kursową” walutę i dalej może poruszać się po kursie. Jeśli nie, system podpowie mu, jak poprawić błąd. Za to właśnie kursanci uwielbiają CodeGym. I myślę, że to jest najważniejsze. W końcu programowanie to umiejętność praktyczna, a nie tylko znajomość teorii i zrozumienie podstawowych zasad.

3. Sekcja „pomoc”, wtyczka do IntelliJ IDEA i aplikacja na Androida

Mamy o wiele więcej funkcji, które sprawiają, że proces uczenia się jest interesujący, zabawny i skuteczny. Na przykład system ocen, nagrody, sekcja „pomoc” z ogromną społecznością, różne tematyczne czaty, mnóstwo przydatnych treści, aplikacja na Androida, wtyczka do IntelliJ IDEA i wiele, wiele innych.
Wszystko to sprawia, że ​​CodeGym jest potężną platformą edukacyjną, która pomaga przyszłym programistom uczyć się Javy lepiej i szybciej.

Czy dobrze zrozumiałem? Popełniam błąd, a Wasz „wirtualny mentor” podpowiada mi, jak go naprawić. Ale jeśli utknąłem i nie wiem, co zrobić, mogę sięgnąć po pomoc w sesji „pomoc”, która przypomina serwis Stack Overflow, zgadza się?

Dokładnie tak!

Ale czy jest to rzeczywiście skuteczny sposób nauki programowania? Przypuszczam, że mając prawdziwego mentora, byłbym w stanie szybciej zdobyć wiedzę?

Jeśli przeanalizujemy różne sposoby nauczania programowania, możemy stworzyć skalę od najefektywniejszej i najdroższej metody do najmniej efektywnej i najtańszej.

Moim zdaniem najskuteczniejszym sposobem nauczania jest praca z osobistym mentorem, który ma duże doświadczenie w programowaniu, świetne umiejętności dydaktyczne i może poświęcić uczniowi dużo czasu (minimum 5-6 godzin tygodniowo). Taki mentor może wyjaśnić teorię, odpowiedzieć na pytania, udzielić rady, wyznaczyć i sprawdzić zadania, przygotować ucznia do rozmowy kwalifikacyjnej itd. Ale wadą tego podejścia jest bardzo wysoka cena (czas deweloperów z ponad 7-letnim doświadczeniem jest bardzo kosztowny). Poza tym trudno jest znaleźć takiego mentora (nie wszyscy programiści lubią i wiedzą, jak uczyć).

Najmniej skuteczna (niezła, ale po prostu mniej skuteczna) metoda polega na oglądaniu kursów wideo – uczeń relaksuje się i ogląda. Nie musi się zbytnio wysilać. Cena jest niska w porównaniu z mentorem. Ale ta metoda ma też wady. Po obejrzeniu filmu najczęściej ma się wrażenie, że coś tam się zrozumiało, że zna się dany temat. Ale w rzeczywistości wiedza, którą otrzymało się podczas takiego kursu, jest powierzchowna, a uczestnik właściwie nie może rozwiązać żadnego poważnego praktycznego problemu, nie potrafi programować.

Wierzymy, że w CodeGym udało nam się wyciągnąć co najlepsze z obu tych metod. W efekcie stworzyliśmy produkt, który rozwiązuje problemy uczniów jeszcze skuteczniej niż prawdziwi mentorzy. Co najważniejsze, dostęp do CodeGym kosztuje tyle co kurs online oparty na materiałach wideo i webinarach.

A dlaczego to ważne? Bo w nadchodzących latach zapotrzebowanie na programistów będzie tylko rosło, a istniejące uczelnie i inne instytucje edukacyjne na całym świecie nie będą w stanie wyprodukować tak ogromnej liczby specjalistów IT. Ponadto nie każdego stać na studia na uniwersytecie lub udział w bootcampie. W niektórych miastach i krajach w ogóle nie ma dostępu do wysokiej jakości uniwersytetów lub edukacja jest bardzo, bardzo droga. Dlatego niedrogi i skuteczny kurs, który pomoże milionom ludzi w opanowaniu zawodu, jest naszym zdaniem dokładnie tym, czego teraz świat potrzebuje.

Powiedzmy, że ukończyłem Wasz kurs – zajęło mi to rok, a teraz chcę dostać pierwszą pracę jako Java Developer. Czy to wystarczy, aby dostać dobrze płatną posadę w branży IT?

Większość wysoce zmotywowanych uczniów kończy kurs CodeGym dwa razy szybciej.

A co do pracy, różne firmy mają różne wymagania – te stale rosną. Przy czym kurs CodeGym obejmuje tak zwaną Core Java, która jest wymagana przez wszystkich, niezależnie od tego, czy chcesz być programistą Java, tworzyć aplikacje na Androida, czy zostać testerem systemów i aplikacji.

Co więcej są firmy na rynku, które są gotowe do przyjęcia na stanowisko Java Trainee, a jeśli masz szczęście, to nawet Java Junior, osobę, która zna tylko Core Java i powiązane technologie. Bardzo często takie firmy wymagają powierzchownej znajomości HTML/CSS i JavaScript, umiejętności pracy w IDE (poświęcamy temu zagadnieniu bardzo dużo czasu i dosłownie od pierwszych lekcji zaczynamy uczyć naszych uczniów IntelliJ IDEA, czyli de facto standard w świecie Java).

Do tego takie firmy bardzo często wymagają od kandydatów znajomości baz danych i SQL, a także znajomości wzorców, klientów Utility Libraries API (częściowo omówionych w kursie). Poznanie tych zagadnień nie jest bardzo trudne, zwłaszcza że ​​początkujący programista nie musi znać ich wszystkich.

Najtrudniejszą rzeczą według studentów jest zdobycie wiedzy na temat frameworków takich jak Spring, SpringBoot i Hibernate. Wcześniej od Javy Juniora nie wymagano wiedzy na ich temat, teraz już tak. Samodzielne studiowanie wspomnianych frameworków jest dość trudne, dlatego przydaje się wsparcie.
Sami rozważaliśmy stworzenie dodatkowego kursu omawiającego Spring, SpringBoot i Hibernate, ale okazało się to bardzo złożonym zadaniem i na razie odłożyliśmy je na bok. Chętnym rozwijać się w tym kierunku proponuję skorzystać z rocznego kursu „Java University”. Polega on na pracy własnej wzbogaconej o wykłady, konsultacje z mentorami i realizację projektów związanych z frameworkami i wspomnianymi wcześniej technologiami. Po jego ukończeniu absolwenci bardzo szybko będą mogli zdobyć pracę.

A jednak! Wracamy do tematu mentoringu na żywo. Wygląda więc na to, że organizujecie kursy, które nie są w pełni online’owe. Jak przebiegają?

Bardzo często uczestnicy zwracali się do nas z prośbą o mentoring, a gdy takie prośby stały się masowe, postanowiliśmy zaryzykować. Oczywiście jest to zupełnie inna forma nauki. Nie możemy masowo szkolić wszystkich, ponieważ moce przerobowe jednego fizycznego mentora nie są takie same jak tego wirtualnego.

Dlatego stworzyliśmy kilka małych grup, otworzyliśmy własne kanały i transmitowaliśmy wykłady wideo z pytaniami i odpowiedziami. I teraz wygląda to w ten sposób, że studenci otrzymują informacje zwrotne od mentorów, a jednocześnie czerpią garściami z online’owego kursu CodeGym. To znaczy piszą dużo kodu, rozwiązując problemy, które potem są automatycznie sprawdzane. Oprócz tego otrzymują zadania specjalne, które wcześniej przeszły przez mentorów.

Jak dotąd testujemy CodeGym University na Ukrainie, w Rosji i wielu innych krajach. A wyniki są zadowalające. W najbliższym czasie (ok. marca) myślimy o uruchomieniu grupy testowej w Polsce, do której można się zgłaszać poprzez stronę CodeGym.

Czy zauważasz jakieś różnice między uczestnikami online’owego kursu a kursu CodeGym University?

W przeciwieństwie od uczestników online’owego kursu uczestnicy CodeGym University mają wysoką motywację do jak najszybszego zdobycia nowego zawodu oraz mają pieniądze na to szkolenie, bo wiadomo – praca z mentorami kosztuje więcej niż zwykły kurs.

Opowiedz krótko o sukcesach swoich uczniów. Co udało się im osiągnąć po ukończeniu CodeGym?

Na naszej stronie mamy specjalną sekcję – „Success Stories” – gdzie publikujemy historie naszych absolwentów. Często nam się zarzuca, że sami wymyślamy te historie, ale tak nie jest. Czasami nasi redaktorzy poprawiają je stylistycznie, ale generalnie to prawdziwe historie prawdziwych ludzi. A to, co ich łączy to to, że absolutnie wszyscy mieli chwile, kiedy nic im nie wychodziło, że chcieli wszystko rzucić. Bez względu na to, jak dobry jest kurs, programowanie nie jest łatwe, a samodzielna nauka wymaga niesamowitego wysiłku. Fajnie, że uczestnicy CodeGym dzielą się tymi trudnościami, bo to motywuje innych do kontynuowania nauki. Ogólnie rzecz biorąc, jest to jedna z najbardziej przydatnych sekcji na naszej stronie, która w rzeczywistości została stworzona nie przez nasz zespół, ale przez użytkowników. Mamy świetną społeczność, co jest szalenie istotne z punktu widzenia nauki online.

Na koniec powiedz jak dalej zamierzasz rozwijać CodeGym? Gdzie będziecie za kilka lat?

Rozwijamy się w kilku obszarach:

1. Uruchomić CodeGym University na całym świecie

Naszym celem numer jeden jest rozwój projektu na naszych głównych rynkach. Aby to zrobić, musimy wykonać wiele testów, przeprowadzić wywiady z użytkownikami, a także znaleźć i przeszkolić mentorów. To plan na pierwszą połowę 2022 roku.

2. Edukacja „mieszana” i online

Stawiamy na współpracę z uniwersytetami, szkołami i bootcampami w Stanach Zjednoczonych, Azji i Europie. Czujemy, że naprawdę moglibyśmy dopasować się do potrzeb edukacyjnych. Na przykład pomóc uczniom przygotować się do egzaminu AP Java lub do certyfikacji Oracle. Aby to zrobić, uruchomiliśmy bezpłatny program edukacyjny, z pomocą którego studenci uczą się w CodeGym całkowicie za darmo – więcej informacji tutaj. Współpracują z nami już między innymi Uniwersytet Karoliny Północnej, Uniwersytet Kalifornijski, Uniwersytet Ekonomiczny w Krakowie i Uniwersytet Śląski w Katowicach. Istnieje również wiele szkół i uczelni w Stanach Zjednoczonych, Europie i Azji, które już są połączone z naszym programem edukacyjnym. Na przykład McDonogh School, The Wheeler School, Berlin College of Further Education for Information Technology and Medical Equipment Technology, Taiwan Adventist International School i inne. Wiele przykładów potwierdza skuteczność naszej platformy w zdawalności egzaminu AP Java. Dalej chcemy rozwijać się w tym kierunku.

3. Rynek azjatycki

Nasz produkt jest dość popularny w Chinach, dlatego aktywnie rozwijamy chińską wersję kursu. Interesuje nas również rynek indyjski, ponieważ istnieje tam duże zainteresowanie Javą i programowaniem. Ale wszystko po kolei.

4. Ekosystem uczenia się i mikronauczanie

Rozwijamy ekosystem wszystkich naszych produktów. Jak już mówiłem, mamy już aplikację na Androida, która pozwala naszym studentom na bieżąco uczyć się języka Java, pisać proste aplikacje, rozmawiać ze współuczestnikami w sekcji „pomoc” czy czytać najnowsze wiadomości ze świata IT. Niedługo uruchomimy również aplikację na iOS.

5. Inne języki programowania

Ponadto pracujemy nad uruchomieniem podobnych kursów poświęconych innym językom programowania i technologiom.

O rozmówcy:

Alex Yelenevych jest współzałożycielem, szefem marketingu i product officerem w CodeGym. Kieruje rozwojem produktu, odpowiadając za strategię marketingową i wzrost. Alex ukończył w 2014 roku Narodowy Uniwersytet Techniczny Ukrainy ze specjalistycznym dyplomem na kierunku Sieci Systemów Komputerowych i Telekomunikacji. Po ukończeniu studiów przez 3 lata pracował w takich firmach jak Starwind Software, BlackBerry Ukraine itp., zarówno na stanowiskach technicznych, jak i marketingowych. Ponadto Alex jest aktywnym członkiem Product Management & Startup Community na Ukrainie, często przemawia na konferencjach poświęconych marketingowi i produktowi, a także regularnie pisze dla czasopism i na blogi związane z Javą.

 

Artykuł powstał we współpracy z CodeGym