יום שלישי, 10 במאי 2011

כשהפטיש לא מתאים למסמר

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

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

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


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

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

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

אין תגובות:

הוסף רשומת תגובה