כיצד הגעתי לתכנות

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

את הפרויקט כתבתי על מערכת MDS של אינטל (Microprocessor Development System) מערכת מאד יקרה, שהייתה בבית הספר הטכני של חיל האוויר, קיבלתי אליה גישה דרך המנחה שלי בפרויקט שהיה איש מילואים של בית הספר הטכני ובעזרת בוגרי המכללה ששירתו כמדריכים בבית הספר הטכני. פעם בשבוע הייתי נוסע לחיפה ליום שלם, בו עבדתי על המערכת, במשך כל השבוע הייתי מתכנן מה לכתוב ו\או כותב על דף את התוכנה, כשהגעתי למערכת הייתי מקליד את התוכנה ואז בודק אותה. דרך מאד איטית ומסורבלת לכתיבת תוכנה.

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

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

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

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

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

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

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

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

מתקן הבדיקה שימש את בית המלאכה וגם את מחלקת בקרת טיסה בבח"א 8 (יחידת אחזקה אווירית שוכנת בתוך בח"א 8).

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

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

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

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

 

לחץ כאן לתגובה
פיתוח מערכת: אורי עידן