Monday, October 11, 2010

יום כיף לעובדים ולמשפחות אאוטבריין

ביום שישי, 8 באוקטובר 2010, התקיים ארוע לעובדים ב-Outbrain ולמשפחותיהם. הארוע התקיים בחוות הרוכבים בבית אורן.

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
































הנה מתוך המידע על הארוע:

בליבו הירוק והמהמם של הכרמל (מוגנים מה"סערה"....)

כולם מגיעים – יהיה כייף!!!!

להלן התוכנית-

9:30 בבוקר הגעה ל "חווית הרוכבים" בצומת בית אורן

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

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

ומאפה מתוק

במהלך היום כיבוד נוסף..

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

** שיחת פתיחה , התארגנות ויציאה לפעילויות....

לאוהבי האקסטרים –

טום קאר

נהיגה עצמית בכלי שטח חזק עביר בטיחותי

ומסעיר, ידידותי למשתמש ונוח בכל מצבי הנהיגה ( חובה רישיון נהיגה )

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

אתגרים עם נוף מרהיב.

מסלול הנהיגה בהובלת מדריך בנפתולי הכרמל ,

דרכים בטיחותיות אך מאתגרות

* בכל רכב 4 מקומות

* עלייה על הטום קאר מגיל שנתיים


רכיבה על סוסים-

יציאה בליווי מדריכים מקצועיים לרכיבה מהנה

ובטוחה בחורש הטבעי אל רמת - לוביה , ממנה תצפיות מרהיבות

וייחודיות אל "שוויצריה הקטנה", היערות וחורש הכרמל .

למתפנקים -

טיפול מגע התכנסות בפינת זולה הכוללת מחצלות

,מזרונים נרגילות , שש בש, עיתונים , מגזינים .

4 מעסים מקצועיים יעניקו טיפול מגע מפנק ומרגיע של

שיאצו , טווינה ,עיסוי תאילנדי וקלאסי .

.

לילדודס ....

מתחם ג'מבורי

מתחם שמותאם במיוחד לגיל הרך הכולל מתקנים איכותיים שונים

ומגוונים:

ספוגים, מנהרות, נחום תקום, מזרונים, נדנדות חיות, קוביות ומשולשים

ובריכת כדורים.


פינת גן לקטנטנים

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

טרמפולינה-מתנפח גדול

ובנוסף...

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

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

הניווט המהנה יוביל את הילדים ליער הממתקיםבו המון עצים שעליהם תלויות

סוכריות על מקל מתוקות אשר מחכות לילדים שיקטפו אותם !!

בנוסף פעילות משותפת לכולם יחד

המסלול קל ונוח - למשפחות עם פעוטות ניתן לבצע את הטיול עם עגלות תינוק

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

ונינוחה , תוביל את הקבוצה לחניון האגם.

במהלך הטיול יסביר המדריך על צמחיית הכרמל, בעלי החיים, ההיסטוריה המרתקת ,

אנקדוטות מקומיות וההקשר התנ"כי של האזור המופלא.

אוכל -

לאחר כ 5 וחצי שעות מרגע ההגעה ,

מעבר לחלק הקולינרי של היום

ארוחת בשרים עשירה במסעדת הבשרים הייחודית "קאת בלו"

מוסיקת קאנטרי עליזה ברקע

מלצרים חייכנים לבושים כבוקרים יגישו ארוחה עשירה כיד המלך


*
** סיום משוער 15:00~



Thursday, October 7, 2010

slf4j vs. log4j







Idioms for loggers in Java code:






An often used idiom for logger configuration in Java code uses log4j. Following is a code snippet that demonstrates the usage:






Import statement:


import org.apache.log4j.Logger;



Declaration and generation example within a class:





public class Foo {



private static final Logger logger = Logger.getLogger(Foo.class);



Usage example within that class:


if(logger.isDebugEnabled()) {



logger.debug("this will be logged with the following parameters x="+x+" y="+y+" z="+z);



}





This implementation causes evaluation and string concatenation of the argument to the various log levels of the Logger class instance (logger.debug in this case) regardless whether or not that logger is indeed configured for that log-level. Imagine a situation where the log level for this class' logger is set to an ERROR log level while the logger is reporting messages in a DEBUG log level. Obviously, the logging will not be manifested in the appender that is bound to that logger for this class (as DEBUG has a lower log level than ERROR log level) but nonetheless the String concatenation for the arguments to build up the string for logging will be executed and will yield a cost regardless of the actual logging. In order to avoid that, the code tests the log level for DEBUG and only if it is enabled then the invocation of the logger.debug method is being interpreted and executed. The cost is due to the concatenation operations and due to repetitive (possibly implicit) calls to toString().



A newer implementation provides an idiom that internally tests for the effective log level and thus builds up the string (with the required concatenations) only if the log message will actually eventually be streamed to the appender. As a result, the format of the method for logging changes to something that actually evaluates strings only if the suitable log level is used. For example, when logging is disabled at the DEBUG level, the logging framework does not need to evaluate the string representation of the values.



Import statement:



import org.slf4j.Logger;



import org.slf4j.LoggerFactory;





Declaration and generation example within a class:



public
class Foo {



private static final Logger logger = LoggerFactory.getLogger(Foo.class);



Usage example within that class:


logger.debug("this will be logged with the following parameters x={} y={} z={}",new Object[] {x,y,z});





So, the slow and inefficient idiom



logger.debug("this will be logged with the following parameters x="+x+" y="+y+" z="+z);



which also took additional awkwardness with the attempt to reduce its performance costs by using this idiom




if(logger.isDebugEnabled()) {



logger.debug("this will be logged with the following parameters x="+x+" y="+y+" z="+z);



}




should now be replaced with the fast and more efficient


logger.debug("this will be logged with the following parameters x={} y={} z={}",new Object {x,y,z});







It is recommended to refactor log4j idioms to slf4j idioms when working on classes that use the inefficient idioms.






It is required to use te slf4j idiom in new implementations.




Some related links: