<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>לראות שונה</title>
	<atom:link href="http://idkn.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://idkn.wordpress.com</link>
	<description>על מוזיקה ומבט שונה על תוכנה והקוד הפתוח</description>
	<lastBuildDate>Wed, 18 Nov 2009 21:59:03 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>he</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='idkn.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/909a058859deffe7fc430a7bec546601?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>לראות שונה</title>
		<link>http://idkn.wordpress.com</link>
	</image>
			<item>
		<title>עבודה עם מסדי נתונים בצורה פחות כואבת חלק ראשון</title>
		<link>http://idkn.wordpress.com/2009/11/18/less-painful-work-with-databases-first-part/</link>
		<comments>http://idkn.wordpress.com/2009/11/18/less-painful-work-with-databases-first-part/#comments</comments>
		<pubDate>Wed, 18 Nov 2009 18:00:20 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[Lazarus]]></category>
		<category><![CDATA[Object Pascal]]></category>
		<category><![CDATA[firebird]]></category>
		<category><![CDATA[מסדי נתונים]]></category>
		<category><![CDATA[קוד פתוח]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2495</guid>
		<description><![CDATA[אזהרה: מדריך זה מאוד ארוך (5 דפים מלאים עם תמונות וקוד).

כמעט כל מתכנת מגיע לשלב שהוא (או היא) צריכים לטפל במסדי נתונים. כיום יש 3-4 גישות עבודה מקובלות עם מסדי נתונים:

עבודה ישירה מול מסד נתונים ספציפי לפי API של היצרן
עבודה עם ספרייה שמאגדת פונקציות דומות עבור מבחר מסדי נתונים
מימוש עצמי של מסד נתונים (יש חברות [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2495&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><div style="text-align:center;"><strong>אזהרה: מדריך זה מאוד ארוך (5 דפים מלאים עם תמונות וקוד)</strong>.</div>
<div style="text-align:center;"><a href="http://idkn.files.wordpress.com/2009/11/authors.png"><img class="size-medium wp-image-2530 alignnone" title="טבלת authors" src="http://idkn.files.wordpress.com/2009/11/authors.png?w=300&#038;h=108" alt="טבלת authors" width="300" height="108" /></a></div>
<p>כמעט כל מתכנת מגיע לשלב שהוא (או היא) צריכים לטפל במסדי נתונים. כיום יש 3-4 גישות עבודה מקובלות עם מסדי נתונים:</p>
<ol>
<li>עבודה ישירה מול מסד נתונים ספציפי לפי API של היצרן</li>
<li>עבודה עם ספרייה שמאגדת פונקציות דומות עבור מבחר מסדי נתונים</li>
<li>מימוש עצמי של מסד נתונים (יש חברות בתעשייה שעושות טעויות כאלו)</li>
<li>עבודה עם כלי ORM אשר מנסות להשכיח את העבודה שיש מסד נתונים ומנסה לספק יכולת לעבוד כמה שיותר בתחביר של השפה בה אנחנו עובדים.</li>
</ol>
<p>האפשרות השלישית שציינתי קיימת בעיקר בחברות בינוניות וגדולות, אבל היא יחסית זניחה.</p>
<p>דלפי וכיום לזרוס כבר בשנות ה 90 הבינו כי נדרש שינוי משמעותי בעבודה עם מסדי נתונים, והם מספקים משהו שהוא חצי אפשרות השנייה וחצי האפשרות הרביעית ברשימה (משהו ביניים, שהוא בין שפה טבעית לבין API אחיד לכל מסדי הנתונים).</p>
<p>הבסיס הזה נקרא TDataset. הבסיס מאפשר לנו לקבל דבק אחיד של פעולות מבוססות מסדי נתונים, כאשר כל מה שאנחנו צריכים להחליף זו האפשרות של מה מנוע מסד הנתונים אליו אנחנו רוצים להתחבר. ופוסט זה עוסק בנושא הזה בצורה הפשוטה ביותר ללא נגיעה בכמעט כל האפשרויות ש Dataset מאפשר לנו לבצע.</p>
<p>בגדול מאוד בלי להיכנס יותר מידי לנושא, TDataset מאפשר לנו לדעת על המצב הנוכחי של טבלה/שאילתא (איזו פעולה היא ביצעה/ביקשה לבצע), אפשרות ליצור טבלה, אינדקסים ויחסי גומלין בין טבלאות, הכל באמצעות תחביר פסקל ולא דרך שימוש בשאילתות שאנחנו כותבים. אפשר לשלוט ברמה גבוהה יותר במה כל שדה עושה, כולל יחסי גומלין בין טבלאות גם כאשר מנוע מסד הנתונים לא תומך בזה (כדוגמת SQLite). אבל כאמור זה ממש בגדול בלי להיכנס כיצד עושים את זה.<span id="more-2495"></span></p>
<p>אז איך נתחיל בעבודה שלנו בלזרוס עם שימוש במסד נתונים עם כמה שפחות כאב ? ובכן נתחיל <a href="http://idkn.wordpress.com/2009/11/14/installing-packages/">בהתקנת החבילה</a> (במידה ולא עשיתם את זה) בשם <a href="http://wiki.freepascal.org/SQLdb_Package">SQLDBLaz</a>.</p>
<p><a href="http://idkn.files.wordpress.com/2009/11/data-access.png"><img class="alignright size-thumbnail wp-image-2497" title="לשונית data access" src="http://idkn.files.wordpress.com/2009/11/data-access.png?w=277&#038;h=37" alt="לשונית data access" width="277" height="37" /></a>לאחר שלזרוס חזר לנו מההתקנה, ניצור פרוייקט חדש בשם my_blog (הרי כל המדריכים כיום למסדי נתונים מלמדים להקים blog, אז למה לא אני ? אל תדאגו לא ניצור במדריך זה אתר). ונוסיף לו מלשונית הרכיבים שלנו את ‎TDatasource הממוקמת בלשונית Data Access. הפקד מופיע עם צלמית של מסד נתונים עם הרבה חצים (הפקד השמאלי ביותר בתמונה).</p>
<p>במידה ויש אצלכם פחות רכיבים בלשונית, זה בסדר. אצלי מותקנים רכיבים נוספים שלא מותקנים בברירת מחדל בלזרוס ובחלקם ניגע בפוסטים הבאים.</p>
<p>לפני שנמשיך חשוב לי להסביר מה בעצם הולך להיות מהנקודה הזו.ישנם הרבה צורות חיבור למסדי נתונים, והרבה מימושים. רובם מתבססים על ה API של TDataset (שהוא רחב יותר מאשר מחלקה אחת), אבל מציעים צורות עבודה שונות. הפקדים של SQLDBLaz משתמשים ב API שמגיע עם FPC עבור מסדי נתונים למשל, בעוד ש FIBComponents יוצר API משל עצמו עבור Firebird אבל עדיין משתמש ב API של TDataset. בנוסף ל SQLDBLaz יש תמיכה בעוד מסדי נתונים שונים בצורות אחרות בלזרוס שאפשר להתקין, כך שאנחנו לא באמת מחוייבים להשתמש רק בגישה אחת בלבד. כמו כן, ישנה ספרייה בשם ZeosDB (אשר לא נתמכת כראוי לדעתי האישית ב64 ביט), שהיא ספרייה צד שלישי לObject Pascal שעובדת עם כמה מהדרים, והרבה משתמשים בה, וגם היא תומכת ב TDataset.</p>
<p>עכשיו ניגש<a href="http://idkn.files.wordpress.com/2009/11/database_transactions.png"><img class="alignright size-thumbnail wp-image-2511" title="טרנזאקציות של מסד הנתונים" src="http://idkn.files.wordpress.com/2009/11/database_transactions.png?w=108&#038;h=150" alt="טרנזאקציות של מסד הנתונים" width="108" height="150" /></a> ללשונית של SQLDb <a href="http://idkn.files.wordpress.com/2009/11/sqldb1.png"><img class="alignleft size-thumbnail wp-image-2510" title="לשונית sqldb" src="http://idkn.files.wordpress.com/2009/11/sqldb1.png?w=150&#038;h=22" alt="לשונית sqldb" width="150" height="22" /></a>ונבחר את החיבור למסד הנתונים שלנו. אני אישית עובד עם <a href="http://idkn.wordpress.com/2009/05/05/a-first-release-of-my-un-quick-start-guide-for-firebird-sql-in-hebrew/">firebird</a>. לאחר שבחנו את מסד הנתונים שלנו, נבחר את פקד הטרנזאקציות, ונחבר אותו אל מסד הנתונים שלנו (נוכל לבחור את זה בצורה גרפית ב Object Inspector).</p>
<p>העיקרון של SQLDB הוא שאנחנו תמיד נעבוד עם טרנזאקציות, ובמקרה של Firebird, אנחנו בכל מקרה מחוייבים מכורח צורת העבודה של מסד הנתונים. יותר מאוחר בפוסט נראה איך נשתמש ברכיב זה.<a href="http://idkn.files.wordpress.com/2009/11/sqlquery_object_inspector.png"><img class="alignleft size-thumbnail wp-image-2513" title="רכיב השאילתא" src="http://idkn.files.wordpress.com/2009/11/sqlquery_object_inspector.png?w=108&#038;h=150" alt="רכיב השאילתא" width="108" height="150" /></a></p>
<p>הגדרות נוספות שנעשה במסד הנתונים הם הגדרת מסד הנתונים (במידה ומדובר ב firebird נגדיר או את מיקום מסד הנתונים או את ה alias שלו), נגדיר את כתובת שרת מסד הנתונים (אלא אם מדובר ב SQLite3), משתמש וסיסמה להתחבר ויש לנו חיבור מלא של מסד הנתונים שלנו.</p>
<p>עכשיו נוסיף שאילתא לרשימת הרכיבים שלנו. נחבר את השילתא למסד הנתונים ונראה שהוא גם לקח את ההגדרות של הטרנזאקציות שלנו.</p>
<p>ניצור למסד הנתונים שלנו טבלה (מחוץ ללזרוס כרגע) בשם authors:</p>
<div dir="ltr"><code>CREATE TABLE AUTHORS<br />
(<br />
ID Integer NOT NULL,<br />
NAME Varchar(255),<br />
CAN_AUTHOR "BOOLEAN" DEFAULT 1,<br />
ADDED Timestamp DEFAULT CURRENT_TIMESTAMP  NOT NULL,<br />
CHANGED Timestamp DEFAULT CURRENT_TIMESTAMP  NOT NULL,<br />
PRIMARY KEY (ID)<br />
);</code></div>
<p>כמובן שתשנו את זה בהתאם למסד הנתונים שלכם (אני מספק בסוף הפוסט קובץ להורדה עם הקוד כולל ה SQL המלא).</p>
<p>לאחר היצירה, נכתוב ברכיב השאילתא שלנו ב&quot;תכונה&quot; של SQL (בלבד) את הקוד הבא:<a href="http://idkn.files.wordpress.com/2009/11/select-sql-statment-property.png"><img class="alignright size-thumbnail wp-image-2514" title="שאילתת select" src="http://idkn.files.wordpress.com/2009/11/select-sql-statment-property.png?w=150&#038;h=88" alt="שאילתת select" width="150" height="88" /></a></p>
<div dir="ltr"><code><strong>SELECT</strong> ID, NAME, CAN_AUTHOR, ADDED, CHANGED <strong>FROM</strong> AUTHORS</code></div>
<p>ואז נלך לרכיב של Datasource ונספק לו את רכיב השאילתא שלנו ונשמור את השינויים.</p>
<p>לפני שאמשיך יש כמה דברים שחשוב לי אפשר לפתוח חיבור ישיר למסד הנתונים שלנו בזמן תכנון ! מאוד מומלץ לא לעשות את זה למעט הצורך שלנו בזמן<a href="http://idkn.files.wordpress.com/2009/11/query-edit-fields.png"><img class="alignleft size-thumbnail wp-image-2524" title="עריכת שדות" src="http://idkn.files.wordpress.com/2009/11/query-edit-fields.png?w=150&#038;h=135" alt="עריכת שדות" width="150" height="135" /></a> התכון לדברים ספציפיים. במקום זה נכתוב 2 שורות קוד שיפתחו ויסגרו בשבילנו את החיבור בזמן ריצה במקום בזמן תכנון.</p>
<p><a href="http://idkn.files.wordpress.com/2009/11/add-fields.png"><img class="alignright size-thumbnail wp-image-2525" title="הוספת שדות" src="http://idkn.files.wordpress.com/2009/11/add-fields.png?w=138&#038;h=150" alt="הוספת שדות" width="138" height="150" /></a>כרגע נפעיל את החיבור של מסד הנתונים על ידי העברת ערך של Connected ל true (לחיצה כפולה עושה את העבודה). וניגש לרכיב השאילתא שלנו ונפעיל גם אותה עם התכונה Active בערך של true.</p>
<p>לחיצה כפולה על פקד השאילתא שלנו (או לחיצה על מקש ימני והפעלת הערך הראשון בתפריט: Edit Fields) בשביל לערוך שדות.</p>
<p>בברירת מחדל נקבל חלון לבן (תלוי בצבעי המערכת שלכם) וריק.  נלחץ על מקש ימני ונבחר את האפשרות Add Fields, ואז נסמן ונבחר את כולם (לחיצה על ID ואז לחיצה על מקש ה Shift ולחיצה על שדה הChanged) ועל OK. ועכשיו חלון עריכת השדות שלנו מלא בשדות.</p>
<p>הפעולה הבאה שנעשה היא ללכת ל ID ולסמן את התכונה של Readonly ל true ונשים False לתכונה Required. אנחנו עושים זאת בשביל להזין את הערך שלו בצורה &quot;אוטומטית&quot; במסד הנתונים (במקרה של Firebird מדובר בTrigger). במידה ולא נבצע את הצעדים האלו, כאשר נרצה לשמור רשומה חדשה, נקבל חריגה (Exception) שלא ציינו ערך לשדה שהוא חובה (מאוחר יותר נראה למה).</p>
<p>אותו הדבר נעשה גם לשדות Added ו Changed היות וגם אותם אני משנה עם טריגרים במקום ידנית ולא נזין את הערכים ידנית אצלנו.</p>
<p>במידה ולא הינו רוצים לקחת את ה ID (אנחנו זקוקים לו, אבל לא אסביר בחלק זה למה), לא היינו צריכים לעשות את צעד הוספת השדות, אבל מומלץ בחום כן לעשות זאת. את השדות של Added ו Changed הוספנו בשביל לימוד נטו ולא מעבר לפחות כרגע.</p>
<p>שימו לב שהוספת השדות קובעת איך לזרוס ורכיבים שונים בלזרוס יתנהגו לכל שדה, גם אם ההתנהגות שונה לגמרי מההתנהגות המקורית שמוגדרת במסד הנתונים עצמו. במדריך הבא נראה את זה מגיע לידי ביטוי. אנחנו גם יכולים להסתיר ככה שדות בצורה וויזואלית במידה ואנחנו משתמשים ברכיב כדוגמת Grid (רשת), במקום להציג את השדה, אך לא אכנס לזה במדריך זה.</p>
<p><a href="http://idkn.files.wordpress.com/2009/11/data-controls-tab.png"><img class="alignright size-thumbnail wp-image-2527" title="טאב data controls" src="http://idkn.files.wordpress.com/2009/11/data-controls-tab.png?w=150&#038;h=17" alt="טאב data controls" width="150" height="17" /></a>ועכשיו מתחילה העבודה עם פקדים גרפיים. ניגש ללשונית של Data Control. חשוב לדעת לפני שנמשיך שהפקדים הגרפיים של Data Control כמעט לגמרי זהים לפקדים &quot;הרגילים&quot; שיש לנו (למעט 2 פקדים ספציפיים שנגע בהם במדריך הבא), עם שינוי אחד: הם יודעים לעבוד עם ‎TDataset  ולעקוב אחריו וגם לשתף פעולה איתו בצורה שהיא אוטומטית עבורינו, ובכך הם חוסכים לנו עבודה. אך במידה והם לא עונים על הגמישות שאנחנו צריכים, תמיד אפשר לעבוד עם פקדים רגילים, ולעבוד &quot;קשה יותר&quot; לעשות את הקישור בצורה תכנותית, או <a href="http://idkn.wordpress.com/2008/10/13/%D7%99%D7%A6%D7%99%D7%A8%D7%AA-%D7%A8%D7%9B%D7%99%D7%91-%D7%97%D7%93%D7%A9-%D7%91%D7%9C%D7%96%D7%A8%D7%95%D7%A1-%D7%97%D7%9C%D7%A7-%D7%A8%D7%90%D7%A9%D7%95%D7%9F/">ליצור</a> פקדים משל עצמנו.</p>
<p>בטאב, נזרוק את הרכיב TDBNavigator . תפקיד הרכיב הוא לתת לנו פעולות &quot;מוכרות&quot; אשר חוזרות על עצמן בDataset שלנו. כרגע אנחנו נוסיף לו את ה Datasource שלנו ונגיד לתכונה של align להיות alTop. כך הפקד ייושר כלפי מעלה, וכל שינוי בגודל החלון שלנו ישנה גם את הפקד הזה. בנוסף ב Visible Buttons נעיף את התמיכה בDelete (אני לא אוהב למחוק פיזית ממסד נתונים, אלא רק להסתיר אותם בברירת מחדל ולסמן אותם פנימית כ&quot;מחוקים&quot;). ואלו כרגע כל הפעולות שנעשה עם הפקד הזה.</p>
<p>נלך לטאב הראשון (Standard) ונוסיף עכשיו 2 פקדי TLabel  ונחליט שהם נמצאים ב Left 8. נוכל לעשות את זה לשניהם בייחד אם נבחר אחד, ואז נלחץ על shift ונבחר את השני,  ואז נלך לתכונה של left ונכתוב שם 8. אפשר לבחור גם עם העכבר עם מקש שמאלי לחוץ וגרירה של הסמן. ודרכים נוספות, שאתן לכם לגלות לבד, ולהחליט מה נוח לכם.</p>
<p>עכשיו נלך לתווית ההראשונה, ונכתוב לה &quot;Name&quot; בתכונה של Caption. ונעבר לתווית הבאה, ונכתוב שם &quot;Can Author&quot; בתכונה של Caption. וסיימנו לעבוד עם הפקדים האלו, למרות שאפשר לספק להם עוד יכולת שלא אכנס אליה במדריך זה, והיא לתת פוקוס לרכיב שיכול לקבל פוקוס על ידי תכונה בשם FocusControl אבל לא אכנס לזה במדריך זה.</p>
<p>עכשיו נחזור לטאב של Data Control ונבחר את הפקד TDBEdit ונשים אותו ליד התווית הראשונה. וTDBCheckBox ליש התווית השניה. עכשיו נמחק את ה Caption של TDBCheckBox (אני מחפש מראה אחיד שלא נוכל לקבל אם נשתמש בCaption של הפקד).</p>
<p>לאחר מכן נבחר גם את הרכיבים של הDBEdit וגם את DBCheckbox בייחד, ונשים להם בתכונה של Datasource את ה Datasource שלנו. עכשיו נבחר כל אחד בנפרד, ונתן להם את השדה המתאים (כלומר ל DBEdit ניתן את השדה Name ול DBCheckbox ניתן את Can_Author).</p>
<p>בDBCheckBox יש גם את 2 התכונות: ValueChecked ו ValueUnChecked. נשים בראשון את הערך 1 ובשני את הערך 0. במידה ונרצה להיות צדיקים נלך גם לSQLQuery1CAN_AUTHOR (השדה שיצרנו בצורה וויזואלית) ונספק לו MinValue של 0 ו MaxValue של 1, אבל לא חייבים.</p>
<p>עוד 2 צעדים ונוכל להריץ את התוכנה שלנו !!!</p>
<p>הצעד הבא יהיה להוסיף מטאב הAdditional את כפתור ה TBitBtn. יש לכפתור הזה 3 תכונות שאנחנו נרצה אותם:</p>
<ol>
<li>יכולת להציג תמונות</li>
<li>לקבל פוקוס (בניגוד לאחיו שנקרא TSpeedButton)</li>
<li>הוא מסוגל לבצע פעולות בלי שנכתוב לו קוד.</li>
</ol>
<p>לאחר ששמנו אותו על החלון, נלך לתכונה Kind ונגיד לו bkClose. לאחר מכן נלך לתכונה ModalResult ונגיד לו להיות mrOK. נראה שיש לנו תמונה של Close וטקסט בהתאם. זה מה ש bkClose סיפק לנו. הModalResult מאפשר לנו מאוחר יותר ליצור מהחלון שלנו דיאלוג שתופס את הפוקוס מעל שאר החלונות וכשהוא נסגר, הוא מחזיר ערך של mrOK. עוד תכונה ש Kind עשה בשבילו היא, שבמידה ונלחץ על הכפתור בזמן ריצה הוא יעשה עבורינו את הפעולה Close בלי שנכתוב קוד בשביל זה.</p>
<p>עכשיו נריץ את התוכנה שלנו וננסה להזין נתונים (אם סגרתם את החיבור של מסד הנתונים ו/או השאילתא, אנא פתחו אותם לפני הריצה, או שהפקדים לא יהיו פעילים בזמן הריצה) <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>במידה ואין בעיות כ<a href="http://idkn.files.wordpress.com/2009/11/object-inspector-events.png"><img class="alignright size-thumbnail wp-image-2529" title="אירועים בobject inspector" src="http://idkn.files.wordpress.com/2009/11/object-inspector-events.png?w=108&#038;h=150" alt="אירועים בobject inspector" width="108" height="150" /></a>י עקבנו אחרי ההוראות, נלחץ על כפתור ה Close ונראה שהוא עובד. עכשיו נריץ שוב את התוכנית שלנו ונגלה דבר מעצבן, המידע שעבדנו עליו מקודם לא נשמר ! כמו שאמרתי מקודם, אנחנו עובדים עם טרנזאקציות, ואנחנו צריכים להגיד לחיבור שלנו לשלוח את הפעולות שלנו (זה יכול להתבצע אפילו לפני סגירת החחלון, כלומר לשלוח את השינויים שעשינו בפעם אחת), ולכן לא נשלחו השינויים פיזית למסד הנתונים בלי שנגיד להם במפורש לעשות זאת. עכשיו נתחיל לכתוב קצת קוד. נלך לפקד השאילתא שלנו ונבחר בטאב האירועים ונבחר את האירוע AfterPost ונלחץ עליו 2 לחיצות מהירות (הדרך המהירה לעשות את זה). ושם נכתוב את הקוד הבא (מסומן בקו תחתי):</p>
<div dir="ltr"><code>procedure TForm1.SQLQuery1AfterPost (DataSet : TDataSet );<br />
begin<br />
<span style="text-decoration:underline;">SQLQuery1.ApplyUpdates;<br />
SQLTransaction1.CommitRetaining;</span><br />
end;</code></div>
<p>וכן נלך ל Object Inspector חזרה לתכונות ונגיד לו UpdateMode לשים את הערך upWhereChanged.</p>
<p>כל מה שעכשיו נשאר לנו לעשות זה לסגור את החיבורים במצב תכנון, ולפתוח ולסגור אותם בזמן ריצה. את זה נעשה עם האירועים של החלון עצמו. נלחץ על החלון עצמו ונלך ב Object Inspector אל Events . ונבחר את האירוע של OnClose.</p>
<p>שם נסגור את החיבורים שלנו בצורה הבאה (הקוד עם הקו התחתי):</p>
<div dir="ltr"><code>procedure TForm1.FormClose (Sender : TObject ; var CloseAction : TCloseAction );<br />
begin<br />
<span style="text-decoration:underline;">if Datasource1.State in [dsEdit, dsInsert] then<br />
begin<br />
SQLQuery1.ApplyUpdates;<br />
SQLTransaction1.CommitRetaining;<br />
end;<br />
SQLQuery1.Close;<br />
IBConnection1.Close;</span><br />
end;</code></div>
<p>שורת ה if בודקת האם כרגע השאילתא שלנו היא במצב של הוספת ערכים או עריכתם. במקרה שכן אנחנו נשמור את השינויים (מומלץ לפני כן לשים חלון שישאל, אבל לא נעשה את זה בחלק זה). לאחר מכן, אנחנו סוגרים קודם את החיבור של השאילתא ורק אז את החיבור של מסד הנתונים.</p>
<p>לאחר מכן, נלחץ 2 לחיצות על החלון שלנו ונקבל אירוע חדש (ברירת מחדל) של יצירת החלון ושם ניצור את הפתיחה שלנו:</p>
<div dir="ltr"><code>procedure TForm1 .FormCreate (Sender : TObject );<br />
begin<br />
<span style="text-decoration:underline;">IBConnection1.Open;<br />
SQLQuery1.Open;</span><br />
end;</code></div>
<p>כאן אנחנו פותחים קודם כל את החיבור של מסד הנתונים ואז את החיבור של השאילתא שלנו.</p>
<p>וזהו יש לנו תוכנה מוכנה שמציגה, מוסיפה ומעדכנת רשומות עבור טבלה מסויימת.</p>
<p>אם תשרישו את הפעולות האלו בעבודה שלכם, תראו שהם ממש פשוטות ומהירות לביצוע ולוקח לכם פחות מ5 דקות לעשות את כל מה שהמדריך הזה מציג.</p>
<p>להורדת הקוד המלא של החלק הזה, לחצו <a href="http://ik.homelinux.org/projects/files/my_blog_1.tar.gz">כאן</a>.</p>
Posted in firebird, Lazarus, Object Pascal, מסדי נתונים, קוד פתוח  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2495/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2495/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2495/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2495/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2495/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2495/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2495/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2495/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2495/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2495/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2495&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/11/18/less-painful-work-with-databases-first-part/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>

		<media:content url="http://idkn.files.wordpress.com/2009/11/authors.png?w=300" medium="image">
			<media:title type="html">טבלת authors</media:title>
		</media:content>

		<media:content url="http://idkn.files.wordpress.com/2009/11/data-access.png?w=150" medium="image">
			<media:title type="html">לשונית data access</media:title>
		</media:content>

		<media:content url="http://idkn.files.wordpress.com/2009/11/database_transactions.png?w=108" medium="image">
			<media:title type="html">טרנזאקציות של מסד הנתונים</media:title>
		</media:content>

		<media:content url="http://idkn.files.wordpress.com/2009/11/sqldb1.png?w=150" medium="image">
			<media:title type="html">לשונית sqldb</media:title>
		</media:content>

		<media:content url="http://idkn.files.wordpress.com/2009/11/sqlquery_object_inspector.png?w=108" medium="image">
			<media:title type="html">רכיב השאילתא</media:title>
		</media:content>

		<media:content url="http://idkn.files.wordpress.com/2009/11/select-sql-statment-property.png?w=150" medium="image">
			<media:title type="html">שאילתת select</media:title>
		</media:content>

		<media:content url="http://idkn.files.wordpress.com/2009/11/query-edit-fields.png?w=150" medium="image">
			<media:title type="html">עריכת שדות</media:title>
		</media:content>

		<media:content url="http://idkn.files.wordpress.com/2009/11/add-fields.png?w=138" medium="image">
			<media:title type="html">הוספת שדות</media:title>
		</media:content>

		<media:content url="http://idkn.files.wordpress.com/2009/11/data-controls-tab.png?w=150" medium="image">
			<media:title type="html">טאב data controls</media:title>
		</media:content>

		<media:content url="http://idkn.files.wordpress.com/2009/11/object-inspector-events.png?w=108" medium="image">
			<media:title type="html">אירועים בobject inspector</media:title>
		</media:content>
	</item>
		<item>
		<title>ניצחון בקרב, אבל המלחמה עדיין לא נגמרה !</title>
		<link>http://idkn.wordpress.com/2009/11/18/the-buttle-won-the-war-is-still-on/</link>
		<comments>http://idkn.wordpress.com/2009/11/18/the-buttle-won-the-war-is-still-on/#comments</comments>
		<pubDate>Wed, 18 Nov 2009 09:46:52 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[חברה]]></category>
		<category><![CDATA[חוק]]></category>
		<category><![CDATA[משפט]]></category>
		<category><![CDATA[קהילה]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2516</guid>
		<description><![CDATA[אז ככה, כרגע יש דחייה של שנתיים במימוש &#34;חוק האח הגדול&#34; או &#34; מאגר הביומטרי&#34;.
ברצוני להודות לכל הלובי שעסק במלאכה עד עכשיו, שחלקם (לפי מה אני יודע) הוא: דורון אופק, רם-און אגמון, ערן ורד, עו&#34;ד יהונתן קלינגר, עו&#34;ד אבי פינצ'וק (אני מקווה שאני כותב את השם נכון), ניב ליליאן,  גל מור ועירא אברמוב.
אני יודע שיש [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2516&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>אז ככה, כרגע יש דחייה של שנתיים במימוש &quot;<a href="http://www.ynet.co.il/articles/0,7340,L-3806715,00.html">חוק האח הגדול</a>&quot; או &quot; מאגר הביומטרי&quot;.</p>
<p>ברצוני להודות לכל הלובי שעסק במלאכה עד עכשיו, שחלקם (לפי מה אני יודע) הוא: דורון אופק, רם-און אגמון, ערן ורד, עו&quot;ד יהונתן קלינגר, עו&quot;ד אבי פינצ'וק (אני מקווה שאני כותב את השם נכון), ניב ליליאן,  גל מור ועירא אברמוב.</p>
<p style="text-align:center;">אני יודע שיש עוד אנשים רבים וטובים שאינני יודע את שמם ולכן אינני מציין כאן, אבל המון תודה גם לכם !</p>
<p>כמו כן, האגודה לזכויות האזרח עשתה המון אודות המלחמה בחוק, והמון תודה להם על כך !</p>
<p>הקרב הוא של המתנגדים, בעוד שהמלחמה עדיין לא נגמרה. כרגע יש סוג של הפסקת אש אשר עוזרת לכולם להתארגן מחדש, לחדש כוחות, להביא אספקה וללקק פצעים (אם כבר מושגי קרב, אז עד הסוף).</p>
<p>אני מקווה שבסיבוב הבא, יצליחו העוסקים בפרשה לגייס עוד אנשים אליהם, לגייס תקציב וכמובן להסיר את הנושא פעם אחת ולתמיד מעל מדינת ישראל.</p>
<p>בכל מקרה, המון המון המון תודה על ששמרתם על המדינה שלנו, ואם נמשיך בעגה הצבאית, מגיע לכם אות מערכה של כולנו על פועלכם !</p>
<p>השיר <a href="http://www.youtube.com/watch?v=SD5engyVXe0">הבא</a> מיועד לכל תומכי המאגר שאין להם מה לפחד או להסתיר.</p>
Posted in חברה, חוק, משפט, קהילה  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2516/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2516/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2516/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2516/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2516/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2516/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2516/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2516/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2516/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2516/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2516&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/11/18/the-buttle-won-the-war-is-still-on/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>
	</item>
		<item>
		<title>לפני שהטפטוף ייהפך למבול</title>
		<link>http://idkn.wordpress.com/2009/11/16/%d7%9c%d7%a4%d7%a0%d7%99-%d7%a9%d7%94%d7%98%d7%a4%d7%98%d7%95%d7%a3-%d7%99%d7%99%d7%94%d7%a4%d7%9a-%d7%9c%d7%9e%d7%91%d7%95%d7%9c/</link>
		<comments>http://idkn.wordpress.com/2009/11/16/%d7%9c%d7%a4%d7%a0%d7%99-%d7%a9%d7%94%d7%98%d7%a4%d7%98%d7%95%d7%a3-%d7%99%d7%99%d7%94%d7%a4%d7%9a-%d7%9c%d7%9e%d7%91%d7%95%d7%9c/#comments</comments>
		<pubDate>Mon, 16 Nov 2009 09:13:39 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[חברה]]></category>
		<category><![CDATA[חוק]]></category>
		<category><![CDATA[פוליטיקה]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2502</guid>
		<description><![CDATA[היום זה מוכרע, האם ישראל מפסיקה להיות מדינה דמוקרטית, או לא !
למה זה צריך לעניין אותכם, אתם הרי לא עבריינים, לא פושעים, לא מאיימים על אף אחד, אתם אפילו לא יודעים לשים תפילן על היד, שלא לדבר מי זה אללה. למה שזה יעניין אתכם ?
ובכן כל הדברים למעלה צריכים לקבל תשובה של &#34;בנתיים&#34;. אתם בנתיים [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2502&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>היום זה מוכרע, האם ישראל מפסיקה להיות מדינה דמוקרטית, או לא !</p>
<p>למה זה צריך לעניין אותכם, אתם הרי לא עבריינים, לא פושעים, לא מאיימים על אף אחד, אתם אפילו לא יודעים לשים תפילן על היד, שלא לדבר מי זה אללה. למה שזה יעניין אתכם ?</p>
<p>ובכן כל הדברים למעלה צריכים לקבל תשובה של &quot;בנתיים&quot;. אתם בנתיים לא פושעים (הרי אתם לא עוברים באדום, עוצרים בעצור, לא עוברים את המהירות מהקסימלית המותרת לפי חוק, לא לפי הרחוב, ובכלל החנייה שאתם חונים היא חוקית ואתם משלמים עליה וכו'. הדבר הכי נורא שעשיתם זה לא השארתם טיפ יותר נדיב מ20% על הארוחה שאכלתם), אבל ממחר תהיו פושעים בפוטנציה.</p>
<p>אני גם אוכל להתחמק מעונש בצורה די קלה, אם רק תהיה לי גישה למאגר הביומטרי. למה ? כי אני אוכל לקבל את כל הנתונים על השוטרים שעצרו אותי ולתת להם הצעה שאי אפשר לסרב לה &#8230;</p>
<p>אני גם יכול לזייף עדיין את הזהות שלכם, אם אקדים אותכם לרכישת הזהות שלכם. שלא לדבר על כך שאפשר לזייף את הנתונים עלייכם גם אחרי הרכש הראשוני (אם אני מדליף מחדש את המאגר עם שינוי פרטים).</p>
<p>יש כל כך הרבה בעיות עם החוק, שכאשר הוא יגרום לבעיה אמיתית לכלל אזרחי המדינה, זה כבר יהיה 50 צעדים מאוחר מידי. כבר אין &quot;<a href="http://idkn.wordpress.com/2009/07/17/%d7%a8%d7%92%d7%a2-%d7%9c%d7%a4%d7%a0%d7%99/">רגע לפני</a>&quot;, <span style="text-decoration:underline;"><span style="color:#000080;font-size:1.8em;"><strong>זה עכשיו</strong></span></span> !</p>
<p>האם אתם מוכנים להפוך למדינה בה כולם חשודים גם אם מוכח אחרת ?</p>
<p>בקצב הזה נהיה צריכים <a href="http://www.youtube.com/watch?v=SEd9YyLEnDc">עיר מקלט</a></p>
Posted in חברה, חוק, פוליטיקה  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2502/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2502/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2502/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2502/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2502/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2502/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2502/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2502/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2502/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2502/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2502&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/11/16/%d7%9c%d7%a4%d7%a0%d7%99-%d7%a9%d7%94%d7%98%d7%a4%d7%98%d7%95%d7%a3-%d7%99%d7%99%d7%94%d7%a4%d7%9a-%d7%9c%d7%9e%d7%91%d7%95%d7%9c/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>
	</item>
		<item>
		<title>התקנת חבילות</title>
		<link>http://idkn.wordpress.com/2009/11/14/installing-packages/</link>
		<comments>http://idkn.wordpress.com/2009/11/14/installing-packages/#comments</comments>
		<pubDate>Sat, 14 Nov 2009 19:09:29 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[Lazarus]]></category>
		<category><![CDATA[קוד פתוח]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2471</guid>
		<description><![CDATA[עודכן ב15.11.2009 10:33
אם אתם כמוני עובדים הרבה עם לזרוס, אז בטח כבר מזמן ששמתם לב שיש תפריט בשם packages . התפקיד של התפריט הוא לנהל חבילות שמקלות עלנו את החיים בצורה הבאה:

איגוד של כל הקבצים אותם אנחנו רוצים להדר בקבוצות שונות (לדוגמא מכנה משותף לכולם)
הוראות כיצד להדר דברים בקבוצה
שליטה בתלויות. כלומר נגיד ואנחנו צריכים להסתמך [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2471&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><h6><span style="color:#000080;">עודכן ב15.11.2009 10:33</span></h6>
<p>אם אתם כמוני עובדים הרבה עם לזרוס, אז בטח כבר מזמן ששמתם לב שיש תפריט בשם packages . התפקיד של התפריט הוא לנהל חבילות שמקלות עלנו את החיים בצורה הבאה:</p>
<ol>
<li>איגוד של כל הקבצים אותם אנחנו רוצים להדר בקבוצות שונות (לדוגמא מכנה משותף לכולם)</li>
<li>הוראות כיצד להדר דברים בקבוצה</li>
<li>שליטה בתלויות. כלומר נגיד ואנחנו צריכים להסתמך על משהו אחר, אז אנחנו יכולים לציין את החבילה והמערכת בודקת אם הוא נמצא או לא ואם הגרסה של החבילה מתאימה לצרכים שלנו לפי הגדרות שלנו.</li>
<li>סדר בפרוייקטים.</li>
<li>שיתוף קבצים בין פרוייקטים שונים</li>
</ol>
<p>במילים אחרות יש לנו מנהל חבילות ממש כמו בהפצות הלינוקס רק עבור סביבת העבודה ותוכנות שלנו.</p>
<p>התפקיד של החבילה הוא להרחיב את יכולות סביבת העבודה או התוכנות שלנו. זה יכול להיות להתבטא באמצעות רכיב (גרפי או לא), זה יכול להוסיף למשל תמיכה ב svn (יש באמת חבילה שכזו) עבור סביבת העבודה, או אפילו להוסיף תמיכה בעוד שפת תכנות אשר עובדת לגמרי שונה מאשר  Pascal, או אפילו רק מהדר Pascal אחר.</p>
<p>החבילות מחולקות לשתי קבוצות (או שייכים ל2 הקבוצות בייחד):<span id="more-2471"></span></p>
<ol>
<li>זמן תכנון (design-time)</li>
<li>זמן ריצה (run-time)</li>
</ol>
<p>חבילה לזמן תכנון משפיעה על ה IDE בצורה זו או אחרת. זה אומר שאני יכול להתקין רכיב, זה אומר שאני יכול להרחיב/לשנות את היכולות של הסביבה ועוד הרבה מאוד דברים נוספים.</p>
<p>חבילה לזמן ריצה בסה&quot;כ משייכת קבצים אל התוכנה שלי בצורה מסודרת ובעצם מספקת סוג של מעטפת המסדרת את התוכנה שלנו שתשתמש בקבצים שונים המאוגדים לחבילה אחת. כך ניתן להשתמש בחבילות שונות לתוכנה אחת ולעשות שימוש חוזר בקוד בכמה פרוייקטים במקביל.</p>
<p>הה<a href="http://idkn.files.wordpress.com/2009/11/packages.png"><img class="alignright size-thumbnail wp-image-2475" title="חבילות" src="http://idkn.files.wordpress.com/2009/11/packages.png?w=150&#038;h=114" alt="חבילות" width="150" height="114" /></a>תקנה בסביבת העבודה של חבילת תכנון תתבצע באחת מ2 הצורות הבאות:</p>
<ol>
<li><a href="http://idkn.files.wordpress.com/2009/11/installed-packages.png"><img class="alignleft size-thumbnail wp-image-2477" title="חבילות מותקנות/להתקנה" src="http://idkn.files.wordpress.com/2009/11/installed-packages.png?w=150&#038;h=129" alt="חבילות מותקנות/להתקנה" width="150" height="129" /></a>התקנה באמצעות Configure installed packages. מתקין לנו חבילות אשר רשומות במערכת. כאלו שהתקנו והסרנו בעבר או כאלו שמגיעים בברית מחדל עם המערכת.</li>
<li>התקנת קובץ lpk (קובץ החבילה). אנחנו נבחר בה כאשר מדובר בחבילה שלא מגיעה עם לזרוס בברירת מחדל, ונעשה זאת על ידי בחירה באפשרות Open package file (.lpk) &#8230; ואז נבחר את הקובץ המתאים.</li>
</ol>
<p>ניתן עם האפשרות הראשונה גם להסיר חבילה מותקנת.</p>
<p>חשוב לדעת שגם חבילת זמן ריצה חייבת להיפתח, אבל אותה נוכל לפתוח רק באמצעות האפשרות השנייה, ואז נהדר את הקוד. הידור הקוד יגרום ללזרוס לזהות את החבילה ולהציע לנו להשתמש בה.</p>
<p><a href="http://idkn.files.wordpress.com/2009/11/project-inspector.png"><img class="aligncenter size-thumbnail wp-image-2487" title="project inspector" src="http://idkn.files.wordpress.com/2009/11/project-inspector.png?w=150&#038;h=119" alt="project inspector" width="150" height="119" /></a></p>
<p>הוספת חבילת זמן ריצה תתבצע על ידי הוספת רשומה עבור הפרוייקט שלנו בתפריט Project -&gt; Object Inspector ושם להוסיף את החבילה שרוצים.</p>
<p>במידה ובפרוייקט הוספנו רכיבים בעבר ונוספו לנו לשם חבילות שאנחנו לא מעוניינים בהם יותר, צריך להוריד משם גם את החבילה המיותרת.</p>
<p>עכשיו בואו נעשה ניסוי קטן של התקנת חבילה באמצעות האפשרות הראשונה ונתקין את הרכיב של SQLDBLaz אשר מספק לנו חיבור למגוון של מסדי נתונים כדוגמת PostreSQL, SQLite3, Firebird וגרסאות 4, 4.1 ו5 של MySQL. בפוסט הבא נלמד להשתמש ברכיבים אלו.</p>
Posted in Lazarus, קוד פתוח  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2471/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2471/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2471/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2471/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2471/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2471/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2471/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2471/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2471/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2471/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2471&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/11/14/installing-packages/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>

		<media:content url="http://idkn.files.wordpress.com/2009/11/packages.png?w=150" medium="image">
			<media:title type="html">חבילות</media:title>
		</media:content>

		<media:content url="http://idkn.files.wordpress.com/2009/11/installed-packages.png?w=150" medium="image">
			<media:title type="html">חבילות מותקנות/להתקנה</media:title>
		</media:content>

		<media:content url="http://idkn.files.wordpress.com/2009/11/project-inspector.png?w=150" medium="image">
			<media:title type="html">project inspector</media:title>
		</media:content>
	</item>
		<item>
		<title>תכנות מבוזר &#8211; הטרנד החדש</title>
		<link>http://idkn.wordpress.com/2009/11/12/distributed-development-the-new-trend/</link>
		<comments>http://idkn.wordpress.com/2009/11/12/distributed-development-the-new-trend/#comments</comments>
		<pubDate>Thu, 12 Nov 2009 11:27:18 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[טכנולוגיה]]></category>
		<category><![CDATA[פיתוח]]></category>
		<category><![CDATA[קוד פתוח]]></category>
		<category><![CDATA[תכנות]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2462</guid>
		<description><![CDATA[יש מונח שנקרא Concurrent computing אשר מדבר על תוכנות המחלקות את העבודה שלהן על כמה משאבים שונים, ולא מתבססות על משאב &#34;בודד&#34;. זה יכול להיות ריבוי ליבות, ריבוי מעבדים (לא זהה), שימוש ב grid (בעברית זה פשוט לא מובן), הרצת מגוון תוכנות שעושות עבודה זהה, אשר מתקשרות ב IPC ועוד הרבה צורות ושיטות.
הגישה והרעיון למחשוב [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2462&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>יש מונח שנקרא <a href="http://en.wikipedia.org/wiki/Concurrent_computing">Concurrent computing</a> אשר מדבר על תוכנות המחלקות את העבודה שלהן על כמה משאבים שונים, ולא מתבססות על משאב &quot;בודד&quot;. זה יכול להיות ריבוי ליבות, ריבוי מעבדים (לא זהה), שימוש ב grid (בעברית זה פשוט לא מובן), הרצת מגוון תוכנות שעושות עבודה זהה, אשר מתקשרות ב IPC ועוד הרבה צורות ושיטות.</p>
<p>הגישה והרעיון למחשוב שכזה מקורה עד כמה שאני יודע בכלל בשנות ה70, ופותחו באותם שנים מספר שפות תכנות בנושא. הסיבה שפותחו שפות תכנות לשם כך,היא פשוטה: על מנת להגיע לצורת עבודה כזו, צריך או מערכת הפעלה שיודעת לחלק את המשאבים שלה בין מערכות שונות, או שפות/מהדרים שיודעים להפיק קוד שעושה את זה. והיה יותר קל אז ליצור שפות מאשר מערכות הפעלה שכאלו.</p>
<p>אחת השפות המוכרות והידועות ביותר בנושא היא  <a href="http://www.erlang.org/">erlang</a>. השפה נוצרה באריקסון 1986 עבור מחשוב מקבילי של טלפוניה, והיא מסוגלת לספק תכנות שמראש הוא thread safe ולכן המתכנת לא צריך להתעסק בזה, דבר שמאפשר לבזר את הפעולות שהיא עושה על מגוון מערכות/מעבדים שונים בצורה ממש שקופה. השפה עצמה היא שפה פונקציונאלית, אשר משתמשת בעיקר בפונקציות הדומות מאוד ל lambda, אבל מתנהגות מעט שונה.</p>
<p>ישנם כמה עשרות של שפות כאלו, ולאחרונה נוצרו עוד 3, כאשר האחרונה מבינהם התפרסמה השבוע בשם <a href="http://golang.org/">Go</a>. בנוסף לגוגל, גם IBM יוצרת שפה בשם <a href="http://x10.codehaus.org/">X10</a> אשר מספקת בדיוק את זה. גם אינטל לא נשארת חייבת ולוקחת את שפת C ומרחיבה אותה לשפה בשם <a href="http://techresearch.intel.com/articles/Tera-Scale/1514.htm">Ct</a>.</p>
<p>אם הייתי צריך לכתוב על כל שפה בנפרד (או בפוסט אחד) אולי אחרי שנה הייתי מצליח לכסות את הבסיס של כל שפה ושפה ולכן אני אפילו לא נכנס לזה.</p>
<p>אם לשקול את הצורה שהשוק מתקדם אליו, אנחנו הולכים לראות שליטה בקרוב של 2 פרדיגמות עבודה (אחת מהם כבר תופסת תאוצה):</p>
<p>סביבות פיתוח מרובות שפות (השימוש שבורלנד בזמנו התחילה עם דלפי, שהמשיך ל JVM ומוצרי VS של מיקרוסופט, ואפילו parrot של perl 6), בהם אנחנו נעבוד בעיקר בשפות דינמיות, בעוד שמצד המערכת יהיו שפות שיודעות לנצל משאבים מרובים, בהם הלך הרוח של השוק יתבהר רק בעתיד הרחוק יותר, למרות ש erlang התעורר מתרדמת בשנתיים שלוש האחרונות.</p>
<p>בקיצור יהיה מעניין לראות את התקדמות השוק (אם כי זה לא באמת קידמה, אלא יותר התכוונות השוק ליציבות מסויימת).</p>
Posted in טכנולוגיה, פיתוח, קוד פתוח, תכנות  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2462/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2462/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2462/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2462/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2462/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2462&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/11/12/distributed-development-the-new-trend/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>
	</item>
		<item>
		<title>בעסקי לינוקס עסקינן</title>
		<link>http://idkn.wordpress.com/2009/11/09/in-linux-buisness/</link>
		<comments>http://idkn.wordpress.com/2009/11/09/in-linux-buisness/#comments</comments>
		<pubDate>Mon, 09 Nov 2009 09:56:47 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[לינוקס]]></category>
		<category><![CDATA[עסקים]]></category>
		<category><![CDATA[קוד פתוח]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2451</guid>
		<description><![CDATA[לאחרונה יצא לי לפגוש כמה חברות בארץ אשר שקלו אם לעבוד עם לינוקס כמערכת תשתיתית לעסק שלהן, דבר שאומר שכל הגישה והמודול העסקי שלהם, כל פעילות כזו או אחרת כולה תלוייה בתשתיות של החברה.
הבעיה מתחילה בזה שאחת החברות בארץ שמשווקת הפצת לינוקס מאוד נפוצה בארץ עושה את המקסימום בשביל שאותן חברות יבחרו דווקא במוצרים המתחרים, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2451&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>לאחרונה יצא לי לפגוש כמה חברות בארץ אשר שקלו אם לעבוד עם לינוקס כמערכת תשתיתית לעסק שלהן, דבר שאומר שכל הגישה והמודול העסקי שלהם, כל פעילות כזו או אחרת כולה תלוייה בתשתיות של החברה.</p>
<p>הבעיה מתחילה בזה שאחת החברות בארץ שמשווקת הפצת לינוקס מאוד נפוצה בארץ עושה את המקסימום בשביל שאותן חברות יבחרו דווקא במוצרים המתחרים, קרי Windows.</p>
<p>זה עובד בערך בשיטה הבאה: מוכרים בזול (יחסי, כלומר באותו מחיר של המתחרה) רישוי לעבוד בהפצת הלינוקס, אבל התמיכה יקרה בערך פי 2 מזו שלהמתחרה. עכשיו חברות שמבינות משהו בעולם המחשבים ומסוגלים להביא אליהם איש טכני המבין לינוקס מראש לא ירכשו תמיכה שכזו, כי יהיה להם זול יותר להוריד הפצה דומה ולתת לאותו אדם הטכני לעבוד עליה, אבל חברות שבד&quot;כ רוכשות תמיכה, רוכשות מסיבה פשוטה -&gt; אין להם את כ&quot;א המבין בזה, והרבה פעמים זה אפילו לא העסק שלהם (כלומר מחישוב זה לא העסק, אלא רק כלי). אותן חברות עושות שיקול קר של עלות מול תועלת ומגלות שהמתחרים זולים הרבה יותר, ותמיד !</p>
<p>ואם זה לכשעצמו לא גרוע, אותה חברה זורעת איכשהו (עד עכשיו לא הבנתי איך הם עושים את זה) FUD עמוק בחברות בכל מה שלינוקס נוגע אליו וככה כאשר הם שומעים את המילה לינוקס יש להם תחושות ממש שליליות לגבי משהו שהם בכלל לא מכירים (מאוד מוכר לי גם בתחומים אחרים). וככה יש שווקים שלמים בארץ שאינם עבדו עם לינוקס אבל יש להם הרבה מאוד הבנה שלילית לגבי המערכת שלפחות 98% ממה שהם חושבים רחוק לגמרי מהמציאות.</p>
<p>אני כמובן לא מוכן לנקוב בשם החברה, אבל אם תתקלו בסיפטומים כאלו כאשר החברה בה אתם עובדים/מכירים שבחנו לינוקס, לא תהיו צריכים להיות סופר גאונים בשביל לגלות לבד מי היא.</p>
Posted in לינוקס, עסקים, קוד פתוח  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2451/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2451/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2451/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2451/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2451/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2451/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2451/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2451/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2451/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2451/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2451&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/11/09/in-linux-buisness/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>
	</item>
		<item>
		<title>תשובה לחידה</title>
		<link>http://idkn.wordpress.com/2009/11/08/answer-to-riddle/</link>
		<comments>http://idkn.wordpress.com/2009/11/08/answer-to-riddle/#comments</comments>
		<pubDate>Sun, 08 Nov 2009 09:04:31 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[firebird]]></category>
		<category><![CDATA[מסדי נתונים]]></category>
		<category><![CDATA[קוד פתוח]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2441</guid>
		<description><![CDATA[לפני שבוע הצגתי חידה, ועכשיו אספק לה תשובה (שרוב האנשים כבר יודעים אותה).
דבר ראשון, מי שמכיר את Firebird הצליח לנחש שמדובר בחלק מטריגר. במקרה הזה הטריגר מתבצע בעת הוספת רשומה.
הקוד מבצע סדרה חשבונית (סדרה הנדסית, או איזה שם אחר שתרצו לספק) אשר מחזירה על כל פעם שהיא רצה את הערך הבא:
הערך הקודם פלוס הערך הקודם [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2441&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>לפני שבוע <a href="http://idkn.wordpress.com/2009/11/01/riddle-what-does-the-following-code-do/">הצגתי</a> חידה, ועכשיו אספק לה תשובה (שרוב האנשים כבר יודעים אותה).</p>
<p>דבר ראשון, מי שמכיר את Firebird הצליח לנחש שמדובר בחלק מטריגר. במקרה הזה הטריגר מתבצע בעת הוספת רשומה.</p>
<p>הקוד מבצע סדרה חשבונית (סדרה הנדסית, או איזה שם אחר שתרצו לספק) אשר מחזירה על כל פעם שהיא רצה את הערך הבא:</p>
<p>הערך הקודם פלוס הערך הקודם ושומרת אותו ב sequence בתור הערך הבא. כל זה, כל עוד הערך הוא לא 0 או ריק, כי אז הsequence מכיל את הערך 1.</p>
<p>התוצאה הסופית היא סדרה כזו: 1, 2, 4, 8, 16, 32, 64, 128, 512, 1024 &#8230; (דיברתי על 10 הערכים הראשונים).</p>
<p>הפעולה מתבצעת כאמור על ידי פעולת <strong>חיבור</strong> ולא כפל או חזקה (דיאגו).</p>
<p>במקרה הזה כמו שאפשר לראות, השתמשתי בID (כלומר האינדקס) של הטבלה בשביל להכיל את זה, אבל באותה מידה היה אפשר להכיל את זה על כל שדה מספרי אחר.</p>
<p>השימוש ב GEN_ID מספק את הדרך היחידה לגשת ל sequence בגלל שהsequnce חייב להיות מוגן מפני שינויים רנדומליים ורק שינויים שהתכוונו אליהם חייבים להתבצע בצורה שהיא transaction safe, כך שכל טרנזאקציה תוכל לספק ערך חד חד ערכי בלי קשר לשאר החיבורים והטרנזאקציות האחרות בנושא. זו אחת מהדרישות של מבחן ה <a href="http://en.wikipedia.org/wiki/ACID">ACID</a> עבור מסדי נתונים, וכאמור Firebird עובר בציון של 100 את המבחן. הפונקציה ד&quot;א מעלה את הערך של ה sequence בכמות שאנחנו מספקים לה בפרמטר השני, כך שאם הערך הוא 0, זה בסה&quot;כ מחזיר את הערך של sequence ולא מבצע פעולת חיבור.</p>
<p>הסיבה שבחרתי דווקא באינדקס כזה ולא באינדקס שהוא מספר בסדר עולה, וכן שימוש בעוד שדה שהוא יכיל את הערך החד חד ערכי, הוא מאוד פשוט. זהו ערך חד חד ערכי שלפיו אני מחפש דברים, ואין לי צורך בעוד נתונים (או מפתחות) בשביל לחפש את הערך הזה, ולכן אין צורך ליצור אינדקס בסדר עולה (או יורד).</p>
Posted in firebird, מסדי נתונים, קוד פתוח  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2441/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2441/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2441/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2441/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2441/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2441/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2441/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2441/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2441/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2441/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2441&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/11/08/answer-to-riddle/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>
	</item>
		<item>
		<title>מבחני ביצועים ל MySQL, PostgreSQL ו Firebird</title>
		<link>http://idkn.wordpress.com/2009/11/07/mysql-postgresql-%d7%95-firebird-benchmark/</link>
		<comments>http://idkn.wordpress.com/2009/11/07/mysql-postgresql-%d7%95-firebird-benchmark/#comments</comments>
		<pubDate>Sat, 07 Nov 2009 20:13:09 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[מסדי נתונים]]></category>
		<category><![CDATA[קוד פתוח]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2438</guid>
		<description><![CDATA[לאחרונה נעשו מבחני ביצועים לFirebird מול 2 מסדי הנתונים האחרים.
בשורה התחתונה, גרסה 2.5 של Firebird בלינוקס מאוד מהירה ויעילה, אבל רק אם משתמשים במערכת הקבצים XFS, בעוד שבמערכת הקבצים Ext3 הוא מאוד לא יעיל.
את המצגת עם ההסבר המלא, ניתן למצוא כאן.
Posted in מסדי נתונים, קוד פתוח       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2438&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>לאחרונה נעשו מבחני ביצועים לFirebird מול 2 מסדי הנתונים האחרים.</p>
<p>בשורה התחתונה, גרסה 2.5 של Firebird בלינוקס מאוד מהירה ויעילה, אבל רק אם משתמשים במערכת הקבצים XFS, בעוד שבמערכת הקבצים Ext3 הוא מאוד לא יעיל.</p>
<p>את המצגת עם ההסבר המלא, ניתן למצוא <a href="http://firebird-ro.googlegroups.com/web/Firebird2.5%20Benchmarks%28English%2920091031.odp?pli=1">כאן</a>.</p>
Posted in מסדי נתונים, קוד פתוח  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2438/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2438/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2438/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2438/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2438/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2438/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2438/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2438/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2438/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2438/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2438&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/11/07/mysql-postgresql-%d7%95-firebird-benchmark/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>
	</item>
		<item>
		<title>עבודה עם xmlrpc ברובי</title>
		<link>http://idkn.wordpress.com/2009/11/04/working-with-xmlrpc-in-ruby/</link>
		<comments>http://idkn.wordpress.com/2009/11/04/working-with-xmlrpc-in-ruby/#comments</comments>
		<pubDate>Wed, 04 Nov 2009 20:48:47 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[Ruby]]></category>
		<category><![CDATA[כללי]]></category>
		<category><![CDATA[קוד פתוח]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2429</guid>
		<description><![CDATA[רובי מגיע עם ספריית xmlrpc &#34;מובנת&#34;, אשר מותקנת כחלק מהתקנת רובי &#34;תיקנית&#34;. כלל הדוגמאות ברשת מספקות מידע איך להשתמש בספרייה רק בדרך אחת שבה אנחנו יודעים מראש את סדר הפרמטרים ולכן אין שימוש בשם של כל פרמטר.
הבעיה שלי היתה, שיש לי spec אשר מדבר על כך שאני מעביר פרמטרים עם שם, ושום דוגמא ברשת לא [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2429&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>רובי מגיע עם ספריית xmlrpc &quot;מובנת&quot;, אשר מותקנת כחלק מהתקנת רובי &quot;תיקנית&quot;. כלל הדוגמאות ברשת מספקות מידע איך להשתמש בספרייה רק בדרך אחת שבה אנחנו יודעים מראש את סדר הפרמטרים ולכן אין שימוש בשם של כל פרמטר.</p>
<p>הבעיה שלי היתה, שיש לי spec אשר מדבר על כך שאני מעביר פרמטרים עם שם, ושום דוגמא ברשת לא הראתה לי איך לעשות את זה, עד שמצאתי דווקא בפרל איך לעשות את זה עם XMLRPC::Lite ואז ניסיתי על רובי וזה עבד.</p>
<p>הדוגמאות הרגילות מציגות את זה בצורה הבאה:</p>
<div dir="ltr"><code>require 'xmlrpc/client'<br />
server = XMLRPC::Client.new('127.0.0.1', '/', 80)<br />
server.call('test',  'a','b')</code></div>
<p>אבל בשביל &quot;שם&quot; ו&quot;ערך&quot; אנחנו צריכים להשתמש בזה בצורה הבאה:</p>
<div dir="ltr"><code>require 'xmlrpc/client'<br />
server = XMLRPC::Client.new('127.0.0.1', '/', 80)<br />
server.call('test', { 'a' =&gt; 'b'})</code></div>
<p>אני מקווה שזה יעזור לעוד אנשים.</p>
Posted in Ruby, כללי, קוד פתוח  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2429/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2429/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2429/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2429/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2429/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2429/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2429/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2429/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2429/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2429/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2429&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/11/04/working-with-xmlrpc-in-ruby/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>
	</item>
		<item>
		<title>תודה ללזרוס שהביאני עד הלום</title>
		<link>http://idkn.wordpress.com/2009/11/03/thanks-for-lazarus/</link>
		<comments>http://idkn.wordpress.com/2009/11/03/thanks-for-lazarus/#comments</comments>
		<pubDate>Tue, 03 Nov 2009 20:09:20 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[Lazarus]]></category>
		<category><![CDATA[firebird]]></category>
		<category><![CDATA[קוד פתוח]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2425</guid>
		<description><![CDATA[מזה זמן רב שאני מנסה ליצור מעין תוכנת crm קטנה עבור שימושי הפרטי שיעזור לי (וללקוחות שלי) לעקוב טוב יותר אחר הזמן שאני מקדיש להם.
אתמול פשוט נמאס לי לנסות לעבוד בגישת web אחרי שנתקלתי בכל כך הרבה בעיות שונות ומשונות (שאין לי רצון לדבר עליהם כבר מרוב יאוש), אז פניתי חזרה לשיטה שאני מאוד אוהב [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2425&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>מזה זמן רב שאני מנסה ליצור מעין תוכנת crm קטנה עבור שימושי הפרטי שיעזור לי (וללקוחות שלי) לעקוב טוב יותר אחר הזמן שאני מקדיש להם.</p>
<p>אתמול פשוט נמאס לי לנסות לעבוד בגישת web אחרי שנתקלתי בכל כך הרבה בעיות שונות ומשונות (שאין לי רצון לדבר עליהם כבר מרוב יאוש), אז פניתי חזרה לשיטה שאני מאוד אוהב והיא שיטת ה RAD.</p>
<p>לקח לי בחצי שעה ליצור חיבור (כמעט לגמרי גנרי) למסד נתונים (firebird במקרה שלי) וליצור מסך שמכיל תמיכה בצפייה בכל הרשומות, עריכה/הוספה/מחיקה/עדכון של רשומות וסתם ריענון מידע.</p>
<p>למעט שורת select אחת (נשאר לי עוד ליצור שורות של update, insert ו delete), אין לי ולו שורת קוד אחת שכתבתי, ועדיין יש לי ממשק גרפי שמאפשר לי את כל זה !</p>
<p>החצי שעה שלקח לי, הוקדשה חלקה הגדול לחשיבה איך אני רוצה להציג את המידע ולערוך אותו, ורק 10 דקות מתוך החצי שעה הוקדש לפיזית יצירת המסך וכתיבת שאילתת ה select.</p>
<p>כמו כן, יש לי גם כפתור לסגור את המסך, שגם הוא לא דורש ממני לכתוב שורת קוד אחת, אלא רק לדעת איך לעבוד נכון עם TActionList אשר עושה את העבודה בשבילי (כולל לקחת את התמונה של סגירה מהמערכת, הגדרה בכפתור האם להתנהג לפי המערכת או לא (בהצגת הצלמית) ).</p>
<p>לא אכפת לי שאנשים מתעלמים מהכלי הזה ומעדיפים לעבוד מאוד קשה. רק לאחרונה קרה לי שתוכנה שהתקנתי במנהל החבילות, הכילה באג והקובץ glade לא נכלל בחבילה ועכשיו אני לא יכול לעבוד עם התוכנה בגלל זה. אצלי בלזרוס זה לא קורה <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>אז אם אתם כל כך רוצים תמשיכו להתעלם מהכלי המדהים הזה ולעבוד קשה הרבה יותר ממה שבניית תוכנות אמורה להיות, לי זה ממש לא אכפת, אני בניגוד אליכם יותר פרודקטיבי בשל כך.</p>
Posted in firebird, Lazarus, קוד פתוח  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2425/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2425/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2425/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2425/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2425/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2425/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2425/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2425/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2425/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2425/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2425&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/11/03/thanks-for-lazarus/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>
	</item>
		<item>
		<title>חידה: מה עושה הקוד הבא ?</title>
		<link>http://idkn.wordpress.com/2009/11/01/riddle-what-does-the-following-code-do/</link>
		<comments>http://idkn.wordpress.com/2009/11/01/riddle-what-does-the-following-code-do/#comments</comments>
		<pubDate>Sun, 01 Nov 2009 16:26:28 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[firebird]]></category>
		<category><![CDATA[קוד פתוח]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2421</guid>
		<description><![CDATA[יצרתי את הקוד הבא במסד נתונים שלי שעובד עם Firebird SQL, מה הקוד עושה ? למה נבחרה הגישה הזו בשביל לממש את הקוד ואילו תשובות אקבל בהזנת 10 ערכים ראשונים למסד הנתונים עם הקוד הזה ?
IF ((NEW.ID IS NULL) OR (NEW.ID = 0)) THEN
NEW.ID = GEN_ID(GEN_PERMISSIONS_ID, 1);
ELSE
NEW.ID = GEN_ID(GEN_PERMISSIONS_ID, GEN_ID(GEN_PERMISSIONS_ID, 0));
במידה ולא תפתרו את החידה [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2421&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>יצרתי את הקוד הבא במסד נתונים שלי שעובד עם Firebird SQL, מה הקוד עושה ? למה נבחרה הגישה הזו בשביל לממש את הקוד ואילו תשובות אקבל בהזנת 10 ערכים ראשונים למסד הנתונים עם הקוד הזה ?</p>
<div dir="ltr"><code>IF ((NEW.ID IS NULL) OR (NEW.ID = 0)) THEN<br />
NEW.ID = GEN_ID(GEN_PERMISSIONS_ID, 1);<br />
ELSE<br />
NEW.ID = GEN_ID(GEN_PERMISSIONS_ID, GEN_ID(GEN_PERMISSIONS_ID, 0));</code></div>
<p>במידה ולא תפתרו את החידה כאן, אענה עליה בשבוע הבא <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
Posted in firebird, קוד פתוח  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2421/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2421/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2421/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2421/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2421/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2421/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2421/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2421/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2421/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2421/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2421&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/11/01/riddle-what-does-the-following-code-do/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>
	</item>
		<item>
		<title>טעויות מתקנים &#8230;</title>
		<link>http://idkn.wordpress.com/2009/11/01/fixing-mistakes/</link>
		<comments>http://idkn.wordpress.com/2009/11/01/fixing-mistakes/#comments</comments>
		<pubDate>Sun, 01 Nov 2009 09:07:15 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[קוד פתוח]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2416</guid>
		<description><![CDATA[ביום חמישי האחרון קיבלתי דוא&#34;ל קצת זועם, קצת מאוכזב על כך שספריית קוד פתוח שיצרתי לה binding מכילה הדגמה כיצד להשתמש בה, אבל ללא רישיון כלשהו בקוד המקור, דבר שגורם לכך שאסור לגעת בקוד.
זה די מדהים שב3 שנים מאז ששיחררתי את הספרייה, שפונים אלי בקשר לרישיון, ומצד שני מראה שעדיין יש אנשים שבאמת מנסים להבין [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2416&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>ביום חמישי האחרון קיבלתי דוא&quot;ל קצת זועם, קצת מאוכזב על כך שספריית קוד פתוח שיצרתי לה binding מכילה הדגמה כיצד להשתמש בה, אבל ללא רישיון כלשהו בקוד המקור, דבר שגורם לכך שאסור לגעת בקוד.</p>
<p>זה די מדהים שב3 שנים מאז ששיחררתי את הספרייה, שפונים אלי בקשר לרישיון, ומצד שני מראה שעדיין יש אנשים שבאמת מנסים להבין רישוי תוכנה ולא מוכנים להגיע למצב בו מה שהם נוגעים בו מכיל חוסר וודאות.</p>
<p>עשיתי טעות. למרות שכל הספרייה (לפחות ה binding ) מוכרז כ LGPL, דווקא בתוכנת ההדגמה שכולה שלי, לא הוכנס רישיון בכלל ולכן כאשר יהיה לי קצת זמן השבוע, אתקן את הנעשה. בנתיים סיפקתי לאותו אדם אישור בדוא&quot;ל, שכוונת המתכנת היא להשתמש ברישיון LGPL כמו שאר הקוד בספרייה, והוא מוזמן לראות בתשובת הדוא&quot;ל שלי כאישור לכך לשימוש שלו, וזה לא במקום הוספת הרישוי המתאים לקובץ.</p>
<p>אני יכול לדבר כאן שיש המון חברות ואנשים שמורידים דברים שאני עושה בפסקל מהאתר שלי ופונים אלי, אחת לרבעון לפחות בנושא, ואולי לגרום לאנשים להבין שלמרות שהם החליטו שפסקל מתה, המציאות מוכיחה אחרת (מספיק שיש פעם בחודש גידול של לפחות 10 אנשים חדשים ברשימת הדיוור של FPC ולפחות 20 איש חדשים בלזרוס בחודש, בקצב מתגבר, ולא אנשים שמחליפים (מבחינת מיקום), בשביל להוכיח את זה, אבל למה להאבק בבורות כאנשים מנסים להגיב כמו 3 הקופים ?).</p>
Posted in קוד פתוח  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2416/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2416/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2416/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2416/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2416/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2416/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2416/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2416/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2416/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2416/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2416&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/11/01/fixing-mistakes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>
	</item>
		<item>
		<title>ושוב האופיס הזה &#8230;</title>
		<link>http://idkn.wordpress.com/2009/10/28/%d7%95%d7%a9%d7%95%d7%91-%d7%94%d7%90%d7%95%d7%a4%d7%99%d7%a1-%d7%94%d7%96%d7%94/</link>
		<comments>http://idkn.wordpress.com/2009/10/28/%d7%95%d7%a9%d7%95%d7%91-%d7%94%d7%90%d7%95%d7%a4%d7%99%d7%a1-%d7%94%d7%96%d7%94/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 23:08:31 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[Microsoft Office]]></category>
		<category><![CDATA[Office]]></category>
		<category><![CDATA[עסקים]]></category>
		<category><![CDATA[קוד פתוח]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2404</guid>
		<description><![CDATA[בימים אלו, אני עובר קורס שמלמד אותי יותר טוב איך לנהל עסק, וקיבלתי אתמול דיסק עם כל המצגות של הקורס.
רציתי לראות את המצגות שכבר הועברו, אבל נתקלתי בבעיה. הבעיה היא שכמובן מדובר במצגות מבית Microsoft Office. למרות שיש לי OpenOffice 3.1.1, אשר יודע לעבוד די טוב עם מצגות מבית אופיס של מיקרוסופט, במידה ונועלים לי [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2404&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>בימים אלו, אני עובר קורס שמלמד אותי יותר טוב איך לנהל עסק, וקיבלתי אתמול דיסק עם כל המצגות של הקורס.</p>
<p>רציתי לראות את המצגות שכבר הועברו, אבל נתקלתי בבעיה. הבעיה היא שכמובן מדובר במצגות מבית Microsoft Office. למרות שיש לי OpenOffice 3.1.1, אשר יודע לעבוד די טוב עם מצגות מבית אופיס של מיקרוסופט, במידה ונועלים לי את המצגת בסיסמה מפני שינויים (באופיס 2007), אני לא יכול לפתוח אותה בכלל !</p>
<p>למה לא להשתמש במערכת כמו OpenOffice ולסיים עניין ?!</p>
<p>אני יודע, התשובה היא ש&quot;כולם עובדים עם Microsot Office&quot;, אבל אף אחד לא מדבר שאפילו הם לא מסוגלים להתמודד עם כל גרסה חדשה שיוצאת אם הם לא משדרגים את הגרסה הישנה שלהם, כך שמשתמשי Microsoft Office נמצאים ביותר בעיות ממני בנושא.</p>
<p>והמקור לכותרת שלי, הוא השיר &quot;<a href="http://www.dantoren.com/chords/dant_sheker.html">שוב השקר הזה</a>&quot; של <a href="http://www.dantoren.com/">דן תורן</a>, ואפשר להנות מהשיר <a href="http://www.heep.co.il/heep/media/38230">כאן</a>.</p>
Posted in Microsoft Office, Office, עסקים, קוד פתוח  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2404/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2404/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2404/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2404/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2404/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2404/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2404/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2404/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2404/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2404/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2404&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/10/28/%d7%95%d7%a9%d7%95%d7%91-%d7%94%d7%90%d7%95%d7%a4%d7%99%d7%a1-%d7%94%d7%96%d7%94/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>
	</item>
		<item>
		<title>שרת סופר קלאסי</title>
		<link>http://idkn.wordpress.com/2009/10/21/super-classic-server/</link>
		<comments>http://idkn.wordpress.com/2009/10/21/super-classic-server/#comments</comments>
		<pubDate>Wed, 21 Oct 2009 11:34:07 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[firebird]]></category>
		<category><![CDATA[קוד פתוח]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2391</guid>
		<description><![CDATA[כמו שכמה מקוראי יודעים, מסד הנתונים של firebird מכיל 3 צורות גישה למסד הנתונים:

גישת embedded &#8211; יש ספרייה משותפת שמקושרים אליה והיא אחראית על הדיבור עם מסד(י) הנתונים, והקוד שלנו נשאר זהה לחלוטין
גישת שרת קלאסי &#8211; בנייה של שרת מבוסס תהליכים המתקשרים דרך ipc
גישרת סופר שרת &#8211; שרת אחד שמאזין ומקבל בקשות ממש כמו מרבית [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2391&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>כמו שכמה מקוראי יודעים, מסד הנתונים של firebird מכיל 3 צורות גישה למסד הנתונים:</p>
<ol>
<li>גישת embedded &#8211; יש ספרייה משותפת שמקושרים אליה והיא אחראית על הדיבור עם מסד(י) הנתונים, והקוד שלנו נשאר זהה לחלוטין</li>
<li>גישת שרת קלאסי &#8211; בנייה של שרת מבוסס תהליכים המתקשרים דרך ipc</li>
<li>גישרת סופר שרת &#8211; שרת אחד שמאזין ומקבל בקשות ממש כמו מרבית שרתי מסדי הנתונים למינהם</li>
</ol>
<p>החל מגרסה 2.5 אנחנו הולכים לראות הרבה שינויי התנהגות בfirebird, היות והוא הולך לקבל תמיכה טובה יותר (ששוכתבה כמעט לגמרי) בתהליכים, בהם גם תמיכה בריבוי ליבות ומעבדים (כולל שליטה איזה מעבד ספציפי יהיה אחראי על עיבוד העבודה של מסד הנתונים), וזו רק התחלה שתגיע לשיאה בגרסה 3 של מסד הנתונים.<span id="more-2391"></span></p>
<p>בין התוספות של 2.5 (ויש הרבה תוספות ושינויים), נוסף עוד שרת בשם &quot;שרת סופר קלאסי&quot;. השרת נבנה עבור מעבדי 64 ביט (היות והשימוש בו ב32 ביט אינו יעיל בעליל, תכף אנסה להסביר אותו לעומק ותבינו יותר), ומאפשר הכלאה בין שרת קלאסי לסופר שרת.</p>
<p>השרת החדש מכיל  תכונות מעורבבות מבין 2 השרתים השונים, כדוגמת עבודה עם תהליך אחד (בניגוד לשרת הקלאסי), כאשר המשתמשים מקושרים אליו בחוטים. ומנגד כל תקשורת של משתמשים מבוצעת תחת thread pool, אך להבדיל מהסופר שרת, השרת סופר קלאסי מחזיק מטמון פר חיבור ממש כמו השרת הקלאסי,דבר שאומר שהוא דורש יותר זיכרון.</p>
<p>השרת סופר קלאסי דורש פחות משאבים מהקרנל של מערכת ההפעלה, מה שאומר שניתן להגדיל את מספר החיבורים בו זמנית אליו. הוא מהיר יותר בתגובות שלו, בגלל שהוא אינו תלוי בIPC, ומשתמש בתקשורת פנימית בינו לבין עצמו, וכן השימוש בהגדרות האבטחה נעשות עבור כל החיבורים מנקודה אחת במקום מנקודות מבוזרות. השרת גם יכול לכבות את עצמו בצורה טובה יותר מאשר השרת הקלאסי, ולנתק בצורה יעילה יותר את החיבורים אליו. אפשר לעקוב אחרי החיבורים השונים אל השרת עצמו.</p>
<p>לשרת החדש יש אבל גם צדדים פחות חיוביים, כדוגמת צריכת זיכרון גבוהה ויעילה פחות מאשר הסופר שרת, נעילת הטבלאות דורשות כיוונונים עדינים בשל העבודה עם דפים, ממש כמו השרת הקלאסי. קריסת השרת אומרת שכל החיבורים אליו מתנתקים (כמו הסופר שרת) ובגלל שיש ב32 ביט הגבלה של 2 טרות בגודל הדפים, הוא אינו יעיל בסביבה שכזו.</p>
<p>במערכות POSIX (כלומר כל מה שהוא לא Windows  פחות או יותר), יש קובץ ריצה חדש בשם fb_smp_server אשר מפעיל את השרת החדש.</p>
<p>בWindows, קובץ הריצה הוא fb_inet_server.exe (אותו קובץ ריצה של השרת הקלאסי), והוא צריך לרוץ עם שורת פקודה m- אשר אומרת multi threaded.</p>
Posted in firebird, קוד פתוח  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2391/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2391/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2391/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2391/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2391/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2391&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/10/21/super-classic-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>
	</item>
		<item>
		<title>מוקו הסרבני</title>
		<link>http://idkn.wordpress.com/2009/10/20/moko-refuse/</link>
		<comments>http://idkn.wordpress.com/2009/10/20/moko-refuse/#comments</comments>
		<pubDate>Tue, 20 Oct 2009 08:34:17 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[OpenMoko]]></category>
		<category><![CDATA[טכנולוגיה]]></category>
		<category><![CDATA[קוד פתוח]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2386</guid>
		<description><![CDATA[כבר זמן מה שאני רק נתקל בבעיות עם OpenMoko, בהתחלה היה זה SIM שלא זוהה בכלל, למרות שניסיתי כמה SIM של אנשים שונים, אח&#34;כ אחרי שהחלפתי כרטיס SIM שהחליט לעשות לי בעיות גם בטלפון הרגיל (אנשים שולחים לי מייל שאני לא זמין למרות שהטלפון שלי פתוח ונמצא לידי עם קליטה מלאה), פתאום המוקו החליט להכיר [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2386&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>כבר זמן מה שאני רק נתקל בבעיות עם OpenMoko, בהתחלה היה זה SIM שלא זוהה בכלל, למרות שניסיתי כמה SIM של אנשים שונים, אח&quot;כ אחרי שהחלפתי כרטיס SIM שהחליט לעשות לי בעיות גם בטלפון הרגיל (אנשים שולחים לי מייל שאני לא זמין למרות שהטלפון שלי פתוח ונמצא לידי עם קליטה מלאה), פתאום המוקו החליט להכיר בכל SIM שנכנס אליו (לא ראיתי בספק שהוא גם קורא מחשבות&#8230; בכלל לא ראיתי ש<a href="http://telepathy.freedesktop.org/wiki/">טלפטיה</a> או <a href="http://live.gnome.org/Empathy">אמפטיה</a> מותקנים אצלו&#8230; נו טוב). אחרי שעברתי את המסוכה הזו, רציתי להתקין את SHR מחדש. טעות !</p>
<p>פתאום המוקו החליט שכרטיסי זיכרון הם מחוץ לתחום של מוקו, ואני שובר את הראש כל פעם להבין מה לא בסדר. העניין הוא שגם בגרסה שצרובה למכשיר, שלא לדבר על כל מנהל אתחול שקיים (בNOR ובNAND, שזה אומר שניסיתי את Qi ואת u-Boot) לא מצליח להבין שיש לו כרטיס זיכרון. זה לפחות עד ל12 בלילה היום. החלטתי לעשות ניסוי, אחרי שנשיפות מאוד חזקות לנקות את החריצי קריאה לא עזרו, ניגבתי אותם במטלית חלקה ונקייה, וזה נראה שעשה את העבודה.</p>
<p>המוקו הזה הוא מכשיר בוגדני, מספיק שיש בעיה הכי קטנה ואתה תזהה אותה הרבה לפני כל מערכת אחרת&#8230; מה קרה לתקופות בהם רק שהדברים באמת הגיעו למצב של מוות שאפילו נתיחה אחרי המוות לא תסביר את הבעיה ? למה הם לוקחים מאיתו את הכיף בלא להבין מה קורה איתנו ?!</p>
Posted in OpenMoko, טכנולוגיה, קוד פתוח  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2386/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2386/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2386/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2386/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2386/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2386/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2386/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2386/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2386/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2386/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2386&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/10/20/moko-refuse/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>
	</item>
		<item>
		<title>דרוש: כבל C2T</title>
		<link>http://idkn.wordpress.com/2009/10/18/%d7%93%d7%a8%d7%95%d7%a9-%d7%9b%d7%91%d7%9c-c2t/</link>
		<comments>http://idkn.wordpress.com/2009/10/18/%d7%93%d7%a8%d7%95%d7%a9-%d7%9b%d7%91%d7%9c-c2t/#comments</comments>
		<pubDate>Sun, 18 Oct 2009 09:00:26 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[קהילה]]></category>
		<category><![CDATA[קוד פתוח]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2382</guid>
		<description><![CDATA[נפל לחיקי שרת eServer xSeries 330 של IBM משומש (ובתקווה במצב טוב). אני מאוד מעוניין לבדוק אותו, הבעיה היא שהוא דורש כבל מיוחד בשביל לחבר אליו מקלדת, עכבר ומסך.
שם הכבל הוא C2T. האם יש מישהו בין הקוראים שיש לו כבל כזה שהוא לא צריך (ועובד כמובן) ומוכן לעזור לי ?
תודה,
עידו
Posted in קהילה, קוד פתוח  [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2382&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>נפל לחיקי שרת eServer xSeries 330 של IBM משומש (ובתקווה במצב טוב). אני מאוד מעוניין לבדוק אותו, הבעיה היא שהוא דורש כבל מיוחד בשביל לחבר אליו מקלדת, עכבר ומסך.</p>
<p>שם הכבל הוא C2T. האם יש מישהו בין הקוראים שיש לו כבל כזה שהוא לא צריך (ועובד כמובן) ומוכן לעזור לי ?</p>
<p>תודה,</p>
<p>עידו</p>
Posted in קהילה, קוד פתוח  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2382/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2382/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2382/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2382/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2382/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2382/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2382/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2382/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2382/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2382/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2382&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/10/18/%d7%93%d7%a8%d7%95%d7%a9-%d7%9b%d7%91%d7%9c-c2t/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>
	</item>
		<item>
		<title>ככה מדווחים באג</title>
		<link>http://idkn.wordpress.com/2009/10/16/thats-how-we-should-report-bugs/</link>
		<comments>http://idkn.wordpress.com/2009/10/16/thats-how-we-should-report-bugs/#comments</comments>
		<pubDate>Fri, 16 Oct 2009 14:55:20 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[firebird]]></category>
		<category><![CDATA[קוד פתוח]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2372</guid>
		<description><![CDATA[בחודש שעבר נשלח באג בקשר ל flamerobin. דיווח הבאג התבצע בצורה יוצאת דופן: דרך YouTube.
הבאג מצולם בווידאו עם קריינות אשר מנסה להסביר את הבעיה, ומי יודע, אולי זו התחלה של דיווח באגים טובה יותר  
את הבאג עצמו, אפשר למצוא כאן.
מקור: FlameRobin
Posted in firebird, קוד פתוח       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2372&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>בחודש שעבר נשלח באג בקשר ל <a href="http://idkn.wordpress.com/2008/09/30/flame-robin/">flamerobin</a>. דיווח הבאג התבצע בצורה יוצאת דופן: דרך YouTube.</p>
<p>הבאג מצולם בווידאו עם קריינות אשר מנסה להסביר את הבעיה, ומי יודע, אולי זו התחלה של דיווח באגים טובה יותר <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>את הבאג עצמו, אפשר למצוא <a href="http://www.youtube.com/watch?v=dOXl5uEkTko">כאן</a>.</p>
<p>מקור: <a href="http://flamerobin.blogspot.com/2009/10/best-flamerobin-bugreport-ever.html">FlameRobin</a></p>
Posted in firebird, קוד פתוח  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2372/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2372/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2372/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2372/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2372/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2372/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2372/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2372/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2372/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2372/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2372&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/10/16/thats-how-we-should-report-bugs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>
	</item>
		<item>
		<title>לזרוס 0.9.28 יצא &#8230;</title>
		<link>http://idkn.wordpress.com/2009/10/07/%d7%9c%d7%96%d7%a8%d7%95%d7%a1-0-9-28-%d7%99%d7%a6%d7%90/</link>
		<comments>http://idkn.wordpress.com/2009/10/07/%d7%9c%d7%96%d7%a8%d7%95%d7%a1-0-9-28-%d7%99%d7%a6%d7%90/#comments</comments>
		<pubDate>Wed, 07 Oct 2009 18:50:21 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[Lazarus]]></category>
		<category><![CDATA[קוד פתוח]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2356</guid>
		<description><![CDATA[לזרוס גרסה 0.9.28 יצא לאחרונה (נכון לכתיבת פוסט זה עוד לא יצאה ההכרזה הרשמית, עדיין יש כמה דברים שצריכים להיסגר בפרוייקט לשם הכרזה רשמית) והנה מקצת מהדברים שהגרסה הזו מספקת לנו:
שינויים בLCL:

ברירת המחדל של הממשק בלינוקס היא (סוף כל סוף) GTK 2
העבודה על Windows CE מביאה איתה מימוש של עוד רכיבים
המימוש של רכיבים ל Windows [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2356&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>לזרוס גרסה 0.9.28 יצא לאחרונה (נכון לכתיבת פוסט זה עוד לא יצאה ההכרזה הרשמית, עדיין יש כמה דברים שצריכים להיסגר בפרוייקט לשם הכרזה רשמית) והנה מקצת מהדברים שהגרסה הזו מספקת לנו:</p>
<p>שינויים בLCL:</p>
<ul>
<li>ברירת המחדל של הממשק בלינוקס היא (סוף כל סוף) GTK 2</li>
<li>העבודה על Windows CE מביאה איתה מימוש של עוד רכיבים</li>
<li>המימוש של רכיבים ל Windows Vista ו 7 שוכתב בשביל לתקן בעיות</li>
<li>נוסף רכיב של TFrame</li>
<li>שוכתבה התמיכה ל TPen ונוספו לה עוד אפשרויות</li>
<li>מרבית התכונות של פקדים מכילים כיום ערכים בברירת מחדל, דבר שמקטין את גודל קבצי ה lfm</li>
<li>נוספה תמיכה לעבודה עם ריבוי צגים באמצעות המחלקה TMonitor</li>
<li>שיכתוב של בסיס הרכיבים עזר להקטין את גודל התוכנה בין 15 ל 18 אחוזים (תלוי בממשק הגרפי)</li>
<li>בWindows נוספה תמיכה ב5 כפתורי עכבר</li>
</ul>
<p>שינויים ב IDE:<span id="more-2356"></span></p>
<ul>
<li>הגדרות והאפשרויות בסביבה אוחדו למסך אחד, ונוסף API בשביל לספק תמיכה בתוספות צד שלישי בנושא</li>
<li>התמיכה ב jitform הוסרה</li>
<li>ניתן לוהסיף צלמית ברירת מחדל לפרוייקט</li>
<li>בWindows המידע שנשמר בקובץ rc אוחד לקובץ אחד</li>
<li>ניתן ליצור מחדש קבצי lrs ולמקם אותם בספריית הפלט , ובכך אין צורך לשמור את הקבצים בVCS</li>
<li>נוספו עוד טאגים לשליטה במהדר</li>
<li>העורך טקסט עבר מתיחת פנים רצינית עם הרבה אפשרויות חדשות:
<ul>
<li>תמיכה ב Unicode כולל עבודה  עם תווים מרובי בתים</li>
<li>שוליים מותאמות אישית</li>
<li>תצוגה של שינויים שנעשו בשורה (התצוגה נמצאת בשוליים)</li>
<li>תמיכה טובה יותר בצביעה מותאמת אישית</li>
<li>תמיכה טובה יותר בקיפול קוד (code folding):
<ul>
<li>תמיכה ב $region</li>
<li>אפשר לקבוע שיותר פריטים יכולים לקבל קיפול</li>
<li>תמיכה בהעתקה והדבקה של טקסט מקופל</li>
<li>מירה של מצב הקיפול בsession</li>
</ul>
</li>
<li>תמיכה בהגדרות התנהגות עכבר במצבים שונים</li>
<li>תמיכה בצביעת הצמד של begin ו end המתאימים וכל טקסט/סימול שנבחר בכל מקום הנגלה לעין שבו הוא מופיע</li>
<li><a href="http://wiki.lazarus.freepascal.org/New_IDE_features_since#Code_Templates_with_macro_.24Param">תמיכה במאקרו עבור השלמות CTRL+J</a></li>
<li><a href="http://wiki.lazarus.freepascal.org/New_IDE_features_since#Syncron-Edit">שינוי משתנים בצורה מסונכרנת בזמן שכתוב השם</a></li>
<li>אפשרות להגדיר להחביא את הסמן עכבר בזמן כתיבת קוד</li>
<li>אפשרות לסגור טאבים עם לחצן אמצעי</li>
</ul>
</li>
</ul>
<p>ישנם עוד הרבה שינויים ותוספות ל IDE ואתם מוזמנים למצוא את כולם <a href="http://wiki.lazarus.freepascal.org/Lazarus_0.9.28_release_notes">כאן</a>.</p>
<p>דוגמאות גרפיות לחלק מהשינוים ניתן למצוא <a href="http://wiki.lazarus.freepascal.org/New_IDE_features_since">כאן</a>.</p>
<p>להורדת הגרסה החדשה, ניתן ללחוץ <a href="http://sourceforge.net/projects/lazarus/files/">כאן</a>.</p>
<p>הערה אישית: לדעתי זו הגרסה הכי טובה של לזרוס שיצאה אי פעם, ואני לא מכיר הרבה עורכי טקסט/סביבות עבודה משולבות שמכילות את מרבית השינויים והתוספות שנוספו ללזרוס.</p>
Posted in Lazarus, קוד פתוח  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2356/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2356/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2356/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2356/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2356/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2356/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2356/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2356/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2356/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2356/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2356&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/10/07/%d7%9c%d7%96%d7%a8%d7%95%d7%a1-0-9-28-%d7%99%d7%a6%d7%90/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>
	</item>
		<item>
		<title>CodeTyphon</title>
		<link>http://idkn.wordpress.com/2009/10/06/codetyphon/</link>
		<comments>http://idkn.wordpress.com/2009/10/06/codetyphon/#comments</comments>
		<pubDate>Tue, 06 Oct 2009 09:45:36 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[FPC]]></category>
		<category><![CDATA[Lazarus]]></category>
		<category><![CDATA[קוד פתוח]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2352</guid>
		<description><![CDATA[התוכנה CodeTyphon היא בעצם אריזה של לזרוס ו FPC אשר מספקת לנו כלים, רכיבים ודוגמאות נוספות על פני הפרוייקט עצמו, ובכך יוצרת סוג של &#34;הפצה&#34; עבור צמד הכלים FPC ולזרוס.
בעוד שלזרוס ו FPC נמצאים בפיתוח לא מסחרי, את CodeTyphon מתחזקת דווקא חברה שהיא בית תוכנה.
לצפייה בתמונות מסך של ההפצה לחצו כאן.
Posted in FPC, Lazarus, קוד [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2352&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>התוכנה <a href="http://www.pilotlogic.com/sitejoom/index.php?option=com_content&amp;view=article&amp;id=96&amp;Itemid=147">CodeTyphon</a> היא בעצם אריזה של לזרוס ו FPC אשר מספקת לנו כלים, רכיבים ודוגמאות נוספות על פני הפרוייקט עצמו, ובכך יוצרת סוג של &quot;הפצה&quot; עבור צמד הכלים FPC ולזרוס.</p>
<p>בעוד שלזרוס ו FPC נמצאים בפיתוח לא מסחרי, את CodeTyphon מתחזקת דווקא חברה שהיא בית תוכנה.</p>
<p>לצפייה בתמונות מסך של ההפצה לחצו <a href="http://www.pilotlogic.com/sitejoom/index.php?option=com_phocagallery&amp;view=category&amp;id=1:CodeTyphon&amp;Itemid=152">כאן</a>.</p>
Posted in FPC, Lazarus, קוד פתוח  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2352/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2352/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2352/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2352/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2352/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2352/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2352/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2352/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2352/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2352/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2352&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/10/06/codetyphon/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>
	</item>
		<item>
		<title>בחירת framework לא מתאים ?</title>
		<link>http://idkn.wordpress.com/2009/10/03/choosing-the-wrong-framrwork/</link>
		<comments>http://idkn.wordpress.com/2009/10/03/choosing-the-wrong-framrwork/#comments</comments>
		<pubDate>Sat, 03 Oct 2009 15:37:03 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[פיתוח]]></category>
		<category><![CDATA[קוד פתוח]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2348</guid>
		<description><![CDATA[לאחרונה (כחודש) שאני מנסה לפתח אפליקציה מבוססת web שתעזור לי לספק לי וללקוחות שלי מענה טוב יותר בכל מה שקשור לזמן העבודה שאני מספק להם. המערכת נבנת עם rails ואני מנסה בעצם לקחת את המקומות בהן rails חזק מאוד ולגרום לו להתמקד רק בדברים שהוא לא מסוגל לתת לי כלים לעשות את העבודה בעצמו.
העניין הוא [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2348&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>לאחרונה (כחודש) שאני מנסה לפתח אפליקציה מבוססת web שתעזור לי לספק לי וללקוחות שלי מענה טוב יותר בכל מה שקשור לזמן העבודה שאני מספק להם. המערכת נבנת עם rails ואני מנסה בעצם לקחת את המקומות בהן rails חזק מאוד ולגרום לו להתמקד רק בדברים שהוא לא מסוגל לתת לי כלים לעשות את העבודה בעצמו.</p>
<p>העניין הוא שכאשר התחלתי לעבוד, נתקעתי בגלל שידעתי שיש helpers אשר עושים את העובדה בשבילי בצד ה view, אבל לא זכרתי בעל פה מה מספק לי את מה שאני צריך, וגם לא ידעתי מה הכלי המתאים יותר, כי לפעמים יש יותר מ helper אחד לאותה פעולה, רק יש בהם הבדלים לפעמים קטנים מאוד.</p>
<p>אחרי שהתגברתי על זה והתחלתי לעבוד בהלך חשיבה יותר קרוב ל rails, עדיין מצאתי את עצמי תקוע מאוד מבחינת מימוש דברים. אני מאוד מתקשה ליצור מסך מסויים למרות שהוא ממש לא מסובך. בהתחלה חשבתי שזה בגלל המסד נתונים שבחרתי (sqlite), אבל אחרי שתכננתי מחדש את המסד נתונים (שעדיין אני לא סוגר לגבי המבנה שלו) אני עדיין מרגיש שאני עובד קשה מידי במקומות לא הגיוניים ואני די נשאר במקום מבחנת פיתוח, אבל אני לא מצליח לשים את היד מה מעקב אותי.</p>
<p>לדעתי ה framework של rails מעקב אותי בגישה שלו, אם כי אני לא באמת בטוח מזה, וזה גורם לי לתסכול רב. כי אם הייתי עכשיו בונה את אותה אפליקציה רק ב lazarus למשל, או לא משתמש ב framework בכלל, אני בטוח שכבר לפני למעלה משבועיים אולי שלוש היא היתה מוכנה.</p>
<p>האם מישהו מקוראי הנאמנים יודע איך אני יכול לזהות מה מעקב אותי בשביל להתקדם טוב יותר ?</p>
Posted in פיתוח, קוד פתוח  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2348/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2348/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2348/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2348/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2348/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2348/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2348/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2348/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2348/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2348/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2348&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/10/03/choosing-the-wrong-framrwork/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>
	</item>
		<item>
		<title>ליצור CSS ו HTML בהיקו</title>
		<link>http://idkn.wordpress.com/2009/10/01/html-and-css-in-haiku/</link>
		<comments>http://idkn.wordpress.com/2009/10/01/html-and-css-in-haiku/#comments</comments>
		<pubDate>Thu, 01 Oct 2009 10:45:44 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[Ruby]]></category>
		<category><![CDATA[קוד פתוח]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2336</guid>
		<description><![CDATA[האיקו היא שירה יפנית המכילה כמה מצבים שונים בשירה מבחינת זמנים, כאשר היא מחוייבת להגיד באיזו עונה היא נמצאת במבנה מאוד מדוייק.
יש לנו 2 כלים ממש מדהימים הכתובים ברובי ליצור HTML ו CSS בצורה שלדעת המפתחים מזכירה Haiku יפני  
הצורה ליצור html או xml בכלל נקראת HAML והיא עובדת בצורה הבאה:
1 !!! XML
2 !!! [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2336&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><a href="http://he.wikipedia.org/wiki/%D7%94%D7%90%D7%99%D7%A7%D7%95">האיקו</a> היא שירה יפנית המכילה כמה מצבים שונים בשירה מבחינת זמנים, כאשר היא מחוייבת להגיד באיזו עונה היא נמצאת במבנה מאוד מדוייק.</p>
<p>יש לנו 2 כלים ממש מדהימים הכתובים ברובי ליצור HTML ו CSS בצורה שלדעת המפתחים מזכירה Haiku יפני <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>הצורה ליצור html או xml בכלל נקראת <a href="http://haml-lang.com/">HAML</a> והיא עובדת בצורה הבאה:<span id="more-2336"></span></p>
<div dir="ltr"><code>1 !!! XML<br />
2 !!! strict<br />
3 %html<br />
4...%title HAML example<br />
5...%body<br />
6....%div#my_id<br />
7.....%h1 HAML example<br />
8.....&amp;= "Some text &lt;markup escaped&gt;"</code></div>
<p>וזהו יש לנו מסמך xhtml במצב strict עם טקסט בתוכו שעבר escape . שימו לב שהנקודות הן בשביל לשמור על הרווחים שלנו, כי כמו בפיתון גם כאן יש להם תפקיד.</p>
<p>בשביל css אבל, יש לנו תוכנה שתעשה את זה בשבילנו ותשמור את המידע בצורה סטטית, כי בלמעלה מ99% מהפעמים אין לנו צורך לייצר קובץ css חדש בכל פעם.</p>
<p>בשביל css נשתמש בשפה בשם <a href="http://sass-lang.com/">SASS</a> שעובדת בצורה הבאה:</p>
<div dir="ltr"><code>1.!blue = #3bbfce<br />
2.!margin = 16px<br />
3.=table-scaffolding<br />
4....th<br />
5......text-align: center<br />
6......font-weight: bold<br />
7......td, th<br />
8.......padding = !margin / 2<br />
9.<br />
10.=left(!dist)<br />
11.....float: left<br />
12.....margin-left = !dist<br />
13.....border-color = !blue<br />
14.<br />
15.#data<br />
16...+left(10px)<br />
17...+table-scaffolding</code></div>
<p>וכמובן שהנקודות זה בשביל הזחות. התוצאה היא משהו בסגנון הזה:</p>
<div dir="ltr"><code>#data {<br />
float: left;<br />
margin-left: 10px;<br />
border-color: #3bbfce; </code></div>
<div dir="ltr"><code>}<br />
#data th {<br />
text-align: center;<br />
font-weight: bold; </code></div>
<div dir="ltr"><code>}<br />
#data th td, #data th th {<br />
padding: 8px; </code></div>
<div dir="ltr"><code>}</code></div>
<p>ככה שכמו שאתם רואים, אפשר לתכנת כאן הרבה קוד css ללא שימוש ב css עצמו. שימו לב שיש כאן שימוש מחדש במידע, וכן אפשרות לחשב מידע, דבר שאי אפשר לעשות עם css וכן גם השימוש במשתנים ופונקציות.</p>
<p>על שניהם חשוב לדעת שהמספר הזחות חשוב ממש כמו בפיתון, כך שאל תקחו דוגמא אמיתית מהקוד שלי כאן, אלא תקפידו על הזחות.</p>
Posted in Ruby, קוד פתוח  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2336/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2336/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2336/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2336/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2336/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2336/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2336/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2336/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2336/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2336/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2336&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/10/01/html-and-css-in-haiku/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>
	</item>
		<item>
		<title>I did it my way &#8230;</title>
		<link>http://idkn.wordpress.com/2009/09/30/i-did-it-my-way/</link>
		<comments>http://idkn.wordpress.com/2009/09/30/i-did-it-my-way/#comments</comments>
		<pubDate>Wed, 30 Sep 2009 08:27:27 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[אינטרנט]]></category>
		<category><![CDATA[פיתוח]]></category>
		<category><![CDATA[קוד פתוח]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2317</guid>
		<description><![CDATA[ביום כיפור האחרון יצא לי לעבוד פעם ראשונה עם framework לcgi שהרבה זמן רציתי לנסות בשם sinatra אשר כתוב בשפת רובי כמובן. ה framework שונה לגמרי בתפיסתו מכל framework מבוסס cgi אחר שאי פעם עבדתי איתו. הוא בנוי בגישה של DSL בשביל לתאר תכנות מבוסס web. הוא מאוד קל משקל וממש לא מזכיר את rails, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2317&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>ביום כיפור האחרון יצא לי לעבוד פעם ראשונה עם framework לcgi שהרבה זמן רציתי לנסות בשם <a href="http://www.sinatrarb.com/">sinatra</a> אשר כתוב בשפת רובי כמובן. ה framework שונה לגמרי בתפיסתו מכל framework מבוסס cgi אחר שאי פעם עבדתי איתו. הוא בנוי בגישה של <a href="http://en.wikipedia.org/wiki/Domain-specific_language">DSL</a> בשביל לתאר תכנות מבוסס web. הוא מאוד קל משקל וממש לא מזכיר את rails, אלא מצד אחד יותר את django מבחינת הגישה שלו (אני בוחר מבנה ספריות וכו'),  אבל הוא מאוד פשוט לעבודה מהצד השני. חצי יום  לקח לי לשלב בינו לבין ajax. למעשה רוב ה עבודה היתה דווקא בצד ה Javascript ולא בצד הרובי. ה framework מדהים ופשוט מצד אחד, אבל מצד שני בנוי לעבוד עם אפליקציות רציניות בפני עצמו, או כMiddleware.</p>
<p>איך עובדים עם sinatra אתם בטח שואלים, ובכן, הנה דוגמא פשוטה:</p>
<div dir="ltr"><code>#!/usr/bin/env ruby<br />
require 'rubygems' # if we installed sinatra or any other modules using ruby gems<br />
require 'sinatra'<br />
get '/' do<br />
'Hello World'<br />
end</code></div>
<p>נשמור את הקובץ בשם sin.rb עכשיו בשורת הפקודה נכתוב:</p>
<p dir="ltr">$ ruby sin.rb</p>
<p>וזהו יש לנו מערכת cgi שכל מה שהיא עושה זה לענות לבקשה הראשית בשליחה של Hello World. בברירת מחדל לשלב הניסויים בלבד יהיה לנו שרת http משלנו, אבל sinatra צריך לדעת שהוא לא רץ בסביבת ניסוי בשביל להצליח להריץ אותו עם אפצ'י או כל שרת HTTP אחר על ידי הגדרה מאוד פשוטה שאפשר ליצור בקובץ בשם config.ru ושם נגדיר שזו סביבת ניסויים או סביבת production.</p>
<p>המערכת מגיעה גם עם מערכת בדיקות מובנת, וכמובן שאפשר לשלב עוד מערכות בדיקות של &quot;כתוב בדיקה קודם, ותכתוב קוד שהיא לא תכשל אח&quot;כ&quot; כדוגמת <a href="http://idkn.wordpress.com/2009/04/15/test-driven-development/">rspec</a> או <a href="http://idkn.wordpress.com/2009/03/26/cucumber/">cucmber</a>.</p>
<p>יש עוד הרבה דברים שאפשר לעשות בשיטה הזו, כמו גילוי חלקים מסויימים בבקשה, עבודה עם regex, הגדרת פעולות לפני הניתוב, תמיכה בtemplates ו layout בהם גם תמיכה ב <a href="http://haml-lang.com/">haml</a>, <a href="http://www.ruby-doc.org/stdlib/libdoc/erb/rdoc/">erb</a> וכמובן גם ב <a href="http://sass-lang.com/">SASS</a>. יש תמיכה במסדי נתונים עם מנועים שונים כדוגמת <a href="http://ar.rubyonrails.org/">ActiveRecords</a> אבל לא רק ועוד המון דברים להציע.</p>
<p>אני מאוד התרשמתי מ sinatra ואני חושב שלפרוייקטים פשוטים היא עדיפה מאוד על פני rails ואולי גם django (אין לי ניסיון עם זה, ולכן אני לא באמת יכול להגיד).</p>
Posted in אינטרנט, פיתוח, קוד פתוח  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2317/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2317/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2317/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2317/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2317/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2317/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2317/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2317/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2317/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2317/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2317&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/09/30/i-did-it-my-way/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>
	</item>
		<item>
		<title>הגדרת מקשי מולטימידיה xfce</title>
		<link>http://idkn.wordpress.com/2009/09/29/define-multimedia-keys-in-xfce/</link>
		<comments>http://idkn.wordpress.com/2009/09/29/define-multimedia-keys-in-xfce/#comments</comments>
		<pubDate>Tue, 29 Sep 2009 15:49:56 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[לינוקס]]></category>
		<category><![CDATA[קוד פתוח]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2321</guid>
		<description><![CDATA[אני מזה כמה ימים שמנסה להגדיר את מקשי המולטימידיה אצלי במחשב הנישא, אבל ללא הועיל. ההגדרות ב xmodmap נופלות על אוזניים ערלות בגלל שהן איכשהו (לא הבנתי איך) מתנגשות עם evdev ולכן לא הצלחתי למפות את המקשים נכון.
אז זהו שמסתבר שלא צריך למפות אותם אצלי ב Arch אלא רק להגיד לו מה בדיוק לעשות עם [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2321&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>אני מזה כמה ימים שמנסה להגדיר את מקשי המולטימידיה אצלי במחשב הנישא, אבל ללא הועיל. ההגדרות ב xmodmap נופלות על אוזניים ערלות בגלל שהן איכשהו (לא הבנתי איך) מתנגשות עם evdev ולכן לא הצלחתי למפות את המקשים נכון.</p>
<p>אז זהו שמסתבר שלא צריך למפות אותם אצלי ב Arch אלא רק להגיד לו מה בדיוק לעשות עם המקשים, ואת זה הבנתי אחרי כמה ימים מעצבנים. ואז הגיע הצורך למפות פעולה למקש, כי נחמד שאני יודע מה המקש, אבל אני לא יכול להשתמש בו ככה סתם, ואז גיליתי את <a href="http://alsa.opensrc.org/index.php/Amixer">amixer</a>. למי שאינו מכיר, amixer הוא מיקסר שורת פקודה המגיע עם alsa, אשר מאפשר דרך שורת הפקודה לשלוט במיקסר.</p>
<p>עכשיו הלכתי להגדרות המקלדת של xfce והגדרתי את שלושת המקשים:<span id="more-2321"></span></p>
<p dir="ltr">XF86AudioMute, XF86AudioLowerVolume, XF86AudioRaiseVolume</p>
<p>בשביל השתקה וביטול של השתקה השתמשתי בפקודה בצורה הבאה:</p>
<p dir="ltr">amixer -c 0 sset Master playback toggle</p>
<p>הפקודה אומרת ככה: תשתמש בכרטיס הראשון (מספר 0) ותקבע שמאסטר הניגון (יש גם מאסטר של תפיסת קול וכו' עד כמה שהבנתי) יהיה על השתקה או ביטול השתקה. ניתן גם להשתמש ב mute ו unmute (במקום toggle) אבל אני לא מצאתי סיבה לכך. אם אתם רק רוצים להשתיק בלי יכולת להחזיר (דרך המקש) או שיש לכם 2 מקשים שנבנו במיוחד בשביל הפעולות האלו, אז אלו הפעולות שאתם צריכים.</p>
<p>עבור הורדת העצמה, השתמשתי בהגדרה הבאה:</p>
<p dir="ltr">amixer -c 0 sset Master playback 1-</p>
<p>הפקודה אומרת ככה: תשתמש בכרטיס הראשון (ראו הסבר קודם) ותקבע למאסטר להוריד אחוז אחד. המספר יכול להיות מ0 ועד 31, כאשר 31 זה כל העצמה ו0 מן הסתם לא יעשה כלום כאן, אבל הוא אומר שזה השקט ביותר.</p>
<p>עבור העלאת העצמה, עשיתי פעולה זהה להורדה, רק במקום המינוס שמתי פלוס. שימו לב שאם תשימו את המינוס לפני ה1, התוכנה לא תדע מה אתם רוצים ממנה. שימו לב רק שאין שום דבר על המסך שמצביע מה קורה, אבל לי אישית זה לא כזה חשוב&#8230;</p>
<p>אה, ומי שעובד עם buntu* (ואולי עוד כמה הפצות &quot;ידידותיות&quot; יותר), אז בד&quot;כ &quot;מישהו&quot; עשה לכם את העבודה ואתם לא צריכים את הטיפ הזה (אלא אם אתם ממש רוצים).</p>
Posted in לינוקס, קוד פתוח  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2321/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2321/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2321/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2321/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2321/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2321/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2321/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2321/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2321/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2321/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2321&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/09/29/define-multimedia-keys-in-xfce/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>
	</item>
		<item>
		<title>תתכוננו למהירות הגלישה הבאה</title>
		<link>http://idkn.wordpress.com/2009/09/24/the-new-speed-of-the-net/</link>
		<comments>http://idkn.wordpress.com/2009/09/24/the-new-speed-of-the-net/#comments</comments>
		<pubDate>Thu, 24 Sep 2009 10:16:44 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[אינטרנט]]></category>
		<category><![CDATA[קוד פתוח]]></category>
		<category><![CDATA[תקשורת]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2312</guid>
		<description><![CDATA[לאחרונה יצא לי לראות הרבה פרסומות בטלויזיה (אולי בגלל שיצא לי לראות הרבה טלויזיה). העניין הוא שיש 2 פרסומות על קבלת אינטרנט דרך חברות שונות:

בזק &#8211; מבטיחה גלישה עד 5
אורנג' &#8211; מבטיחה מחשב נישא עם מודם סלולרי עד 5

בטח שמתם לב כי לא ציינתי מה מיצגים המספרים, וזה בגלל שבעוד 2 החברות מדברות על מגה [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2312&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>לאחרונה יצא לי לראות הרבה פרסומות בטלויזיה (אולי בגלל שיצא לי לראות הרבה טלויזיה). העניין הוא שיש 2 פרסומות על קבלת אינטרנט דרך חברות שונות:</p>
<ol>
<li>בזק &#8211; מבטיחה גלישה עד 5</li>
<li>אורנג' &#8211; מבטיחה מחשב נישא עם מודם סלולרי עד 5</li>
</ol>
<p>בטח שמתם לב כי לא ציינתי מה מיצגים המספרים, וזה בגלל שבעוד 2 החברות מדברות על מגה בית, הן שכחו שהמהירות נמדדת עם מגה ביט.</p>
<p>כאשר היתה לי שיחה עם משהי (השם המלא שמור במערכת) שעובדת בבזק בין לאומי על ה NGN של בזק, לא הצלחתי להבין איך בזק על הקווי טלפון הקיימים הולכים לספק 5MB (כלומר 5 מגה בית, בעוד ש 5Mb הגיוני &#8211; 5 מגה ביט), והיא הסבירה לי שבק החליפה את כל הקווים עד למרכזייה של בזק (המרכזייה האיזורית). עדיין לא הבנתי איך, אבל זרמתי.</p>
<p>עכשיו אורנג' מבטיחים אותה מהירות גם במודם סלולרי. אני מחכה עכשיו לתביעה הראשונה כאשר 2 החברות האלו לא יצליחו לספק 5 מגה בית במהירות הגלישה.</p>
Posted in אינטרנט, קוד פתוח, תקשורת  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2312/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2312/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2312/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2312/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2312/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2312/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2312/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2312/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2312/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2312/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2312&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/09/24/the-new-speed-of-the-net/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>
	</item>
		<item>
		<title>אסטריסק קהילתי &#8211; שקופיות</title>
		<link>http://idkn.wordpress.com/2009/09/22/asterisk-community/</link>
		<comments>http://idkn.wordpress.com/2009/09/22/asterisk-community/#comments</comments>
		<pubDate>Tue, 22 Sep 2009 11:32:58 +0000</pubDate>
		<dc:creator>ik_5</dc:creator>
				<category><![CDATA[אוגוסט פנגווין]]></category>
		<category><![CDATA[קוד פתוח]]></category>

		<guid isPermaLink="false">http://idkn.wordpress.com/?p=2307</guid>
		<description><![CDATA[טוב, אז קצת באיחור לא אופנתי אני מפרסם את המצגת שלי להרצאה שהעברתי באוגוסט פנגווין השנה
את ההרצאה אפשר גם למצוא באתר שלי ב pdf וב odp
Posted in אוגוסט פנגווין, קוד פתוח       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2307&subd=idkn&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>טוב, אז קצת באיחור לא אופנתי אני מפרסם את המצגת שלי להרצאה שהעברתי באוגוסט פנגווין השנה<br />
<object id="20053001" name="20053001" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" align="middle" height="500" width="100%">
<param name="movie" value="http://documents.scribd.com/ScribdViewer.swf?document_id=20053001&access_key=key-e4xv3vzapxt8ffuk6y5&page=&version=1&auto_size=true&viewMode="><param name="quality" value="high"><param name="play" value="true"><param name="loop" value="true"><param name="scale" value="showall"><param name="wmode" value="opaque"><param name="devicefont" value="false"><param name="bgcolor" value="#ffffff"><param name="menu" value="true"><param name="allowFullScreen" value="true"><param name="allowScriptAccess" value="always"><param name="salign" value="">
<embed src="http://documents.scribd.com/ScribdViewer.swf?document_id=20053001&access_key=key-e4xv3vzapxt8ffuk6y5&page=&version=1&auto_size=true&viewMode=" name="20053001_object" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" play="true" loop="true" scale="showall" wmode="opaque" devicefont="false" bgcolor="#ffffff" menu="true" allowfullscreen="true" allowscriptaccess="always" salign="" type="application/x-shockwave-flash" align="middle"  height="500" width="100%"></embed>
</object>
<div style="font-size:10px;text-align:center;width:100%"><a href="http://www.scribd.com/doc/20053001">View this document on Scribd</a></div></p>
<p>את ההרצאה אפשר גם למצוא באתר שלי ב <a href="http://ik.homelinux.org/lectures/asterisk_community/asterisk_community2.pdf">pdf</a> וב <a href="http://ik.homelinux.org/lectures/asterisk_community/asterisk_community2.odp">odp</a></p>
Posted in אוגוסט פנגווין, קוד פתוח  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idkn.wordpress.com/2307/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idkn.wordpress.com/2307/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idkn.wordpress.com/2307/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idkn.wordpress.com/2307/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idkn.wordpress.com/2307/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idkn.wordpress.com/2307/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idkn.wordpress.com/2307/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idkn.wordpress.com/2307/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idkn.wordpress.com/2307/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idkn.wordpress.com/2307/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idkn.wordpress.com&blog=3104636&post=2307&subd=idkn&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://idkn.wordpress.com/2009/09/22/asterisk-community/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/039b131d123c457a390acef77ad46c8f?s=96&#38;d=monsterid&#38;r=G" medium="image">
			<media:title type="html">ik_5</media:title>
		</media:content>
	</item>
	</channel>
</rss>