האם אדם שאינו טכנולוגי באמת יכול ללמוד לבנות תוכנה?

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

הסיפור שלי

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

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

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

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

אז ניסיתי ללמוד לתכנת. מספר פעמים.

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

עשיתי קורסים על Ruby on Rails ועל כל מיני מסגרות אחרות, אבל תמיד נתקעתי. ביליתי שעות, לפעמים ימים, בחיפוש אחר Stack Overflow. הדבקתי פקודות לטרמינל שלי בלי להבין מה הן עושות.

בסופו של דבר, ויתרתי.

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

במשך כעשור רציתי לבנות תוכנה ולא הצלחתי.

גילוי קוד ללא קוד

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

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

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

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

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

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

ללמוד את Bubble היה הרבה יותר קל מאשר ללמוד לקודד. ניסיתי ללמוד לקודד במשך עשור, ואז ניסיתי את Bubble ובניתי אפליקציית SaaS מתפקדת במלואה בחודש הראשון שלי.

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

ואז הגיע קידוד וייב

עם קידוד וייב, כל החוויה השתנתה שוב. אתם כבר לא צריכים לעשות את החלק ההגיוני בעצמכם.

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

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

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

אני חושב שאנחנו עדיין לא יודעים את התשובות במלואן. אבל אני גם חושב שהשאלה קצת שגויה.

רוב האנשים ששואלים "האם אני יכול לבנות תוכנה?" לא מנסים להפוך למהנדסי תוכנה. הם מנסים להגשים רעיון, לפתור בעיה בעסק שלהם, או להפסיק לשלם 5,000 פאונד לחודש למפתח כדי לבצע שינויים שהם היו רוצים שיוכלו לבצע בעצמם.

ועבור אותם אנשים, המחסום מעולם לא היה נמוך יותר.

שלושה סוגי אנשים שבונים תוכנה כרגע

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

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

דברים כמו ניהול שרתים, פריסה ב-GitHub, דחיפה לסביבת ייצור ויצירת סביבות בדיקה – הכל נעשה עבורנו. עכשיו אנחנו צריכים ללמוד את זה מאפס.

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

אבל היכולת לשאול את הבינה המלאכותית היא מתנה שלא יסולא בפז שלא הייתה קיימת לפני כמה שנים. כאשר Stack Overflow היה המשאב האמיתי היחיד, למידה הייתה כואבת להפליא.

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

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

מתחילים גמורים – אלו שדילגו לחלוטין על לימודי "ללא קוד" ועוברים ישר ל"ויבי קידוד". זהו חלק גדול מהאנשים. השאלה היא, האם באמת אפשר לעבור מכלום לבניית תוכנה?

אני באמת חושב שהתשובה היא כן .

אבל רק אם תסמנו כמה תיבות…

ארבעת הדברים שאתם באמת צריכים

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

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

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

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

☑️ אתם צריכים לדאוג לבניית תוכנה טובה. די קל לבנות משהו רע ולהיות חסר אחריות עם נתוני משתמשים. קשה יותר לבנות תוכנה טובה, מאובטחת וניתנת להרחבה, אבל לא הרבה יותר קשה.

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

אם אתם מסמנים את התנאים האלה, התחילו לבנות עכשיו

אם הייתי מתחיל מאפס היום, התהליך שהייתי עושה הוא:

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

לוח המחוונים האישי הוא המקום שבו אתם באמת מתחילים ללמוד. אתם יכולים לבנות עליו כל דבר:

  • סיכום יומי בנושאים שמעניינים אותך
  • תכונות להמחשת חלקים שונים בחייך או בעסק שלך
  • פונקציונליות לוח שנה מותאמת אישית
  • רשימת המטלות שלך
  • סקראפרים שמושכים מידע ממקורות שונים
  • חיבורים ל-APIs של צד שלישי, החלפת אוטומציות שבנית בכלים כמו Zapier

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

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

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