עוד פרויקט שלא אגיע אליו: עוזר חכם ובית חכם

האם אתם רוצים מערכת כזו? התשובה מורכבת.

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

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

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

  1. יש מיקרופון והמחשב שמאזין לו, מנסה לבטל רעשי רקע ולהתמקד במה שעלול להיות דיבור.
  2. אח"כ תוכנה אחרת שבודקת אם זה אכן דיבור ומתרגמת אותו לטקסט. זה אולי הרכיב הכי מתוחכם במערכת ונחמד שיש אופציה או שתיים ברישיון חופשי (אבל כרגע אני די בטוח שזה עובד רק באנגלית, ולא יעבוד בעברית בקרוב. מקווה שלא תהיה בעיה עם זיהוי מבטא לא ילידי :)
  3. אחרי שיש לנו טקסט אפשר לפענח ממנו את הפקודה גם אם לא נאמרה בצורה תקנית אחת. כלומר "התראה עוד שעה" או "בבקשה כוון לי תזכורת בעוד שעה מעכשיו, תודה" הם שני משפטים שונים למדי אבל המחשב צריך לזהות את שניהם. הרכיב הזה והרכיב הקודם הם הרכיבים שקורים בענן של גוגל או אמאזון או מיקרוסופט שאותם אני רוצה להביא אל תוך הבית.
  4. בשלב הזה אפשר להפעיל מיני תוכנות וסקריפטים (מייקרופט למשל קוראים לזה "כשרונות" והקהילה פיתחה כבר כ-140 כאלו), כאן מגיעה ההתממשקות עם MQTT ורכיבי חומרת Sonoff השונים, או גישה לרשת כדי לדבר עם חשבון הגוגל שלכן כדי לבדוק איש קשר או לדחוף ארוע ליומן, וכיוצא באלו.
  5. לבסוף לאשר או להחזיר משוב למשתמש בצורת רכיב אחר שהופך תשובת טקסט לדיבור, מסנטזים כאלו יש הרבה בשוק – היה לי אפילו על אפפל ][ עם 64K זכרון, לצערי האיכות התפתחה מעט מאוד מאז בתוכנה פתוחה. מקווה שישתפר בעתיד.

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

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

  • יש ארגז כלים נאה (וחופשי! ופתוח!) ללינוקס, זה אומר שזה יכול לרוץ על התחנה הביתית שלי (שהיא גם שרת המדיה) או על מכשיר שיבנה סביב Raspberry Pi וישב עם מיקרופונים בסלון, מטבח, חדר שינה וכיוצא באלו. בצד המנשק האנושי יש את מייקרופט וכלים אחרים, בצד השליטה על Sonoff ורכיבים אחרים של בית חכם יש את Home Assistant, שיודע לעבוד גם עם גוגל הום, אלקסה ודומיהם.
  • עוד לא ברור לי אם הרספי מספיק חזק לנתח דיבור או שהוא צריך להיות מגובה במחשב חזק יותר או שרות מקוון. המטרה שלי בפרויקט היא כמובן לא להוציא פיפס מהבית לשרתים של אחרים, אז אני מתמקד ביכולות שנשארות על הרספי והמחשב הביתי.
  • אני אשמח אם המערכת תדע לזהות קולות שונים של בני הבית ולתת לכל אחד את התזכורות והתשובות שרלוונטיות אליו.
  • מלבד שליפת תשובות מהרשת ולענות על שעה ומזג אוויר, רצוי לבדוק התממשקות לבית חכם. השם הפופולארי בתחום הוא Sonoff, ששולט על כיבוי והדלקה של קווי חשמל 220V, 10A או 16A. יש מכשירים עם דימר, חיישן חום ולחות או הרחבות אחרות. יש התקנים ששולחים IR כדי לשלוט על טלוויזיה או מזגן וכולי.
  • למה Sonoff? הם זולים, זמינים בעלי אקספרס ובכל מקום, ויש להם כמה וכמה קושחות פתוחות ברשת. כשקונים אותם מקבלים אותם עם קושחה שמכוונת לדבר עם שרתי החברה, שזה כמובן BIG nono בסיסי בשבילי, אבל עם קצת מאמץ צורבים קושחה חלופית ותופסים פיקוד.
  • יש פרויקט הפצת עדכוני קושחה לכל הבית החכם בעזרת כלי בשם Resin, אם אתם עוסקים באוטומציה לעננים, אומרים לי שזו המקבילה לPuppet או Chef לעולם ה־IOT.
  • כדי לדבר עם כל ההתקנים האלו, קיים תקן MQTT, שזה מעין שרת תורים מפושט. הפיקוד משאיר להתקן הודעה בתיבת הדואר וההתקן בא לאסוף. שרת MQTT שכזה יכול לרוץ מקומית (למשל בשרת Home-Assistant על הרספי) או ברשת למי שרוצה לעשות את כל זה בממשק על Google Home בלי להתקין סייען פתוח.

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

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

מידע פתוח וחופשי לעתיד טוב יותר

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

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

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

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

קורי דוקטורוב סופד לשוורץ.

לארי לסיג מפנה אצבע אל התובעים.

דקלן מקולה מרכז קצת חומר רקע וכתבות כאן.

פוסט לזכרו בבלוג של זוגתו.

תמלול של הרצאה מפורסמת שלו, מ2007.

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

Boom, and he's just gone. seamlessly.

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

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

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

כתב אתמול גיא ויינר ב+גוג:

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

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

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

קצת טכנו-אופטימיזם לאיזון

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

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

קורי דוקטורוב על טכנולוגיה ואנרכיה:

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

לבסוף, אני מצרף פה (ברשיון CC) תרגום שלי למאמר "טכנו-אופטימיזם" מאת קורי דוקטורוב:

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

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

כדי להבין טכנו-אופטימיזם, זה מועיל להסתכל על תנועת התוכנה החופשית, שהאידאולוגיה והאקטיביזם שלה הולידו את מערכת ההפעלה GNU/Linux, מערכת ההפעלה הניידת אנדרואיד, דפדפני פיירפוקס וכרום, יוניקס BSD שחי מתחת למערכת ההפעלה של ה-MacOS X, שרת הווב אפאצ'י ועוד הרבה שרותי ווב, דואל וטכנולוגיות שונות אחרות. תוכנה חופשית היא טכנולוגיה שנועדה להיות מובנת, ניתנת לשינוי, שיפור והפצה ע"י משתמשיה. יש המון מוטיבציות לתרומה לתוכנה חופשית/פתוחה, אבל שורשי התנועה הם בדואליות הזו של פסימיזם/אופטימיזם: פסימיות די הצורך כדי להאמין שטכנולוגיות סגורות וקנייניות יזכו לאישור הקהל הרחב שלא מעריך נכונה את הסכנות במורד הדרך (נעילה לספק, איבוד פרטיות, איבוד מידע כשטכנולוגיות קנייניות מתייתמות); אופטימיות די הצורך כדי להאמין שגרעין של תוכניתנים ומשתמשים יכולים ליצור ביחד אלטרנטיבות מלוטשות ולזכות בתמיכה עבורן ע"י שידגימו את עליונותם ויעזרו לאנשים להבין את הסיכונים שבמערכות סגורות.

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

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

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

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

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

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

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

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

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

The diplomatic incident around RMS' visit to Israel

A week ago a story broke – RMS would not be talking at Israeli universities while in Israel, since the sponsors of his visit in the West Bank (soon to be a democratic Palestine inshallah) are adamant about this boycott. The odd thing is that the University of Haifa is the Alma Mater of many Arabs, some told me that maybe most of the students currently enrolled are non-Jews. It's also a pretty petty demand that he is allowed to speak in Israel but not in a university building. It made absolutely no sense to me.

Some people offered to share the costs of take on the sponsorship altogether, but as this idea didn't come from RMS, there were many on HaMakor's mailing list who preferred to interpret his original reply as a hint of support of the BDS movement, who asks people not only to boycott Israel financially, but also academically.

I have written RMS to get his unfiltered remarks on the uproar:

"What I said in my message is the story. There is nothing else except some details. Palestinians invited me and offered to buy my tickets. When they saw I had offered to give talks at Israeli universities, they said they would not support it."

When you refer to your Palestinian hosts who dictated this ban on talks in Israel, is this an independent group, or part of the PA?

"I didn't ask. They asked me to come and give some talks about free software at universities in the West Bank, and I was glad to accept. I also looked forward to the opportunity to see friends and relatives in Israel and to give talks there. So I set up several tasks, not realising that universities as venues would create a conflict.

The Palestinians did not convince me it is wrong to give a speech about freedom issues in a hall of an Israeli university, but I see no reason to go to the wire to do talks in Israel in universities. I have one planned talk in Israel which is not at a university, and we could set up more."

Israelis produce many (if not the most) patches for right-to-left support in FS projects, and have been known to happily collaborate with developers in Iran and Arab countries. Could you and would you use this to build a narrative for the aid of para-political collaborations?

"I would love to do that. I tried to encourage such cooperation in my previous visit too, but I don't think it got very far."

Could you help the readers understand what led to this decision? Is is that your Palestinian hosts "were there first" or are the subjects of your talks there more important for your agendas? In a other words, what caused the sudden attack of pragmatism in the man who quipped that ideology is the best tool to achieve change?

"That contrast is only apparent. The free software movement is a campaign for freedom and community. That's a goal based on principle.

I wouldn't normally call that "ideology", since that word carries negative spin, and tends to imply a broad stand that applies to all aspects of life rather than a specific stand on a specific issue.

I've always been pragmatic about achieving this goal. See http://www.gnu.org/philosophy/pragmatic.html, which I wrote at least 20 years ago. Part of being pragmatic about achieving a goal of social change is talking about the goal so we don't forget it.

I personally had hoped that your talks in Israel would have some political edge to them. I have heard too many times people calling your views Anti-Israeli where I correct them each time that you are, like most of us on the Israeli left, fighting against the oppression and denial of liberty.The Palestinians are oppressed both by the Hammas and by Israel, and the PA is far from being clean of corruption.

"That is true, but of these oppressions the occupation is clearly the worst. The PA is corrupt, but it held an honest election which handed power to a different party, and that's the first milestone of a democracy. I would hate to live in a country ruled by Hamas, but the Republican Party is pushing hard to rival it and the Democratic Party follows behind on the same route. If we let Palestinian democracy develop, I think it would adopt democratic and liberal ideals from the Egyptians."

I must admit though, that my defence of your choices has been severely discredited once this item was published:

I don't advocate a blanket boycott of Israeli universities. (If I did, I would not have offered in the first place to give speeches in them.) But I am not going to campaign against it either.

I myself haven't picked sides on the economic boycott actions of BDS, I can see why it's actually legitimate and maybe even effective, but an academic boycott goes against my beliefs, and frankly I was quite disappointed you took such an ambiguous stand on the matter.

"I am surprised it had that effect, since I said I do not advocate the boycott. But what can you do?"

Well, be unambiguous. Take a clear stand against academic boycotts and refusal to communicate between thinking people. This boycott on the University of Haifa is especially odd since a lot of the students there, possibly even the majority, are Arabs.

"That is not what my views are. As I've said, I do not advocate the boycott but I am not going to campaign against it either. I decided to follow the policy of the organisers of the trip.

I hope to give a talk at another venue in Haifa and speak to the same people."

I can not really see a perfect way out of this at the moment. If your first response would have been to go against the boycott and ask the Israelis to try and fund the trip instead (and still visit the west bank), it would have been the perfect course of action – win-win for all but the perpetrators of the boycott. But now I'm not sure if it is not too late. Since the idea for asking for unconditional funding did not come from you on that first letter to Mr. Aronovich, people interpreted it for the worse and decided you have chosen to take a side in favour of the boycott, which was in turn seen as breaking away from your principles, etc.

"Quite the contrary. I am doing my best to act on my various principles in a complex situation. I think that they may have taken some of my real principles and reinterpreted them in a way that doesn't come from me."

After this email exchange, RMS' latest letter to Eddie had reached the paper, the original Email read thus:

I don't advocate a blanket boycott of Israeli universities, but I am not going to campaign against it either. I see where they are coming from: Israel's occupation policies are horrible. Non-violent protests are crushed with persistent brutality. (See http://www.jpost.com/Opinion/Columnists/Article.aspx?id=221897.)

Palestinians who are against violence are looking desperately for some method of non-violent resistance. I can't blame them for it even if I don't agree entirely with the details. Thus, I decided to follow their policies in the trip they organised.

I wish I had discussed the issue in advance and avoided having to cancel a plan I had agreed to.

I will give at least one talk in Israel, at a non-university venue, and I am hoping more can be arranged.

To me, it is clear that RMS has indeed attempted to make the best of a very problematic situation. He decided to circumvent the boycott without supporting it nor strongly opposing it, because coming here and talking about what's important to him is more important than taking sides on the academic boycott issue. I must confess I am not entirely happy with that myself, and I have advocated the community not to cancel the bookings, but use them instead to invite Palestinians and talk about keeping academic communications free from boycotts and gags, or there really will be no civilised way of keeping open channels of hope for peace and collaboration. I hope this does happen after all. The idea of Freedom of expression and information, including that of knowledge exchange in the shape of free content and software, are in my eyes all facets of the same set of tools and goals.

If people are still disappointed with RMS I can't say I don't understand them. Just remember that the ideas are more important than this persona or the other. The man is not the issue, keep the ideals alive though, if you agree with them.

IDN ושרת הלינוקס שלכם

לא אוהב IDN, IDN זה מעצבן. ה-URL מכוער והקונפיגורציה גם כן.

התבקשתי לצרף לאתר אצלי על השרת דומיין בעברית, האתר היום הוא yaro.co.il ומהיום הוא גם צלמת.co.il. אם הכתובת הזו מכוערת בעיניכם, תתחילו לחשוב על איך לכתוב http://צלמת.co.il או http://www.צלמת.co.il ושזה יראה קריא, ובכל מקרה הדפדפן מיד יתרגם את זה ויגלוש אל http://xn--hebews.co.il/. באופן מעצבן, זה יראה לרוב יותר קריא כשזה בתוך פסקה משמאל לימין. אני אישית לא יודע למה שמישהו ירצה את זה. לקרוא עוד על הפוליטיקה ועניינים אחרים מאחורי הרישומים האלו, אני ממליץ על הפוסט הזה של שחר.

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

מחרוזת אותיות בעברית איננה נכתבת ב-ASCII ולכן אין לה מקום בתשתיות הישנות. לרוב אנחנו כותבים עברית בקבצי טקסט ע"י קידוד ביוניקוד, ISO8859-8i או אחיו CP1255 aka Windows-1255. באיזה מאילו מקודדים שמות IDN? אף אחד מהם. אז איך יודעים לפי איזה קידוד לכתוב את שם הדומיין בקבצים של BIND ו־Apache? לא ממש מצאתי הסבר מניח את הדעת. היה ברור לי שאצטרך להשתמש בשם בסגנון xn--something אבל לא היה לי מושג מאיפה להשיג אותו, אז זה השלב הראשון. הנה מה שמצאתי:

  1. הקלידו פקודת whois עם שם הדומיין בעברית, עם קצת מזל יש לכם את הכלי המודרני והקידוד הנכון (אצלי LANG=en_US.UTF-8) ותקבלו חזרה מ-ISOC את הקידוד הנכון, יצא ש"צלמת" זה xn--hebews
  2. שגרו apt-get install idn, ותקבלו כלי CLI לתרגום המחרוזות המעצבנות האלו.
  3. חפשו בגוגל מתורגמן IDN, יש הרבה.

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

עצה – הדרך הנוחה לניהול דומיינים מרובים לאותו האתר תחת BIND הוא הפניית כמה דומיינים לאותו קובץ zone, אם כתבתם אותו נכון ללא שמות מלאים (למשל השמות בקובץ מתייחסים ל־www ולא לשם מלא כמו www.yaro.co.il. – עם הנקודה בסוף כמובן). אני מייצר את ה-named.conf אוטומטית מרשימות שמות של דומיינים שמצביעים על קבצים עם שמות כמו הדומיינים, אז אני עושה דבר דומה עם symlinks ברמת קבצי ה־zone במקום בקובץ הקונפיג אבל התוצאה זהה. אפשרות אחרת היא לעשות שימוש ברשומת DNAME, ולפתור כמה בעיות במכה, כולל אולי זרימת הדואל. לא ניסיתי.

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

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

ServerName yaro.co.il
ServerAlias www.yaro.co.il
ServerAlias xn--6dbfabcqvj1f4b.co.il
ServerAlias xn—-zhcpbrbbyge2cxcu.co.il
ServerAlias xn--hebews.co.il
ServerAlias www.xn--6dbfabcqvj1f4b.co.il
ServerAlias www.xn—-zhcpbrbbyge2cxcu.co.il
ServerAlias www.xn--hebews.co.il

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