מאמרים בנושא ‏תכנה ומחשבים‏.

על חשיבותם של trackback־ים.

ב־יום שבת, 19 ביולי 2008, מאת ארתיום; פורסם תחת: אינטרנט, תכנה ומחשבים, WordPress בעברית; ‏14 תגובות

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

מה זה trackback‏1? זהו מנגנון שמאפשר לבלוגר להודיע לבלוג אחר על כך שהוא מתייחס לאליו בכתבה שלו. מבלבל? אז נראה דוגמה שתבהיר את הכל:

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

שלום יוסי,

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

בכבוד רב, איציק.

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

המשך...

סאגה על ALE130...

ב־יום חמישי, 17 ביולי 2008, מאת ארתיום; פורסם תחת: תכנה חופשית, לינוקס, תכנה ומחשבים; ‏5 תגובות

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

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

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

המשך...

איך אומרים "אמא" בבינארית?

ב־יום ראשון, 13 ביולי 2008, מאת ארתיום; פורסם תחת: פיתוח, תכנה ומחשבים; ‏18 תגובות

שאלת שפת התכנות הראשונה היא אחת השאלות הטעונות ביותר. יש המון ויכוחים בנושא של אנשים שבאים מרקע שונה או בעלי ראיה שונה. כולם קצת צודקים וכולם קצת טועים. יש כאלה שימליצו על שפות דינאמיות כמו Python/Perl, יש כאלה שימליצו ללמוד C או אפילו Assembly, אוניברסיטאות רבות מתחילות מ־scheme וממשיכות ל־Java, יש כאלה שממליצים על Pascal שנבנתה במיוחד עבור המשימה. אני רוצה כאן להביע את דעתי מראיה של כ־15 שנים שעברו מאז נגעתי במחשב לראשונה וכתבתי תכנות פשוטות ב־Basic של ZX Spectrum.

המשך...

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

ב־יום שבת, 12 ביולי 2008, מאת ארתיום; פורסם תחת: תכנה חופשית, פיתוח, תכנה ומחשבים; ‏2 תגובות

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

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

  1. וורדפרס־בעברית שני טלאים: בעיית מרכאות ותיקוני עיצוב -- שניהם נכנסו. (טלאי נוצר כתוצאה משימוש במערכת).
  2. ספריית FastCGI בעיה באופן עבודה א־סינכרוני -- לא נכנס, החבר'ה שם לא מי יודע מה חביבים. (טלאי כתוצאה משימוש בספריה)
  3. ספריית SOCI תמיכה בטעינה דינמית של מודולים -- נכנס.
    הטלאי נכתב בתקווה להשתמש בספריה בעתיד. לצערי, בסוף הייתי צריך לוותר עליה בגלל בעיות רבות אחרות.
  4. ספריית FriBiDi תיקון באג בהמרת קידוד -- נכנס. (התגלה בעבודה על biditex).
  5. ‏svnkit -- מספר טלאי לתמיכה ב־OpenVMS -- נכנסו. למעשה בלעדיהם אי אפשר היה לעבוד עם svn ב־VMS בכלל.
  6. טלאי ל־lighttpd שמתקן באג המונעה העלאת תהליכי scgi ע"י השרת -- נכנס. (הטלאי הוא תוצאת הפיתוח של CppCMS)‏
  7. בקרוב, כנראה, אצטרך להכין מספר טלאים ל־asio ו־boost כדי להבטיח תמיכה טובה יותר ב־OpenVMS (זה עובד אבל מקרטע פה ושם).

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

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

רבותי, אל תשתמשו בקוד פתוח -- זה מדבק ופוגע בעתידכם המקצועי!

על FastCGI, על SCGI ועל בחירה של RoR ו־Django.

ב־יום שבת, 12 ביולי 2008, מאת ארתיום; פורסם תחת: תכנה חופשית, אינטרנט, פיתוח, תכנה ומחשבים, CppCMS; ‏0 תגובות

לאחרונה הפרוטוקול Simple CGI הופך ליותר ויותר פופולרי והופך לבחירה טבעית או אפילו ברירת מחדל של תשתיות פיתוח לאינטרנט החדשות כמו Django ו־RoR. במה מדובר? מדובר בפרוטוקול מאוד פשוט שדומה באופי שלו ל־FastCGI אבל הספציפיקציה שלו מורכבת מכמה עשרות שורות, כך גם המימוש דורש מעט קוד (רוב המימושים שראיתי לא הכילו יותר מ־100--200 שורות קוד).

למעשה הפרוטוקול הזה הוא תחליף אידיאלי ל־FastCGI עבור:

  1. שרתי אינטרנט קטנים שרוצים לחבר יישומים גנריים בקלות רבה, בגלל פשטות המימוש.
  2. יישומי אינטרנט שהמימוש של הפרוטוקול דורשת כמה עשרות עד מאה שורות קוד. בניגוד ל־FastCGI שהמימוש המלא שלו מאוד מורכב.
  3. אפשרות לכתוב רכיב תקשורת עם שרת אינטרנט בצורה מהירה ללא ספריה צד ג'. למעשה, בניגוד ל־FastCGI, אפילו לא קיימת ספריה סטנדרטית עבור המשימה.
  4. הפרוטוקל לא פחות חזק מ־FastCGI בכל הקשור לביצועים.

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

המשך...

העמוד הבא

העמוד הבא

דפים

נושאים