<?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>Bit Matrix</title>
	<atom:link href="http://blog.bit-matrix.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.bit-matrix.com</link>
	<description>Tech. Code. Linux. MySQL. Ones. Zeroes.</description>
	<lastBuildDate>Tue, 31 Aug 2010 01:10:39 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>iPhone 3G and iOS 4</title>
		<link>http://blog.bit-matrix.com/2010/08/30/iphone-3g-and-ios-4/</link>
		<comments>http://blog.bit-matrix.com/2010/08/30/iphone-3g-and-ios-4/#comments</comments>
		<pubDate>Tue, 31 Aug 2010 01:10:39 +0000</pubDate>
		<dc:creator>Bit Matrix</dc:creator>
				<category><![CDATA[iPhone]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[ios4]]></category>
		<category><![CDATA[os4]]></category>

		<guid isPermaLink="false">http://blog.bit-matrix.com/2010/08/30/iphone-3g-and-ios-4/</guid>
		<description><![CDATA[If you have an iPhone 3G with the latest Apple OS update (iOS 4) then you know how cripplingly slow the 3G can be with this new OS. This is, most likely, the reason that Apple left some of the more useful features out of the 3G version.
My phone would hang for up to half [...]]]></description>
			<content:encoded><![CDATA[<p>If you have an iPhone 3G with the latest Apple OS update (iOS 4) then you know how cripplingly slow the 3G can be with this new OS. This is, most likely, the reason that Apple left some of the more useful features out of the 3G version.</p>
<p>My phone would hang for up to half a minute when bringing up the contact list or launching an app. At one point it was so bad that I actually missed a phone call because the phone was too busy (with what) to notice my input.</p>
<p>Luckily there is something simple and fast that you can do to greatly improve the phone&#8217;s performance: disable Spotlight.</p>
<p>Spotlight is what indexes the content on your phone so it is easily searchable. Other than email, this is largely irrelevant for most people.</p>
<p>To disable Spotlight simply go into the Settings -> General -> Spotlight and uncheck everything.</p>
<p>The result is a phone that is, once again, useable. <img src='http://blog.bit-matrix.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.bit-matrix.com/2010/08/30/iphone-3g-and-ios-4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Facebook Cookie Bug? REST API data_getCookies()</title>
		<link>http://blog.bit-matrix.com/2010/07/22/facebook-cookie-bug-rest-api-data_getcookies/</link>
		<comments>http://blog.bit-matrix.com/2010/07/22/facebook-cookie-bug-rest-api-data_getcookies/#comments</comments>
		<pubDate>Fri, 23 Jul 2010 00:26:22 +0000</pubDate>
		<dc:creator>Bit Matrix</dc:creator>
				<category><![CDATA[Technical]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://blog.bit-matrix.com/?p=148</guid>
		<description><![CDATA[I have noticed some of the metrics on my Facebook app going missing. In particular, the tracking of the user installation. This relies on Facebook&#8217;s cookies which are being set on the post-authorization page and then re-read on the main page of the site in order to record that the user installed the app. The [...]]]></description>
			<content:encoded><![CDATA[<p>I have noticed some of the metrics on my Facebook app going missing. In particular, the tracking of the user installation. This relies on Facebook&#8217;s cookies which are being set on the post-authorization page and then re-read on the main page of the site in order to record that the user installed the app. The reason why you must use the Facebook cookies and not your own is that it is Facebook hitting your server on the post-authorize and not the user themselves.</p>
<p>The calls I am using to record and retrieve these cookies are based on the old REST API:<br />
<code>$facebook->api_client->data_setCookie(user_id, cookie_name, value, expiry_time)</code><br />
<code>$facebook->api_client->data_getCookies(user_id, cookie_name)</code></p>
<p>The proper data format that Facebook is <i>supposed</i> to return looks like this:<br />
<code><br />
[<br />
  {<br />
    "uid": "542432762",<br />
    "name": "test",<br />
    "value": null,<br />
    "expires": null,<br />
    "path": null<br />
  }<br />
]<br />
</code></p>
<p>However, for the last few days, Facebook seems to be returning the data as a numerically-indexed array and not a array of hashes as above:<br />
<code><br />
[99990041857023, "cookie_name", "value", "expiry", "path"]<br />
</code></p>
<p>You can temporarily fix your app by translating this array into the equivalent hash, like this PHP snippet does:</p>
<p><code><br />
if( !isset($c['name']) )<br />
			{<br />
				$c = array(<br />
					'uid'     => $c[0],<br />
					'name'    => $c[1],<br />
					'value'   => $c[2],<br />
					'expires' => $c[3],<br />
					'path'    => $c[4]<br />
				);<br />
			}<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.bit-matrix.com/2010/07/22/facebook-cookie-bug-rest-api-data_getcookies/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Chrome Memory Leak in Linux</title>
		<link>http://blog.bit-matrix.com/2010/03/30/chrome-memory-leak-in-linux/</link>
		<comments>http://blog.bit-matrix.com/2010/03/30/chrome-memory-leak-in-linux/#comments</comments>
		<pubDate>Tue, 30 Mar 2010 15:21:42 +0000</pubDate>
		<dc:creator>Bit Matrix</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[browsers]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://blog.bit-matrix.com/?p=141</guid>
		<description><![CDATA[I run Google Chrome 5.0.342.7 beta on my Ubuntu box. Every time that Chrome is left on overnight, the following morning its memory consumption is in the hundreds of MBs (300-400MB) and it is fully utilizing one of my cores while doing nothing. I usually leave the browser open with 2-3 simple HTML tabs open [...]]]></description>
			<content:encoded><![CDATA[<p>I run Google Chrome 5.0.342.7 beta on my Ubuntu box. Every time that Chrome is left on overnight, the following morning its memory consumption is in the hundreds of MBs (300-400MB) and it is fully utilizing one of my cores while doing nothing. I usually leave the browser open with 2-3 simple HTML tabs open (no Flash or heavy JavaScript).</p>
<p>On occasion, when this happens, Chrome actually kills some of the offending tabs after a few minutes of me trying to unsuccessfully interact with them.</p>
<p>I certainly hope that this gets fixed as Chrome runs quite well on weak hardware, like me EEE notebook. However, I don&#8217;t appreciate overheating one of my cores all night long for doing nothing.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.bit-matrix.com/2010/03/30/chrome-memory-leak-in-linux/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Generate your own Wordpress Permalink without GUIDs from database</title>
		<link>http://blog.bit-matrix.com/2010/03/01/generate-your-own-wordpress-permalink-without-guids-from-database/</link>
		<comments>http://blog.bit-matrix.com/2010/03/01/generate-your-own-wordpress-permalink-without-guids-from-database/#comments</comments>
		<pubDate>Mon, 01 Mar 2010 19:25:31 +0000</pubDate>
		<dc:creator>Bit Matrix</dc:creator>
				<category><![CDATA[Databases]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[guid]]></category>

		<guid isPermaLink="false">http://blog.bit-matrix.com/?p=134</guid>
		<description><![CDATA[If you are generating links to your blog articles via some other mechanism than Wordpress itself you usually have to use the guid database field. This is the unique global indentifier of the post. In reality it is not globally unique but only unique to your blog.
Typically, the guid in the database will look something [...]]]></description>
			<content:encoded><![CDATA[<p>If you are generating links to your blog articles via some other mechanism than Wordpress itself you usually have to use the <b>guid</b> database field. This is the unique global indentifier of the post. In reality it is not globally unique but only unique to your blog.<span id="more-134"></span></p>
<p>Typically, the guid in the database will look something like this:</p>
<blockquote><p>http://blog.bit-matrix.com/?p=2411</p></blockquote>
<p>You can use this perfectly fine but it will hurt your SEO since search sites prefer descriptive links such as:</p>
<blockquote><p>http://blog.bit-matrix.com/2010/02/10/google-buzz-a-privacy-disaster</p></blockquote>
<p>As it turns out, you can easily construct this link from the database yourself. Wordpress will recognize the format of the link and display the appropriate post. The query to construct this is quite simple, all we need is a little date formatting:</p>
<blockquote><p>SELECT CONCAT(DATE_FORMAT(post_date,&#8217;%Y/%m/%d/&#8217;),post_name) AS permalink FROM wp_posts WHERE post_status=&#8217;publish&#8217;;</p></blockquote>
<p>This will return all the published post guid&#8217;s in the following format:</p>
<blockquote><p>2010/02/10/google-buzz-a-privacy-disaster</p></blockquote>
<p>That&#8217;s all!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.bit-matrix.com/2010/03/01/generate-your-own-wordpress-permalink-without-guids-from-database/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[haXe] Failed to load library : std.ndll</title>
		<link>http://blog.bit-matrix.com/2010/02/18/haxe-failed-to-load-library-std-ndll/</link>
		<comments>http://blog.bit-matrix.com/2010/02/18/haxe-failed-to-load-library-std-ndll/#comments</comments>
		<pubDate>Fri, 19 Feb 2010 05:00:26 +0000</pubDate>
		<dc:creator>Bit Matrix</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[haXe]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[flash]]></category>

		<guid isPermaLink="false">http://blog.bit-matrix.com/?p=135</guid>
		<description><![CDATA[If, like me, you just started playing around with haXe and you might get the following error when including an external Flash resource:
Uncaught exception &#8211; load.c(232) : Failed to load library : std.ndll (std.ndll: cannot open shared object file: No such file or directory)
The solution is simple, you just need to install neko and neko-dev:
sudo [...]]]></description>
			<content:encoded><![CDATA[<p>If, like me, you just started playing around with haXe and you might get the following error when including an external Flash resource:</p>
<blockquote><p>Uncaught exception &#8211; load.c(232) : Failed to load library : std.ndll (std.ndll: cannot open shared object file: No such file or directory)</p></blockquote>
<p>The solution is simple, you just need to install neko and neko-dev:</p>
<blockquote><p>sudo apt-get install neko neko-dev</p></blockquote>
<p>Now simply run the setup:</p>
<blockquote><p>sudo haxelib setup</p></blockquote>
<p>Happy haXe-ing!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.bit-matrix.com/2010/02/18/haxe-failed-to-load-library-std-ndll/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Scary Privacy Quotes</title>
		<link>http://blog.bit-matrix.com/2010/02/10/scary-privacy-quotes/</link>
		<comments>http://blog.bit-matrix.com/2010/02/10/scary-privacy-quotes/#comments</comments>
		<pubDate>Thu, 11 Feb 2010 08:35:55 +0000</pubDate>
		<dc:creator>Bit Matrix</dc:creator>
				<category><![CDATA[Rants]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[The Future]]></category>
		<category><![CDATA[privacy]]></category>
		<category><![CDATA[1984]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Orwell]]></category>
		<category><![CDATA[quotes]]></category>

		<guid isPermaLink="false">http://blog.bit-matrix.com/?p=122</guid>
		<description><![CDATA[&#8220;If you have something that you don&#8217;t want anyone to know, maybe you shouldn&#8217;t be doing it in the first place.&#8221;
- Google CEO Eric Schmidt

&#8220;&#8230;doing a privacy change for 350 million users is not the kind of thing that a lot of companies would do. But we viewed that as a really important thing, to [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>&#8220;If you have something that you don&#8217;t want anyone to know, maybe you shouldn&#8217;t be doing it in the first place.&#8221;</p>
<p>- <strong>Google</strong> CEO Eric Schmidt
</p></blockquote>
<blockquote><p>&#8220;&#8230;doing a privacy change for <b>350 million users</b> is not the kind of thing that a lot of companies would do. But we viewed that as a really important thing, to always keep a beginner&#8217;s mind and what would we do if we were starting the company now and <b>we decided that these would be the social norms now and we just went for it.</b>&#8221;</p>
<p>- <strong>Facebook</strong> CEO Mark Zuckerberg
</p></blockquote>
<blockquote><p>&#8220;There was of course no way of knowing whether you were being watched at any given moment&#8230; It was even conceivable that they watched everybody all the time.</p>
<p>But at any rate they could plug into your wire whenever they wanted to. You had to live &#8211; did live, from habit that became instinct &#8211; in the assumption that every sound you made was overheard, and except in darkness, every movement scrutinized.&#8221;</p>
<p>- George Orwell, <strong>1984</strong>
</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://blog.bit-matrix.com/2010/02/10/scary-privacy-quotes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Buzz: A Privacy Disaster</title>
		<link>http://blog.bit-matrix.com/2010/02/10/google-buzz-a-privacy-disaster/</link>
		<comments>http://blog.bit-matrix.com/2010/02/10/google-buzz-a-privacy-disaster/#comments</comments>
		<pubDate>Thu, 11 Feb 2010 08:07:24 +0000</pubDate>
		<dc:creator>Bit Matrix</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[Rants]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[The Future]]></category>
		<category><![CDATA[privacy]]></category>
		<category><![CDATA[buzz]]></category>
		<category><![CDATA[do no evil]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[google buzz]]></category>

		<guid isPermaLink="false">http://blog.bit-matrix.com/?p=118</guid>
		<description><![CDATA[As someone who is no friend to Facebook, I was quite interested to hear that Google will be stepping into the social networking world with their newest product: Google Buzz. The introductory video looked good enough showing a slick, simple interface, easy message, photo and video posting and an good time to be had by [...]]]></description>
			<content:encoded><![CDATA[<p>As someone who is no friend to Facebook, I was quite interested to hear that Google will be stepping into the social networking world with their newest product: Google Buzz. The introductory video looked good enough showing a slick, simple interface, easy message, photo and video posting and an good time to be had by all. Perhaps, I thought, this means Facebook&#8217;s hegemony over the social networking sphere was coming to a close. Anything is better than Facebook&#8217;s blatant disregard for privacy right? Wrong.<span id="more-118"></span></p>
<h2>Et tu, Google?</h2>
<p>Why is it that the default modus operandi of every Internet company is to blatantly violate your privacy as a first rule of business?  Google, surely, is a company that should not need a cheap trick like this in order to promote their product. A company whose &#8220;<a href="http://www.google.com/corporate/tenthings.html">Do no evil.</a>&#8221; slogan seems to only apply as far as showing you the most targeted ads and not blatantly deceiving you. Google has embraced Facebook overnight revelation that <a href="http://www.readwriteweb.com/archives/facebooks_zuckerberg_says_the_age_of_privacy_is_ov.php">people don&#8217;t want or expect</a> and seems to have launched Buzz as an example of this brave new vision.</p>
<p>Buzz outdoes Facebook when it comes to airing all your dirty laundry to the searchable metaverse. The privacy controls in Buzz are all strictly opt-out. You might miss this fact, as I suspect most people will, unless you are naturally suspicious of any site that has access to too much information about you. And yes, we should all be suspicious of them.</p>
<p>Buzz will show your real name and make it searchable to everyone. It will also show the world who you are following and who is following you. Since it populated your follow list from your email contacts, it essentially reveals your contact list to the world. It also shows your Buzz messages on this publicly searchable profile so if you have something private to say to your friend or spouse, make sure you use Gmail and not Buzz. Of course, they both show up in the same Inbox so mistakes are likely.</p>
<p>What makes Google&#8217;s actions more inflammatory than Facebook&#8217;s is that your GMail data is used to generate this public content. As an email system, GMail implies privacy and strict control over who your messages go to and who can see them. Therefore, all  contacts and data in GMail were added by users with the expectation of full privacy. Buzz will, however, happily tell the world who you&#8217;ve been emailing the most. Beware.</p>
<p>There has already been a lot of complaints about this so-called privacy flaws. But can anyone really believe that this was a mistake in the design? That Google didn&#8217;t know the implications of making Buzz operate like this? They only need to look at Beacon and other privacy scandals Facebook has gone through to know where this leads.</p>
<p>One would think that launching a product like this that will expose the information of millions of users should take a bit of care and preparation. However, as of this time, Buzz doesn&#8217;t even have a Privacy Policy listed on Google&#8217;s <a href="http://www.google.com/support/accounts/bin/answer.py?hl=en&#038;answer=147806">Policy by Product</a> page!</p>
<p>There is no doubt that Google knew exactly what it was doing when they made Buzz work the way it does. I predict that they will run it for a few weeks as is, making it accumulate users, and then they will &#8220;fix the problem&#8221; due to user complaints. By this time the damage will be done and this privacy &#8220;flaw&#8221; will have served its purpose.</p>
<p>Should you decide to turn Buzz off, there is microscopic link at the very bottom of the page that will allow you to do this.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.bit-matrix.com/2010/02/10/google-buzz-a-privacy-disaster/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Lower-case all URLs with Apache mod_rewrite</title>
		<link>http://blog.bit-matrix.com/2010/02/05/lower-case-all-urls-with-apache-mod_rewrite/</link>
		<comments>http://blog.bit-matrix.com/2010/02/05/lower-case-all-urls-with-apache-mod_rewrite/#comments</comments>
		<pubDate>Fri, 05 Feb 2010 20:46:36 +0000</pubDate>
		<dc:creator>Bit Matrix</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[server]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[htaccess]]></category>
		<category><![CDATA[mod_rewrite]]></category>
		<category><![CDATA[seo]]></category>

		<guid isPermaLink="false">http://blog.bit-matrix.com/?p=109</guid>
		<description><![CDATA[Search engines, like Google, will index URLs on your site in a case-sensitive fashion, so www.yoursite.com/iamtest shows up as a different page than www.yoursite.com/iAmTest. This has negative consequences for your search rankings as these different URLs will be interpreted as duplicate content.
In this case we want to re-direct our users and any bots to the [...]]]></description>
			<content:encoded><![CDATA[<p>Search engines, like Google, will index URLs on your site in a case-sensitive fashion, so www.yoursite.com/iamtest shows up as a different page than www.yoursite.com/iAmTest. This has negative consequences for your search rankings as these different URLs will be interpreted as duplicate content.<span id="more-109"></span></p>
<p>In this case we want to re-direct our users and any bots to the same version of the URL (i.e. all lowercase). If you are running Apache, make sure <b>mod_rewrite</b> is installed and make the following changes to your configuration.</p>
<p>1. In your server config or virtual host file:<br />
<code>RewriteMap  lc int:tolower</code></p>
<p>2. In your .htaccess file at the root of your site:<br />
<code><br />
# Lower-case and 301 all requests<br />
RewriteEngine On<br />
RewriteCond %{REQUEST_URI} [A-Z]<br />
RewriteRule ^(.*)$ /${lc:$1} [L,R=301]<br />
</code></p>
<p><b>Note:</b> Beware that some standard files are mixed case and might be broken by doing this (such as AC_RunActiveContent.js).</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.bit-matrix.com/2010/02/05/lower-case-all-urls-with-apache-mod_rewrite/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Ubuntu 8.10 Problems on T61 Thinkpad</title>
		<link>http://blog.bit-matrix.com/2009/10/28/ubuntu-810-problems-on-t61-thinkpad/</link>
		<comments>http://blog.bit-matrix.com/2009/10/28/ubuntu-810-problems-on-t61-thinkpad/#comments</comments>
		<pubDate>Wed, 28 Oct 2009 19:44:28 +0000</pubDate>
		<dc:creator>Bit Matrix</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[8.10]]></category>
		<category><![CDATA[intrepid ibex]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://blog.bit-matrix.com/?p=26</guid>
		<description><![CDATA[I don&#8217;t often complain about the state of some OSS projects understanding that it is all part of the growth process. However, every once in a while a new version of our favorite product ends up being worse than the outgoing. My personal experience with Ubuntu 8.10 Intrepid Ibex is one such occurence. I upgraded [...]]]></description>
			<content:encoded><![CDATA[<p>I don&#8217;t often complain about the state of some OSS projects understanding that it is all part of the growth process. However, every once in a while a new version of our favorite product ends up being worse than the outgoing. My personal experience with Ubuntu 8.10 Intrepid Ibex is one such occurence. I upgraded my 8.04 install to 8.10 as soon as it came out. Whereas 8.04 was rock solid and functional (it is a LTS release after all) 8.10 is proving anything but. For the record, the aforementioned copy of Ubuntu is running on a T61 Thinkpad with NVidia graphics and Intel Wireless (pretty standard hardware).</p>
<p><strong>Update:</strong> I recently updated the T61 to Ubuntu 9.04 and all of the problems mentioned below have disappeared. So, thumbs-up to canonical and all the OSS contributors involved in this (and any) distribution.</p>
<p><strong>Update:</strong> Ubuntu 9.10 runs even better than 9.04 including a boot speedup from 1:35 down to 45 seconds!<br />
<span id="more-26"></span></p>
<p>Here is a list of the problems I am having with 8.10, ranging from annoying to wasteful to downright show stoppers:</p>
<h5>Shortcut Keys Stopped Working</h5>
<p>The T61 has a few shortcut keys along the top for adjusting volume, muting etc. While these worked in 8.04 out of the box, in 8.10 they are not recognized at all. Yes, there is probably something wrong with the X keyboard map that I could fix but that is annoying and I shouldn&#8217;t have to. This, after all, is fairly low on the priority list and I&#8217;ve already aliased the commands to other key combinations.</p>
<h5>All your CPU are belong to us &#8211; klogd and dd</h5>
<p>Every so often, even when idle, klogd and dd would fire up out of nowhere and start writing oodles of useless log messages. They happily split the two CPU cores between them and proceede to make a silicon bonfire out of them resulting in 2GB kern.log and syslog files. I&#8217;ve tried a few things to pacify this dynamic due including updating the wireless drivers and turning off ACPI but so far no luck. As a result I do not feel comfortable leaving my laptop on when I am not working on it since such rampant CPU abuse can only lead to something bad down the road (and a full disk). Again, this problem never appeared in 8.04.</p>
<h5>Kernel Panic &#8211; BOOM!</h5>
<p>Leaving the computer idle until it falls asleep results in a kernel panic from which there is no return other than a hard reboot. The kernel panic manifests itself with a blinking CAPS LOCK. This hurts, but at least it might prevent klogd and dd from burning my CPU to death. :-/</p>
<h5>Cannot Shutdown</h5>
<p>Every second or third shutdown event ends with the computer still on but the screen blank &#8211; fail.</p>
<h5>Conclusion</h5>
<p>I have installed 8.10 by upgrading from 8.04 and, perhaps that is where the problem lies. Recently if been preparing to re-install 8.10 cleanly and give that a shot. However, in the past I have upgraded between versions with no issues whatsoever. It is quite disappointing that this latest version of Ubuntu is so poor. Is it possible that their commitment to a six month release cycle has resulted in rushing out this release? The release schedule certainly seems like a boon compared to the multi-year waits for Debian but it can also present a problem in cases like this.</p>
<p>I can only hope that my problems with 8.10 are an isolated case with my machine, perhaps all related to one root cause (Intel wireless, I&#8217;m looking at you).</p>
<p>I would like to hear other opinions and experiences with 8.10, particularly anyone&#8217;s with a T61 Thinkpad.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.bit-matrix.com/2009/10/28/ubuntu-810-problems-on-t61-thinkpad/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to install PHP 5.2 on CentOS 5</title>
		<link>http://blog.bit-matrix.com/2009/10/22/how-to-install-php-52-on-centos-5/</link>
		<comments>http://blog.bit-matrix.com/2009/10/22/how-to-install-php-52-on-centos-5/#comments</comments>
		<pubDate>Fri, 23 Oct 2009 06:43:16 +0000</pubDate>
		<dc:creator>Bit Matrix</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[centos 5]]></category>
		<category><![CDATA[memcache]]></category>
		<category><![CDATA[pecl]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[php 5.2]]></category>
		<category><![CDATA[yum]]></category>

		<guid isPermaLink="false">http://blog.bit-matrix.com/?p=66</guid>
		<description><![CDATA[I recently needed to install PHP 5.2 on CentOS 5.3. This version of CentOS comes with PHP 5.1 but, in order to run phpMyAdmin, I needed 5.2. The CentOS software repositories are, unfortunately, still stuck with 5.1 and the only way to get a newer version of PHP installed via the package manager (yum) is [...]]]></description>
			<content:encoded><![CDATA[<p>I recently needed to install PHP 5.2 on CentOS 5.3. This version of CentOS comes with PHP 5.1 but, in order to run phpMyAdmin, I needed 5.2. The CentOS software repositories are, unfortunately, still stuck with 5.1 and the only way to get a newer version of PHP installed via the package manager (yum) is to add another repository that has a newer version.<span id="more-66"></span></p>
<p>For this we will use the CentOS testing repository:<br />
<code><br />
cd /etc/yum.repos.d/<br />
sudo wget http://dev.centos.org/centos/5/CentOS-Testing.repo<br />
sudo rpm --import http://dev.centos.org/centos/RPM-GPG-KEY-CentOS-testing<br />
</code></p>
<p>Now we can fetch package information about PHP using the new repository:<br />
<code><br />
yum --enablerepo=c5-testing info php<br />
</code></p>
<p>Check the version number. If it is what you need you can go ahead and install it using yum:<br />
<code><br />
sudo  yum --enablerepo=c5-testing update php<br />
</code></p>
<p>Assuming that worked, you can now restart Apache and be on your way:<br />
<code><br />
sudo /etc/init.d/httpd restart<br />
</code></p>
<h4>Memcache</h4>
<p>If, like me, you were using memcache you might run into a problem where memcache never got updated to the proper version because it did not exist in the CentOS testing repository. The memcache module on the system ends up with a different PHP API version than is required by the new version of PHP you just installed.</p>
<p>Upon starting PHP you might see a warning similar to this:<br />
<code><br />
Module compiled with API 20040429<br />
PHP compiled with API 20060613<br />
</code></p>
<p>Again, we will add a new repository from <a href="http://blog.famillecollet.com/pages/Config-en">Remi Collet</a>. The steps should be as follows:<br />
<code><br />
cd /etc/yum.repos.d/<br />
wget http://rpms.famillecollet.com/remi-enterprise.repo<br />
wget http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-3.noarch.rpm<br />
wget http://rpms.famillecollet.com/enterprise/remi-release-5.rpm<br />
rpm -Uvh remi-release-5*.rpm epel-release-5*.rpm<br />
</code></p>
<p>Now we can install the newest memcache library:<br />
<code><br />
sudo yum --enablerepo=remi install libmemcached\*<br />
</code></p>
<p>Build the PHP module using Pecl (you might have to install php-devel packages for this):<br />
<code><br />
pecl install memcache<br />
</code></p>
<p>Edit /etc/php.d/memcache.ini and add:<br />
<code><br />
extension=memcache.so<br />
</code></p>
<p>Restart Apache:<br />
<code><br />
sudo /etc/init.d/httpd restart<br />
</code></p>
<p>With a little bit of luck you will now have PHP 5.2.x and Memcache!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.bit-matrix.com/2009/10/22/how-to-install-php-52-on-centos-5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
