תוכן עניינים:
ביומיים האחרונים בטח שמעת את המילה "מזלג" יותר פעמים מכפי שאתה יכול לספור. פייסבוק מזלגה את זה (למרות שזה לא עשה זאת), אמזון מזלגת את זה, צוות כרום מזלג את כל הרשת, וכן הלאה וכן הלאה. בזמן שכולם מדברים על מי מזלג את מי, אף אחד לא טורח להסביר בדיוק מה זה מזלג, ומדוע כל כך הרבה אנשים יש בעיה עם זה.
זיוף, או התנפצות, קיבל קצת נציג רע לפני 20 שנה בערך, מכיוון שהוא נטה לפצל מפתחים לסיעות נפרדות שלא חלקו את הקוד זו עם זו. בימים של דברים כמו ה- Gnu-Emacs / XEmacs, זה היה חשוב מכיוון שלא היו כמעט כמו אנשים רבים המסוגלים לעבוד על הפרויקטים הגדולים האלה עם קוד פתוח, ולהיות שני סניפים או מזלגות פירושה שלקח זמן רב להוסיף תכונות וטיפול בבעיות לשני הצדדים. במקרים מסוימים זה עדיין קורה, אני בטוח, אבל לרוב ישנם המון מפתחים שיכולים למלא את החלל שהותיר בידי אלה שיש להם חזון נפרד ויעבירו את הקוד לעקוב אחריהם. אבל חלק מהאנשים לא שוכחים אף פעם, והסטיגמה שקשורה למזלגות מזלגות עוברת. לאחר שאמרנו את כל זה, איננו יכולים להעמיד פנים שמזלגות רעות אינן מתרחשות. אנחנו רק צריכים להסתכל על פני המעשה עצמו לפני שאנחנו מקבלים את ההחלטות שלנו.
אני יודע שכמה מכם בחוץ יודעים מה כל המשמעות של זה, ופשוט מנסים להתעלם מכל הרעש, אבל עבור רבים זה מבלבל. בואו ננסה לתקן את זה.
מה זה מזלג תוכנה, וכיצד הוא משפיע על אנדרואיד?
חשבו על חבורה של קוד אנדרואיד. יש שתי מנות - החלקים בקוד הפתוח, וזה מה ש- AOSP הוא, והחלקים הקנייניים שגוגל שומרת לעצמה. אם מישהו רוצה לקחת את גוגל אנדרואיד ולבצע בו שינויים, הוא יוריד את הקוד שישמש כבסיס וייצור איתו פרוייקט משלו. סמסונג עושה זאת, HTC עושה זאת, ומפתח ה- ROM המועדף עליך עשוי לעשות זאת. בכל פעם שמישהו לוקח קוד קיים, ומתחיל פרויקט עצמאי (זה הבחנה חשוב) על בסיסו, הם יצרו מזלג. מפתחים רבים יבדקו את הקוד, יערכו חלקים ממנו, ואז ישלחו את השינויים שלהם במעלה הזרם במלואם, וזה לא מזלג.
אמזון הרימה לא מעט גבות כאשר זימנה את אנדרואיד לבנות את מערכת ההפעלה לקו Kindle Fire. אבל בצד הקוד-פתוח של הדברים, זה לא היה שונה ממה שעשתה מוטורולה עם ה- Cliq, או HTC עשתה עם הגיבור - או מה שעושה סמסונג עכשיו למכשירי סדרת הגלקסי. כך עובדים הרבה פרויקטים גדולים עם קוד פתוח. כל ספק (למעט אולי אמזון) עובד עם אותם היסודות, ככל הנראה מדווח על באגים ומגיש תיקונים במעלה הזרם בזמן שהם עוברים, כדי ליצור משל עצמו על המוצר הסופי.
פייסבוק לא מזלגה אנדרואיד. היא השתמשה במערכת הכוונות של אנדרואיד (דרך בה אפליקציות יכולות לעבוד זו עם זו ולשתף באנדרואיד) ובנתה אפליקציה גדולה הכוללת בנוסף בית תחליף. בתוך ארגז החול שלהם הם יכולים לעשות כל מה שהם רוצים או צריכים לעשות, וכל עוד הם משתמשים בכוונות אנדרואיד הם יכולים לתקשר עם שאר המערכת. אם ברצונך להפוך טכני, ייתכן ש- HTC אילצה את אנדרואיד לעבוד טוב יותר עם Facebook Home ב- HTC First, מכיוון שהיא מזכירה כמה שינויים שנעשו לצורך תאימות טובה יותר. נדע יותר על מה שהם עשו כשהטלפון מתגנב.
בכל מקרה, קוד זיוף אינו דבר רע תמיד ולא מגיע לו את כל השליליות שאתה שומע כשמישהו מזכיר זאת. אנליסט התעשייה סטיבן אוגראדי מסכם זאת יפה לדעתי:
עם זאת ראוי להזכיר שמבחינת הלקוח מזלגות או גרסאות אינם רעים באופן אוניברסלי. בעוד שגרסאות האנדרואיד השונות עשויות לייצג החלטות עיצוב מצערות מצד הספקים האחראים להן, יישומים ברוב המוחץ של המקרים תואמים ממכשיר למכשיר, בהנחה ששוויון גרסאות זה מזה.
השימוש באפליקציות תואמות ממכשיר למכשיר הוא הסיבה לכך שתוכנת אנדרואיד. קוד זיוף אינו גורם לכך שלא יקרה. אבל דברים אחרים כן.
הצד השני של מזלג אנדרואיד
בסין אתה יכול לקנות טלפון ממוביל שמפעיל אנדרואיד, אך אין לך שירותי גוגל? ממש כמו Kindle Fire, הוא בנוי מקוד האנדרואיד של גוגל (לעיתים ללא שינוי) אך לא הוגש ונבדק כתואם של גוגל ויש בו דברים כמו Gmail או Google Play. האפליקציות האלה וקבצי המערכת השונים שהם צריכים להפעיל אינם קוד פתוח ואינך יכול פשוט לכלול אותם ללא אישור מגוגל.
מלבד חוויית משתמש "שונה" (אני לא מתכוון לומר שהיא "גרועה יותר", רק שונה) בלי היישומים האלה, הם יכולים להיראות ולהרגיש ממש כמו טלפון אנדרואיד שאתה קונה מ- Verizon או AT&T. הם יכולים גם להיראות ולהרגיש שונים מאוד, כמו שעשתה אמזון. אך כל זה לא נבע מכך שהם חילקו את קוד האנדרואיד של גוגל - זו הייתה החלטה מודעת לא ליצור מכשיר "מוסמך" של גוגל. גוגל מציגה את אנדרואיד כפלטפורמה ליישום וכמערכת מסגרות אפליקציות. אי הוספת יישומי השירות של גוגל לא הופכת אותה לפחות לפלטפורמת אפליקציות. כמובן, אנו מדמיינים שגוגל מעדיפה שכל מכשירי אנדרואיד ואנדרואיד ישתמשו בשירותים של גוגל, אך אין כלל קשה ומהיר שאומר שספק צריך לעשות זאת.
הפיכת מכשירים ללא אפליקציות של גוגל לא קשורה לחילוץ אנדרואיד. זה עשוי לגרום למכשירים להיות פחות נחשקים, או שיום אחד ניתן לבנות טלפון אנדרואיד אולטימטיבי ללא האפליקציות של גוגל, אך זה יכול לקרות מבלי לזייף קוד כלשהו. כולנו אשמים במגע אחד בין שני הדברים, אך אל לנו לעשות זאת.
זיוף זה רק דבר
לא טוב ש- OEM יצרני אנדרואיד יעבדו על הפרויקט שלהם עם הקוד. לא נורא שיצרני ציוד מקורי ממלאים את אנדרואיד ועובדים על הפרויקט שלהם עם הקוד. זה פשוט דבר שכולם עושים.
בצד מועדון האוהדים של Nexus, אתה לא יכול להגיד לי שסמסונג או HTC הרסו את אנדרואיד על ידי זיוף הקוד והקמה עליו. הם הוסיפו תכונות תוך שמירה על הכל תואם כך שיישומים שנבנו עבור "אנדרואיד" על פי הנחיות המפתח יעבדו בסדר גמור. והם בעקביות מספקים מכשירים שאנשים רוצים לקנות. אני חושב שזה בדיוק מה שגוגל חשבה עבור אנדרואיד. הם ידעו שבסופו של דבר מישהו ילך קצת יותר וייצור משהו שאינו תואם "אנדרואיד" לחלוטין, אבל זה בסדר. המשתמשים במכשירים אלה עדיין באינטרנט, ויישומי האינטרנט הסלולריים של גוגל די הגונים.
אני מקווה שעכשיו אתה יודע קצת יותר על המשמעות של אנשים כאשר הם מדברים על זיוף אנדרואיד.