על הפתוח והסגור, חלק 1 – קורי דוקטורו

החלקים הקודמים:

הקדמה

לפני כמה שנים נחשפתי לעולם הפודקאסטים. פודקאסט הוא מעיין בלוג מוקלט, שניתן להוריד ולשמוע על המחשב או על כל מה שתומך בקבצי סאונד (לרוב mp3 או ogg). היתרון הגדול בשמיעה (על פני קריאה) היא היכולת לעשות את זה ביחד עם דברים אחרים, כמו נהיגה לעבודה, אמבטיה של תינוקות בנות שנה (ב-8 ליוני), עבודה בגינה וכולי. התחלתי בלחפש פודקאסט שיעסוק בג'אווה כדי לחזק את היכולת שלי, אבל תוך כדי חיפוש גיליתי שקיימים עולמות שלמים של פודקאסטים. אלו שאני מקשיב להם עוסקים בטכנולוגיה, לינוקס, מדע פופולארי, קונספירציות ודה-קונסטרוקציה ועוד.

אחד מהפודקסטים האלו הוא TWIT – This Week In Tech, של ליאו לה-פורט. ליאו הוא דמות מוכרת בעולם הטכנולוגי, מריץ כבר שנים תכניות אירוח אינטרנטיות שונות עם אנשים מתחומים שונים, תחת המטריה twit.tv. ולמרות שבאיזכור הראשון של קורי דוקטורו נתקלתי אבל עידו קינן, הוא תפס את תשומת הלב שלי כשהתארח אצל ליאו. בשאלה אם לכנות אותו בעברית "דוקטורו" או "דוקטורוב" בחרתי בראשונה. ה-ב' שם בסוף היא w באנגלית (Doctorow) שכמעט ואינה נשמעת. חוץ מזה, לפי עידו, ככה קורי חושב.

דוקטורו הוא סופר מדע בדיוני ואקטיביסט טכנולוגיה (זה ביטוי שלא אומר כלום אבל יוסבר מייד). המדע הבדיוני שלו בדרך כלל לא כולל חלליות ולייזרים, אלא מדבר על הפוליטיקה של הטכנולוגיה. הוא אחד ממקימי הבלוג הטכנולוגי החשוב BoingBoing, נשיא הסניף האירופאי של ה-EFF (שזה electronic frontier foundation, ארגון זכויות-פרט בחלל האלקטרוני) והכתיבה שלו בדרך כלל משקפת את זה – הסיפורים שלו נוגעים בשיתוף וקוד פתוח, שלטון וטכנולוגיה וכיוצא בזה. הוא מציע את כל הספרים שלו להורדה באתר, כולל גרסאות שונות למכשירים אלקטרוניים (קינדל וחבריו) בחינם תחת רשיון פתוח, ומטיף לפתיחות בתוכנה. בתור דוגמה לפועלו ולדרך שבה הוא תומך אפשר לתת את המאמר הזה, העונה לשם "למה אני לא אקנה אייפד (ואני חושב שגם אתם לא צריכים)".

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

יש רמות שונות של פתיחות בקוד, וכל מי שכותב קוד יכול לבחור לעצמו את הרשיון שבו הוא חפץ. GPL ונגזרותיו, למשל,קובעים שמותר לך להשתמש בתוכנה, לשנות ולהפיץ את הגרסא השונה שלך, ולדרוש עליה תשלום, ובתנאי שתפרסם, גם אתה, לפחות את הקוד שמוגן ב-GPL ואת כל השינויים שעשית בו. רשיונות BSD ו-APACHE נותנים לך זכות שימוש מלא בקוד, לעשות בו ככל שעולה על רוחך מבלי לדרוש ממך דבר מלבד לפרסם, ברשיון שלך, את העובדה שאתה משתמש בקוד הזה (ולתת קרדיט למי שכתב את הקוד).

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

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

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

היכולת שלנו לשתף פעולה ולבנות על כתפי ענקים היא ביסוד המערכת האנושית. לא הגענו למעמדנו הנוכחי כי היינו יותר מהירים מנמרים או יותר חזקים מזאבים, אלא ידענו לשתף פעולה, לחלק תפקידים ולתרום חזרה למעגל השבטי. הצורך שלנו לשמור את היכולות שלנו לעצמנו, להגן על מעשה ידינו ולקבוע חוקים שרירותיים שימנעו יצירה של כל דבר דומה היא יריה ברגל של המין האנושי, לא פחות. זה לא יהרוג אותנו כמו יריה בראש, אבל יגרום לנו להתקדם הרבה יותר לאט ועם הרבה כאב. אותם חוקים שבאו במקור להבטיח את פרנסתו של אדם שעמל על פיתוח מסוים, משמשים היום לשמירת מונופול של חברה מסחרית על נתח שוק מסוים, כדי למקסם את הרווח לרמות אבסורדיות. אם אפל (Apple) הייתה משחררת את העבודה שהיא עשתה בתחום הגרפיקה של ממשקי משתמש, והייתה נותנת את הרשות לפתח אותו הלאה בתנאי שברשיון המשתמש יופיע המשפט "מבוסס על המערכת הגרפית של אפל", האם היינו קרובים יותר או פחות לממשקים שמופיעים בסרט 'דו"ח מיוחד" (Minority Report)?

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

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

על הפתוח והסגור – הקדמה

החלקים הבאים:

חלק 1 – קורי דוקטורו

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

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

שני מושגים (או שני צדדים של אותו מושג) שמוזכרים באופן תדיר בעולם התוכנה והמחשבים הם 'open source' ו-'closed source', שמתורגמים לעברית בדרך כלל, ובצורה לא טובה, כ-'קוד פתוח' ו-'קוד סגור'. אני אומר "בצורה לא טובה" כיון שתרגום יותר טוב (ויותר מדויק) יהיה 'מקור פתוח' ו-'מקור סגור'. זה נשמע פחות טוב וקצת מנותק מהקשר, אבל מתאר יותר טוב את התופעה. למרות זאת, אני אשתמש ב'קוד XXXX' כדי לשמור על המושגים המוכרים.

על קצה המזלג: אם אני כותב תוכנה ואז מפיץ אותה למשתמשים (כל תוכנה – פיירפוקס, פאואר פוינט וכיו"ב), המשתמשים לא מקבלים את הטקסט שאני כתבתי בתור פקודות מחשב. בדרך, מתבצע תהליך בשם קומפילציה (compilation, או 'הדרה' בעברית) שבו יצור בשם 'קומפיילר' לוקח את הפקודות שכתבתי בלשון בני אדם והופך אותן לשפת מכונה, כלומר לרצפים ארוכים של 0 ו-1. קוד המכונה הוא כל מה שהמשתמש צריך כדי להריץ את התוכנה, אבל הערך המוסף (ועוד נדון בערך הזה), מבחינתי כמתכנת, הוא שלרוב המשתמש לא יכול לשחזר ולקרוא את הפקודות שכתבתי. הוא יודע מה התוכנה עושה, אבל לא איך היא עושה, וזה מספק הגנה מפני העתקה של הקוד, עוד שכבה פיזית של איטום.  זו הגישה הנקראת 'קוד סגור'. חשוב להדגיש שמבחינה חוקית, אני מוגן גם אם אני מצרף את המקור בתוספת רשיון שאומר שאסור להעתיק, אבל זה כמו לשים אגרטל עתיק (משושלת מינג) מול תינוק בן חצי שנה ולהחתים אותו על חוזה שאומר "אסור לגעת!".  אם התכוונתי לדאוג שהאגרטל לא ישבר, יהיה קצת קשה לתקן את הנזק אם התינוק יחליט להפר את החוזה.

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

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

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