איך מפתחים באמזון? יעיל או אפקטיבי?

יום ראשון, פברואר 9, 2014

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

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

יום שישי, מרץ 15, 2013

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

אמזון נפלה. אז מה?

יום ראשון, אפריל 24, 2011

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

למה שיפוצניק מנהל את הפרויקט שלך

יום ראשון, יולי 4, 2010

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