Sunday, November 14, 2010

Modern Perl by chromatic

There's a new book that introduces the Perl programming language. It was written with the participation of the community. The book is also available freely.
Modern Perl book on the publisher's site: http://www.onyxneon.com/books/modern_perl/index.html

Thursday, November 11, 2010

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


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




העיסוק כולו נשמע לי מאוד פופוליסטי. חיפשתי מידע על החוקר ועל המעבדה שלו ופרסומים שלו בנושא כדי להבין באמת במה מדובר. אז הנה מה שהעלתי:
ד"ר רועי כהן קדוש, חוקר, בין השאר, קוגניציה מספרית ואת הרכישה של הבנה מספרית, פונקציות של האונה הקודקודית במוח ואת תפקידן בייצוג מספרי ובקנה מידה. עיקר העניין שלו, על פי העמוד שלו ב-Oxford Neuroscience, הוא בהבנת המבנים במוח והתהליכים במוח שמאפשרים תפיסה, ייצוג, למידה ושימוש במידע מספרי בפרט ומידע שקשור לגדלים ולקנה מידה בכלל. הנה קישור לפרסומים המדעיים שלו. כדי למפות וכדי להבין יכולות ותפקודים קוגניטיביים ותפיסתיים החוקר משתמש בשיטות שאינן חודרניות כמו EEG ו-fMRI שמאפשרות טכניקות שונות לגירוי מוחי ולהצגה של התוצאות.
במחקר המדובר נתנו לקבוצה קטנה בת 15 סטודנטים בגילאים 20-21 ללמוד סמלים שמייצגים ערכים מספריים שונים. נמדדו הזמנים כדי לבדוק כמה מהר וכמה מדוייק יוכלו המתנדבים להשלים פתרון סדרה של חידות מתמטיות שמבוססות על אותם הסמלים. המתנדבים קיבלו לעיתים אינבו (פלסבו) ולעיתים זרם חשמלי של מיליאמפר אחד מימין לשמאל או משמאל לימין באונה הקודקודית של מוחם. הנחת יסוד במחקר היא שהאונה הקודקודית במוח אחראית על תפקודים מתמטיים שהכרחיים לצורך פתרון בעיות מתמטיות (כבר ב-2007 פרסם אתר הידען את ההנחה הזאת במחקריו של ד"ר רועי כהן-קדוש ואפשר למצוא את המאמרים המקוריים בעמוד ההפרסומים של החוקר). התוצאות מראות שהמתנדבים שקיבלו עירור חשמלי מימין לשמאל הגיעו לביצועים טובים יותר במשימות לאחר מספר סדרות של ניסוי. לעומתם, אלה שקיבלו את העירור החשמלי משמאל לימין ביצעו באופן ניכר פחות טוב, עד כדי חיקוי תפקודם של ילדים בני 6. הקבוצה שקיבלה אינבו השיגה תוצאות שבין שתי הקבוצות שקיבלו את הזרמים.





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

Tuesday, November 9, 2010

חולצה מגניבה


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

כל יום

אני קם חתיך

אבל וואלה היום...

הגזמתי!


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

על קריאה יעילה -- מה אפשר לעשות כדי שהלמידה מקריאה תהיה יעילה


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


התעסקתי לא מעט עם השאלה מה הופך ספר לספר קל לקריאה ויעיל ללימוד. שאלתי את עצמי גם מה הופך אותי כקורא לקורא וללומד יעיל בעת הקריאה בספרים. הנה כמה תובנות, לא בהכרח לפי סדר החשיבות:
  1. לנסות לקרוא בסביבה שבה הטמפרטורה אינה גבוהה מידיי ושאינה מקפיאה. באופן אישי, אני מעדיף בלמידה ובפעילות שדורשת ממני ריכוז שיהיה מעט קר יותר מאשר חם מידיי. אני לא מוצא את עצמי מתרכז ביעילות כאשר חם לי. טמפרטורה של 21-25 מעלות צלזיוס טובה לי מאד ללמידה ולריכוז.
  2. לשתות מים (לא מרגישים לפעמים שמתייבשים וכשחסרים נוזלים המוח שלנו עובד פחות טוב). אני נוהג לקום מידי שעה-שעתיים בעבודה (או בעת לימוד מרוכז), להתפנות ולשתות לפחות 3 כוסות מים. חבל על השיניים ועל הגוף (תנגודת לאינסולין, זאת בעיה!) משתייה של משקאות ממותקים -- מים זה הכי טוב, לדעתי.
  3. לא לרוץ עם הקריאה. לעצור מעת לעת. כמה שנעצור יותר להרהר במה שקראנו ובמשמעות, כך נצטרך לשנן פחות ויותר מהחומר ייזכר באופן עצמאי. קטע שגורם לי לקרוא אותו בערפול אולי דורש להאט ולנסות להתמודד איתו שוב ושוב. לפעמים הערפול הוא דווקא סימן שהגיע הזמן לעצור ולפוש מעט לפני שמסתערים מחדש ומנסים להתמודד שוב.
  4. לקרוא ספרים עם עפרון ביד. אני נוהג לסמן ולרשום רשימות בספרים שלי ואם הספר מושאל מהספרייה או שזה עותר שאינני רוצה להשחיתו, אני מחזיק בסמוך פנקס רשימות ואני רושם לי רשימות שאותן אח"כ אערוך ואתייק לי. עצם המחשבה שאני מסמן לי קטעים חשובים, שאני רושם לי רשימות ושאני מחפש משמעות ושאני רושם לי מה אני לומד מהכתוב -- כבר מכניס אותי למצב חשיבה אחר ואני מתעמק במשמעות ובהבנה ואני יוצר לי תנאים טובים יותר להבנה ולזכירה של החומר. העפרון והנייר שימושיים גם בנוסף לצורך התרגילים והמשימות! בספרים שבהם יש תרגילים -- לא להתעצל ולנסות ולהתמודד ולפתור את התרגילים. אני חושב שאנשים כבר השתכנעו מנסיונם, ואם לא, אז מנסיון ומתוצאות של מחקרים רבים: קריאה פעילה (כך קוראים לזה!) משפרת את הלמידה.
  5. חלק מהקריאה הפעילה בעבורי הוא לנסות ללא הרף לחפש דוגמאות מנסיוני ומטרות מעולם המושגים שלי ומחיי שאותן אני יכול לקשור עם מה שאני קורא כרגע. אני מנסה לבדוק טענות עם הנסיון שלי, אני מנסה למצוא היכן בעיסוקיי יועיל להשתמש במידע שאני קורא או בטכניקה שאני מנסה ללמוד. העיסוק המחשבתי הזה, גם אם הוא מאט את קצב הקריאה, הוא בסופו של דבר הופך אותה ליעילה: אני יותר מתעניין בכתוב, יש לו יותר משמעות בעבורי ואני מרגיש שאני קורא לצורך ולתכלית אמיתיים ושימושיים ולא רק דברים בעלמא. אני גם מוצא שהעיסוק הזה מסייע לי לזכור טוב יותר ומביא אותי לשימוש במידע שקראתי במצבים שמפתיעים אותי. פתאום אני נזכר במידע שאותו קראתי מזמן ולא עשיתי בו שימוש כלל והנה הוא הופך בן-רגע לשימושי.
  6. לא להתעלל במוח! כשמרגישים ש-די! אז להפסיק. לא לקרוא כדי לספר אח"כ שקראנו. אם הקריאה אינה יעילה ואנחנו רק מבזבזים זמן, אז מוטב לנצל את הזמן הזה לדברים אחרים (אני ממליץ על שינה או על פעילות גופנית. אני למשל נהנה לעבוד בגינה בין קריאה לקריאה)
  7. קריאה לפני מנוחה ולפני השינה היא יעילה מאוד. לפעמים אפילו חולמים על זה בלילה. קריאה לפני השינה ועם הקימה, מסייעת לשינון טוב של החומר. אני מוצא את זה בעיקר נכון כאשר הקריאה פעילה ומשמעותית (סעיפים 4 ו-5 שכתבתי קודם).
  8. למצוא הזדמנויות לכתוב ולספר לאחרים על מה שקראנו: כתיבה של ביקורת על מאמר או ספר, לסכם חוויות מהקריאה או דברים שלמדנו -- לשוחח עם אחרים על הקריאה ועל מה שלמדנו -- כל אלה מאלצים אותנו לעבד את המידע ולארגן אותו כך שיהיה נוח לשליפה ולשימוש -- זה מכריח אותנו לנסח בבהירות את מה שלמדנו וזה מוכיח את עצמו בעתיד כאשר נרצה לשלוף ממוחנו בקלות את המידע ולהשתמש בו. עוד יתרון הוא שהתהליך הזה מכריח אותנו להתמודד עם המציאות שלפעמים לא הבנו באמת משהו -- אם אנו מתקשים לנסח את הרעיונות במלואם או מתקשים לנסח בבהירות -- כנראה יש לנו בעיה בהבנה ושווה לחזור ולקרוא ולהבהיר את הנקודה הזאת. החזרה הנוספת גם היא סגולה להעמקת ההבנה ולזכירה משופרת של הנלמד.

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



Monday, November 8, 2010

על התמצאות במרחב בזעיר אנפין


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

הנה הקישור למה שאמיר כתב: http://haharoni.wordpress.com/2010/11/07/lesham/

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

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

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

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

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

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

בשלב הבא מסבירים שכאשר אומרים לי שמשהו מימיני אזי אותו משהו נמצא בצד ימין שלי. באותו האופן לגבי צד שמאל.

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

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

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


git


git is a distributed version control system.
It has a reputation of being really cleverly design.
It makes hard things easier and impossible things possible when compared with other version control systems such as CVS, SVN, Perforce and the like.

Check out Mark Jason Dominus' presentation and praises for Linus Torvalds and of git:
http://perl.plover.com/yak/git/

A more detailed exposition and explanations is git from the bottom up.

Sunday, November 7, 2010

חסמב"ה


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





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


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


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




אשמח שהילדים יקראו וישמעו את העלילות הללו.


Rubik's cube

My daughter, Sivan, and Rubik's cube. Read about Rubik's cube in Wikipedia.







מסיבת יום הולדת לנועה

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








































המאבק על המים במזרח התיכון מאת ארנון סופר


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


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

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


גלגולי לשון מאת גיא דויטשר


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

Thursday, November 4, 2010

אורי לביא על בניית צוותים מצליחים



במסגרת ה-TechTalks ב-Outbrain הגיע היום אורי לביא מ-PicScout להסביר את עמדתו על אומנות פיתוח התוכנה, כיצד לטפח צוותים וכיצד לבנות צוותים מצליחים.




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




מה לדעתכם מחזור החיים של מהנדס תוכנה?


(עם או בלי פיצה...?)


טענה: התעשייה מתבגרת (לטובה) יש יותר מפתחים מבוגרים שאינם מנהלים בהכרח.


אנשים נוגעים בקוד בד"כ כ-10 שנים.




המחזור: למידה של שנה שנתיים, עבודה במה שלמדתי, עבודה חדשה בתחום דומה למקום הקודם, העמקה בנסיון, עבודה חדשה -- וחוזר חלילה. אורי טוען שיצא לו לראיין בין 200 ל-400 מתוך 500 ל-800 קורות חיים (הוא כבר לא סופר) ונדמה לו שהמחזור הזה תופס לפחות ב-75% מהמקרים. והוא טוען שזה מחזיק בערך 10 שנים. באלגוריתמים למשל הוא טוען שנשרפים באותו הנושא באותה החברה תוך שנה-שנתיים.




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

software engineer vs. developer vs. coder
הוצג קטע קוד ב- #C והקהל הוזמן לחפש דברים "מסריחים" בקוד. מה שעלה: אובססיה לפרימיטיבים (במקום שימוש באובייקטים), שימוש בפרימיטיבים של סנכרון, סנכרון כפול, שימוש ב-HashCode בקוד מקבילי (כנראה ללא מודעות שיש סיכוי להתנגשויות)...
הוצג קטע נוסף עם פונקציה/מתודה של 136 שורות קוד. פונקציה שמטרתה לקחת תמונה בהנתן URL לא צריכה להיות כל כך ארוכה. (הוצג קטע מהסרט מטריקס שבו רואים קוד רץ ומול המסך המפתח לא רואה את הקוד אבל יודע מה קורה שם). אז למה לא לשבור את הקוד למתודות אחרות ולהוציא החוצה פונקציונליות. משתנים צריכים להיות קרובים למקום שבו משתמשים בהם.
הטענה שיש 100% מאמץ ו-0% אפקטיביות. (הוצג סרטון bad code של uncle bob).
מה צריך לדעת? כלים כלים כלים -- לכל דבר צריך להכיר כלים שונים ופרדיגמות שונות:
IDE ולשלוט בו, טכנולוגיה של שפת התכנות, פרדיגמות שונות של שפות תכנות, אנליזה סטטית של קוד, ארכיטקטורה, בדיקות שונות למיניהן (יחידה, קופסה שחורה, קבלה, לקוח, וכו'...) על כל הכלים שלהן, להכיר HTTP וכלים לניתוח ולפיתוח, מה זה WEB, services, פלטפורמות שונות, מערכות הפעלה שונות, mobile, מסדי נתונים sql ו- nosql, להבין בניתוב ובקרה, אבטחה, continuous deployement, continuous integration ועוד ועוד... -- זה מה שמהנדס תוכנה צריך. זה לא מה שלומדים בלימודים בהכרח ובוודאי לא בהיקף הזה. מי שלא לומד לימודים אקדמיים חסר לו מספיק כלים להיות מהנדס תוכנה. ללמוד לתכנת בלבד זה לא מספיק. מהנדס נדרש ליותר יכולת בקבלת החלטות ובהכרות של כלים ותחומים רבים יותר.
מה לומדים?
שפות תכנות, מבני נתונים, אלגוריתמים, מערכות הפעלה,... -- קחו את הסילבוס של תואר בהנדסת תוכנה של אוניברסיטאות ותראו.
צריך לצעוד בצעדים קטנים (baby steps) וצריך לחבק ולקבל שינויים. הכרחי להיות נלהבים.
הוצג קטע של Miyamoto Musashi שאומר שצריך ללמוד כל הזמן ולשקול יתרונות וחסרונות וכו'. הוזכר הספר The book of five rings.
מה עושה המפתח?
להתאמן -- ולהתאמן הרבה וכמה שיותר זה, לפי אורי להב, מה שמבטיח שלא תהיה שחיקה. יש להכיר מעבר -- וזה באחריותנו האישית.
לקרוא ספרים!
להכיר שפות תכנות. להכיר פרדיגמות תכנות שונות. להיות פוליגליטים.
מה עושה החברה? לדאוג שיהיה כל זה וללמד את המפתחים את כל הנדרש לצורך זה:
להיות קנאים למערכת ה-version control.
מה ה-layout?
ניהול גרסאות.
מדיניות לכל check in -- בדיקות קוד, בדיקות יחידה, אנליזה סטטית וכו', כתיבת הערות ב-commit, לחבר למשימות ולבאגים שקשורים -- קישור למערכות הניהול שלהם.
automatic build system
unit testing
Test Driven Development
Refactoring
code reviews: peer reviews, team reviews -- מעבר למה שעושים ב-commit.
ראשי צוותים חלק מהקוד, חלק מהכרת הקוד, חלק מהאיכות וקרוב לעבודה ולא טובע בניהול -- זה דורש צוותים קטנים.
תחרויות: למשל חצי יום עבודה שעובדים ללא עכבר -- המטרה: לייצר משהו מאתגר שילמדו ממנו. המטרה: להיות יותר אפקטיבי. טענה: זמן פיתוח מתקצר ללא שימוש בעכבר.
טיפול בחורים בידע, technical debts, איך להשלים חוסרי ידע.
Tree Model -- מפגשים חינוכיים של שעתיים-שלוש פעם בשבועיים. מפתח נבחר להציג טכנולוגיה חדשה או POC. הוא מקבל חצי מהזמן שדרוש לזה מהחברה וחצי מהזמן על חשבונו.
לקרוא ספרים!
לעשות book reviews.
להשתמש בכלים הטובים ביותר. להשקיע ולהכיר אותם.
אקוסיסטם: פירמידה הפוכה: לקוחות רבים למעלה, מפתחים אח"כ ולמטה מעט מנהלים. (הפוך מהפירמידה הרגילה)
visibility -- ההפך מ-"יהיה בסדר" ו-"עזוב" ו-"היתה בעיה ברשת..." ו-"זה לא עובד" ו-"ככה צריך לעשות את זה"... -- התבטאויות כאלה מסרסות אפשרות לשקול יתרונות וחסרונות.
אבני דרך, milestones. טענה: איכות וזמנים תחומים גורמים לאנשים כאב ראש מתוך פחד לכשלון. לא לתת לאנשים הרגשה שכשלון הוא משהו שמשלמים עליו ביוקר. כי זה גורם לאנשים להתגונן ולהסתיר. הפתרון: ללמד ולתת דוגמה אישית טובה. לא לפחד מהתחייבות.
A Day at Work --
כמה זמן אפקטיבי יש באמת ביום עבודה?
קפה: 15 דקות
שיחות חולין: 15 דקות
דוא"ל: 30 דקות
קפה: 15 דקות
שקט! עובדים: 45 דקות
דיון מה אוכלים: 30 דקות
ארוחת צהריים: שעה
קפה: 15 דקות
דוא"ל: 15 דקות
שיחות חולים ו-social media: 15 דקות
עבודה: שעתיים
מה יצא? נטו עבודה פחות מחמש שעות... אם אין ישיבות... או הסחות עבודה... אז יש כשלוש שעות עבודה ביום.
צריך להיות מעורב ומשמעת!!
חוק הסחת הדעת: 15 דקות לשלווה. צריך זמן שנדרש לצאת מהסחת דעת ולהכנס לעשייה.
לתת הערכות זמנים, לנתח, להשתפר.
ישיבות קצרות ויעילות.
מתי עורכים פגישות? ביום ראשון בבוקר הכי טוב. זה מקרין עבודה להמשך השבוע. ביום שני בבוקר אפשר קצת גם -- בשאר השבוע לבקר ולנטר ולתקן. הזמנים האידאליים או בבוקר או בערב אחרי חמש -- אחרת זה פוגם בעבודה.
כמובן -- כל הטענות, המסקנות וכו' -- הכל לשיטתו של אורי לביא. ולא שלי. אולי אכתוב מתישהו את עמדתי בדברים הללו.
אמירה נחרצה (שאיתה אני מסכים בהחלט): אי אפשר לשרוד במקצוע הזה בלי להתעדכן ובלי להשתפר! מי שנרדם נשאר מאחור ואז נשאר בחוץ.
היה מעניין.
השיחה הוסרטה. אני מקווה שאזכור לקשר לסרטון לכשיהיה לי קישור.

Bill Slawski on Google patents for ratings and raters


I've been following Bill Slawski's SEO by the Sea for a few years. I enjoy the presentation of search related patents and trends and the exposition of technology used by the big names in the search industry: Google, Yahoo! and Microsoft. Due to my recent intereset in recommendation systems (I now work at Outbrain) I searched back for Bill's posts on recommendation systems, ratings and raters. I came up with quite a lot:


I wrote two comments on that post:

Shlomo Yona 11/03/2010 at 3:20 am
I wonder why not just use the actualaccess to a page through Google as a way to measure popularity — in a way, a Click Through Rate measure — number of actual clicks on the proposed page (link) by google on screen divided by the number of times it was shown

Shlomo
Yona 11/03/2010 at 4:24 am
Apparently, if a user actually clicks the link of a search result, then it means that there’s some sort of agreement with it. In cases where google can “see” (cookie of a google domain or of an affiliate) the page view timing or other clue of user satisfaction from the actual “landing” on the page, then it is an additional indication of satisfaction. So, perhaps raters are not so good and they are biased and not representative?!




While Google is in the search business and advertisements, Outbrain attempts to make its living from promoting content. The readers that get the recommendations come first -- they are offered with the highest quality recommendations, the revenue comes next. It makes sense as in the long run, the more satisfied the readers are the more they click on the recommendations. So, as long as the recommendations are of high quality, the traffic will drive profit, instead of doing it backwards (by attempting to influence and to control traffic with short term revenues as motivation).

See more on A view of Outbrain's algorithms' focus and on Bruni PR about Outbrain. Is Content promotion a new and a profitable way to advertise on the web?