ניהול גרסאות עם Subversion

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

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

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

לצורך הדוגמא – rsyncrypto התחיל את דרכו עם קבצים בסיומת “cc”, שהיא הדרך המקובלת לציין קבצי C++‎ ביוניקס. בגרסה 0.14 של הפרוייקט עלה הצורך לייצר לו גרסת חלונות. בחלונות מקובל לסמן קבצי C++‎ באמצעות הסיומת cpp. מכיוון שיוניקס (ולינוקס) מסתדרים הרבה יותר טוב עם הסיומת cpp לקבצי C++‎ מאשר חלונות עם הסיומת cc, הייתי צריך לשנות את שמם של על קבצי קוד המקור של הפרוייקט. מי שמסתכל היום על קובץ בפרוייקט (למשל, main.cpp) יכול לקבל את הרושם שהקובץ לא היה קיים לפני גרסה 0.14. זוהי הגרסה הראשונה שמופיעה במערכת ניהול הגרסאות. רק מי שמבקש חתכים של כל הפרוייקט יגלה שלפני גרסה זו היה קובץ בשם main.cc, שהיא בעצם אותו הקובץ תחת שם אחר. ההיסטוריה (אותה אפשר לראות אם לוחצים על הקישורים שנתתי) לא עברה מהקובץ הישן לקובץ החדש. מי שרוצה לדעת מה קרה לקובץ טרם היותו בשם האחרון שלו עלול לא למצוא את הקובץ הקודם, ולא לדעת מה ההיסטוריה.

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

מכיוון שבעיותיו של CVS ידועות, אנשים בקהילת התוכנה החופשית עובדים על חלופות. כמובן שיש גם פתרונות בתחום התוכנה הקניינית. הידוע ביותר מבניהם הוא כלי של IBM (לשעבר rational) בשם “ClearCase”. אני חייב להודות שנסיוני עם המוצר מועט הוא אבל כואב. יש לו יכולות מאוד מפותחות בתחום של התפצלויות ואיחודים של העבודה, אבל הוא סובל מבעיות מבעיות שונות. הבעיה החמורה ביותר, מבחינתי, היא שגרסאות שורת הפקודה שלו לא חזקות כמו הגרסאות הגרפיות. במילים אחרות, יש דברים שאם רוצים לעשות עם ClearCase, חייבים להשתמש בכלים הגרפיים. במקום שבו אני נתקלתי בו היו לו גם בעיות ביצועים די קשות, אבל בהחלט ייתכן ששם אלו היו חבלי לידה. כמו כן, גם במקום אחר שבו רצו שאשתמש בו היו לו בעיות שנבעו באופן ישיר מהעובדה שצריך רשיונות. אנשים רבים שם על הרשיונות הצפים. באותו המקרה, נתתי רשימה של דרישות ממערכת ניהול תוכן, וכאשר אנשי ה-ClearCase של החברה אמרו שהם לא יכולים לעמוד בדרישות, הסברתי להם בתקיפות אך בנימוס שאני מתכוון להשתמש ב-CVS, תודה. זה שאני הייתי איש הפיתוח על לינוקס היחידי בחברה שמפתחת כולה בחלונות גם עזר קצת.

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

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

שחר

תוכנה חופשית – אסור למכור אותה!

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

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

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

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

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

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

ולא שאני חושב שיש בזה משהו רע.

שחר

סקר שביעות רצון של קופת חולים

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

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

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

שחר

מחקר אנטרופולוגי על תגובות

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

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

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

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

שחר

ACLים לא בטוחים

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

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

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

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

שחר

נ.ב.
כמה קל להגיד “אמרתי לכם”?

גרסה חדשה ל-rsyncrypto

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

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

בעודי עובד על שיחרור הגרסה, מישהו פתח באג במנגנון הבאגים של sourceforge! כן, יש משתמשים! מרגע שהבאג דווח ועד שהיתה גרסה בחוץ שפתרה אותו – 24 שעות. אני חושב שזה לא רע.

שחר

התנהלות עמותת, וחברי קהילת, "המקור"

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

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

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

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

הקבוצה הראשונה, וכנראה שהגדולה ביותר, היתה חברי רשימת התפוצה “Linux-IL”, עם פעילויות ומפגשים פיזיים (בעיקר חייפוקס). לשם גם אני “השתייכתי”. תכונה מאפיינת – דיונים באנגלית וחוסר סבלנות ל-Newbies. הקבוצה השניה היתה של הקהילה שהתאספה סביב האתר “whatsup. השלישית היא מפעילי אתר הפינגווין.

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

במהלך אותה השנה נאלצנו להתייחס בהמון חשדנות לכל יוזמה חדשה. זו היתה השנה שבה קרה כנס Go-Linux הגדול, וזכינו להרבה התעניינות מחברות מסחריות (אנשים ומחשבים, IBM, Sun, CA ועוד הרבה). היתה דרושה הרבה זהירות כדי להבין את הדרך הנכונה לעבוד מול החברות האלו בצורה שבה אנחנו לא מוותרים על העקרונות שלנו מחד, כן מפיקים משיתוף הפעולה עם החברות תועלת, וגם נותנים להם ערך חזרה (כדי שגם הם יהיו מעוניינים בהמשך שיתוף הפעולה). אני אפילו לא יודע להגיד אם מצאנו את הדרך האופטימלית.

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

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

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

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

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

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

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

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

שחר

על מרכזיית Avaya

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

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

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

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

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

אם התמדתם עד כאן, אתם יכולים לטעון, במידה רבה של צדק, שהבעיה היא בחברה שנותנת את השירות בארץ, ולא ב-Avaya עצמם.

בסוף אמרתי לו פשוט לשים את התוכנה על מחשב אחד, ועקבתי אחרי השימוש שלו. הנה מה שהסתבר לי:
כאשר מתקשרים ב-UDP או ב-TCP, יש מספרי “port”. תחשבו על זה ככה. אם כתובת ה-IP משולה למספר טלפון, מספר ה-Port משול למספר שלוחה. למרות שאין ב-UDP כל דרישה מפורשת כזו, נהוג שתקשורת שיוצאת מפורט א’ לפורט ב’ תענה ע”י תקשורת מפורט ב’ לפורט א’. רוב הפיירוולים יודעים את העובדה הזו, ומאפשרים לתקשורת לחזור באותו מסלול.

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

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

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

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

שחר

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

שירות 166 של בזק

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

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

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

התקשרתי ל-166, והיום החלטתי להמתין ולשמוע את מלוא ההודעה. אחרי ההודעה הראשונית הם הציעו לי לבצע בדיקה אוטומטית של הקו. ביקשתי לבצע את הבדיקה. פלא פלאים, הם טוענים שיש תקלה בקו! לחץ “1” בשביל להגיש דיווח על התקלה, לחץ “1” אם אתה בעלי הקו, מספר תלונה 5049, תודה שהתקשרת.

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

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

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

שחר

איך לבחור פתרון open source

zdnet פירסמו מאמר של סת’ גוטליב בנושא “איך לבחור מערכת ניהול תוכן חופשית. סלאשדוט כבר נתנו לינק.

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

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

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

שחר

Bear