CodeGym /בלוג Java /Random-HE /החלק הקשה ביותר הוא לא ללמוד שפה, אלא לחבר את המוח שלך לפ...
John Squirrels
רָמָה
San Francisco

החלק הקשה ביותר הוא לא ללמוד שפה, אלא לחבר את המוח שלך לפתרון בעיות - ראיון עם אדוארד יזראיטל, המנטור באוניברסיטת CodeGym

פורסם בקבוצה
הכירו את אדוארד איזרייטל , מנטור קורס " יסודות ג'אווה " באוניברסיטת CodeGym. הוא מפתח מקנדה שמאוד מתעסק במקצוע שלו. לפני שהצטרף ל-CodeGym, היה לו רעיון להיות מנטור בתכנות במשך זמן רב. בטקסט זה הוא מספר על הרקע המקצועי והחונכות שלו, על הזמן הדרוש ללימוד שפות ועל ההיבטים שעליכם להתמקד בהם בתחילת הלימודים. החלק הקשה ביותר הוא לא ללמוד שפה, אלא לחבר את המוח שלך לפתרון בעיות - ראיון עם אדוארד יזראיטל, המנטור באוניברסיטת CodeGym - 1

למה בחרת להיות מפתח?

אני גר בקנדה, אבל נולדתי בישראל ואני גר שם כבר 12 שנים. רוב הזמן ביליתי בחוץ במשחקי כדורגל ובבילוי עם החברים שלי. כשעברתי לקנדה, התאהבתי גם במשחקי וידאו, אז גדלתי על משחקי וידאו מסוימים כמו Counterstrike. בסופו של דבר, הסקרנות שלי השתלטה, וחשבתי שזה יהיה מגניב ליצור אחד מהמשחקים האלה. התוודעתי לקידוד בתיכון, ומאוד נהניתי מהשיעור: זה פתח לי את העיניים לפתור בעיות בצורה שונה. חוץ מזה, אחי גם המליץ ​​לי לשים לב לתכנות. מאוחר יותר נרשמתי לקורס יצירת משחקי וידאו. אז, בזמן שהחלטתי על התואר הראשון שלי, היו לי שתי אפשרויות - או הנדסה כימית או פיתוח, ובסופו של דבר הגעתי לשנייה. השנתיים הראשונות היו די קלות, והחלטתי למצוא עבודה בשנה השלישית שלי. לכן, לקחתי את הלימודים שלי יותר ברצינות ומצאתי הרבה יותר כיף כי הייתי צריך למצוא דרכים שונות לגשת לבעיות ולטכנולוגיות שניתן להשתמש בהן. פיתוח הוא תעשייה שבה טכנולוגיות חדשות מופיעות מדי יום, אז טוב לדעת איך ללמוד וליהנות מזה.

באילו חברות עבדת ובאילו פרויקטים השתתפת?

במהלך לימודיי באוניברסיטה, קיבלתי הזדמנות להתמחות בחברה בשם Hydro One, המספקת חשמל לאנטריו. בעצם, התפקיד שלי היה לתחזק את האתר שהם צריכים לאחסן את כל המידע על כל המכשירים. סייעתי לעובדים אחרים ופיתחתי כמה תסריטים. במהלך 16 חודשי התמחות, למדתי איך לעבוד בצוות וליישם את ידע התכנות שלי בפרויקטים של האוניברסיטה והצד שלי. לאחר שסיימתי את ההתמחות וסיימתי את האוניברסיטה, קיבלתי עבודה במורגן סטנלי כמפתח סקאלה ונשארתי שם שישה חודשים. עבדנו עם Java, ולמדתי הרבה על איך לכתוב קוד טוב יותר. יש אנשים שמקודדים במשך 20-30 שנה, וזה היה ממש מועיל להבין איך הם חושבים וניגשים לבעיה ולשמוע את המשוב שלהם על הקוד שלך. עכשיו אני עובד כמפתח בחברה הזו שנקראת Champions Oncology - זו חברה שעושה מחקר על סרטן עבור Big Pharma באמריקה. מפתחים מתחזקים את אתר האינטרנט של החברה, מוסיפים פיצ'רים חדשים וכו'. כרגע אנחנו עובדים עם JavaScript, Python, PHP וכל הדברים הרגילים בפיתוח אתרים. בשבילי זה כיף: יש הרבה עבודה ותהליך הלמידה נמשך. לגבי היום, אני מכיר היטב חמש שפות תכנות: Python, JavaScript, PHP, Java ו-C#. אני משתמש בשלושת הראשונים בעבודה הנוכחית שלי; פיתוח Java היה חלק מההתמחות שלי במורגן סטנלי, והכרתי את C# תוך כדי עבודה על הפרויקטים שלי בבית הספר. אני יודע קצת על C ו-C++, אבל לא כמו אחרים.

כמה זמן לוקח ללמוד שפת תכנות חדשה?

כאשר אתה יודע את היסודות של תכנות ושפת תכנות מסוימת, לימוד שפת תכנות אחרת לא לוקח הרבה זמן. החלק הקשה ביותר בלימוד שפת תכנות הוא התחביר, השיעורים לשימוש והספריות. אבל אם אתה מכניס את הראש שלך, זה לא צריך לקחת יותר מדי. תצטרך שבועיים עד שלושה כדי ללמוד את כל השפה. מבחינת לימוד השפה הראשונה, אני אישית ממליץ על Python. אני חושב שזה הרבה יותר קל ללמוד, וזה נותן לך את היכולת לעשות דברים בעצמך הרבה יותר מהר. כמובן שחשוב גם להבין תכנות מונחה עצמים כי זה מביא אותך לעולם אחר, שבו אתה יודע להגדיר קוד, לכתוב קוד ולחבר בין מחלקות שונות. אתה גם לומד איך לחבר גישות שונות ולהתבסס מרמת בסיס, אז זה די חשוב. אני מפתח בעיקר ב-JavaScript וב-Python – הן לא שפות תכנות מונחה עצמים – אבל אני ממליץ ללמוד אחת מהסוג הזה (כמו Java) כדי להיחשף לסוג כזה של תכנות.

האם מישהו יכול להפוך למפתח על ידי למידה מקוונת במקום להשקיע ארבע עד חמש שנים על תואר במדעי המחשב?

בהחלט חשבתי על זה. אם אצטרך לעשות את זה שוב, כנראה שלא אמשיך לתואר באוניברסיטה ולמד לבד במקום זאת. תואר בהחלט עוזר לך 'להכניס רגל בדלת'. עם זאת, התעשייה צומחת, וחברות רבות מקבלות אנשים ללא תואר ב-CS. כל עוד אתה יודע איך לעשות את הדברים, זה לא ממש משנה אם יש לך תואר - זה מה שחברות רבות מאמינות. אין הבדל כל עוד אתה יודע איך לפתור את הבעיה. החלק הקשה יותר בלא להמשיך לתואר וללמוד בעצמך הוא שאין לך באמת מבנה של מה לעקוב. יש הרבה מידע על תכנות בחוץ, וקשה לבחור את התוכן הנכון. במקרה זה, הרשמה לקורס המקוון בהחלט תעזור, שכן הקורסים המקוונים בדרך כלל מספקים את המבנה והצעדים שאתה צריך לנקוט כדי ללמוד את מה שאתה עומד ללמוד. זה בהחלט עוזר להבין איך לקודד בשפה מסוימת. עם זאת, החלק הקשה ביותר הוא לא ללמוד שפה אלא לחבר את המוח שלך לפתרון בעיות. אתה חייב ללכת צעד אחר צעד ולהבין מה עובד ומה לא. זה לוקח הכי הרבה זמן לדעתי.

באיזה שלב החלטת להיות מנטור?

תמיד אהבתי לחנך אנשים וללמד אותם דרכים מסוימות לפתור בעיות. עשיתי שיעורי מתמטיקה, פיזיקה וכימיה עוד בבית הספר, ובשנה שעברה קיבלתי הצעה לחונכות באוניברסיטת CodeGym. נהניתי מהרעיון כי אני מאוד אוהב תכנות ויכול ללמד אנשים איך לתכנת מנקודת המבט שלי. למעשה חשבתי להיות מחנך בתיכון ובאוניברסיטה, אז הרעיון הזה תמיד היה נוכח במוחי. הייתי מתאר את סגנון ההוראה שלי כמתחבר, עם דוגמאות מהעולם האמיתי, בעוד אני מסביר לתלמידים מושגים ורעיונות חדשים. לא לימדתי יותר מדי זמן, ובכל זאת, אני חושב שלנסות להתחבר לאדם שאתה מלמד ולהראות לו דוגמה אמיתית לבעיה מסוימת זה בהחלט מועיל. זה מה שאני תמיד עושה כשאני מלמד.

מה אתה עושה באוניברסיטת CodeGym?

כאן באוניברסיטת CodeGym, אני מנחה את הקבוצות של הקורס ' יסודות ג'אווה '. יש לנו שיעורים מקוונים פעמיים בשבוע, ואם לתלמידים שלי יש שאלות כלשהן מחוץ לשיעורים במהלך השיעור, אענה עליהן. הייתי גם קופץ לשיחות עם התלמידים השונים שיבקשו עזרה נוספת. לפעמים אני יכול לצאת קצת מחוץ לתוכנית הלימודים כדי ללמד את התלמידים משהו שהם צריכים לדעת מלבד התוכנית. ההתמקדות העיקרית שלי היא בתלמידים, לוודא שהם מבינים את הנושאים החדשים ולענות על כל השאלות שיש להם מחוץ לכיתה. הקורס 'יסודות ג'אווה' טוב גם למתחילים וגם לאנשים עם רקע תכנותי כלשהו שמנסים ללמוד ג'אווה. עם זאת, אם אתה מתחיל, אתה צריך לשים לב יותר לשיפור הלך הרוח שלך לפתרון בעיות. עבור אנשים מסוימים, זה מאתגר בהתחלה לקחת בעיה ולפרק אותה לחלקים קטנים יותר - אבל זה הרעיון של תכנות. אז מלבד שפת Java, אתה צריך לעבור לפתרון בעיות וחשיבה ביקורתית. אז הקורס יעזור לך להבין תכנות Java בצורה טובה יותר.

מהן הטעויות הנפוצות של תלמידים בזמן לימוד תכנות?

לפעמים כשאנשים מתחילים, הם לא ממש יודעים איך לכתוב קוד. הם יודעים לעשות את הפונקציה הזו או, נגיד, ליצור את הלולאה הזו, והם יכולים לעשות את זה, אבל הם לא באמת יודעים איך לכתוב את זה בצורה הכי נקייה שאפשר. מורכבות הזמן היא נקודה נוספת שתלמיד צריך לשים לב אליה תוך כדי התקדמות בלמידה. זה עוזר להבטיח שהקוד שלך יפעל מהר יותר ונקי יותר, ושאין לך קוד נוסף כי ככל שתכתוב פחות קוד, כך הוא טוב יותר.

האם תוכל לייעץ למשתמשי CodeGym כיצד להשיג את יעדי האימון שלהם ולהיות מפתחים?

  1. תרגול, תרגול ותרגול.
    כך אתה הופך ללמוד להבין את הקידוד ואת השפה. בתרגול, אני מתכוון לפתרון משימות הקורס ויצירת פרויקט אמיתי. זה יפתח את היצירתיות שלך ופתרון בעיות.
  2. רק תהיה סקרן.
    חשבו על בעיה מהחיים שלכם או מאנשים אחרים שניתן לפתור באמצעות תכנות, וזה יוביל אתכם ללמוד יותר. סקרנות היא הדבר העיקרי שאני רוצה שיהיה לאנשים: אם אתה סקרן לגבי משהו, לך ותבין את זה, או לך תמצא מישהו שידבר על זה.
  3. התכונן לפתרון בעיות בעבודה שלך.
    בשבוע שעבר עבדתי על בעיה אחת, והשבוע אני עובד על בעיה אחרת לגמרי הנוגעת לתשתית שלנו במקום ממש להכניס תכונות. אז תמיד יש דברים שונים שהיית עושה. בתכנות אתה יכול לפתור הרבה בעיות, וזו הסיבה העיקרית שבגללה אני נשאר עם זה ונהנה מזה.
החלק הקשה ביותר הוא לא ללמוד שפה, אלא לחבר את המוח שלך לפתרון בעיות - ראיון עם אדוארד יזראיטל, המנטור באוניברסיטת CodeGym - 2
הערות
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION