<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

	<channel>
		<title>Alfonso Jimenez</title>
		<link>http://www.alfonsojimenez.com</link>
		<description>
			Weblog colectivo dedicado a la actualidad relacionada con
			los gadgets y los dispositivos y cacharros más novedosos.
		</description>
		<pubDate>Wed, 11 Nov 2009 04:05:16 +0000</pubDate>

		<generator>http://www.alfonsojimenez.com</generator>
                    <image><url>http://www.alfonsojimenez.com/images/2006/12/nuevodiseno.png</url></image><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/alfonsojimenez" type="application/rss+xml" /><feedburner:emailServiceId>alfonsojimenez</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item>
      <title><![CDATA[The Ibracadabra Show starts]]></title>
      <link>http://feedproxy.google.com/~r/alfonsojimenez/~3/-Ww7UJe5ilc/the-ibracadabra-show-starts</link>
      <guid isPermaLink="false">http://www.alfonsojimenez.com/football/the-ibracadabra-show-starts</guid>
      <pubDate>Mon, 27 Jul 2009 18:10:03 +0000</pubDate>

      <author>alfonso</author>
      <description>&lt;p&gt;&lt;img src="http://img.alfonsojimenez.com/2009/07/ibrahimovic_barcelona.jpg" alt="Zlatan Ibrahimovic - FC Barcelona - Barça" /&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/alfonsojimenez/~4/-Ww7UJe5ilc" height="1" width="1"/&gt;</description>
      <feedburner:origLink>http://www.alfonsojimenez.com/football/the-ibracadabra-show-starts</feedburner:origLink></item>
                    <item>
      <title><![CDATA[How should a microblog search engine be?]]></title>
      <link>http://feedproxy.google.com/~r/alfonsojimenez/~3/N6A8NZk-FSs/how-should-a-microblog-search-engine-be</link>
      <guid isPermaLink="false">http://www.alfonsojimenez.com/internet/how-should-a-microblog-search-engine-be</guid>
      <pubDate>Wed, 15 Jul 2009 16:24:36 +0000</pubDate>

      <author>alfonso</author>
      <description>&lt;p&gt;&lt;img src="http://img.alfonsojimenez.com/2009/07/search_lens.png" class="derecha_sinmarco" alt="Lens" /&gt;Lately people have been talking too much about searches on microblogging services. It&amp;#8217;s been said that even &lt;strong&gt;Google&lt;/strong&gt; is launching a new microblog search engine in the next few months. Some services exist already such as &lt;a href="http://www.twingly.com" rel="nofollow"&gt;Twingly&lt;/a&gt; or &lt;a href="http://search.twitter.com"&gt;Twitter Search&lt;/a&gt; (&lt;em&gt;Summize&lt;/em&gt;), but none of them answer my queries as I would like. As a normal user, I would insert into a microblog search engine two type of queries: &lt;strong&gt;What&amp;#8217;s happening right now?&lt;/strong&gt; or &lt;strong&gt;What&amp;#8217;s being said about ____ at the moment?&lt;/strong&gt;, since it doesn&amp;#8217;t make sense to look for information about the capital of Zimbabwe or if I want to know everything about a certain family of birds. It may be possible to &lt;em&gt;guess&lt;/em&gt; one of these questions using a microblog search service, but I would use a classic search engine though.&lt;/p&gt;

	&lt;p&gt;Imagine that you&amp;#8217;re a frustated Manchester United fan and you want to know what&amp;#8217;s going on regarding your favourite football team. So you go to &lt;em&gt;Twitter Search&lt;/em&gt; and look for the terms &amp;#8220;Manchester United&amp;#8221;. The results will leave you stunned because of the multiple kind of information found. Despite receiving hundreds of results each minute, 90% of the found messages are crap. You&amp;#8217;ll get lots of duplicated messages, &lt;em&gt;spam&lt;/em&gt; from the media Twitter accounts using &lt;em&gt;twitterfeed&lt;/em&gt;, messages written in languages that you probably don&amp;#8217;t understand (Chinese, Spanish, Italian, Arabic, ...), messages written by &lt;em&gt;&amp;#8220;irrelevant&amp;#8221;&lt;/em&gt; users and so so so much crap.&lt;/p&gt;

	&lt;p&gt;How should a microblog search engine be? Are we retrieving &lt;strong&gt;useful information&lt;/strong&gt; from these kind of sources?&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/alfonsojimenez/~4/N6A8NZk-FSs" height="1" width="1"/&gt;</description>
      <feedburner:origLink>http://www.alfonsojimenez.com/internet/how-should-a-microblog-search-engine-be</feedburner:origLink></item>
                    <item>
      <title><![CDATA[Made in Heaven]]></title>
      <link>http://feedproxy.google.com/~r/alfonsojimenez/~3/gZa1UYps9hY/made-in-heaven</link>
      <guid isPermaLink="false">http://www.alfonsojimenez.com/football/made-in-heaven</guid>
      <pubDate>Mon, 01 Jun 2009 07:28:29 +0000</pubDate>

      <author>alfonso</author>
      <description>&lt;p&gt;&lt;img src="http://img.alfonsojimenez.com/2009/06/josep-guardiola-dios.jpg" alt="Josep Guardiola - Portada de El Periódico de Catalunya" class="centro" /&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/alfonsojimenez/~4/gZa1UYps9hY" height="1" width="1"/&gt;</description>
      <feedburner:origLink>http://www.alfonsojimenez.com/football/made-in-heaven</feedburner:origLink></item>
                    <item>
      <title><![CDATA[The dessert]]></title>
      <link>http://feedproxy.google.com/~r/alfonsojimenez/~3/mzAX2jCHxK4/the-dessert</link>
      <guid isPermaLink="false">http://www.alfonsojimenez.com/football/the-dessert</guid>
      <pubDate>Wed, 27 May 2009 20:30:47 +0000</pubDate>

      <author>alfonso</author>
      <description>&lt;p&gt;&lt;img src="http://img.alfonsojimenez.com/2009/05/barcelona-manchester-final.jpg" class="centro" alt="FC Barcelona vs Manchester United - Champions League Final : Messi, Iniesta and Henry" /&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/alfonsojimenez/~4/mzAX2jCHxK4" height="1" width="1"/&gt;</description>
      <feedburner:origLink>http://www.alfonsojimenez.com/football/the-dessert</feedburner:origLink></item>
                    <item>
      <title><![CDATA[The main course]]></title>
      <link>http://feedproxy.google.com/~r/alfonsojimenez/~3/NZ86zyo8RZ4/the-main-course</link>
      <guid isPermaLink="false">http://www.alfonsojimenez.com/football/the-main-course</guid>
      <pubDate>Sat, 23 May 2009 20:30:22 +0000</pubDate>

      <author>alfonso</author>
      <description>&lt;p&gt;&lt;img src="http://img.alfonsojimenez.com/2009/05/main_course_barcelona.jpg" class="centro" alt="Liga 2008/2009 FC Barcelona - Barça" /&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/alfonsojimenez/~4/NZ86zyo8RZ4" height="1" width="1"/&gt;</description>
      <feedburner:origLink>http://www.alfonsojimenez.com/football/the-main-course</feedburner:origLink></item>
                    <item>
      <title><![CDATA[The starter]]></title>
      <link>http://feedproxy.google.com/~r/alfonsojimenez/~3/t80d4uo-gOE/the-starter</link>
      <guid isPermaLink="false">http://www.alfonsojimenez.com/football/the-starter</guid>
      <pubDate>Wed, 13 May 2009 20:33:40 +0000</pubDate>

      <author>alfonso</author>
      <description>&lt;p&gt;&lt;img src="http://img.alfonsojimenez.com/2009/05/copa-del-rey.jpg" alt="Copa del Rey" class="centro" /&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/alfonsojimenez/~4/t80d4uo-gOE" height="1" width="1"/&gt;</description>
      <feedburner:origLink>http://www.alfonsojimenez.com/football/the-starter</feedburner:origLink></item>
                    <item>
      <title><![CDATA[Rome, here we go]]></title>
      <link>http://feedproxy.google.com/~r/alfonsojimenez/~3/SfvP_OENIac/rome-here-we-go</link>
      <guid isPermaLink="false">http://www.alfonsojimenez.com/football/rome-here-we-go</guid>
      <pubDate>Wed, 06 May 2009 20:14:44 +0000</pubDate>

      <author>alfonso</author>
      <description>&lt;p&gt;&lt;img src="http://img.alfonsojimenez.com/2009/05/sweet-iniesta.jpg" class="centro" /&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/alfonsojimenez/~4/SfvP_OENIac" height="1" width="1"/&gt;</description>
      <feedburner:origLink>http://www.alfonsojimenez.com/football/rome-here-we-go</feedburner:origLink></item>
                    <item>
      <title><![CDATA[This is a chorreo]]></title>
      <link>http://feedproxy.google.com/~r/alfonsojimenez/~3/ZzWhyQF8byc/this-is-a-chorreo</link>
      <guid isPermaLink="false">http://www.alfonsojimenez.com/football/this-is-a-chorreo</guid>
      <pubDate>Sat, 02 May 2009 20:43:11 +0000</pubDate>

      <author>alfonso</author>
      <description>&lt;p&gt;&lt;img src="http://img.alfonsojimenez.com/2009/05/chorreo.jpg" alt="Chorreo Madrid Barcelona" class="centro" /&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/alfonsojimenez/~4/ZzWhyQF8byc" height="1" width="1"/&gt;</description>
      <feedburner:origLink>http://www.alfonsojimenez.com/football/this-is-a-chorreo</feedburner:origLink></item>
                    <item>
      <title><![CDATA[phpredis, 2 Fast 2 Furious]]></title>
      <link>http://feedproxy.google.com/~r/alfonsojimenez/~3/iB4GExEhmkE/phpredis-2-fast-2-furious</link>
      <guid isPermaLink="false">http://www.alfonsojimenez.com/computers/phpredis-2-fast-2-furious</guid>
      <pubDate>Tue, 21 Apr 2009 08:00:01 +0000</pubDate>

      <author>alfonso</author>
      <description>&lt;p&gt;&lt;img src="http://img.alfonsojimenez.com/2009/04/redis.jpg" class="derecha_sinmarco" alt="phpredis" /&gt;&lt;strong&gt;Redis&lt;/strong&gt; (REmote DIctionary Server) is a persistent key-value database with built-in net interface written in &lt;span class="caps"&gt;ANSI-C&lt;/span&gt; for Posix systems. Whilst it may at first seem like the wheel is being reinvented here, the need for something beyond a simple key-value database is pretty clear. It&amp;#8217;s possible to use &lt;strong&gt;Redis&lt;/strong&gt; like a replacement of &lt;strong&gt;memcached&lt;/strong&gt;, with the main difference being the dataset is stored persistently &amp;#8211; not volatile data &amp;#8211; and &lt;strong&gt;Redis&lt;/strong&gt; introduces new data structures such as &lt;strong&gt;list&lt;/strong&gt; and &lt;strong&gt;sets&lt;/strong&gt;. Furthermore, it implements atomic operations in order to interoperate with these data structures.&lt;/p&gt;

	&lt;p&gt;I released a &lt;strong&gt;&lt;span class="caps"&gt;PHP&lt;/span&gt; extension&lt;/strong&gt; called &lt;a href="http://code.google.com/p/phpredis/" title="phpredis - PHP Extension for Redis"&gt;phpredis&lt;/a&gt; a couple of weeks ago, which works as a &lt;span class="caps"&gt;PHP&lt;/span&gt; client &lt;span class="caps"&gt;API&lt;/span&gt; for &lt;strong&gt;Redis&lt;/strong&gt;. The project is hosted at Google Code at the moment, and you can get the code directly from the &lt;span class="caps"&gt;SVN&lt;/span&gt; repository: &lt;a href="http://phpredis.googlecode.com/svn/trunk/" title="phpredis"&gt;http://phpredis.googlecode.com/svn/trunk/&lt;/a&gt;.&lt;/p&gt;

	&lt;p&gt;Despite a &lt;em&gt;vanilla&lt;/em&gt; &lt;span class="caps"&gt;PHP&lt;/span&gt; client library already exists, I felt the need to write it since a &lt;span class="caps"&gt;PHP&lt;/span&gt; extension normally performs better and I wanted to make the most of &lt;strong&gt;Redis&lt;/strong&gt; potential.&lt;/p&gt;

	&lt;p&gt;Let&amp;#8217;s see a snippet of how to make a simple operation to &lt;strong&gt;Redis&lt;/strong&gt; using the &lt;span class="caps"&gt;PHP&lt;/span&gt; client:&lt;/p&gt;

	&lt;p&gt;&lt;pre class="sh_php"&gt;
    $redis = new Redis();
    $redis-&gt;connect(&amp;#8216;127.0.0.1&amp;#8217;, 6379);&lt;/p&gt;

    $redis-&gt;set(&amp;#8216;key&amp;#8217;, 27);

    echo $redis-&gt;get(&amp;#8216;key&amp;#8217;); // it should print 27

    $redis-&gt;incrby(&amp;#8216;key&amp;#8217;, 3);

    echo $redis-&gt;get(&amp;#8216;key&amp;#8217;); // it should print 30
&lt;/pre&gt;

	&lt;p&gt;The code above was quite obvious, it stored a value associate to &lt;em&gt;key&lt;/em&gt; and it increments its value by 3. Let&amp;#8217;s see another snippet a bit more complex, for example using a &lt;em&gt;list&lt;/em&gt;:&lt;/p&gt;

	&lt;p&gt;&lt;pre class="sh_php"&gt;
    $redis = new Redis();
    $redis-&gt;connect(&amp;#8216;127.0.0.1&amp;#8217;, 6379);&lt;/p&gt;

    $redis-&gt;lPush(&amp;#8216;list&amp;#8217;, &amp;#8216;val&amp;#8217;);
    $redis-&gt;lPush(&amp;#8216;list&amp;#8217;, &amp;#8216;val2&amp;#8217;);
    $redis-&gt;lPush(&amp;#8216;list&amp;#8217;, &amp;#8216;val3&amp;#8217;, 1);

    echo $redis-&gt;lPop(&amp;#8216;list&amp;#8217;, 1); // it should print val3
    echo $redis-&gt;lPop(&amp;#8216;list&amp;#8217;); // it should print val2   
    echo $this-&gt;lPop(&amp;#8216;list&amp;#8217;); //it should print val 
&lt;/pre&gt;

	&lt;p&gt;Notice that depending on the last optional parameter (0 by default) it&amp;#8217;s possible to append/extract an element to/from the tail or to/from the head of the list.&lt;/p&gt;

	&lt;p&gt;There is a list including all the &lt;a href="http://code.google.com/p/phpredis/wiki/referencemethods"&gt;available methods&lt;/a&gt;. At the moment, I&amp;#8217;m working on the implementation of more new Redis commands and on the support for complex data structures such as arrays and &lt;span class="caps"&gt;PHP&lt;/span&gt; objects.&lt;/p&gt;

	&lt;p&gt;Apart from &lt;strong&gt;phpredis&lt;/strong&gt;, there are more client &lt;span class="caps"&gt;API&lt;/span&gt; for languages as Perl, Python, Ruby and Erlang. You can find this and more at the &lt;a href="http://code.google.com/p/redis/" title="Redis Database"&gt;Redis project homepage&lt;/a&gt;. Redis has been written by Salvatore Sanfilippo who I&amp;#8217;m chuffed to bits with.&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/alfonsojimenez/~4/iB4GExEhmkE" height="1" width="1"/&gt;</description>
      <feedburner:origLink>http://www.alfonsojimenez.com/computers/phpredis-2-fast-2-furious</feedburner:origLink></item>
                    <item>
      <title><![CDATA[Essential Java resources]]></title>
      <link>http://feedproxy.google.com/~r/alfonsojimenez/~3/3jVreD6Cti4/essential-java-resources</link>
      <guid isPermaLink="false">http://www.alfonsojimenez.com/computers/essential-java-resources</guid>
      <pubDate>Tue, 27 Jan 2009 08:40:26 +0000</pubDate>

      <author>alfonso</author>
      <description>&lt;p&gt;&lt;strong&gt;Ted Neward&lt;/strong&gt;, a consultant with &lt;em&gt;ThoughtWorks&lt;/em&gt; and the principal of &lt;em&gt;Neward &amp;#038; Associates&lt;/em&gt;, has published a &lt;a href="http://www.ibm.com/developerworks/java/library/j-javaresources.html" title="Essential Java resources"&gt;list&lt;/a&gt; of libraries, tools and other resources - such as books, conferences or weblogs - any up-and-coming Java developer should have. The &lt;strong&gt;Java platform&lt;/strong&gt; will be celebrating its 14th birthday soon, and it&amp;#8217;s time to revise the story of one of most &lt;a href="http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html" rel="nofollow"&gt;extended languages&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://img.alfonsojimenez.com/2009/01/coffee.jpg" class="centro" alt="Java Coffee" /&gt;&lt;/p&gt;
&lt;p&gt;Link | &lt;a href="http://www.ibm.com/developerworks/java/library/j-javaresources.html" title="Essential Java resources"&gt;Essential Java resources&lt;/a&gt;
&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/alfonsojimenez/~4/3jVreD6Cti4" height="1" width="1"/&gt;</description>
      <feedburner:origLink>http://www.alfonsojimenez.com/computers/essential-java-resources</feedburner:origLink></item>
        	  
	</channel>

</rss>
