יום שני, 24 בנובמבר 2008

האינטרנט כרשת מולטימדיה

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

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

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

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

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

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

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

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

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

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

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

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

עד כאן על מלוטימדיה מזויית הראיה שלי.
המשך גלישה נעימה.

יום שני, 17 בנובמבר 2008

מה שמאחורי האתר

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

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

שפה לדוגמא השייכת לצד שרת היא PHP, בה משתמשים כיום בלא מעט אתרים.

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

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

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

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

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

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

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

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

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

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

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

המשך גלישה נעימה ופיתוח פתוח.

יום שבת, 1 בנובמבר 2008

יומהולדת + פרוייקט נגישות לבעלי מוגבלויות

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

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

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

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

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

מה לנו משתלם מזה?
למרות שהיה קשה לי להאמין למספרים, שנשמעו לי מופרכים במיוחד, אבל התברר לי שנוכל לזכות ב-25% מהאוכלוסייה שלא מסוגל לגלוש, ועוד כ-37% אחוז שמתקשה להקל עליו זאת.
מלבד הנתון הזה שנשמע לי דיי גבוה ומופרך, נוספת טענה שאתר נגיש מגדיל את כמות הכניסות שלו ממנועי החיפוש ב-8 עד 14 אחוזים, מה שאמור כנראה לפנות ללב של מקדמי האתרים להשפיע על מפתחי האתרים ובעלי האתרים לתמוך בזה.

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

עדיפויות לנגישות
קיימות 3 עדיפויות לתאימות.

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

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

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

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

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

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

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

אז מזל טוב לי, והמשך גלישה מהנה.