ניתוח היסטורי וטכניקות מחקר
העבודה הפיוניטיבית של גרייס הופר במדעי המחשב ובשפת תכנות
Table of Contents
גרייס ברוסטר מארי הופר עומדת כאחת הדמויות הטרנספורמציות ביותר בהיסטוריה של המחשוב.קריירה שלה על התקופה האלקטרומכנית המוקדמת דרך עליית הנדסת תוכנה מודרנית, והעבודה שלה עיצבה ישירות את הדרך שבה מפתחים כותבים קוד היום. Hopper לא רק השתתף באבולוציה של תכנות - היא הניעה אותו.היא הייתה חזון שהשפות תכנות צריכות להיות נגישות לבני אדם, לא, והיא בנתה את הכלים כדי ליצור את התיאוריה של המחשבתית, כדי להמשיך לפתח את השיטה.
החיים המוקדמים והחינוך: העלאת מוח מתמטי
גרייס הופר נולדה ב-9 בדצמבר 1906, בניו יורק מגיל צעיר, היא הפגינה סקרנות נלהבת לגבי איך הדברים עבדו, פירוק חפצים ביתיים כדי להבין את המכניקה שלהם - תכונה שתשרת אותה היטב בהנדסה. הוריה עודדו את המרדף האינטלקטואלי שלה בזמן שבו נשים היו לעתים קרובות הרחק ממתמטיקה ומדע.היא השתתפה בבית הספר הפרטי וורד-Harridge School ובהמשך תוארה במכללת ואסריק, שם היא סיימה תואר במתמטיקה.
Hopper המשיכה בלימודיה באוניברסיטת ייל, וזכתה לתואר שני במתמטיקה בשנת 1930.ב-1934, היא השיגה דוקטורט במתמטיקה מ ייל, והפכה לאחת הנשים הראשונות בארצות הברית כדי להרוויח דוקטורט בדיסציפלינה זו.המחקר שלה, "סוגים חדשים של אירגטציה קריטריה", עסקו בתכונות של משוואות אלגבריות אקדמיות.
מלחמת העולם השנייה והארוורד מארק I: כניסה לעידן של מחשוב
בשנת 1943 הצטרפה הוופר למילואים הצי האמריקני, להוטה לתרום למאמצי המלחמה.היא הוזמן כסגן והוקצה ל- Bureau of Ships Computation Project באוניברסיטת הרווארד. there, היא דיווחה לאורד אייקן ואפתחה לעבוד על ה- Harvard Mark I - מחשב אלקטרו-מכני כמעט 51 מטרים ומשקל בערך 5 טון.
לתכנת את מארק הייתי משימה עובדתית שכללה הצבת מתגים וחיבור כבלים. Hopper וצוותה עבדו עם קלטת נייר אגרוף עם הוראות.חוויה זו של הידיים נתן לה הבנה אינטימית של הבלוט בין ההיגיון של המכונה לבין כוונה אנושית. היא הכירה מוקדם על כך תהליך של בניית מחשב צריך להיות מפשט ומופשט.
תרומה למדע המחשב: המצאת המפרק
לאחר המלחמה, הופר המשיכה את עבודתה בהרווארד, תוך התמקדות במערכות מארק השני ומארק השלישי.ב-1949, היא הצטרפה לתאגיד המחשבים Eckert-Mauchly Computer Corporation (מאוחר יותר חלק מ-Remington ראנד ו- Sperry ראנד), שם עבדה על UNIVAC I – המחשב האלקטרוני הראשון הזמין מסחרית.זה היה כאן שהיא החלה לפתח אחד הכלים הקריטיים ביותר בקיום: המאגד.
בזמנו, מתכנתים כתבו הוראות ישירות בקוד מכונה או השתמשו ב- rudimentary assemblers שתרגם ייצוגים סמליים בשפת מכונה. Hopper חזה מערכת שבה תוכנית יכולה לתרגם הוראות ניתנות להגדרה אנושית באופן אוטומטי לקוד מכונה.היא החלה לבנות קבוצה של תת-התעלים מאוחסנים על הקלטת שניתן לקרוא לה רק על ידי תוכנית, תוך ביטול הצורך לנסח פעולות משותפות.
"הדבר החשוב ביותר שהשגתי, מלבד בניית המבדר, הוא אימון צעירים.
ה-Matder ששינתה את פיתוח התוכנה באופן יסודי.זה אפשר למתכנתים לכתוב קוד בסינתזה גבוהה יותר, מופשטת יותר, אשר תורגמה לשפת המכונה של פלטפורמת היעד.שכבת הפשטות הזו עשתה תוכניות יותר ויותר ניידות ובאופן דרסטי את הזמן והמאמץ הדרושים לפיתוח תוכנה.הפיטורים המודרניים לשפות כמו C++, Java, Rust, ו- Python כל מעקב אחר קו העבודה החלופית של Hoppers.
פיתוח COBOL: ביצוע תכנות גישה לעסקים
בסוף שנות החמישים, מחלקת ההגנה של ארצות הברית הכירה בבעיה: היא ניהלה מערכות מחשב מרובות מיצרנים שונים, כל אחת עם שפת התכנות שלה. תוכניות שנכתבו עבור מערכת אחת לא יכלה לרוץ על בעיה נוספת, מה שהוביל ליעילות מסיבית.המשרד כינס כנס ב-1959 כדי ליצור שפה משותפת מוכוונת עסקים. Hopper מונה כיועץ טכני לוועדה ושימש כנהג מרכזי של המאמץ.
השפה המתקבלת, COBOL (שפה עסקית-אורכית), נועדה להיות לקריאה על ידי אנשי מקצוע שאינם טכניים עסקים.המס שלה השתמש בבניינים דמויי אנגלית כגון FLT:0 או FLT 1 Hopper טען בתוקף לגישה זו, בטענה כי תכנות לא צריך לדרוש רקע מתמטי עמוק וכי אנשים צריכים לתאר את הבעיות שלהם בשפה הטבעית קרוב.
COBOL שוחרר באופן רשמי בשנת 1960 והפך במהרה לשפה הדומיננטית לעיבוד נתונים עסקיים.השפעתו אינה יכולה להיות מוגזמת על ידי שנות ה-70, היא שימשה על ידי רוב העסקים בעולם עבור חשבונאות, תשלום, מלאי ועיבוד עסקאות.גם היום, COBOL מפעילה חלק משמעותי של מערכות פיננסיות בעולם.
אחת החידושים הנרחבים ביותר של Hopper במהלך תהליך פיתוח COBOL הייתה הרעיון של עצמאות מכונה.היא התעקשה כי קוד COBOL צריך להיות מצורף על כל מכונה עם מברק מתאים. הרעיון הזה - לכתוב פעם, לרוץ בכל מקום - מראש ג'אווה על ידי עשורים והניחה את הבסיס לפיתוח תוכנה חוצה פלטפורמות.
Beyond COBOL: The Flow-Matic System
לפני COBOL, Hopper פיתח את שפת FLOW-MATIC (במקור B-0) בשנת 1955. FLOW-MATIC הייתה שפת התכנות הראשונה שהשתמשה בהצהרות דומות לאנגלית, והיא נועדה במיוחד עבור משימות עיבוד נתונים עסקיים.זה הציג את הרעיון של שימוש במילות מפתח כמו FLOWFLT:2, FLT:3 ו-F:4 ישירות בקוד של , FSD-FD, ו-FD.
המונחים: a Moth in the Relay
אחד האנקדוטים הפופולריים ביותר בתולדות מחשוב כולל גרייס הופר והמונח "התדה" בספטמבר 1947, תוך עבודה במחשב אלקטרומכני של הרווארד מארק השני, Hopper והצוות שלה נתקלו בתקלות מתמדת.על פתיחת ארון המסיבי של המחשב, הם מצאו מוטה לכודה בממסר, מה שהפך מעגל קצר.
המונח "bug" שימש בהנדסה במשך עשרות שנים כדי לתאר בעיות מכניות, אבל האירוע הזה מלט "התדה" כמונח סטנדרטי לפתרון בעיות תוכנה ובעיות חומרה.הלוג, כולל ה- Moth, נשמר כעת במוזיאון הלאומי של ההיסטוריה האמריקאית של אמריקה. Hopper עצמה נהנית לספר את הסיפור, תוך כדי הדגשה כי מחשבים היו בלתי אפשריים הדורשים בדיקות קפדניות - בעוד שהיא לא הובילה בכל קבוצה פופולרית.
סטנדרטיזציה וקריאה לשפות תכנות טובות יותר
במהלך שנות ה-60 וה-70, הופר המשיך לתמוך בסטנדרט ובשפות תכנות ברמה גבוהה יותר.היא עבדה על פיתוח תקן COBOL דרך המכון הלאומי האמריקאי לתקנים (ANSI) ושימשה בוועדות מוקדמות לתקינה שפה.היא המשיכה ליצור פורום משותף לעיצוב שפה, אשר בסופו של דבר תרם להקמת כנס על מערכות נתונים (CODASY), אשר המשיך להתפתח ל-COOB.
הופר גם קידמה באופן פעיל את הרעיון שתוכנה צריכה להיות ניתנת לחזרה. עבודתה על ספריות תת-קרקעיות ציפו ישירות את שיטות ההנדסה המודרניות של התוכנה המודרנית כמו אדריכלות מודולרית, עיצוב API וניהול החבילה.היא תרמה מתכנתים צעירים לחשוב במונחים של אבני בניין ופשטות במקום היאבקות עם פרטים ברמת מכונה.הסגנון שלה היה ישיר ומוטיבציה; היא אמרה פעם, "ספינת בנמל בטוחה, אבל זה מה שלא נבנה עבור אוניות".
מורשת והשפעה: פרסים, כבוד, השראה
השפעתה של גרייס הופר על מדעי המחשב משתקפת במובנים הרבים שקיבלה במהלך חייה ובאחריות. ב-1969, הוענקה לה פרס מדעי המחשב השבעתים של השנה על ידי איגוד ניהול עיבוד הנתונים בשנת 1973, היא הפכה לאמריקנית הראשונה והאשה הראשונה שהפכה להיות עמיתה ממורשת של חברת המחשבים הבריטית בשנת 1985, היא קידמה לדרגת אדמירל-פר (בפרק 7) מ-79, שהיה לה בתפקידה של הצי המלכותי הראשון, שהיה שייך ל-79, שהיה אז, שהיה אז היה חבר של הצי המלכותי, שהיה אז, שהיה אז, שהיה אז, שהיה שייך ל-79, שהיה אז, שהיה קצין בחיל הים לשעבר, שהיה שייך ל-79, שהיה אז, שהיה אז היה חבר ב-1985.
ב-1991 העניק הנשיא ג'ורג' בוש את המדליית הלאומית לטכנולוגיה על עבודתה החלוצית בפיתוח שפות תכנות ועל תרומתה לחינוך להנדסה תוכנה. בשנת 2016, היא קיבלה את מדליית החירות הנשיאותית, הכבוד האזרחי הגבוה ביותר בארצות הברית.חגיגת החסד Hopper של נשים במחשוב, עכשיו המפגש הגדול בעולם של נשים טכנולוגיה, הוקם לכבודה וממשיך לעורר השראה לדורות חדשים של מדענים חדשים של מדעי המחשב.
מעבר ל-Accolades הרשמי, המורשת הגדולה ביותר של Hopper היא המסגרת המושגית שנתנה לעולם המחשוב.הדל, שפות עצמאיות מכונה, סינטקס מוכווני עסקי, והרעיון של תכנות כתקשורת ולא בניית מעגל – אלה לא רק הערות היסטוריות.הם הבסיס שעליו כמעט כל פיתוח תוכנה מודרנית בנוי.
(ב) לקריאה נוספת על חייו ועבודתו של גרייס הופר, בקר בהיסטוריית הכוכבים:0 (המרכז) של מוזיאון ההיסטוריה של הטבע על HopperveFLT:1 (למבט עמוק יותר על ההיסטוריה של המאגדים, ה-FLT:2IEEE Annals of the History of ComputingFLT 3: מספק את ההקשר האקדמי.
החזון של הופר לעתיד התכנות
גרייס הופר הייתה ידועה יותר לגבי מסלול המחשוב.היא חזתה כי תכנות יהפוך לברור יותר - כי מתכנתים בסופו של דבר יפרטו את ה-FLT:0 מה ש-FLT:1 הם רצו, לא ל-FLT:2howphFLT 3: כדי להשיגו, חיזוי זה יתגשם היום במגמת עלייה של שפות ספציפיות לתחום, שפות כמו SQL, ו- declarative מסגרות לחידושים בין תכנות תעשייתי ל-הוא יכול גם להגדלתו.
הופר היה מודאג מאוד מהחינוך.לאחר שפרשה מהצי, היא הצטרפה לפקולטה של המכון הטכנולוגי של מסצ'וסטס (MIT) כפרופסור לביקור.היא עבדה באופן נרחב עם חברת המחשבים של IEEE ואגודת המחשוב (ACM) לקידום מדעי המחשב.היא האמינה כי למידה לתכנית לא צריכה להיות מוגבלת למספר עילית וכי השדה נדרש יותר פרספקטיבה מגוונת עבור נשים ב STEM היה מושרש בעבר צוותים יותר.
מסקנה: ההשפעה הסופית של חלוצי מחשוב
גרייס הופר לא רק הייתה שותפה בשחר המחשוב; היא הייתה אחת האדריכלים העיקריים שלה.המצאות שלה – המאגד, FLOW-MATIC, COBOL, והפילוסופיה הרחבה יותר של עצמאות מכונה – לא רק פתרו את הבעיות הטכניות של עידןה.הם הציבו את הבמה עבור כל התעשייה.
כאשר אנו מעצבים תוכנית, אנו מנהלים תהליך שהיא המציאה.כאשר אנו משתמשים בשפה שנבנתה עבור קריאה, אנו עוקבים אחרי עיקרון עיצוב שהיא ביססה.כאשר אנו לתקן נושא תוכנה ומכנים אותו debugging, אנו מתייחסים לסיפור שהיא אלמוות.