CodeGym /Blog Java /Random-PL /Najtrudniejszą częścią nie jest nauka języka, ale okablow...
John Squirrels
Poziom 41
San Francisco

Najtrudniejszą częścią nie jest nauka języka, ale okablowanie mózgu do rozwiązywania problemów – wywiad z Edwardem Izraitelem, mentorem na CodeGym University

Opublikowano w grupie Random-PL
Poznaj Edwarda Izraitela , mentora kursu „ Podstawy języka Java ” na Uniwersytecie CodeGym. To programista z Kanady, który naprawdę interesuje się swoim zawodem. Zanim dołączył do CodeGym, od dawna miał pomysł, aby zostać mentorem w programowaniu. W tym tekście opowiada o swoim doświadczeniu zawodowym i mentoringu, czasie potrzebnym na naukę języków oraz aspektach, na których należy się skupić na początku studiów. Najtrudniejszą częścią nie jest nauka języka, ale okablowanie mózgu do rozwiązywania problemów – wywiad z Edwardem Izraitelem, mentorem na CodeGym University - 1

Dlaczego zdecydowałeś się zostać programistą?

Mieszkam w Kanadzie, ale urodziłem się w Izraelu i mieszkam tam od 12 lat. Większość czasu spędzałem na świeżym powietrzu, grając w piłkę nożną i spotykając się z przyjaciółmi. Kiedy przeprowadziłem się do Kanady, polubiłem także gry wideo, więc dorastałem, grając w niektóre gry wideo, takie jak Counterstrike. W końcu moja ciekawość wzięła górę i pomyślałem, że fajnie byłoby stworzyć jedną z tych gier. Z kodowaniem zapoznałem się w szkole średniej i bardzo podobały mi się te zajęcia: otworzyły mi oczy na inne sposoby rozwiązywania problemów. Poza tym mój brat również polecił mi zwrócić uwagę na programowanie. Później zapisałem się na kurs tworzenia gier wideo. Decydując się więc na studia licencjackie, miałem dwie możliwości – albo inżynierię chemiczną, albo rozwój i ostatecznie wybrałem to drugie. Pierwsze dwa lata były dość łatwe i na trzecim roku zdecydowałem się znaleźć pracę. Dlatego też podszedłem do studiów poważniej i uznałem, że są one o wiele bardziej zabawne, ponieważ musiałem wymyślić różne sposoby podejścia do problemów i technologii, które można zastosować. Rozwój to branża, w której codziennie pojawiają się nowe technologie, dlatego warto wiedzieć, jak się tego uczyć i czerpać z tego przyjemność.

Dla jakich firm pracowałeś i w jakich projektach brałeś udział?

Podczas studiów dostałem możliwość odbycia stażu w firmie Hydro One, która dostarcza energię elektryczną do Ontario. Zasadniczo moim zadaniem było utrzymanie strony internetowej, w której musieli przechowywać wszystkie informacje o wszystkich urządzeniach. Pomagałem innym pracownikom i opracowywałem kilka skryptów. Podczas 16-miesięcznego stażu nauczyłem się pracować w zespole i wykorzystywać zdobytą wiedzę programistyczną w projektach uniwersyteckich i pobocznych. Po zakończeniu stażu i ukończeniu studiów dostałem pracę w Morgan Stanley jako programista Scala i zostałem tam przez sześć miesięcy. Pracowaliśmy z Javą i wiele się nauczyłem o tym, jak pisać lepszy kod. Niektórzy ludzie zajmują się kodowaniem od 20–30 lat i naprawdę pomocne było ustalenie, jak myślą i podchodzą do problemu, a także usłyszenie ich opinii na temat kodu. Teraz pracuję jako programista w firmie Champions Oncology – to firma, która prowadzi badania nad rakiem dla Big Pharma w Ameryce. Programiści utrzymują witrynę firmy, dodają nowe funkcje itp. Obecnie pracujemy z JavaScript, Python, PHP i wszystkimi typowymi elementami tworzenia stron internetowych. Dla mnie to świetna zabawa: jest dużo pracy, a proces uczenia się trwa. Na dzień dzisiejszy znam dobrze pięć języków programowania: Python, JavaScript, PHP, Java i C#. W mojej obecnej pracy wykorzystuję pierwsze trzy; Programowanie w języku Java było częścią mojego stażu w Morgan Stanley, a język C# poznałem podczas pracy nad projektami w szkole. Wiem trochę o C i C++, ale nie tak dobrze jak inni.

Ile czasu zajmuje nauka nowego języka programowania?

Kiedy znasz podstawy programowania i określony język programowania, nauka kolejnego nie zajmuje dużo czasu. Najtrudniejszą częścią nauki języka programowania jest składnia, używane klasy i biblioteki. Ale jeśli włożysz w to głowę, nie powinno to zająć zbyt wiele. Aby nauczyć się całego języka, będziesz potrzebować od dwóch do trzech tygodni. Jeśli chodzi o naukę pierwszego języka, osobiście poleciłbym Pythona. Myślę, że dużo łatwiej się tego nauczyć i pozwala na szybsze wykonywanie różnych czynności samodzielnie. Oczywiście ważne jest również zrozumienie programowania obiektowego, ponieważ przenosi Cię ono do innego świata, w którym wiesz, jak konfigurować kod, pisać kod i łączyć różne klasy. Dowiesz się także, jak łączyć różne podejścia i budować na poziomie podstawowym, więc jest to dość ważne. Zajmuję się głównie JavaScriptem i Pythonem – nie są to języki programowania zorientowane obiektowo – ale polecam nauczyć się jednego z takich języków (np. Java), aby mieć kontakt z tego typu programowaniem.

Czy ktoś może zostać programistą, ucząc się online, zamiast spędzać cztery do pięciu lat na zdobywaniu dyplomu z informatyki?

Zdecydowanie o tym myślałem. Gdybym miał to zrobić jeszcze raz, prawdopodobnie nie kontynuowałbym studiów na uniwersytecie i zamiast tego uczyłbym się sam. Dyplom z pewnością pomaga „postawić stopę w drzwiach”. Jednak branża się rozwija i wiele firm przyjmuje osoby bez dyplomu CS. Dopóki wiesz, jak to zrobić, nie ma większego znaczenia, czy masz wykształcenie – tak uważa wiele firm. Nie ma różnicy, jeśli wiesz, jak rozwiązać problem. Trudniejsza część nieuczenia się i nie zdobywania dyplomu polega na tym, że tak naprawdę nie masz struktury tego, czego się trzymać. Jest mnóstwo informacji na temat programowania i trudno jest wybrać odpowiednią treść. W takim przypadku zapisanie się na kurs online z pewnością będzie pomocne, ponieważ kursy online zazwyczaj zapewniają strukturę i kroki, które należy wykonać, aby dowiedzieć się tego, czego będziesz się uczyć. Zdecydowanie pomaga zrozumieć, jak kodować w określonym języku. Jednak najtrudniejszą częścią nie jest nauka języka, ale okablowanie mózgu do rozwiązywania problemów. Musisz iść krok po kroku i zdać sobie sprawę, co działa, a co nie. Moim zdaniem zajmuje to najwięcej czasu.

W którym momencie zdecydowałeś się zostać mentorem?

Zawsze lubiłem edukować ludzi i uczyć ich określonych sposobów rozwiązywania problemów. W szkole udzielałem korepetycji z matematyki, fizyki i chemii, a w zeszłym roku dostałem ofertę mentoringu na Uniwersytecie CodeGym. Spodobał mi się ten pomysł, ponieważ naprawdę lubię programować i mogę uczyć ludzi, jak programować z mojej perspektywy. Właściwie myślałem o zostaniu nauczycielem w szkole średniej i na uniwersytecie, więc ten pomysł zawsze był obecny w mojej głowie. Opisałbym swój styl nauczania jako przystępny, oparty na przykładach z życia wziętych, a jednocześnie wyjaśniam uczniom nowe koncepcje i pomysły. Nie uczę zbyt długo, ale myślę, że próba nawiązania kontaktu z osobą, którą uczysz i pokazanie jej prawdziwego przykładu określonego problemu jest zdecydowanie pomocna. Zawsze to robię, kiedy uczę.

Co robisz na Uniwersytecie CodeGym?

Tutaj, na Uniwersytecie CodeGym, jestem mentorem dla grup kursu „ Podstawy języka Java ”. Zajęcia online prowadzimy dwa razy w tygodniu i jeśli moi uczniowie będą mieli jakieś pytania poza zajęciami w trakcie zajęć, chętnie na nie odpowiem. Chętnie też dzwoniłabym do różnych uczniów, którzy prosiliby o dodatkową pomoc. Czasami mogę wyjść trochę poza program nauczania, aby nauczyć uczniów czegoś, co powinni wiedzieć poza programem. Skupiam się głównie na uczniach, upewniając się, że rozumieją nowe tematy i odpowiadając na wszelkie pytania, jakie mają poza zajęciami. Kurs „Podstawy języka Java” jest dobry zarówno dla początkujących, jak i osób z pewnym doświadczeniem programistycznym, które chcą nauczyć się języka Java. Jeśli jednak jesteś początkujący, powinieneś zwrócić większą uwagę na poprawę swojego nastawienia do rozwiązywania problemów. Dla niektórych osób na początku wyzwaniem jest wzięcie problemu i podzielenie go na mniejsze części – ale taka jest idea programowania. Zatem oprócz języka Java musisz przejść do rozwiązywania problemów i krytycznego myślenia. W takim razie kurs będzie pomocny w lepszym zrozumieniu programowania w języku Java.

Jakie są najczęstsze błędy popełniane przez uczniów podczas nauki programowania?

Czasami ludzie, którzy zaczynają, tak naprawdę nie wiedzą, jak pisać kod. Wiedzą, jak wykonać tę funkcję lub, powiedzmy, utworzyć tę pętlę i potrafią to zrobić, ale tak naprawdę nie wiedzą, jak zapisać to w możliwie najczystszy sposób. Złożoność czasowa to kolejna kwestia, na którą uczeń powinien zwrócić uwagę podczas postępów w nauce. Dzięki temu Twój kod będzie działać szybciej i czyściej, a Ty nie będziesz mieć żadnego dodatkowego kodu, ponieważ im mniej kodu napiszesz, tym będzie on lepszy.

Czy mógłbyś doradzić użytkownikom CodeGym, jak osiągnąć swoje cele szkoleniowe i zostać programistami?

  1. Ćwicz, ćwicz i ćwicz.
    W ten sposób uczysz się rozumieć kodowanie i język. Przez praktykę rozumiem rozwiązywanie zadań kursu ORAZ tworzenie prawdziwego projektu. To rozwinie Twoją kreatywność i umiejętność rozwiązywania problemów.
  2. Po prostu bądź ciekawy.
    Pomyśl o problemie ze swojego życia lub innych osób, który można rozwiązać za pomocą programowania, a dzięki temu nauczysz się więcej. Ciekawość to najważniejsza cecha, którą chcę, żeby ludzie mieli: jeśli czegoś jesteś ciekawy, idź i rozwiąż to lub znajdź kogoś, z kim możesz o tym porozmawiać.
  3. Przygotuj się na rozwiązywanie problemów w swojej pracy.
    W zeszłym tygodniu pracowałem nad jednym problemem, a w tym tygodniu pracuję nad zupełnie innym problemem dotyczącym naszej infrastruktury, zamiast dodawać nowe funkcje. Dlatego zawsze są inne rzeczy, które możesz zrobić. Programując, można rozwiązać wiele problemów i to jest główny powód, dla którego się tego trzymam i sprawia mi to radość.
Najtrudniejszą częścią nie jest nauka języka, ale okablowanie mózgu do rozwiązywania problemów – wywiad z Edwardem Izraitelem, mentorem na CodeGym University - 2
Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION