DCSIMG
May 2010 - Posts - GadiM - Gad J. Meir www.idag.co.il

GadiM - Gad J. Meir
www.idag.co.il

מסעותיו של משמיד חרקים ושרברב תהליכים במרחב הקיברנטי

קישורים

May 2010 - Posts

בוקר על פיתוח יישומים מורכבים במיקרוסופט עם ליאון ועוד כמה SRL - ים

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

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

זה האזור שבו SOA (ולא משנה איך אתה מפרש את המונח) חוגג, ומונחים כמו Service Bus, שרתי יישומים, מימשקי חיבור בין מערכות (WCF), כלי ניהול תהליכים (Visio, Biztalk, Sharepoint), ענן, ושאר מונחים יפים כמו WD, Dublin, MSE ועוד כמה חוגגים.

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

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

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

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

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

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

 2010051601 093 2010051601 097

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

 2010051601 101

לאחר ההפסקה עלה לבמה יובל בירנבאום, ודיבר על ארכיטקטורה של מערכות של ארגונים גדולים. השקף הכי מעניין מבחינתי, היה על עלות מערך המיחשוב, כפונקציה של מספר מערכות ליבה בארגון. השקף הציף מזוית אחרת, את זה שרוב עלות מערכות ה IT הולכת על תחזוקה במקום על מענה לדרישות הארגון החדשות. משם יובל התרכז ב BizTalk ESB ToolKit 2.0, ומה ניתן לעשות איתו בעולם ה Composite Services. השימוש ב Sharepoint למימשק משתמש מהאספקט של Reusability וכמובן AgilePoint. בקיצור להלן שקף המפתח. 

 2010051601 108 2010051601 112

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

2010051602 003 

אל תחמיצו את יוחאי קריתי על Windows Phone 7

יוחאי קריתי, אחד מנציגנו המוצלחים ברדמונד, חוצה את ארצנו ב 26/5/10 ויעביר יום עיון על קצה המזלג לכל מי שפיתוח יישומים ל Windows Phone 7 מעניין אותו.

הנושא של פיתוח ל Windows Phone 7 הוא מרתק בגלל שהוא כולל בתוכו מספר רב של נושאים. החל מהקטע המסחרי של פוטנציאל עיסקי שיווקי שבו מיקרוסופט מספקת מימשק סופר נוח ופשוט לשיווק היישום שלך לקהל היעד. דרך הנושא של הבנת עקרונות ה UI ושילוב היישום שלך בצורה שקופה למשתמש מבלי לאבד את יכולות מימשק המשתמש היחודיות שלו. דרך בחירת טכניקת פיתוח ושילוב הישום שלך בעולם של מימשקי Web ורשתות חברתיות. בחירת פלטפורמת פיתוח מתאימה שהבחירה בה מספקת גם כיווני שיווק נוספים, Silver Light או XNA Studio. דרך תהליך הפיתוח עצמו ושימוש נכון באמולטור ובטלפון (כשיהיה זמין). וכלה בכל הנקודות הקטנות של אריזת המוצר והכנתו להפצה בהיקף כל כך גדול.

זו לא פעם ראשונה שאני מזכיר את הנושא של Windows Phone 7 בבלוג שלי, ולמעשה התחלתי לדבר על הנושא הזה עוד בהתיחסות שלי לכנס MIX.

יוחאי (כהרגלו) כותב כרגע ספר על הנושא. ויום העיון שהוא יעביר ב 26/5/10 הינו לא רק הזדמנות להכיר ברמת על את הנושא אלא גם הזדמנות לשמוע מפי הסוס ממש על כל הנושא המרתק הזה.

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

intWp7

טכניקות חיוניות לניהול פרויקטי תכנה עם Juval Lowy ומתנות למתענינים.

במסגרת הפעילות של Juval Lowy מחברת IDesign Inc באירופה, הוא יחצה את ארצנו בסוף יוני ויעביר סדנה בת יומיים בשם Essential Project Management Techniques.

idesign_1 LinkedInJuval

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

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

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

אז להלן כמה פרטי מידע טכניים בקשר לפעילות של Juval בארצנו שכדאי לכם לדעת עליהם:

לטובת כל מי שמעונין לדעת מתי Juval חוצה את ארצנו פתחתי קבוצה ב LinkedIn ששמה Juval Lowy from IDesign in Israel. אני אדווח לקבוצה הזו על כל ביקור של Juval בארצנו, כבר בשלב התכנון וגם אתיעץ עם הקבוצה לגבי בחירת הנושאים ש Juval יעביר בארץ. כאות הוקרה על הטירחה שבהרשמה לקבוצה, אנחנו נגריל מדי פעם מתנות בין חברי הקבוצה הנאמנים.

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

מידע נוסף על הסדנא ועל ארועים נוספים ש Juval יהיה מעורב בהם בארץ, ניתן יהיה תמיד למצוא בדף של IDesign באתר של חברת ידאג.

מפגש ראשון בסדרה של נושאים ב-SQL Server למפתחי NET.

אמש התרחש המפגש הראשון בסדרה של ארבעה מפגשים על נושאים ב-SQL Server למפתחי NET. המפגש הראשון עסק ב Entity Framework 4.0 ו LINQ. המפגש הבא יערך ב 26/5 ויעסוק ב T-SQL למפתחים. המפגש השלישי ב 6/7 יעסוק ב כתיבת קוד NET. - י בתוך בסיס הנתונים והמפגש האחרון ב 10/8 יעסוק בניהול מסדי נתונים. הסדרה מועברת על ידי מרצים שונים, כל מרצה בתחום התמחות והיא חריגה בנוף הארועים. קודם כל המפגש הוא של שעתיים ומנוהל בסגנון של כיתה ולא של מפגש קבוצות משתמשים. הנושאים ממוקדים לקהל היעד. והנושאים הם טכניים ומעשיים ולא הדגמות שיווקיות.

הנושא של מה יכול המתכנת לעשות עם SQL ועם נתונים בכלל, הוא נושא שבדרך כלל מתכנתי NET. לא חשופים אליו יותר מדי. יש אמנם קבוצת משתמשי SQL, אבל מי שבא לשם הם בעיקר DBA – ים שלא מתעסקים יותר מדי עם תכנות, ובטח לא עם #C. היתה באמת חסרה בשטח הדרכה והסבר על נושא החידושים בעולם הנתונים, לקהל יעד ספציפי של מתכנתים. סדרת ההרצאות הזו היא בדיוק סגירת הפער בנושא עולם הנתונים לכל מי שעוסק בתכנות. אני לא יודע של מי היה הרעיון לעשות את סדרת ההרצאות הזו, אבל זה רעיון טוב, בזמן ובמקום. לדעתי כדאי להרחיב את העיקרון של סדרות נושאיות ממוקדות, גם לנקודות אפלות אחרות.

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

  pj01 001 IMAG0025

IMAG0026

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

ארוע השקה Project 2010 במיקרוסופט

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

הארוע נפתח בארוחת בוקר קלה (לא אכלתי, אני בדיאטה) עם תערוכת שותפים. היו ארבעה שותפים להשקה, חברת P. Z. Projects (הטמעה מוקדמת במשרד המשפטים), חברת Matan (הטמעה מוקדמת בחברת חשמל), חברת Orantech (הטמעה מוקדמת באמדוקס) וחברת Neway. שלושה מהם פתחו דוכן ואילו הרביעי בחר להיות אינקוגניטו.

pj01 009pj01 010

pj01 012 pj01 013

את היום פתח סער רוזנברג, אחראי המוצר במיקרוסופט, שסיפר על החידושים העיקריים. מימשק משתמש יותר קל ופשוט לתפעול לכל מי שמעורב בפרויקט (ובעיקר למנהל הפרויקט). מימשק ה Web המשופר. נושא ה Portfolio management שהוא חולם חדש ומעניין. התחברות קלה יותר למערכות אחרות של מיקרוסופט, וכאלה שאינן מיקרוסופט. והמון יכולות דיווח וניתוח עם BI מובנה. מי שמעורב כמוני בעולם פרויקטי הפיתוח (שזו רק תת מחלקה אחת בעולם הענק של ניהול פרויקטים), נתקל הרבה במשתמשי TFS, שלא מנצלים אפילו שבב, מהיכולות דיווח של הכלי. אני מניח די בוודאות, שגם כאן, בעולם ניהול הפרויקטים, יקח זמן עד שהמשתמשים יפנימו את היכולות המובנות של ה BI במערכת ה Project 2010 החדשה.

pj01 015

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

pj01 023 

אחר כך עלה עידו שטיין מחברת מתן, ודיבר על כלי התכנון, הנוחיות הרבה יותר של שימוש ב web Access לתכנון תוכניו העבודה. ה Client הלא Web –י הוא ה Project Profesionl ועידו כיסה גם אותו. כוסו גם שיקולי תכנון של עובדים מול פעילויות, ושיקולי עומס וחלוקת עומס, לא נשכחו גם תקליכי ביצוע ודיווח. ההדגמה כיסתה איתור חכם של משאבים, והתמקדה המון בנוחית הרבה של ה UI בכל המשימות השונות, UI שמתאים את עצמו למה שאתה עושה. אני נתקל עוד הרבה בשטח באנשים שמשתמשים ב Visual Studio 2010 כאילו הוא Visual Studio 6, וזה תמיד מרתיח לי את הדם. אין טעם בכל היכולות היפות הללו, אם המשתמשים לא משתמשים בהם. זה האתגר החשוב ביותר לדעתי למטמיעים של המערכות הללו. זה דורש קודם כל הכרה מצד הלקוח, שהיכולות הללו חוסכותת לו כסף, ולכן כדאי לו להקדיש את הזמן הנדרש ללימוד שלהם.

 kj05 001

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

לאחר ההפסקה עלה שמוליק בר מנואי, שדיבר על השילוב של המערכת ב SharePoint, ועד כמה התשתית הזו נותנת כלים חזקים למשתמש. יש לציין בהקשר הזה, שהמון מהיכולות החזקות של TFS, נובעות מהיכולות של ה Share Point שעליו הוא מבוסס. כך שלא הופתעתי יורת מדי לגלות ששילוב כלים ותוכנות קימים הופכים למשהו קל, כשאתה משתמש בתשתית המתאימה. יכולות התשתית מקלות על המון דברים: תהליכי Workflow, התחברות למימשק דואל, ניהול רשימות, טפסים, דפי משתמש וכל שאר הדברים, שהם טרויאליים כאשר WSS עומד מאחוריהם. כמובן שהתחברות ל Office היא חלקה לחלוטין (אפילו ל Visio), ה Outlook (אם יש Exchange) מקבל מכפלות כוח. וכמובן יש קישור (שישתפר) ל TFS וגם למערכת Dynamics שעוד לא נפוצה עדיין בארץ. וכמובן מימשק מפתחים נוח אם מה שבא מהקופסא לא מספיק לך (או אם אתה חבר בארגון עם שגעון שליטה).

kj05 006

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

 kj05 017

סער סיכם ואמר תודה.

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

ארוע Imagine Cup 2010 הרצאות טכניות

לאחר ההקדמות הראשונות גיא בורשטיין על הפודיום עם SilverLight ו Hard Rock וכמובן Pivot עם בר רפאלי ואחר כך Photosynth הכל טכנולוגיה שקשורה בדרך זו או אחרת ל Deep Zoom. אחר כך Bing Maps עם Street Side ו Street Side Photos את הטלסקוף ובגלל שלגיא יש חולשה למצייץ גם את TwitMap. היה שם כמעט כל מה שהזכרתי בפוסטים שלי מ MIX2010. גיא קינח ב Natal של ה Xbox (סרט הפרסומת הטחון כבר עד לעיפה לדעתי, אבל זה כנראה רק בגלל שכבר ראיתי אותו חצי מליון פעם)

G2 076 

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

g3 001 g3 019

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

g3 023 g3 027

ואז קרתה הפסקת חשמל ויצאנו להפסקה. המשך יבוא איל"ז.

יישום ה Windows Phone 7 הראשון שלי

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

אני תמיד נוהג להתקין מערכות CTP על מכונות וירטואליות, אז ניסיתי, ה Virtual PC עבד נוראאאאאאא לאאאאאאאט. ובשניה שעשיתי Run ליישום הראשון שלי, הוא קרס עםן מסך כחול וקוד 12. זו פעם ראשונה שנתקלתי במסך כחול קוד 12, ומסתבר שזה Trap בלתי צפוי בגרעין מערכת ההפעלה. חקרתי קצת את ה Dump והגעתי למסקנה שזה חסר סיכוי, ועברתי ל Plan B.

למי שלא יודע יש חברה קטנה ובלתי ידועה, שמייצרת מוצר שדומה קצת ביכולות שלו ל Virtual PC 2007. ואני לא מתכוון ל Virtual Box של אורקל, אלא למשהו פחות מוכר, ה workstation של VmWare.

הסיבה שישי לי בכלל עותק (בתשלום) של המוצר הזה, נובעת מבעיה קטנה שהתעוררה לי עם מערכות ההפעלה של מיקרוסופט. אני עושה המון הדגמות ומחקרים כחלק מעבודתי השוטפת. לצורך זה אני משתמש המון במכונות וירטואליות. ה Windows Server 2008 R2 עובד רק בגירסת 64 ביט. מצד שני, למרבה ההפתעה, ה Virtual PC 2007, וגם הדגם המודרני יותר שלו עבור Windows 7, אינם תומכים במערכות הפעלה של 64 ביט. מה שאומר שכדי להריץ על מכונה וירטואלית, את Windows Server 2008 R2, אני צריך ללכת למתחרה. מה שנקרא יופי נחמה.

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

הסיבה לכך שהכל רץ לאט על מכונות וירטואליות, זה בגלל שגם הסימולטור של ה Windows Phone 7 וגם שאר סביבת הפיתוח, משתמשים המון ב GPU על מנת לייצר גרפיקה איכותית. ל Virtual PC אין בכלל תמיכה ב GPU ול VmWare Workstation יש קצת והם מדברים על תמיכה טובה יותר ב GPU בגירסא 7 החדשה שאותה ולא הספקתי לבדוק עדיין. בכל מקרה, מסקנה ראשונה מכל הנסיונות האלה, אם אתה רוצה לפתח יישום של Windows Phone 7 על מכונה וירטואלית, לפחות בשלב הנוכחי של טכנולוגית הוירטואליזציה השולחנית, תשכח מזה.

אז עברתי ל Plan C. התקנתי התקנה נקיה של Windows 7 64 bit על מכונת הנסיונות המשנית שלי (זו עם ה 4 יע"מים) ועליה התקנתי את מערכת הפיתוח, והכל רץ במהירות סבירה.

אז לאחר שהכל עבד, התחלתי קודם כל בחקירת ה Windows Phone 7. כמובן שאין לי מכשיר אמיתי, אפילו להחזיק ביד אחד כזה, החברה של מיקרוסופט R&D, סרבו לתת לי ב Think Next 2010. אבל יש אמולטור. אז הפעלתי את האמולטור סתם ככה (יש לו אוסף פרמטרי הפעלה מרשים, אבל זה בפוסט אחר איל"ז). הישום היחידי שיש שם מהיצרן הוא ה IE. אז כמובן שגלשתי לראות איך אני נראה על ה Windows Pone 7, אז אני נראה ככה:

wp7ie

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

טוב אז לא התיאשתי ועשיתי את ה Hello World הרגיל, וזה עבד בלי בעיות במכה ראשונה והנה ההוכחה:

wp7firstapp

יש לי עוד הרבה מה לספר לכם על פיתוח ב Windows Phone 7, זו מערכת מאד מענינת מבחינת יכולות. והשילוב של SilverLight ו XNA Game Studio וכמה צעצועים נוספים (Expression Blend חינמי). הופכים את הפיתוח ל Windows Phone 7 לנושא שדורש לימוד. לא בגלל שהוא קשה, אלא בגלל שמרוב אפשרויות, הבחירה של האפשרות הנכונה, המתאימה, והטובה ביותר, ממגוון האפשרויות הרחב, הופכת להיות החלק החשוב יותר התהליך.

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