<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title></title>
	<atom:link href="http://linil.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://linil.wordpress.com</link>
	<description></description>
	<lastBuildDate>Thu, 11 Aug 2011 20:38:44 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='linil.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title></title>
		<link>http://linil.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://linil.wordpress.com/osd.xml" title="" />
	<atom:link rel='hub' href='http://linil.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Proxy Pattern &#8211; Java e Python</title>
		<link>http://linil.wordpress.com/2010/08/23/proxy-pattern-java-e-python/</link>
		<comments>http://linil.wordpress.com/2010/08/23/proxy-pattern-java-e-python/#comments</comments>
		<pubDate>Mon, 23 Aug 2010 16:43:52 +0000</pubDate>
		<dc:creator>fenrrir</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://linil.wordpress.com/?p=262</guid>
		<description><![CDATA[Recentemente venho dedicando boa parte do meu tempo na implementação da minha dissertação de mestrado. O meu trabalho consiste em modelar/desenvolver um middleware para redes de sensores sem fio. Apesar de ser um pythonista de carteirinha não consegui achar nenhuma plataforma de sensores baseadas em python então a minha escolha para o mestrado ficou com [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=linil.wordpress.com&amp;blog=2521259&amp;post=262&amp;subd=linil&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:justify;">Recentemente venho dedicando boa parte do meu tempo na implementação da minha dissertação de mestrado. O meu trabalho consiste em modelar/desenvolver um middleware para redes de sensores sem fio. Apesar de ser um pythonista de carteirinha não consegui achar nenhuma plataforma de sensores baseadas em python então a minha escolha para o mestrado ficou com o <a title="SunSPOTWorld" href="http://www.sunspotworld.com" target="_blank">SunSPOT</a>. Para os desavisados, o SunSPOT trabalha com j2me. Dessa forma, precisei deixar o python de lado e voltar a programar em &#8220;Java&#8221;.</p>
<p style="text-align:justify;">O middleware que venho implementando tem como principal requisito ser extremamente flexível. O objetivo é tornar o middleware bastante customizável, permitindo que os interessados possam modificá-lo. Além disso, outra característica dele é permitir a troca on-the-fly de alguns componentes visando atender os requisitos da aplicação. No intuito de solucionar o problema da troca de componentes uma das escolhas realizadas foi a de utilizar o <a href="http://en.wikipedia.org/wiki/Proxy_pattern" target="_blank">padrão proxy</a>. Quando um componente é solicitado como requisito de outro componente, o middleware entrega um proxy para a  implementação real, assim um componente sempre tem uma referência opaca ao componente. Através da utilização de proxies, o middleware pode realizar a troca de componentes ajustando apenas a referencia do proxy e todos os objetos que fazem uso dele terão a referência ao novo componente automaticamente. Assim, o uso do padrão ajuda a controlar as referências para um determinado componente que precisa ser trocado.</p>
<p style="text-align:justify;">No entanto, um &#8220;problema&#8221; da abordagem adotada é que eu necessito implementar um novo proxy para cada interface dos componentes. O middleware em questão possui vários componentes que podem ser modificados de acordo com a escolha da aplicação, por exemplo, gestores de bateria, roteamento e etc. Nesse cenário, para cada componente que é permitido a troca, é necessário ao programador desenvolver pelo menos 3 classes/interfaces. A interface do componente, a implementação real e o proxy.</p>
<p style="text-align:justify;">Olhando a definição do padrão contida na wikipedia isso fica mais claro ao leitor. Podemos ver a definição da interface, da implementação real e do proxy.</p>
<pre class="brush: java;">
import java.util.*;

interface Image {
    public void displayImage();
}

class RealImage implements Image {
    private String filename;
    public RealImage(String filename) {
        this.filename = filename;
        loadImageFromDisk();
    }

    private void loadImageFromDisk() {
        System.out.println(&quot;Loading   &quot; + filename);
    }

    public void displayImage() {
        System.out.println(&quot;Displaying &quot; + filename);
    }
}

class ProxyImage implements Image {
    private String filename;
    private Image image;

    public ProxyImage(String filename) {
        this.filename = filename;
    }
    public void displayImage() {
        if (image == null)
        {
           image = new RealImage(filename);
        }
        image.displayImage();
    }
}
</pre>
<p style="text-align:justify;">Agora imagine que você tenha umas 15 interfaces para fazer isso ? Começa a ficar tedioso. Esse é o tipo de código em que um proxy em si não é código duplicado mas sua lógica sim, eles fazem sempre a mesma coisa, possuem uma referência ao objeto real e delegam todos os seus métodos para o objeto. Atualmente as IDEs for Java já permitem gerar esse tipo de código automaticamente, o que me facilitou muito o trabalho. Inicialmente eu passei mais tempo pedindo ao netbeans para produzir código do que de fato programando. Porém, apesar da IDE gerar o código, a sua manutenção ainda fica por conta do programador. O que acontece quando um método novo entra na interface? Outro precisa ser renomeado? Mudança de parâmetros e etc. Todos nós sabemos, mudanças na interface afetam todas as implementações, nesse caso os proxies também.</p>
<p style="text-align:justify;">Como programador Python, pensei desde o princípio: &#8220;esse é o tipo de código que pode ser feito de forma muito mais inteligente em Python do que me Java&#8221;. Em Python eu posso definir um único proxy para todas as interfaces. Ou seja, onde eu teria 15, 20 implementações eu passo a ter só uma. Isso é redução de código válida, não estamos falando de one-liners. Dessa forma é menos código para manter, um único ponto para consertar, refatorar, testar. Quanta mágica se precisa para definir esse proxy genérico em Python?</p>
<pre class="brush: python;">
class Proxy(object):
    def __init__(self, obj):
        self.obj = obj
    def __getattr__(self, attr):
        return getattr(self.obj, attr)
</pre>
<p style="text-align:justify;">Pronto, ai está nosso &#8220;incrível&#8221; &#8220;super&#8221; proxy. Isso teria me poupado mais de uma centena de linhas de código. Como esse código funciona? Simples, em python nós temos um método, denominado de __getattr__, o qual é invocado quando não é encontrado um determinado atributo na instância. O nosso Proxy implementa o __getattr__ na linha 4, e na 5 nós definimos que quando um atributo não for encontrado dentro do proxy deve ser procurado na referência que o mesmo detém. Pequeno e elegante. Outro detalhe é que não estamos amarrados a nenhuma interface e não precisamos escrever vários métodos apenas delegando tarefas.</p>
<p style="text-align:justify;">Os programadores rails vão achar semelhante ao method_missing do ruby. A idéia é a mesma, porém funciona também para atributos. Não sei dizer se ruby possui isso para acesso a atributos também, acredito que sim.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/linil.wordpress.com/262/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/linil.wordpress.com/262/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/linil.wordpress.com/262/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/linil.wordpress.com/262/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/linil.wordpress.com/262/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/linil.wordpress.com/262/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/linil.wordpress.com/262/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/linil.wordpress.com/262/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/linil.wordpress.com/262/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/linil.wordpress.com/262/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/linil.wordpress.com/262/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/linil.wordpress.com/262/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/linil.wordpress.com/262/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/linil.wordpress.com/262/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=linil.wordpress.com&amp;blog=2521259&amp;post=262&amp;subd=linil&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://linil.wordpress.com/2010/08/23/proxy-pattern-java-e-python/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">fenrrir</media:title>
		</media:content>
	</item>
		<item>
		<title>Will Twitter kill RSS?</title>
		<link>http://linil.wordpress.com/2009/05/22/will-twitter-kill-rss/</link>
		<comments>http://linil.wordpress.com/2009/05/22/will-twitter-kill-rss/#comments</comments>
		<pubDate>Fri, 22 May 2009 03:04:53 +0000</pubDate>
		<dc:creator>Rodrigo Araujo</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://linil.wordpress.com/?p=248</guid>
		<description><![CDATA[The hype around Twitter has been growing enormously on the last weeks. Here in Brazil, writers from all around the web are writing and blogging about it everywhere. Almost everyone has a little blue bird on their blog side bar saying &#8220;follow me&#8221;. Many bloggers and news corp have been using Twitter to broadcast news, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=linil.wordpress.com&amp;blog=2521259&amp;post=248&amp;subd=linil&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-250" title="Twitter" src="http://linil.files.wordpress.com/2009/05/icon_c.png?w=128&#038;h=128" alt="Twitter" width="128" height="128" /></p>
<p>The hype around <a href="http://www.twitter.com">Twitter</a> has been growing enormously on the last weeks. Here in Brazil, writers from all around the web are <a href="http://oglobo.globo.com/tecnologia/mat/2009/05/21/o-twitter-esta-deixando-google-para-tras-afirma-larry-page-755965318.asp">writing</a> and <a href="http://tecnologia.terra.com.br/galerias/0,,EI4795-OI100956,00.html">blogging</a> about it everywhere. Almost everyone has a little blue bird on their blog side bar saying &#8220;follow me&#8221;.</p>
<p>Many <a href="http://twitter.com/smashingmag">bloggers</a> and <a href="http://twitter.com/cnn">news corp</a> have been using Twitter to broadcast news, which is very similar to what <a href="http://www.commoncraft.com/rss_plain_english">RSS already does</a>. Check it out:</p>
<p>The <span style="color:#0000ff;">Twitter </span>way</p>
<ol>
<li>Blogger writes a new post;</li>
<li>Blogger tweets about it and adds a tyniurl link to the post;</li>
<li>Followers receive and read the tweet;</li>
<li>If it&#8217;s interesting, they acess it.</li>
</ol>
<p>The <span style="color:#ff6600;">RSS </span>way</p>
<ol>
<li>Blogger writes a new post;</li>
<li>The post is automatically included on the blog RSS, <strong>no twitting needed</strong>;</li>
<li>Signer accesses his <a href="http://www.google.com/reader">RSS reader</a> and gets the whole post, <strong>no clicking needed</strong>.</li>
</ol>
<p>As I see it, to share news, RSS is simpler. No twitting nor clicking around.</p>
<p>So, why use Twitter then?</p>
<p>First of all, I don&#8217;t. I have an account, but rarely visit it. But, after reading and discussing a lot about it, I found out 2 interesting ways, one of which led to the recent hype.</p>
<ul>
<li><a href="http://www.readwriteweb.com/archives/larry_page_on_real_time_google_we_have_to_do_it.php">Real time search</a>. Using Twitter, everyone has access to everyone&#8217;s opinions about everything. It&#8217;s a soup of ideas about any topic you might imagine, and whenever new topics arise, people twitt about them. So, using tools like <a href="http://search.twitter.com/">twitter search</a>, it&#8217;s possible to learn what people are saying right now about some interesting topic. It&#8217;s unprecedent. And that&#8217;s why Sergei Brin and Larry Page are saying Twitter is ahead of Google on it.</li>
<li>Sharing comments. RSS exists to <strong>share news</strong>. Besides <a href="http://googlereader.blogspot.com/2009/03/google-reader-is-your-new-watercooler.html">Google Reader recent advances on comment</a> and <a href="http://googlereader.blogspot.com/2009/05/life-is-great-bundle-of-little-things.html">sharing</a>, RSS was not meant for it. Twitter wasn&#8217; t also, but it does the job very efficiently. Whenever someone shares a link on twitter, they add a comment to it. They show their opinions to the world. So, you subscribe to a blog when you notice that blogger posts interesting stuff and you should follow someons when you see that someone posts interesting links and opinions.</li>
</ul>
<p>Thinking about it, using twitter to share comments and news could <a href="www.techcrunchit.com/2009/05/05/rest-in-peace-rss/">kill RSS</a> because people would only read news shared by their friends whom they trust. But, where would their friends find the news? From other twitts? It&#8217;s easy to see that this recursion would lead either to a news corp or blog twitt or to a RSS feed. So, the initial &#8220;sharers&#8221; will have to find the news somewhere and, as said, the best way is through rss.</p>
<p>So, calm down, RSS won&#8217;t die.</p>
<p><img class="aligncenter size-full wp-image-253" title="RSS" src="http://linil.files.wordpress.com/2009/05/rss_two.png?w=128&#038;h=128" alt="RSS" width="128" height="128" /></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/linil.wordpress.com/248/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/linil.wordpress.com/248/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/linil.wordpress.com/248/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/linil.wordpress.com/248/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/linil.wordpress.com/248/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/linil.wordpress.com/248/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/linil.wordpress.com/248/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/linil.wordpress.com/248/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/linil.wordpress.com/248/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/linil.wordpress.com/248/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/linil.wordpress.com/248/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/linil.wordpress.com/248/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/linil.wordpress.com/248/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/linil.wordpress.com/248/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=linil.wordpress.com&amp;blog=2521259&amp;post=248&amp;subd=linil&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://linil.wordpress.com/2009/05/22/will-twitter-kill-rss/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Rodrigo Moreira Araujo</media:title>
		</media:content>

		<media:content url="http://linil.files.wordpress.com/2009/05/icon_c.png" medium="image">
			<media:title type="html">Twitter</media:title>
		</media:content>

		<media:content url="http://linil.files.wordpress.com/2009/05/rss_two.png" medium="image">
			<media:title type="html">RSS</media:title>
		</media:content>
	</item>
		<item>
		<title>Mozilla Labs Bespin</title>
		<link>http://linil.wordpress.com/2009/02/25/mozilla-labs-bespin/</link>
		<comments>http://linil.wordpress.com/2009/02/25/mozilla-labs-bespin/#comments</comments>
		<pubDate>Wed, 25 Feb 2009 21:07:10 +0000</pubDate>
		<dc:creator>Rodrigo Araujo</dc:creator>
				<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://linil.wordpress.com/?p=246</guid>
		<description><![CDATA[A couple weeks ago, Magnun and I were trying to implement a new feature for CairoPlot 2.0, which will be called Series. At the time, we decided to create a draft of what we were doing before actually coding and versioning it. Both of us were stunned to find that an online colaborative programming ide [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=linil.wordpress.com&amp;blog=2521259&amp;post=246&amp;subd=linil&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter" src="http://labs.mozilla.com/uploads/2009/02/webkit-editor-medium.png" alt="" width="480" height="360" /></p>
<p>A couple weeks ago, <a href="http://under-linux.org/blogs/magnun/">Magnun</a> and I were trying to implement a new feature for CairoPlot 2.0, which will be called Series. At the time, we decided to create a draft of what we were doing before actually coding and versioning it.</p>
<p>Both of us were stunned to find that an online colaborative programming ide didn&#8217;t exist. So we opted for <a href="http://www.google.com/docs">Google Docs</a> which filled the gap but not without some problems (as no syntax highlight).</p>
<p>Today, Magnun just told me about the <a href="http://labs.mozilla.com/projects/bespin/">Mozilla Labs Bespin</a> which aims to be exactly what I said before: an online colaborative programming ide right inside your browser. Check out the project <a>link</a> to see what has already been done.</p>
<p>I do hope these guys keep going with this, the interface looks great and their idea of reinventing the wheel (as they did for the scrollbars and text input areas) is not bad as they do it for great <a href="http://www.codinghorror.com/blog/archives/001145.html">optimization</a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/linil.wordpress.com/246/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/linil.wordpress.com/246/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/linil.wordpress.com/246/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/linil.wordpress.com/246/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/linil.wordpress.com/246/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/linil.wordpress.com/246/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/linil.wordpress.com/246/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/linil.wordpress.com/246/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/linil.wordpress.com/246/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/linil.wordpress.com/246/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/linil.wordpress.com/246/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/linil.wordpress.com/246/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/linil.wordpress.com/246/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/linil.wordpress.com/246/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=linil.wordpress.com&amp;blog=2521259&amp;post=246&amp;subd=linil&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://linil.wordpress.com/2009/02/25/mozilla-labs-bespin/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Rodrigo Moreira Araujo</media:title>
		</media:content>

		<media:content url="http://labs.mozilla.com/uploads/2009/02/webkit-editor-medium.png" medium="image" />
	</item>
		<item>
		<title>Code Complete 2</title>
		<link>http://linil.wordpress.com/2009/02/18/code-complete-2/</link>
		<comments>http://linil.wordpress.com/2009/02/18/code-complete-2/#comments</comments>
		<pubDate>Wed, 18 Feb 2009 00:43:40 +0000</pubDate>
		<dc:creator>Rodrigo Araujo</dc:creator>
				<category><![CDATA[Book]]></category>

		<guid isPermaLink="false">http://linil.wordpress.com/?p=242</guid>
		<description><![CDATA[Yeah, I finally gave up and decided to follow StackOverFlow users and Jeff Atwood advices and started to read Code Complete 2. From the very first chapter, I&#8217;m starting to get why so much people love this book: Software construction is the central activity in software development; construction is the only activity that’s guaranteed to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=linil.wordpress.com&amp;blog=2521259&amp;post=242&amp;subd=linil&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter" src="http://www.codinghorror.com/images/0735619670.01._PE32_PI_SCMZZZZZZZ_.jpg" alt="" /></p>
<p>Yeah, I finally gave up and decided to follow <a href="http://stackoverflow.com/questions/1711/what-is-the-single-most-influential-book-every-programmer-should-read/1713#1713">StackOverFlow users</a> and <a href="http://www.codinghorror.com/blog/archives/000020.html">Jeff Atwood</a> advices and started to read <a href="http://www.amazon.com/Code-Complete-Second-Steve-McConnell/dp/0735619670/sr=1-1/qid=1169499581?ie=UTF8&amp;s=books">Code Complete 2</a>.</p>
<p>From the very first chapter, I&#8217;m starting to get why so much people love this book:</p>
<blockquote><p>Software construction is the central activity in software development; construction is the only activity that’s guaranteed to happen on every project.</p></blockquote>
<p>And yes, it&#8217;s true.</p>
<blockquote><p>In the final analysis, your understanding of how to do construction determines how good a programmer you are, and that’s the subject of the rest of the book.</p></blockquote>
<p>And this last one must be too as *SO* many people recommend this book.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/linil.wordpress.com/242/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/linil.wordpress.com/242/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/linil.wordpress.com/242/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/linil.wordpress.com/242/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/linil.wordpress.com/242/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/linil.wordpress.com/242/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/linil.wordpress.com/242/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/linil.wordpress.com/242/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/linil.wordpress.com/242/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/linil.wordpress.com/242/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/linil.wordpress.com/242/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/linil.wordpress.com/242/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/linil.wordpress.com/242/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/linil.wordpress.com/242/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=linil.wordpress.com&amp;blog=2521259&amp;post=242&amp;subd=linil&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://linil.wordpress.com/2009/02/18/code-complete-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Rodrigo Moreira Araujo</media:title>
		</media:content>

		<media:content url="http://www.codinghorror.com/images/0735619670.01._PE32_PI_SCMZZZZZZZ_.jpg" medium="image" />
	</item>
		<item>
		<title>SeaCode &#8211; Taking programmers offshore</title>
		<link>http://linil.wordpress.com/2009/02/13/seacode-taking-programmers-offshore/</link>
		<comments>http://linil.wordpress.com/2009/02/13/seacode-taking-programmers-offshore/#comments</comments>
		<pubDate>Fri, 13 Feb 2009 16:28:38 +0000</pubDate>
		<dc:creator>Rodrigo Araujo</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://linil.wordpress.com/?p=234</guid>
		<description><![CDATA[What happens when a software enterpreneur and an offshore oil extractor come together? Roger Green (the software enterpreneur) and David Cook (the offshore oil extractor) came together and decided to board the 600 best software engineers around the world to live on a boat 3 miles away from the US pacific coast. Right outside imigration [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=linil.wordpress.com&amp;blog=2521259&amp;post=234&amp;subd=linil&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter" src="http://www.sea-code.com/images/seacode%20logo%20413x135%20rev3.jpg" alt="" /></p>
<p>What happens when a software enterpreneur and an offshore oil extractor come together?</p>
<p>Roger Green (the software enterpreneur) and David Cook (the offshore oil extractor) came together and decided to board the 600 best software engineers around the world to live on a boat 3 miles away from the US pacific coast. Right outside imigration range.</p>
<p>These guys will work 4 months and take 2 of vacations, which leads up to a pretty nice scenario of working just 2/3 of the year!</p>
<p>For more information, take a look at <a href="http://www.boston.com/business/technology/articles/2005/04/25/a_plan_to_offshore____just_3_miles_out/">A plan to offshore . . . just 3 miles out</a> or just go to the <a href="http://www.sea-code.com/">official page of the project</a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/linil.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/linil.wordpress.com/234/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/linil.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/linil.wordpress.com/234/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/linil.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/linil.wordpress.com/234/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/linil.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/linil.wordpress.com/234/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/linil.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/linil.wordpress.com/234/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/linil.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/linil.wordpress.com/234/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/linil.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/linil.wordpress.com/234/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=linil.wordpress.com&amp;blog=2521259&amp;post=234&amp;subd=linil&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://linil.wordpress.com/2009/02/13/seacode-taking-programmers-offshore/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Rodrigo Moreira Araujo</media:title>
		</media:content>

		<media:content url="http://www.sea-code.com/images/seacode%20logo%20413x135%20rev3.jpg" medium="image" />
	</item>
		<item>
		<title>Stack Overflow</title>
		<link>http://linil.wordpress.com/2009/02/01/stack-overflow/</link>
		<comments>http://linil.wordpress.com/2009/02/01/stack-overflow/#comments</comments>
		<pubDate>Sun, 01 Feb 2009 19:09:56 +0000</pubDate>
		<dc:creator>Rodrigo Araujo</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://linil.wordpress.com/?p=223</guid>
		<description><![CDATA[One day, Jeff Atwood and Joel Spolsky decided to help the programming community. Along the way, other guys joined them (Jarrod Dixon, Geoff Dalgas, Jeremy Kratz and Brent Ozar) and they came with the absolutely fantabulous Stack Overflow. From their About page Stack Overflow is a programming Q &#38; A site that&#8217;s free. Free to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=linil.wordpress.com&amp;blog=2521259&amp;post=223&amp;subd=linil&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter" src="http://i.stackoverflow.com/Content/Img/stackoverflow-logo-250.png" alt="Stack Overflow" /></p>
<p>One day, <a href="http://www.codinghorror.com/blog/">Jeff Atwood</a> and <a href="http://www.joelonsoftware.com/">Joel Spolsky</a> decided to help the programming community. Along the way, other guys joined them (Jarrod Dixon, Geoff Dalgas, Jeremy Kratz and Brent Ozar) and they came with the absolutely fantabulous <a href="http://stackoverflow.com/">Stack Overflow</a>.</p>
<p>From their <a href="http://stackoverflow.com/about">About page</a></p>
<blockquote><p>Stack Overflow is a programming Q &amp; A site that&#8217;s free. Free to ask questions, free to answer questions, free to read, free to index, built with plain old HTML, no fake rot13 text on the home page, no scammy google-cloaking tactics, no salespeople, no JavaScript windows dropping down in front of the answer asking for $12.95 to go away. You can register if you want to collect karma and win valuable flair that will appear next to your name, but otherwise, it&#8217;s just free. And fast. Very, very fast.</p></blockquote>
<p>It&#8217;s definitely that: <strong>fast</strong>. For the last weeks, I&#8217;ve been browsing a lot through the <a href="http://stackoverflow.com/?sort=hot">hot questions tab</a> and I barely found unanswered questions. It&#8217;s amazing how fast you can get an answer and, for what I&#8217;ve seen, it&#8217;s usually the best.</p>
<p>The voting up and down associated with comments mechanism is also great, as you can learn through the answerer but also by everyone else&#8217;s knowledge. And they also have a badge system which rewards you depending on your attitudes (actually, by now I only have 8 bronze badges..).</p>
<p>This thing has been growing so fast that even the most famous programmers are getting into it. <a href="http://en.wikipedia.org/wiki/Alan_Kay">Alan Kay</a>, for instance, is already one of <a href="http://blog.stackoverflow.com/2009/01/welcome-our-newest-member-alan-kay/">them</a>.</p>
<p>So, they have lots and lots of information there, go check it out!</p>
<p>Ah, and don&#8217;t forget to check these:</p>
<ul>
<li><a href="http://stackoverflow.com/questions/84556/whats-your-favorite-programmer-cartoon">What&#8217;s your favorite programmer cartoon</a> &#8211; The greatest achievement on indexing all programming cartoons out there!</li>
<li><a href="http://stackoverflow.com/questions/101268/hidden-features-of-python">Hidden features of Python</a></li>
<li><a href="http://stackoverflow.com/questions/489999/python-convert-list-of-ints-to-one-number">Convert list of ints to one number</a> &#8211; This question is fantastic not for the question itself but for the answer this guy received. The one with the chart is incredible!</li>
<li><a href="http://stackoverflow.com/questions/52652/pretty-graphs-and-charts-in-python">Pretty graphs and charts in Python</a> &#8211; Some of them use CairoPlot! <img src='http://s0.wp.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </li>
</ul>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/linil.wordpress.com/223/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/linil.wordpress.com/223/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/linil.wordpress.com/223/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/linil.wordpress.com/223/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/linil.wordpress.com/223/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/linil.wordpress.com/223/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/linil.wordpress.com/223/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/linil.wordpress.com/223/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/linil.wordpress.com/223/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/linil.wordpress.com/223/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/linil.wordpress.com/223/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/linil.wordpress.com/223/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/linil.wordpress.com/223/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/linil.wordpress.com/223/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=linil.wordpress.com&amp;blog=2521259&amp;post=223&amp;subd=linil&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://linil.wordpress.com/2009/02/01/stack-overflow/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Rodrigo Moreira Araujo</media:title>
		</media:content>

		<media:content url="http://i.stackoverflow.com/Content/Img/stackoverflow-logo-250.png" medium="image">
			<media:title type="html">Stack Overflow</media:title>
		</media:content>
	</item>
		<item>
		<title>CairoPlot has a mailing list!</title>
		<link>http://linil.wordpress.com/2009/01/29/cairoplot-has-a-mailing-list/</link>
		<comments>http://linil.wordpress.com/2009/01/29/cairoplot-has-a-mailing-list/#comments</comments>
		<pubDate>Thu, 29 Jan 2009 21:55:05 +0000</pubDate>
		<dc:creator>Rodrigo Araujo</dc:creator>
				<category><![CDATA[CairoPlot]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://linil.wordpress.com/?p=209</guid>
		<description><![CDATA[Hi there everyone. Sorry for the long delay on posts and updates, lots of stuff happening. So, CairoPlot now has a Mailing List as suggested by Yang. It&#8217;s actually a GoogleGroup named CairoPlot. Subscription is now open for anyone who&#8217;d like to discuss, question or suggest new features. So&#8230; Join now!<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=linil.wordpress.com&amp;blog=2521259&amp;post=209&amp;subd=linil&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter" src="https://launchpadlibrarian.net/16773251/brand.png" alt="" /></p>
<p>Hi there everyone.<br />
Sorry for the long delay on posts and updates, lots of stuff happening.</p>
<p>So, CairoPlot now has a Mailing List as suggested by Yang. It&#8217;s actually a <a href="http://www.google.com/groups">GoogleGroup</a> named <a href="http://groups.google.com/group/cairoplot">CairoPlot</a>. Subscription is now open for anyone who&#8217;d like to discuss, question or suggest new features.</p>
<p>So&#8230; Join now!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/linil.wordpress.com/209/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/linil.wordpress.com/209/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/linil.wordpress.com/209/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/linil.wordpress.com/209/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/linil.wordpress.com/209/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/linil.wordpress.com/209/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/linil.wordpress.com/209/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/linil.wordpress.com/209/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/linil.wordpress.com/209/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/linil.wordpress.com/209/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/linil.wordpress.com/209/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/linil.wordpress.com/209/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/linil.wordpress.com/209/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/linil.wordpress.com/209/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=linil.wordpress.com&amp;blog=2521259&amp;post=209&amp;subd=linil&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://linil.wordpress.com/2009/01/29/cairoplot-has-a-mailing-list/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Rodrigo Moreira Araujo</media:title>
		</media:content>

		<media:content url="//launchpadlibrarian.net/16773251/brand.png" medium="image" />
	</item>
		<item>
		<title>CairoPlot 1.1</title>
		<link>http://linil.wordpress.com/2008/09/16/cairoplot-11/</link>
		<comments>http://linil.wordpress.com/2008/09/16/cairoplot-11/#comments</comments>
		<pubDate>Tue, 16 Sep 2008 18:20:42 +0000</pubDate>
		<dc:creator>Rodrigo Araujo</dc:creator>
				<category><![CDATA[CairoPlot]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://linil.wordpress.com/?p=139</guid>
		<description><![CDATA[CairoPlot now has a Mailing List! For more information, refer to: this post. v1.1 is out!! CairoPlot is an API written in Python and uses PyCairo to plot 6 kinds of graphics. Lots of changes happened since last post, CairoPlot now has a Logo, it&#8217;s not just me anymore, we have an all new repository [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=linil.wordpress.com&amp;blog=2521259&amp;post=139&amp;subd=linil&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><em><span style="color:#ff0000;">CairoPlot now has a Mailing List! For more information, refer to:</span></em> <a href="http://linil.wordpress.com/2009/01/29/cairoplot-has-a-mailing-list/">this post</a>.<br />
<img class="aligncenter" src="https://launchpadlibrarian.net/16773251/brand.png" alt="" /></p>
<h2 style="text-align:center;">v1.1 is out!!</h2>
<p>CairoPlot is an API written in Python and uses PyCairo to plot 6 kinds of graphics.<br />
Lots of changes happened since last post, CairoPlot now has a Logo, it&#8217;s not just me anymore, we have an all new repository and lots of new functions and options. Read the rest of the post to see all the changes.</p>
<h3>LOGO</h3>
<p>As you all must&#8217;ve seen on the beginning of this text, CairoPlot now has a logo! Actually I did <a href="http://rodrigoaraujo.deviantart.com/art/CairoPlot-Logo-94827993">two</a> but I ended up choosing this one. What do you guys think?</p>
<h3>CONTRIBUTOR</h3>
<p>It&#8217;s not just me anymore! I&#8217;m happy to say that this release had GREAT help from João S. O. Bueno. It was his idea to change the code into object oriented style which turned out to be a great option for the project.</p>
<h3>NEW REPOSITORY</h3>
<p>I&#8217;d like to apologize to everyone who&#8217;s been using v1.0 since June. Many changes happened and no one even knew they were there. By the time the repositories where changed, João had just started helping the project and lots of things were incomplete. After that, one change lead to the other and the only stable release came out now. Again, I&#8217;m sorry but I believe you all will be pleased by the changes.<br />
To visit the new repository, just hit <a href="https://launchpad.net/cairoplot">CairoPlot Launchpad</a>.</p>
<h3>HOW TO DOWNLOAD</h3>
<p>The first part is to download bazaar. On Ubuntu, all you need to do is type on a terminal:</p>
<blockquote><p>sudo apt-get install bzr</p></blockquote>
<p>And, after the installation, type</p>
<blockquote><p>bzr branch lp:cairoplot/1.1</p></blockquote>
<h3>HOW TO HELP</h3>
<p>I believe CairoPlot can grow a lot more, so if you think you can help, please contact me at alf.rodrigo@gmail.com.</p>
<h3>NEWS</h3>
<p>Now for the exciting ChangeLog.<br />
All the <a href="http://linil.wordpress.com/2008/06/14/cairoplot-plotting-graphics-using-python-and-cairo/">old functions</a> are still supported with some little but important changes.</p>
<h2 style="text-align:center;">overall changes</h2>
<p>Every chart now has an associated class and a function.<br />
The functions where kept to maintain backward compatibility and allow for easy use of the api.<br />
The classes, however, provide much more customization as access to the cairo context or its surface.<br />
All functions still have the background parameter, but now it supports colors (in tuple form, red = (255, 0, 0)) and Cairo Linear Gradients. The None option is still present and will generate the gray to white gradient of the previous version.</p>
<h2 style="text-align:center;">more output options</h2>
<p>CairoPlot now outputs images on the following formats: pdf, ps, png and svg thanks to João.</p>
<h2 style="text-align:center;">dot_line_plot</h2>
<p>Dot Line Plot kept most of its functions but got a little more customizable.<br />
<img class="aligncenter size-full wp-image-71" src="http://linil.files.wordpress.com/2008/06/cairoplot_dotlineplot.png?w=300&#038;h=200" alt="" width="300" height="200" /></p>
<pre class="brush: python;">
dot_line_plot (name,
               data,
               width,
               height,
               background = None,
               border = 0,
               axis = False,
               grid = False,
               dots = False,
               h_labels = None,
               v_labels = None,
               h_bounds = None,
               v_bounds = None)
</pre>
<p><span style="color:#0000ff;"><em> dots</em></span> &#8211; new parameter added to determine whether or not the dots are needed;<br />
<span style="color:#0000ff;"><em> h_legend and v_legend</em></span> &#8211; got renamed to h_labels and v_labels;<br />
<em><span style="color:#ff9900;">Note:</span></em> As this function&#8217;s been present since the last version, please refer to <a href="http://linil.wordpress.com/2008/06/14/cairoplot-plotting-graphics-using-python-and-cairo/">the latest post</a> for more detailed information.</p>
<h2 style="text-align:center;">pie_plot</h2>
<p>The old Pizza Plot got renamed and revamped into the all new Pie Plot</p>
<p><a href="http://linil.files.wordpress.com/2008/09/pie_blog1.png"><img class="aligncenter size-medium wp-image-149" title="pie_plot" src="http://linil.files.wordpress.com/2008/09/pie_blog1.png?w=300&#038;h=200" alt="" width="300" height="200" /></a></p>
<pre class="brush: python;">
pie_plot(name,
           data,
           width,
           height,
           background = None,
           gradient = False,
           shadows = False,
           colors = None)
</pre>
<p><span style="color:#0000ff;"><em> gradient</em></span> &#8211; Whether or not the slices are painted with gradient colors;<br />
<span style="color:#0000ff;"><em> shadows</em></span> &#8211; Now, it&#8217;s possible to draw a shadow behind the pie;<br />
<span style="color:#0000ff;"><em> colors</em></span> &#8211; And the user can pass a pre-selected list of colors for the slices;<br />
<em><span style="color:#ff9900;">Note:</span></em> As this function&#8217;s been present since the last version, please refer to <a href="http://linil.wordpress.com/2008/06/14/cairoplot-plotting-graphics-using-python-and-cairo/">the latest post</a> for more detailed information.</p>
<h2 style="text-align:center;">gantt_chart</h2>
<p>No cosmetic changes on this one, but as the rest of the api, it got refactored on OO and the overall changes also apply.</p>
<pre class="brush: python;">
gantt_chart(name,
            pieces,
            width,
            height,
            h_labels,
            v_labels,
            colors)
</pre>
<p><span style="color:#0000ff;"><em> h_legend and v_legend</em></span> &#8211; got renamed to h_labels and v_labels;<br />
<em><span style="color:#ff9900;">Note:</span></em> As this function&#8217;s been present since the last version, please refer to <a href="http://linil.wordpress.com/2008/06/14/cairoplot-plotting-graphics-using-python-and-cairo/">the latest post</a> for more detailed information.</p>
<h2 style="text-align:center;">donut_plot</h2>
<p style="text-align:center;">Used to plot donut graphics.</p>
<p style="text-align:center;"><a href="http://linil.files.wordpress.com/2008/09/donut_blog.png"><img class="aligncenter size-medium wp-image-154" title="donut_blog" src="http://linil.files.wordpress.com/2008/09/donut_blog.png?w=300&#038;h=200" alt="" width="300" height="200" /></a></p>
<pre class="brush: python;">
donu_plot(name,
                data,
                width,
                height,
                background = None,
                gradient = False,
                shadows = False,
                colors = None,
                inner_radius = -1)
</pre>
<p><em><span style="color:#ff0000;">name</span></em> &#8211; Name of the desired output file;<br />
<em><span style="color:#ff0000;">data</span></em> &#8211; The list, list of lists or dictionary holding the data to be plotted;<br />
<span style="color:#ff0000;"><em> width, height</em></span> &#8211; Dimensions of the output image;<br />
<span style="color:#0000ff;"><em>background</em></span> &#8211; A 3 element tuple representing the rgb color expected for the background or a new cairo linear gradient. If left None, a gray to white gradient will be generated;<br />
<span style="color:#0000ff;"><em> gradient</em></span> &#8211; Whether or not the slices are painted with gradient colors;<br />
<span style="color:#0000ff;"><em> shadows</em></span> &#8211; It&#8217;s possible to draw a shadow behind the donut;<br />
<span style="color:#0000ff;"><em> colors</em></span> &#8211; Pre-selected list of colors for the slices;<br />
<span style="color:#0000ff;"><em> inner_radius</em></span> &#8211; The radius of the donut&#8217;s inner circle;</p>
<p>Example of use:</p>
<pre class="brush: python;">
teste_data = {&quot;carl&quot; : 123, &quot;fawn&quot; : 489, &quot;susan&quot; : 890 , &quot;lavon&quot; : 235}
CairoPlot.donut_plot(&quot;donut_teste.png&quot;, teste_data, 500, 500)
</pre>
<p style="text-align:center;">Result:</p>
<p style="text-align:center;"><a href="http://linil.files.wordpress.com/2008/09/donut_teste.png"><img class="aligncenter size-medium wp-image-167" title="donut_teste" src="http://linil.files.wordpress.com/2008/09/donut_teste.png?w=257&#038;h=257" alt="" width="257" height="257" /></a></p>
<h2 style="text-align:center;">function_plot</h2>
<p style="text-align:center;">Used to plot function graphics.</p>
<p style="text-align:center;"><a href="http://linil.files.wordpress.com/2008/09/function_blog1.png"><img class="aligncenter size-large wp-image-159" title="function plog" src="http://linil.files.wordpress.com/2008/09/function_blog1.png?w=500&#038;h=200" alt="" width="500" height="200" /></a></p>
<p style="text-align:center;">
<pre class="brush: python;">
function_plot (name,
                    data,
                    width,
                    height,
                    background = None,
                    border = 0,
                    axis = False,
                    grid = False,
                    dots = False,
                    h_labels = None,
                    v_labels = None,
                    h_bounds = None,
                    v_bounds = None,
                    step = 1,
                    discrete = False)
</pre>
<p><span style="color:#ff0000;"><em>name</em></span> &#8211; Name of the desired output file.;<br />
<span style="color:#ff0000;"><em>data</em></span> &#8211; The function to be plotted;<br />
<span style="color:#ff0000;"><em> width, height</em></span> &#8211; Dimensions of the output image;<br />
<em> <span style="color:#0000ff;">background</span></em> &#8211; A 3 element tuple representing the rgb color expected for the background or a new cairo linear gradient. If left None, a gray to white gradient will be generated;<br />
<span style="color:#0000ff;"><em>border</em></span> &#8211; Distance in pixels of a square border into which the graphics will be drawn;<br />
<span style="color:#0000ff;"><em>axis</em></span> &#8211; Whether or not the axis are to be drawn;<br />
<span style="color:#0000ff;"><em>grid</em></span> &#8211; Whether or not the grids is to be drawn;<br />
<span style="color:#0000ff;"><em> dots</em></span> &#8211; new parameter added to determine whether or not the dots are needed;<br />
<span style="color:#0000ff;"><em> h_labels, v_labels</em></span> &#8211; lists of strings containing the horizontal and vertical labels for the axis;<br />
<span style="color:#0000ff;"><em> h_bounds, v_bounds</em></span> &#8211; tuples containing the lower and upper value bounds for the data to be plotted;<br />
<span style="color:#0000ff;"><em> step</em></span> &#8211; the horizontal distance from one point to the other. The smaller, the smoother the curve will be;<br />
<span style="color:#0000ff;"><em> discrete</em></span> &#8211; whether or not the function should be plotted in discrete format.</p>
<p>Example of use:</p>
<pre class="brush: python;">
data = lambda x : x**2
CairoPlot.function_plot('function_teste.png', data, 400, 300, grid = True, h_bounds=(-10,10), step = 0.1)
</pre>
<p style="text-align:center;">Result:</p>
<p style="text-align:center;"><a href="http://linil.files.wordpress.com/2008/09/function.png"><img class="aligncenter size-medium wp-image-173" title="function_teste" src="http://linil.files.wordpress.com/2008/09/function.png?w=257&#038;h=193" alt="" width="257" height="193" /></a></p>
<h2 style="text-align:center;">bar_plot</h2>
<p style="text-align:center;">Used to plot bar graphics.</p>
<p style="text-align:center;"><a href="http://linil.files.wordpress.com/2008/09/bar_blog1.png"><img class="aligncenter size-full wp-image-163" title="bar plot" src="http://linil.files.wordpress.com/2008/09/bar_blog1.png?w=285&#038;h=200" alt="" width="285" height="200" /></a></p>
<p style="text-align:center;">
<pre class="brush: python;">
bar_plot (name,
              data,
              width,
              height,
              background = None,
              border = 0,
              axis = False,
              grid = False,
              dots = False,
              h_labels = None,
              v_labels = None,
              h_bounds = None,
              v_bounds = None,
              step = 1,
              discrete = False)
</pre>
<p><span style="color:#ff0000;"><em> name</em></span> &#8211; Name of the desired output file.;<br />
<span style="color:#ff0000;"><em> data</em></span> &#8211; The function to be plotted;<br />
<span style="color:#ff0000;"><em> width, height</em></span> &#8211; Dimensions of the output image;<br />
<em> <span style="color:#0000ff;"> background</span></em> &#8211; A 3 element tuple representing the rgb color expected for the background or a new cairo linear gradient. If left None, a gray to white gradient will be generated;<br />
<span style="color:#0000ff;"><em> border</em></span> &#8211; Distance in pixels of a square border into which the graphics will be drawn;<br />
<span style="color:#0000ff;"><em> grid</em></span> &#8211; Whether or not the grids is to be drawn;<br />
<span style="color:#0000ff;"><em> rounded_corners</em></span> &#8211; Whether or not the bars should have rounded corners;<br />
<span style="color:#0000ff;"><em> three_dimension</em></span> &#8211; Whether or not the bars should be drawn in pseudo 3D;<br />
<span style="color:#0000ff;"><em> h_labels, v_labels</em></span> &#8211; lists of strings containing the horizontal and vertical labels for the axis;<br />
<span style="color:#0000ff;"><em> h_bounds, v_bounds</em></span> &#8211; tuples containing the lower and upper value bounds for the data to be plotted;<br />
<span style="color:#0000ff;"><em> colors</em></span> &#8211; List containing the colors expected for each of the bars.</p>
<p>Examples of use:</p>
<pre class="brush: python;">
data = [3,1,10,2]
CairoPlot.bar_plot ('bar_teste.png', data, 400, 300, border = 20, grid = True, rounded_corners = True)
</pre>
<p style="text-align:center;">Result:</p>
<p style="text-align:center;"><a href="http://linil.files.wordpress.com/2008/09/bar2.png"><img class="aligncenter size-full wp-image-175" title="bar_teste" src="http://linil.files.wordpress.com/2008/09/bar2.png?w=257&#038;h=257" alt="" width="257" height="257" /></a></p>
<h3>REMEMBER!</h3>
<p>To download:</p>
<blockquote><p>sudo apt-get install bzr<br />
bzr branch lp:cairoplot/1.1</p></blockquote>
<p>So, I hope you liked it. It&#8217;s been a while I&#8217;ve been trying to finish this release and I&#8217;m very proud of what it has become. Don&#8217;t forget to download and test it. In case any bugs surface or if you have any questions or suggestion, don&#8217;t be afraid to use the <a href="https://bugs.launchpad.net/cairoplot">bug tracker</a> or the <a href="https://answers.launchpad.net/cairoplot">answers</a> options on the site <a href="https://launchpad.net/cairoplot">CairoPlot Launchpad</a>.</p>
<p>Thanks for the interest.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/linil.wordpress.com/139/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/linil.wordpress.com/139/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/linil.wordpress.com/139/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/linil.wordpress.com/139/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/linil.wordpress.com/139/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/linil.wordpress.com/139/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/linil.wordpress.com/139/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/linil.wordpress.com/139/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/linil.wordpress.com/139/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/linil.wordpress.com/139/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/linil.wordpress.com/139/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/linil.wordpress.com/139/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/linil.wordpress.com/139/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/linil.wordpress.com/139/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/linil.wordpress.com/139/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/linil.wordpress.com/139/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=linil.wordpress.com&amp;blog=2521259&amp;post=139&amp;subd=linil&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://linil.wordpress.com/2008/09/16/cairoplot-11/feed/</wfw:commentRss>
		<slash:comments>58</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Rodrigo Moreira Araujo</media:title>
		</media:content>

		<media:content url="//launchpadlibrarian.net/16773251/brand.png" medium="image" />

		<media:content url="http://linil.files.wordpress.com/2008/06/cairoplot_dotlineplot.png" medium="image" />

		<media:content url="http://linil.files.wordpress.com/2008/09/pie_blog1.png?w=300" medium="image">
			<media:title type="html">pie_plot</media:title>
		</media:content>

		<media:content url="http://linil.files.wordpress.com/2008/09/donut_blog.png?w=300" medium="image">
			<media:title type="html">donut_blog</media:title>
		</media:content>

		<media:content url="http://linil.files.wordpress.com/2008/09/donut_teste.png?w=300" medium="image">
			<media:title type="html">donut_teste</media:title>
		</media:content>

		<media:content url="http://linil.files.wordpress.com/2008/09/function_blog1.png?w=500" medium="image">
			<media:title type="html">function plog</media:title>
		</media:content>

		<media:content url="http://linil.files.wordpress.com/2008/09/function.png?w=300" medium="image">
			<media:title type="html">function_teste</media:title>
		</media:content>

		<media:content url="http://linil.files.wordpress.com/2008/09/bar_blog1.png" medium="image">
			<media:title type="html">bar plot</media:title>
		</media:content>

		<media:content url="http://linil.files.wordpress.com/2008/09/bar2.png" medium="image">
			<media:title type="html">bar_teste</media:title>
		</media:content>
	</item>
		<item>
		<title>itunes 8 &#8211; The slowest ever</title>
		<link>http://linil.wordpress.com/2008/09/10/itunes-8-the-slowest-ever/</link>
		<comments>http://linil.wordpress.com/2008/09/10/itunes-8-the-slowest-ever/#comments</comments>
		<pubDate>Wed, 10 Sep 2008 12:06:21 +0000</pubDate>
		<dc:creator>Rodrigo Araujo</dc:creator>
				<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://linil.wordpress.com/?p=135</guid>
		<description><![CDATA[Today, Apple unveiled its new iPods (shuffle, nano, classic, touch) and, as expected, a brand new itunes with some new shiny functions. The list of new functions is promising and features: grid view: a whole new way of interacting and seeing your albums, providing easy access to all of them through thumbnails of their album [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=linil.wordpress.com&amp;blog=2521259&amp;post=135&amp;subd=linil&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:center;"><img class="aligncenter" src="http://images.apple.com/itunes/whatsnew/images/views20080909.jpg" alt="" /></p>
<p>Today, <a href="http://www.apple.com">Apple</a> unveiled its new iPods (<a href="http://www.apple.com/ipodshuffle/">shuffle</a>, <a href="http://www.apple.com/ipodnano/">nano</a>, <a href="http://www.apple.com/ipodclassic/">classic</a>, <a href="http://www.apple.com/ipodtouch/">touch</a>) and, as expected, a brand new <a href="http://www.apple.com/itunes/download/">itunes</a><a></a> with some new shiny functions.</p>
<p>The <a href="http://www.apple.com/itunes/whatsnew/">list</a> of new functions is promising and features:</p>
<ul>
<li><strong>grid view:</strong> a whole new way of interacting and seeing your albums, providing easy access to all of them through thumbnails of their album covers;</li>
<li><strong>new visualizer:</strong> great aesthetic change;</li>
<li><strong>genius playlist and sidebar:</strong> after creating a new itunes account, itunes should get the ability to analyze your tunes and group them together, providing playlists of musics that &#8220;go great together&#8221;;</li>
</ul>
<p>So, what&#8217;s the catch?<br />
First of all, it is the <span style="color:#ff0000;"><strong>SLOWEST</strong></span> itunes ever.</p>
<p>By the time I installed it, I jumped to see the grid view. It sure is awesome as it is pretty great to browse through your albums seeing all of its covers in a way that is much more practical than coverflow. The problem is that it takes time to load. My library only has one album and it is taking like 1 sec to open it&#8230;</p>
<p>I plugged my iPod and accessed the summary page (by clicking on the iPod name on the left side bar). It took an astounding <strong>5 seconds</strong> to load. Not satisfied, I started clicking on the tabs (music, movies, tv shows, etc) and each one of them took <strong>1 second</strong> to load.<br />
I found out that, as always, coverflow was not available for inside iPod music browsing, as the new grid view isn&#8217;t too.</p>
<p>The genius options requires an itunes account, which I don&#8217;t have and didn&#8217;t create. What&#8217;s the point of needing an itunes account to search your own library for music &#8220;related&#8221; to the one you are listening? I get that the itunes account shouldn&#8217;t even be needed for the cases in which the software searches for related songs on the itunes store. The account should <strong>ONLY</strong> be needed when you try to buy something.</p>
<p>I have noticed in previous versions that itunes was a <strong>LOT</strong> slower in windows, but this time Apple did surprise me&#8230;</p>
<p>Last but not least, there have been a lot of users complaining about &#8220;blue screens of death&#8221; when they plug their iPods and iPhones (according to <a href="http://gizmodo.com/5047721/itunes-8-causing-huge-problems-bsod-for-vista-users">Gizmodo</a>).</p>
<p>For all that reasons, I&#8217;ll be waiting for the 8.1 which I believe might be a little bit faster and a little less bugged.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/linil.wordpress.com/135/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/linil.wordpress.com/135/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/linil.wordpress.com/135/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/linil.wordpress.com/135/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/linil.wordpress.com/135/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/linil.wordpress.com/135/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/linil.wordpress.com/135/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/linil.wordpress.com/135/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/linil.wordpress.com/135/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/linil.wordpress.com/135/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/linil.wordpress.com/135/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/linil.wordpress.com/135/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/linil.wordpress.com/135/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/linil.wordpress.com/135/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/linil.wordpress.com/135/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/linil.wordpress.com/135/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=linil.wordpress.com&amp;blog=2521259&amp;post=135&amp;subd=linil&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://linil.wordpress.com/2008/09/10/itunes-8-the-slowest-ever/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Rodrigo Moreira Araujo</media:title>
		</media:content>

		<media:content url="http://images.apple.com/itunes/whatsnew/images/views20080909.jpg" medium="image" />
	</item>
		<item>
		<title>Sigg Jones &#8211; Ótimo vídeo 3D</title>
		<link>http://linil.wordpress.com/2008/09/05/sigg-jones-otimo-video-3d/</link>
		<comments>http://linil.wordpress.com/2008/09/05/sigg-jones-otimo-video-3d/#comments</comments>
		<pubDate>Fri, 05 Sep 2008 11:27:36 +0000</pubDate>
		<dc:creator>Rodrigo Araujo</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://linil.wordpress.com/?p=130</guid>
		<description><![CDATA[Nota: Como o wordpress não permite adicionar vídeos do Vimeo, o link do vídeo é o seguinte: Sigg Jones Passeando pelo Abduzeedo encontrei o vídeo do Sigg Jones: Quando o campeão peso pesado Sigg Jones bebe um estranho energético, ele perde controle de si mesmo e de toda a sua parte boa. Seu agente terá [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=linil.wordpress.com&amp;blog=2521259&amp;post=130&amp;subd=linil&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><em><span style="color:#ff6600;">Nota: Como o wordpress não permite adicionar vídeos do Vimeo, o link do vídeo é o seguinte: <a href="http://vimeo.com/1172492?pg=embed&amp;sec=1172492&amp;hd=1">Sigg Jones</a></span></em></p>
<p>Passeando pelo <a href="http://www.abduzeedo.com">Abduzeedo</a> encontrei o vídeo do Sigg Jones:</p>
<blockquote><p>Quando o campeão peso pesado Sigg Jones bebe um estranho energético, ele perde controle de si mesmo e de toda a sua parte boa. Seu agente terá que corrigi-lo&#8230;</p>
<p>Sigg Jones é o nome de um curta feito em 3D Studio Max por três estudantes da Escola Supinfocom na França.</p>
<p>O clímax do filme se dá numa seqüência de luta sensacional. O estilo e a modelagem são extraordinários.</p></blockquote>
<p><span style="color:#ff6600;"><em>Extraído de <a href="http://www.abduzeedo.com">Abduzeedo</a></em></span></p>
<p style="text-align:center;"><img class="aligncenter" src="http://www.abduzeedo.com/files/u1024/sigg_jones_03.jpg" alt="" width="354" height="347" /></p>
<p>Eu achei que o estilo de modelagem parece muito com o do novo filme de <a href="http://www.starwars.com/clonewars/site/index.html">Star Wars</a>.</p>
<p><img class="aligncenter size-medium wp-image-132" title="Anakin" src="http://linil.files.wordpress.com/2008/09/picture-1.png?w=300&#038;h=167" alt="" width="300" height="167" /></p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/linil.wordpress.com/130/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/linil.wordpress.com/130/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/linil.wordpress.com/130/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/linil.wordpress.com/130/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/linil.wordpress.com/130/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/linil.wordpress.com/130/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/linil.wordpress.com/130/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/linil.wordpress.com/130/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/linil.wordpress.com/130/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/linil.wordpress.com/130/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/linil.wordpress.com/130/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/linil.wordpress.com/130/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/linil.wordpress.com/130/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/linil.wordpress.com/130/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/linil.wordpress.com/130/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/linil.wordpress.com/130/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=linil.wordpress.com&amp;blog=2521259&amp;post=130&amp;subd=linil&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://linil.wordpress.com/2008/09/05/sigg-jones-otimo-video-3d/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Rodrigo Moreira Araujo</media:title>
		</media:content>

		<media:content url="http://www.abduzeedo.com/files/u1024/sigg_jones_03.jpg" medium="image" />

		<media:content url="http://linil.files.wordpress.com/2008/09/picture-1.png?w=300" medium="image">
			<media:title type="html">Anakin</media:title>
		</media:content>
	</item>
	</channel>
</rss>
