<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" xml:lang="en" xml:base="http://stevelove.org/wp-atom.php">
	<title type="text">SteveLove.org</title>
	<subtitle type="text">Code, Literature and Other Worthless Pursuits</subtitle>

	<updated>2010-02-25T23:12:14Z</updated>
	<generator uri="http://wordpress.org/" version="2.9">WordPress</generator>

	<link rel="alternate" type="text/html" href="http://stevelove.org" />
	<id>http://stevelove.org/feed/atom/</id>
	

			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/SteveLove" /><feedburner:info uri="stevelove" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry>
		<author>
			<name>Steve Love</name>
						<uri>http://www.stevelove.org</uri>
					</author>
		<title type="html"><![CDATA[Saying good bye to OpenID]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SteveLove/~3/I8N7jxVXRmM/" />
		<id>http://stevelove.org/?p=141</id>
		<updated>2010-01-06T17:49:05Z</updated>
		<published>2010-01-06T17:49:05Z</published>
		<category scheme="http://stevelove.org" term="Code" /><category scheme="http://stevelove.org" term="PHP" /><category scheme="http://stevelove.org" term="openid" /><category scheme="http://stevelove.org" term="php" />		<summary type="html"><![CDATA[For the last several months I've been intending to announce that I'm no longer going to be doing any development on Dope OpenID. Today's announcement of the PHPClasses Zeitgeist was the kick in the pants I needed.]]></summary>
		<content type="html" xml:base="http://stevelove.org/2010/01/06/saying-good-bye-to-openid/">&lt;p&gt;When I started digging in to OpenID a couple years ago, it was only because someone in the company&amp;#8217;s marketing department thought it sounded cool and therefore we needed it on our Web site.&lt;span id="more-141"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;At that time, I&amp;#8217;d only ever set up a personal OpenID endpoint so I started looking around on what it would take to become an OpenID consumer in order to authenticate our users. After trying various things, I settled on the &lt;a href="http://www.phpclasses.org/browse/package/3290.html"&gt;Simple OpenID class&lt;/a&gt; that I found on &lt;a href="http://www.phpclasses.org"&gt;PHPClasses.org&lt;/a&gt;. The only problem was that it wasn&amp;#8217;t OpenID 2.0 compliant, and therefore wouldn&amp;#8217;t work with Yahoo. So I worked my way through the OpenID specifications and got it functioning the way I wanted, even releasing the new code as &lt;a href="/projects/dope-openid"&gt;Dope OpenID&lt;/a&gt;. Still, we never saw more than a few hundred people taking advantage of OpenID on our site (out of a million or so active users).&lt;/p&gt;
&lt;p&gt;Since then, all I can say is that OpenID has become significantly less exciting. I haven&amp;#8217;t updated the code in a long while, though someone will occasionally post a modification in the comments. I actually &lt;a href="http://github.com/stevelove/Dope-OpenID"&gt;put the source up on GitHub&lt;/a&gt; hoping the modifications would get merged in that way.&lt;/p&gt;
&lt;p&gt;Anyway, all that to say for the last several months I&amp;#8217;ve been intending to announce that I&amp;#8217;m no longer going to be doing any development on Dope OpenID. Today&amp;#8217;s announcement of the &lt;a href="http://www.phpclasses.org/zeitgeist"&gt;PHPClasses Zeitgeist&lt;/a&gt; was the kick in the pants I needed. While OpenID was the &lt;a href="http://www.phpclasses.org/zeitgeist/year/2007/"&gt;top search on PHPClasses in 2007&lt;/a&gt;, it didn&amp;#8217;t even make the list in 2008 or 2009. In my opinion, the average user still has no idea what OpenID is and they&amp;#8217;re just more trusting of things that sound familiar to them, like Facebook Connect.&lt;/p&gt;
&lt;p&gt;So, to sum up, I&amp;#8217;m no longer doing any development on Dope OpenID. I will leave the project page up for a while and continue to allow comments, but I&amp;#8217;d much rather let someone else take over the project if they have an interest in it. Or else just fork it on GitHub.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/SteveLove/~4/I8N7jxVXRmM" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://stevelove.org/2010/01/06/saying-good-bye-to-openid/#comments" thr:count="2" />
		<link rel="replies" type="application/atom+xml" href="http://stevelove.org/2010/01/06/saying-good-bye-to-openid/feed/atom/" thr:count="2" />
		<thr:total>2</thr:total>
	<feedburner:origLink>http://stevelove.org/2010/01/06/saying-good-bye-to-openid/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Steve Love</name>
						<uri>http://www.stevelove.org</uri>
					</author>
		<title type="html"><![CDATA[Hyphens and underscores and camel case (Oh my)]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SteveLove/~3/TnPfqZtixW4/" />
		<id>http://stevelove.org/?p=136</id>
		<updated>2009-12-13T23:26:58Z</updated>
		<published>2009-12-13T23:26:33Z</published>
		<category scheme="http://stevelove.org" term="CSS" /><category scheme="http://stevelove.org" term="Code" /><category scheme="http://stevelove.org" term="HTML" /><category scheme="http://stevelove.org" term="PHP" /><category scheme="http://stevelove.org" term="Style" />		<summary type="html"><![CDATA[There&#8217;s a poll going on over at CSS Tricks asking whether coders and programmers prefer hyphens, underscoring or camel-casing when writing multi-word function names, CSS classes and IDs, et cetera.
The results of the poll are unfortunately going to be worthless due to the way the poll and the options were written. You&#8217;re only allowed to [...]]]></summary>
		<content type="html" xml:base="http://stevelove.org/2009/12/13/hyphens-and-underscores-and-camelcase-oh-my/">&lt;p&gt;There&amp;#8217;s a &lt;a href="http://css-tricks.com/new-poll-hyphens-or-dashes"&gt;poll going on over at CSS Tricks&lt;/a&gt; asking whether coders and programmers prefer hyphens, underscoring or camel-casing when writing multi-word function names, CSS classes and IDs, et cetera.&lt;/p&gt;
&lt;p&gt;The results of the poll are unfortunately going to be worthless due to the way the poll and the options were written. You&amp;#8217;re only allowed to choose one of the three and, judging by the comments, the real answer for most people is &amp;#8220;It depends.&amp;#8221; &lt;span id="more-136"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Still, it&amp;#8217;s an interesting question to ask every once in a while, especially with Web languages where just about everyone these days knows enough to be dangerous, to see whether people are still holding to the established coding styles, or whether new sources are emerging as the leaders.&lt;/p&gt;
&lt;p&gt;My most recent projects have involved the Cake PHP framework. It uses camel case pretty consistently throughout the PHP code, and even generates camel-cased IDs for HTML elements. For better or worse, I&amp;#8217;ve sort of adopted a hybrid approach in my CSS, using camel case for element IDs because of Cake&amp;#8217;s style, and using hyphens for classes because of my own preference. And it all does boil down to preference.&lt;/p&gt;
&lt;p&gt;Obviously there&amp;#8217;s much more that goes into coding style than just how you separate multi-word names. But multi-word naming style, like every other aspect of your overall coding style, just needs to be consistent. If you&amp;#8217;re starting a project from scratch, use what works best for you and use it consistently. If you&amp;#8217;re inheriting code or working on an existing project or framework, use whatever style has already been established (even if you prefer something else) and use it consistently.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/SteveLove/~4/TnPfqZtixW4" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://stevelove.org/2009/12/13/hyphens-and-underscores-and-camelcase-oh-my/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://stevelove.org/2009/12/13/hyphens-and-underscores-and-camelcase-oh-my/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://stevelove.org/2009/12/13/hyphens-and-underscores-and-camelcase-oh-my/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Steve Love</name>
						<uri>http://www.stevelove.org</uri>
					</author>
		<title type="html"><![CDATA[How to install PHP memcached on an Ubuntu server]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SteveLove/~3/a_7J4cl6qow/" />
		<id>http://stevelove.org/?p=124</id>
		<updated>2010-02-25T23:12:14Z</updated>
		<published>2009-09-30T22:04:00Z</published>
		<category scheme="http://stevelove.org" term="Apache" /><category scheme="http://stevelove.org" term="Code" /><category scheme="http://stevelove.org" term="Memcached" /><category scheme="http://stevelove.org" term="PHP" /><category scheme="http://stevelove.org" term="php" /><category scheme="http://stevelove.org" term="Ubuntu" />		<summary type="html"><![CDATA[I needed to install memcached on my local development server the other day and hit several snags during the process when I couldn't find a clear guide. It doesn't help that there's another package floating around called "memcache" which is not the same as "memcached".

Fortunately I found <a href="http://www.easy-coding.de/wiki/php/php-memcached-installieren.html">this post in German</a> which <a href="http://translate.google.com/translate?hl=en&#038;sl=de&#038;u=http://www.easy-coding.de/wiki/php/php-memcached-installieren.html&#038;ei=5aa6SvTrL9CLtgeLypm4BA&#038;sa=X&#038;oi=translate&#038;resnum=3&#038;ct=result&#038;prev=/search%3Fq%3D/tmp/pear/temp/memcached/configure%2527%2Bfailed%26hl%3Den%26client%3Dfirefox-a%26rls%3Dcom.ubuntu:en-US:unofficial%26hs%3DWUG%26sa%3DN%26start%3D10">Google kindly translated</a> for me, and it solved my problems.

Since the translation screws up some of the code, I thought I would post the steps here in English in case anyone finds it useful.]]></summary>
		<content type="html" xml:base="http://stevelove.org/2009/09/30/how-to-install-php-memcached-on-an-ubuntu-server/">&lt;p&gt;I needed to install memcached on my local development server the other day and hit several snags during the process when I couldn&amp;#8217;t find a clear guide. It doesn&amp;#8217;t help that there&amp;#8217;s another package floating around called &amp;#8220;memcache&amp;#8221; which is not the same as &amp;#8220;memcached&amp;#8221;.&lt;/p&gt;
&lt;p&gt;Fortunately I found &lt;a href="http://www.easy-coding.de/wiki/php/php-memcached-installieren.html"&gt;this post in German&lt;/a&gt; which &lt;a href="http://translate.google.com/translate?hl=en&amp;#038;sl=de&amp;#038;u=http://www.easy-coding.de/wiki/php/php-memcached-installieren.html&amp;#038;ei=5aa6SvTrL9CLtgeLypm4BA&amp;#038;sa=X&amp;#038;oi=translate&amp;#038;resnum=3&amp;#038;ct=result&amp;#038;prev=/search%3Fq%3D/tmp/pear/temp/memcached/configure%2527%2Bfailed%26hl%3Den%26client%3Dfirefox-a%26rls%3Dcom.ubuntu:en-US:unofficial%26hs%3DWUG%26sa%3DN%26start%3D10"&gt;Google kindly translated&lt;/a&gt; for me, and it solved my problems.&lt;/p&gt;
&lt;p&gt;Since the translation screws up some of the code, I thought I would post the steps here in English in case anyone finds it useful.&lt;span id="more-124"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;Step 1: LAMP&lt;/h3&gt;
&lt;p&gt;If you don&amp;#8217;t already have PHP 5 and Apache2 set up, this will get you started. Open up a terminal and type: &lt;/p&gt;
&lt;pre class="brush: bash;"&gt;sudo tasksel install lamp-server&lt;/pre&gt;
&lt;p&gt;Guiding you through setting up PHP and Apache is beyond the scope of this guide, so if you get stuck, check the multitude of guides available on Google.&lt;/p&gt;
&lt;h3&gt;Step 2: Upgrade LAMP&lt;/h3&gt;
&lt;p&gt;With PHP 5 and Apache installed, the next step is to install the developer versions.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;php5-dev (otherwise you&amp;#8217;ll get an error about &amp;#8220;phpize&amp;#8221;)&lt;/li&gt;
&lt;li&gt;apache2-threaded-dev (or else you&amp;#8217;ll get an &amp;#8220;apxs&amp;#8221; error)&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class="brush: bash;"&gt; sudo apt-get install php5-dev apache2-threaded-dev &lt;/pre&gt;
&lt;h3&gt;Step 3: Getting build tools&lt;/h3&gt;
&lt;p&gt;We&amp;#8217;re going to be building from source. If you&amp;#8217;ve never done that before it&amp;#8217;s pretty easy, but first you&amp;#8217;ll need some extra tools.&lt;/p&gt;
&lt;pre class="brush: bash;"&gt; sudo apt-get install build-essential &lt;/pre&gt;
&lt;h3&gt;Step 4: PEAR and memcached&lt;/h3&gt;
&lt;p&gt;You&amp;#8217;re also going to need PEAR and the memcached binary.&lt;/p&gt;
&lt;pre class="brush: bash;"&gt; sudo apt-get install php-pear memcached &lt;/pre&gt;
&lt;h3&gt;Step 5: Building libmemcached&lt;/h3&gt;
&lt;p&gt;You&amp;#8217;ll need to &lt;a href="http://download.tangent.org/"&gt;get the latest source package from here&lt;/a&gt;. You may have to try different versions until you get it working. In 9.04, &lt;span class="code"&gt;libmemcached-0.33&lt;/span&gt; worked. For 9.10, it was &lt;span class="code"&gt;libmemcached-0.37&lt;/span&gt;. Download it with your preferred method, or type: &lt;/p&gt;
&lt;pre class="brush: bash;"&gt; wget http://download.tangent.org/libmemcached-0.37.tar.gz &lt;/pre&gt;
&lt;p&gt;Extract the files with your preferred method, or type:&lt;/p&gt;
&lt;pre class="brush: bash;"&gt; tar -xzf libmemcached-0.37.tar.gz &lt;/pre&gt;
&lt;p&gt;Move into the extracted directory:&lt;/p&gt;
&lt;pre class="brush: bash;"&gt; cd libmemcached-0.37/ &lt;/pre&gt;
&lt;p&gt;Configure the package.&lt;/p&gt;
&lt;pre class="brush: bash;"&gt; ./configure &lt;/pre&gt;
&lt;p&gt;Make.&lt;/p&gt;
&lt;pre class="brush: bash;"&gt; make &lt;/pre&gt;
&lt;p&gt;Make install. Note this probably will require sudo rights.&lt;/p&gt;
&lt;pre class="brush: bash;"&gt; sudo make install &lt;/pre&gt;
&lt;h3&gt;Step 6: PECL&lt;/h3&gt;
&lt;p&gt;Finally, you can install the memcached extension through PECL. [Thanks to Andy Lav for pointing out this very important missing step in the comments.]&lt;/p&gt;
&lt;pre class="brush: bash;"&gt; sudo pecl install memcached &lt;/pre&gt;
&lt;p&gt;When this process completed, you should see something like this:&lt;/p&gt;
&lt;pre class="brush: bash;"&gt;
Build process completed successfully
Installing '/usr/lib/php5/20060613+lfs/memcached.so'
install ok: channel://pecl.php.net/memcached-1.0.0
Extension memcached enabled in php.ini
&lt;/pre&gt;
&lt;p&gt;If you see this, you should be ready to go.&lt;/p&gt;
&lt;p&gt;You might instead get a message that says: &lt;span class="code"&gt;You should add &amp;#8220;extension = memcached.so&amp;#8221; to php.ini&lt;/span&gt;. If that&amp;#8217;s the case, open the file with the following and paste &lt;span class="code"&gt;extension = memcached.so&lt;/span&gt; at the top:&lt;/p&gt;
&lt;pre class="brush: bash;"&gt; gksudo gedit /etc/php5/apache2/php.ini &lt;/pre&gt;
&lt;p&gt;After you save and close the file, restart Apache.&lt;/p&gt;
&lt;pre class="brush: bash;"&gt; sudo /etc/init.d/apache2 restart &lt;/pre&gt;
&lt;img src="http://feeds.feedburner.com/~r/SteveLove/~4/a_7J4cl6qow" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://stevelove.org/2009/09/30/how-to-install-php-memcached-on-an-ubuntu-server/#comments" thr:count="2" />
		<link rel="replies" type="application/atom+xml" href="http://stevelove.org/2009/09/30/how-to-install-php-memcached-on-an-ubuntu-server/feed/atom/" thr:count="2" />
		<thr:total>2</thr:total>
	<feedburner:origLink>http://stevelove.org/2009/09/30/how-to-install-php-memcached-on-an-ubuntu-server/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Steve Love</name>
						<uri>http://www.stevelove.org</uri>
					</author>
		<title type="html"><![CDATA[Songs That Sound Like This Photo]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SteveLove/~3/i1mBuT4_kns/" />
		<id>http://stevelove.org/?p=120</id>
		<updated>2009-09-09T13:26:57Z</updated>
		<published>2009-09-09T06:55:05Z</published>
		<category scheme="http://stevelove.org" term="Music" /><category scheme="http://stevelove.org" term="photo" /><category scheme="http://stevelove.org" term="playlist" /><category scheme="http://stevelove.org" term="songs" /><category scheme="http://stevelove.org" term="sound" />		<summary type="html"><![CDATA[Some friends and I recently played a little game where we each chose a photo at random and created playlists of five to ten songs around a theme called Songs That Sound Like This Photo. Now that it&#8217;s over, I thought I&#8217;d share my creation.
The complete list and a Flash-based music player after the jump.
My [...]]]></summary>
		<content type="html" xml:base="http://stevelove.org/2009/09/09/songs-that-sound-like-this-photo/">&lt;p&gt;Some friends and I recently played a little game where we each chose a photo at random and created playlists of five to ten songs around a theme called Songs That Sound Like This Photo. Now that it&amp;#8217;s over, I thought I&amp;#8217;d share my creation.&lt;/p&gt;
&lt;p&gt;The complete list and a Flash-based music player after the jump.&lt;span id="more-120"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;My photo happened to be one by a famous photographer that went by the name Weegee.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3032/3066330823_f93a0dd1c4.jpg" alt="Lovers by Weegee" /&gt;&lt;/p&gt;
&lt;p&gt;A playlist built around this photo could easily hinge around bubblegum pop, but I wanted to take it beyond that the way the couple in the photo takes &lt;abbr title="Public Display of Affection"&gt;PDA&lt;/abbr&gt; a little too far. It was while searching my music library that I came across &amp;#8220;Rapture&amp;#8221; by Pedro the Lion &amp;mdash; which is a bit graphic and pushes some boundaries (especially if you&amp;#8217;re familiar with the band) &amp;mdash; and realized I had found one of the key stones of my playlist.&lt;/p&gt;
&lt;p&gt;The complete list follows with some notes. Listen to the playlist with the Flash-based player at the end of this post.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;1. The Chalets &amp;mdash; Theme From The Chalets&lt;/b&gt;&lt;br /&gt;
This song could admittedly fall into the bubblegum category, but it&amp;#8217;s really the first &amp;#8220;sound&amp;#8221; you hear when looking at the photo. Kind of whimsical and even a little funny. You really have to start here. (The version used in the Flash player at the end of this post sounds like a live recording. Not as great as the album version, but not bad.)&lt;/p&gt;
&lt;p&gt;&lt;b&gt;2. Pedro The Lion &amp;mdash; Rapture&lt;/b&gt;&lt;br /&gt;
The opening line, while maybe a little shocking, carries just a tad of dark humor into the second track. Thematically this song is perhaps premature, but musically it seemed to fit best in this spot. There&amp;#8217;s something about this couple choosing to make out during a 3-D movie in the middle of the audience that sounds to me like they&amp;#8217;ve turned off their brains and are letting sensation guide them. This line from the song captures them pretty well: &amp;#8220;We&amp;#8217;ve gone too far/ We&amp;#8217;ve done too much/ We have to quit it/ Just one more kiss/ Just one more touch/ Please 10 more minutes.&amp;#8221;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;3. The Twilight Singers &amp;mdash; I&amp;#8217;m Ready&lt;/b&gt;&lt;br /&gt;
When I received my photo, I knew I needed a song by either The Twilight Singers or Greg Dulli&amp;#8217;s previous band, The Afghan Whigs. Something about Dulli&amp;#8217;s music seems to match the vibe I was getting from the photo. Maybe it&amp;#8217;s the sultry, gritty sound of New Orleans coming through. The track comes from The Twilight Singers album &amp;#8220;Powder Burns&amp;#8221; and it features a swelling intro called &amp;#8220;Toward The Waves&amp;#8221; that I included on my mixtape for a less abrupt transition from the last song.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;4. Brazilian Girls &amp;mdash; Losing Myself&lt;/b&gt;&lt;br /&gt;
This song marks a musical transition in the mix. It&amp;#8217;s more of a party song than any of the previous tracks and returns to the fun side of the photo.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;5. N.A.S.A. &amp;mdash; Whachadoin (feat. M.I.A, Spank Rock, Santigold and Nick Zinner)&lt;/b&gt;&lt;br /&gt;
I&amp;#8217;d honestly never heard this song before putting together the playlist. It was something I downloaded free from Amazon&amp;#8217;s mp3 store as part of a sampler. I listened to it while searching my library for songs and something about it caught my attention. There was sort of an adolescent quality to the chorus (that as far as I can tell says) &amp;#8220;Whachadoin? All the girls call my house and they say they see you out. Why you lie?&amp;#8221; After the Pedro The Lion song, it was pretty easy to imagine the guy in this photo out cheating on his girlfriend. I think the intro is the weakest part of the song and don&amp;#8217;t really care for it, so I actually cut out the first 20 seconds in the version I made for my friends.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;6. Sara Lov &amp;mdash; Let&amp;#8217;s Get Physical&lt;/b&gt;&lt;br /&gt;
In 1981, Olivia Newton John recorded this song with the foreknowledge that 28 years later when I worked on this playlist I&amp;#8217;d have a song that could not be a more perfect fit. Except that I chose a recent version by Sara Lov instead. When I first heard this song in 1981, the most important thing about it in my opinion was that I could easily change the words to, &amp;#8220;Let me hear your booty talk.&amp;#8221; Listening to it again now, the lyrics are actually very suggestive, if not totally forthright.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;7. Moby &amp;mdash; I Like It&lt;/b&gt;&lt;br /&gt;
I definitely wasn&amp;#8217;t thinking about Moby when I first started putting this playlist together, but for some reason I stopped at his name in my music library. This song would have come much earlier in the list if I had been making this mix in middle school. Back then I had perfected a 3:1 fast to slow song ratio for making party mix tapes. Anyway, this song seems to match the more subtle sounds of the photo.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;8. Interpol &amp;mdash; Public Pervert (Carlos D Remix)&lt;/b&gt;&lt;br /&gt;
I&amp;#8217;ll be honest. The reason I chose this song was solely because the title so easily fit the photo. Don&amp;#8217;t get me wrong, I like the way it fits into the mix. Following Moby, it sort of pulls the mood back to the griminess of making out in a movie theater. (Unfortunately the version in the player below isn&amp;#8217;t the full song. You can &lt;a href="http://songza.fm/~9ojp2b"&gt;hear the whole thing here&lt;/a&gt;.)&lt;/p&gt;
&lt;p&gt;&lt;b&gt;9. Rilo Kiley &amp;mdash; Portions For Foxes&lt;/b&gt;&lt;br /&gt;
Knowing better but doing it anyway.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;10. Ida Maria &amp;mdash; I Like You So Much Better When You&amp;#8217;re Naked&lt;/b&gt;&lt;br /&gt;
My playlist would have been complete without this song, but it&amp;#8217;s just a lot of fun and I thought it was a great way to end the set of songs.&lt;/p&gt;
&lt;div style="text-align: center; margin-left: auto; visibility:visible; margin-right: auto; width:450px;"&gt;
	&lt;object width="435" height="270"&gt;&lt;param name="movie" value="http://www.profileplaylist.net/mc/mp3player_new.swf"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="never"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;param name="flashvars" value="config=http%3A%2F%2Fwww.indimusic.us%2Fext%2Fpc%2Fconfig_regular_noautostart.xml&amp;amp;mywidth=435&amp;amp;myheight=270&amp;amp;playlist_url=http%3A%2F%2Fwww.indimusic.us%2Floadplaylist.php%3Fplaylist%3D69737239%26t%3D1252470942&amp;amp;wid=os"&gt;&lt;/param&gt;
		&lt;embed style="width:435px; visibility:visible; height:270px;" allowScriptAccess="never" src="http://www.profileplaylist.net/mc/mp3player_new.swf" flashvars="config=http%3A%2F%2Fwww.indimusic.us%2Fext%2Fpc%2Fconfig_regular_noautostart.xml&amp;amp;mywidth=435&amp;amp;myheight=270&amp;amp;playlist_url=http://www.indimusic.us/loadplaylist.php?playlist=69737239&amp;#038;t=1252470942&amp;amp;wid=os" width="435" height="270" name="mp3player" wmode="transparent" type="application/x-shockwave-flash" border="0"/&gt;&lt;br /&gt;
	&lt;/object&gt;
&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/SteveLove/~4/i1mBuT4_kns" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://stevelove.org/2009/09/09/songs-that-sound-like-this-photo/#comments" thr:count="2" />
		<link rel="replies" type="application/atom+xml" href="http://stevelove.org/2009/09/09/songs-that-sound-like-this-photo/feed/atom/" thr:count="2" />
		<thr:total>2</thr:total>
	<feedburner:origLink>http://stevelove.org/2009/09/09/songs-that-sound-like-this-photo/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Steve Love</name>
						<uri>http://www.stevelove.org</uri>
					</author>
		<title type="html"><![CDATA[In which I continually search for a good Linux-based media manager]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SteveLove/~3/eUIIyhErnbs/" />
		<id>http://stevelove.org/?p=118</id>
		<updated>2009-08-25T20:30:53Z</updated>
		<published>2009-08-25T20:30:53Z</published>
		<category scheme="http://stevelove.org" term="Media Managers" /><category scheme="http://stevelove.org" term="Music" /><category scheme="http://stevelove.org" term="amarok" /><category scheme="http://stevelove.org" term="banshee" /><category scheme="http://stevelove.org" term="gmusicbrowser" /><category scheme="http://stevelove.org" term="media manager" /><category scheme="http://stevelove.org" term="rhythmbox" />		<summary type="html"><![CDATA[When I used Windows as my primary operating system, my media manager of choice was Media Monkey. It&#8217;s still the best media player and manager, hands down. But the available options for Linux are a bit lacking in my opinion.
There are a few things I love most about Media Monkey.

The ability to look up albums [...]]]></summary>
		<content type="html" xml:base="http://stevelove.org/2009/08/25/in-which-i-continually-search-for-a-good-linux-based-media-manager/">&lt;p&gt;When I used Windows as my primary operating system, my media manager of choice was &lt;a href="http://www.mediamonkey.com/"&gt;Media Monkey&lt;/a&gt;. It&amp;#8217;s still the best media player and manager, hands down. But the available options for Linux are a bit lacking in my opinion.&lt;span id="more-118"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;There are a few things I love most about Media Monkey.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The ability to look up albums on Amazon and import tag information en masse (or selectively).&lt;/li&gt;
&lt;li&gt;The ability to create and fine-tune playlists with intelligent filters.&lt;/li&gt;
&lt;li&gt;Media Monkey handles a huge music library (18,000+ songs) with ease.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;There&amp;#8217;s more to love, but since there&amp;#8217;s no Linux version of Media Monkey and I&amp;#8217;m not interested in running it on Wine, let&amp;#8217;s just move on.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;ve tried &lt;a href="http://amarok.kde.org/"&gt;Amarok&lt;/a&gt;, and it&amp;#8217;s decent, but as I&amp;#8217;ve settled on the Gnome desktop environment, I don&amp;#8217;t care to install KDE just for one application.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;ve tried &lt;a href="http://www.gnome.org/projects/rhythmbox/"&gt;Rhythmbox&lt;/a&gt;, but &amp;#8230; meh. There&amp;#8217;s nothing to get excited about.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;ve tried &lt;a href="http://jajuk.info/"&gt;Jajuk&lt;/a&gt;, but since it&amp;#8217;s running on Java, it just doesn&amp;#8217;t feel right.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;ve tried &lt;a href="http://getsongbird.com/"&gt;Songbird&lt;/a&gt;, and I like it in general, but it seems to eat up some serious system resources.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;ve tried &lt;a href="http://banshee-project.org/"&gt;Banshee&lt;/a&gt; &amp;#8230; and this one actually stuck for a while. Not the prettiest interface, but &lt;a href="http://abock.org/2009/07/14/exciting-updates-on-the-road-to-banshee-2-0"&gt;they&amp;#8217;re working on it&lt;/a&gt;. It has some useful extensions and even plays streaming radio stations.&lt;/p&gt;
&lt;p&gt;But then I started noticing some issues. For instance, I&amp;#8217;d start up Banshee and try to connect to a streaming radio station. Nothing. No attempt to connect. No error message. Nothing. As if I hadn&amp;#8217;t clicked anything at all. So I quit the application, start it up again, and try once more to connect to a radio station &amp;#8230; and now it works. Unfortunately, this is the scenario 100 percent of the time.&lt;/p&gt;
&lt;p&gt;One of the other features I liked about Banshee was that it had Last.fm built into it. I could dial in to my Personal Last.fm radio station and start listening to my Last.fm library. It was great and I tended to use it rather than my actual mp3 library. And one day it stopped working. Now it simply reports an error: &amp;#8220;Failed to get new songs for Personal.&amp;#8221;&lt;/p&gt;
&lt;p&gt;So, I started listening to my actual mp3 collection. And that&amp;#8217;s when I noticed how badly Banshee chokes on such a large library. The application is unresponsive at least once or twice before it even displays the track list. Just trying to browse the collection is enough to slow the system down so much that &amp;#8230; well, I&amp;#8217;ve started looking for alternatives again.&lt;/p&gt;
&lt;p&gt;And now I&amp;#8217;m using &lt;a href="http://squentin.free.fr/gmusicbrowser/gmusicbrowser.html"&gt;gmusicbrowser&lt;/a&gt;. You&amp;#8217;re right, it&amp;#8217;s ugly and it has a boring name. But it was actually developed specifically with massive mp3 libraries in mind. And in the unscientific estimate I came up with in my head just now, it&amp;#8217;s at least two or three times faster than the other applications I&amp;#8217;ve named when dealing with a large library. The interface is not the most intuitive, but as I figure things out, it definitely feels as powerful to me as Media Monkey.&lt;/p&gt;
&lt;p&gt;I haven&amp;#8217;t given up on Banshee. I&amp;#8217;ll definitely try out future releases. As well as any other media manager that seems promising. Have any suggestions for me?&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/SteveLove/~4/eUIIyhErnbs" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://stevelove.org/2009/08/25/in-which-i-continually-search-for-a-good-linux-based-media-manager/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://stevelove.org/2009/08/25/in-which-i-continually-search-for-a-good-linux-based-media-manager/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://stevelove.org/2009/08/25/in-which-i-continually-search-for-a-good-linux-based-media-manager/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Steve Love</name>
						<uri>http://www.stevelove.org</uri>
					</author>
		<title type="html"><![CDATA[Clonezilla is pretty much awesome at system recovery]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SteveLove/~3/zNLhQukeC7o/" />
		<id>http://stevelove.org/?p=114</id>
		<updated>2009-07-11T19:16:32Z</updated>
		<published>2009-07-11T19:16:08Z</published>
		<category scheme="http://stevelove.org" term="Ubuntu" /><category scheme="http://stevelove.org" term="Utilities" /><category scheme="http://stevelove.org" term="backup" /><category scheme="http://stevelove.org" term="Clonezilla" /><category scheme="http://stevelove.org" term="grub" /><category scheme="http://stevelove.org" term="restore" /><category scheme="http://stevelove.org" term="system" /><category scheme="http://stevelove.org" term="utility" />		<summary type="html"><![CDATA[Cross-platform Clonezilla is a great tool for handling your system backup and system restore needs. Just tested it out using the Live CD on my laptop and found it to be very fast and very successful.
Initially I used the stable release of Clonezilla to back up my laptop&#8217;s entire hard drive to a USB external [...]]]></summary>
		<content type="html" xml:base="http://stevelove.org/2009/07/11/clonezilla-is-pretty-much-awesome-at-system-recovery/">&lt;p&gt;Cross-platform &lt;a href="http://clonezilla.org"&gt;Clonezilla&lt;/a&gt; is a great tool for handling your system backup and system restore needs. Just tested it out using the Live CD on my laptop and found it to be very fast and very successful.&lt;span id="more-114"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Initially I used the stable release of Clonezilla to back up my laptop&amp;#8217;s entire hard drive to a USB external hard drive. No problems at all. However, I hit a minor snag when restoring the system with the stable release in that it failed to re-install grub. Oops. Not to worry though, Clonezilla has an &amp;#8220;alternative&amp;#8221; release based off Ubuntu (the stable release is built on standard Debian). Since I happen to be running Ubuntu, I made a new Live CD with the alternative Ubuntu release and once again tried the system restore. This time it worked perfectly and my system is exactly as it was at the time I backed it up.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/SteveLove/~4/zNLhQukeC7o" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://stevelove.org/2009/07/11/clonezilla-is-pretty-much-awesome-at-system-recovery/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://stevelove.org/2009/07/11/clonezilla-is-pretty-much-awesome-at-system-recovery/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://stevelove.org/2009/07/11/clonezilla-is-pretty-much-awesome-at-system-recovery/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Steve Love</name>
						<uri>http://www.stevelove.org</uri>
					</author>
		<title type="html"><![CDATA[PNG background-repeat bug in Internet Explorer 7 and 8]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SteveLove/~3/VtHcgOQScbQ/" />
		<id>http://stevelove.org/?p=111</id>
		<updated>2009-07-27T19:20:09Z</updated>
		<published>2009-07-10T16:17:01Z</published>
		<category scheme="http://stevelove.org" term="Browsers" /><category scheme="http://stevelove.org" term="CSS" /><category scheme="http://stevelove.org" term="Code" /><category scheme="http://stevelove.org" term="HTML" /><category scheme="http://stevelove.org" term="Internet Explorer" /><category scheme="http://stevelove.org" term="background-repeat" /><category scheme="http://stevelove.org" term="bug" /><category scheme="http://stevelove.org" term="png" />		<summary type="html"><![CDATA[Apparently Internet Explorer 7 and 8 still haven&#8217;t gotten PNG quite right. While working on one of my current projects, I stumbled onto a bug with repeating PNG background images. 
For this project, I have a page template with several container elements that all have a 1 pixel by 1 pixel PNG background set to [...]]]></summary>
		<content type="html" xml:base="http://stevelove.org/2009/07/10/png-background-repeat-bug-in-internet-explorer-7-and-8/">&lt;p&gt;Apparently Internet Explorer 7 and 8 still haven&amp;#8217;t gotten PNG quite right. While working on one of my current projects, I stumbled onto a bug with repeating PNG background images. &lt;span id="more-111"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;For this project, I have a page template with several container elements that all have a 1 pixel by 1 pixel PNG background set to repeat, and it looks great when testing it in IE 7 and IE 8. So, I created my next page template with the same styling. This time, IE 7 and 8 both choked when handling the background-repeat. Instead of repeating, both of these browsers inexplicably tried to stretch the 1&amp;#215;1 image across the entire container. The PNG happened to have 60 percent alpha transparency, but I&amp;#8217;m not sure that matters. A coworker suggested making it a 10&amp;#215;10 pixel image instead, just to see what happens. Surprise, surprise. That fixed it.&lt;/p&gt;
&lt;p&gt;I did a little more searching to see if anyone else had come across this and found &lt;a href="http://aspirium.net/bjohn/ie-7-ie-8-png-bug/"&gt;this recent blog post&lt;/a&gt;. The author also found that this bug appears to occur at random, and that a 4&amp;#215;4 pixel image solved his problem. Since there&amp;#8217;s &lt;del datetime="2009-07-27T19:19:58+00:00"&gt;no&lt;/del&gt; very little file size difference between 10&amp;#215;10 and 1&amp;#215;1, I&amp;#8217;ll stick with the 10&amp;#215;10. But I agree with him that this bug created a cool effect, and it would be great if it could be replicated at will.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/SteveLove/~4/VtHcgOQScbQ" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://stevelove.org/2009/07/10/png-background-repeat-bug-in-internet-explorer-7-and-8/#comments" thr:count="8" />
		<link rel="replies" type="application/atom+xml" href="http://stevelove.org/2009/07/10/png-background-repeat-bug-in-internet-explorer-7-and-8/feed/atom/" thr:count="8" />
		<thr:total>8</thr:total>
	<feedburner:origLink>http://stevelove.org/2009/07/10/png-background-repeat-bug-in-internet-explorer-7-and-8/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Steve Love</name>
						<uri>http://www.stevelove.org</uri>
					</author>
		<title type="html"><![CDATA[Upgrading to VirtualBox 3.0 causes Linux guest to hang [Solved]]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SteveLove/~3/WECOCKlj5X0/" />
		<id>http://stevelove.org/?p=109</id>
		<updated>2009-07-09T03:48:36Z</updated>
		<published>2009-07-09T03:48:36Z</published>
		<category scheme="http://stevelove.org" term="Ubuntu" /><category scheme="http://stevelove.org" term="VirtualBox" />		<summary type="html"><![CDATA[I got to work a little early this morning and decided to upgrade to the new VirtualBox 3.0, which I use to run Ubuntu 9.04 as a guest on my 64-bit Windows Vista host machine. 
The upgrade was simple as always and I experienced no issues &#8230; until I tried to boot up my Ubuntu [...]]]></summary>
		<content type="html" xml:base="http://stevelove.org/2009/07/08/upgrading-to-virtualbox-3-0-causes-linux-guest-to-hang-solved/">&lt;p&gt;I got to work a little early this morning and decided to upgrade to the new &lt;a href="http://www.virtualbox.org/"&gt;VirtualBox 3.0&lt;/a&gt;, which I use to run Ubuntu 9.04 as a guest on my 64-bit Windows Vista host machine. &lt;/p&gt;
&lt;p&gt;The upgrade was simple as always and I experienced no issues &amp;#8230; until I tried to boot up my Ubuntu VM. It appeared to hang during boot up, and finally ended in a kernel panic. Every time.&lt;/p&gt;
&lt;p&gt;There&amp;#8217;s an easy fix, however, which I found &lt;a href="http://forums.virtualbox.org/viewtopic.php?f=6&amp;#038;t=19395#p83847"&gt;here&lt;/a&gt; after a quick Google search. The solution is to change the VM settings for the network adapter from &amp;#8220;PCnet-FAST III&amp;#8221; to &amp;#8220;Intel PRO/1000 MT Desktop&amp;#8221;. &lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/SteveLove/~4/WECOCKlj5X0" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://stevelove.org/2009/07/08/upgrading-to-virtualbox-3-0-causes-linux-guest-to-hang-solved/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://stevelove.org/2009/07/08/upgrading-to-virtualbox-3-0-causes-linux-guest-to-hang-solved/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://stevelove.org/2009/07/08/upgrading-to-virtualbox-3-0-causes-linux-guest-to-hang-solved/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Steve Love</name>
						<uri>http://www.stevelove.org</uri>
					</author>
		<title type="html"><![CDATA[Dope OpenID 1.0.1 released]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SteveLove/~3/UQAMp63IfxQ/" />
		<id>http://stevelove.org/?p=107</id>
		<updated>2009-07-09T02:31:50Z</updated>
		<published>2009-07-09T02:31:50Z</published>
		<category scheme="http://stevelove.org" term="Code" /><category scheme="http://stevelove.org" term="PHP" /><category scheme="http://stevelove.org" term="attribute exchange" /><category scheme="http://stevelove.org" term="openid" /><category scheme="http://stevelove.org" term="php" />		<summary type="html"><![CDATA[Late last night I pushed out an update for Dope OpenID to add better support for Attribute Exchange with Google and other providers. You can download the latest version right now from the project page.
In addition, because Dope OpenID is an open source project, I&#8217;ve made the source code available on github. Collaborators are welcome! [...]]]></summary>
		<content type="html" xml:base="http://stevelove.org/2009/07/08/dope-openid-1-0-1-released/">&lt;p&gt;Late last night I pushed out an update for Dope OpenID to add better support for Attribute Exchange with Google and other providers. You can download the latest version right now from the &lt;a href="http://stevelove.org/projects/dope-openid/"&gt;project page&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;In addition, because Dope OpenID is an open source project, I&amp;#8217;ve made the source code available on &lt;a href="http://github.com/stevelove/Dope-OpenID/tree/master"&gt;github&lt;/a&gt;. Collaborators are welcome! Or take the code and go in a completely different direction.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/SteveLove/~4/UQAMp63IfxQ" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://stevelove.org/2009/07/08/dope-openid-1-0-1-released/#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://stevelove.org/2009/07/08/dope-openid-1-0-1-released/feed/atom/" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://stevelove.org/2009/07/08/dope-openid-1-0-1-released/</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Steve Love</name>
						<uri>http://www.stevelove.org</uri>
					</author>
		<title type="html"><![CDATA[Cloudy With a Chance of Meatballs]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SteveLove/~3/EVLi2bZ9qrU/" />
		<id>http://stevelove.org/?p=103</id>
		<updated>2009-07-08T01:11:58Z</updated>
		<published>2009-07-08T01:11:23Z</published>
		<category scheme="http://stevelove.org" term="Books" /><category scheme="http://stevelove.org" term="childhood" /><category scheme="http://stevelove.org" term="movie" />		<summary type="html"><![CDATA[Just discovered that one of my favorite books from childhood is being made into a movie: Cloudy With a Chance of Meatballs.
]]></summary>
		<content type="html" xml:base="http://stevelove.org/2009/07/07/cloudy-with-a-chance-of-meatballs/">&lt;p&gt;Just discovered that one of my favorite books from childhood is being made into a movie: &lt;a href="http://www.amazon.com/gp/product/0689707495?ie=UTF8&amp;#038;tag=stevelove-20&amp;#038;linkCode=as2&amp;#038;camp=1789&amp;#038;creative=390957&amp;#038;creativeASIN=0689707495"&gt;Cloudy With a Chance of Meatballs&lt;/a&gt;.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/SteveLove/~4/EVLi2bZ9qrU" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://stevelove.org/2009/07/07/cloudy-with-a-chance-of-meatballs/#comments" thr:count="1" />
		<link rel="replies" type="application/atom+xml" href="http://stevelove.org/2009/07/07/cloudy-with-a-chance-of-meatballs/feed/atom/" thr:count="1" />
		<thr:total>1</thr:total>
	<feedburner:origLink>http://stevelove.org/2009/07/07/cloudy-with-a-chance-of-meatballs/</feedburner:origLink></entry>
	</feed>
