פיתוח לפי התקן- זכות או חובה?

| | תגובות (20) | הפניות (0)
מתוך: Ynet - מחשבים

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

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

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

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

לזה יש לי כמה תשובות:

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

והרשימה מתארכת עוד ועוד.

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

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

תשאלו את עצמכם שוב- למה באמת אתם מעדיפים לכתוב לאקספלורר ולא לתקנים?

get firefox konqueror download Get Safari Get Opera omniweb Camino

0 הפניות

Listed below are links to blogs that reference this entry: פיתוח לפי התקן- זכות או חובה?.

TrackBack URL for this entry: http://www.xslf.com/mt/xslf-tb.cgi/43

20 תגובות

Anonymous :

כל הכבוד על העלאת הנושא החשוב הזה.

אם כבר דפדפנים, ידוע לך אולי כיצד אני יכול לשדרג מפיירבירד לפיירפוקס?

Xslf :

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

Xslf :

>נאה דורש, נאה מקיים?

האם אתה רואה כאן קוד המותאם לדפדפן אחד בלבד (ועל זה המאמר) והמונע מדפדפנים אחרים להשתמש באתר בצורה נאותה?

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

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

תודה שוש, זה עבד.

בוקי נאה דורש :

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

Jesus, I can't read this. What is this hata wata?

Xslf :

>כתיבה תקנית גוררת נגישות

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

>אני לא מסכים שנגישות היא חזות הכל

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

מהו התקן בשבילך? למה לדעתך הוא קיים בכלל?

>אז כדאי "לחנך" למשהו מוחשי שיכול להמדד אמפירית - ואלידציה של ה-W3C

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

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

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

מלאך שומר :

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

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

ולגבי נגישות למוגבלים במוצרי מיקרוסופט:
http://www.microsoft.com/israel/enable/default.mspx

Xslf :

>מבחינתי (ומבחינת רוב בעלי האתרים) דפדפן ידוע הוא אחד כזה שיש לו מעל 10% משתמשים בשוק.

אפשר לענות על כך בכמה צורות.
* מה אכפפת לך באיזה דפדפן הגולשים משתמשים? תבנה לפי התקן וזהו. אני גיליתי שיותר מהר לי לבנות אתר לפי התקן, ואח"כ לעשות התאמות לדפדפן ספציפי (אקספלורר..) אם צריך, מפני שהתקן מכיל קוד נקי ומסודר יותר, שהוא מהיר יותר לכתיבה ומהיר יותר לתחזוקה.
* אתה בונה את כל האתרים שלך בצורה זהה, בלי קשר לקהל היעד של האתר? אתה יודע, יש שוני בסטטיסטיקות בין אתר לאתר.
לדוגמא, מהאתר הזה כאן- רק כחצי מהכניסות אליו נעשות עם אקספלורר (מטעמי מקום, כללתי כאן רק את מה שהוא בסביבות אחוז אחד ומעלה):
Explorer 38,497 49.8%
Netscape 17,292 22.3%
Googlebot 3,391 4.4%
FAST WebCrawler 2,372 3.1%
unknown 2,204 2.8%
Bloglines1,071 1.4%
Planet OpenOffice.org Developer News Planet 951 1.2%
NetNewsWire 848 1.1%
ActiveRefresh v 1.36 724 0.9%
rawdog 674 0.9%
Scooter 663 0.9%

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

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

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

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

מלאך שומר :

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

Xslf :

בכמה מקומות כתבתי שבנייה לפי התקן עוזרת לתאימות לעתיד. היום, נתקלתי ב"למה רשת" במקרה בכותרת הבאה:
"מיקרוסופט ישראל לאתרים: התאימו עצמכם ל-SP2"
http://www.ynet.co.il/articles/0,7340,L-2931804,00.html

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

מיקרוסופט פרסמו מסמך הנחיות לבוני אתרים עם השינויים:
http://www.microsoft.com/israel/msdn/kb/xpsp2websites.mspx

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

עדן :

בס"ד

שלום יש לי בעיה באינטרנט ואני צריכה עזרה הבעיה היא שכאשר אני לוחצת להכנס לדף באינטרנט הדף לא נפתח משום מה האם אתם יכולים לעזור לי?

תודה עדן

ראובן :

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

כתבתי ל- webmaster של http://www.emap.co.il , (אתר שמעולם לא הצלתי להתמש בו, כיוון שאני משתמש בלינוקס ואין לי כלל אקספלורר) , אך טרם קיבלתי תשובה.

שמו ליאור זיידרמן, כתובת: webemapnew@emap.co.il

נתקלתי באתר נוסף, שבו קיים עמוד שחסרות בו אותיות כאשר צופים בו בנטסקייפ. העמוד הוא:
http://www.traintheater.co.il/programs.php
ומה שמוזר, כאשר עושים: View->Page Source , אכן חלק מהתוים (שנראים באקספלורר) אינם מופיעים!

זוהי תעלומה שאני לא מצליח לפתור: אם ב- Page Source התוים אינם מופעים, מאיפה האקספלורר לוקח אותם??

ראובן :

צר לי לחלוק על הדברים שנכתבו כאן:

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

אני מסכים שבמישור הכללי אלו כלים שאמורים להבטיח תאימות, פורטביליות וכו'. אבל עבור הכותב, זהו לא כלי, אלא מטרה.

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

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

מדוע זה צריך להיות שונה לגבי האינטרנט??

Xslf :

>מדוע זה צריך להיות שונה לגבי האינטרנט?

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

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

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

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

>האם הקומפילר C יסלח לי אם שכחתי ; או שכחתי להגדיר משתנה??

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

אבל כבר נסחפתי קצת בקיטור... :-)

ראובן :

החטא הקדמון של האינטרנט:
---------------------------

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

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

לכן היה צריך לידע בפרוטוקול על יכולות הדפדפן בלבד ובשום אופן לא על שם הדפדפן.


Xslf :

אפרופו הדיון כאן: פוסט בבלוג של קבוצת הפיתוח של אקספלורר במיקרוסופט על תאימות לקוד שבור מול תאימות לתקנים:
http://weblogs.asp.net/ie/archive/2004/10/15/243074.aspx
שורה תחתונה:
אקספלורר ימשיך לתמוך בבאגים שהיו בגרסאות קודמות, גם כשזה מנוגד לתקנים, כדי שבוני האתרים לא יצטרכו לתקן את הקוד שלהם (וכדי שהגולשים לא יראו את כמות האתרים בעלי קוד שבור שיש ברשת).

dukka :

אתר Ynet טוען לתאימות מלאה לדפדפנים מבוססי מוזילה.

לפרטים נוספים:
http://mozilla.org.il/news/2004/12/16/ynetsupported/

השארת תגובה