[עושים היסטוריה] 286: האיש שקרא לי אידיוט – ריצ'ארד סטולמן ומהפכת הקוד הפתוח והתוכנה החופשית (ש.ח.)
16.9.20
![[עושים היסטוריה] 286: האיש שקרא לי אידיוט – ריצ'ארד סטולמן ומהפכת הקוד הפתוח והתוכנה החופשית (ש.ח.)](https://static.wixstatic.com/media/463e01_403ef238c53244039bb8624a429cd19e~mv2.jpg)
ב-2014, כשיצא פרק זה לאור לראשונה, ריצ'ארד סטולמן היה סופר-סטאר: לא רק שהוא האבטיפוס המיתולוגי של ההאקר הטלוויזיוני, אלא גם אביה מולידה של תנועת התוכנה החופשית (Free Software) שהולידה את תנועת הקוד הפתוח (Open Source), המהפכה החשובה ביותר בעולם התוכנה בעשורים האחרונים. נכון לשבוע שעבר, עם זאת, סטולמן נאלץ להתפטר מתפקידיו בבושת פנים, ולעזוב את MIT, האוניברסיטה שאותה העריץ. מה קרה לסטולמן, וכיצד קשורה הפרשה האחרונה הזו לאופיו המרדני והעיקש?
הרשמה לרשימת תפוצה בדוא"ל | אפליקציית עושים היסטוריה (אנדרואיד) | iTunes
ריצ'רד סטולמן וההיסטוריה של קוד פתוח ותוכנה חופשית
כתב: רן לוי
אודה ואתוודה: ר'יצרד סטולמן היה מאז ומעולם אחד מגיבוריי. ריצ'רד מתיו' סטולמן (Stallman) – המכונה גם RMS, על שם ראשי התיבות של שמו – נחשב לאחד מההאקרים הגדולים בהיסטוריה. תכנות שכתב בשנות השבעים נמצאות עדיין בשימוש שוטף בימינו. כשאנו רואים בסרט האקר שבימים ישן על מיטה מתקפלת ליד המחשב, ובלילות רוכן מעל המקלדת – אנחנו רואים את סטולמן, שדמותו המיתולוגית היוותה השראה לקלישאה הקולנועית הזו. עם זקנו הארוך והלא מטופח ושערו המאפיר שמגיע עד לכתפיו – הוא אפילו נראה כמו אב טיפוס של האקר מיתולוגי.
סטולמן נחשב גם לאבי תנועת הקוד הפתוח, תופעה חברתית-טכנולוגית שהביאה לעולם תכנות רבות שאנו משתמשים בהם בחיי היוםיום: מערכת ההפעלה 'אנדרואיד', אתרי WordPress, דפדפן Firefox ועוד. כשהחלטתי לכתוב פרק על ההיסטוריה של תנועת הקוד הפתוח ניצלתי את ההזדמנות להגשים חלום ישן נושן, והזמנתי את ריצ'ארד סטולמן להתראיין בתוכנית. הראיון הזה – איך לומר זאת בעדינות – לא התנהל כפי שדמיינתי אותו. השיחה עם סטולמן גרמה לי לפקפק בכמה מהנחות היסוד שלי לגבי עולם הטכנולוגיה, והאירה צדדים באישיותו של סטולמן שלא הכרתי קודם לכן.
בעיות התנהגות
ריצ'ארד סטולמן נולד בארה"ב בשנת 1953. כבר בצעירותו הפגין נטיה ברורה למרדנות ולהתנהגות אנטי-ממסדית בעיות ההתנהגות שלו הביאו לכך שהחליף מספר בתי ספר. מבחינה חברתית, סטולמן היה אאוטסיידר ולא מצא את מקומו בין הילדים. הוא מעיד על עצמו שאף פעם לא למד איך להסתדר עם אנשים אחרים כמו שצריך.
מחשבים היו סיפור אחר לגמרי, כמובן. כבר בבית הספר היסודי קרא חוברות הדרכה של מחשבים וכתב תכנות – על דף. אלו היו שנות החמישים והשישים, ימים שבהם גישה למחשב הייתה זכות נדירה. רק כשהיה בתיכון ראה סטולמן מחשב אמתי במו עיניו, אך בשלב זה כבר ידע על מחשבים הרבה יותר מאשר מרבית בני גילו.
סטולמן למד פיזיקה באוניברסיטת הרווארד היוקרתית. הוא אהב את הלימודים, אך נתקל בתופעה שהרגיזה אותו. פרופסורים רבים החזיקו מסופי מחשב במשרדיהם האישיים, ונהגו לנעול את דלתות המשרדים בלילות. לא היו מסופי מחשב רבים בהארוורד, באותם הימים, והסטודנטים שיוועו לכל דקת עבודה מול מחשב שהצליחו לגרד. אך הפרופסורים, בעלי השררה במוסד, לא הסכימו לוותר על ה"צ'ופר" שהעניקו לעצמם וכך ניצבו המחשבים בלילות חסרי מעש כמו אבנים אלקטרוניות יקרות, בזמן שמעבר לדלת היו מי שהיו זקוקים להם בדחיפות.
לא רחוק מהרווארד עומדת MIT, שנחשבת לאחת האוניברסיטאות הטכנולוגיות המובילות בעולם. במהלך לימודיו בהרווארד ביקר סטולמן במעבדה לבינה מלאכותית של MIT – ומצא שם גישה שונה, הפוכה מזו שהכיר בהארוורד. ב-MIT, מסופי המחשב היו משאב משותף שלאיש לא הייתה בעלות עליו. אם אחד הפרופסורים החזיק מסוף מחשב בחדרו והעז לנעול את דלתות המשרד בלילה – הסטודנטים היו שוברים לו את הדלת. מילולית. אחד הסטודנטים במעבדה אפילו הציג בפני סטולמן בגאווה אייל ניגוח מאולתר שהיה עשוי מקורת מתכת מורכבת על מריצה.
מעבדת הבינה המלאכותית הייתה ביתם של סטודנטים צעירים ומלאי תשוקה לטכנולוגיה, שזכו לכינוי 'האקרים' – במובן של מי שאוהבים להעמיק ולחקור את נבכיה הסודיים ביותר של כל מערכת ולשנות אותה. ההאקרים של מעבדת הבינה המלאכותית רצו ליצור דברים מעניינים בכלים שעמדו לרשותם, ולא הייתה להם טיפת סבלנות או סובלנות כלפי מי שניסה לרסן אותם או להציב בדרכם מכשולים. עבור סטולמן, זו הייתה אהבה ממבט ראשון. הוא הצטרף לצוות המעבדה, ויחד עם המתכנתים האחרים פיתח תכנות ורעיונות שנחשבים לאבני דרך בהיסטוריה של הטכנולוגיה המודרנית: למשל, אלגוריתם חשוב בתחום הבינה המלאכותית, כתבן (Text Editor) פופולרי מאד בשם Emacs, מערכת הפעלה חדשנית בשם LISP ועוד.
החיים במעבדת הבינה המלאכותית היו אינטנסיביים. הפרופסורים והסטודנטים ה'רגילים' של האוניברסיטה עבדו ביום, וכשהם עזבו – ההאקרים השתלטו על המעבדה. סטולמן וחבריו עבדו אל תוך השעות הקטנות של הלילה, הזמינו אוכל סיני בשלוש לפנות בוקר ועבדו על התוכנות שלהם עד שנפלו שדודים אל מיטות מתקפלות בפינות החדר. סטולמן נהנה מכל רגע. כשסיים את לימודי התואר הראשון בהארוורד – בהצטיינות יתרה, יש לומר – נרשם ללימודי תואר שני ב-MIT בעיקר כדי להמשיך ולעבוד במעבדה לבינה מלאכותית. במיוחד קסמה לסטולמן רוח האחווה ושיתוף הפעולה ששררו במעבדה. אנשים עבדו יחד למען מטרה משותפת ובשם טובת הכלל.
"האווירה הייתה נינוחה ושיתופית. יצרנו ופיתחנו מערכת הפעלה משלנו […] מבחינתי, זו הייתה העבודה האידיאלית. שילמו לי לעשות את מה שאהבתי לעשות. […] עשיתי את העבודה הזו כחלק מקבוצת של מפתחים שלא היו להם תחומי אחריות ברורים. היו אנשים נוספים במעבדה שעשו אותו הדבר, שיפרו את המערכת – אבל כל אחד היה מוזמן לשפר את המערכת. שמחנו לקבל עזרה מכל אחד, אפילו אם לא היה שייך ל-MIT. שמחנו כשמישהו הגיע והשתמש במערכת שלנו בצורה מושכלת, ואם הוא החל גם לתרום למערכת – זה היה נפלא! שמחנו לחלוק את התכנה שלנו עם אנשים מחוץ ל-MIT. שמחנו כשהם חשבו שהתכנה שימושית עבורם. מניסיוני ב-MIT למדתי איך זה מרגיש להיות חלק מקהילה שמשתפת תכנות, קהילה שבה כולם עובדים על שיפור התכנות לטובת כולם – וראיתי שזו דרך חיים טובה."
הפתיחות בין חברי הצוות היה כה גדולה, עד שמקרים רבים אנשים נהגו לקרוא את האי-מיילים של חבריהם. סטולמן סיפר את האנקדוטה הבאה בריאיון עיתונאי:
"אני זוכר סקנדל מעניין, כשמישהו שלח בקשה לעזרה לגבי תכנה מסוימת שפותחה ב-MIT. הוא שלח אותה לאדם מסוים, וכעבור מספר שעות קיבל תשובה מאדם אחר. הוא היה מבועת. הוא השיב – 'האדם הזה והזה קורא את הדואר האלקטרוני שלך. יכול להיות שהמיילים אינם חסויים במערכת שלכם?' [השבנו לו] 'ודאי, אף קובץ אינו חסוי במערכת שלנו. מה הבעיה? קיבלת את התשובה שרצית מהר יותר. מדוע אינך שמח? ודאי שאנחנו קוראים את המיילים זה של זה, כדי שנוכל לאתר משתמשים כמוך ולסייע להם.' יש אנשים שפשוט לא תופסים כמה טוב להם."
אך האידיליאה הייתה קצרת מועד. מעבדת הבינה המלאכותית של MIT נפלה קרבן להצלחתה שלה.
שורשיה של תנועת התכנה החופשית
חלק ניכר ממשתמשי המחשבים בשנות החמישים והשישים היו אנשי אקדמיה ואלו נהגו לשתף זה את זה בתכנות שכתבו וברעיונות חדשניים שהעלו, ברוח שיתוף הפעולה המדעי המקובל. בשלהי שנות השבעים, כשהחלו המחשבים חודרים עמוק יותר אל המגזר העסקי, הוקמו חברות רבות שעסקו בפיתוח תוכנות קנייניות לצרכים מסחריים: מטבע הדברים, חברות אלה הציעו את התכנות ללקוחותיהן תמורת תשלום, במקום לחלק אותן בחינם. אנשי העסקים ראו בהאקרים של MIT 'סחורה מבוקשת', והציעו להם משכורות עתק תמורת כישוריהם. בתוך שנים ספורות התרוקנה מעבדת הבינה המלאכותית. לא במובן הפיזי, כמובן: עדיין היו שם סטודנטים ופרופסורים – אבל ההאקרים האנרכיסטים ופורצי הגבולות נעלמו כלא היו.
ריצ'ארד סטולמן נשאר במעבדה, אך גילה שהאווירה במקום הלכה והשתנתה. המתכנתים שנותרו במעבדה כבר לא ששו לחלוק זה עם זה ידע ופתרונות יצירתיים לבעיות טכנולוגיות: בעולם המסחרי החדש, ידע היה כוח, ידע היה כסף. תכנות אכותיות שכתבו ההאקרים בעצמם הוחלפו בתוכנות קנייניות ובינוניות, ועל קריאת אי-מייליםשל אנשים אחרים כבר לא היה על מה לדבר… ריצ'ארד המשיך בעבודה היום-יומית שלנו, אבל זה כבר לא היה אותו הדבר. בער בתוכו הרצון למצוא מחדש את הגחלת הלוהטת הזו, לשחזר את האווירה הקסומה שהייתה במעבדה. בתחילת שנות השמונים מצא את הדרך לעשות זאת: המפתח ליצירת אותה אווירה מיוחדת היה 'שיתוף'.
בעולם התכנה, המילה 'שיתוף' בעלת משמעות עמוקה ומורכבת יותר מזו שאנחנו משתמשים בה ביום יום. נניח שאני טבח במסעדה. אני מכין מנה נפלאה של ספגטי בולונז, ממש כמו הספגטי האגדי של אימא. ללקק את האצבעות. אני מגיש את המנה לשולחן והסועדים אוכלים את הספגטי בתיאבון. אפשר לומר ששיתפתי את המנה עם הסועדים – אבל זה לא יהיה נכון במאת האחוזים. אם לא סיפרתי לסועדים איך מכינים את הספגטי – דהיינו, אם לא נתתי להם את המתכון – הם לא יוכלו להכין אותה בעצמם בעתיד. רק אם אשתף אותם במתכון, אתן להם משהו משמעותי יותר מרצועות ארוכות ודקות של פסטה: אתן להם את ה"רעיון" של פסטה בולונז ואת ההבנה האינטימית של האופן שבו מרכיבי המנה השונים מתערבבים זה בזה ליצירת טעמים נפלאים. אם למישהו מהסועדים יש הכישרון והרצון המתאימים, הוא יכול לקחת את המנה שלי, לשנות אותה וליצור מנה חדשה ואולי טעימה עוד יותר.
בעולם התכנה, 'המתכון' מכונה 'קוד המקור': אלו הן ההוראות שמתכנת כותב כדי להסביר למעבד מה עליו לעשות. הוראות אלה הופכות, לאחר תהליך מסוים, לתכנה שהמשתמש הרגיל עובד מולה. למשל, משחק, דפדפן או מערכת הפעלה. אני יכול לתת למישהו עותק של המשחק שלי – כמו לתת לו צלחת של ספגטי בולונז – אבל רק אתן לו את קוד המקור של המשחק יהיה זה שיתוף מלא במלוא מובן המילה. מתכנת שיקבל את קוד המקור שלי יוכל להסיק מתוכו את הרעיונות והטכניקות שבהם השתמשתי, ללמוד ממנו ואולי להפוך אותו למשחק טוב ומוצלח עוד יותר.
אך זו, כמובן, הסיבה שבעטיה חברות מסחריות אינן נוהגות לחשוף את קוד המקור של התכנות שלהן. להפך: קוד המקור נחשב לסוד מסחרי ונשמר בקנאות, שכן איזו חברה רוצה שהמתחרים שלה יפתחו משחק טוב ומוצלח יותר מהמשחק שלה? סטולמן ידע שהמפתח ליצירת קהילת מתכנתים החולקים אותה התשוקה לטכנולוגיה ואת הרצון לתרום לטובת מטרה משותפת הוא ביצירת סביבה של שיתוף פעולה מלא, ללא גבולות או עכבות – דהיינו, שהמתכנתים ישתפו זה עם זה את קוד המקור של התכנות שאותן הם כותבים. במילים אחרות, זהו ההבדל שבין קבוצת סועדים שאוכלים מנות מוכנות זה לצד זה בנימוס קריר, לבין קבוצת שפים שעומדים מסביב לשולחן המטבח, מתווכחים בלהט על התבלין המוצלח ביותר ועל הטמפרטורה הנכונה בתנור, ויחד יוצרים מנה נפלאה שאיש לא יצר קודם. האש והחום נמצאים במטבח – לא בשולחן המסעדה.
"רציתי ליצור מחדש קהילה שבה אנשים יעבדו יחד ויתרמו ברוח שיתוף הפעולה של המדע ליצירת תכנות שכל אחד יוכל להשתמש בהן. […] אז הבנתי שהדרך היחידה שבה תיווצר קהילה כזו, היא אם נשתמש בתכנה חופשית. נהיה חייבים להיות בטוחים שכל התכנות שאנחנו משתמשים בהן באמת חופשיות, ו[רק] אז נוכל ליצור קהילה שכזו. אבל באותה התקופה לא היו מספיק תכנות חופשיות שכאלה. זו הייתה העבודה שלי. הייתי חייב להביא לעולם מערכת הפעלה חופשית – אבל הפעם מערכת הפעלה שמותאמת למחשבים מודרניים, במקום אחת שמתאימה למחשבים שפותחו ב-1968. אז זה מה שעשיתי. הכרזתי שאני מתחיל לפתח את מערכת ההפעלה GNU, וביקשתי מאנשים להצטרף ולסייע."
מערכת הפעלה היא כלי חיוני בתהליך יצירת תכנות חדשות: היא מהווה תשתית שעליה תכנה פועלת – בדומה לאופן שבו כבישים, שלטים ורמזורים מהווים תשתית לתנועת המכוניות. בשנת 1983 פרסם סטולמן הודעה באחת מקבוצות הדיון באינטרנט ובה הכריז על הקמת פרוייקט GNU, שבמרכזו יצירת מערכת הפעלה חדשה ומודרנית. מערכת ההפעלה הנפוצה והפופולארית ביותר באותה התקופה הייתה Unix, ורוב המתכנתים הכירו אותה וידעו איך לעבוד איתה – אך יוניקס הייתה רכושה של חברת AT&T, ומי שרצה להשתמש בה היה צריך לשלם ל-AT&T. סטולמן ביקש ליצור מערכת הפעלה שתהיה דומה מאד ליוניקס, אך לא תהיה 'סגורה' וקניינית כמו יוניקס. זהו מקורן של ראשי התיבות GNU – GNU is Not Unix. אלו ראשי תיבות ריקורסיביים, שבהם ה-G מציינת GNU, ראשי התיבות עצמם.
שנה מאוחר יותר, ב-1984, עזב ריצ'ארד סטולמן את MIT כדי להתרכז בפרוייקט GNU, והקים ארגון בשם Free Software Foundation (FSF). הוא ביקש למסד את רעיון השיתוף שהיה נפוץ בשנות השישים והשבעים, וליצור תנועה חברתית בעלת אידיאולוגיה ברורה, שחבריה תומכים ומסייעים זה לזה. האידיאולוגיה שבבסיס פרוייקט GNU הייתה לעודד אנשים ליצור ולהשתמש בתכנות 'חופשיות': Free Software.
"תוכנית מוגדרת כ'תכנה חופשית' אם היא מעניקה לך, המשתמש, את ארבעת החירויות החיוניות והן:
• חירות 0: החופש להפעיל את התכנה איך שאתה רוצה, לכל מטרה.
• חירות 1: החופש ללמוד את קוד המקור של התכנה ולשנות אותו כך שהתכנה פועלת כפי שאתה רוצה שתפעל.
• חירות 2: החופש ליצור עותקים מושלמים של התכנה ולתת או למכור אותם לאחרים כשאתה מעוניין בכך.
• חירות 3: החופש ליצור עותקים של התכנה לאחר ששינית אותה לצרכיך, ולתת או למכור אותם לאחרים."
סטולמן הדגיש בכל הזדמנות שהמילה Free ב-Free Software היא במשמעות של 'חירות' או 'חופש', ולא 'חינם'.
"למילה 'חופשי' (Free) יש מספר משמעויות. כשאני משתמש בה, אני מתכוון ל'חופש'. כשאני מתכוון ל'חינם', איני אומר Free – אני משתמש במילה Gratis, כיוון שאני רוצה שיהיה ברור לאנשים למה אני מתכוון. כל פעם שאני אומר Free Software, אתה צריך לחשוב על… אני חושב שקוראים לזה [בעברית] 'תוכנה חופשית'."
מדוע הדגיש ריצ'ארד סטולמן את החירות כמאפיין מרכזי וחיוני של תוכנה? זו אינה שאלה טריוויאלית. קראתי עשרות ספרים ומאמרים על הנדסת תכנה: הם מלאים בעצות וברעיונות כיצד לכתוב תוכנה 'טובה' – אך המילה 'חירות' אינה מופיעה באף אחד מהם.
סטולמן מאמין ששיתוף מלא של ידע ורעיונות הוא חיוני לשימור החדשנות בעולם התכנה. תוכנה קניינית, כזו שלמשתמש אין גישה לקוד המקור שלה, יכולה אולי להיות שימושית – אבל היא אינה תורמת דבר לחדשנות, ואולי אפילו בולמת אותה. נניח, לשם דוגמה, שאני מתכנת ושאני רואה בתכנה שבה אני משתמש – למשל, מעבד התמלילים וורד של מיקרוסופט – משהו שאפשר לשפר אותו. זה יכול להיות שיפור משמעותי כמו תמיכה טובה יותר בשפה העברית, או אפילו שיפור מינורי כגון שינוי מיקומו של כפתור כזה או אחר. כיוון שמיקרוסופט אינה מעניקה לי גישה לקוד המקור, אין לי שום דרך לשפר את התכנה. ברור שאני יכול להחליט שאני כותב מחדש את וורד ויוצר גרסה טובה ומשופרת שלה… אבל זה לא מעשי. יידרשו לי שנות מאמץ כדי ליצור את התכנה הגדולה והמורכבת הזו מאפס, בזמן שכל מה שרציתי הוא שינוי מינורי בלבד. במילים אחרות, אם אין למתכנתים גישה לקוד המקור של התכנות, הם מוגבלים ביכולתם ללמוד משגיאותיהם והצלחותיהם של מתכנתים אחרים, ומוגבלים ביכולתם להכניס שיפורים וחידושים בתוכנות.
העדר חירות בתוכנה מזיק גם בדרכים אחרות, פחות ברורות מאליהן. במבט ראשון אולי נדמה שהמחשב האישי, הטאבלט והטלפון החכם מעניקים למשתמש חופש אינסופי – הוא יכול לשלוח איי-מייל, לגלוש באינטרנט, לשחק משחקים…האפשריות נדמות בלתי מוגבלות כמעט. אך גם אם חלק ניכר המשתמשים אינם מודעים לכך, החופש האינסופי הוא למעשה אשליה. . באייפון, למשל, אתה יכול לשחק משחקים, אבל רק כאלה שאפשר להוריד מחנות האפליקציות של אפל. גוגל נותנת לך דואר אלקטרוני בחינם – אבל מנתחת ומנטרת כל מילה שתשלח. מיקרוסופט מרשה לך להשתמש במערכת ההפעלה שרכשת בכספך – אבל רק על מחשב אחד. אם תנסה להתקין את אותה התוכנה על מחשב אחר שיש לך בבית, תגלה שאינך יכול לעשות זאת. תכנות מודרניות דומות לבית כלא שקירותיו שקופים: נדמה לך שאתה חופשי, אבל אם תנסה לצאת מהשער תגלה שמדובר בזכוכית עבה ובלתי חדירה. ריצ'רד סטולמן טוען שלכלא הבלתי נראה שכופות עלינו התכנות הקנייניות יש השפעה שלילית עלינו כבודדים וכחברה.
"כשאדם משתמש זמן רב במחשב כלשהו, הקונפיגורציה של מחשב זה הופכת להיות כמו העיר שבה הוא חי, כמו הבתים והריהוט שסובבים אותו. אם אנחנו לא מסוגלים לשנות את המחשב כדי שיתאים לנו, אז חיינו נמצאים בפועל תחת שליטתו של מישהו אחר. ואדם שמבחין בכך הופך להיות במידה מסוימת מדוכא. [הוא אומר לעצמו] 'אין טעם לנסות ולשנות את הדברים, הם תמיד יהיו גרועים. אין מה להתאמץ. אני רק אעשה את מה שאני חייב לעשות, וכשאסיים אני אלך ואשתדל שלא לחשוב על זה יותר.' הרוח הדכאונית הזו, הדכדוך הזה, הוא תוצאה של חוסר היכולת לשנות דברים לטובה כשמשהו מציק לך."
סטולמן רואה בשליטה על תכנה חלק ממאבק כוחות בין האזרחים הפשוטים לבעלי הכוח והשררה בחברה – מלחמת מעמדות שמזכירה מאוד בטרמינולוגיה שלה אידיאולוגיות חברתיות ותיקות כדוגמת המרקסיזם.
"אם למשתמשים אין חירויות שכאלה, ואין להם שליטה מלאה על התכנות שלהם – זה אומר שהתכנה היא זו ששולטת על המשתמשים, והבעלים הוא זה ששולט בתכנה. התכנה הזו הופכת להיות כלי שנותן לבעלים כוח על המשתמש. זו הסיבה שתכנה קניינית מעודדת חוסר צדק. הכוח הזה הוא פיתוי תמידי עבור המפתחים. הסטנדרטים האתיים של מפתחי תכנות קניינות ירדו אל הרצפה. בימינו מקובל שתכנות קנייניות מרגלות אחרי המשתמשים, מונעות מהם לבצע דברים שהם מעוניינים לעשות, ויש 'דלתות אחוריות' שמאפשרות לתכנה לקבל פקודות ממישהו אחר ולעשות דברים לא טובים למשתמש. יש תכנות קניינות שתורמות לצנזורה."
רעיונותיו של סטולמן לגבי חירות ושיתוף פעולה קסמו לרבים, ותנועת התכנה החופשית הלכה וצברה תאוצה. חבריה ארגנו כנסים, פרסמו מגזינים מקוונים והשתתפו בקבוצות דיון באינטרנט. מתכנתים נוספים התגייסו כדי לסייע לסטולמן בפרוייקט GNU: זו הייתה עזרה מבורכת, שכן למרות שסטולמן כתב לא מעט מהקוד הנדרש בכוחות עצמו, כתיבת מערכת הפעלה היא משימה מורכבת מאוד הדורשת אלפי שעות עבודה. אך על אף העזרה ורוח ההתנדבות, בתחילת שנות התשעים מצא סטולמן את עצמו ניצב מול בעיה לא פשוטה.
בחלוקה גסה, ניתן להפריד מערכת הפעלה לשני חלקים: הראשון הוא הליבה (Kernel) והשני הוא המעטפת. במעטפת נמצאות התכנות שעמן עובד משתמש המחשב – למשל, מחשבון, סייר הקבצים או תכנת הציור. ליבת מערכת ההפעלה היא החלק שמקשר בין תכנות אלה לחומרת המחשב עצמה: המעבד, הזיכרון, הדיסק וכולי. אם נדמה את מערכת ההפעלה להצגת תיאטרון, אזי המעטפת היא הבמה שעליה עומדים השחקנים – והליבה היא המנגנון שמאחורי הקלעים: התיאורן, התפאורן, המאפרת וכל אותם נותני שירו