<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Fahhem's Blog</title>
	<atom:link href="http://fahhem.com/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://fahhem.com/blog</link>
	<description>An intermittent post of thoughts.</description>
	<lastBuildDate>Tue, 20 Jul 2010 06:29:02 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Brother Ali &#8211; Uncle Sam Goddamn</title>
		<link>http://fahhem.com/blog/2010/07/brother-ali-uncle-sam-goddamn/</link>
		<comments>http://fahhem.com/blog/2010/07/brother-ali-uncle-sam-goddamn/#comments</comments>
		<pubDate>Tue, 20 Jul 2010 06:29:02 +0000</pubDate>
		<dc:creator>Fahhem</dc:creator>
				<category><![CDATA[Lyrics]]></category>

		<guid isPermaLink="false">http://fahhem.com/blog/?p=126</guid>
		<description><![CDATA[So I&#8217;m tired of these lyrics websites having such bad lyrics for good artists. Every once in a while I&#8217;ll try to post some real lyrics for songs that I listen to with inadequate lyrics elsewhere. Here&#8217;s my latest in the series:
Ah,
The name of this song is Uncle Sam Goddamn
It&#8217;s a show tune but the [...]]]></description>
			<content:encoded><![CDATA[<p>So I&#8217;m tired of these lyrics websites having such bad lyrics for good artists. Every once in a while I&#8217;ll try to post some real lyrics for songs that I listen to with inadequate lyrics elsewhere. Here&#8217;s my latest in the series:<br />
Ah,<br />
The name of this song is Uncle Sam Goddamn<br />
It&#8217;s a show tune but the show ain&#8217;t been written for it yet.<br />
We&#8217;re gonna see if Tony Jerome and the band<br />
can maybe work this shit out for me<br />
straighten me out right quick.<br />
I like it so far man</p>
<p>Yeah</p>
<p>Come on, let&#8217;s go</p>
<p>Welcome to the United Snakes<br />
Land of the thief, home of the slave<br />
Grand imperial guard where<br />
the dollar is sacred and proud</p>
<p>Let&#8217;s do this shit for real, come on now</p>
<p>Smoke and mirrors, stripes and stars<br />
Stolen for the cross in the name of God<br />
Bloodshed, genocide, rape and fraud<br />
Written to the pages of the law, good lord</p>
<p>The cold continent latch key child<br />
Ran away one day and started acting foul<br />
King of where the wild things are, daddy&#8217;s proud<br />
Cause the roman empire done passed it down</p>
<p>Imported and tortured the work force<br />
They never healed the wounds or shook the curse off<br />
Now the grown up Goliath nation<br />
Holdin open auditions for the part of David, can you feel?</p>
<p>Nothing can save you, you question the rain<br />
You get rushed in and chained up<br />
fists raised but I must be insane<br />
Cause I can&#8217;t figure a single goddamn way to change it</p>
<p>Welcome to the United Snakes<br />
Land of the thief, home of the slave<br />
Grand imperial guard where the dollar is sacred and power is God</p>
<p>Welcome to the United Snakes<br />
Land of the thief, home of the slave<br />
Grand imperial guard where the dollar is sacred and power is God</p>
<p>All must bow to the fat and lazy<br />
The fuck you obey me and<br />
why do they hate me, who me?<br />
Only two generations away from<br />
the World&#8217;s most despicable slavery trade</p>
<p>Pioneered so many ways to degrade a human being<br />
That it can&#8217;t be changed to this day<br />
Legacy so ingrained in the way that we think<br />
We no longer need chains to be slaves</p>
<p>Lord it&#8217;s a shameful display<br />
The overseers even got raped along the way<br />
Cause the children can&#8217;t escape from the pain<br />
And they&#8217;re born with the pores<br />
and there&#8217;s hatred in their veins</p>
<p>Try and separate a man from his soul<br />
You&#8217;ll only strengthen him and lose your own<br />
Well shoot that fucker if he walk near the throne<br />
Remind him that this is my home (now i&#8217;m gone)</p>
<p>Welcome to the United Snakes<br />
Land of the thief, home of the slave<br />
Grand imperial guard where the dollar is sacred and power is god</p>
<p>Welcome to the United Snakes<br />
Land of the thief, home of the slave<br />
Grand imperial guard where the dollar is sacred</p>
<p>Hold up, gimme one right here, hold up</p>
<p>You don&#8217;t give money to the bums<br />
On the corner with a sign, bleeding from their gums<br />
Talkin bout, you don&#8217;t support a crackhead<br />
Whatchu think happens to the money from yo&#8217; taxes</p>
<p>Shit the government&#8217;s an addict<br />
With a billion dollar a week kill brown people habit<br />
And even if you ain&#8217;t on the front line<br />
When master yell crunch time you right back at it</p>
<p>You ain&#8217;t look at how you hustling backwards<br />
And the end of the year add up what they subtracted<br />
Three outta twelve months your salary<br />
Paid for that madness, man that&#8217;s sadness</p>
<p>What&#8217;s left get a big ass plasma<br />
To see where they made Dan Rather point the damn camera<br />
Only approved questions get answered<br />
Now stand your ass up for that national anthem</p>
<p>Welcome to the United Snakes<br />
Land of the thief, home of the slave<br />
Grand imperial guard where the dollar is sacred and power is God</p>
<p>Welcome to the United Snakes<br />
Land of the thief, home of the slave<br />
Grand imperial guard where the dollar is sacred and power is God</p>
<p>[instrumental break]</p>
<p>Custom made, the consumer news</p>
<p>Keep saying we&#8217;re free<br />
But we&#8217;re all just blue (x3)</p>
<p>Custom made, the consumer news<br />
Keep saying we&#8217;re free<br />
But we&#8217;re all just blue</p>
]]></content:encoded>
			<wfw:commentRss>http://fahhem.com/blog/2010/07/brother-ali-uncle-sam-goddamn/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Django and Stored Procedures</title>
		<link>http://fahhem.com/blog/2010/06/django-and-stored-procedures/</link>
		<comments>http://fahhem.com/blog/2010/06/django-and-stored-procedures/#comments</comments>
		<pubDate>Sun, 27 Jun 2010 21:38:20 +0000</pubDate>
		<dc:creator>Fahhem</dc:creator>
				<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://fahhem.com/blog/?p=123</guid>
		<description><![CDATA[There is no code to go along with this post because I haven&#8217;t had the time or use-case to develop it yet, but it was an idea spawned from the ORM of Django and some maintenance I was doing in a PHP project.
Basically, Django&#8217;s built-in ORM is awesome, but lacking. There are many reasons to [...]]]></description>
			<content:encoded><![CDATA[<p>There is no code to go along with this post because I haven&#8217;t had the time or use-case to develop it yet, but it was an idea spawned from the ORM of Django and some maintenance I was doing in a PHP project.</p>
<p>Basically, Django&#8217;s built-in ORM is awesome, but lacking. There are many reasons to move to SQLAlchemy, but not if you&#8217;re more interested in speed of development. One feature that Django&#8217;s ORM is missing is stored procedure support, including the ability to make them quickly.</p>
<p>A stored procedure is basically a function definition on the database side that runs a few to hundreds of lines of SQL and returns the result, decreasing the amount of SQL sent over the network. This is very useful for complicated statements that are called often, say once for every single page, but require only a few variables if any. A use-case in my PHP project was where 99% of the pages ran the same lookup query which consisted of about 10 lines of SQL; instead of sending that SQL over (around half a KB) each time, I replaced the SQL with &#8220;CALL generic_lookup($pageid)&#8221; or in Python &#8220;CALL generic_lookup(%s)&#8221; % pageid.</p>
<p>Now, to port this to Django we need a two-phrase process. The first one creates the procedures in the database, the second replaces normal ORM calls with stored procedures.</p>
<p>I have not made this, but here are the specifications for the code that would take only a few hours to create and a few more to debug (if only I had the time):</p>
<p>A decorator for models.Manager functions. Called @stored, it will function in both phases differently. For the creation phase, it will simply tag the function it is wrapping with func.is_stored = True, allowing introspecting code to identify it as a stored procedure. It will also make the wrapped function available like so:</p>
<pre>@stored
def all(self):
    return self.get_query_set()

all.is_stored == True
str(all.func.__class__) == &lt;type 'function'&gt;</pre>
<p>The first phase also involves a management command that goes through every model&#8217;s managers and looks for stored procedures using the .is_stored property created above. The .is_stored and .func properties could be combined.</p>
<p>This management command, having found all the stored procedures, will then proceed to get the SQL for each QuerySets and wrap it with the DB-specific code for stored-procedures (MySQL&#8217;s is provided earlier). Once the SQL has been wrapped, it is sent to the DB for creation and the procedure is now available. The SQL will need some filter to allow for arguments to the stored procedures, but that&#8217;s a whole other can of worms for a possible continuation of this post.</p>
<p>Once the procedures have been created on the DB, the @stored decorator now just ignores the function it&#8217;s wrapping save for its name and arguments and returns the dataset returned by the database after a call to the stored procedure. Since most databases don&#8217;t allow further filtering on procedure output, returning the dataset is the only way to easily keep loose-coupling with the DB.</p>
<p>I hope this post was useful to someone else who can code in Python/Django. If you create a decorator using these specifications, please post a link in the comments so that others can benefit from it too. If I write it, I&#8217;ll definitely provide the app somehow, though I don&#8217;t see it in my near future.</p>
]]></content:encoded>
			<wfw:commentRss>http://fahhem.com/blog/2010/06/django-and-stored-procedures/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Windows 7 Jump Lists and PuTTY</title>
		<link>http://fahhem.com/blog/2010/03/windows-7-jump-lists-and-putty/</link>
		<comments>http://fahhem.com/blog/2010/03/windows-7-jump-lists-and-putty/#comments</comments>
		<pubDate>Sun, 21 Mar 2010 09:21:32 +0000</pubDate>
		<dc:creator>Fahhem</dc:creator>
				<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://fahhem.com/blog/?p=116</guid>
		<description><![CDATA[Recently I had the good fortune to upgrade my hard drive to 120GB and felt that while I&#8217;m reinstalling my OS anyway, I should update it to Windows 7. Why not, as it has been touted as the &#8220;fix&#8221; for Vista. And so far, months in, dozens of homework assignments, hundreds of odd tasks for [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I had the good fortune to upgrade my hard drive to 120GB and felt that while I&#8217;m reinstalling my OS anyway, I should update it to Windows 7. Why not, as it has been touted as the &#8220;fix&#8221; for Vista. And so far, months in, dozens of homework assignments, hundreds of odd tasks for different entities, it has exceeded my expectations.</p>
<p>Skipping all the Windows 7 stuff, I&#8217;ll just skip to what I did.</p>
<p>The Jump List is what shows up when a user right-clicks on a taskbar item in Windows 7, so I modified PuTTY&#8217;s source to enable JumpList functionality. On my main site, I have a binary and the necessary patch.</p>
<p>Added Functionality:</p>
<p>* Each session can add itself to the JumpList for PuTTY</p>
<p>* Upon startup, JumpList is created</p>
<p>* If user pins PuTTY to the Start Menu, JumpList remains</p>
<p><a href="http://fahhem.com/putty/">My main site has some further information, as well as the actual files.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://fahhem.com/blog/2010/03/windows-7-jump-lists-and-putty/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Berkeley Restaurant Hours</title>
		<link>http://fahhem.com/blog/2009/12/berkeley-restaurant-hours/</link>
		<comments>http://fahhem.com/blog/2009/12/berkeley-restaurant-hours/#comments</comments>
		<pubDate>Tue, 15 Dec 2009 03:13:43 +0000</pubDate>
		<dc:creator>Fahhem</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://fahhem.com/blog/?p=111</guid>
		<description><![CDATA[As a college student who eats out frequently (my cooking skills aren&#8217;t good enough for crunch time eating) and who is always up late, I&#8217;m always wondering what restaurants are still open in the area. In order to reduce crime, the City of Berkeley decided to make business close for most of the night. They [...]]]></description>
			<content:encoded><![CDATA[<p>As a college student who eats out frequently (my cooking skills aren&#8217;t good enough for crunch time eating) and who is always up late, I&#8217;m always wondering what restaurants are still open in the area. In order to reduce crime, the City of Berkeley decided to make business close for most of the night. They were successful, but this means that few places are still open when you&#8217;re up late studying.</p>
<p>So I&#8217;m listing restaurants that are open at the listed time and earlier:</p>
<p>12am midnight:</p>
<p style="padding-left: 30px;">Fred&#8217;s Deli</p>
<p style="padding-left: 30px;">Blondie&#8217;s Pizza</p>
<p>11pm:</p>
<p style="padding-left: 30px;">House of Curries</p>
<p>10pm:</p>
<p style="padding-left: 30px;">Tandor Kitchen</p>
<p>Note: This post is currently limited to the restaurants/stores that I frequent, but I&#8217;ll gladly add more restaurants if you comment with their names/hours. Also, if it closes before 10pm I&#8217;m not interested.</p>
]]></content:encoded>
			<wfw:commentRss>http://fahhem.com/blog/2009/12/berkeley-restaurant-hours/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flatten scanned PDF</title>
		<link>http://fahhem.com/blog/2009/12/flatten-scanned-pdf/</link>
		<comments>http://fahhem.com/blog/2009/12/flatten-scanned-pdf/#comments</comments>
		<pubDate>Mon, 14 Dec 2009 07:08:43 +0000</pubDate>
		<dc:creator>Fahhem</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://fahhem.com/blog/?p=107</guid>
		<description><![CDATA[Recently I&#8217;ve been working for a website that has a lot of scanned PDFs. They need to make sure that they don&#8217;t have the same problem as the redacted PDFs of the FBI/CIA. You know, where you could copy-paste the words out from behind black boxes?
Yeah, we had that exact same problem. Except I&#8217;m not [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I&#8217;ve been working for a website that has a lot of scanned PDFs. They need to make sure that they don&#8217;t have the same problem as the redacted PDFs of the FBI/CIA. You know, where you could copy-paste the words out from behind black boxes?</p>
<p>Yeah, we had that exact same problem. Except I&#8217;m not working for the FBI.</p>
<p>Google didn&#8217;t help one bit, &#8220;flatten pdf&#8221; means something entirely different to most people, so I couldn&#8217;t find it. Anyway, I chose to use the awesome tool ImageMagick.</p>
<p>I tried converting from PDF to PDF, but what happens is the filesize blows up if I want any sort of quality. Instead, I convert to PNG and then back to PDF.</p>
<p>So below is the shell script, with the only dependency being ImageMagick:</p>
<p><code>LINES=$(cat files.txt)<br />
COUNT=0</code></p>
<p><code>for LINE in $LINES<br />
do</code></p>
<p><code>COUNT=$(echo "$COUNT + 1"|bc)<br />
echo -n "Working on $LINE.."</code></p>
<p><code>if [ -f fixed/$LINE ]; then<br />
echo ". already done"<br />
continue<br />
fi</code></p>
<p><code>mkdir fixed/imgs-$LINE<br />
convert -density 400 broken/$LINE fixed/imgs-$LINE/out.png<br />
echo -n ".."<br />
convert -density 400 fixed/imgs-$LINE/out*.png fixed/$LINE<br />
rm -r fixed/imgs-$LINE<br />
echo ". done"</code></p>
<p><code>done</code></p>
<p>It takes files in the file &#8220;files.txt&#8221; from the broken/ folder and outputs fixed ones to fixed/.</p>
<p>I did this to make sure the files were good and then let me upload them later. The broken/ folder is an sshfs mount to the original server mounted read-only.</p>
<p>Once they&#8217;re all fixed, I tested a bunch out and they were no longer copy-paste vulnerable and the info was completely boxed out with a similarly sized PDF</p>
]]></content:encoded>
			<wfw:commentRss>http://fahhem.com/blog/2009/12/flatten-scanned-pdf/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>UC Berkeley VPN on Debian/Linux</title>
		<link>http://fahhem.com/blog/2009/07/uc-berkeley-vpn-on-debianlinux/</link>
		<comments>http://fahhem.com/blog/2009/07/uc-berkeley-vpn-on-debianlinux/#comments</comments>
		<pubDate>Fri, 24 Jul 2009 03:19:42 +0000</pubDate>
		<dc:creator>Fahhem</dc:creator>
				<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://fahhem.com/blog/?p=102</guid>
		<description><![CDATA[As a student at UC Berkeley who&#8217;s active with web development and campus groups, I need to be able to connect to computers that only allow Berkeley IP addresses. This means I have to connect to the Berkeley VPN service if I wish to work from off-campus. Therefore, with the campus moving to a new [...]]]></description>
			<content:encoded><![CDATA[<p>As a student at UC Berkeley who&#8217;s active with web development and campus groups, I need to be able to connect to computers that only allow Berkeley IP addresses. This means I have to connect to the Berkeley VPN service if I wish to work from off-campus. Therefore, with the campus moving to a new VPN service, I had to figure it out as well, but they didn&#8217;t have anything for a Linux system, only a *BSD script and Windows executable. Cisco &#8220;supports&#8221; Ubuntu 32-bit, but there are a lot of problems with what Cisco does and, for me, it doesn&#8217;t work at all. Full tunnel, Split tunnel, nothing. So in order to do my work effectively, I&#8217;ve taken on the task of maintaining a wrapper script for Debian (and possibly all Linux systems) that uses <a href="http://www.infradead.org/openconnect.html">openconnect</a>.</p>
<p>There are many improvements of openconnect over the official Cisco AnyConnect client, one of them being that it actually works. Because of these, I&#8217;m an advocate of this script versus the official client.</p>
<p>I&#8217;ve made <a href="http://fahhem.com/ucbvpn/">my script available here</a>. Please comment here regarding any issues or dependencies regarding this script. I&#8217;m happy to incorporate any patches you have for making more things work, and I&#8217;ll try to fix any problems you may have. If you have to modify the script to make it work for your system, let me know so I can make the script more generic (assuming you&#8217;re using a generic distribution, I have no intention in supporting custom Linux OSes).</p>
<p>Happy VPN&#8217;ing!</p>
]]></content:encoded>
			<wfw:commentRss>http://fahhem.com/blog/2009/07/uc-berkeley-vpn-on-debianlinux/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>K&#8217;naan &#8211; America (ft. Mos Def and Chali 2na)</title>
		<link>http://fahhem.com/blog/2009/04/knaan-america-ft-mos-def-and-chali-2na/</link>
		<comments>http://fahhem.com/blog/2009/04/knaan-america-ft-mos-def-and-chali-2na/#comments</comments>
		<pubDate>Mon, 20 Apr 2009 09:31:26 +0000</pubDate>
		<dc:creator>Fahhem</dc:creator>
				<category><![CDATA[Lyrics]]></category>

		<guid isPermaLink="false">http://fahhem.com/blog/?p=86</guid>
		<description><![CDATA[Several times I&#8217;ve looked for the lyrics to this song and been disappointed. Below I&#8217;ve combined the sources online with my (limited) knowledge of Arabic. I&#8217;ll try to get my Somali friend to translate the Somali Chorus. UPDATE: I got Moha Egal to translate the Somali verse for me!
(ENGLISH ONLY)
uh huh uh huh uh huh
oh [...]]]></description>
			<content:encoded><![CDATA[<p>Several times I&#8217;ve looked for the lyrics to this song and been disappointed. Below I&#8217;ve combined the sources online with my (limited) knowledge of Arabic. I&#8217;ll try to get my Somali friend to translate the Somali Chorus. UPDATE: I got Moha Egal to translate the Somali verse for me!</p>
<p>(ENGLISH ONLY)<br />
uh huh uh huh uh huh<br />
oh this takes me home,<br />
it makes me think about sitting outside of my old home when i was younger and singing something like</p>
<p>(Chorus I)</p>
<p>gabar yaroo subhaano (Young beautiful girl)<br />
maro shabeelo hirato (wearing tiger-patterned)<br />
maro qafiifa huwato (light, thin clothing.)<br />
maga&#8217;aaga ii sheeg (Tell me your name.)<br />
magaeygu waa sharaf (she says: My name is Sharaf)<br />
sharaf haaji weeyan (Sharaf Haaji, it is.)<br />
aqalada hariirta (Those beautiful houses)<br />
dhina baan ka jooga (I live beside.)<br />
alla ya u sheega (Somebody please tell them)<br />
tinta u shanleeya (give them a clue)<br />
nahoy zamzamey (of you, Zamzam,)<br />
sabaah nuurey (who shines like the morning light)<br />
adoo kin kin iyo (like the scales)<br />
kaluun badaneey (of a colorful fish,)<br />
adoo hajka jira (while you were gone on Hajj)<br />
xasuus badaneey (had many memories.)<br />
sahiibtaa asho ashaq baa dilay (Your friend, Aisha died of love.)<br />
ugu dambeyntiina (at long last [I realized])<br />
aniyo geeluba (both I and the camels)<br />
wa u banaanbahnay (need love.)</p>
<p>(Chorus II)<br />
wanagii orodnee (Remember us fleeing,)<br />
nabad barinee (searching for peace?)<br />
mareykan waa laga soo waayay(3x) (In America, none was found.)</p>
<p>There are certain things fresh,<br />
and certain things mesh,<br />
I got my own sound i dont sound like the rest,<br />
and even my attire and my choice of dress,<br />
and not long ago i don&#8217;t spoke English<br />
my point is police pull me over a lot<br />
they wonder what kind of rap sheet i got.<br />
and sometimes i take a young girl out to eat,<br />
and hold the door open oh your so sweet,<br />
of course my affection&#8217;s super illustrated<br />
and i like to give don&#8217;t reciprocate it<br />
unless you could give me someone innovated<br />
well lets cook it up we dont refrigerate it<br />
but back to the country of the educated<br />
where people get robbed and they celebrate it,</p>
<p>(Repeat Chorus II)</p>
<p>(MOS DEF)<br />
Maraken,<br />
my country tis of thee<br />
sweet land for robberies<br />
dos smokin SUV&#8217;s<br />
grab me an army green<br />
fat and frills<br />
thrills and spills<br />
eat and sleep<br />
hump and kill<br />
shop til you drop<br />
work til you dead<br />
get all you can<br />
then get in the wear<br />
outta my face<br />
on your knees<br />
sleep in the mansion<br />
shut out the streets<br />
make that cake<br />
woop that trick<br />
lick my swagger<br />
suck my sick<br />
get high get low get stcky get rich<br />
get yo own show get down get quick<br />
you slow you blow you broke your fix<br />
terror dome, home swag home<br />
terror dome, home swag home<br />
home swag home<br />
home swag home</p>
<p>(Chorus II) (America repeated)</p>
<p>(CHALI 2NA)</p>
<p>There are some things pure while certain things blur<br />
dilute it with the lie and you believe when it occur<br />
falsified information got my people in the stir<br />
we have to be in search of something equal to the cure<br />
straight out the door, i come to give you more<br />
lay the law keep it raw, when i speak it from the core<br />
get underneath your skin like especially with the claw<br />
conflicted with the rich cuz i kick it with the poor<br />
i laugh in the face of adversity<br />
sound clashed with the bass cuz its natural to me<br />
but if you pay attention to the past you will see<br />
not long ago you black they&#8217;d hang your ass from a tree<br />
certain things things change, while some stay the same<br />
some are recluse others are lovers of the game<br />
I&#8217;m trying to walk the lane, the serahtal mustakeen (Arabic for straight path)<br />
instead of doing things that keep you covered in the flame.</p>
<p>(Repeat Chorus II) (America repeated)</p>
<p>Nanananana that shit was cool in English, but let me get that Somali verse.</p>
<p>(Chorus I)</p>
<p>Sources:</p>
<p>http://www.metrolyrics.com/america-lyrics-knaan.html</p>
<p>http://www.url.com/lyrics/show/2275/k-naan/america</p>
<p>My Somali friend, Moha Egal.</p>
]]></content:encoded>
			<wfw:commentRss>http://fahhem.com/blog/2009/04/knaan-america-ft-mos-def-and-chali-2na/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Google Talk Invisible</title>
		<link>http://fahhem.com/blog/2009/02/google-talk-invisible/</link>
		<comments>http://fahhem.com/blog/2009/02/google-talk-invisible/#comments</comments>
		<pubDate>Tue, 17 Feb 2009 14:10:36 +0000</pubDate>
		<dc:creator>Fahhem</dc:creator>
				<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://fahhem.com/blog/?p=84</guid>
		<description><![CDATA[There have been some questions regarding Google Talk and its Invisible status. XMPP/Jabber didn&#8217;t support Invisible when Google Talk, which is based on XMPP/Jabber, added support for it. This was likely to create a uniform interface to the user who now had the ability to go invisible on their AIM account.
Well, there&#8217;s good news. I [...]]]></description>
			<content:encoded><![CDATA[<p>There have been some questions regarding Google Talk and its Invisible status. XMPP/Jabber didn&#8217;t support Invisible when Google Talk, which is based on XMPP/Jabber, added support for it. This was likely to create a uniform interface to the user who now had the ability to go invisible on their AIM account.</p>
<p>Well, there&#8217;s good news. I created a <a href="http://fahhem.com/pidgin/">plugin</a> to enable Invisible for Google Talk accounts.</p>
<p><span style="text-decoration: line-through;">Now, before you go rushing off to download and install that plugin, here&#8217;s the big caveat: I only made it work for one account. If you have more than one Jabber/XMPP/GTalk account, then it won&#8217;t work for all of them. Proceed with caution, because having multiple accounts may break it. I have tested it with one account, so no worries there</span><strong> Fixed, now supports multiple accounts</strong> (but no guarantees, this is open source software).</p>
<p><a href="http://fahhem.com/pidgin/">Instructions are available on my main site for both Windows and Linux.</a></p>
<p>Update 3/19/2010: There have been a lot of requests for fixes/updates/rewrites to this code. I&#8217;m sorry to say, but I&#8217;ve moved on to newer projects. This was originally only a weekend project for me, little did I realize that there was this much demand for it. I&#8217;ve provided all the code I have for this, if anyone wishes I can provide the whole working directory as well as instructions to compile on both Linux and Windows, but beyond that I will not be making any more changes.</p>
<p>Now, I have a patch waiting in my email, and I will attempt to incorporate that sometime in the future, but as above, no guarantees.</p>
<p>Sorry to everyone who has posted with problems with this code, but it&#8217;s over a year old, meant for a much older version of Pidgin, and works with at least historically badly documented APIs (sorry Pidgin, but that documentation wasn&#8217;t easy to understand at all, I worked mostly off examples). Good luck with getting a real invisible implementation into Pidgin trunk!</p>
<p>Update 6/27/2010: Again, there have been many further comments as to whether it works or not. Seeing this much demand for only a few lines of code is very interesting. Until now, many of your problems have been either unfixable due to the way the plugin works (a hack) or too much work to reproduce. However, I&#8217;ve been notified of a better way to go about going invisible and I will try to update the plugin soon (no guarantees however) with that new system: http://chinmaykamat.wordpress.com/2010/01/22/google-talk-invisible-mode-in-pidgin/</p>
<p>Sorry to everyone who&#8217;s Pidgin crashes when using this plugin, there&#8217;s little I can do when I have the plugin enabled all the time and get no crashes. In fact, I&#8217;ve had Pidgin crash repeatedly on me before, but never since I enabled this plugin.</p>
]]></content:encoded>
			<wfw:commentRss>http://fahhem.com/blog/2009/02/google-talk-invisible/feed/</wfw:commentRss>
		<slash:comments>76</slash:comments>
		</item>
		<item>
		<title>Mere Multiplication</title>
		<link>http://fahhem.com/blog/2008/12/mere-multiplication/</link>
		<comments>http://fahhem.com/blog/2008/12/mere-multiplication/#comments</comments>
		<pubDate>Mon, 29 Dec 2008 11:47:08 +0000</pubDate>
		<dc:creator>Fahhem</dc:creator>
				<category><![CDATA[Politics]]></category>

		<guid isPermaLink="false">http://fahhem.com/blog/?p=65</guid>
		<description><![CDATA[Since you all know what happened, what I say would likely be a repeat, so I won&#8217;t say anything. I&#8217;ll simply link to a music video, its lyrics, and a sample that can be used as a ringtone.
Music Video
Lyrics
Ringtone
]]></description>
			<content:encoded><![CDATA[<p>Since you all know what happened, what I say would likely be a repeat, so I won&#8217;t say anything. I&#8217;ll simply link to a music video, its lyrics, and a sample that can be used as a ringtone.</p>
<p><a href="http://www.youtube.com/watch?v=ZqbDiN2uYcQ">Music Video</a></p>
<p><a href="http://www.ummah.com/forum/showpost.php?p=1520544&amp;postcount=1">Lyrics</a></p>
<p><a href="http://fahhem.com/blog/wp-content/uploads/2008/12/meenerhabeloop.mp3">Ringtone</a></p>
]]></content:encoded>
			<wfw:commentRss>http://fahhem.com/blog/2008/12/mere-multiplication/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://fahhem.com/blog/wp-content/uploads/2008/12/meenerhabeloop.mp3" length="155567" type="audio/mpeg" />
		</item>
		<item>
		<title>Wind, water and sun beat other energy alternatives, study finds</title>
		<link>http://fahhem.com/blog/2008/12/wind-water-and-sun-beat-other-energy-alternatives-study-finds/</link>
		<comments>http://fahhem.com/blog/2008/12/wind-water-and-sun-beat-other-energy-alternatives-study-finds/#comments</comments>
		<pubDate>Sat, 13 Dec 2008 03:26:52 +0000</pubDate>
		<dc:creator>Fahhem</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://fahhem.com/blog/?p=60</guid>
		<description><![CDATA[Wind, water and sun beat other energy alternatives, study finds.
Looks like something the world should listen to. Well, at least the most polluting country in the world (the USA). If anyone knows the candidate of hope&#8217;s number, please let him know about wind energy&#8217;s superiority over everything he&#8217;s proposing.
If you don&#8217;t know his number, I [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://news-service.stanford.edu/news/2009/january7/power-010709.html">Wind, water and sun beat other energy alternatives, study finds</a>.</p>
<p>Looks like something the world should listen to. Well, at least the most polluting country in the world (the USA). If anyone knows the candidate of hope&#8217;s number, please let him know about wind energy&#8217;s superiority over everything he&#8217;s proposing.</p>
<p>If you don&#8217;t know his number, I recommend commenting this link to him here:</p>
<p>Link: <a href="http://news-service.stanford.edu/news/2009/january7/power-010709.html">http://news-service.stanford.edu/news/2009/january7/power-010709.html</a><br />
Candidate of Hope: <a href="http://change.gov/page/content/discussservice">http://change.gov/page/content/discussservice</a></p>
<p>You can find a place to post the comment at the VERY bottom of the page.</p>
]]></content:encoded>
			<wfw:commentRss>http://fahhem.com/blog/2008/12/wind-water-and-sun-beat-other-energy-alternatives-study-finds/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
