<?xml version="1.0"?>
<rss version="2.0">

<channel>
	<title>Planet Arabeyes</title>
	<link>http://www.arabeyes.org/</link>
	<language>en</language>
	<description>Planet Arabeyes - http://www.arabeyes.org/</description>

<item>
	<title>Ahmed El-Helw: a little rhyme about makkah</title>
	<guid>http://whatstheplot.com/blog/?p=416</guid>
	<link>http://whatstheplot.com/blog/2009/12/15/a-little-rhyme-about-makkah/</link>
	<description>&lt;p&gt;mok and i were chatting about makkah on im and we brought back a very old habit of ours from the days of highschool and college &amp;#8211; rhyming about any and everything.  so without further adieu, here&amp;#8217;s a snippet from our im conversation:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;
&lt;strong&gt;omer&lt;/strong&gt;: makkah makkah, i love u like i love my motha&lt;br /&gt;
you are a city like which there is no otha&lt;br /&gt;
above u the angels do hover&lt;br /&gt;
&lt;strong&gt;me&lt;/strong&gt;: in you i am a little more pious&lt;br /&gt;
i drop my prejudice and all my bias&lt;br /&gt;
the times of salah set my pace, before the adhan to the haram i&amp;#8217;d race&lt;br /&gt;
&lt;strong&gt;omer&lt;/strong&gt;: as i see the nur coming off them hujjaj&amp;#8217;s face&lt;br /&gt;
&lt;strong&gt;me&lt;/strong&gt;: first floor, second floor, or even third&lt;br /&gt;
watching the tawaf made by humans and birds&lt;br /&gt;
&lt;strong&gt;omer and i&lt;/strong&gt;: seein people doing tawaf around the clock&lt;br /&gt;
all types of people &amp;#8211; doctors, engineers, nerds and jocks&lt;br /&gt;
&lt;strong&gt;omer&lt;/strong&gt;: and as the clock, goes tick and the tock&lt;br /&gt;
u listening to the rhyme by mok and ak
&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;by the way, you can see a few of the pictures i took at the haram &lt;a href=&quot;http://www.flickr.com/photos/ahmedre/sets/72157622977594204/&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;</description>
	<pubDate>Tue, 15 Dec 2009 17:19:35 +0000</pubDate>
</item>
<item>
	<title>Mohammed Sameer: For F***'s sake stop asking.</title>
	<guid>http://foolab.org/7878 at http://foolab.org</guid>
	<link>http://foolab.org/node/7878</link>
	<description>&lt;p class=&quot;left2right&quot;&gt;If you easily get offended then stop here...&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://foolab.org/node/7878&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Sun, 22 Nov 2009 18:10:22 +0000</pubDate>
</item>
<item>
	<title>Djihed Afifi: Moving Pootle into the Realm of Social Translation</title>
	<guid>http://djihed.com/linux/moving-pootle-into-the-realm-of-social-translation</guid>
	<link>http://djihed.com/linux/moving-pootle-into-the-realm-of-social-translation</link>
	<description>&lt;p&gt;Since the previous post on &lt;a href=&quot;http://djihed.com/linux/bringing-all-translation-management-tools-together&quot;&gt;integrating translation tools&lt;/a&gt;, functionalities of Vertimus have been included in Damned-lies to move us yet another goal towards the integration of translation functionalities as outlines in that post. Since then, we have had a discussion with &lt;a href=&quot;http://manalaa.net&quot;&gt;Alaa&lt;/a&gt; (Working on Pootle and its support tools) and the guys at the &lt;a title=&quot;Arab Techies&quot; target=&quot;_blank&quot; href=&quot;http://arabtechies.net/&quot;&gt;Arab Techies 2009 codesprint&lt;/a&gt;. Out of the discussion came the following document, a proposal for moving pootle into the area of &amp;#8220;social translation&amp;#8221;  as described below. The notion takes the integration proposal in the previous post further and gives a specification of a tool that could support it.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Document: &lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;For small open translation teams like Arabic, the availability and quality of translation tools can greatly increase productivity, quality and translation  throughput. Often times, the precious little time of these teams is spent often on  administration overhead instead of actual translation.&lt;/p&gt;
&lt;p&gt;In a discussion about the Arabic translation process at the Arabtechies 2009 codesprint it was recognised adding so called social networking features to and online translation tool such as Pootle will help the Arabic team tremendously.&lt;/p&gt;
&lt;p&gt;Indeed, past experiences, such as Arabic Wikipedia, suggest that such features  encourage contributors. An Arabeyes pilot project that used a heavily templated MediaWiki instance to control the translation of The Arabic Technical Dictionary produced encouraging results. The terms of the dictionary are discussed and voted on  online, and a weekly script converts the dictionary into PDF and the po gettext format. &lt;em&gt;(referring to the &lt;a href=&quot;http://wiki.arabeyes.org)&quot;&gt;Arabic Technical Dictionary&lt;/a&gt;)&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The discussions were sometimes heated, and in wikipedia style, such  discussions often result in the best translations being visited thoroughly. In the end, the discussions and the collective work adds extra credence to the terms and  other teams feel more inclined to use them, resulting in greater consistency, especially for smaller languages and languages whose official bodies do not keep up with  the pace of new terms and technologies.&lt;/p&gt;
&lt;p&gt;Some of the suggestions of the brainstorm discussion at the event are already implemented to a large degree in other translation help tools such as Vertimus and Damned-Lies and Transifex. The fact that these tools use Python, with most being built over the Django framework provides and obvious opportunity  to integrate these tools, thus avoiding duplicate work and providing  a one stop near complete solution for translation teams.&lt;/p&gt;
&lt;p&gt;Pootle would be the centre piece of such integration, as it is the component that offers online translation. Support some of the following  features strongly suggests that Pootle needs to support unit based translation, possibly backed by a database to store the strings and po files. Moving to such a  flexible setup (if possibly resource intensive) would offer quite a lot of possibilities.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;File assignment:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;It may be the case that a coordinator trusts a contributor best to know how to  translate a particular module (or even a set of strings from a module) given that they translated it before, or to give  translators a sense of &amp;#8220;module ownership&amp;#8221; to motivate them to work towards completing it, it could be also that a particular  translator can be called to voice his opinion with regards a particular string, most often it is simply the desire to minimise duplication of work and to ensure even distribution of efforts across a number of module&lt;/p&gt;
&lt;p&gt;With module or unit set assignment, a coordinator may assign a module to a translator for completion. A translator may also attempt to claim or ask to claim a module.&lt;/p&gt;
&lt;p&gt;This feature is implemented to a large degree in Vertimus, except the possibility of unit set assignment. &lt;em&gt;(I believe Pootle now also supports this to a large degree)&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Translation discussion and voting:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Each unit should have a discussion space attached to it. Such a space will allow translators to express the reason or their arguments for translating should an  argument arise.&lt;/p&gt;
&lt;p&gt;The traditional translation string input box should be augmented with the possibility  to vote for an existing translation or opt to suggest a new one. I should also be  possible for a coordinator to &amp;#8220;override&amp;#8221; a vote if it is deemed necessary.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Quality Assurance:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Some translators may be augmented to a status of &amp;#8220;reviewer&amp;#8221;. Such users would be able to mark strings as &amp;#8220;reviewed&amp;#8221;. The aim of a translation team is thus to have a first pass to translate a module and a second to review every translation.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Deadline management:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;A big nuisance to small translation teams is deadline management and keeping up to date with them. Currently, each team has to &amp;#8220;shop around&amp;#8221; to make sure that they will be up to date with each project prior to its release. Pootle can attach such dates to each module at once and they&amp;#8217;d be shown for every language. Modules can thus be prioritied for translators based on their deadlines.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Branch management:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;In can be the case that a module may have different branches, often active at the same time.  The tool should thus keep both branches live for translation and ideally share  the translations of whatever strings they have shared.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Unit level permissions:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;It would be benefitial to be able to &amp;#8220;lock&amp;#8221; certain units within a module or a whole module from, say, anonymous translators, or translators that are not module owners, or all translators (in the case of say, translator-credits like strings).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Statistics:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Pootle can be augmented with extra statistics that include user level  statistics, module/project statistics, progress reports and even &amp;#8220;fun&amp;#8221; comparisons between teams and projects.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;User and Team widgets:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;A feature that can motivate individual users and teams to contribute more is user widgets.  A blogger may for example, display a widget on a sidebar that displays quick statistics for the team or the translator, such as contributed projects, the number of strings they contributed to, etc&amp;#8230;
&lt;/p&gt;</description>
	<pubDate>Wed, 18 Nov 2009 14:42:20 +0000</pubDate>
</item>
<item>
	<title>Khaled Hosny: طظ في الكورة</title>
	<guid>http://www.khaledhosny.org/137 at http://www.khaledhosny.org</guid>
	<link>http://www.khaledhosny.org/node/137</link>
	<description>&lt;a href=&quot;http://www.khaledhosny.org/node/137&quot;&gt;&lt;img src=&quot;http://www.khaledhosny.org/files/images/Algept.thumbnail.png&quot; alt=&quot;طظ في الكورة&quot; title=&quot;طظ في الكورة&quot; class=&quot;image image-thumbnail &quot; width=&quot;100&quot; height=&quot;67&quot; /&gt;&lt;/a&gt;&lt;p&gt;&lt;strong&gt;دعوها فإنها منتنة&lt;/strong&gt;&lt;/p&gt;</description>
	<pubDate>Wed, 18 Nov 2009 08:40:47 +0000</pubDate>
</item>
<item>
	<title>Mohammed Sameer: Can it be any worse ?</title>
	<guid>http://foolab.org/7877 at http://foolab.org</guid>
	<link>http://foolab.org/node/7877</link>
	<description>&lt;p class=&quot;left2right&quot;&gt;* Broken laptop, +200 euros to replace the fan because I was dumb enough to void my 3 years warranty.&lt;br /&gt;
* I lost part of my tooth today while having lunch (With the filling of course) and I need to fight tomorrow at 8 AM to get urgent dental care.&lt;br /&gt;
* ...&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://foolab.org/node/7877&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Mon, 16 Nov 2009 13:43:55 +0000</pubDate>
</item>
<item>
	<title>Ahmed El-Helw: quran jetpack script</title>
	<guid>http://whatstheplot.com/blog/?p=401</guid>
	<link>http://whatstheplot.com/blog/2009/11/16/quran-jetpack-script/</link>
	<description>&lt;p&gt;so i had a little bit of time before i depart on my journey for hajj, so i wanted to play around with the firefox jetpack extension a little bit.  so without further adieu, this post is here to introduce a simple quran plugin for jetpack &lt;img src=&quot;http://whatstheplot.com/blog/wp-includes/images/smilies/icon_smile.gif&quot; alt=&quot;:)&quot; class=&quot;wp-smiley&quot; /&gt; &lt;/p&gt;
&lt;p&gt;&lt;b&gt;what is it&lt;/b&gt;&lt;br /&gt;
this is a quran script for &lt;a href=&quot;https://jetpack.mozillalabs.com&quot;&gt;jetpack&lt;/a&gt;, a plugin for firefox which allows customizing the browser just through javascript.&lt;/p&gt;
&lt;p&gt;when you are typing in a textarea (in wordpress, gmail, google talk, etc), if you highlight any text in the format of sura:ayah (ex 1:1) and right click on it, you will be given a menu that allows you to replace that with the actual verse (in arabic, transliteration, or translation).&lt;/p&gt;
&lt;p&gt;this is very nifty for taking notes, chatting, sending emails, etc.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;how does it look like?&lt;/b&gt;&lt;br /&gt;
here is a screenshot:&lt;br /&gt;
&lt;img src=&quot;http://whatstheplot.com/misc/quran.jetpack/screenshot.jpg&quot; alt=&quot;quran jetpack script screenshot&quot; /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;known issues&lt;/b&gt;&lt;br /&gt;
- sometimes, the server appears to take long to reply so it doesn&amp;#8217;t return and you are forced to try again.&lt;br /&gt;
- the plugin doesn&amp;#8217;t work on google docs and other sites that overwrite right click functionality.&lt;br /&gt;
- the plugin also doesn&amp;#8217;t seem to be working on gmail when rich formatting is on.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;how to install it&lt;/b&gt;&lt;br /&gt;
- install &lt;a href=&quot;https://jetpack.mozillalabs.com&quot;&gt;jetpack&lt;/a&gt; for firefox.&lt;br /&gt;
- go to &lt;a href=&quot;http://feeds.feedburner.com/misc/quran.jetpack/&quot;&gt;this page&lt;/a&gt;.  on the top right corner of the webpage, you will find a button that says, &amp;#8220;Install&amp;#8230;&amp;#8221;.  click it.&lt;br /&gt;
- scroll to the very bottom, click the &amp;#8220;auto-update this feature&amp;#8221; checkbox, and then click on &amp;#8220;i know what i am doing, install it!&amp;#8221;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;source code&lt;/b&gt;&lt;br /&gt;
the source is also available as on github in &lt;a href=&quot;http://gist.github.com/235821&quot;&gt;this gist&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;changelog&lt;/b&gt;&lt;br /&gt;
&lt;i&gt;november 16th, 2009&lt;/i&gt;&lt;br /&gt;
- fixed a bug in which the appended (sura:ayah) to the text was put at the end of the textarea rather than right after the ayah.&lt;br /&gt;
- added a little favicon for the menu.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;http://whatstheplot.com/misc/quran.jetpack/screenshot_1.jpg&quot; alt=&quot;quran jetpack script screenshot&quot; /&gt;&lt;/p&gt;</description>
	<pubDate>Mon, 16 Nov 2009 08:21:13 +0000</pubDate>
</item>
<item>
	<title>Ahmed El-Helw: thoughts before hajj</title>
	<guid>http://whatstheplot.com/blog/2009/11/14/thoughts-before-hajj/</guid>
	<link>http://whatstheplot.com/blog/2009/11/14/thoughts-before-hajj/</link>
	<description>&lt;p&gt;so i was sitting on a plane in san francisco awaiting the departure of my flight to atlanta, from where i will insha&amp;#8217;Allah be leaving for hajj.  the captain mentioned something about a leak that they have to fix, so i figured, &amp;#8220;why not write a blog post on my phone in the meanwhile?&amp;#8221; (the plane took off and i realized i had more stuff to add and edit, so the in-airplane mobile blogging commenced on land and in the air).&lt;/p&gt;
&lt;p&gt;anyhow, i wanted to write the pieces of advice and gems given to me by my shuyookh, elders, family and friends who have already went to hajj.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;hajj &amp;#8211; themes and similitudes&lt;/b&gt;&lt;br /&gt;
when i went to ummrah before, i have always been told how i7ram makes all people equal &amp;#8211; you could be the richest of people or the poorest of people, you could be from america, china, or burkina faso, but ultimately, it didn&amp;#8217;t matter &amp;#8211; you were wearing the same simple non-embellished two pieces of cloth while doing your ummrah (or hajj).&lt;/p&gt;
&lt;p&gt;however, the parallel i recently learned is that between hajj and the day of judgment.  there is a plethora of people (millions), all moving towards the same place, each to themselves and not worrying about those around them. the rich and the poor, the arab and the non-arab, the powerful and the weak, the healthy and the sick all gather from all parts of the land for this journey.  on this day, all are dressed in i7ram &amp;#8211; similar to the burial shrouding one is wrapped in &amp;#8211; and as though all are just being resurrected and walking towards &amp;#8220;ard al ma7shar&amp;#8221; to await reckoning &amp;#8211; may Allah make that day easy upon us!&lt;/p&gt;
&lt;p&gt;it is thus not surprising that surat al hajj would start with these verses (&lt;a href=&quot;http://quran.com/22/1-2&quot;&gt;22:1-2&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;&lt;b&gt;hajj tips&lt;/b&gt;&lt;br /&gt;
0.  first and foremost, the importance of time during hajj.  so many people advised me, &amp;#8220;don&amp;#8217;t waste your time, maximize your time of worship.&amp;#8221;  others told me, &amp;#8220;american crowds go to hajj in luxury, with constant buffets of the best of foods and so on &amp;#8211; so eat minimally, especially from once you go to makkah until after the day of 3arafah!&amp;#8221; (to stay light and avoid down time).  another common advice was &amp;#8220;watch who your company is on the trip and beware of bad company!&amp;#8221;  another tip was &amp;#8220;lose the watch, you don&amp;#8217;t need it!&amp;#8221; &lt;/p&gt;
&lt;p&gt;1.  almost everyone advised &amp;#8220;do not get angry!&amp;#8221; i was told &amp;#8220;forget logical reasoning, don&amp;#8217;t resist or try to convince anyone of anything, you don&amp;#8217;t want to lose your hajj.&amp;#8221;  i was also told &amp;#8220;everyone will be on edge there, you will be pushed, shoved, and tested a lot there, so stay on your toes and whatever you do, don&amp;#8217;t lose your cool!&amp;#8221;  may Allah make it easy!  i think ayah &lt;a href=&quot;http://quran.com/2/197&quot;&gt;2:197&lt;/a&gt; is very relevant.&lt;/p&gt;
&lt;p&gt;2.  the most important request people always make is for du3a2 &amp;#8211; du3a2, du3a2, and more du3a2 &amp;#8211; du3a2 for ones family, friends, shuyookh, those who have rights upon us, those who passed away before us, the ummah, and for ourselves &amp;#8211; du3a2 for this world and for the next.  may Allah make it easy and accept!  &lt;/p&gt;
&lt;p&gt;3.  writing the waseya (islamic will) before leaving &amp;#8211; this action in and of itself reminds a person that death can come at anytime, and thus reminds us of the importance of being prepared.  may Allah grant us حسن الخاتمه &amp;#8211; ameen.&lt;/p&gt;
&lt;p&gt;4.  on a related note, calling family, friends, and people with whom you may have had trouble in the past to ask them for forgiveness highlights the importance of brotherhood, good character, and making sure one is on good terms with all people.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;hajj &amp;#8211; aspirations/what to aim for&lt;/b&gt;&lt;br /&gt;
0.  first and foremost, that Allah accepts it and makes it a hajj mabroor &amp;#8211; this is absolutely critical, because without this, the trip would arguably be wasted.&lt;/p&gt;
&lt;p&gt;speaking of mabroor, brother Ihab gave an awesome khutbah on hajj, in which he cited a hadith in which the Prophet (saw) said that there is no other reward for a hajj mabroor except for jannah.  the sa7aba asked the Prophet (saw), &amp;#8220;wa ma biruhu?&amp;#8221; &amp;#8211; and what causes a hajj to be mabroor?  and he (saw) answered with &amp;#8220;it3am alta3am&amp;#8221; (feeding food) and &amp;#8220;ifsha2 al salam&amp;#8221; (spreading salam).&lt;/p&gt;
&lt;p&gt;[note - i had forgotten the second item and found it in &lt;a href=&quot;http://asqfish.wordpress.com/2009/10/21/some-practical-tips-for-hajj-mabroor/&quot;&gt;this blog post&lt;/a&gt;].&lt;/p&gt;
&lt;p&gt;1.  that Allah returns one home completely free of sin, and helps one to improve upon themselves and to become a better person (and ultimately, to grant them حسن الخاتمه and jannah).&lt;/p&gt;
&lt;p&gt;2.  that Allah accepts one&amp;#8217;s du3a2s while there.&lt;/p&gt;
&lt;p&gt;3.  that Allah allows hajj to be a positive turning point in one&amp;#8217;s life.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;ayat/verses&lt;/b&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;surat al-Baqarah &lt;a href=&quot;http://quran.com/2/196-202&quot;&gt;verses 196-202&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;surat al-Hajj &lt;a href=&quot;http://quran.com/22/26-30&quot;&gt;verses 26-30&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;b&gt;credits&lt;/b&gt;&lt;br /&gt;
may Allah reward sheikh Mohamed, brother Ihab, and all of those who gave me hajj training, advice and shared their experiences with me in any way, shape, or form (the names are too many to mention here and i would undoubtedly forget someone, so i will suffice by saying, &amp;#8220;may Allah reward you all&amp;#8221;).&lt;/p&gt;
&lt;p&gt;&lt;b&gt;and finally&amp;#8230;&lt;/b&gt;&lt;br /&gt;
&lt;i&gt;some last (and mostly unrelated notes):&lt;/i&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;this is most probably the longest piece i have ever written on my phone (and on a plane).  for the record, writing long articles on an iphone is a painful experience!&lt;/li&gt;
&lt;li&gt;that having been said, while i plan on taking my iphone with me, i am hoping not to use it &amp;#8211; otherwise, knowing me, i&amp;#8217;ll get distracted and start live blogging my hajj &amp;#8211; (&amp;#8220;i am now at mina!  check out this picture/video!&amp;#8221; &amp;#8211; and, of course, &amp;#8220;i am now on 3arafah!  send your du3a2 requests via twitter before maghrib and i will pray for you!&amp;#8221;)&lt;/li&gt;
&lt;li&gt;and yes, in case you are wondering, i felt strongly obliged to start my lists at 0.&lt;/li&gt;
&lt;/ul&gt;</description>
	<pubDate>Sat, 14 Nov 2009 22:16:30 +0000</pubDate>
</item>
<item>
	<title>Khaled Hosny: Arabic math</title>
	<guid>http://www.khaledhosny.org/134 at http://www.khaledhosny.org</guid>
	<link>http://www.khaledhosny.org/arabic_math</link>
	<description>&lt;a href=&quot;http://www.khaledhosny.org/arabic_math&quot;&gt;&lt;img src=&quot;http://www.khaledhosny.org/files/images/arabic-crop_0.thumbnail.png&quot; alt=&quot;Arabic math&quot; title=&quot;Arabic math&quot; class=&quot;image image-thumbnail &quot; width=&quot;77&quot; height=&quot;100&quot; /&gt;&lt;/a&gt;&lt;p&gt;First attempts of Arabic math typesetting. Using &lt;a href=&quot;http://wiki.contextgarden.net/Main_Page&quot;&gt;ConTeXt MkIV&lt;/a&gt;, &lt;a href=&quot;http://www.luatex.org&quot;&gt;LuaTeX&lt;/a&gt; and my experimental &lt;a href=&quot;http://github.com/khaledhosny/xits-math&quot;&gt;XITS Math&lt;/a&gt; font.&lt;/p&gt;</description>
	<pubDate>Mon, 02 Nov 2009 22:37:32 +0000</pubDate>
</item>
<item>
	<title>Mohammed Sameer: My old Geocities website</title>
	<guid>http://foolab.org/7876 at http://foolab.org</guid>
	<link>http://foolab.org/node/7876</link>
	<description>&lt;div class=&quot;field field-type-filefield field-field-image-0&quot;&gt;
    &lt;div class=&quot;field-items&quot;&gt;
            &lt;div class=&quot;field-item odd&quot;&gt;
                    &lt;div class=&quot;filefield-file clear-block&quot;&gt;&lt;div class=&quot;filefield-icon field-icon-image-png&quot;&gt;&lt;img class=&quot;field-icon-image-png&quot; alt=&quot;image/png icon&quot; src=&quot;http://foolab.org/sites/all/modules/contrib/filefield/icons/protocons/16x16/mimetypes/image-x-generic.png&quot; /&gt;&lt;/div&gt;&lt;a href=&quot;http://foolab.org/files/images/Screenshot-158.png&quot; type=&quot;image/png; length=101020&quot;&gt;Screenshot-158.png&lt;/a&gt;&lt;/div&gt;        &lt;/div&gt;
        &lt;/div&gt;
&lt;/div&gt;
&lt;p class=&quot;left2right&quot;&gt;It'll disappear any moment soon... May &lt;a href=&quot;http://geocities.com/uniball13/&quot;&gt;you&lt;/a&gt; rest in peace :|&lt;/p&gt;</description>
	<pubDate>Mon, 26 Oct 2009 21:31:31 +0000</pubDate>
</item>
<item>
	<title>Mohammed Sameer: Unboxing my new N900</title>
	<guid>http://foolab.org/7875 at http://foolab.org</guid>
	<link>http://foolab.org/node/7875</link>
	<description>&lt;div class=&quot;field field-type-filefield field-field-image-0&quot;&gt;
    &lt;div class=&quot;field-items&quot;&gt;
            &lt;div class=&quot;field-item odd&quot;&gt;
                    &lt;div class=&quot;filefield-file clear-block&quot;&gt;&lt;div class=&quot;filefield-icon field-icon-image-jpeg&quot;&gt;&lt;img class=&quot;field-icon-image-jpeg&quot; alt=&quot;image/jpeg icon&quot; src=&quot;http://foolab.org/sites/all/modules/contrib/filefield/icons/protocons/16x16/mimetypes/image-x-generic.png&quot; /&gt;&lt;/div&gt;&lt;a href=&quot;http://foolab.org/files/images/20091015_002.jpg&quot; type=&quot;image/jpeg; length=586805&quot;&gt;20091015_002.jpg&lt;/a&gt;&lt;/div&gt;        &lt;/div&gt;
        &lt;/div&gt;
&lt;/div&gt;
&lt;p class=&quot;left2right&quot;&gt;This should replace C-3PO (My N95) or should I find another name for it ? ;-)&lt;/p&gt;
&lt;p class=&quot;left2right&quot;&gt;And this picture has been taken with an N900!&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://foolab.org/node/7875&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Thu, 15 Oct 2009 12:55:25 +0000</pubDate>
</item>
<item>
	<title>Ahmed El-Helw: rtm versus toodledo</title>
	<guid>http://whatstheplot.com/blog/?p=368</guid>
	<link>http://whatstheplot.com/blog/2009/09/26/rtm-versus-toodledo/</link>
	<description>&lt;p&gt;last year, i signed up for a 1 year subscription to &lt;a href=&quot;http://rememberthemilk.com&quot;&gt;rememberthemilk&lt;/a&gt;.  now that it has expired, i&amp;#8217;ve started wondering whether i should re-subscribe or switch to something else (&lt;a href=&quot;http://toodledo.com&quot;&gt;toodledo&lt;/a&gt; appears to be a popular option).&lt;/p&gt;
&lt;p&gt;so i made a toodledo free account and imported my tasks from rtm &amp;#8211; fairly straight forward and easy (although i had to re-tag and group everything, but no big deal).  i tried using both of them for a few days together, and here are my thoughts:&lt;/p&gt;
&lt;ul&gt;&lt;strong&gt;what i like about rtm:&lt;/strong&gt;&lt;/ul&gt;
&lt;li&gt;interface &amp;#8211; the ui is really slick&lt;/li&gt;
&lt;li&gt;keyboard shortcuts are like vim&amp;#8217;s &amp;#8211; familiarity is good!&lt;/li&gt;
&lt;li&gt;the new smart input bar is really nice and allows for fast inputting of tasks&lt;/li&gt;

&lt;ul&gt;&lt;strong&gt;what i like about toodledo:&lt;/strong&gt;&lt;/ul&gt;
&lt;li&gt;more emphasis on goals, tying tasks to goals, etc&lt;/li&gt;
&lt;li&gt;development seems a lot more active &amp;#8211; rtm seems dead at times&lt;/li&gt;
&lt;li&gt;team seems to be more friendly&lt;/li&gt;
&lt;li&gt;nice subscription features (statistics, subtasks, auto-scheduler).&lt;/li&gt;

&lt;p&gt;i&amp;#8217;ve used rtm&amp;#8217;s iphone app but haven&amp;#8217;t used toodledo&amp;#8217;s yet (although i read that it&amp;#8217;s also really good) &amp;#8211; so i am guessing that on the phone front, they are roughly equivalent.  rtm is $25/year and toodledo is either $15 or $30/year, depending on which plan you get.&lt;/p&gt;
&lt;p&gt;rtm is pretty functional without a pro subscription, but you can&amp;#8217;t use the iphone version.  with toodledo, you can use the iphone app (a one time ~$4 charge), but you have other limitations (task history of completed tasks is limited to 2 weeks).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;so in summary&lt;/strong&gt; &amp;#8211; it&amp;#8217;d be pretty nice to use something like &lt;a href=&quot;http://orgmode.org/&quot;&gt;orgmode&lt;/a&gt; for emacs (if i can dedicate enough time to learn it) or something like &lt;a href=&quot;http://taskwarrior.org/&quot;&gt;taskwarrior&lt;/a&gt; and just use plain text files.  the advantages of such approaches are the price tag and portability/accessibility, and ease of use.  the downside is that there&amp;#8217;s no mobile (or web) interfaces unless i were to serve my todo files on my webserver (or write some code to sync to another service, etc).&lt;/p&gt;
&lt;p&gt;another option is to buy &lt;a href=&quot;http://culturedcode.com/things/&quot;&gt;things&lt;/a&gt;, which is a really well done app &amp;#8211; but the problem is that i am then locked in to seeing my tasks on my mac and my phone (but not on the web and therefore, not on my linux box).  it&amp;#8217;s also $50 for the desktop app plus $10 for the iphone app.  other apps have similar issues (&lt;a href=&quot;http://www.omnigroup.com/applications/omnifocus&quot;&gt;omnifocus&lt;/a&gt; and &lt;a href=&quot;http://www.potionfactory.com/thehitlist/&quot;&gt;the hit list&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;decisions, decisions&amp;#8230;  sometimes, deciding on this sort of thing makes it &amp;#8220;how to &lt;strong&gt;not&lt;/strong&gt; to get things done&amp;#8221; &lt;img src=&quot;http://whatstheplot.com/blog/wp-includes/images/smilies/icon_smile.gif&quot; alt=&quot;:)&quot; class=&quot;wp-smiley&quot; /&gt; &lt;/p&gt;</description>
	<pubDate>Sat, 26 Sep 2009 07:40:44 +0000</pubDate>
</item>
<item>
	<title>Khaled Hosny: جنوم ٢٫٢٨</title>
	<guid>http://www.khaledhosny.org/133 at http://www.khaledhosny.org</guid>
	<link>http://www.khaledhosny.org/node/133</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://library.gnome.org/misc/release-notes/2.28/index.html.ar&quot;&gt;صدرت جنوم ٢٫٢٨&lt;/a&gt;، مع &lt;a href=&quot;http://l10n.gnome.org/teams/ar&quot;&gt; واجهة عربية&lt;/a&gt; وتحسينات في الترجمة كالعادة، لا تتردد في تجربتها والإبلاغ عن أي أخطاء ومشاكل في الترجمة.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://library.gnome.org/misc/release-notes/2.28/index.html.ar&quot; align=&quot;center&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Thu, 24 Sep 2009 13:32:01 +0000</pubDate>
</item>
<item>
	<title>Ahmed El-Helw: subqueries make life easy</title>
	<guid>http://whatstheplot.com/blog/?p=358</guid>
	<link>http://whatstheplot.com/blog/2009/09/13/subqueries-make-life-easy/</link>
	<description>&lt;p&gt;often times while working with databases, you find the need to do some simple tasks (adding a column and populating it with a value from another table, etc).  rather than write a script to do this, use mysql&amp;#8217;s native subquery (and temporary table) functionality &amp;#8211; it makes life much easier.&lt;/p&gt;
&lt;p&gt;consider the case where you have two tables:&lt;/p&gt;
&lt;pre class=&quot;brush: plain;&quot;&gt;
mysql&amp;gt; describe colors;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id    | int(11)     | YES  |     | NULL    |       |
| color | varchar(10) | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
2 rows in set (0.00 sec)
&lt;/pre&gt;
&lt;p&gt;and&lt;/p&gt;
&lt;pre class=&quot;brush: plain;&quot;&gt;
mysql&amp;gt; describe color_mapping;
+------------+---------+------+-----+---------+-------+
| Field      | Type    | Null | Key | Default | Extra |
+------------+---------+------+-----+---------+-------+
| picture_id | int(11) | YES  |     | NULL    |       |
| color_id   | int(11) | YES  |     | NULL    |       |
+------------+---------+------+-----+---------+-------+
2 rows in set (0.00 sec)
&lt;/pre&gt;
&lt;p&gt;let&amp;#8217;s say you want to update the colors table to add a frequency column such that you know how often a given color is used.  it turns out this is really easy using mysql:&lt;/p&gt;
&lt;pre class=&quot;brush: sql;&quot;&gt;
alter table colors add frequency int;
update colors set frequency = (select count(*) from color_mapping \
   where color_mapping.color_id = colors.id);
&lt;/pre&gt;
&lt;p&gt;and that&amp;#8217;s it.  also useful are temporary tables:&lt;/p&gt;
&lt;pre class=&quot;brush: sql;&quot;&gt;
create temporary table color_frequencies select color_id, count(*) as cnt \
   from color_mapping group by color_id;
&lt;/pre&gt;
&lt;p&gt;if you then attempt to &lt;code&gt;desc color_frequencies&lt;/code&gt;, you&amp;#8217;ll see a table with two columns &amp;#8211; a &lt;code&gt;color_id&lt;/code&gt; and a &lt;code&gt;cnt&lt;/code&gt; column.&lt;/p&gt;
&lt;p&gt;hopefully this will save some people some efforts writing scripts next time some simple database updates are needed &lt;img src=&quot;http://whatstheplot.com/blog/wp-includes/images/smilies/icon_smile.gif&quot; alt=&quot;:)&quot; class=&quot;wp-smiley&quot; /&gt; &lt;/p&gt;</description>
	<pubDate>Sun, 13 Sep 2009 23:35:50 +0000</pubDate>
</item>
<item>
	<title>Ahmed El-Helw: my previous keyboard</title>
	<guid>http://whatstheplot.com/blog/2009/09/12/my-previous-keyboard/</guid>
	<link>http://whatstheplot.com/blog/2009/09/12/my-previous-keyboard/</link>
	<description>&lt;div class=&quot;wp-caption alignnone&quot;&gt;&lt;img alt=&quot;note the v, n, and m keys (or lack thereof)&quot; src=&quot;http://feeds.feedburner.com/images/keyboard-09.12.2009.jpg&quot; title=&quot;keyboard&quot; width=&quot;427&quot; height=&quot;320&quot; /&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;note the v, n, and m keys (or lack thereof)&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;finally replaced my keyboard with a new one &lt;img src=&quot;http://whatstheplot.com/blog/wp-includes/images/smilies/icon_smile.gif&quot; alt=&quot;:)&quot; class=&quot;wp-smiley&quot; /&gt; &lt;/p&gt;</description>
	<pubDate>Sat, 12 Sep 2009 23:54:33 +0000</pubDate>
</item>
<item>
	<title>Ayman Hourieh: Python Debugging Techniques</title>
	<guid>http://aymanh.com/425 at http://aymanh.com</guid>
	<link>http://aymanh.com/python-debugging-techniques</link>
	<description>&lt;p&gt;This article covers several techniques for debugging Python programs. The applicability of these techniques ranges from simple scripts to complex applications. The topics that are covered include launching an interactive console from within your program, using the Python debugger, and implementing robust logging. Various tips are included along the way to help you debug and fix problems quickly and efficiently.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://aymanh.com/python-debugging-techniques&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Mon, 31 Aug 2009 08:54:54 +0000</pubDate>
</item>
<item>
	<title>Mohammed Sameer: Corporates are evil.</title>
	<guid>http://foolab.org/7874 at http://foolab.org</guid>
	<link>http://foolab.org/node/7874</link>
	<description>&lt;p class=&quot;left2right&quot;&gt;After the &lt;a href=&quot;http://maemo.nokia.com/n900&quot;&gt;N900&lt;/a&gt; has been announced. I was saying this to a friend of mine:&lt;/p&gt;
&lt;p class=&quot;left2right&quot;&gt;[Me] so&lt;br /&gt;
[Me] remember our discussion about a Linux powered phone ? ;)&lt;br /&gt;
[Me] sorry I convinced you that Linux on phones is a no while I knew we were doing it :)&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://foolab.org/node/7874&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Sat, 29 Aug 2009 09:33:08 +0000</pubDate>
</item>
<item>
	<title>Ayman Hourieh: How to Debug Bash Scripts</title>
	<guid>http://aymanh.com/422 at http://aymanh.com</guid>
	<link>http://aymanh.com/how-debug-bash-scripts</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Bash&quot;&gt;Bash&lt;/a&gt; is the default scripting language in most Linux systems. Its usage ranges from an interactive command interpreter to a scripting language for writing complex programs. Debugging facilities are a standard feature of compilers and interpreters, and bash is no different in this regard. In this article, I will explain various techniques and tips for debugging Bash scripts.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://aymanh.com/how-debug-bash-scripts&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Mon, 24 Aug 2009 22:48:19 +0000</pubDate>
</item>
<item>
	<title>Ayman Hourieh: Version Control for Linux Configuration (/etc) with etckeeper</title>
	<guid>http://aymanh.com/416 at http://aymanh.com</guid>
	<link>http://aymanh.com/version-control-linux-configuration-files-etc-etckeeper</link>
	<description>&lt;p&gt;Keeping a version history of files under &lt;span class=&quot;geshifilter&quot;&gt;&lt;code class=&quot;geshifilter-text&quot;&gt;/etc&lt;/code&gt;&lt;/span&gt; is essential for maintaining a healthy system. The benefits of tracking changes to &lt;span class=&quot;geshifilter&quot;&gt;&lt;code class=&quot;geshifilter-text&quot;&gt;/etc&lt;/code&gt;&lt;/span&gt; include:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Documentation: The log messages that are attached to configuration changes serve as documentation. These log messages record who made the change, when and why. Understanding the contents of a config file becomes much easier if you have a full history of the changes that were made to this file.&lt;/li&gt;
&lt;li&gt;Troubleshooting: Misconfiguration can result in a variety of problems. When a service starts to misbehave, one of the things you can do to troubleshoot the issue is to check the version history of its config file. There, you can see if any changes were made around the time frame in which the problem happened. If you spot a change that may be causing the issue, you can easily revert it to fix the problem.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;You can set up your own repository to track changes to &lt;span class=&quot;geshifilter&quot;&gt;&lt;code class=&quot;geshifilter-text&quot;&gt;/etc&lt;/code&gt;&lt;/span&gt;, or you can use a tool called &lt;a href=&quot;http://kitenet.net/~joey/code/etckeeper/&quot;&gt;etckeeper&lt;/a&gt; to handle the setup for you. This tool supports multiple version control systems, including Git, Mercurial and Bazaar. It integrates with the package management systems of a number of Linux distros, including APT (used by Debian, Ubuntu), YUM (RedHat, CentOS, Fedora), Pacman (Arch Linux). Using etckeeper instead of rolling your own has some advantages:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;etckeeper integration with package managers means than you don't need to manually commit changes in &lt;span class=&quot;geshifilter&quot;&gt;&lt;code class=&quot;geshifilter-text&quot;&gt;/etc&lt;/code&gt;&lt;/span&gt; after installing packages.&lt;/li&gt;
&lt;li&gt;etckeeper comes pre-configured with a list of files that live in &lt;span class=&quot;geshifilter&quot;&gt;&lt;code class=&quot;geshifilter-text&quot;&gt;/etc&lt;/code&gt;&lt;/span&gt; but usually do not benefit from version control (like some cache files).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Read on to learn how to install, configure and use etckeeper.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://aymanh.com/version-control-linux-configuration-files-etc-etckeeper&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Sun, 16 Aug 2009 18:01:25 +0000</pubDate>
</item>
<item>
	<title>Mohammed Sameer: Engagement</title>
	<guid>http://foolab.org/7873 at http://foolab.org</guid>
	<link>http://foolab.org/node/7873</link>
	<description>&lt;div class=&quot;field field-type-filefield field-field-image-0&quot;&gt;
    &lt;div class=&quot;field-items&quot;&gt;
            &lt;div class=&quot;field-item odd&quot;&gt;
                    &lt;div class=&quot;filefield-file clear-block&quot;&gt;&lt;div class=&quot;filefield-icon field-icon-image-jpeg&quot;&gt;&lt;img class=&quot;field-icon-image-jpeg&quot; alt=&quot;image/jpeg icon&quot; src=&quot;http://foolab.org/sites/all/modules/contrib/filefield/icons/protocons/16x16/mimetypes/image-x-generic.png&quot; /&gt;&lt;/div&gt;&lt;a href=&quot;http://foolab.org/files/images/IMG_0947.jpg&quot; type=&quot;image/jpeg; length=1216485&quot;&gt;IMG_0947.jpg&lt;/a&gt;&lt;/div&gt;        &lt;/div&gt;
        &lt;/div&gt;
&lt;/div&gt;
&lt;p class=&quot;left2right&quot;&gt;Erm, Never thought this would happen to me. It happened 9 days ago!&lt;/p&gt;</description>
	<pubDate>Sun, 16 Aug 2009 11:02:04 +0000</pubDate>
</item>
<item>
	<title>Ahmed El-Helw: quran plugin updated for ubiquity 0.5</title>
	<guid>http://whatstheplot.com/blog/?p=350</guid>
	<link>http://whatstheplot.com/blog/2009/08/10/quran-plugin-updated-for-ubiquity-0-5/</link>
	<description>&lt;p&gt;i&amp;#8217;ve done a quick port of the quran ubiquity plugin to work under the new version of ubiquity (0.5).  as you may know, ubiquity 0.5 and beyond use a new parser (parser 2) that isn&amp;#8217;t compatible with the old parser (parser 1 for 0.1.x versions of ubiquity).&lt;/p&gt;
&lt;p&gt;you can get it &lt;a href=&quot;http://gist.github.com/165091&quot;&gt;here&lt;/a&gt;.  make sure to select &amp;#8220;automatically update this feed&amp;#8221; so that you get any updates i may get around to making. &lt;/p&gt;
&lt;p&gt;this version is pretty much identical to the older one, except that now, you can use &amp;#8220;get-ayah,&amp;#8221; &amp;#8220;get ayah,&amp;#8221; or &amp;#8220;ayah&amp;#8221; to get an ayah, and &amp;#8220;search-quran&amp;#8221; or &amp;#8220;search quran&amp;#8221; to do a search.  i hope to support some of the new stuff from the pre-alpha version of the quran api soon insha&amp;#8217;Allah (other translations, etc).&lt;/p&gt;</description>
	<pubDate>Mon, 10 Aug 2009 08:55:08 +0000</pubDate>
</item>
<item>
	<title>Khaled Hosny: Converting legacy Arabic fonts to Unicode</title>
	<guid>http://www.khaledhosny.org/132 at http://www.khaledhosny.org</guid>
	<link>http://www.khaledhosny.org/legacy_to_opentype</link>
	<description>&lt;p&gt;There are many legacy Arabic fonts floating on the web that can't be used in free operating systems, those fonts predate Unicode and OpenType and can only be used in MS Windows. There seem not exist any documentation of any kind regarding those fonts, and I had to guess how it is supposed to work. Out of boredom (and because someone asked me if there is a way to use those fonts in GNU/Linux), I wrote a Python script using &lt;a href=&quot;http://fontforge.sourceforge.net/python.html&quot;&gt;FontForge's Python interface&lt;/a&gt; to convert them to Unicode with necessary OpenType layout to render them correctly.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.khaledhosny.org/legacy_to_opentype&quot; target=&quot;_blank&quot;&gt;اقرأ المزيد&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Sat, 01 Aug 2009 13:24:21 +0000</pubDate>
</item>
<item>
	<title>Khaled Hosny: Changing math font in plain TeX</title>
	<guid>http://www.khaledhosny.org/131 at http://www.khaledhosny.org</guid>
	<link>http://www.khaledhosny.org/node/131</link>
	<description>&lt;p&gt;I was trying to change the math font used in plain TeX (as opposed to LaTeX or ConTeXt), but I didn't seem to find it documented any where, apparently it is so obvious for TeXperts to be even documented. Anyway, I figured it out and I'm documenting it here so I don't have to search it again.&lt;/p&gt;
&lt;p&gt;Set font families 0-3 to the new font, as follows:&lt;br /&gt;
0: math text (&quot;sin&quot;, &quot;cos&quot;, numbers, etc.)&lt;br /&gt;
1: math italic (&quot;x&quot;, &quot;y&quot;, &quot;z&quot;, etc. don't have to be italic at all e.g. Euler)&lt;br /&gt;
2: math symbols&lt;br /&gt;
3: math extensions&lt;br /&gt;
\textfont: normal size font&lt;br /&gt;
\scriptfont: font for sub/super script&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.khaledhosny.org/node/131&quot; target=&quot;_blank&quot;&gt;اقرأ المزيد&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Fri, 31 Jul 2009 16:20:05 +0000</pubDate>
</item>
<item>
	<title>Ahmed El-Helw: فول أحمد العظيم</title>
	<guid>http://whatstheplot.com/blog/?p=339</guid>
	<link>http://whatstheplot.com/blog/2009/07/23/%d9%81%d9%88%d9%84-%d8%a3%d8%ad%d9%85%d8%af-%d8%a7%d9%84%d8%b9%d8%b8%d9%8a%d9%85/</link>
	<description>&lt;p&gt;inspired by the &lt;a href=&quot;http://cheapdelish.com/blog&quot;&gt;blog&lt;/a&gt; of sy and my previous roommate (who makes a mean paneer btw), i decided to start posting my chef de jour recipes for the benefit of all the bachelors out there.  unfortunately, i don&amp;#8217;t cook as much as i should (but i have been fairly lucky in terms of the output of my few attempts).  so perhaps documenting my experiences as a master chef will help me to stop slacking and cook more.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;what is this&lt;/strong&gt;:&lt;br /&gt;
this is a dish known as &amp;#8220;فول&amp;#8221; in arabic (pronounced &amp;#8216;fool&amp;#8217;).  it&amp;#8217;s a bean dish famous in the middle east as a breakfast or late night snack.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;ingredients&lt;/strong&gt;:&lt;br /&gt;
&lt;img class=&quot;alignnone&quot; title=&quot;ingredients for fool&quot; src=&quot;http://feeds.feedburner.com/images/fool-07.22.2009.jpg &quot; alt=&quot;&quot; width=&quot;400&quot; height=&quot;300&quot; /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;1 (or more) cans of fava beans&lt;/li&gt;
&lt;li&gt;1 (or more) cans of sliced tomatoes&lt;/li&gt;
&lt;li&gt;lemon juice&lt;/li&gt;
&lt;li&gt;tahina (ground sesame seed)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;these ingredients can mostly be obtained at any middle eastern or desi grocery store.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;instructions&lt;/strong&gt;:&lt;br /&gt;
- obtain a pot.&lt;br /&gt;
- open beans and put beans in the pot.&lt;br /&gt;
- add tomatoes to the pot.&lt;br /&gt;
- mix together well.&lt;br /&gt;
- add a little bit of tahina to the pot &amp;#8211; enough to make it slightly lighter color, but not too much.  maybe 2 or 3 tablespoons at most&lt;br /&gt;
- heat together and mix well.&lt;br /&gt;
- add lemon on top and serve (with pita bread usually).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;for an upgraded experience&lt;/strong&gt;:&lt;br /&gt;
of course if you want to go all out, try replacing the canned tomatoes with fresh tomatoes, the canned beans with fresh ones that you must first leave in water for some time, and replace the lemon juice with real lemon.  experts can try placing the aforementioned mixture with the fresh ingredients into a pressure cooker for better results.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;the meaning of the title&lt;/strong&gt;:&lt;br /&gt;
the title, which means ahmed&amp;#8217;s great fool, is a pun on the arabic comedy movie, &amp;#8220;فول الصين العظيم&amp;#8221;, in which the main character cooks fool in a cooking competition in china.&lt;/p&gt;</description>
	<pubDate>Thu, 23 Jul 2009 07:06:02 +0000</pubDate>
</item>
<item>
	<title>Mohammed Sameer: No KLM, I'm not paying money to torture myself again.</title>
	<guid>http://foolab.org/7869 at http://foolab.org</guid>
	<link>http://foolab.org/node/7869</link>
	<description>&lt;p class=&quot;left2right&quot;&gt;This is a copy of what I've sent to KLM customer care after my disastrous flight from Amsterdam to Cairo:&lt;/p&gt;
&lt;blockquote class=&quot;left2right&quot;&gt;&lt;p&gt;
Hi,&lt;/p&gt;
&lt;p class=&quot;left2right&quot;&gt;My flight was KL0553&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;http://foolab.org/node/7869&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Thu, 16 Jul 2009 12:30:58 +0000</pubDate>
</item>
<item>
	<title>Ahmed El-Helw: introducing waqt.org</title>
	<guid>http://whatstheplot.com/blog/?p=337</guid>
	<link>http://whatstheplot.com/blog/2009/07/10/introducing-waqt-org/</link>
	<description>&lt;p&gt;today, i took the arabeyes &lt;a href=&quot;http://svn.arabeyes.org/viewvc/projects/itl/ports/php/&quot;&gt;php extension of itl&lt;/a&gt;, the &lt;a href=&quot;http://developer.yahoo.com/maps/rest/V1/geocode.html&quot;&gt;yahoo geocoding api&lt;/a&gt;, and the &lt;a href=&quot;http://www.geonames.org/&quot;&gt;geonames api&lt;/a&gt; and put together &lt;a href=&quot;http://waqt.org&quot;&gt;waqt.org&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;it&amp;#8217;s a fairly minimalistic prayertimes site.  the code is available on &lt;a href=&quot;http://github.com/ahmedre/waqt.org&quot;&gt;github&lt;/a&gt;.  note that the calculation method is currently hardcoded to use the isna method, but this is fairly easy to change.&lt;/p&gt;</description>
	<pubDate>Fri, 10 Jul 2009 10:01:06 +0000</pubDate>
</item>
<item>
	<title>Mohammed Sameer: Sim Clone 4</title>
	<guid>http://foolab.org/7863 at http://foolab.org</guid>
	<link>http://foolab.org/node/7863</link>
	<description>&lt;div class=&quot;field field-type-filefield field-field-image-0&quot;&gt;
    &lt;div class=&quot;field-items&quot;&gt;
            &lt;div class=&quot;field-item odd&quot;&gt;
                    &lt;div class=&quot;filefield-file clear-block&quot;&gt;&lt;div class=&quot;filefield-icon field-icon-image-jpeg&quot;&gt;&lt;img class=&quot;field-icon-image-jpeg&quot; alt=&quot;image/jpeg icon&quot; src=&quot;http://foolab.org/sites/all/modules/contrib/filefield/icons/protocons/16x16/mimetypes/image-x-generic.png&quot; /&gt;&lt;/div&gt;&lt;a href=&quot;http://foolab.org/files/images/Screenshot-4.jpg&quot; type=&quot;image/jpeg; length=429624&quot;&gt;Screenshot-4.jpg&lt;/a&gt;&lt;/div&gt;        &lt;/div&gt;
        &lt;/div&gt;
&lt;/div&gt;
&lt;p class=&quot;left2right&quot;&gt;&lt;/p&gt;</description>
	<pubDate>Fri, 19 Jun 2009 21:53:34 +0000</pubDate>
</item>
<item>
	<title>Ahmed El-Helw: amazing quran marketing</title>
	<guid>http://whatstheplot.com/blog/?p=332</guid>
	<link>http://whatstheplot.com/blog/2009/06/02/amazing-quran-marketing/</link>
	<description>&lt;p&gt;about two years ago, i posted about sheikh mohamed&amp;#8217;s &lt;a href=&quot;http://whatstheplot.com/blog/2007/03/28/amazing-fajr-marketing/&quot;&gt;amazing fajr marketing&lt;/a&gt; tshirt.  today, i am posting about the latest tshirt in the collection &amp;#8211; read, understand, and practice quran.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;http://whatstheplot.com/images/read_quran.jpg&quot; alt=&quot;read and practice quran&quot; /&gt;&lt;/p&gt;
&lt;p&gt;sheikh is currently in egypt visiting his family and will go and make 3umrah insha&amp;#8217;Allah&amp;#8230;  the bay area really isn&amp;#8217;t the same without him.  may Allah accept from them and grant him and his family the very best and bring them back safely &amp;#8211; ameen.&lt;/p&gt;</description>
	<pubDate>Tue, 02 Jun 2009 08:07:07 +0000</pubDate>
</item>
<item>
	<title>Fahad Al-Saidi: مشغلات الوسائط المتعددة في عالم المصادر الحرة</title>
	<guid>http://www.tadwen.com/omlx/?p=148</guid>
	<link>http://www.tadwen.com/omlx/?p=148</link>
	<description>في هذا الموضوع أريد أن أجمع المقالات الأخيرة والتي كتبتها حول مشغلات الوسائط المتعددة في عالم المصادر الحرة ، وكل ما يتعلق بالصوت والفيديو، آمل أن تكون مجموعة شيقة للقرّاء الأعزاء، والمقالات هي :
1- صيغة ogg المفتوحة &amp;#166; وادي التقنية
2- محول الصوتيات والفيديو FFmpeg &amp;#166; وادي التقنية
3- مشغل الملتميديا VLC &amp;#166; وادي التقنية
4- مشغل الملتميديا [...]</description>
	<pubDate>Wed, 27 May 2009 10:04:13 +0000</pubDate>
</item>
<item>
	<title>Ahmed El-Helw: quran ubiquity plugin</title>
	<guid>http://whatstheplot.com/blog/?p=324</guid>
	<link>http://whatstheplot.com/blog/2009/05/19/quran-ubiquity-plugin/</link>
	<description>&lt;p&gt;updated and released the first version of the quran ubiquity plugin!  you can go &lt;a href=&quot;http://gist.github.com/113971&quot;&gt;here&lt;/a&gt; to install it.&lt;/p&gt;
&lt;p&gt;essentially, it contains two commands -&lt;br /&gt;
1.  &lt;strong&gt;search-quran&lt;/strong&gt; &amp;#8211; takes a parameter of what to search for and will show the results that match that particular query.  hitting enter will bring up the search results page.&lt;br /&gt;
2.  &lt;strong&gt;get-ayah&lt;/strong&gt; &amp;#8211; takes a parameter of which ayah (ex 2:2) and an optional parameter of the language/translation you want the ayah in (in english &amp;#8211; muhsin khan, for example &amp;#8211; note that ubiquity will provide suggestions for these).  hitting enter will insert the text into the selection space.&lt;/p&gt;
&lt;p&gt;this is uber-useful for muslims imho :p  perhaps i will try to provide a screencast later on that shows how to use this for those who are still afraid to try it &lt;img src=&quot;http://whatstheplot.com/blog/wp-includes/images/smilies/icon_smile.gif&quot; alt=&quot;:)&quot; class=&quot;wp-smiley&quot; /&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;*update*&lt;/strong&gt; &amp;#8211; rather than make my own screencast, i&amp;#8217;ve decided to record a set of audio instructions on how to use it.&lt;/p&gt;
&lt;p&gt;by the way &amp;#8211; if you haven&amp;#8217;t used ubiquity before, i highly recommend that you watch &lt;a href=&quot;http://vimeo.com/1561578&quot;&gt;this video&lt;/a&gt; first.  it explains what ubiquity is and gives you an idea of what it is useful for.  to put it quite simply, ubiquity is amazing.  it&amp;#8217;s an indispensable tool for your firefox.  watch the video &lt;img src=&quot;http://whatstheplot.com/blog/wp-includes/images/smilies/icon_smile.gif&quot; alt=&quot;:)&quot; class=&quot;wp-smiley&quot; /&gt; &lt;/p&gt;
&lt;p&gt;and here is the audio tutorial on the quran plugin for ubiquity.&lt;/p&gt;
&lt;p&gt;enjoy!&lt;/p&gt;</description>
	<pubDate>Tue, 19 May 2009 08:29:12 +0000</pubDate>
</item>
<item>
	<title>Ahmed El-Helw: website changes</title>
	<guid>http://whatstheplot.com/blog/?p=326</guid>
	<link>http://whatstheplot.com/blog/2009/05/19/website-changes/</link>
	<description>&lt;p&gt;after having pretty much the same theme since the launch of the site, i&amp;#8217;ve switched to the excellent &lt;a href=&quot;http://wordpress.org/extend/themes/inove&quot;&gt;iNove&lt;/a&gt; wordpress theme.  i&amp;#8217;ve also cleaned up some links and replaced the previous code highlighter with the very nice &lt;a href=&quot;http://wordpress.org/extend/plugins/syntaxhighlighter/&quot;&gt;syntax highlighter evolved&lt;/a&gt; plugin.&lt;/p&gt;</description>
	<pubDate>Tue, 19 May 2009 08:18:29 +0000</pubDate>
</item>
<item>
	<title>Mohammed Sameer: Booked my tickets (Summer 2009) :-)</title>
	<guid>http://foolab.org/1768 at http://foolab.org</guid>
	<link>http://foolab.org/node/1768</link>
	<description>&lt;p class=&quot;left2right&quot;&gt;To Cairo and beyond (-:&lt;/p&gt;
&lt;p class=&quot;left2right&quot;&gt;Too bad I'll transit for one hour in Charles De Gaulle again. I'd rather be prepared to lose my bags :-)&lt;/p&gt;
&lt;p class=&quot;left2right&quot;&gt;And did I say from 10.07.09 to 09.08.09 ?&lt;/p&gt;</description>
	<pubDate>Sat, 16 May 2009 19:04:03 +0000</pubDate>
</item>
<item>
	<title>Fahad Al-Saidi: أنا أكرهك يا أيها المجلس الثقافي البريطاني !!</title>
	<guid>http://www.tadwen.com/omlx/?p=147</guid>
	<link>http://www.tadwen.com/omlx/?p=147</link>
	<description>بفضل من الله ، أنهيت الدورة الأولى في اللغة الأنجليزية بالأمس ، كانت دورة رائعة ، ولقد استفدت منها كثيرا ، شكرا معهد بوليغلوت !
بدأت أفهم بشكل متوسع الكثير من القواعد النحوية والتراكيب الصياغية في اللغة الإنجليزية ، الخبر غير السار هو أن الدورة القادمة والتي يفترض أن أدرس فيها المستوى العاشر تأجلت بسبب قلة [...]</description>
	<pubDate>Mon, 04 May 2009 17:08:59 +0000</pubDate>
</item>
<item>
	<title>Khaled Hosny: حل مشكلة اللام ألف في التوزيعات الحديثة</title>
	<guid>http://www.khaledhosny.org/129 at http://www.khaledhosny.org</guid>
	<link>http://www.khaledhosny.org/node/129</link>
	<description>&lt;p&gt;إذا كنت تستخدم توزيعة جنو/لينكس حديثة (أوبونتو ٩,٠٤ أو أي توزيعة تحتوي xkeyboard-config-1.5 و libx11-1​.1.5 أو أحدث) فستلاحظ أن أزرار لام ألف على لوحة المفاتيح تعمل ثانية، لكن في تطبيقات جتك+ (جنوم إلخ.) ستجد أنها لا تتصل ببقية الحروف، نفس المشكلة القديمة. هذه مشكلة قديمة لكنها -وبدون الدخول في التفاصيل- شبه محلولة الآن، ما عدا جزء يتعلق بمكتبة جتك+، تجد تفاصيله &lt;a href=&quot;http://bugzilla.gnome.org/show_bug.cgi?id=537457&quot;&gt;هنا&lt;/a&gt;. لكن يمكن التحايل على هذا وفرض استخدام طريقة الإدخال XIM بدلا من طريقة الإدخال المدمجة في جتك+ سبب المشكلة.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.khaledhosny.org/node/129&quot; target=&quot;_blank&quot;&gt;اقرأ المزيد&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Fri, 01 May 2009 11:56:30 +0000</pubDate>
</item>
<item>
	<title>Ahmed El-Helw: migrating jaiku to identi.ca or twitter</title>
	<guid>http://whatstheplot.com/blog/?p=291</guid>
	<link>http://whatstheplot.com/blog/2009/04/13/migrating-jaiku-to-identica-or-twitter/</link>
	<description>&lt;p&gt;i recently decided to move my &lt;a href=&quot;http://identi.ca/aretips&quot;&gt;tech tips microblog&lt;/a&gt; to &lt;a href=&quot;http://identi.ca&quot;&gt;identi.ca&lt;/a&gt; (the original copy was on &lt;a href=&quot;http://ahmedre.jaiku.com&quot;&gt;jaiku&lt;/a&gt;), as i felt it was a little more befitting, actively developed, etc (although jaiku is now open source).&lt;/p&gt;
&lt;p&gt;anyway&amp;#8230; so i wanted to migrate my posts over &amp;#8211; so i wrote a php script to do it (it assumes your jaiku is public and reads it without hassling with oauth).&lt;/p&gt;
&lt;pre class=&quot;brush: php;&quot;&gt;
&amp;lt;?php
$sleepTime = 5;
$jaikuSource = &amp;quot;http://username.jaiku.com/json&amp;quot;;

$mode = 'identi.ca';
$baseStatusUrl = 'http://identi.ca/api/statuses/update.json';

// thanks, php-twitter
if ($mode == 'twitter'){
   $baseStatusUrl = 'http://twitter.com/statuses/update.json';
   $headers = array('Expect:', 'X-Twitter-Client: ',
      'X-Twitter-Client-Version: ','X-Twitter-Client-URL: ');
}

$ctr = 0;
$entries = array();

print &amp;quot;destination account username: &amp;quot;;
$username = trim(fgets(STDIN));
print &amp;quot;password: &amp;quot;;
system('stty -echo');
$password = trim(fgets(STDIN));
system('stty echo');
print &amp;quot;\n&amp;quot;;

$done = false;
$params = '';
while (true){
   $count = 0;
   $posts = fetchUrl($jaikuSource . $params);
   $json = json_decode($posts, true);
   $stream = $json['stream'];
   $lastEntry = null;
   foreach ($stream as $entry){
      if (isset($entry['comment_id'])) continue;
      $lastEntry = $entry;
      $count++;
      $entries[$ctr++] = $entry['title'];
   }
   if ($count == 0) break;
   $lastPostTime = $lastEntry['created_at'];
   $ts = split('-', $lastPostTime);
   $hd = split('T', $ts[2]);
   $min = split('Z', $ts[4]);
   $gmtime = gmmktime($hd[1], $ts[3], $min[0], $ts[1], $hd[0], $ts[0]) - 1;
   $params = &amp;quot;?offset=$gmtime&amp;quot;;
}

for ($i = $ctr-1; $i&amp;gt;=0; $i--){
   $params = array('status' =&amp;gt; $entries[$i]);
   if ($i != ($ctr-1)){
      print &amp;quot;sleeping $sleepTime seconds\n&amp;quot;;
      sleep($sleepTime);
   }
   twitterApiCall($baseStatusUrl, $params);
   print &amp;quot;updated status to: &amp;quot; . $entries[$i] . &amp;quot;\n&amp;quot;;
}

function fetchUrl($url){
   $ch = curl_init($url);
   curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
   $resp = curl_exec($ch);
   curl_close($ch);
   return $resp;
}

function twitterApiCall($url, $args = null){
   global $username, $password, $headers;

   // thanks, php-twitter
   $ch = curl_init($url);
   if (!is_null($args)){
      curl_setopt($ch, CURLOPT_POST, true);
      curl_setopt($ch, CURLOPT_POSTFIELDS, $args);
   }
   if ((!empty($username)) &amp;amp;&amp;amp; (!empty($password)))
      curl_setopt($ch, CURLOPT_USERPWD, $username . ':' . $password);
   curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
   if (!empty($headers))
      curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
   $resp = curl_exec($ch);
   $info = curl_getinfo($ch);
   curl_close($ch);
   if ($info['http_code']!=200)
      print &amp;quot;error - got an http code of: &amp;quot; . $info['http_code'] . &amp;quot;\n&amp;quot;;
}
&lt;/pre&gt;
&lt;p&gt;make sure you edit &lt;code&gt;$baseStatusUrl&lt;/code&gt; and &lt;code&gt;$mode&lt;/code&gt; as necessary.  enjoy!&lt;/p&gt;</description>
	<pubDate>Mon, 13 Apr 2009 08:33:28 +0000</pubDate>
</item>
<item>
	<title>Mohammed Sameer: Bye fglrx...</title>
	<guid>http://foolab.org/1767 at http://foolab.org</guid>
	<link>http://foolab.org/node/1767</link>
	<description>&lt;p class=&quot;left2right&quot;&gt;Thanks to all the hard work by the fglrx packaging team, DRI, MESA, Xorg, Radeon,... etc people!&lt;/p&gt;
&lt;p class=&quot;left2right&quot;&gt;I've been using fglrx with my laptop since I've had it:&lt;/p&gt;
&lt;div class=&quot;left2right&quot; class=&quot;codeblock&quot;&gt;&lt;code&gt;01:00.0 VGA compatible controller: ATI Technologies Inc Radeon Mobility X1400&lt;/code&gt;&lt;/div&gt;

&lt;p class=&quot;left2right&quot;&gt;And to the people behind the Debian packaging..&lt;br /&gt;
* xserver-xorg-video-radeon from testing.&lt;br /&gt;
* libdrm-intel1 and libdrm2 from unstable&lt;br /&gt;
* libgl1-mesa-dri and libgl1-mesa-glx from experimental&lt;/p&gt;
&lt;p class=&quot;left2right&quot;&gt;
&lt;div class=&quot;codeblock&quot;&gt;&lt;code&gt;vader:~# apt-get --purge remove fglrx-driver fglrx-kernel-src fglrx-kernel-2.6.26-1-686 fglrx-sourceReading package lists... Done&lt;br /&gt;Building dependency tree&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;Reading state information... Done&lt;/code&gt;&lt;/div&gt;&lt;/p&gt;
&lt;p class=&quot;left2right&quot;&gt;The following packages will be REMOVED:&lt;br /&gt;&amp;nbsp;&amp;nbsp; fglrx-driver* (9-2-2)&lt;br /&gt;&amp;nbsp;&amp;nbsp; fglrx-kernel-2.6.26-1-686* (9-2-2+2.6.26-13)&lt;br /&gt;&amp;nbsp;&amp;nbsp; fglrx-kernel-src* (9-2-2)&lt;br /&gt;&amp;nbsp;&amp;nbsp; fglrx-source* (9-2-2)&lt;br /&gt;0 upgraded, 0 newly installed, 4 to remove and 17 not upgraded.&lt;br /&gt;After this operation, 38.8MB disk space will be freed.&lt;br /&gt;Do you want to continue [Y/n]? 
&lt;/p&gt;
&lt;p class=&quot;left2right&quot;&gt;I probably lost the ability to suspend and resume but I don't usually do it with that laptop.&lt;/p&gt;
&lt;p class=&quot;left2right&quot;&gt;Now let's hope my lapop at work will be adapted easily too :)&lt;/p&gt;
&lt;p class=&quot;left2right&quot;&gt;&lt;b&gt;UPDATE&lt;/b&gt;: Seems you lose OpenGL 2.0 if you use the free driver. If you are doing OpenGL stuff like me then you are in trouble ;-|&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://foolab.org/node/1767&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Thu, 09 Apr 2009 19:59:20 +0000</pubDate>
</item>
<item>
	<title>Fahad Al-Saidi: English vocabulary in use</title>
	<guid>http://www.tadwen.com/omlx/?p=146</guid>
	<link>http://www.tadwen.com/omlx/?p=146</link>
	<description>سألني بعض الأصدقاء عن رأيي حول كتاب English vocabulary in use ، وهل هو مجدي و كيفية طريقته ؟
لم أستطع أن أمنع نفسي من أن أتحدث حول هذا الكتاب فلي معه ساعات طويلة ، الكتاب بشكل عام مقسم إلى مئة وحدة ، كل وحدة مجمعة إلى أقسام ، وكل قسم يتناول قضية معينة.
	مثلا الجريمة ، [...]</description>
	<pubDate>Wed, 25 Mar 2009 19:09:25 +0000</pubDate>
</item>
<item>
	<title>Ayman Hourieh: &quot;Django 1.0 Website Development&quot; Released</title>
	<guid>http://aymanh.com/372 at http://aymanh.com</guid>
	<link>http://aymanh.com/django-10-website-development-released</link>
	<description>&lt;p&gt;My author copies of &lt;a href=&quot;http://www.packtpub.com/django-1-0-website-development-2nd-edition/book&quot;&gt;&quot;Django 1.0 Website Development&quot;&lt;/a&gt; have arrived. This is the second edition of my Django book. &lt;a href=&quot;http://www.djangoproject.com/&quot;&gt;Django&lt;/a&gt; is a framework for building web applications in Python. This book explains how to assemble Django's features and take advantage of its power to design, develop, and deploy a fully-featured web site.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;http://aymanh.com/files/django_book.jpg&quot; alt=&quot;Django 1.0 Website Development&quot; class=&quot;center&quot; /&gt;&lt;/p&gt;
&lt;p&gt;The new edition has been updated to Django 1.0. The key topics that the reader will learn from the book are:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Register users through a user authentication system and manage them efficiently.&lt;/li&gt;
&lt;li&gt;Restrict user access to certain pages and protect against malicious input.&lt;/li&gt;
&lt;li&gt;Create tags to allow site visitors to classify, view, and share content easily.&lt;/li&gt;
&lt;li&gt;Create own administration interface for proper monitoring of the web site.&lt;/li&gt;
&lt;li&gt;Enhance user interface with AJAX.&lt;/li&gt;
&lt;li&gt;Enable voting and commenting on content, and display popular content to site visitors.&lt;/li&gt;
&lt;li&gt;Build user networks; add friend management and invitation features for social networking.&lt;/li&gt;
&lt;li&gt;Create unit tests to automate the testing of code.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The &lt;a href=&quot;http://www.packtpub.com/article/django-1-0-website-development-2nd-edition-table-of-contents&quot;&gt;full table of contents&lt;/a&gt; is available.&lt;/p&gt;
&lt;p&gt;The book is available in paper and PDF formats at &lt;a href=&quot;http://www.packtpub.com/django-1-0-website-development-2nd-edition/book&quot;&gt;Packt Publishing&lt;/a&gt;. It is also available from all major book sellers like &lt;a href=&quot;http://www.amazon.com/Django-Website-Development-Ayman-Hourieh/dp/1847196780/&quot;&gt;Amazon&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Writing the book and revising it have been an enjoyable experience for me. The feeling of accomplishment when my copies arrived is satisfying. I sincerely hope that readers find the book interesting and useful. If you have questions or comments, don't hesitate to &lt;a href=&quot;http://aymanh.com/feedback&quot;&gt;email me&lt;/a&gt;!&lt;/p&gt;
&lt;p&gt;More photos of the book are available at &lt;a href=&quot;http://picasaweb.google.com/aymanh/MyDjangoBook&quot;&gt;my Picasa web albums&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://aymanh.com/django-10-website-development-released&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Mon, 23 Mar 2009 00:14:45 +0000</pubDate>
</item>
<item>
	<title>Ahmed El-Helw: bbc interview with idf spokeswoman</title>
	<guid>http://whatstheplot.com/blog/?p=280</guid>
	<link>http://whatstheplot.com/blog/2009/03/20/bbc-interview-with-idf-spokeswoman/</link>
	<description>&lt;p&gt;i usually start my weekdays by listening to the excellent &lt;a href=&quot;http://www.bbc.co.uk/radio/podcasts/globalnews/&quot;&gt;bbc global news podcast&lt;/a&gt;.  in today&amp;#8217;s episode, bbc&amp;#8217;s &lt;a href=&quot;http://www.bbc.co.uk/worldservice/presenters/owen_bennett_jones.shtml&quot;&gt;owen bennett-jones&lt;/a&gt; interviewed an idf spokeswoman regarding &lt;a href=&quot;http://news.bbc.co.uk/2/hi/middle_east/7952603.stm&quot;&gt;israeli troops&amp;#8217; admission to gaza abuses&lt;/a&gt;.  i decided to cut it out and provide it here for you to listen to.&lt;/p&gt;
&lt;p&gt;is it just me, or do these people seem heartless?  anyway, you can download the original podcast &lt;a href=&quot;http://downloads.bbc.co.uk/podcasts/worldservice/globalnews/globalnews_20090320-0340a.mp3&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;</description>
	<pubDate>Fri, 20 Mar 2009 21:57:48 +0000</pubDate>
</item>
<item>
	<title>Fahad Al-Saidi: مقاطع جديدة على تسلية</title>
	<guid>http://www.tadwen.com/omlx/?p=145</guid>
	<link>http://www.tadwen.com/omlx/?p=145</link>
	<description>وأخيرا بدأت في العمل على طموحي لهذه السنة ، ألا وهو تعلم اللغة الانجليزية ، منذ أسبوعين التحقت بدورة في اللغة الانجليزية والحمد الله حصلت على مستوى Upper-intermediate ( التاسع ) في اختبار تحديد المستوى.
ندرس كتاب Headway  لمن يعرفه ، و قد أنهينا الوحدة الأولى وبدأنا في الوحدة الثانية، بدأت أفهم وأتعمق في اللغة [...]</description>
	<pubDate>Thu, 19 Mar 2009 11:09:44 +0000</pubDate>
</item>
<item>
	<title>Ahmed El-Helw: arabish</title>
	<guid>http://whatstheplot.com/blog/?p=278</guid>
	<link>http://whatstheplot.com/blog/2009/03/10/arabish/</link>
	<description>&lt;p&gt;do you watch &lt;a href=&quot;http://youtube.com&quot;&gt;anta ambooba&lt;/a&gt; in &lt;a href=&quot;http://getfirefox.com&quot;&gt;tha3lab al nar&lt;/a&gt;?  click &lt;a href=&quot;http://musafirfidunya.wordpress.com/2009/03/10/lughat-ul-arabiyya-fi-asarina-juz-al-awwal/&quot;&gt;here&lt;/a&gt; for a list of funny, literal arabizations done by my roommate and i.&lt;/p&gt;</description>
	<pubDate>Tue, 10 Mar 2009 22:43:58 +0000</pubDate>
</item>
<item>
	<title>Ahmed El-Helw: reading quran on the iphone</title>
	<guid>http://whatstheplot.com/blog/?p=269</guid>
	<link>http://whatstheplot.com/blog/2009/03/08/reading-quran-on-the-iphone/</link>
	<description>&lt;p&gt;a long time ago, when i got my iphone, i realized that it would be nice to be able to read the quran on my phone.  what i wanted was a way to read the arabic text on the phone (page by page, not ayah by ayah).  anyhow, i&amp;#8217;ll outline the solutions i&amp;#8217;ve found here along with my preferred solution and how to set it up.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;options&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;quran applications in the app store &amp;#8211; there are a few in the app store, but only one version of iQuran is free.  it shows you the text (ayah by ayah, however), has translations, and audio.&lt;/li&gt;
&lt;li&gt;images &amp;#8211; copy a set of 604 images to your iphone, with each image representing one page of the Quran.  then, when you want to read Quran, you load up the photo viewer and read the pages there.  you can find these images in many places. &lt;a href=&quot;http://www.hackint0sh.org/forum/f127/10088.htm&quot;&gt;here&lt;/a&gt; is one example.  this is the best solution for reading the Quran in Arabic if you don&amp;#8217;t want to jailbreak your phone.&lt;/li&gt;
&lt;li&gt;pdfs &amp;#8211; in my opinion, the best way to read quran on the iphone (if you have a good pdf viewer).  you don&amp;#8217;t have to hassle with syncing images, nor do you have to deal with 604 files on your phone that you must go through in order to read Quran.  also, pdfs tend to be of higher quality than images.  this is the solution i recommend if you have or are willing to jailbreak your phone.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;since the first solution is straight forward and instructions for the second solution are available on the link above, i will here outline instructions on how to use pdfs.&lt;/p&gt;
&lt;p&gt;first, i need to point something out &amp;#8211; you technically don&amp;#8217;t need to jailbreak your phone to view the quran pdfs on it &amp;#8211; you could download one of the apps in the appstore that views pdfs and use it.  however, i&amp;#8217;ve tried several of the free ones, and was never satisfied with the speed and performance of any of them.  the best pdf viewer i found for the iphone is safari itself.  so in order to be able to access these pdfs without a connection, you need to have a webserver running on your phone&amp;#8230; and that is why you need to jailbreak your phone &lt;img src=&quot;http://whatstheplot.com/blog/wp-includes/images/smilies/icon_smile.gif&quot; alt=&quot;:)&quot; class=&quot;wp-smiley&quot; /&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;preview&lt;/strong&gt;&lt;br /&gt;
here are three screenshots of how it looks like:&lt;br /&gt;
&lt;a href=&quot;http://feeds.feedburner.com/images/iphonepdfs/pdf_quran_menu-03.07.2009.png&quot;&gt;menu&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://feeds.feedburner.com/images/iphonepdfs/pdf_quran.03.07.2009.png&quot;&gt;quran text&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://feeds.feedburner.com/images/iphonepdfs/pdf_quran_w-03.07.2009.png&quot;&gt;quran text (wide)&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;instructions&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;jailbreak your phone.  on an older iphone, this is easy (install the newest firmware via itunes, then install and run &lt;a href=&quot;http://www.quickpwn.com/&quot;&gt;quickpwn&lt;/a&gt;).  for the 3g iphone, carefully read the instructions on &lt;a href=&quot;http://www.quickpwn.com/&quot;&gt;quickpwn&lt;/a&gt;&amp;#8217;s website, especially if you want your phone to be unlocked and/or are already using it unlocked.&lt;/li&gt;
&lt;li&gt;once the phone is jail broken, run cydia.  install openssh.  then install lighttpd.&lt;/li&gt;
&lt;li&gt;when you&amp;#8217;re on a wifi network, go to your phone&amp;#8217;s settings (from the main screen), click on wifi, and choose the network that you are currently connected to by pressing the blue arrow &amp;#8211; note down the value of the ip address&lt;/li&gt;
&lt;li&gt;ssh into your iphone as root &amp;#8211; in linux or osx, just open a terminal and run &amp;#8220;ssh root@[your phone's ip address]&amp;#8220;.  on windows, you can do this by downloading &lt;a href=&quot;http://www.chiark.greenend.org.uk/~sgtatham/putty/&quot;&gt;putty&lt;/a&gt;.  the default password is alpine.  keep this terminal open for the next step (recommendation &amp;#8211; once you&amp;#8217;re in, change your password.  type passwd and choose something else besides the default.  this is for security purposes).&lt;/li&gt;
&lt;li&gt;now you can set up lighttpd.  download &lt;a href=&quot;http://feeds.feedburner.com/misc/iphone_pdfs/com.http.lighttpd.plist&quot;&gt;com.http.lighttpd.plist&lt;/a&gt; and scp it to /Library/LaunchDaemons (using mac/linux, just do scp com.http.lighttpd.plist root@[iphone's ip]:/Library/LaunchDaemons).  on windows, download &lt;a href=&quot;http://winscp.net&quot;&gt;winscp&lt;/a&gt;, log in (user name root, password is &amp;#8216;alpine&amp;#8217; unless you&amp;#8217;ve changed it in the above step), navigate to /Library/LaunchDaemons, and copy the file over).  this file is what will set up lighttpd to start every time the phone is started, and to read the lighttpd.conf from the path below.&lt;/li&gt;
&lt;li&gt;download &lt;a href=&quot;http://feeds.feedburner.com/misc/iphone_pdfs/lighttpd.conf&quot;&gt;lighttpd.conf&lt;/a&gt; and scp it to /etc.  this is the configuration file for the webserver.&lt;/li&gt;
&lt;li&gt;download the &lt;a href=&quot;http://feeds.feedburner.com/misc/iphone_pdfs/iphone_web.zip&quot;&gt;pdfs and web files&lt;/a&gt;.  unzip them (you&amp;#8217;ll get a web directory), and scp this directory to /var/root/Media (so that the files will be in /var/root/Media/web/*).  note that if you change this path, you have to edit lighttpd.conf to reflect wherever you put this.&lt;/li&gt;
&lt;li&gt;finally, in the terminal you opened in the earlier step, type the following command (this command is what ultimately makes lighttpd start everytime the phone is started):&lt;br /&gt;
&lt;code&gt;launchctl load -w /Library/LaunchDaemons/com.http.lighttpd.plist&lt;/code&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;and that&amp;#8217;s it&amp;#8230; you should be good to go!  open up safari and navigate to http://localhost/index.html and enjoy!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;known issues&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;when transferring data to and from the phone (via ssh or scp), you want to make sure that you&amp;#8217;re on wireless.  you may also want to make sure the iphone doesn&amp;#8217;t &amp;#8220;sleep&amp;#8221; so that the connection doesn&amp;#8217;t drop.&lt;/li&gt;
&lt;li&gt;sometimes, when you choose a particular file to read, you get a &amp;#8220;cannot connect to server&amp;#8221; error &amp;#8211; it usually disappears and loads the page before you have a chance to click &amp;#8220;ok.&amp;#8221;&lt;/li&gt;
&lt;li&gt;if you turn the iphone off while reading a pdf (or go to the main screen, etc), when you come back to safari, sometimes, the page may appear malformed and not allow you to read.  to solve this problem, hit back to go to the index and choose a juz&amp;#8217; to reload it.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;suggestions/additions/comments are welcome and appreciated.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;update&lt;/strong&gt; &amp;#8211; i&amp;#8217;ve been using batoul apps&amp;#8217; &lt;a href=&quot;http://quranapp.com/iphone/&quot;&gt;quranreader&lt;/a&gt; at the recommendation of a friend.  it&amp;#8217;s $1 in the app store, but well worth it.&lt;/p&gt;</description>
	<pubDate>Sun, 08 Mar 2009 07:43:50 +0000</pubDate>
</item>
<item>
	<title>Ahmed El-Helw: so, i am a night owl…</title>
	<guid>http://whatstheplot.com/blog/?p=267</guid>
	<link>http://whatstheplot.com/blog/2009/03/04/so-i-am-a-night-owl/</link>
	<description>&lt;p&gt;&lt;img alt=&quot;&quot; src=&quot;http://feeds.feedburner.com/images/nightowl-03.02.2009.png&quot; title=&quot;best time to twitter me (courtesy of tweet oclock)&quot; class=&quot;alignnone&quot; width=&quot;500&quot; height=&quot;505&quot; /&gt;&lt;/p&gt;
&lt;p&gt;funny.  courtesy of &lt;a href=&quot;http://www.tweetoclock.com/&quot;&gt;tweet o&amp;#8217;clock&lt;/a&gt;.&lt;/p&gt;</description>
	<pubDate>Wed, 04 Mar 2009 09:56:10 +0000</pubDate>
</item>
<item>
	<title>Fahad Al-Saidi: فكرة مجلة حاسوبية</title>
	<guid>http://www.tadwen.com/omlx/?p=144</guid>
	<link>http://www.tadwen.com/omlx/?p=144</link>
	<description>منذ فترة طويلة وأنا أفكر بإنشاء مجلة حاسوبية ورقية وليس إلكترونية  شهرية ، تقدم مقالات و أخبار تقنية وحلول تقنية للمشاكل ، تركز حول الحلول المناسبة لوطننا العربي.
	أيضا تحوي على قرص DVD  يحتوى على برامج وألعاب و توزيعات لينكس مما يسمح بتوزيعه بالمجان ، على ان تكون المجلة متزنة الطرح ،
	فما رأيكم بهذه [...]</description>
	<pubDate>Wed, 25 Feb 2009 19:31:24 +0000</pubDate>
</item>
<item>
	<title>Ahmed El-Helw: ubiquity rocks!</title>
	<guid>http://whatstheplot.com/blog/?p=257</guid>
	<link>http://whatstheplot.com/blog/2009/02/18/ubiquity-rocks/</link>
	<description>&lt;p&gt;today, i felt like playing some more with &lt;a href=&quot;http://labs.mozilla.com/projects/ubiquity/&quot;&gt;ubiquity&lt;/a&gt;, which i had installed for a while now but had not played around with sufficiently.  i decided to try to write a simple plugin that will search the quran for a particular set of words.  to do this, i felt obliged to expose an api for the alpha version of &lt;a href=&quot;http://quranicrealm.com&quot;&gt;quranicrealm&lt;/a&gt; first, which was good because i needed to do it eventually anyway.&lt;/p&gt;
&lt;p&gt;and here&amp;#8217;s the mandatory screenshot:&lt;br /&gt;
&lt;img alt=&quot;ubiquity - quran search preview&quot; src=&quot;http://feeds.feedburner.com/images/ubi.sq_pre.02.18.2009.png&quot; title=&quot;ubiquity - quran search preview&quot; /&gt;&lt;/p&gt;
&lt;p&gt;it still needs a lot of work&amp;#8230;  things i still want to do if i get around to it:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;add a favicon (for the site and for the plugin)&lt;/li&gt;
&lt;li&gt;more options (ex, &amp;#8220;search english,&amp;#8221; or &amp;#8220;search transliteration,&amp;#8221; etc)&lt;/li&gt;
&lt;li&gt;replace the current text with a link (or translation).  this would be useful in im conversations or while writing blog posts.&lt;/li&gt;
&lt;li&gt;a &amp;#8220;get-ayah&amp;#8221; command (to say, &amp;#8220;get ayah 1 of sura fatiha in arabic,&amp;#8221; for example).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;anyway, i&amp;#8217;ll post up the code when i&amp;#8217;ve added some improvements insha&amp;#8217;Allah.  if you want it before then, post a comment.&lt;/p&gt;</description>
	<pubDate>Wed, 18 Feb 2009 10:23:05 +0000</pubDate>
</item>
<item>
	<title>Khaled Hosny: I'm, sort of, back</title>
	<guid>http://www.khaledhosny.org/128 at http://www.khaledhosny.org</guid>
	<link>http://www.khaledhosny.org/node/128</link>
	<description>&lt;p&gt;It has been long since last time I posted here, and there has been many recent developments.&lt;/p&gt;
&lt;p&gt;I started a project to for digitisation of the standard Arabic typeface developed and used by Al-Amiria printing in Cairo from around 20s to 70s of the last century that was widely used in other governmental printing houses as well. The project has been funded by &lt;a href=&quot;http://tug.org/tc/devfund/grants.html&quot;&gt;TUG&lt;/a&gt;, see the &lt;a href=&quot;http://code.google.com/p/amiri/&quot;&gt;google code page&lt;/a&gt; of the project for more details (and if you want to donate to the project ;).)&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.khaledhosny.org/node/128&quot; target=&quot;_blank&quot;&gt;اقرأ المزيد&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Sat, 14 Feb 2009 18:57:07 +0000</pubDate>
</item>
<item>
	<title>Fahad Al-Saidi: أريد نصيحة مجرب في اللغة الانجليزية</title>
	<guid>http://www.tadwen.com/omlx/?p=143</guid>
	<link>http://www.tadwen.com/omlx/?p=143</link>
	<description>قررت هذه السنة أن أكمل دراستي الجامعية (الماجستير ) ولكن باللغة الإنجليزية في الوقت الحاضر، ولايمنع بلغة ثانية إذا اقتضت الظروف.
وفي معظم الجامعات يتطلب منك الحصول على معدل 6.5 في اختبار  IELTS ، بصراحة لا أعرف كثيرا عن هذا الاختبار ، ولكن الذي اعرفه أن مستواي الحالي فوق المتوسط في الانجليزية ،
القضية أني لم [...]</description>
	<pubDate>Wed, 11 Feb 2009 15:24:28 +0000</pubDate>
</item>
<item>
	<title>Ahmed El-Helw: thoughts on the g1</title>
	<guid>http://whatstheplot.com/blog/?p=252</guid>
	<link>http://whatstheplot.com/blog/2009/02/11/thoughts-on-the-g1/</link>
	<description>&lt;p&gt;for some (crazy) reason, i decided to try out the g1 after reading &lt;a href=&quot;http://smarterware.org/184/why-i-switched-to-android-from-the-iphone&quot;&gt;gina&amp;#8217;s article&lt;/a&gt; and finding a good deal on craigslist.  the summary is &amp;#8211; i think i am going to sell it and keep my iphone &lt;img src=&quot;http://whatstheplot.com/blog/wp-includes/images/smilies/face-smile.png&quot; alt=&quot;:)&quot; class=&quot;wp-smiley&quot; /&gt; &lt;/p&gt;
&lt;p&gt;thoughts so far:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;it&amp;#8217;s nice to have a keyboard &amp;#8211; but something doesn&amp;#8217;t feel right about it.  i can&amp;#8217;t quite put my hands on it yet.&lt;/li&gt;
&lt;li&gt;no arabic fonts in the browser, and no arabization!! &lt;img src=&quot;http://whatstheplot.com/blog/wp-includes/images/smilies/face-sad.png&quot; alt=&quot;:(&quot; class=&quot;wp-smiley&quot; /&gt;   iphone doesn&amp;#8217;t have it either, but third party solutions &lt;a href=&quot;http://iphoneislam.com&quot;&gt;(iphone islam)&lt;/a&gt; exist that work very well.&lt;/li&gt;
&lt;li&gt;touch screen isn&amp;#8217;t multi touch.  also, you have to press with your finger (not the finger tip) &amp;#8211; pressing with the finger tip is useless.
   &lt;/li&gt;
&lt;li&gt;gmail app totally rocks&lt;/li&gt;
&lt;li&gt;integration with google (for gmail and calendar) rocks&lt;/li&gt;
&lt;li&gt;integration with contacts is HORRIBLE.  seriously.  gmail, as you may know, makes a contact for every person you email.  so if you sync your contacts as is with the phone, you&amp;#8217;re looking at a ridiculous set of contacts.  moreover, if you use the built in google syncing within address book, your address book gets sullied with all these random contacts, duplicates, etc.  not very cool.  i worked around this by using &lt;a href=&quot;http://www.antoniolore.net/ab2csv.php&quot;&gt;ab2csv exporter&lt;/a&gt;, exporting a csv, and importing it into google contacts under a specific group, then only syncing that group with the phone.&lt;/li&gt;
&lt;li&gt;one odd caveat &amp;#8211; you have to use the supplied usb cable to connect the hone to the pc and be able to mount the micro sd card.  using any normal cable you may have (from a camera, for example) will charge the phone, but won&amp;#8217;t work for mounting the micro sd card.  took me a while to figure this out.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;i upgraded the firmware, but haven&amp;#8217;t played with &lt;a href=&quot;http://www.google.com/latitude/intro.html&quot;&gt;google latitude&lt;/a&gt; yet (nor with the gps).&lt;/p&gt;
&lt;p&gt;i may play with it some more, but at the time being, i am thinking of selling this and sticking with my iphone, as it feels a lot more polished.  there are definitely some nice things about it that are missing from the iphone &amp;#8211; gears, the fact it runs linux, development seems to be easier (java based), cut and paste, better camera, built in voice dialer, etc.  but the iphone feels a lot more polished.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;*update*&lt;/strong&gt; &amp;#8211; &amp;#8220;compare everywhere&amp;#8221; app rocks &amp;#8211; iphone has an equivalent (snaptell, and the amazon app is good too), but it doesn&amp;#8217;t scan barcodes.  the english to arabic dictionary actually renders proper shaped arabic.  apparently, &lt;a href=&quot;http://www.ahmed-essam.com/2007/11/applicability-for-arabizing-android.html&quot;&gt;some&lt;/a&gt; &lt;a href=&quot;http://blog.amr-gawish.com/39/arabic-language-in-android/&quot;&gt;people&lt;/a&gt; have gotten arabic (the font and shaping) to work (though i am not sure if it&amp;#8217;s throughout all the apps or not).  they haven&amp;#8217;t documented it all yet but should soon.  i doubt it&amp;#8217;ll be to the extent that arabization is done on the iphone, however.  battery life is sup-par &amp;#8211; went from 100% to 82% in a few minutes by installing and trying a handful of apps.&lt;/p&gt;
&lt;p&gt;summary &amp;#8211; iphone (even the first gen) still wins.&lt;/p&gt;</description>
	<pubDate>Wed, 11 Feb 2009 09:14:35 +0000</pubDate>
</item>
<item>
	<title>Ahmed El-Helw: faster and better text search</title>
	<guid>http://whatstheplot.com/blog/?p=232</guid>
	<link>http://whatstheplot.com/blog/2009/01/25/faster-and-better-text-search/</link>
	<description>&lt;p&gt;i have a set of ~6000 quotes (verses, if you will), along with a multiple set of translations for each of those verses.  before, i was searching across these verses using mysql.  while this seemed to work, it was very limiting, and i began looking into alternatives.&lt;/p&gt;
&lt;p&gt;so i did a little bit of research and tried out &lt;a href=&quot;http://lucene.apache.org/java/docs/&quot;&gt;lucene&lt;/a&gt; and &lt;a href=&quot;http://www.sphinxsearch.com/&quot;&gt;sphinx&lt;/a&gt;.  for lucene, i specifically used the &lt;a href=&quot;http://framework.zend.com/manual/en/zend.search.lucene.html&quot;&gt;zend version&lt;/a&gt; (i&amp;#8217;ll discuss standard &lt;a href=&quot;http://lucene.apache.org/&quot;&gt;lucene&lt;/a&gt; (java) towards the end of this post.)&lt;/p&gt;
&lt;p&gt;i&amp;#8217;ll show the results first, and then explain them after.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;http://chart.apis.google.com/chart?chs=350x100&amp;cht=bhs&amp;chd=t:8.030,7.542,8.324|8.304,7.898,11.131|106.254,106.561,108.747|285.759,116.222,224.381&amp;chds=0,400&amp;chco=ff0000,C6D9FD,4D89F9,123456&amp;chxt=y&amp;chxl=0:|query3|query2|query1&amp;chdl=sphinx|sphinx alt|mysql|lucene&quot; /&gt;&lt;/p&gt;
&lt;p&gt;the graph above shows a quick overview of the tests run.  a set of 3 different queries were run against 4 different backends.  the numbers were generated using apache bench (ab) using 100 requests with a concurrency of 1.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;backends&lt;/strong&gt;:&lt;br /&gt;
&lt;em&gt;lucene&lt;/em&gt;:  this was the first implementation.  in it, each verse was a &amp;#8220;document.&amp;#8221;  each translation was a property of the document.  the total number of documents was thus equivalent to the number of verses. &lt;/p&gt;
&lt;p&gt;&lt;em&gt;sphinx&lt;/em&gt;:  this was the second sphinx implementation (see sphinx alt below for the first implementation).  this implementation was just done to make the data model similar to that of lucene, which is exactly what it is.  although this ended up being the fastest (by &amp;lt; 5ms in the tests run), i prefer the sphinx alt implementation because it&amp;#8217;s closest to that of the database schema.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;sphinx alt&lt;/em&gt;: although it is named &amp;#8220;sphinx alt&amp;#8221; in the graph above, this is really the initial sphinx implementation.  in this model, a translation of one verse was a document.  consequently, the total number of documents was (number of translations) * (number of verses).  i sort of like this one most (even though it&amp;#8217;s not the fastest) because it is the closest to the current database schema.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;mysql&lt;/em&gt;:  this is sort of the baseline, and, to be honest, it&amp;#8217;s not fair either.  the query used here is something in the nature of getting the row where the text is like &amp;#8216;%word1%word2%&amp;#8217;;  the number of results returned by this are far fewer (and less valuable) than those returned by either lucene or sphinx.  one would need to do &amp;#8220;where text like &amp;#8216;%word1%word2%&amp;#8217; or text like &amp;#8216;%word2%word1%&amp;#8217;&amp;#8221; to get a more accurate estimate, but for baseline purposes, i simply ran the first query.  note that the query cache size is 0 (ie query cache is on but effectively off for this set of tests).  note that the text field has a fulltext index on it.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;results&lt;/strong&gt;:&lt;br /&gt;
sphinx wins hands down.  however, although it seems that lucene comes in last, this is not really accurate because of the type of mysql query being used.  from my limited tests (using a more complicated sql query), lucene and mysql have comparable performance, but lucene of course has the added benefit of more advanced query options, etc.&lt;/p&gt;
&lt;p&gt;sphinx times were 8.030 ms, 7.542 ms, 8.324 ms, sphinx alt times were 8.304 ms, 7.898 ms, 11.131 ms, lucene times were 285.759 ms, 116.222 ms, 224.381 ms, and mysql times were 106.254 ms, 106.561 ms, 108.747 ms for queries 1, 2, and 3, respectively.  query 1 contained three words (+term1 +term2 +term3), query 2 contained one word (+term4), and query 3 contained two words (+term5 +term6).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;additional details&lt;/strong&gt;:&lt;br /&gt;
plain vanilla java lucene is usually faster than zend&amp;#8217;s lucene implementation.  the largest difference can be noted in indexing times (a few seconds for java versus 15+ minutes in php).  if i had to index frequently, i&amp;#8217;d use java lucene or sphinx because they are &lt;em&gt;insanely&lt;/em&gt; faster.&lt;/p&gt;
&lt;p&gt;for example, the first query takes 179.84 ms on average in java (over 100 queries) versus about 272.61 ms on average for php.  the second query takes 173.22 ms on average in java versus about 103.30 ms in php. the third query takes 178.98 ms on average in java versus about 214.78 ms in php.&lt;/p&gt;
&lt;p&gt;php only won at the second query, which also happens to be the simplest query.  two things to note &amp;#8211; first, the times here don&amp;#8217;t include the jvm or php interpreter start times.  these are times reported by taking the time before and after the search call and displaying them.  second, unlike the first test, this was all run from the command line and not directly via web (didn&amp;#8217;t want to bother setting up tomcat or solr, etc).&lt;/p&gt;
&lt;p&gt;just for fun, i implemented the &amp;#8220;sphinx alt&amp;#8221; data scheme in java lucene as well and re-ran the 3 tests 100 times each.  the results were 178.54 ms, 160.20 ms, and 172.72 ms &amp;#8211; very much comparable to the results with the alternate schema.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;the summary of this very long post in 2 words&lt;/strong&gt;:  sphinx rocks.&lt;/p&gt;</description>
	<pubDate>Mon, 26 Jan 2009 01:54:04 +0000</pubDate>
</item>
<item>
	<title>Fahad Al-Saidi: رفع الحجب ،</title>
	<guid>http://www.tadwen.com/omlx/?p=142</guid>
	<link>http://www.tadwen.com/omlx/?p=142</link>
	<description>اليوم لاحظت أن الحجب قد رفع عن هذه المدونة ، ولله الحمد والمنة ،، شكرا عمانتل !!</description>
	<pubDate>Fri, 23 Jan 2009 18:30:56 +0000</pubDate>
</item>
<item>
	<title>Fahad Al-Saidi: إلى رحمة الله يا جدي العزيز</title>
	<guid>http://www.tadwen.com/omlx/?p=141</guid>
	<link>http://www.tadwen.com/omlx/?p=141</link>
	<description>بقلوب مؤمنة ، انتقل جدي العزيز إلى جوار ربه عصر هذا اليوم ، بعد عناء طويل مع المرض، إنا لله وإنا إليه راجعون.
	لا أجد كلمات أقولها إلا الدعاء له بالرحمة والمغفرة ، وأن يلهمنا الصبر والسلوان . فبعد فراق زوجتي قبل أسبوعين ، جاء فراق جدي العزيز.
	لله ما أعطى لله ما أخذ ، ولله الحمد [...]</description>
	<pubDate>Sun, 18 Jan 2009 20:03:09 +0000</pubDate>
</item>
<item>
	<title>Fahad Al-Saidi: المدونة تحت الحجب</title>
	<guid>http://www.tadwen.com/omlx/?p=140</guid>
	<link>http://www.tadwen.com/omlx/?p=140</link>
	<description>للأسف الشديد ، مدونتي تحت الحجب أكثر من أسبوعين من الآن ، من قبل الشركة الاتصالات عمانتل ، لذا لا أستيطع الوصول إلى المدونة بسهولة و كذلك كل أفراد الشعب العماني ..
	لا أدري ماذا أفعل ، لقد راسلتهم أكثر من مرة ولكن لا حياة لمن تنادي !! أفكر جديا بالانتقال إلى خدمة بلوجر من جديد [...]</description>
	<pubDate>Thu, 15 Jan 2009 10:57:21 +0000</pubDate>
</item>
<item>
	<title>Mohammed Sameer: Oh shit! On tax!</title>
	<guid>http://foolab.org/1766 at http://foolab.org</guid>
	<link>http://foolab.org/node/1766</link>
	<description>&lt;p class=&quot;left2right&quot;&gt;Oh shit!&lt;/p&gt;
&lt;p class=&quot;left2right&quot;&gt;I have a bill from the tax office since May 2008.&lt;/p&gt;
&lt;p class=&quot;left2right&quot;&gt;It was due last December and I never knew I had to pay anything.&lt;/p&gt;
&lt;p class=&quot;left2right&quot;&gt;Now I have to pay it plus the interest rate!&lt;/p&gt;
&lt;p class=&quot;left2right&quot;&gt;It's not much but ... :-(&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://foolab.org/node/1766&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Tue, 13 Jan 2009 21:38:28 +0000</pubDate>
</item>
<item>
	<title>Fahad Al-Saidi: شكرا جزيلا لكم جميعا</title>
	<guid>http://www.tadwen.com/omlx/?p=139</guid>
	<link>http://www.tadwen.com/omlx/?p=139</link>
	<description>إخواني الكرام جميعا من دون استثناء &amp;#8230;
	كان لتعزيتكم لي أمل يشع في قلبي بالأمل في وسط هذه المحنة ، فلا أعرف كلمة أشكركم بها ، إلا الدعاء لكم بالخير في الدنيا والآخرة وأن لا تروا مكروها في أهلكم وذويكم وخلانكم&amp;#8230;
	أشكرك مرة آخرى على المواساة والتعاطف الذي أبديتموه معي .. فجزاكم الله ألف خير .
	أحس بنفسي [...]</description>
	<pubDate>Sun, 11 Jan 2009 17:02:02 +0000</pubDate>
</item>
<item>
	<title>Fahad Al-Saidi: الحزن والأسى</title>
	<guid>http://www.tadwen.com/omlx/?p=138</guid>
	<link>http://www.tadwen.com/omlx/?p=138</link>
	<description>تلقيت تعزيات الكثير من الأخوة الأفاضل هنا في مدونتي بالأمس فجزاهم الله ألف خير، و عوضهم أجرا كثير.
	لم أتصور في حياتي أن أحمل جثمان من أحبب إلى القبر و أدفنه بيدي ، يا إلهي كيف كانت لي هذه القوة ، حملت جثمانها الطاهر ، ودفنت في حشد كبير بالأمس عصرا ، إنا لله وإنا [...]</description>
	<pubDate>Sun, 04 Jan 2009 19:01:24 +0000</pubDate>
</item>
<item>
	<title>Fahad Al-Saidi: إلى رحمة الله يا زوجتي الوفية</title>
	<guid>http://www.tadwen.com/omlx/?p=137</guid>
	<link>http://www.tadwen.com/omlx/?p=137</link>
	<description>انتقلت إلى رحمة الله زوجتي الغالية اليوم ، بسبب حادث سير رهيب ، ذهبت عني في ريعان الشباب ، و رحلت عني وتركتي وحيدا أقاسي مهام و أتعاب الحياة &amp;#8230;
	ما يسليني غير أنها كانت مطيعة لأوامر ربها منتهية عن معاصيه، آمرة بالمعروف وناهية عن المنكر ، فإلى رحمة الله يا أسماء.
	إن العين لتبكي وإن القلب [...]</description>
	<pubDate>Sat, 03 Jan 2009 17:11:56 +0000</pubDate>
</item>
<item>
	<title>Fahad Al-Saidi: ملخص رحلتي إلى الهند</title>
	<guid>http://www.tadwen.com/omlx/?p=136</guid>
	<link>http://www.tadwen.com/omlx/?p=136</link>
	<description>طلب مني أخي العزيز خالد أن اكتب قليلا عن رحلتي الأخيرة إلى الهند، كنت قد كتبت عدة تدوينات وأنا أثناء الرحلة:
استراتيجية المحيط الأزرق للغة العربية
إدمان التلفاز
عيد ديوالي
لماذا لا تكون لنا طبعتنا الخاصة؟
السر the secret !!
	الرحلة بمجملها كانت عبارة عن منحة من الحكومة الهندية لدورة مدتها ثلاثة أشهر تقريبا في تعلم اللغة الإنجليزية، أقيمت الدورة في [...]</description>
	<pubDate>Fri, 02 Jan 2009 16:51:21 +0000</pubDate>
</item>
<item>
	<title>Fahad Al-Saidi: وأخيرا أنهيت المهمة</title>
	<guid>http://www.tadwen.com/omlx/?p=135</guid>
	<link>http://www.tadwen.com/omlx/?p=135</link>
	<description>اليوم والحمد الله أنهيت المهمة امتدت أكثر من أسبوعين وهي ترتيب المكتبة والكتب وإزالة بعض الغبار عليها.
ترجع القصة أكثر من ستة أشهر عندما قررت العائلة الكريمة تغيير مكان الكتب إلى المكان الجديد.
	على العموم أنهيت المهمة والحمد الله ، هذه بعض الصور لمكتبتي العزيزة</description>
	<pubDate>Wed, 31 Dec 2008 08:26:15 +0000</pubDate>
</item>
<item>
	<title>Mohammed Sameer: Quick summary</title>
	<guid>http://foolab.org/1765 at http://foolab.org</guid>
	<link>http://foolab.org/node/1765</link>
	<description>&lt;p class=&quot;left2right&quot;&gt;Long time since I posted anything here. I just have nothing to say. Nothing is happening in general and all days are almost the same!&lt;/p&gt;
&lt;p class=&quot;left2right&quot;&gt;* Went to Egypt on vacation and came back.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://foolab.org/node/1765&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Sat, 27 Dec 2008 21:31:20 +0000</pubDate>
</item>
<item>
	<title>Fahad Al-Saidi: موقع تسلية … مشروع جديد</title>
	<guid>http://www.tadwen.com/omlx/?p=134</guid>
	<link>http://www.tadwen.com/omlx/?p=134</link>
	<description>بدون مقدمات اليوم بدأت بمشروع جديد ولكن هذه المرة في عالم الترفيه، المشروع هو عبارة عن موقع صغير يجمع ملفات الملتميديا المفيدة مثل الأناشيد و اللقطات المضحكة و التعليمية أيضا.
	اسم الموقع هو تسلية ، أهدف من هذا الموقع هو أن يكون موقع معتدل وملتزم في طرحه قدر المستطاع فالكمال لله تعالى، و سأحاول أن أجمع [...]</description>
	<pubDate>Mon, 22 Dec 2008 10:38:08 +0000</pubDate>
</item>
<item>
	<title>Fahad Al-Saidi: شكرا الشيخ سلمان العودة</title>
	<guid>http://www.tadwen.com/omlx/?p=133</guid>
	<link>http://www.tadwen.com/omlx/?p=133</link>
	<description>رجعنا من الدورة والتي استغرقت منا ثلاثة أشهر و التي كانت في أرض العجائب الهند وبالتحديد حيدرآباد.
أحاول أن أرتب وقتي و واجباتي من جديد، عسى أن أتفرغ قريبا لبعض الأعمال الجديدة.
	في النهاية أود أن اشكر الشيخ سلمان العودة على كلمته في حق سلطنة عمان وأهلها ، المقطع على يوتيوب شاهده من هنا.




	فشكرا مرة أخرى ، [...]</description>
	<pubDate>Mon, 15 Dec 2008 19:49:13 +0000</pubDate>
</item>

</channel>
</rss>
