Deprecated: Creation of dynamic property CF\WordPress\DataStore::$logger is deprecated in /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/DataStore.php on line 23

Deprecated: Creation of dynamic property CF\WordPress\Proxy::$pluginAPI is deprecated in /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/Proxy.php on line 31

Deprecated: Creation of dynamic property SyntaxHighlighter::$brush_names is deprecated in /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/syntaxhighlighter/syntaxhighlighter.php on line 248

Deprecated: Creation of dynamic property SyntaxHighlighter::$specialchars is deprecated in /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/syntaxhighlighter/syntaxhighlighter.php on line 326
המכללה | לעשות הכל נכון
Warning: Cannot modify header information - headers already sent by (output started at /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/DataStore.php:23) in /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/HTTP2ServerPush.php on line 79

Warning: Cannot modify header information - headers already sent by (output started at /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/DataStore.php:23) in /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/HTTP2ServerPush.php on line 79

Warning: Cannot modify header information - headers already sent by (output started at /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/DataStore.php:23) in /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/HTTP2ServerPush.php on line 79

Warning: Cannot modify header information - headers already sent by (output started at /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/DataStore.php:23) in /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/HTTP2ServerPush.php on line 79

לעשות הכל נכון

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

בדיון שהתפתח אצל גל מור על ההשקה של נענע 10 אמר חנן כהן:

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

חנן צודק, פעמיים, אבל צודק גם רן בתשובתו:

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

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

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

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

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

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

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

לדרג את הפוסט
0

Posted

in

,

by

Comments

7 תגובות על “לעשות הכל נכון”

  1. תמונת פרופיל של חנן כהן

    לא מסכים לאי ההסכמה שלך איתי.

    אתה אומר שתמיד אפשר להוסיף עוד פיצ'רים.

    אני אומר שצריך לעלות עם רמה מינימאלית של איכות.

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

    או שאני טועה ודווקא כן יש מישהו שכותרת התפקיד שלו הוא QA, ורק QA?

    1. תמונת פרופיל של ~ניצן~

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

  2. תמונת פרופיל של מרק ק.

    הרעיון של הצגת רשיון לפי תגית נשמע לי ממש טוב.

    הבעיה עם לחכות להצעות בשביל שלבי הפיתוח הבאים של התוסף היא שפועלים פה חוקי ה1:9:90 של הWEB 2.0 במלוא כוחם. מתוך 100 אנשים שיקראו על התוסף, 10 ממש יתקינו אותו ובמקרה הטוב רק לאחד יש מספיק ידע והבנה בשביל להציע שיפורים שהם גם הגיוניים.

    1. תמונת פרופיל של שלומי אסף

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

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

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

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

      1. תמונת פרופיל של ~ניצן~

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

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

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

        על טעויות משלמים, חבל רק שאין קורלציה בין הטועים והמשלמים.

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

  4. תמונת פרופיל של שלומי אסף

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

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *


Warning: Cannot modify header information - headers already sent by (output started at /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/DataStore.php:23) in /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/HTTP2ServerPush.php on line 79

Warning: Cannot modify header information - headers already sent by (output started at /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/DataStore.php:23) in /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/HTTP2ServerPush.php on line 79

Warning: Cannot modify header information - headers already sent by (output started at /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/DataStore.php:23) in /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/HTTP2ServerPush.php on line 79

Warning: Cannot modify header information - headers already sent by (output started at /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/DataStore.php:23) in /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/HTTP2ServerPush.php on line 79

Warning: Cannot modify header information - headers already sent by (output started at /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/DataStore.php:23) in /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/HTTP2ServerPush.php on line 79

Warning: Cannot modify header information - headers already sent by (output started at /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/DataStore.php:23) in /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/HTTP2ServerPush.php on line 79

Warning: Cannot modify header information - headers already sent by (output started at /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/DataStore.php:23) in /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/HTTP2ServerPush.php on line 79

Warning: Cannot modify header information - headers already sent by (output started at /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/DataStore.php:23) in /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/HTTP2ServerPush.php on line 79

Warning: Cannot modify header information - headers already sent by (output started at /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/DataStore.php:23) in /home/nitzan_n2b/n2b.org/wordpress/wp-content/plugins/cloudflare/src/WordPress/HTTP2ServerPush.php on line 79