ng-conf 2015 – סיכום היום הראשון

אתמול נערך יום ההרצאות הראשון של ng-conf 2015, למי שלא מכיר – ng-conf הינו כנס שנתי המופק בשיתוף גוגל ומופנה לקהילת ה- AngularJS הבינלאומית.
במהלך היום היו המון הכרזות וחדשות מעניינות, אנסה לסכם עבורכם את הדברים העיקריים והמשמעותיים ביותר שאני קיבלתי עד כה.

Welcome

הועבר ע"י: BRAD GREEN ו- IGOR MINAR

בראד הינו מנהל פיתוח בגוגל, בין היתר הוא מנהל את הפרוייקט של אנגולר, ואיגור כרגע מוביל את אנגולר 2. שתי הכרזות משמעותיות קיבלנו מהם בהרצאה הזו, הראשונה הייתה בנוגע ל- Angular 2 – שוחררה גרסאת Alpha Preview והושק אתר חדש. והשנייה הייתה בנוגע ל- AtScript – גוגל תשתף פעולה עם מיקרוסופט, AtScript ישולב לתוך TypeScript וישוחרר ב- TypeScript 1.5. בנוסף, נאמר שהקבוצות של Angular ו- Angular Dart יאוחדו, כעת כולם יעבדו עם TypeScript ובסופו של דבר הקוד של אנגולר יומר הן ל- JavaScript והן ל- Dart, מה שיאיץ את פיתוח הפריימוורק ויעשה טוב לכולם. שמחתי לשמוע גם שהגרסה החדשה של אנגולר תושק עם Style Guide רשמי, תקח את עניין ה- performance ברצינות ותגיע עם Immutable data structures.
בנוגע למיגרציה מאנגולר 1 לאנגולר 2, מה שמדאיג ומפחיד לא מעט מתכנתים בקהילה, בראד ציין כי בגוגל יתחילו להעביר אפליקציות פנימיות לגרסה החדשה בסביבות חודש מאי, במהלך הדרך הם ילמדו, יסיקו מסקנות וימשיכו לעדכן את הקהילה. נראה שהם לוקחים את העניין הזה ברצינות.

State of 1.x

הועבר ע"י: PAWEL KOZLOWSKI ו- LUCAS GALFASO

פבל ולוקס סקרו את אנגולר 1 מבחינת הקהילה, המצב הקיים והחזון של הפרויקט לעתיד. הם ציינו ש- 50% מה- commits באנגולר בעצם הגיעו מהקהילה, הכריזו על 2 חברי ליבה (core contributors) חדשים, ביניהם נציג ישראלי ראשון – שחר תלמי. הם גם דיברו על כל מיני שיפורים ושינויים שנעשו (מפורטים במצגת בהמשך), אמרו שגרסת 1.4.0-RC.0 תגיע כבר בשבוע הבא והמליצו לכולם לעדכן לגרסאות החדשות ביותר ולא להשאר מאחור. בנוסף הם גם דיברו על המשך הפרויקט לגרסא 1.5 ואולי גם 1.6 וציינו שחלק מהפיצ'רים בגרסאות הבאות יהיו בעצם פיצ'רים שילקחו מאנגולר 2, כך שגם מי שישאר עם הגרסא הקיימת יוכל לקבל חלק מהפיצ'רים המגניבים של הגרסא החדשה. לסיכום, הם קראו לכולנו לקחת חלק פעיל בפרויקט, להציע פיצ'רים, לעבוד על באגים ולעזור לפרויקט לצמוח.
קישור למצגת: http://goo.gl/G5Kwkw

The new router

הועבר ע"י: BRIAN FORD

בריאן הוא הבחור שאחראי על הראוטר החדש. הוא התחיל עם דוגמאת קוד שבה הוא סקר אותו, עבר על ה- API והסביר איך הוא עובד כבר בגרסא 1.4. הוא אמר שהם ראו שהמון אנשים מאוד אוהבים את ui-router והם לקחו ממנו השראה בתכנון הראוטר החדש, ואפילו ציין שהם יעבדו על מיגרציה מ- ui-router במטרה להקל על הקהילה ולעזור לכולם לשדרג. הוא הוסיף שהראוטר החדש משתמש ב-route-recognizer, נתן קרדיט ל- Ember שפיתחו אותו ואמר תודה ל- Rob Eisenberg ולחברי צוות נוספת על עזרתם. למי שלא יכול לחכות, עלתה גם דוקומנטציה ראשונית.

Prototyping with Angular? YES!!

הועבר ע"י: KELLY KNIGHT ו- DIRK GINADER

קיילי ודירק הם UX Engineers בגוגל והם דיברו על איך הם עובדים עם אנגולר ליצירת prototypes והציגו מס' שיטות שהם משתמשים בהן. הם דיברו על angular-google-analytics – פרויקט שעוזר לשלב את Google Analytics באפליקציות אנגולר בקלות, הזכירו את cubic-bezier – אתר שמאפשר לבנות אנימציות ולראות אותן בלייב, הם הראו כיצד הם בנו prototypes הניתנים לשינוי בקלות באמצעות ה- URL, ואפילו הציגו prototypes הנשלטים באמצעות קול (ע"י Web Speech API), הם גם דחפו לשימוש ב- ngAria, מודול המשפר את נגישות האפליקציות שלנו בצורה כמעט אוטומטית ומאוד פשוטה. לסיום הם המליצו להשתמש ב- Google Sheets בתור דטא-בייס ל- prototypes בשל היותו מאוד פשוט וקל להטמעה.

Fast from the Start

הועבר ע"י: JEFF CROSS

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

Creating Container Components with Web Components and Angular

הועבר ע"י: KARA ERICKSON ו- RACHAEL L MOORE

ריצ'ייל וקרה הסבירו כיצד הן משתמשות ב- Directives במהלך העבודה שלהן. הן הסבירו קצת על Web Components ו- Shadow DOM והציגו יוז-קייס לדוגמה, הן סיימו עם השוואה בין Directives באנגולר 1 ל- Component Directives באנגולר 2.

ngTasty

הועבר ע"י: LEONARDO ZIZZAMIA

בהמשך להרצאה על performance ו- benchpress, לאונדרו הסביר כיצד יש להתייחס לביצועים כאשר מפתחים רכיבים שצריכים לעבוד מהר. הוא הסביר כיצד לתכנן, למדוד ולזהות מקומות לשיפור ונתן סיישן hands-on שבו הוא הריץ את benchpress על ngTasty והסביר כיצד זה עזר לו במהלך הדרך כשהוא פיתח את הספריה.

TypeScript and ES6

הועבר ע"י: DAN WAHLIN ו- ANDREW CONNELL

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

Community Building How-To: Make More Angular Devs Now

הועבר ע"י: JUDY TUAN

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

ng-wat?

הועבר ע"י: SHAI REZNIK

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

Accessibility Design Made Easy

הועבר ע"י: JULIE RALPH

ג'ולי מובילה את Protractor, כלי לבדיקות E2E המיועד לאפליקציות אנגולר. במהלך ההרצאה גו'לי דיברה על plugins ל- Protractor והסבירה כיצד הם עובדים, אך עיקר ההרצאה היה בנוגע לנגישות (Accessibility) – ג'ולי הסבירה מדוע המקום הנכון לבצע בדיקות נגישות זה בבדיקות ה- E2E, הסבירה כיצד להשתמש בפלאגין לבדיקות נגישות החדש, כיצד להפעיל את האפשרות ב- Chrome DevTools ועברה בקצרה על הפלט של בדיקה לדוגמה שהיא הריצה על הדוקומנטציה של אנגולר.
קישור למצגת: http://goo.gl/wgXRwb

Why Realtime Matters

הועבר ע"י: JAMES TAMPLIN

ג'יימס הסביר מה זה בעצם Real-time data, סקר את Firebase והסביר כיצד הוא עובד. במהלך ההרצאה ג'יימס הכריז על ההשקה של AngularFire 1.0 ופירט על הפיצ'רים השונים שהספריה מכילה. פיצ'ר נחמד שהוצג היה בהקשר של infinite scroll והוא הוצג באפליקציית ionic – ג'יימס הראה כיצד במס' שורות קוד בודדות הוא משלב pagination ומושך דינאמית מהשרת מידע נוסף במהירות ובקלות. לסיום ג'יימס הציג 2 פיצ'רים נוספים – הראשון נקרא Private Backups והוא מאפשר לנו לייצא את כל המידע שלנו מ- Firebase, השני הוא SEO Support והוא מיועד לשפר את ה- SEO של האפליקציה שלנו ולהפוך אותה נגישה יותר עבור מנועי החיפוש השונים.

ngModelOptions in 5 minutes

הועבר ע"י: KENT C. DODDS

קנט הציג את ngModelOptions, פיצ'ר שהתווסף בגרסה 1.3 ומאפשר לנו לשלוט על עדכון המודל מה- View. ב- 5 דקות קצרצרות הוא הסביר על הפיצ'ר והציג את ההגדרות השונות שניתן להחיל וסיים עם הפניה למאמרים נוספים ב- egghead, למי שרוצה להתעמק יותר.

How to Teach Angular to your Kids

הועבר ע"י: KATYA EAMES

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

Run digest cycle in web worker

הועבר ע"י: DR. GLEB BAHMUTOV PHD.

ההרצאה של גלב התמקדה ב- scope וב- digest cycles באנגולר בהקשר של ביצועים. הוא הראה מקרה שבו ה- digest היה ארוך ותקע את הממשק, לאחר מכן הציג פתרון שבו הוא מעביר את ה- digest ל- web worker – כך שהוא ירוץ על thread אחר וישאיר את הממשק רספונסיבי.
קישור למצגת: http://slides.com/bahmutov/run-digest-cycle-in-web-worker

Sasqwatch is real

הועבר ע"י: WILLIAM SCOTT MOSS

וויליאם דיבר על performance ובעיקר על watchers ו- digest cycles. הוא הדגיש שלא צריך להשתמש בכל מה שאנגולר נותן ושצריך להתייחס להשפעות של היכולות המובנות על הביצועים – בהקשר הזה הוא עקץ עם משפט שמסכם את זה בצורה נהדרת לדעתי: "[כשאתם עושים הכל עם אנגולר] המשתמשים שלכם מאוכזבים, אבל לפחות המתכנתים שלכם עושים חיים". וויליאם המשיך והציג אפליקציה אמיתית שדרכה היא המחיש את הדברים, הוא פירט בנוגע לדברים שצריך ולא צריך לעשות, הציג best-practices והמליץ להשתמש באופטימיזציות הקיימות באנגולר 1.3 על מנת לשפר את ביצועי האפליקציה שלנו.

Ionic + Angular: Superpowers for Mobile App Development

הועבר ע"י: ADAM BRADLEY

אדם, היוצר של Ionic, הציג את המטרות והחזון של הפרויקט. הוא הציג מס' פיצ'רים מעניינים כמו collection-repeat העובד בדומה ל- repeat אך מרנדר רק את הפריטים המוצגים על המסך (כמו ב- UICollectionView של iOS), הסביר כיצד עובד ה- Cached views והציג פיצ'ר בשם "Swipe to go back" המאפשר לחזור אחורה באמצעות swipe כמו באפליקציות נייטיב. אדם הציג המון פיצ'רים נוספים, נתן live demo עם אפליקציה לדוגמה, הציג את ionicions – פונט לאייקונים, הראה כיצד ניתן לעבוד עם ה- console כאשר עובדים עם מכשירים אמיתיים ואימולטורים, הציג את ionic.io ואת השירותים החדשים שבאופק, הכריז רשמית על השקת Ionic 1.0 והדגיש שהצוות שלו יעבוד עם הצוות של אנגולר במטרה לתמוך גם באנגולר 2.
קישור למצגת: http://adamdbradley.github.io/ionic-present/

Angular Behind The Scenes

הועבר ע"י: RODRIC HADDAD

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

לסיכום

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

עדכון: למי שמעוניין, סיימתי לכתוב גם את סיכום היום השני של ng-conf 2015.

את הפלייליסט עם כל ההרצאות ניתן למצוא כאן:

תגובה אחת בנושא “ng-conf 2015 – סיכום היום הראשון”

כתיבת תגובה

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