FOSDEM 2008‏ (3)

ביום ראשון בבוקר היתה סדנא למפתחי הרחבות, בה הוסבר כיצד להתאים את ההרחבות לגרסה 3 של Firefox. לאחר מכן הוצגו תוצאות של סקר שנערך בקרב קהילת Mozilla באירופה. אני ניצלתי את הזמן כדי לראות הרצאה על CMake, והגעתי רק להרצאה על SeaMoneky 2, הגרסה הבאה של SeaMonkey. רוברט קייזר, שהעביר את ההרצאה, דיבר על כמה מהבעיות בהן נתקל הפרוייקט, ביניהן:

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

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

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

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

כיום באגים ב-SeaMonkey מקוטלגים בבאגזילה תחת המוצר Mozilla Application Suite, השם הקודם של התוכנה, לפני שפיתוחה הועבר לפרוייקט קהילתי. יש צורך להעביר אותו אל שם חדש, אך זה יצור שתי בעיות: העברה רגילה תייצר כמויות אדירות של דואר שישלח אוטומטית אל כל מי שעוקב אחרי הבאגים של התוכנה, וזה גם ישבור חיפושים שמורים שיש לאנשים.

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

קייזר ציטט "מנהל בחברת IT גדולה" כשקרא Developers! Developers! Developers!‎. עוד הם צריכים אנשים שיבדקו קוד חדש (review), יבדקו גרסאות לייליות, יכתבו תיעוד, יעזרו בתמיכה ובשיווק.

ב-SeaMonkey 2 צפויות ערכות נושא דומות יותר ל-Firefox, אך עם אייקונים אחרים. יהיה מנהל הרחבות, פורמט חדש לפרופיל (עם אפשרות המרה מפרופילים ישנים או מ-Thunderbird), תמיכה ב-RSS, סינון קבוצות דיון לפי כותרות של ההודעה, אירגון מחדש של חלון ההעדפות, שימוש במנוע התצוגה Gecko 1.9, עדכונים אוטומטיים, והתרגום יהיה במערכת ניהול הגרסאות יחד עם שאר הקוד.

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

ההרצאה הבאה עסקה בתוכניות של Mozilla לעולם הסלולרי. מסתבר שגם נוקיה וגם סמסונג, שתי יצרניות טלפונים סלולריים מהגדולות ביותר, תומכות במה שבינתיים נקרא Mozilla Mobile, גם בכספים וגם במפתחים. נוקיה כבר משלבת דפדפן מבוסס Gecko במכשירי N100 ו-N110 שלה, עם ממשק משתמש שבנתה בעצמה.

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

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

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

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

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

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

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

FOSDEM 2008‏ (2)

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

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

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

  • חיפוש טוב יותר בהודעות
  • קיצור תהליכים בעבודה השוטפת
  • פישוט הגדרות התצורה. משתמש קצה לא צריך להבין בשרתי דואר, ולא צריך לדעת מה זה POP3 או SMTP.
  • תמיכה ב-SVG
  • הוספת ספריית הג'אווה סקריפט STEEL, הדומה לספריית FUEL. ספרייה זו אמורה להקל על מפתחי הרחבות לכתוב הרחבות עשירות יותר.
  • טיפול בספאם, פישינג, ומחלות דוא"ל אחרות
  • שילוב בשירותי דואר רשת

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

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

בזמן שבחדר של Mozilla דיברו על פרוייקט SUMO (קיצור של support.mozilla.org), פרוייקט התמיכה הטכנית המתגבש, הלכתי לראות הרצאה אחרת, על הרצת תוכנות KDE על Windows. לאחר מכן חזרתי להרצאה מעניינת על Songbird (גם בויקי שלנו).

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

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

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

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

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

בפוסט הבא: על SeaMonkey 2 והתוכניות לטלפונים חכמים ומחשבי כף יד.

FOSDEM 2008

בסוף השבוע האחרון נערך בבריסל, כבכל שנה, כנס הקוד הפתוח האירופי FOSDEM. בכנס יוצגו מרבית הפרוייקטים הגדולים בתחום הקוד הפתוח, וביניהם הפצות לינוקס, BSD, אופן אופיס, וגם Mozilla. השנה תומר כהן ואני הגענו לכנס, והצטרף אלינו ליאור קפלן, פעיל בלינוקס דביאן. מצאנו שם גם את אנטון בר מ-g.ho.st. האוירה היתה דומה למה שהיתה בפעם הקודמת בה הגעתי לשם, אז לא אחזור על הדברים. הנה ההתרשמות שלי מכמה מן ההרצאות של Mozilla בכנס.

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

חיפוש הרחבות נעשה קל יותר, וניתן לחפש הרחבות ישירות מתוך חלון ההרחבות, ללא צורך להגיע אל addons.mozilla.org, האתר הרשמי של ההרחבות של Mozilla.

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

רכיב הקוד הסגור האחרון שנותר ב-Firefox הוא Quality Feedback Agent, שקופץ בפעמים הנדירות ש-Firefox קורס. רכיב זה, שריד מימי נטסקייפ ז"ל, הוחלף בגרסה 3 בתוכנת הקוד הפתוח Breakpad.

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

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

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

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

Calendar יצורף לגרסה הבאה של Thunderbird, גרסה 3.

בפוסטים הבאים אכתוב על Songbird, SeaMonkey 2 והתוכניות של Mozilla למחשבי כף יד וטלפונים חכמים.