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