<?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>devgrind</title>
	<atom:link href="http://devgrind.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://devgrind.com</link>
	<description>thinking outside the { }</description>
	<lastBuildDate>Tue, 04 May 2010 17:25:24 +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>Trees and Roots</title>
		<link>http://devgrind.com/2010/05/04/trees-and-roots/</link>
		<comments>http://devgrind.com/2010/05/04/trees-and-roots/#comments</comments>
		<pubDate>Tue, 04 May 2010 17:24:20 +0000</pubDate>
		<dc:creator>Magnus</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[algorithm]]></category>
		<category><![CDATA[data structure]]></category>

		<guid isPermaLink="false">http://devgrind.com/?p=127</guid>
		<description><![CDATA[A friend on Facebook mentioned a nice little naming problem I had not been aware of in years of computer science:
We are always drawing tree structures with the root on top, sometimes with the root on the left, but almost never with the root where it belongs (according to biologists) in a tree: at the [...]]]></description>
			<content:encoded><![CDATA[<p>A <a href="http://www.najavonschmude.de/">friend</a> on Facebook mentioned a nice little naming problem I had not been aware of in years of computer science:</p>
<p>We are always drawing tree structures with the <em>root</em> on top, sometimes with the root on the left, but almost never with the root where it belongs (according to biologists) in a tree: at the <em>bottom</em>.</p>
<p>In a comment, a kind soul suggested viewing the usual top-down trees as Christmas trees, and thus naming the root &#8220;<em>star</em>&#8220;. Should I ever teach data structures again, I will use this one.</p>
<p>And the start of a tree drawn from left to right could be &#8230; the <em>source</em> (of a creek, a river).</p>
]]></content:encoded>
			<wfw:commentRss>http://devgrind.com/2010/05/04/trees-and-roots/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Javagötterdämmerung</title>
		<link>http://devgrind.com/2010/04/29/javagotterdammerung/</link>
		<comments>http://devgrind.com/2010/04/29/javagotterdammerung/#comments</comments>
		<pubDate>Thu, 29 Apr 2010 18:08:34 +0000</pubDate>
		<dc:creator>Christopher</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://devgrind.com/?p=119</guid>
		<description><![CDATA[James Gosling has left Sun.
And I hadn&#8217;t heard of it until now. Looks like I&#8217;m not such a geek after all.
But it shocked me just as much as when I heard that J.D. Salinger had died &#8211; it actually made my eyes well up &#8211; so I guess I am quite a geek.
When I wrote [...]]]></description>
			<content:encoded><![CDATA[<p>James Gosling <a href="http://www.javaworld.com/community/node/4259">has left Sun</a>.</p>
<p>And I hadn&#8217;t heard of it until now. Looks like I&#8217;m not such a geek after all.</p>
<p>But it shocked me just as much as when I heard that J.D. Salinger had died &#8211; it actually made my eyes well up &#8211; so I guess I <em>am</em> quite a geek.</p>
<p>When I wrote about <a href="/2007/03/13/the-departed/">the departure of other Java Gods</a>, I thought I was making a joke when I wondered how long James Gosling would remain at Sun. Now Guy Steele is the last man standing&#8230; but for how long?</p>
<p>Ever since the takeover by Oracle, I haven&#8217;t had a good feeling about the future of Java. IBM would have been a much better match. Oy vey&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://devgrind.com/2010/04/29/javagotterdammerung/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ruby Version Reminder</title>
		<link>http://devgrind.com/2010/02/22/ruby-version-reminder/</link>
		<comments>http://devgrind.com/2010/02/22/ruby-version-reminder/#comments</comments>
		<pubDate>Mon, 22 Feb 2010 18:40:16 +0000</pubDate>
		<dc:creator>Arne</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[shell]]></category>
		<category><![CDATA[unix]]></category>

		<guid isPermaLink="false">http://devgrind.com/?p=113</guid>
		<description><![CDATA[rvm is great, but I still sometimes lose track of which Ruby version I&#8217;m currently using. As a little reminder, I put the Ruby version in my shell prompt, like this:
PS1="\u `ruby -v &#124; grep -e "[0-9]\.[0-9]\.[0-9]" -o` \w"
Works nicely.
]]></description>
			<content:encoded><![CDATA[<p><a href="http://rvm.beginrescueend.com/">rvm</a> is great, but I still sometimes lose track of which Ruby version I&#8217;m currently using. As a little reminder, I put the Ruby version in my shell prompt, like this:</p>
<p><code>PS1="\u `ruby -v | grep -e "[0-9]\.[0-9]\.[0-9]" -o` \w"</code></p>
<p>Works nicely.</p>
]]></content:encoded>
			<wfw:commentRss>http://devgrind.com/2010/02/22/ruby-version-reminder/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hoccer</title>
		<link>http://devgrind.com/2009/09/03/hoccer/</link>
		<comments>http://devgrind.com/2009/09/03/hoccer/#comments</comments>
		<pubDate>Thu, 03 Sep 2009 21:01:54 +0000</pubDate>
		<dc:creator>Arne</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[app]]></category>
		<category><![CDATA[mobile]]></category>

		<guid isPermaLink="false">http://devgrind.com/?p=107</guid>
		<description><![CDATA[I use this posting for blatantly advertising one of the development projects I was recently involved in &#8211; an Android application called Hoccer. It was released by ART+COM Technologies as a free app on the Android Market and as entry for the 2nd Android Developer Challenge.
The aim of Hoccer is to simplify the process of [...]]]></description>
			<content:encoded><![CDATA[<p>I use this posting for blatantly advertising one of the development projects I was recently involved in &#8211; an Android application called <a href="http://hoccer.com">Hoccer</a>. It was <a href="http://tech.artcom.de/blog/?p=221">released by ART+COM Technologies</a> as a free app on the Android Market and as entry for the 2nd Android Developer Challenge.</p>
<p>The aim of Hoccer is to simplify the process of sharing data (currently pictures and contacts) between devices &#8211; you use certain gestures for one-to-one (tap) or one-to-many (throw/catch) to determine sender and receiver(s) and the data is transferred over the internet subsequently, so no other mechanism of pairing etc. is needed.</p>
<p><object width="560" height="340"><param name="movie" value="http://www.youtube.com/v/TC3Cts-Cdo8&#038;hl=de&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/TC3Cts-Cdo8&#038;hl=de&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="560" height="340"></embed></object></p>
<p>An iPhone version is currently under development, and there&#8217;s a <a href="http://www.hoccer.com/hoc.html">web client</a> to <i>hoc</i> data from a desktop computer to a mobile device, so no one&#8217;s left out.</p>
]]></content:encoded>
			<wfw:commentRss>http://devgrind.com/2009/09/03/hoccer/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Perl programmers are psychopaths</title>
		<link>http://devgrind.com/2009/02/17/perl-programmers-are-psychopaths/</link>
		<comments>http://devgrind.com/2009/02/17/perl-programmers-are-psychopaths/#comments</comments>
		<pubDate>Tue, 17 Feb 2009 19:28:21 +0000</pubDate>
		<dc:creator>Christopher</dc:creator>
				<category><![CDATA[geekery]]></category>
		<category><![CDATA[humor]]></category>
		<category><![CDATA[perl]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://devgrind.com/?p=83</guid>
		<description><![CDATA[I always suspected that anyone who likes to write Perl programs can&#8217;t be a healthy human being, but I didn&#8217;t know what evil, murderous psychopaths these people really are until I read this headline:
How to optionally kill a child and capture status if not killed
How could killing a child ever be optional? It&#8217;s illegal! It&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>I always suspected that anyone who likes to write Perl programs can&#8217;t be a healthy human being, but I didn&#8217;t know what evil, murderous psychopaths these people really are until I read this headline:</p>
<p><a href="http://www.perlmonks.org/?node_id=682903">How to optionally kill a child and capture status if not killed</a></p>
<p>How could killing a child ever be <em>optional</em>? It&#8217;s illegal! It&#8217;s disgusting!</p>
<p>We must not tolerate these criminals in our midst any longer. Now is the time to put an end to that <a href="http://www.perl.org">vicious disease</a> called <strong>Perl</strong>.</p>
]]></content:encoded>
			<wfw:commentRss>http://devgrind.com/2009/02/17/perl-programmers-are-psychopaths/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Innovative Telephone Scams</title>
		<link>http://devgrind.com/2009/02/15/innovative-telephone-scams/</link>
		<comments>http://devgrind.com/2009/02/15/innovative-telephone-scams/#comments</comments>
		<pubDate>Sun, 15 Feb 2009 19:43:33 +0000</pubDate>
		<dc:creator>Christopher</dc:creator>
				<category><![CDATA[blackhat]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[phone]]></category>
		<category><![CDATA[scams]]></category>

		<guid isPermaLink="false">http://devgrind.com/?p=72</guid>
		<description><![CDATA[There seems to be a new kind of scam, involving the telephone network: my sister (from her O2 mobile phone) called me (on my Alice fixed-line phone), but the Lithuanian premium-rate number 0037091005481 was displayed as caller ID &#8211; although we&#8217;re both in Germany! This has happened to dozens or probably hundreds of people in [...]]]></description>
			<content:encoded><![CDATA[<p>There seems to be a new kind of scam, involving the telephone network: my sister (from her <a href="http://de.wikipedia.org/wiki/Telef%C3%B3nica_O2_Germany">O<sub>2</sub></a> mobile phone) called me (on my <a href="http://de.wikipedia.org/wiki/HanseNet">Alice</a> fixed-line phone), but the <a href="http://en.wikipedia.org/wiki/Telephone_numbers_in_Lithuania">Lithuanian premium-rate number</a> 0037091005481 was displayed as caller ID &#8211; although we&#8217;re both in Germany! This has happened to dozens or probably hundreds of people in Germany in the last few weeks, apparently mostly to customers of O<sub>2</sub> and Alice.</p>
<p>Of course, phone scams have been around for a while, but they usually involve social rather than technical engineering. The twist in this one is that the scammers must have hacked some kind of telephone switches. I don&#8217;t know what hardware and software phone providers are using these days, but I think it&#8217;s safe to assume that it&#8217;s connected to the Internet, and it&#8217;s increasingly involving VoIP. It&#8217;s also interesting to note that <a href="http://www.computerwoche.de/knowledge_center/wireless/591962/">Alice cooperates with O<sub>2</sub> for its mobile services</a>. Integrating disparate systems can get messy &#8211; maybe a door was accidentally left open somewhere on the way?</p>
<p>Being curious, I called that mysterious number and heard the following recording:</p>
<blockquote><p>Thank you for calling pentowork [sic? the name was hard to understand] payment system, the most efficient internet based billing solution. To receive your unique PIN code, you are required to hold the line for thirty minutes.</p></blockquote>
<p>So the aim seems to be the same as in many other phone scams &#8211; get people to call an expensive number, and make them stay on the line for as long as possible. The three or four calls it took to correctly write down the recording cost me about €10, but I also got to enjoy some nice background music: <em>Comanche</em> from the Pulp Fiction Soundtrack and <em>Man on the Moon</em> by REM. I wonder what they selected for the remaining half hour&#8230;</p>
<p>More reports and speculation can be found at this <a href="http://whocallsme.com/Phone-Number.aspx/0037091005481">thread about the scam (in German)</a>, some of which involves the Lithuanian secret service, letters to Vladimir Putin, emails to the <a href="http://en.wikipedia.org/wiki/Federal_Network_Agency">Bundesnetzagentur</a> and the fact that 0037 was also the international calling code of <a href="http://en.wikipedia.org/wiki/East_Germany">East Germany</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://devgrind.com/2009/02/15/innovative-telephone-scams/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>&#8220;gem install mysql&#8221; on Debian</title>
		<link>http://devgrind.com/2009/02/07/gem-install-mysql-on-debian/</link>
		<comments>http://devgrind.com/2009/02/07/gem-install-mysql-on-debian/#comments</comments>
		<pubDate>Sat, 07 Feb 2009 21:55:03 +0000</pubDate>
		<dc:creator>Arne</dc:creator>
				<category><![CDATA[admin]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://devgrind.com/?p=66</guid>
		<description><![CDATA[Short note to myself and whom it my concern. If you try to sudo gem install mysql on a Debian system and it responds, after some working, with:

Building native extensions.  This could take a while...
ERROR:  Error installing mysql:
	ERROR: Failed to build gem native extension.
(...)
*** extconf.rb failed ***
Could not create Makefile due to some [...]]]></description>
			<content:encoded><![CDATA[<p>Short note to myself and whom it my concern. If you try to <code>sudo gem install mysql</code> on a Debian system and it responds, after some working, with:<br />
<code><br />
Building native extensions.  This could take a while...<br />
ERROR:  Error installing mysql:<br />
	ERROR: Failed to build gem native extension.<br />
(...)<br />
*** extconf.rb failed ***<br />
Could not create Makefile due to some reason, probably lack of<br />
necessary libraries and/or headers.  Check the mkmf.log file for more<br />
details.  You may need configuration options.<br />
(...)<br />
Gem files will remain installed in /usr/lib/ruby/gems/1.8/gems/mysql-2.7 for inspection.<br />
Results logged to /usr/lib/ruby/gems/1.8/gems/mysql-2.7/gem_make.out<br />
</code></p>
<p>then <a href="http://pemberthy.blogspot.com/2008/12/mysql-gem-on-debian.html">this</a> should be the solution for you: First you install libmysqlclient15-dev, which generates a <code>mysql_config</code> file, and the install the gem using the config.</p>
]]></content:encoded>
			<wfw:commentRss>http://devgrind.com/2009/02/07/gem-install-mysql-on-debian/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Keeping Up with Rails</title>
		<link>http://devgrind.com/2009/02/07/keeping-up-with-rails/</link>
		<comments>http://devgrind.com/2009/02/07/keeping-up-with-rails/#comments</comments>
		<pubDate>Sat, 07 Feb 2009 19:04:02 +0000</pubDate>
		<dc:creator>Arne</dc:creator>
				<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[wtf]]></category>

		<guid isPermaLink="false">http://devgrind.com/?p=63</guid>
		<description><![CDATA[I&#8217;m currently updating a not-so-small application from Rails 2.0.2 to 2.2.2 and it seems that about every other plugin is not compatible with the new version, because one or the other method was removed,  and I have to update them as well. Not such a big problem, if a compatible version exists, but takes quite [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m currently updating a not-so-small application from Rails 2.0.2 to 2.2.2 and it seems that about every other plugin is not compatible with the new version, because one or the other method was removed,  and I have to update them as well. Not such a big problem, if a compatible version exists, but takes quite some time, and I don&#8217;t understand that I have to go through this hassle (and <a href="devgrind.com/2008/04/03/use-quote_value-in-rails-2/">other hassles</a>) about everytime I update to a new Rails version. I don&#8217;t remember having this kind of trouble when I was working in Java Land. Can somebody explain?</p>
]]></content:encoded>
			<wfw:commentRss>http://devgrind.com/2009/02/07/keeping-up-with-rails/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Developer Frustrations</title>
		<link>http://devgrind.com/2009/02/04/developer-frustrations/</link>
		<comments>http://devgrind.com/2009/02/04/developer-frustrations/#comments</comments>
		<pubDate>Wed, 04 Feb 2009 12:42:29 +0000</pubDate>
		<dc:creator>Magnus</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[testing]]></category>

		<guid isPermaLink="false">http://devgrind.com/?p=60</guid>
		<description><![CDATA[I need unit tests for my unit tests testing whether the unit tests do correct tests or not. And a decent TestNG documentation.
]]></description>
			<content:encoded><![CDATA[<p>I need unit tests for my unit tests testing whether the unit tests do correct tests or not. And a decent TestNG documentation.</p>
]]></content:encoded>
			<wfw:commentRss>http://devgrind.com/2009/02/04/developer-frustrations/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Developer Frustrations</title>
		<link>http://devgrind.com/2009/01/22/developers-frustrations/</link>
		<comments>http://devgrind.com/2009/01/22/developers-frustrations/#comments</comments>
		<pubDate>Thu, 22 Jan 2009 11:59:38 +0000</pubDate>
		<dc:creator>Magnus</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[humor]]></category>

		<guid isPermaLink="false">http://devgrind.com/?p=58</guid>
		<description><![CDATA[Constructing software surely is satisfying work. But these days I dream of constructing airships. What if you could actually see the product of your very own hands, climb into it, loose the tag lines and fly away?
]]></description>
			<content:encoded><![CDATA[<p>Constructing software surely is satisfying work. But these days I dream of constructing airships. What if you could actually see the product of your very own hands, climb into it, loose the tag lines and fly away?</p>
]]></content:encoded>
			<wfw:commentRss>http://devgrind.com/2009/01/22/developers-frustrations/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
