Show notes
רן, אלון, ודותן בפרק מספר 58 של באמפרס (369 קוסמי למניין רברס עם פלטפורמה) - סקירה של טכנלוגיות ודברים מעניינים מהזמן האחרון. רן - מקום נחמד להתחיל - repository בשם Hacker tools - מעניין הקדמה בסיסית אך כתובה היטב לכלים, שמיועדת כביכול להאקרים אבל רלוונטי גם מפתחים, אנשי אופרציה ועוד.מעיין checklist נחמד של כלים שימושיים, שכל מי שנמצא בעולם הזה כנראה כבר מכיר, ועדיין נוח וכתוב טוב - איך עושים backup? איך מתחברים ל-Remote Machine? ענייני אבטחה ועוד הרבה.בלוג-פוסט בשם Operable Software - איך כותבים תוכנה שקל לתפעל?מתחיל בסיסמאות מסוג “Simple is Complex” ואומר שכל מערכת פשוטה בסוף מסתבכת מתחת לפני השטח, כי המציאות יותר מורכבת ככל שמסתכלים מסביב ולעומק - ומה שצריך זה לא בהכרח פשטות אלא מודל מנטלי נכון של המערכת.לדוגמא - מפה של עיר עבור מערכת רכבת תחתית: ההיבט הגיאוגרפי פחות רלוונטי עבור הנוסעים, ויותר התחנות עצמן והקשרים בינהן. זה מודל פחות מדויק גיאוגרפית, אבל מאפשר מודל פשוט יותר עם מידע שקל יותר לתפוס ולהבין.ההשלכה על עולם התוכנה - איסוף לוגים או כל מערכת Monitoring או Visibility לדוגמא, מצריך חשיפה של אלמנטים שונים, אבל חשוב להבין מה חשוב באמת - לא כל שורות הלוג או כל ה - Metrics, על מנת שלא להציף את המשתמש ולהפוך את המערכת ללא שמישה.יכולים להיות כמה מודולים שונים של המערכת עבור משתמשים שונים שחושפים מידע שונה.חשוב לשים לב שההפשטה בשלב הראשון נובעת מהסתכלות על איזורים שונים כעל Black-box, וגם שמערכת משתפרת ומתכנסת עם הזמן (למשל - בתהחלה יש הרבה לוגים ועם הזמן מבינים מה רלוונטי), לפחות בתיאוריה.לא קל למצוא את המודל הנכון ויש הרבה ניסוי וטעייה בהתחלה, אבל מציאת המידע הרלוונטי (והמודל שמדגיש אותו) חשובה על מנת לבנות מערכת שעובדת כמו שצריך - ואת המודל הזה חשוב לבנות מראש.עוד שיקול הוא שבפרטים הקטנים השינויים יותר מהירים - ומודל מנטלי כללי אמור להיות יותר רובסטי ברוב המקרים - וכמובן שצריך לתקף את זה כל הזמן ולראות שעדיין רלוונטי.פרויקט קוד פתוח שרן עבד עליו לא מזמן - Kafka replication test suiteמתוך עבודה עם Multi-regions ורצון לבדוק את יכולות השכפול (Replication) של Kafka בתנאים אמיתיים - כמויות מידע אמיתיות (או לפחות נגזרת שלהם), Clusters אמיתיים, Latency אמיתי (אוקיאנוס בין ארה”ב לאירלנד…) וכו’.בדיקה של ביצועים, האם כל ההודעות באמת מגיעות ליעדן, ועוד.הפרויקט משתמש בשתי טכנולוגיות עיקריות - Kubernetes ו - Go יש Producer ו - Consumer מאוד ספציפיים שיודעים לעבוד אחד עם השני עם פרוטוקול מוגדר וכך אפשר לבדוק שכל ההודעות אכן הגיעו ובסדר הנכון (עם חלוקה פנימית לנושאים)כל זה רץ על שני Clusters שונים של Kafka, עם כלי רפלקיציה ביניהם - בעיקר uReplicator, (במקור מ- Uber). בנוסף, תוך כדי הניסוי מוזרקות תקלות, שיהיה מעניין.אין הנחות מיוחדות - Vanilla clusters של Kubernetes.בסה”כ שני Clusters עם כמה עשרות Nodes בכל אחד, עם תעבורה משמעותית ביניהם -שורה תחתונה: הכל עובד, לפעמים קצת בעיות Performance.בונוס - הצוות שכתב את uReplicator ב- Uber אהב ואמר זה ישמש לבדיקת הפיצ’רים הבאים :-)כל הטוב הזה הוצג ע”י רן ב-Meetup של Go Israel (בפתח תקווה!), אבל זה כבר קרה בין הקלטת הפרק לפרסום - למתעניינים: יש מצגת.כלי שנקרא Git History - מאפשר לראות את כל ההיסטוריה של Git Repository בצורה ויזואלית נוחה.ה - Commits ושורות הקוד עפים לצדדים, ה - Diff נראה יפה, קצת כמו ויזואליזציה של מסע בזמן (או הכחדת חצי יקום). צעצוע נחמד.עמוד פייסבוק בשם My Tech Life - אנימטור ישראלי שמאייר את חייו כעובד היי-טק בישראל.קריקטורות יצירתיות על ביזנס, תרבות (מישהו אמר משקפיים נגד ספויילרים של משחקי הכס?) ועוד.סאגת AWS / Elasticsearch - כבר קרה לפני יותר מחודש ועדיין - AWS יצאו בהצהרה ש Elastic Search “לא מספיק פתוח”, ושהם יספקו מוצר “אמיתי” פתוח - בחינם.בגדול - לקחו הרבה פיצ’רים High-end והנגישו אותם בחינם. שזה נחמד, רק שזה בדיוק הענף עליו יושב המודל העסקי של Elastic (ורוב חברות הקוד הפתוח).ב-Elastic פחות אהבו את זה.למיטיבי שמע - יש פרק קרבורטור (365) שלם בנושא.תקציר - תעשיית הקוד הפתוח מבוססת על שכבת בסיס חינמית עם פיצ’רים מתקדמים (ותמיכה) בתשלום. ב-AWS אמרו תודה, לקחו את השכבה החינמית והנגישו את הפצ’רים המתקדמים כחלק מ…

