עוד דוגמא להצלחה של שיחרור תוכנה חופשית
1 במרץ, 2006 | מאת שחר שמש |גם הפעם – דוגמא אישית:
לפני כחודש כתבתי תוכנה קטנה. אני חושב שאפילו לקרוא לה "תוכנה קטנה" זו הסחפות מסויימת. מדובר בכמה עשרות שורות קוד בקובץ יחיד. לכל מי שמתעקש, הנה קישור לעמוד הבית של התוכנה.
מיקרוסופט לפעמים מציינת שהיחס בין כמות המתכנתים ב-Source Forge לבין כמות הפרוייקטים הוא 10:1. "כמה טוב אפשר לעשות פרוייקט אם יש רק עשרה אנשים שעובדים עליו?" הם שואלים.
מבלי להתייחס למספר האסטרונומי של רמות שבהן הטיעון הזה מגוכח, הנה דוגמא נגדית. Sshpass זו תוכנה שאני הייתי בטוח שלא תגיע מעבר לגרסה מס' 3. אני עדיין לא בטוח שהיא תגיע. התוכנה הזו היתה כל כך לא חשובה בשבילי שאפילו לא עדכנתי פה את העובדה שהיא נכתבה (כשעה עבודה בזמן המילואים שלי) ושוחררה. כל כך לא חשבתי שמישהו יהיה מעוניין שאפילו לא ייצרתי לה רשימת תפוצה.
והנה ההפתעה. שלשום גיליתי שאני צריך תכונה מעט שונה מהתוכנה, ובגלל זה שחררתי גרסה חדשה. עד כמה שחשבתי שהתוכנה תעלם בתהום הנשייה איך שאני אשחרר אותה, שני אנשים פנו אלי עם שאלות. אחד אפילו ציין בפני שהתוכנה לא עבדה לו, ואת השינוי שהוא עשה כדי שתחזור לעבוד. מסתבר ששכחתי לקחת בחשבון אספקט מסויים של הצורה ש-ssh עובד, וכתוצאה מכך היו נסיבות שבהן התוכנה לא תפקדה נכון.
מה שחשוב לציין בשלב זה הוא את העובדה המשעשת הבאה – אילו לא הייתי משחרר את התוכנה, היו עוברים כמה חודשים עד שהבאג הזה היה נתפס ומתוקן. כמו בעבר, העובדה שויתרתי על הבלעדיות שקשורה בתוכנה חופשית גרמה לכך שהמוצר יוצא לשוק כשהוא הרבה הרבה הרבה יותר מלוטש מאשר יכולתי לעשות במשאבי לינגנו המצומצמים.
שחר
תגיות: לינגנו, ניהול פרוייקט חופשי, תוכנה חופשית


10 תגובות עבור “עוד דוגמא להצלחה של שיחרור תוכנה חופשית”
מאת מכבס ותולה בתאריך 1 במרץ, 2006 | תגובה
איזה טיעון מגוחך מצד מייקרוסופט.
עם זאת אני מבין מדוע הם עשויים לחשוב כך.
בעולם התוכנה המסחרי, צוות של עשרה יתחלק כך:
צוות א’: 3+ ר"צ
צות ב’: 2 + ר"צ
מנהל
ארכיטקט / טכנולוג
כלומר יחס של 5:5 בין המתכנתים לניהול וקבלת החלטות טכנולוגיות ( אם ניקח ר"צ בתור חצי מתכנת אז 4:6)
בעולם התוכנה החופשית, רמת המתכנתים והמוטובציה גבוהים יותר, ותקורות הנהול נמוכות יותר.
מאת margi בתאריך 1 במרץ, 2006 | תגובה
משום מה נזכרתי ב"לשחרר את ווילי" ודימיינתי לי תוכנה עליזה שמקפצת לה באושר בשדות הביטים הירוקים…
המממ… באמת נראה לי שאני קוראת יותר מדי.
מאת Moti בתאריך 1 במרץ, 2006 | תגובה
הטיעון של ’מיקרסופט’ אכן חלש.
אולי רק 10 מתכנתים עובדים על פרויקט, אבל ברמת התאוריה, מדובר על מיליוני בוחנים פוטנציאלים.
הרגע הוכחת את זה.
ועוף טופיק:
הקוד שלך מתועד בבהירות.
ממש הבנתי מה עושות שורות מסוימות בלי לשבור את הראש:)
יוצא לי לפעמים לקרוא קוד שמתועד בצורה שברורה עוד פחות מהקוד עצמו.
קבל ח"ח:)
ועוף טופיק 2:
בעקבות היוזר ניים שלך.
ידעת שלנאס"א יש שרת שנקרא "Shemesh"?
http://shemesh.larc.nasa.gov/">לינק
מאת Ozzy בתאריך 2 במרץ, 2006 | תגובה
Microsfot probably haven’t read "The Mythical Man-Month".
As for code clearance – indeed this code is clear to read, but I prefer self-documenting code rather than comments which sooner or later, especially with multiple contributors, become out of date and misleading. (see the comment at the beginning of "match" – it doesn’t mention the correction talked about in the ChangeLog, or what is the comment at the beginning of handleoutput supposed to say?
For instance, I’d prefer to stick the entire content of "if (childpid == 0)" into a separate function called, e.g., "child_process" and the entire code under "else if (childpid > 0") under "parent_process()". That way the name of the method reflects exactly what it does.
I’d also prefer to define enum’s (or "constant" in C++ parlance) to the direct use of -1/-2/-3 return values from parse_options, as well as use of inline functions
מאת Ozzy בתאריך 2 במרץ, 2006 | תגובה
BTW – I don’t see handling of fork failure in the code (childpid==-1) or error printing in case of execvp() failure.
I can understand that maybe the child doesn’t have any tty to write to after the execvp failure but maybe the parent can catch the exit status and print it?
מאת Ozzy בתאריך 2 במרץ, 2006 | תגובה
To find what server you are talking about I typed "inurl:shemesh" in google search and found
shemesh.larc.nasa.gov
Now I try to find what it has to do with "Shemesh"
מאת איתן בורקט בתאריך 2 במרץ, 2006 | תגובה
נדמה לי ששמעתי את Joel Spolski באיזה פודקאסט מתאר את ימיו העליזים במייקרוסופט, ואחת ההתרשמויות הראשונות שלו כשהוא הגיע למקום דוקא היתה שלכולם יש את The Mythical Man Month על המדפים. אולי הם שכחו בינתיים
מאת שחר שמש בתאריך 2 במרץ, 2006 | תגובה
מילא קוראת יותר מידי – אני מזהה בתגובה שלך אלוזיות מטריקסיות בעליל. נראה לי הרבה יותר חמור.
שחר
מאת Moti בתאריך 2 במרץ, 2006 | תגובה
איזה קשר יש לשמש או איזה קשר יש לשחר שמש?:)
בקשר לאחרון, סביר להניח שאין קשר.
כשנכנסתי לעמוד של הפרויקט ששחר שמש מדבר עליו בפוסט, ראיתי ששם המשתמש שלו בסורס פורג’ הוא "The Sun", וזה פשוט הזכיר לי שנאס"א עשו את ההפך ובמקום המילה Sun הם משתמשים במילה העברית.
מאת שחר שמש בתאריך 16 במרץ, 2006 | תגובה
הממ.
לבן אין tty, אבל stderr יש לו גם יש. הוספתי קוד לטיפול בשגיאה ב-fork, ואני אוסיף גם להדפסת הודעה במקרה שיש בעיה ב-exec.
שחר