קטגוריה: קהילה

2013 במבט לאחור

העוזרים הנאמנים של סטטיסטיקות WordPress.com הכינו דוח שנתי לשנת 2013 עבור בלוג זה.

הנה תקציר:

אולם האופרה בסידני יכול להכיל 2,700 איש. בבלוג הזה ביקרו בערך 28,000 פעמים בשנת 2013. אם הבלוג היה אולם האופרה בסידני, הוא היה מוכר את כל הכרטיסים לבערך 10 הצגות כדי שיצפו בו אותה כמות אנשים.

לחץ כאן כדי לראות את הדוח המלא.

איך לקרוא חוזה אחיד

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

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

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

בין החוזים שאנחנו בעיקר נתקלים בהם ניתן למצוא למשל את EULA או את הGPL.
ועכשיו נשאלת השאלה, כאשר אנחנו נתקלים בחוזה שכזה, כמה אנחנו – ההדיוטות בעצם מבינים בנושא ?

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

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

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

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

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

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

תרבות החשיפה

וידוי: יש לי פייסבוק, אני מאוד פעיל בו יחסית.
וידוי 2: אין בפייסבוק תמונות שלי או פרטים עלי.

יש בעיה, בפייסבוק ובכלל הרשתות החברתיות, אנשים נחשפים יותר מידי. פייסבוק כבר מוגדרת בהרבה מקומות כאמצעי ריגול. אם תחפשו, תמצאו הרבה מאמרים (1, 2, 3, 4, 5, 6) איך חברות ביטוח מרגלות אחרי משתמשי פייסבוק לדעת עליהם מידע וככה לדרוש תשלום או לא לשלם להם בעקבות הדברים, סתם לקחתי 6 קישורים ראשונים שמצאתי בגוגל …
אבל יותר מזה, אם את/ה בוגדים בבן/ת הזוג, אפשר לאתר אתכם דרך הפייסבוק. כן גם אם יש לך עוד חשבון ועוד בשם בדוי.

אפילו לא התאמצתי לגלות את המאמרים האלו, פשוט כתבתי בגוגל ומייד מצאתי.

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

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

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

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

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

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

הבעיה היא שבעוד שהרחוב יכול לשכוח, האינטרנט אינו שוכח. דברים שפרסמתם לפני 15 שנה באינטרנט, סביר להניח שעוד נמצאים איפשהו, וסביר להניח שהם יהיו גם עוד 150 שנה איפשהו.

מוקדש כחומר למחשבה

תעודת זהות חכמה, ואנשים ?

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

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

הנה תסריט "דמיוני" אשר מתרחש מידי יום בעולם, כולל במדינת ישראל:

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

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

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

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

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

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

מוקדש כחומר למחשבה.

סקריפטים לא קשורים

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

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

אז אני מקווה שהקוד שלי יסייע גם לכם

Firebird פוגש את ליברה אופיס

פרוייקט הפיתוח GSOC מבית גוגל כמובן, הביא לכך שנכון לשבוע שעבר, יש דריבר רשמי לFirebird בתוך LibreOffice Base.

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

על מנת לגרום לו לעבוד בקובץ odb, יש לשנות הגדרות של

EmbeddedDatabases/DefaultEmbeddedDatabase/Value

מהערך של

sdbc:embedded:hsqldb

לערך:

sdbc:embedded:firebird

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

הבלוג המקורי בנושא. קוד המקור בgit.
 

לימוד שפת רובי

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

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

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

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

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

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

Let's learn go – הרצאה

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

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

את ההרצאה ניתן למצוא כאן. רשימות ההרצאה ניתנות להרודה מכאן. ו"קוד המקור".

הפצת לינוקס מול תוכנה

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

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

אז מה הן הבעיות ? הנה רשימה חלקית:

  • עדכון דחוף מידי של ספריות שזקוקים להם
  • חוסר עדכון של ספריות שזקוקים להם
  • תיקוני באגים של הפצה, השוברים אפליקציה
  • צורך בלשמור גרסאות כלים מסויימת
  • שימוש במספר גרסאות שונות של ספריות לביצוע עבודה (למשל שרת המחזיק מספר אתרים)
  • שוני בין הפצות שונות, קצב ההתקדמות שלהם, ניהול הקבצים בתוכם וכיוב' …
  • שינוי ABI/API בספריות שונות תלוי בגרסאות הספריה. להמשיך לקרוא

דרושה חשיבה חדשה לחקיקת מזיקים

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

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

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

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

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

כל מה שצריך זה לנסח בצורה ברורה את הרשימה של מה רוצים למנוע.