 |

27-01-2016, 22:18
|
מנהל פורומי "תכנות ובניית אתרים" ו"חומרה ורשתות"
|
|
חבר מתאריך: 25.10.01
הודעות: 42,777
|
|
אז תן לי בבקשה שם של וירוס שרץ על לינוקס, מה תפוצתו, ואיך זה בדיוק קורה... הגיע הזמן, אחרי 20 שנה, שסופסוף אני אכיר אחד!
האם עם יד על הלב אתה יכול להגיד שאין לך מזיקים בחלונות? יש לך איזושהי דרך לדעת את זה בוודאות? (לפני שתשאל - כן - במערכות אחרות אפשר בקלות...)
נראה לי שלא הבנת, או שאולי אתה לא רוצה להבין. שחברה מוציאה מוצר חדש, משאירה אותו עם אותו שם, וטוענת שהוא "שדרוג", הציפיה של המשתמשים הוא שדברים ימשיכו לעבוד. כשזה לא המצב, זה אומר ששברו משהו. כששוברים, יש סבירות גבוהה שיודעים שעושים את זה - אתה משנה ממשק כלשהו - יכול להיות שמישהו משתמש בו! גם אם לא חשבת שיש מישהו שעושה את זה - אין דרך להבטיח את זה. לכן, אם אתה *חייב* לתמוך במשהו אחר ש"דורש שינוי", אפשר לעשות פתרון "עוקף", ממשק חדש, לממש מחדש באמצעות מתודה חדשה מה שצריך, עד איזה רמה שצריך, ולהשתמש במתודה החדשה. שברת את הישנה? משהו, איפשהו, ישבר. ברגע שאתה עושה החלטה מודעת לעשות דבר כזה, אתה בעצם אומר: "לא ממש איכפת לי מהמשתמשים שלי. שחברות אחרות ישברו עכשיו את הראש מה אנחנו שינינו ועל איזה מקרי קצה זה משפיע / כמה נדפקים הביצועים של המערכת - זו בעייה שלהם שהם השתמשו בקוד שלנו...". ואם יצרן התוכנה/חומרה כבר לא קיים? אה, מה הבעייה, שמשתמש הקצה יקנה תוכנה/חומרה חדשה רק כי הוא "שדרג"... (האם שמשהו עובד פחות טוב זה נחשב "שדרוג"? מעניין.)
זה שחברה מסויימת עושה את הביזנס שלה מלמכור מוצרים דווקא למערכת ההפעלה שלך בגלל שהיא השולטת בשוק (בצדק או שלא כל כך...) - לא אומר שהיא חייבת לך משהו. אתה ממשיך למכור את המערכת בשם "חלונות", ואנשים מצפים שדברים ימשיכו לעבוד. אם אתה מתכנן את זה אחרת, שים אזהרה על האריזה: "שים לב! ייתכן שתוכנות/התקנים מסויימים שיש ברשותך היום יפסיקו לעבוד! אנא וודא מראש שאתה מוכן להחליף כל חומרה/תוכנה [על חשבונך] כשאתה קונה מוצר זה! ולא, אנחנו לא יכולים לספק רשימה של דברים שיפסיקו לעבוד, כי אין לנו מושג..."
אני לא אמרתי בשום מקום שכל ה API-ים ישתנו. ברור שזה לא מה שקרה. אם זה היה קורה, זו כבר לא הייתה חלונות, שום דבר לא היה רץ, ומיקרוסופט לא הייתה יכולה להוציא את הגירסה בכלל. חלק, אולי אפילו מאוד קטן (מה שגורם לך לתהות למה לא השקיעו בבניין v2 של ה API במקום לשבור את v1, אם אין הרבה כאלה) הוא זה שנשבר, וגרם לזה שלא מעט תוכנות נאלצו אחר כך להוציא גירסה חדשה ולכתוב "NOW compatible with Windows 10"...
אני לא יכול להסביר "כמה גירסאות ספריה" יותר טוב מ"כמה גירסאות ספריה". ספריה אחת שמותקנת בכמה גירסאות - כל אחת עם API משלה, עובדות במקביל, ולא שוברות תוכנות, כל תוכנה יכולה להשתמש במה שהיא רוצה (או ליתר דיוק, במה שהיא לונקג'ה מולו)
קוד:
$ locate libssl | grep .so.
/usr/lib32/libssl.so.1.0.0
/usr/lib32/libssl.so.0.9.8
/usr/lib64/libssl.so.1.0.0
אז אל תדבר. לא נפלתי על חלונות. בסה"כ שלחתי את פסטן, שמטרתו (יחד עם חברו בנג'מין) כאן בפורום להציק לי (סתם, לא רק לי, לכולם), שטוען ליכולת ליצור קוד מושלם שכזה שאם הוא עבר את הבילד בלי בעיות, אז הכל בסדר, לחברה שיש לה המון משאבים כלכליים ובכל זאת לא מצליחה כבר 20 שנה לעשות מערכת שעובדת בצורה אמינה לאורך זמן (בסדר, אצלך זה עובד מעולה. הבנתי.). אם לא הבנת את הרעיון מאחורי זה, הוא בא לומר שכנראה יש דברים שבכל זאת לא נתפסים גם אם תדליק את כל האזהרות, תהפוך כל אזהרה לפטאלית, תעשה UT ותעשה QA ידני ואוטומטי, גם אם יש, כביכול, coverage של 100% - שהרי זה לא באמת מכסה כל E2E אפשרי. ולכן כל הטיעון אינו שווה את הפורום שהוא כתוב עליו.
אני לא אמרתי שאין קוד בלי באגים, למעשה, אני אשכול שלם מנסה לומר שאי אפשר להמנע מזה - לא ברור לי איך הבנת ההפך. שרתי לינוקס יותר ותיקים מחלונות זו בהחלט טענה מעניינת. כיוון שאני זוכר את ההתחלה של שתיהן (חלונות NT Server ולינוקס), אני יודע שזה לא בדיוק נכון. NT Server יצאה כמערכת שלמה ב 27 ליולי 1993. הפצות הלינוקס הראשונות אמנם התחילו ב 1992, אבל להגיד שמישהו השתמש בהן אז לדברים רציניים בכמות משמעותית, זה... לא בדיוק נכון. לינוקס לא תמכה ב SMP עד 1996 (!). ת'אכלס, NT Server הייתה עדיפה מבחינת רוב האנשים, בגלל שהם כבר הכירו את חלונות ועבדו שם הדברים שהם הכירו (ת'אכלס, אותה סיבה עיקרית שבגללה אנשים משתמשים במערכת הזו עד היום). אממה, קצב ההתקדמות של שתיהן לא היה בדיוק אותו דבר, והמגבלות, התקלות, הוירוסים, ה malware, וכל שאר הרעות החולות בסוף ניצחו את אנשי הסיסטם הטובים ביותר (לא אותך, אני יודע ), והם החליטו לעבור למערכת שנותנת קצת יותר שקט נפשי, ומאפשרת לך לעבוד, במקום לעבוד נגדך. על הביצועים אין מה להרחיב. אם בכל זאת תרצה הרחבה, אני מקווה שהטבלה הקצרצרה הזו תספק אותה: https://en.wikipedia.org/wiki/Linux...#Supercomputers - אם לא, אני חסר מילים.
שוב, החלטתי לענות להצקה של פסטן, מיקרוסופט לא באמת עניינה אותי כאן. סתם חברה עם מליארדים שתוכל לשלם לו משכורת שמנה במיוחד על היכולת הייחודית שהוא היחיד בעולם שמחזיק בה. הידיעה שקומפילציה עם clang זה 42.
ולבסוף, אם ממש כואב לך לראות את המילה "מיקרוסופט" מוזכרת בהודעות של מאן דהוא, אני יכול לעזור לך לכתוב סקריפט greasemonkey שיסיר את המילה הזו מכל תוכן שאתה קורא...
|
|