ללמוד תכנות מאפס בצורה לא אינטנסיבית. אפשרי?
-
שלום,
אני עצמי מתכנת כבר שנים ולמדתי כמה שפות.
אני שואל עבור מישהו שהתיעץ איתי. הוא רוצה ללמוד תכנות ויכול להשקיע שעתיים - שלוש ביום.
כרגע הוא חסר ידע לחלוטין.
הפניתי אותו לקורס פייתון בקמפוס IL וגם שלחתי אותו לאתר שמלמד קורס בשפת C. (כמובן, הסברתי לו את ההבדל העצום ואת היתרון והחיסרון שיש להתחיל בכל אחת מהשפות. אישית מצדד בללמוד את הבסיס קודם).
הבעיה שהוא מתקשה להתקדם ללא מדריך, מכיוון שהוא ממש מתחיל מאפס, ולא יודע לקרוא שגיאות בכלל.
שאלתי היא:
א. האם מישהו יכול לומר האם זה שייך ללמוד ככה לבד, או שחייבים מדריך? אני לא יודע כי לי תמיד היה מורה.
ב. האם מישהו יכול להפנות אותי לקורס מתאים, פרונטלי או מקוון, סינכרוני או א-סינכרוני, שיכול להיות מתאים?
צריך קורס בעברית, שמלמד מאפס, ושיהיה פתוח באתרוג או בנטפרי, ומתאים לבן-תורה.לדעתי המקרה הזה חשוב מאוד, אז תודה לכם על תגובתכם.
תודה רבה! -
@tzvi כתב בללמוד תכנות מאפס בצורה לא אינטנסיבית. אפשרי?:
א. האם מישהו יכול לומר האם זה שייך ללמוד ככה לבד, או שחייבים מדריך? אני לא יודע כי לי תמיד היה מורה.
לדעתי אפשרי בהחלט, לא לכולם, אבל בהחלט אפשרי (מניסיון )
לגבי השגיאות, תלמד אותו להעתיק אותם מהדיבאגר לגוגל הסיכוי שהוא ייתקל בשגיאה שלא מופיעה בסטאק (+גוגל טרנסלייט) קטנה, ואם עדיין לא ברור, הוא תמיד יכול לשאול פה ובדומיו..
-
@dovid כתב בללמוד תכנות מאפס בצורה לא אינטנסיבית. אפשרי?:
הוא לא מעוניין במורה? עניין כלכלי או אישי או למצוא מורה?
הרבה פעמים זה יותר ענין של זמן, נניח שיש לו 2-3 שעות פנויות ביום לא אבל לא באופן קבוע ולא תמיד בשעות קבועות, זה די קשה למצוא מורה ככה, בפרט שמסתמא יש לו גם מגבלה כלכלית שמורה כזה יידרוש...
אגב, יש לי חבר שלמד עם עזרה ברדיט והוא טוען שזה יותר מוצלח מפורומים, פשוט כל בעיה הוא העלה בסאב-רדיט מתאים, ובד"כ תוך כמה דקות היתה לו תשובה או כיוון לפיתרון (הוא דימה את זה לקבוצות ווטסאפ שיש לכל לימודי מקצוע כיום.., אבל אין לו ווטסאפ כמובן אז הוא הלך לרדיט..), כך הוא טען אני אישית לא ממש התעסקתי ברדיט..
-
@אביי כתב בללמוד תכנות מאפס בצורה לא אינטנסיבית. אפשרי?:
@dovid כתב בללמוד תכנות מאפס בצורה לא אינטנסיבית. אפשרי?:
הוא לא מעוניין במורה? עניין כלכלי או אישי או למצוא מורה?
הרבה פעמים זה יותר ענין של זמן, נניח שיש לו 2-3 שעות פנויות ביום לא אבל לא באופן קבוע ולא תמיד בשעות קבועות, זה די קשה למצוא מורה ככה, בפרט שמסתמא יש לו גם מגבלה כלכלית שמורה כזה יידרוש...
אגב, יש לי חבר שלמד עם עזרה ברדיט והוא טוען שזה יותר מוצלח מפורומים, פשוט כל בעיה הוא העלה בסאב-רדיט מתאים, ובד"כ תוך כמה דקות היתה לו תשובה או כיוון לפיתרון (הוא דימה את זה לקבוצות ווטסאפ שיש לכל לימודי מקצוע כיום.., אבל אין לו ווטסאפ כמובן אז הוא הלך לרדיט..), כך הוא טען אני אישית לא ממש התעסקתי ברדיט..
מעניין. תודה.
להיעזר באינטרנט זה אמנם חובה, אבל כאשר אתה לא יודע כמעט כלום, זה לא יעזור לך כל כך, כי אתה צריך להכיר מושגים בסיסיים גם כדי להבין מה עונים לך.
וטקסט השגיאה הרבה פעמים לא אומר במדויק מה הבעיה.
אגב, האם רדיט פתוח באתרוג? בנטפרי פתוחים רק אשכולות מסויימים. -
@tzvi כתב בללמוד תכנות מאפס בצורה לא אינטנסיבית. אפשרי?:
הפניתי אותו לקורס פייתון בקמפוס IL וגם שלחתי אותו לאתר שמלמד קורס בשפת C. (כמובן, הסברתי לו את ההבדל העצום ואת היתרון והחיסרון שיש להתחיל בכל אחת מהשפות. אישית מצדד בללמוד את הבסיס קודם).
לעניות דעתי להתחיל מC\C++ זה חסרון משמעותי למתחילים.
היתרונות להכיר את הבסיס לא שווה את הקושי בעיקר לאלו שלומדים לבד.
נראה לי ש @yossiz התחיל מC ויוכל לומר על זה משהו יותר חכם ממני. -
@tzvi נראה לי (מהתבוננות על אחרים) ש
- מי שלא להוט אחרי תכנות לשמה (ולא לשם פרנסה), בד"כ לא יצליח ללמוד לבד גם עם חומרים/ספרים מתאימים
- מי שהאופי שלו לא מתאים (הוא לא עקשן, הוא לא מדייק בפרטים קטנים, לא יכול להתרכז לבד) לא יצליח ללמוד לבד
גם מי שהאופי שלו כן מתאים צריך להיות מוכן להרבה תסכול בהתחלה, יהיו לא המון המון שגיאות לא מובנות, צריך או לבקש עזרה או להיות ממש עקשן או בעל כשרון גדול
@nigun אני לא טיפוסי, לא יצאתי ללמוד לתכנת אלא להבין מחשבים ואיך הם מתוכנתים. מי שרוצה לתכנת בפועל, אם ישמע לעצתי, לא יתחיל עם C, וגם לא יסיים עם C, זה פשוט לא רלוונטי לרוב המוחלט של מתכנתים. (מי שבאמת רוצה להבין מחשבים, שלא ילמוד שפות עיליות עם זכרון מנוהל, רק C וכדומה, כמה שיותר קרוב לברזלים)
-
@yossiz כתב בללמוד תכנות מאפס בצורה לא אינטנסיבית. אפשרי?:
@nigun אני לא טיפוסי, לא יצאתי ללמוד לתכנת אלא להבין מחשבים ואיך הם מתוכנתים. מי שרוצה לתכנת בפועל, אם ישמע לעצתי, לא יתחיל עם C, וגם לא יסיים עם C, זה פשוט לא רלוונטי לרוב מתכנתים. (מי שבאמת רוצה להבין מחשבים, שלא ילמוד שפות עיליות עם זכרון מנוהל, רק C וכדומה, כמה שיותר קרוב לברזלים)
תודה רבה.
אישית גם חושב שאחרי C כדאי ללמוד איזה אסמבלי.
אילו שפות אתה חושב שכדאי להתחיל ללמוד למי שרוצה לתכנת בפועל?
javascript?
python?
באלו יכולות להיות המון שגיאות שאתה צריך להבין איך המחשב עובד בשביל להבין מה הבעיה.
javascript לדעתי זה ממש סיוט. איך אפשר לעבוד בלי קומפיילר? בשפה שמתעלמת משגיאות? -
@tzvi כתב בללמוד תכנות מאפס בצורה לא אינטנסיבית. אפשרי?:
באלו יכולות להיות המון שגיאות שאתה צריך להבין איך המחשב עובד בשביל להבין מה הבעיה.
כמעט ואין צורך (לא המלצתי ללמוד איך מחשב עובד)
איך אפשר לעבוד בלי קומפיילר? בשפה שמתעלמת משגיאות?
אותה בעיה קיימת בפייתון. טייפסקריפט פותר את זה (במחיר קטן של יותר קושי למתחילים). המנוע של טייפקסריפט יכול לבדוק גם קבצי JS ברמה כלשהו
-
@dovid כתב בללמוד תכנות מאפס בצורה לא אינטנסיבית. אפשרי?:
אנא מכם הפסיקו את הנושא במה להתחיל, זה דיון סרק שיהרוס את הנושא ונידון רבות.
בהכרח שאין תשובה חד משמעית לשאלה הזו.אוקיי.
תודה לכל המשיבים בכל אופן.
אם יש למישהו הצעה לקורס ספציפי שמתאים לבן תורה, אשמח לשמוע. -
@לי-ראש כתב בללמוד תכנות מאפס בצורה לא אינטנסיבית. אפשרי?:
@tzvi אפשר לשאול מהו האתר שאליו הפנית את השואל ללימוד שפת C? ואיפה ללמוד אסמבלי ?
האתר של ד"ר יורם ביברמן ללימוד C או C++ באופן יסודי:
https://sites.google.com/view/yoramb-intro2cs/home
(אגב, יש לו גם אתרים ללימוד מערכות הפעלה ומסדי נתונים. אלו קורסים אקדמיים).בנוגע ללימוד אסמבלי, אני מנוע מלהמליץ על אותו מקום שאני למדתי.
אני לא יודע איפה עוד אפשר ללמוד, אבל בטוח שיש הרבה. אולי ב gool, אבל זה עולה כסף. אני למדתי אסמבלי של x8086. -
@tzvi כתב בללמוד תכנות מאפס בצורה לא אינטנסיבית. אפשרי?:
אם יש למישהו הצעה לקורס ספציפי שמתאים לבן תורה, אשמח לשמוע.
א. לפי מש"כ @yossiz "מי שלא להוט אחרי תכנות לשמה (ולא לשם פרנסה), בד"כ לא יצליח ללמוד לבד גם עם חומרים/ספרים מתאימים", זה לכאורה פחות יתאים לבן תורה, כי כנראה הוא לא יהיה להוט אחר תכנות ולא ירצה שזה יתפוס לו את הראש (ובלי לחשב תופעות לוואי אפשריות).
ב. הוא יודע אנגלית? אני ממליץ על מדריך - קריאה ב W3 (בחינם), עם דוגמאות ברורות, שאלונים וכו', ואפשר לנסות שם את הקוד.
ג. איזו שפה? כמו שכבר כתבו זה מאוד משתנה לפי הטיפוס הלומד.
אני נותן אפשרות קלה - פונקציות excel כהקדמה למושג 'פונקציה' ותכנות, וספר חינמי - מדריך C# ואלגוריתמיים יסודיים, כמובן עם פיתוח דברים תוך כדי, כי זה יתן את המנוע.
אם הוא ממש טיפוס של צד שרת (להוט אחר התכנות, יסודי וכותב קוד מסודר) אולי יעדיף ללמוד במקביל לאלגוריתמים בסיסיים - RUST (כאן, ולהתחלה בעברית - כאן וכאן ועבור ניסוי וטעיה - לבדוק את הקוד כאן, אפשר להתקין את השפה במחשב בשלבים מאוחרים יותר), המהדר הוא מורה מעולה ממש לאוטודידקט, וקשה לטעות. גם בעתיד לכאורה הוא לא יתחרט כי זו שפה מאוד מפנקת... המתכנת ממש מבין את המשקל של כל מה שהוא עושה, כמו כל שפה נמוכה, ומצד שני יש את היכולות של שפה מתקדמת - תכנות בתחביר דומה לפייתון וכו' כך שזה גם נוח.
החסרון העיקרי בRUST שכל המדריכים מניחים שאתה יודע משהו בתכנות קודם, מה שמקשה על הלימוד למתחיל. אז לכאורה זה ממולץ מאוד אבל רק למתחיל ממש אמיץ ועקשן - לחפש כל פעם את המושג התורן ולהעמיק... או למי שכבר עבר את טבילת האש הראשונה. (אפשר למנות עוד יתרונות וחסרונות, אך נראה לי שמתאים כבר לכתוב פוסט נפרד על כל שפה) -
@Y-Excel-Access כתב בללמוד תכנות מאפס בצורה לא אינטנסיבית. אפשרי?:
זה לכאורה פחות יתאים לבן תורה, כי כנראה הוא לא יהיה להוט אחר תכנות ולא ירצה שזה יתפוס לו את הראש
זה נכון. למרות שאני מכיר בני תורה חזקים שגם מתכנתים, אבל גם הם יודו שכמה שהראש תפוס בתכנות זה מוריד מהשקיעות בתורה (אגב, תלמוד תורה זה לא חיוב שקיים רק למי שהוא כבר "בן תורה". כל אחד מחוייב להיות "בן תורה")
לגבי שאר הדברים, אני מכבד את בקשת דוד לא לדון על זה כאן. (ואגב, אם אתה יודע לתכנת בראסט אני קצת מקנא בך... זה מתוכנן אצלי מתישהו אבל עוד לא יצא לפועל)