<?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:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-18415308</atom:id><lastBuildDate>Fri, 26 Feb 2010 12:52:31 +0000</lastBuildDate><title>Turicas' blog - tecnologia, telecom e software livre</title><description /><link>http://blog.justen.eng.br/</link><managingEditor>noreply@blogger.com (Álvaro Justen "Turicas")</managingEditor><generator>Blogger</generator><openSearch:totalResults>53</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/alvarojusten" /><feedburner:info uri="alvarojusten" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:browserFriendly>This is an XML content feed. It is intended to be viewed in a newsreader or syndicated to another site, subject to copyright and fair use.</feedburner:browserFriendly><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-659653600257873081</guid><pubDate>Tue, 24 Nov 2009 01:10:00 +0000</pubDate><atom:updated>2009-11-23T23:16:05.960-02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">web2py</category><category domain="http://www.blogger.com/atom/ns#">python</category><category domain="http://www.blogger.com/atom/ns#">pythonrio</category><category domain="http://www.blogger.com/atom/ns#">dojo</category><category domain="http://www.blogger.com/atom/ns#">dojorio pythoncampus</category><title>PythOnCampus em Campos!</title><description>&lt;p&gt;
    Nessa semana, dias &lt;strong&gt;27 e 28 de novembro de 2009&lt;/strong&gt; - sexta e sábado - teremos mais uma &lt;a href="http://www.python.org.br/wiki/PythOnCampus"&gt;PythOnCampus&lt;/a&gt;, dessa vez no &lt;a href="http://www.iff.edu.br/"&gt;IFF em Campos dos Goytacazes&lt;/a&gt; - é a &lt;a href="http://www.pythoncampus.iff.edu.br/"&gt;PythOnCampus em Campos&lt;/a&gt;!
&lt;/p&gt;
&lt;p&gt;
    O pessoal do &lt;a href="http://nsi.iff.edu.br/"&gt;NSI&lt;/a&gt;/&lt;a href="http://www.iff.edu.br/"&gt;IFF&lt;/a&gt; está organizando o evento, que contará com palestras e minicursos sobre &lt;a href="http://www.python.org/"&gt;Python&lt;/a&gt; e tem como objetivo trazer o conhecimento e a experiência dos profissionais da área pra dentro da instituição, qualificando e preparando os alunos tanto para o mercado de trabalho como para a vida acadêmica. O &lt;a href="http://hugolt.wordpress.com/"&gt;Hugo Lopes Tavares&lt;/a&gt; me convidou para palestrar lá - e como eu gostei, palestrarei duas vezes! Uma sobre &lt;strong&gt;&lt;a href="http://www.web2py.com/"&gt;web2py&lt;/a&gt;&lt;/strong&gt; e outra sobre &lt;strong&gt;&lt;a href="http://www.codingdojo.org/"&gt;Coding Dojo&lt;/a&gt; + &lt;a href="http://www.dojorio.org/"&gt;Dojo Rio&lt;/a&gt;&lt;/strong&gt;.
&lt;/p&gt;
&lt;p&gt;
    Teremos minicursos e palestras sobre a linguagem, &lt;a href="http://www.codingdojo.org/"&gt;Coding Dojo&lt;/a&gt;, &lt;emph&gt;frameworks&lt;/emph&gt; para desenvolvimento ágil, &lt;a href="http://pt.wikipedia.org/wiki/Software_livre"&gt;software livre&lt;/a&gt; e outros assuntos - todo o conhecimento será compartilhado por profissionais da &lt;a href="http://www.pythonrio.org/"&gt;PythOnRio&lt;/a&gt; que estarão lá representando suas instituições: &lt;a href="http://www.canonical.com/"&gt;Canonical&lt;/a&gt;, &lt;a href="http://www.globo.com/"&gt;Globo.com&lt;/a&gt;, &lt;a href="http://www.iff.edu.br/"&gt;IFF&lt;/a&gt;, &lt;a href="http://www.peta5.com.br/"&gt;Peta5&lt;/a&gt;, &lt;a href="http://www.serpro.gov.br/"&gt;SERPRO&lt;/a&gt;, &lt;a href="http://www.uenf.br/"&gt;UENF&lt;/a&gt;, &lt;a href="http://www.uff.br/"&gt;UFF&lt;/a&gt;, dentre outras. &lt;a href="http://pythoncampus.iff.edu.br/programacao"&gt;Confira a programação completa da PythOnCampus IFF&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
    A sessão de &lt;a href="http://www.codingdojo.org/"&gt;Coding Dojo&lt;/a&gt; e apresentação que farei do &lt;a href="http://www.dojorio.org/"&gt;Dojo Rio&lt;/a&gt; acontecerá na &lt;strong&gt;sexta-feira (27) às 15h30min&lt;/strong&gt;, já minha palestra/handson sobre &lt;a href="http://www.web2py.com/"&gt;web2py&lt;/a&gt; será no &lt;strong&gt;sábado (28) às 16h30min&lt;/strong&gt;.
&lt;/p&gt;
&lt;p&gt;
    O que está esperando? &lt;a href="http://pythoncampus.iff.edu.br/inscricao"&gt;Faça sua inscrição para a PythOnCampus em Campos&lt;/a&gt;! As vagas para o auditório e minicursos são limitadas. O preço para inscrição em minicursos é de 1 kilograma de arroz, feijão ou macarrão (fazer inscrição no site e levar ao &lt;a href="http://nsi.iff.edu.br/"&gt;NSI&lt;/a&gt;, sala 133, bloco A).
&lt;/p&gt;
&lt;p align="center"&gt;
    &lt;a href="http://www.justen.eng.br/img/pythoncampus_iff_2009.jpg"&gt;&lt;img src="http://www.justen.eng.br/img/pythoncampus_iff_2009_thumb.jpg" alt="Banner PythOnCampus IFF" /&gt;&lt;/a&gt;
    &lt;br /&gt;
    Confira também os folhetos com a programação: &lt;a href="http://pythoncampus.iff.edu.br/media/imagens/FolderPythonCampus.pdf"&gt;folheto 1&lt;/a&gt; e &lt;a href="http://pythoncampus.iff.edu.br/media/imagens/FundoFolderPythonCampus.pdf"&gt;folheto 2&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
Se você é de &lt;a href="http://pt.wikipedia.org/wiki/Niterói"&gt;Niterói&lt;/a&gt; ou do &lt;a href="http://pt.wikipedia.org/wiki/Rio_de_Janeiro"&gt;Rio&lt;/a&gt; e gostaria de participar, comente aqui no blog para marcarmos a ida - o pessoal deve sair daqui na &lt;strong&gt;quinta-feira (26)&lt;/strong&gt; por volta das &lt;strong&gt;19h&lt;/strong&gt;.
&lt;/p&gt;
&lt;p&gt;
    Nos vemos lá! :-) 
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-659653600257873081?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/z4FnGK45pmE" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/z4FnGK45pmE/pythoncampus-em-campos.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/11/pythoncampus-em-campos.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-4372897446756555573</guid><pubDate>Sun, 15 Nov 2009 14:27:00 +0000</pubDate><atom:updated>2009-11-15T13:09:02.746-02:00</atom:updated><title>Como foi o The Developers' Conferente 2009</title><description>&lt;p&gt;
   Na quarta-feira passada estive no &lt;a href="http://www.thedevelopersconference.com.br/"&gt;The Developer's Conference 2009&lt;/a&gt; "Rio de Janeiro", que aconteceu em &lt;a href="http://pt.wikipedia.org/wiki/Niter%C3%B3i"&gt;Niterói&lt;/a&gt;. Fui convidado por &lt;strong&gt;Mário Mariani&lt;/strong&gt; e &lt;strong&gt;Thiago Diogo&lt;/strong&gt;, figuras que trabalham na &lt;a href="http://www.proac.uff.br/"&gt;PROAC&lt;/a&gt;-&lt;a href="http://www.nti.uff.br/"&gt;NTi&lt;/a&gt;/&lt;a href="http://www.uff.br/"&gt;UFF&lt;/a&gt; e que conheci no &lt;a href="http://blog.justen.eng.br/2009/10/coding-dojorio-em-niteroi.html"&gt;Coding Dojo@Niterói&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
   O evento, focado em &lt;a href="http://www.java.com/pt_BR/"&gt;Java&lt;/a&gt;, contou com a participação de nomes internacionais e nacionais da linguagem e lotou o &lt;strong&gt;auditório da Geociências&lt;/strong&gt;, no &lt;emph&gt;campus&lt;/emph&gt; &lt;strong&gt;Praia Vermelha&lt;/strong&gt; da &lt;a href="http://www.uff.br/"&gt;UFF&lt;/a&gt; - o público, em sua maioria, eram alunos do curso de Ciência da Computação da mesma universidade. Na verdade, esse evento é itinerante e passou por outros locais do Brasil, como &lt;a href="http://pt.wikipedia.org/wiki/S%C3%A3o_Paulo"&gt;São Paulo&lt;/a&gt; e &lt;a href="http://pt.wikipedia.org/wiki/Florian%C3%B3polis"&gt;Floripa&lt;/a&gt;!
&lt;/p&gt;
&lt;p&gt;
   Apesar de eu não utilizar &lt;a href="http://www.java.com/pt_BR/"&gt;Java&lt;/a&gt;, gostei do evento, principalmente por ver o que andam fazendo com outras linguagens em termos de &lt;a href="http://pt.wikipedia.org/wiki/Web"&gt;Web&lt;/a&gt;, já que trabalho com desenvolvimento &lt;a href="http://pt.wikipedia.org/wiki/Web"&gt;Web&lt;/a&gt; em &lt;a href="http://www.python.org/"&gt;Python&lt;/a&gt; e desenvolvo o &lt;a href="http://www.web2py.com/"&gt;web2py&lt;/a&gt;. Sinceramente não entendi bem porque existe tanta "burocracia" para utilizar as bibliotecas e &lt;emph&gt;frameworks&lt;/emph&gt; apresentados lá - talvez porque eu esteja acostumado a usar &lt;a href="http://en.wikipedia.org/wiki/DRY"&gt;DRY&lt;/a&gt; e &lt;a href="http://www.python.org/"&gt;Python&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
   O que mais gostei no evento foram as duas últimas palestras: uma sobre o &lt;a href="http://appengine.google.com/"&gt;Google App Engine&lt;/a&gt; e, inusitadamente, sobre o &lt;a href="http://arduino.cc/"&gt;Arduino&lt;/a&gt;.
&lt;/p&gt;
   Para quem não conhece, o &lt;a href="http://arduino.cc/"&gt;Arduino&lt;/a&gt; é a junção de uma plataforma de hardware e software livres (com documentação em &lt;a href="http://www.creativecommons.org/"&gt;Creative Commons&lt;/a&gt;!) para computação física. Trocando em miúdos: é uma plaquinha que você conecta na &lt;a href="http://pt.wikipedia.org/wiki/USB"&gt;USB&lt;/a&gt; do seu computador e, através de uma &lt;a href="http://pt.wikipedia.org/wiki/Ambiente_de_Desenvolvimento_Integrado"&gt;IDE&lt;/a&gt;, programa o que quiser e envia o código para a plaquinha. Seu código faz interface com o hardware, podendo ser conectado a sensores (luminosidade, temperatura etc.), &lt;a href="http://pt.wikipedia.org/wiki/LED"&gt;LEDs&lt;/a&gt;, motores e outros componentes (comunicação via &lt;a href="http://pt.wikipedia.org/wiki/Ethernet"&gt;Ethernet&lt;/a&gt;, &lt;a href="http://pt.wikipedia.org/wiki/Bluetooth"&gt;Bluetooth&lt;/a&gt; etc.). É bastante legal, principalmente para quem está aprendendo eletrônica.
&lt;p&gt;&lt;/p&gt;
&lt;p align="center"&gt;
   &lt;img src="http://www.justen.eng.br/img/arduino.jpg" alt="Arduino" /&gt;
   &lt;br /&gt;
   &lt;a href="http://arduino.cc/en/uploads/Main/arduino316.jpg"&gt;Foto por Nicholas Zambetti, do site oficial do Arduino&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
   A minha surpresa no &lt;a href="http://www.thedevelopersconference.com.br/"&gt;TDC&lt;/a&gt; foi justamente por ter uma palestra sobre &lt;a href="http://arduino.cc/"&gt;Arduino&lt;/a&gt; - que nada tem a ver com &lt;a href="http://java.com/pt_BR/"&gt;Java&lt;/a&gt;! &lt;strong&gt;Vinícius Senger&lt;/strong&gt;, da &lt;a href="http://www.globalcode.com.br/"&gt;GlobalCode&lt;/a&gt;, fez a palestra sobre &lt;a href="http://arduino.cc/"&gt;Arduino&lt;/a&gt;, anunciando o novo produto dessa mesma empresa, o &lt;a href="http://www.globalcode.com.br/site/noticias/painel.seam?chave=entrevistaProgramMe"&gt;Program-ME&lt;/a&gt;: hardware baseado no Arduino com alguns componentes extras. Bem legal o projeto!
&lt;/p&gt;
&lt;p&gt;
    Eu já vinha me interessando pelo &lt;a href="http://arduino.cc/"&gt;Arduino&lt;/a&gt; há alguns meses e há 3 semanas comprei um. Foi bastante proveitoso o evento visto que pude conversar bastante com o Vinícius sobre. :-)
&lt;/p&gt;
&lt;p&gt;
   Obviamente, tive que aproveitar a oportunidade de ter mais de 200 estudantes de computação para falar do &lt;a href="http://www.dojorio.org/"&gt;Coding Dojo&lt;/a&gt; e, de quebra, do &lt;a href="http://www.horaextra.org/"&gt;Hora Extra&lt;/a&gt;. Expliquei em alguns poucos minutos o que é e convidei a galera - é o &lt;a href="http://www.dojorio.org/"&gt;Coding Dojo Rio&lt;/a&gt; conquistando territórios!
&lt;/p&gt;
&lt;p align="center"&gt;
   &lt;img src="http://www.justen.eng.br/img/alvaro_tdc2009_dojo.jpg" alt="Álvaro Justen falando sobre Coding Dojo no The Developer's Conference 2009" height="320" width="240" /&gt;
   &lt;br /&gt;
   Foto por &lt;a href="http://www.pedromenezes.com/"&gt;Pedro Menezes&lt;/a&gt; e seu celular
&lt;/p&gt;
&lt;p&gt;
    --
    &lt;br /&gt;
    &amp;nbsp;&amp;nbsp;&amp;nbsp;Álvaro Justen - Turicas
    &lt;br /&gt;
    &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.peta5.com.br/"&gt;Peta5&lt;/a&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-4372897446756555573?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/XcTi7cPs-Lk" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/XcTi7cPs-Lk/como-foi-o-developers-conferente-2009.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/11/como-foi-o-developers-conferente-2009.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-8603555128892877348</guid><pubDate>Fri, 13 Nov 2009 17:45:00 +0000</pubDate><atom:updated>2009-11-18T15:46:37.584-02:00</atom:updated><title>Como foi o Coding Dojo Rio [4] em Niterói</title><description>&lt;p&gt;
  Na quinta-feira passada aconteceu o &lt;a href="http://www.dojorio.org/"&gt;Coding Dojo Rio em Niterói&lt;/a&gt;, como de costume, e foi bem legal! O problema foi o &lt;a href="http://www.codingdojo.org/cgi-bin/wiki.pl?KataBowling"&gt;bowling&lt;/a&gt; e a linguagem utilizada foi &lt;a href="http://pt.wikipedia.org/wiki/JavaScript"&gt;JavaScript&lt;/a&gt;.
  &lt;br /&gt;
  &lt;h2&gt; Participantes (12) &lt;/h2&gt;
  &lt;ul&gt;
    &lt;li&gt; &lt;a href="http://blog.justen.eng.br/"&gt;Álvaro Justen&lt;/a&gt; &lt;/li&gt;
    &lt;li&gt; Bernardo Botelho &lt;/li&gt;
    &lt;li&gt; Diego Moreira Guimarães &lt;/li&gt;
    &lt;li&gt; Flávio Amieiro &lt;/li&gt;
    &lt;li&gt; Gabriel Ayres Saraiva &lt;/li&gt;
    &lt;li&gt; Joel Santos &lt;/li&gt;
    &lt;li&gt; Júlia Varanda da Silva &lt;/li&gt;
    &lt;li&gt; Mariana Bedran Lesche &lt;/li&gt;
    &lt;li&gt; Mário Mariani &lt;/li&gt;
    &lt;li&gt; &lt;a href="http://www.pedromenezes.com/"&gt;Pedro Menezes&lt;/a&gt; &lt;/li&gt;
    &lt;li&gt; Victor A. de Oliveira &lt;/li&gt;
    &lt;li&gt; Vinícius Manães Teles &lt;/li&gt;
  &lt;/ul&gt;
&lt;/p&gt;
&lt;p&gt;
  &lt;h2&gt; &lt;emph&gt; Feedback &lt;/emph&gt; &lt;/h2&gt;

  Nota: o &lt;emph&gt;feedback&lt;/emph&gt; descrito abaixo é dos participantes do encontro e não expressa necessariamente a minha opinião.
  &lt;h3&gt; Carinha feliz :-) &lt;/h3&gt;
  &lt;ul&gt;
    &lt;li&gt; Tivemos mais iterações &lt;/li&gt;
    &lt;li&gt; Comida: vários biscoitos + duas Cocas - sobrou! &lt;/li&gt;
    &lt;li&gt; Problema divertido &lt;/li&gt;
    &lt;li&gt; Finalmente o Vinícius parou de enrolar e veio! &lt;/li&gt;
    &lt;li&gt; Mais gente nova \o/ &lt;/li&gt;
    &lt;li&gt; &lt;a href="http://blog.justen.eng.br/"&gt;Álvaro&lt;/a&gt; não veio só para o pós-dojo &lt;/li&gt;
    &lt;li&gt; Sala boa (e provavelmente definitiva) &lt;/li&gt;
    &lt;li&gt; Linguagens diferentes a cada Dojo - &lt;a href="http://pt.wikipedia.org/wiki/JavaScript"&gt;JavaScript&lt;/a&gt; &lt;/li&gt;
    &lt;li&gt; Veio bastante gente! &lt;/li&gt;
    &lt;li&gt; Todo mundo programou &lt;/li&gt;
    &lt;li&gt; A ferramenta para TDD em &lt;a href="http://pt.wikipedia.org/wiki/JavaScript"&gt;JavaScript&lt;/a&gt; é muito boa (&lt;a href="http://code.google.com/p/jsspec/"&gt;JSSpec&lt;/a&gt;) &lt;/li&gt;
    &lt;li&gt; Eu nunca tinha vindo, me amarrei na iniciativa e no pessoal &lt;/li&gt;
    &lt;li&gt; Em Niterói! \o/ &lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3&gt; Carinha triste :-( &lt;/h3&gt;
  &lt;ul&gt;
    &lt;li&gt; Não terminamos o problema &lt;/li&gt;
    &lt;li&gt; Só tinha Coca-cola! &lt;/li&gt;
    &lt;li&gt; Galera não sabe as regras do boliche &lt;/li&gt;
    &lt;li&gt; Ultrapassamos o tempo combinado &lt;/li&gt;
    &lt;li&gt; Muito biscoito pra pouca fome (o.O) &lt;/li&gt;
    &lt;li&gt; Código podia ser mais refatorado &lt;/li&gt;
    &lt;li&gt; Teclado ruim &lt;/li&gt;
    &lt;li&gt; Começou atrasado &lt;/li&gt;
    &lt;li&gt; Escolhemos o problema em cima da hora &lt;/li&gt;
    &lt;li&gt; Ninguém levou teclado USB &lt;/li&gt;
    &lt;li&gt; Algumas duplas falaram muito baixo &lt;/li&gt;
    &lt;li&gt; Pouca gente compareceu comparando-se às propagandas feitas no &lt;a href="http://www.thedevelopersconference.com.br/"&gt;The Developers' Conference&lt;/a&gt; e na aula de Engenharia de Software II &lt;/li&gt;
    &lt;li&gt; E o vídeo? &lt;/li&gt;
    &lt;li&gt; Esqueci da comida &lt;/li&gt;
    &lt;li&gt; Cheguei atrasado &lt;/li&gt;
    &lt;li&gt; Falei demais &lt;/li&gt;
    &lt;li&gt; Refatorei sem testar! &lt;/li&gt;
    &lt;li&gt; Problema complicado &lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3&gt; Comentários &lt;/h3&gt;

  &lt;ul&gt;
    &lt;li&gt; Que tal fazermos o próximo em &lt;a href="http://www.lua.org/"&gt;Lua&lt;/a&gt;? &lt;/li&gt;
    &lt;li&gt; Que tal fazermos o próximo em &lt;a href="http://www.ruby-lang.org/en/"&gt;Ruby&lt;/a&gt;? &lt;/li&gt;
    &lt;li&gt; Que tal mudar o lugar do pós-dojo? &lt;/li&gt;
    &lt;li&gt; Nào utilizar string como entrada &lt;/li&gt;
    &lt;li&gt; Procurar problemas inéditos &lt;/li&gt;
    &lt;li&gt; Podíamos discutir problemas pela lista &lt;/li&gt;
  &lt;/ul&gt;
&lt;/p&gt;
&lt;p&gt;
    As fotos, tiradas por &lt;a href="http://www.pedromenezes.com/"&gt;Pedro Menezes&lt;/a&gt; e pelo &lt;emph&gt;japinha que não sabia tirar fotos&lt;/emph&gt; estão no &lt;a href="http://www.flickr.com/photos/pedromenezes/sets/72157622794441892/"&gt;Flickr do Pedro Menezes&lt;/a&gt;.
&lt;/p&gt;
&lt;p align="center"&gt;
    &lt;img src="http://farm3.static.flickr.com/2635/4100610816_40a009e69e.jpg" width="400" height="300" alt="Pessoal no Coding Dojo"/&gt;
&lt;/p&gt;
&lt;p align="center"&gt;
    &lt;img src="http://farm3.static.flickr.com/2792/4100612024_6dbe2cf27d.jpg" width="400" height="300" alt="Pós-dojo no Tio Cotó"/&gt;
    &lt;br /&gt;
    Dessa vez pós-dojo foi no Tio Cotó!
&lt;/p&gt;
&lt;p&gt;
    Para quem estiver interessado (e para quem já participa) e ainda não está inscrito na lista, &lt;a href="http://groups.google.com/group/dojo-rio"&gt;entre já na lista de discussão do Dojo Rio&lt;/a&gt;. Lá conversamos sobre as sessões, discutimos os problemas abordados, sugestões etc.
&lt;/p&gt;
&lt;p&gt;
    E pra finalizar, como de costume: amanhã tem mais! Toda &lt;strong&gt;quinta-feira&lt;/strong&gt;, às &lt;strong&gt;18h30min&lt;/strong&gt;, em &lt;a href="http://pt.wikipedia.org/wiki/Niterói"&gt;Niterói&lt;/a&gt;.
    &lt;br /&gt;
    Endereço: &lt;strong&gt;Rua Passo da Pátria, 156, Sala 406A, bloco E (&lt;strong&gt;prédio velho&lt;/strong&gt;) - Campus Praia Vermelha, em Boa Viagem, Niterói/RJ&lt;/strong&gt;. Veja o &lt;a href="http://maps.google.com/maps?f=q&amp;source=s_q&amp;hl=en&amp;geocode=&amp;q=Rua+Passo+da+P%C3%A1tria,+156+Niter%C3%B3i&amp;sll=-22.903539,-43.209587&amp;sspn=0.808345,1.557312&amp;ie=UTF8&amp;hq=&amp;hnear=R.+Passo+da+P%C3%A1tria,+156+-+Boa+Viagem,+Niter%C3%B3i+-+RJ,+24210-240,+Brazil&amp;t=h&amp;z=17"&gt;local do Coding Dojo em Niterói pelo Google Maps&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
    Se você nunca veio, participe! O &lt;a href="http://www.codingdojo.org/"&gt;Coding Dojo&lt;/a&gt; é gratuito, tem ambiente descontraído, inclusivo e proporciona o aprendizado de todos - venha e chame seus amigos!
&lt;/p&gt;
&lt;p&gt;
  --
  &lt;br /&gt;
  &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://blog.justen.eng.br/"&gt;Álvaro Justen - Turicas&lt;/a&gt;
  &lt;br /&gt;
  &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.peta5.com.br/"&gt;Peta5&lt;/a&gt;

&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-8603555128892877348?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/TR1zukNWjVo" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/TR1zukNWjVo/como-foi-o-coding-dojo-rio-4-em-niteroi.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/11/como-foi-o-coding-dojo-rio-4-em-niteroi.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-4698151353008068622</guid><pubDate>Thu, 05 Nov 2009 03:02:00 +0000</pubDate><atom:updated>2009-11-05T01:14:49.256-02:00</atom:updated><title>Coding Dojo Rio [3] em Niterói</title><description>&lt;p&gt;
    Seguindo a tradição, nessa &lt;strong&gt;quinta-feira&lt;/strong&gt; (5 de novembro), teremos &lt;a href="http://www.codingdojo.org/"&gt;Coding Dojo&lt;/a&gt; às &lt;strong&gt;18h30min&lt;/strong&gt; em &lt;a href="http://pt.wikipedia.org/wiki/Niterói"&gt;Niterói&lt;/a&gt;. Pra galera que se confundiu semana passada: é quinta e não sexta! E tem TODA quinta! :-)
&lt;/p&gt;
&lt;p&gt;
    Como ainda não tenho informação precisa sobre a sala, fica como ponto de encontro o laboratório da &lt;a href="http://www.peta5.com.br/"&gt;Peta5&lt;/a&gt; na &lt;a href="http://www.uff.br/"&gt;UFF&lt;/a&gt;, sala &lt;strong&gt;406A&lt;/strong&gt; do &lt;strong&gt;prédio velho&lt;/strong&gt; (bloco E), às &lt;strong&gt;18h30min&lt;/strong&gt;. De lá partiremos para o local definitivo.
    &lt;br /&gt;
    Endereço: &lt;strong&gt;Rua Passo da Pátria, 156, Sala 406A, bloco E (&lt;strong&gt;prédio velho&lt;/strong&gt;) - Campus Praia Vermelha, em Boa Viagem, Niterói/RJ&lt;/strong&gt;. Veja o &lt;a href="http://maps.google.com/maps?f=q&amp;source=s_q&amp;hl=en&amp;geocode=&amp;q=Rua+Passo+da+P%C3%A1tria,+156+Niter%C3%B3i&amp;sll=-22.903539,-43.209587&amp;sspn=0.808345,1.557312&amp;ie=UTF8&amp;hq=&amp;hnear=R.+Passo+da+P%C3%A1tria,+156+-+Boa+Viagem,+Niter%C3%B3i+-+RJ,+24210-240,+Brazil&amp;t=h&amp;z=17"&gt;local do Coding Dojo em Niterói pelo Google Maps&lt;/a&gt;.
    &lt;br /&gt;
    Dica 0: não sabe chegar em &lt;a href="http://pt.wikipedia.org/wiki/Niterói"&gt;Niterói&lt;/a&gt; ou no &lt;emph&gt;campus&lt;/emph&gt; &lt;strong&gt;Praia Vermelha&lt;/strong&gt; da &lt;a href="http://www.uff.br/"&gt;UFF&lt;/a&gt; (não confunda com Praia Vermelha da &lt;a href="http://www.ufrj.br/"&gt;UFRJ&lt;/a&gt;, que fica no &lt;a href="http://pt.wikipedia.org/wiki/Rio_de_Janeiro"&gt;Rio&lt;/a&gt;!)? Leia então &lt;a href="http://www.if.uff.br/pt/contato/como-chegar"&gt;Como chegar ao &lt;emph&gt;campus&lt;/emph&gt; &lt;strong&gt;Praia Vermelha&lt;/strong&gt; da UFF, em Niterói&lt;/a&gt;.
    &lt;br /&gt;
    Dica 1: ao entrar no &lt;emph&gt;campus&lt;/emph&gt; você subirá uma rampa e verá dois prédios: um novo (lado direito) e um mais antigo ("prédio velho") ao lado esquerdo. Entre no prédio novo e vá até o terceiro andar.
&lt;/p&gt;
&lt;p&gt;
    Se você é desenvolvedor de &lt;emph&gt;software&lt;/emph&gt;, leu até aqui mas ainda não entendeu nada sobre esse &lt;emph&gt;post&lt;/emph&gt;, &lt;a href="http://blog.justen.eng.br/2009/10/coding-dojorio-em-niteroi.html"&gt;saiba logo o que é Coding Dojo, para que serve e porque o pessoal gosta tanto&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
    Ainda não temos um problema definido, nem uma linguagem, mas como semana passada algumas pessoas sinalizaram que gostariam de fazer em Java, se elas estiverem lá, faremos!
&lt;/p&gt;
&lt;p&gt;
    Aos interessados, peço que postem um comentário aqui confirmando presença e até lá!
&lt;/p&gt;
&lt;p&gt;
    &amp;nbsp;&amp;nbsp;&amp;nbsp;Álvaro Justen - Turicas
    &lt;br /&gt;
    &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.peta5.com.br/"&gt;Peta5&lt;/a&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-4698151353008068622?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/UkYO4WF2NJA" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/UkYO4WF2NJA/coding-dojo-rio-3-em-niteroi.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/11/coding-dojo-rio-3-em-niteroi.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-3519108361652545989</guid><pubDate>Sun, 01 Nov 2009 19:09:00 +0000</pubDate><atom:updated>2009-11-01T18:16:41.253-02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">dojorio</category><category domain="http://www.blogger.com/atom/ns#">pythonrio</category><category domain="http://www.blogger.com/atom/ns#">peta5</category><category domain="http://www.blogger.com/atom/ns#">dojo</category><title>Como foi o Coding Dojo Rio 2 em Niterói</title><description>&lt;p&gt;
  Dessa vez infelizmente não pude ir ao &lt;a href="http://www.dojorio.org/"&gt;Coding Dojo Rio em Niterói&lt;/a&gt; :-(, mas fui ao pós-dojo! De qualquer forma, vamos ao relato:
  &lt;br /&gt;
  &lt;h2&gt; Participantes &lt;/h2&gt;
  &lt;ul&gt;
    &lt;li&gt; Júlia Varanda da Silva &lt;/li&gt;
    &lt;li&gt; Victor A. de Oliveira &lt;/li&gt;
    &lt;li&gt; Flávio Amieiro &lt;/li&gt;
    &lt;li&gt; Bruno Pereira Pinto &lt;/li&gt;
    &lt;li&gt; Gabriel de Britto Lima &lt;/li&gt;
    &lt;li&gt; &lt;a href="http://www.pedromenezes.com/"&gt;Pedro Menezes&lt;/a&gt; &lt;/li&gt;
    &lt;li&gt; Bernardo Botelho &lt;/li&gt;
    &lt;li&gt; Thiago Diogo &lt;/li&gt;
    &lt;li&gt; Mário Mariani &lt;/li&gt;
  &lt;/ul&gt;
&lt;/p&gt;
&lt;p&gt;
  &lt;h2&gt; &lt;emph&gt; Feedback &lt;/emph&gt; &lt;/h2&gt;
  Nota: o &lt;emph&gt;feedback&lt;/emph&gt; descrito abaixo é dos participantes e não expressa necessariamente a minha opinião (até porque eu não estava lá! ;-).
  &lt;h3&gt; Carinha feliz :-) &lt;/h3&gt;
  &lt;ul&gt;
    &lt;li&gt; Comida! &lt;/li&gt;
    &lt;li&gt; Horário &lt;/li&gt;
    &lt;li&gt; Veio bastante gente! &lt;/li&gt;
    &lt;li&gt; Pouca gente... &lt;/li&gt;
    &lt;li&gt; Local: sala melhor &lt;/li&gt;
    &lt;li&gt; Todo mundo programou &lt;/li&gt;
    &lt;li&gt; O pessoal não deixou de vir (mesmo os que só puderam chegar tarde) &lt;/li&gt;
    &lt;li&gt; Biscoito &lt;a href="http://www.mabel.com.br/"&gt;Mabel&lt;/a&gt; &lt;/li&gt;
    &lt;li&gt; Estou melhorando no &lt;a href="http://www.python.org/"&gt;Python&lt;/a&gt; &lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3&gt; Carinha triste :-( &lt;/h3&gt;
  &lt;ul&gt;
    &lt;li&gt; Não conseguimos resolver o problema &lt;/li&gt;
    &lt;li&gt; Pouca gente... &lt;/li&gt;
    &lt;li&gt; &lt;a href="http://www.python.org/"&gt;Python&lt;/a&gt; de novo? &lt;/li&gt;
    &lt;li&gt; Cadê o &lt;a href="http://blog.justen.eng.br/"&gt;Álvaro&lt;/a&gt;? &lt;/li&gt;
    &lt;li&gt; Cadê a Coca? &lt;/li&gt;
    &lt;li&gt; Horário: muito cedo, tive que vir correndo &lt;/li&gt;
    &lt;li&gt; Horário: cheguei atrasado &lt;/li&gt;
    &lt;li&gt; Teclado: difícil colocar aspa simples (') &lt;/li&gt;
    &lt;li&gt; &lt;a href="http://pt.wikipedia.org/wiki/Cadeia_de_caracteres"&gt;Strings&lt;/a&gt; de novo!? &lt;/li&gt;
    &lt;li&gt; Problema ficou difícil muito rapidamente &lt;/li&gt;
    &lt;li&gt; Muita gente deixou de vir &lt;/li&gt;
    &lt;li&gt; Problema poderia ter sido mais simples &lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3&gt; Comentários &lt;/h3&gt;
  &lt;ul&gt;
    &lt;li&gt; Divulgar mais entre os alunos &lt;/li&gt;
    &lt;li&gt; Usar teclado e &lt;emph&gt;mouse&lt;/emph&gt; externos &lt;/li&gt;
  &lt;/ul&gt;
&lt;/p&gt;
&lt;p&gt;
  Alguns recados:
  &lt;br /&gt;
  Para quem estiver interessado (e para quem já participa) e ainda não está inscrito na lista, &lt;a href="http://groups.google.com/group/dojo-rio"&gt;entre já na lista de discussão do Dojo Rio&lt;/a&gt;. Lá conversamos sobre as sessões, discutimos os problemas abordados, sugestões etc.
  &lt;br /&gt;
  Dessa vez o nosso fotógrafo &lt;a href="http://www.pedromenezes.com/"&gt;Pedro Menezes&lt;/a&gt; esqueceu a câmera e não tivemos fotos. :-(
  &lt;br /&gt;
  Desde &lt;a href="http://blog.justen.eng.br/2009/10/coding-dojorio-em-niteroi.html"&gt;o primeiro Coding Dojo em Niterói&lt;/a&gt; eu ainda não postei o código no repositório por não ter permissão - agora que já tenho permissão (valeu, &lt;a href="http://www.rodolfocarvalho.net/"&gt;Rodolfo&lt;/a&gt;!), pegarei os códigos no laptop da &lt;a href="http://www.peta5.com.br/"&gt;Peta5&lt;/a&gt; durante a semana e farei os &lt;a href="http://en.wikipedia.org/wiki/Commit_%28data_management%29"&gt;commits&lt;/a&gt;.
  &lt;br /&gt;
  Está interessado? Não sabe o que é o pós-dojo que eu tanto falo? O que está esperando? O &lt;a href="http://www.codingdojo.org/"&gt;Coding Dojo&lt;/a&gt; é gratuito, tem ambiente descontraído, inclusivo e proporciona o aprendizado de todos - venha e chame seus amigos!
&lt;/p&gt;
&lt;p&gt;
  --
  &lt;br /&gt;
  &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://blog.justen.eng.br/"&gt;Álvaro Justen - Turicas&lt;/a&gt;
  &lt;br /&gt;
  &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.peta5.com.br/"&gt;Peta5&lt;/a&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-3519108361652545989?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/B3CWYIzKV9g" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/B3CWYIzKV9g/como-foi-o-coding-dojo-rio-2-em-niteroi.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/11/como-foi-o-coding-dojo-rio-2-em-niteroi.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-1060272732367043214</guid><pubDate>Thu, 29 Oct 2009 02:12:00 +0000</pubDate><atom:updated>2009-11-01T18:16:35.632-02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">dojorio</category><category domain="http://www.blogger.com/atom/ns#">pythonrio</category><category domain="http://www.blogger.com/atom/ns#">peta5</category><category domain="http://www.blogger.com/atom/ns#">dojo</category><title>Coding Dojo Rio [2] em Niterói</title><description>&lt;p&gt;
    Para a galera que veio na semana passada e adorou e para os que não vieram e ficaram morrendo de inveja: amanhã teremos &lt;a href="http://www.codingdojo.org/"&gt;Coding Dojo&lt;/a&gt; em &lt;a href="http://pt.wikipedia.org/wiki/Niterói"&gt;Niterói&lt;/a&gt;, como (agora) de costume. :-)
&lt;/p&gt;
&lt;p&gt;
    Aliás, &lt;a href="http://blog.justen.eng.br/2009/10/dojo-rio-em-niteroi-foi-sensacional.html"&gt;semana passada começamos muito bem&lt;/a&gt;: vieram 19 pessoas (tivemos até que mudar de sala!) e ainda faltaram algumas figuras que com certeza estarão nas próximas sessões - &lt;strong&gt;sucesso total&lt;/strong&gt;! Não fique aí parado, se você gostou, chame mais gente e se você se interessou, venha sem medo!
&lt;/p&gt;
&lt;p&gt;
    O encontro de amanhã será em outros horário e sala: acontecerá na sala &lt;strong&gt;335&lt;/strong&gt; do &lt;strong&gt;prédio novo&lt;/strong&gt; e começará às &lt;strong&gt;18h30min&lt;/strong&gt;.
    &lt;br /&gt;
    Endereço: &lt;strong&gt;Rua Passo da Pátria, 156, Sala 335, bloco D (&lt;strong&gt;prédio novo&lt;/strong&gt;) - Campus Praia Vermelha, em Boa Viagem, Niterói/RJ&lt;/strong&gt;. Veja o &lt;a href="http://maps.google.com/maps?f=q&amp;source=s_q&amp;hl=en&amp;geocode=&amp;q=Rua+Passo+da+P%C3%A1tria,+156+Niter%C3%B3i&amp;sll=-22.903539,-43.209587&amp;sspn=0.808345,1.557312&amp;ie=UTF8&amp;hq=&amp;hnear=R.+Passo+da+P%C3%A1tria,+156+-+Boa+Viagem,+Niter%C3%B3i+-+RJ,+24210-240,+Brazil&amp;t=h&amp;z=17"&gt;local do Coding Dojo em Niterói pelo Google Maps&lt;/a&gt;.
    &lt;br /&gt;
    Dica 0: não sabe chegar em &lt;a href="http://pt.wikipedia.org/wiki/Niterói"&gt;Niterói&lt;/a&gt; ou no &lt;emph&gt;campus&lt;/emph&gt; &lt;strong&gt;Praia Vermelha&lt;/strong&gt; da &lt;a href="http://www.uff.br/"&gt;UFF&lt;/a&gt; (não confunda com Praia Vermelha da &lt;a href="http://www.ufrj.br/"&gt;UFRJ&lt;/a&gt;, que fica no &lt;a href="http://pt.wikipedia.org/wiki/Rio_de_Janeiro"&gt;Rio&lt;/a&gt;!)? Leia então &lt;a href="http://www.if.uff.br/pt/contato/como-chegar"&gt;Como chegar ao &lt;emph&gt;campus&lt;/emph&gt; &lt;strong&gt;Praia Vermelha&lt;/strong&gt; da UFF, em Niterói&lt;/a&gt;.
    &lt;br /&gt;
    Dica 1: ao entrar no &lt;emph&gt;campus&lt;/emph&gt; você subirá uma rampa e verá dois prédios: um novo (lado direito) e um mais antigo ("prédio velho") ao lado esquerdo. Entre no prédio novo e vá até o terceiro andar.
&lt;/p&gt;
&lt;p&gt;
    Se você é desenvolvedor de &lt;emph&gt;software&lt;/emph&gt;, leu até aqui mas ainda não entendeu nada sobre esse &lt;emph&gt;post&lt;/emph&gt;, &lt;a href="http://blog.justen.eng.br/2009/10/coding-dojorio-em-niteroi.html"&gt;saiba logo o que é Coding Dojo, para que serve e porque o pessoal gosta tanto&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
    Ainda não temos uma linguagem de programação definida para amanhã. Na semana passada utilizamos &lt;a href="http://www.python.org/"&gt;Python&lt;/a&gt; e seria legal não repetirmos. Se você gostaria de sugerir uma linguagem, comente aqui e, de preferência, sugira um ambiente de testes para utilizarmos - não esqueça também de ir ao Dojo e levar alguém que entenda da mesma! ;-)
&lt;/p&gt;
&lt;p&gt;
    Aos interessados, peço que postem um comentário aqui confirmando presença e até lá!
&lt;/p&gt;
&lt;p&gt;
    &amp;nbsp;&amp;nbsp;&amp;nbsp;Álvaro Justen - Turicas
    &lt;br /&gt;
    &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.peta5.com.br/"&gt;Peta5&lt;/a&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-1060272732367043214?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/idknXdYsWDs" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/idknXdYsWDs/coding-dojo-rio-2-em-niteroi.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/10/coding-dojo-rio-2-em-niteroi.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-8589008508161828859</guid><pubDate>Sat, 24 Oct 2009 03:44:00 +0000</pubDate><atom:updated>2009-11-01T18:16:29.155-02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">dojorio</category><category domain="http://www.blogger.com/atom/ns#">pythonrio</category><category domain="http://www.blogger.com/atom/ns#">peta5</category><category domain="http://www.blogger.com/atom/ns#">dojo</category><title>Dojo Rio em Niterói foi sensacional!</title><description>&lt;p&gt;
    Ontem, quinta-feira, 22 de outubro de 2009, fizemos a primeira sessão do
    &lt;a href="http://www.dojorio.org/"&gt;Dojo Rio&lt;/a&gt; em &lt;a href="http://pt.wikipedia.org/wiki/Niterói"&gt;Niterói&lt;/a&gt; e foi sensacional! Pra resumir: vieram 19 pessoas, das
    quais 85% nunca tinham participado de um &lt;a href="http://www.codingdojo.org/"&gt;Dojo&lt;/a&gt;. Seguem abaixo mais detalhes
    do encontro.
&lt;/p&gt;
&lt;p&gt;
    Detalhe: deu tanta gente que a sala cedida pela &lt;a href="http://www.peta5.com.br/"&gt;Peta5&lt;/a&gt; acabou não dando conta! Tínhamos 12 cadeiras e quase 20 pessoas - daí fomos para um laboratório do &lt;a href="http://www.telecom.uff.br/"&gt;Departamento de Engenharia de Telecomunicações&lt;/a&gt; da &lt;a href="http://www.uff.br/"&gt;Universidade Federal Fluminense&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
    &lt;h2&gt;Quem foi&lt;/h2&gt;
    &lt;ul&gt;
     &lt;li&gt; &lt;a href="http://blog.justen.eng.br/"&gt;Álvaro Justen&lt;/a&gt; (eu! ;-) &lt;/li&gt;
     &lt;li&gt; Gabriel de Britto Lima &lt;/li&gt;
     &lt;li&gt; Alexandre Ávila Costa &lt;/li&gt;
     &lt;li&gt; Mariana B. Lesche &lt;/li&gt;
     &lt;li&gt; Flávio Amieiro &lt;/li&gt;
     &lt;li&gt; Felipe Cabral &lt;/li&gt;
     &lt;li&gt; Samuel Bandeira Coelho &lt;/li&gt;
     &lt;li&gt; Thiago de Souza Diogo &lt;/li&gt;
     &lt;li&gt; Leandro Ribeiro de Cicco &lt;/li&gt;
     &lt;li&gt; Leonardo Guimarães de Almeira &lt;/li&gt;
     &lt;li&gt; Diego Moreira Guimarães &lt;/li&gt;
     &lt;li&gt; Julia Varanga da Silva &lt;/li&gt;
     &lt;li&gt; Bernardo Botelho Fontes &lt;/li&gt;
     &lt;li&gt; Rafael Maricato Musmanno &lt;/li&gt;
     &lt;li&gt; Daniel D. Castellani Ribeiro &lt;/li&gt;
     &lt;li&gt; Bruno Ferreira Pinto &lt;/li&gt;
     &lt;li&gt; Roberto Weidmann Menezes &lt;/li&gt;
     &lt;li&gt; Mário Sérgio Leite Mariani &lt;/li&gt;
     &lt;li&gt; &lt;a href="http://www.pedromenezes.com/"&gt;Pedro Menezes&lt;/a&gt; &lt;/li&gt;
    &lt;/ul&gt;
    
    &lt;h2&gt;&lt;emph&gt;Feedback&lt;/emph&gt;&lt;/h2&gt;
    &lt;h3&gt;Carinha feliz :-)&lt;/h3&gt;
    &lt;ul&gt;
     &lt;li&gt; Uso de linguagens atuais &lt;/li&gt;
     &lt;li&gt; Modelo de interação interessante &lt;/li&gt;
     &lt;li&gt; Problema bacana &lt;/li&gt;
     &lt;li&gt; Ter contato com outros programadores &lt;/li&gt;
     &lt;li&gt; Descobrir novas funcionalidades do &lt;a href="http://www.python.org/"&gt;Python&lt;/a&gt; &lt;/li&gt;
     &lt;li&gt; Muita gente! &lt;/li&gt;
     &lt;li&gt; Ambiente em &lt;a href="http://pt.wikipedia.org/wiki/GNU/Linux"&gt;GNU/Linux&lt;/a&gt; &lt;/li&gt;
     &lt;li&gt; Um monte de gente nova! &lt;/li&gt;
     &lt;li&gt; Foi em &lt;a href="http://pt.wikipedia.org/wiki/Niterói"&gt;Niterói&lt;/a&gt;! \o/ &lt;/li&gt;
     &lt;li&gt; Perfeito para o treinamento de &lt;a href="http://en.wikipedia.org/wiki/Test_Driven_Development"&gt;TDD&lt;/a&gt; e &lt;a href="http://en.wikipedia.org/wiki/Pair_programming"&gt;&lt;emph&gt;pair programming&lt;/emph&gt;&lt;/a&gt; &lt;/li&gt;
     &lt;li&gt; Datashow e notebook &lt;/li&gt;
     &lt;li&gt; Ambiente agradável e inclusivo, galera animada &lt;/li&gt;
     &lt;li&gt; Foi dinâmico e descontraído &lt;/li&gt;
     &lt;li&gt; Utilizamos uma linguagem que eu não conhecia &lt;/li&gt;
     &lt;li&gt; Conseguimos resolver o problema &lt;/li&gt;
     &lt;li&gt; Proposta [do &lt;a href="http://www.codingdojo.org/"&gt;Dojo&lt;/a&gt;] legal &lt;/li&gt;
     &lt;li&gt; Cabral apareceu &lt;/li&gt;
     &lt;li&gt; Falamos pouco! &lt;/li&gt;
     &lt;li&gt; Biscoitos + cafézinho &lt;/li&gt;
    &lt;/ul&gt;

    &lt;h3&gt;Carinha triste :-(&lt;/h3&gt;
    &lt;ul&gt;
     &lt;li&gt; Computadores (em cima das mesas) atrapalharam um pouco &lt;/li&gt;
     &lt;li&gt; Atrasou/começou tarde &lt;/li&gt;
     &lt;li&gt; Tiraram muita foto! &lt;/li&gt;
     &lt;li&gt; O console é confuso &lt;/li&gt;
     &lt;li&gt; Muita gente falou no vermelho &lt;/li&gt;
     &lt;li&gt; Faltou ";" &lt;/li&gt;
     &lt;li&gt; Trazer mais comida &lt;/li&gt;
     &lt;li&gt; Sala grande demais para o número de pessoas &lt;/li&gt;
     &lt;li&gt; Problema fácil &lt;/li&gt;
     &lt;li&gt; Pilotos e copilotos falaram baixo &lt;/li&gt;
     &lt;li&gt; Faltou ensinar as ferramentas utilizadas (para quem nunca utilizou &lt;a href="http://pt.wikipedia.org/wiki/GNU/Linux"&gt;GNU/Linux&lt;/a&gt;, &lt;emph&gt;frameworks&lt;/emph&gt; de testes etc.) &lt;/li&gt;
     &lt;li&gt; Pessoal fazendo &lt;a href="http://desciclo.pedia.ws/wiki/POG"&gt;POG&lt;/a&gt; &lt;/li&gt;
    &lt;/ul&gt;
    
    &lt;h3&gt;Sugestões&lt;/h3&gt;
    &lt;ul&gt;
     &lt;li&gt; Começar entre 18h30min e 19h independente do número de pessoas que chegou &lt;/li&gt;
     &lt;li&gt; Colocar teclado e mouse &lt;/li&gt;
     &lt;li&gt; Ter hora fixa para terminar (ex: 21h) &lt;/li&gt;
    &lt;/ul&gt;
&lt;/p&gt;
&lt;p&gt;
    Depois do encontro - que acabou lá pelas 22h - fomos para o famoso pós-dojo 
    comer pizza e beber cerveja (ou refrigerante...) no Vestibular do Chopp, na
    Cantareira, pertindo de onde aconteceu a sessão.
&lt;/p&gt;
&lt;p align="center" style="margin-left: -20px; margin-right: -20px;"&gt;
    &lt;a href="http://www.justen.eng.br/img/001.jpg"&gt;&lt;img src="http://www.justen.eng.br/img/001-small.jpg" alt="Dojo Rio em Niterói 1 - Foto 001" border="0" /&gt;&lt;/a&gt;
    &lt;a href="http://www.justen.eng.br/img/002.jpg"&gt;&lt;img src="http://www.justen.eng.br/img/002-small.jpg" alt="Dojo Rio em Niterói 1 - Foto 002" border="0" /&gt;&lt;/a&gt;
    &lt;a href="http://www.justen.eng.br/img/003.jpg"&gt;&lt;img src="http://www.justen.eng.br/img/003-small.jpg" alt="Dojo Rio em Niterói 1 - Foto 003" border="0" /&gt;&lt;/a&gt;
    &lt;a href="http://www.justen.eng.br/img/004.jpg"&gt;&lt;img src="http://www.justen.eng.br/img/004-small.jpg" alt="Dojo Rio em Niterói 1 - Foto 004" border="0" /&gt;&lt;/a&gt;
    &lt;br /&gt;
    Vejam as fotos no &lt;a href="http://www.flickr.com/photos/pedromenezes/sets/72157622521409629/"&gt;Flickr do Pedro Menezes&lt;/a&gt; (nosso fotógrafo oficial!).
&lt;/p&gt;
&lt;p&gt;
    Começou e não para mais: teremos &lt;a href="http://www.codingdojo.org/"&gt;Dojo&lt;/a&gt; toda quinta-feira às 19h em &lt;a href="http://pt.wikipedia.org/wiki/Niterói"&gt;Niterói&lt;/a&gt;!
&lt;/p&gt;
&lt;p&gt;
    --
    &lt;br /&gt;
    &amp;nbsp;&amp;nbsp;&amp;nbsp;Álvaro Justen
    &lt;br /&gt;
    &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.peta5.com.br/"&gt;Peta5&lt;/a&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-8589008508161828859?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/CPtjDSjhMSw" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/CPtjDSjhMSw/dojo-rio-em-niteroi-foi-sensacional.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/10/dojo-rio-em-niteroi-foi-sensacional.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-4550964443863987928</guid><pubDate>Tue, 20 Oct 2009 08:31:00 +0000</pubDate><atom:updated>2009-11-01T18:16:13.134-02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">dojorio</category><category domain="http://www.blogger.com/atom/ns#">pythonrio</category><category domain="http://www.blogger.com/atom/ns#">peta5</category><category domain="http://www.blogger.com/atom/ns#">dojo</category><title>Coding Dojo Rio em Niterói</title><description>&lt;p&gt;
    Demorou mais chegou: &lt;strong&gt;Dojo Rio em Niterói!&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
    Já há algum tempo venho chamando amigos aqui de &lt;a href="http://pt.wikipedia.org/wiki/Niterói"&gt;Niterói&lt;/a&gt;, da &lt;a href="http://www.uff.br/"&gt;UFF&lt;/a&gt; e da &lt;a href="http://www.peta5.com.br/"&gt;Peta5&lt;/a&gt; para irmos ao &lt;a href="http://www.codingdojo.org/"&gt;Coding Dojo&lt;/a&gt; - mais precisamente ao &lt;a href="http://www.dojorio.org/"&gt;Coding Dojo Rio&lt;/a&gt;, que acontece às quartas-feiras na &lt;strong&gt;Lapa&lt;/strong&gt;.
&lt;/p&gt;
&lt;p&gt;
    No mês passado (&lt;a href="http://blog.justen.eng.br/2009/09/eventos-em-setembro.html"&gt;setembro: o mês dos eventos!&lt;/a&gt;) fui a alguns eventos como &lt;a href="http://www.devinrio.com.br/"&gt;Dev in Rio&lt;/a&gt; e &lt;a href="http://www.sfdrj.if.uff.br/"&gt;Software Freedom Day RJ&lt;/a&gt; onde encontrei pessoas de &lt;a href="http://pt.wikipedia.org/wiki/Niterói"&gt;Niterói&lt;/a&gt; interessadas em participar de um &lt;a href="http://www.codingdojo.org/"&gt;Coding Dojo&lt;/a&gt; aqui.
&lt;/p&gt;
&lt;p&gt;
    Com o apoio da &lt;a href="http://www.peta5.com.br/"&gt;Peta5&lt;/a&gt; e do pessoal do &lt;a href="http://www.dojorio.org/"&gt;Coding Dojo Rio&lt;/a&gt;, resolvi então criar um &lt;a href="http://en.wikipedia.org/wiki/Branching_(software)"&gt;&lt;i&gt;branch&lt;/i&gt;&lt;/a&gt; do grupo aqui na &lt;a href="http://pt.wikipedia.org/wiki/Niterói"&gt;terra de Araribóia&lt;/a&gt;! :-)
&lt;/p&gt;
&lt;p&gt;
    O encontro acontecerá às &lt;strong&gt;quintas-feiras&lt;/strong&gt; às &lt;strong&gt;19h&lt;/strong&gt; no &lt;strong&gt;laboratório da Peta5 na UFF&lt;/strong&gt;, que fica no endereço: &lt;strong&gt;Rua Passo da Pátria, 156, Sala 406A, bloco E - Campus Praia Vermelha, em Boa Viagem, Niterói/RJ&lt;/strong&gt;. Veja o &lt;a href="http://maps.google.com/maps?f=q&amp;source=s_q&amp;hl=en&amp;geocode=&amp;q=Rua+Passo+da+P%C3%A1tria,+156+Niter%C3%B3i&amp;sll=-22.903539,-43.209587&amp;sspn=0.808345,1.557312&amp;ie=UTF8&amp;hq=&amp;hnear=R.+Passo+da+P%C3%A1tria,+156+-+Boa+Viagem,+Niter%C3%B3i+-+RJ,+24210-240,+Brazil&amp;t=h&amp;z=17"&gt;laboratório da Peta5 na UFF pelo Google Maps&lt;/a&gt;.
    &lt;br /&gt;
    Dica 0: não sabe chegar em &lt;a href="http://pt.wikipedia.org/wiki/Niterói"&gt;Niterói&lt;/a&gt; ou no &lt;emph&gt;campus&lt;/emph&gt; &lt;strong&gt;Praia Vermelha&lt;/strong&gt; da &lt;a href="http://www.uff.br/"&gt;UFF&lt;/a&gt; (não confunda com Praia Vermelha da &lt;a href="http://www.ufrj.br/"&gt;UFRJ&lt;/a&gt;, que fica no &lt;a href="http://pt.wikipedia.org/wiki/Rio_de_Janeiro"&gt;Rio&lt;/a&gt;!)? Leia então &lt;a href="http://www.if.uff.br/pt/contato/como-chegar"&gt;Como chegar ao &lt;emph&gt;campus&lt;/emph&gt; &lt;strong&gt;Praia Vermelha&lt;/strong&gt; da UFF, em Niterói&lt;/a&gt;.
    &lt;br /&gt;
    Dica 1: ao entrar no &lt;emph&gt;campus&lt;/emph&gt; você subirá uma rampa e verá dois prédios: um novo (lado direito) e um mais antigo ("prédio velho") ao lado esquerdo. Entre no prédio velho e vá até o quarto andar (você já entrará no segundo andar).
&lt;/p&gt;
&lt;p&gt;
    Ah, e se você ainda não sabe o que é o &lt;a href="http://www.codingdojo.org/"&gt;Coding Dojo&lt;/a&gt;: é um grupo de desenvolvedores de software que se reúne com o objetivo de melhorar suas práticas de programação. Os atletas todos treinam, por que os programadores não? A ideia do &lt;a href="http://www.codingdojo.org/"&gt;Coding Dojo&lt;/a&gt; é treinar, criando um ambiente colaborativo e utilizando técnicas robustas como desenvolvimento orientado a testes (&lt;a href="http://en.wikipedia.org/wiki/Test_driven_development"&gt;TDD&lt;/a&gt;), programação em par (&lt;a href="http://en.wikipedia.org/wiki/Pair_programming"&gt;&lt;emph&gt;pair programming&lt;/emph&gt;&lt;/a&gt;), dentre outras - independentes da linguagem de programação! É um ótimo ambiente para aprender e fazer amizades. Não vou dar mais detalhes aqui: venha ao &lt;strong&gt;Dojo Rio em Niterói&lt;/strong&gt; e conheça! ;-)
&lt;/p&gt;
&lt;p&gt;
    Aos interessados, peço que postem um comentário aqui confirmando presença. Até quinta!
&lt;/p&gt;
&lt;p&gt;
    &amp;nbsp;&amp;nbsp;&amp;nbsp;Álvaro Justen - Turicas
    &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.peta5.com.br/"&gt;Peta5&lt;/a&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-4550964443863987928?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/9NrOiGB_Lig" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/9NrOiGB_Lig/coding-dojorio-em-niteroi.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">12</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/10/coding-dojorio-em-niteroi.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-1137466423821554840</guid><pubDate>Sat, 17 Oct 2009 21:16:00 +0000</pubDate><atom:updated>2009-11-01T18:16:00.908-02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">dojorio</category><category domain="http://www.blogger.com/atom/ns#">pythonrio</category><category domain="http://www.blogger.com/atom/ns#">dojo</category><title>Vídeo do Dojo Rio</title><description>&lt;p&gt;
    Você conhece o &lt;a href="http://www.codingdojo.org/"&gt;Coding Dojo&lt;/a&gt;? Digamos que seja um encontro de programadores em que a gente bate a nossa "peladinha" - os atletas treinam, por que nós não podemos? :-)
&lt;/p&gt;
&lt;p&gt;
    Aqui no Rio temos um grupo, o &lt;a href="http://www.dojorio.org/"&gt;DojoRio&lt;/a&gt;, que se reúne &lt;emph&gt;há mais de 30 semanas&lt;/emph&gt;, toda semana, às quartas-feiras, para treinar técnicas ágeis e robustas de desenvolvimento de software, como TDD (&lt;i&gt;Test Drive Development&lt;/i&gt; - Desenvolvimento Orientado a Testes) e &lt;i&gt;pair programming&lt;/i&gt; (programação em par).
&lt;/p&gt;
&lt;p&gt;
    Segue um vídeo que fiz, usando &lt;a href="http://www.python.org/"&gt;Python&lt;/a&gt;, com fotos de nossos encontros, ao som de "Melô do Teste Automatizado" - algumas fotos "combinaram" bem com partes da música. ;-) Créditos:
    &lt;ul&gt;
        &lt;li&gt; Fotos por &lt;a href="http://rodolfocarvalho.net/"&gt;Rodolfo Carvalho&lt;/a&gt; &lt;/li&gt;
        &lt;li&gt; Música por &lt;a href="http://agileandart.blogspot.com/"&gt;Daniel Cukier&lt;/a&gt; &lt;/li&gt;
        &lt;li&gt; Vídeo por &lt;a href="http://blog.justen.eng.br/"&gt;Álvaro Justen - Turicas&lt;/a&gt; (eu! ;-) &lt;/li&gt;
    &lt;/ul&gt;
&lt;/p&gt;
&lt;p align="center" style="margin-left: -20px; margin-right: -20px"&gt;
&lt;embed src='http://www.videolog.tv/ajax/codigoPlayer.php?id_video=488290&amp;amp;relacionados=S&amp;amp;default=N&amp;amp;cor_fundo=000000&amp;amp;swf=1&amp;amp;width=504&amp;amp;height=405' width='504' height='405' type='application/x-shockwave-flash' allowFullScreen='true' AllowScriptAccess='always'&gt;&lt;/embed&gt;
&lt;/p&gt;
&lt;p&gt;
    &lt;a href="http://www.justen.eng.br/downloads/DojoRio.ogv"&gt;Baixe o vídeo do DojoRio&lt;/a&gt; - formato &lt;a href="http://wiki.xiph.org/Ogg"&gt;OGG&lt;/a&gt; (&lt;a href="http://www.theora.org/"&gt;Theora&lt;/a&gt; + &lt;a href="http://www.vorbis.com/"&gt;Vorbis&lt;/a&gt;), que aliás permite menor tamanho com mesma qualidade (nesse caso, o OGV tem &lt;b&gt;13,5MB&lt;/b&gt;, um AVI para o mesmo vídeo, com mesma qualidade, tem &lt;b&gt;21,6MB&lt;/b&gt; - o OGV é 62,5% do tamanho do AVI -, e um MP4 ficaria maior ainda!).
&lt;/p&gt;
&lt;p&gt;
   Letra da música:
   &lt;br /&gt;
&lt;pre&gt;
    De tanto enfiar, gambiarra pra funcionar
    Meu código até parece, sabe o quê?
    Ma-ca-rro-na-da da mama
    Eu vou ter que refatorar!
    (2x)

    Se esse método for colocado na classe acima,
    Esse outro a gente lima,
    vou com teste completando
    Vou testar, pra acabar com esse sofrimento
    Eu não aguento, vou fazer o teste automatizado!
    (2x)
&lt;/pre&gt;
&lt;/p&gt;
&lt;p&gt;
    Nota: quando tiver um tempinho enviarei para o &lt;a href="http://www.bitbucket.org/"&gt;BitBucket&lt;/a&gt; o código que pega as fotos e a música e cria o vídeo, feito em &lt;a href="http://www.python.org/"&gt;Python&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
    --
    &lt;br /&gt;
    &amp;nbsp;&amp;nbsp;&amp;nbsp;Álvaro Justen - Turicas
    &lt;br /&gt;
    &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.peta5.com.br/"&gt;Peta5&lt;/a&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-1137466423821554840?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/wT5ZqhTE4DM" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/wT5ZqhTE4DM/video-do-dojorio.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">7</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/10/video-do-dojorio.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-8395314956715980428</guid><pubDate>Wed, 14 Oct 2009 20:45:00 +0000</pubDate><atom:updated>2009-10-17T18:46:53.473-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">web2py</category><category domain="http://www.blogger.com/atom/ns#">dicas</category><title>Onde encontrar documentação do web2py</title><description>&lt;p&gt;
    Muita gente me pergunta sobre documentação do &lt;a href="http://www.web2py.com/"&gt;web2py&lt;/a&gt; e reclama que o manual "oficial" não é gratuito. A ideia desse &lt;i&gt;post&lt;/i&gt; é listar as formas de se obter documentação atualizada sobre o &lt;i&gt;framework&lt;/i&gt;. Então, seguem, da mais barata pra mais cara:
&lt;/p&gt;
&lt;p&gt;
    &lt;ul&gt;
        &lt;li&gt; &lt;a href="http://www.scribd.com/doc/19211452/Web2py-Manual"&gt;Manual do web2py para leitura grátis no Scribd&lt;/a&gt;: o Massimo Di Pierro, criador do &lt;a href="http://www.web2py.com/"&gt;web2py&lt;/a&gt;, disponibilizou gratuitamente para leitura a segunda edição do manual. Essa versão não pode ser grátis por problemas de licenças com a &lt;a href="http://depaul.edu/"&gt;universidade onde ele leciona&lt;/a&gt;. Porém, para resolver esse problema, temos a &lt;a href="http://wiki.web2py.com/"&gt;wiki do web2py&lt;/a&gt;, que é a ferramenta de documentação mantida pela comunidade; &lt;/li&gt;
        &lt;li&gt; &lt;a href="http://wiki.web2py.com/"&gt;Wiki do web2py&lt;/a&gt;: é a ferramenta de documentação do projeto feita pela comunidade para a comunidade (contribua!); &lt;/li&gt;
        &lt;li&gt; Listas de discussão:
            &lt;ul&gt;
                &lt;li&gt; &lt;a href="http://groups.google.com/group/web2py"&gt;Lista de discussão internacional do web2py&lt;/a&gt; (em Inglês); &lt;/li&gt;
                &lt;li&gt; &lt;a href="http://groups.google.com/group/web2py-users-brazil"&gt;Lista de discussão brasileira do web2py&lt;/a&gt;: na verdade, essa lista (que eu tive o prazer de criar) contempla falantes de Português, não se restringe só aos web2pyers tupiniquins; :-) &lt;/li&gt;
            &lt;/ul&gt;
        &lt;/li&gt;
        &lt;li&gt; &lt;a href="http://www.lulu.com/product/e-book-download/web2py/5352699"&gt;Manual do web2py (segunda edição) na Lulu.com&lt;/a&gt;: venda do PDF (US$ 12,50). &lt;/li&gt;
    &lt;/ul&gt;
&lt;/p&gt;
&lt;p&gt;
    A segunda edição do manual ainda não está disponível no &lt;a href="http://www.wiley.com/"&gt;Wiley&lt;/a&gt; e na &lt;a href="http://www.amazon.com/"&gt;Amazon&lt;/a&gt; (essas duas só possuem a primeira edição, que não possui informações sobre as novas funcionalidades do &lt;i&gt;framework&lt;/i&gt;). Acredito que estarão disponíveis daqui há algum tempo.
&lt;/p&gt;
&lt;p&gt;
    Existem também a &lt;a href="http://groups.google.com/group/web2py-developers"&gt;lista de discussão de desenvolvedores do web2py&lt;/a&gt;, porém apenas pessoas convidadas (que contribuíram em algo com o projeto) podem entrar - de qualquer forma, ela é aberta para leitura - e o &lt;a href="http://www.web2py.com/AlterEgo"&gt;AlterEgo&lt;/a&gt;, o &lt;a href="http://pt.wikipedia.org/wiki/FAQ"&gt;FAQ&lt;/a&gt; do &lt;a href="http://www.web2py.com/"&gt;web2py&lt;/a&gt; (o conteúdo dele será movido em breve para a &lt;a href="http://wiki.web2py.com/" title="wiki do web2py"&gt;wiki&lt;/a&gt;).
&lt;/p&gt;
&lt;p&gt;
    E então, conseguiu encontrar o que estava procurando sobre o &lt;a href="http://www.web2py.com/"&gt;web2py&lt;/a&gt;? Não? Por quê? Quando conseguir, não esqueça de adicionar uma entrada na &lt;a href="http://wiki.web2py.com/" title="wiki do web2py"&gt;wiki&lt;/a&gt;. ;-)
&lt;/p&gt;
&lt;p&gt;
    --
    &lt;br /&gt;
    &amp;nbsp;&amp;nbsp;&amp;nbsp;Álvaro Justen
    &lt;br /&gt;
    &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.peta5.com.br/"&gt;Peta5&lt;/a&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-8395314956715980428?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/MMDLUEhoxmw" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/MMDLUEhoxmw/onde-encontrar-documentacao-do-web2py.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/08/onde-encontrar-documentacao-do-web2py.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-4188573451373751349</guid><pubDate>Wed, 07 Oct 2009 15:26:00 +0000</pubDate><atom:updated>2009-11-01T18:17:34.503-02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">web2py</category><category domain="http://www.blogger.com/atom/ns#">wiki</category><category domain="http://www.blogger.com/atom/ns#">web</category><title>Nova wiki do web2py</title><description>&lt;p&gt;
No último final de semana mexi em algumas linhas de código da aplicação &lt;a href="https://code.launchpad.net/web2py-wiki/"&gt;web2py-wiki&lt;/a&gt;, como:
&lt;ul&gt;
  &lt;li&gt; Trocada a forma de acesso às páginas (agora &lt;a href="http://wiki.web2py.com/Page_name"&gt;http://wiki.web2py.com/Page_name&lt;/a&gt;); &lt;/li&gt;
  &lt;li&gt; Algumas mudanças no leiaute; &lt;/li&gt;
  &lt;li&gt; Simplificação de alguns formulários; &lt;/li&gt;
  &lt;li&gt; Incluídas algumas &lt;emph&gt;views&lt;/emph&gt; que não estavam lá; &lt;/li&gt;
  &lt;li&gt; Consertados alguns &lt;emph&gt;bugs&lt;/emph&gt;. &lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;
&lt;p&gt;
Com a ajuda do Massimo Di Pierro - criador do &lt;a href="http://www.web2py.com/"&gt;web2py&lt;/a&gt; -, migramos a antiga wiki para essa nova aplicação para meu servidor, isso nos trará um pouco mais de flexibilidade pra atualizar quando surgirem versões novas.
&lt;/p&gt;
&lt;p&gt;
Agora a wiki está no endereço &lt;a href="http://wiki.web2py.com/"&gt;http://wiki.web2py.com/&lt;/a&gt; (em vez de &lt;a href="http://www.web2py.com/wiki/"&gt;http://www.web2py.com/wiki/&lt;/a&gt;).
&lt;/p&gt;
&lt;p&gt;
Alguns planos futuros:
&lt;ul&gt;
  &lt;li&gt; Mover as páginas do &lt;a href="http://www.web2py.com/AlterEgo"&gt;AlterEgo&lt;/a&gt; (atual &lt;a href="http://pt.wikipedia.org/wiki/FAQ"&gt;FAQ&lt;/a&gt; do &lt;a href="http://www.web2py.com/"&gt;web2py&lt;/a&gt;) para a wiki e criar uma página &lt;strong&gt;FAQ&lt;/strong&gt; na wiki, listando as perguntas mais frequentes; &lt;/li&gt;
  &lt;li&gt; Adicionar mais funcionalidades que outras wiki possuem e essa aplicação ainda não; &lt;/li&gt;
  &lt;li&gt; Melhorar a usabilidade; &lt;/li&gt;
  &lt;li&gt; Mover o projeto para o &lt;a href="http://www.bitbucket.org/"&gt;BitBucket&lt;/a&gt;. &lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;
&lt;p&gt;
Se você gostaria de contribuir com o desenvolvimento dessa aplicação ou utilizá-la em seu site, baixe o código-fonte no &lt;a href="https://code.launchpad.net/web2py-wiki/"&gt;projeto web2py-wiki no Launchpad&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
Se você tem ideias de novas funcionalidades, quer reportar &lt;emph&gt;bugs&lt;/emph&gt; ou tratar qualquer outro assunto relacionado a essa aplicação, por favor entre em contato.
&lt;/p&gt;
&lt;p&gt;
E agora cabe a nós, usuários do &lt;a href="http://www.web2py.com/"&gt;web2py&lt;/a&gt;, contribuir com o projeto de documentação do framework! Basta cada um enviar o que para a &lt;a href="http://wiki.web2py.com/"&gt;wiki do web2py&lt;/a&gt;. :-)
&lt;/p&gt;
&lt;p&gt;
--
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;Álvaro Justen
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.peta5.com.br/"&gt;Peta5 - Telecomunicações e Software Livre&lt;/a&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-4188573451373751349?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/DziOwlcYmBs" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/DziOwlcYmBs/nova-wiki-do-web2py.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/10/nova-wiki-do-web2py.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-5170930811535679297</guid><pubDate>Mon, 21 Sep 2009 00:48:00 +0000</pubDate><atom:updated>2009-11-01T18:17:37.788-02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">web2py</category><category domain="http://www.blogger.com/atom/ns#">wiki</category><category domain="http://www.blogger.com/atom/ns#">web</category><title>Palestra sobre web2py no SERPRO-RJ</title><description>&lt;p&gt;
Eu já tinha &lt;a href="http://blog.justen.eng.br/2009/09/eventos-em-setembro.html"&gt;comentado aqui no blog que iria em vários eventos em setembro&lt;/a&gt;. Fui, palestrei em alguns e acabei de enviar pro &lt;a href="http://videolog.tv/" target="_blank"&gt;Videolog.tv&lt;/a&gt; o vídeo de minha palestra sobre &lt;a href="http://www.web2py.com/" target="_blank"&gt;web2py&lt;/a&gt; no &lt;a href="http://www.softwarelivre.serpro.gov.br/riodejaneiro" target="_blank"&gt;Fórum de Tecnologia em Software Livre do SERPRO-RJ&lt;/a&gt; - o evento aconteceu de 15 a 17 de setembro, e minha palestra foi no dia 16.
&lt;/p&gt;
&lt;p&gt;
A palestra é voltada ao público iniciante: quem ainda não utiliza framework para desenvolvimento Web (usando &lt;a href="http://www.python.org/" target="_blank"&gt;Python&lt;/a&gt;) e quem ainda não conhece o &lt;a href="http://www.web2py.com/" target="_blank"&gt;web2py&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
O vídeo está disponível para download: &lt;a href="http://www.justen.eng.br/downloads/web2py-%C3%81lvaro_Justen.ogv" target="_blank"&gt;download em OGV da palestra sobre web2py, por Álvaro Justen - Turicas&lt;/a&gt;.
&lt;/p&gt;
&lt;a href="http://videolog.uol.com.br/video.php?id=481951" target="_blank"&gt;Visualize também o vídeo no Videolog.tv&lt;/a&gt;:
&lt;embed src='http://www.videolog.tv/ajax/codigoPlayer.php?id_video=481951&amp;relacionados=S&amp;default=S&amp;lang=PT_BR&amp;cor_fundo=000000&amp;swf=1&amp;width=424&amp;height=318' width='424' height='318' type='application/x-shockwave-flash' allowFullScreen='true' AllowScriptAccess='always'&gt;&lt;/embed&gt;
&lt;/p&gt;
&lt;p&gt;
--
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;Álvaro Justen
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.peta5.com.br/" target="_blank"&gt;Peta5 - Telecomunicações e Software Livre&lt;/a&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-5170930811535679297?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/DdT9r3JZggc" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/DdT9r3JZggc/palestra-sobre-web2py-no-serpro-rj.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">4</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/09/palestra-sobre-web2py-no-serpro-rj.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-1273081233660060690</guid><pubDate>Wed, 09 Sep 2009 03:30:00 +0000</pubDate><atom:updated>2009-09-09T01:40:56.892-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">software freedom day</category><category domain="http://www.blogger.com/atom/ns#">software livre</category><category domain="http://www.blogger.com/atom/ns#">serpro</category><category domain="http://www.blogger.com/atom/ns#">dev in rio</category><category domain="http://www.blogger.com/atom/ns#">python</category><category domain="http://www.blogger.com/atom/ns#">pythonbrasil</category><category domain="http://www.blogger.com/atom/ns#">eventos</category><title>Eventos em setembro</title><description>&lt;p&gt;
O segundo semestre do ano costuma ter mais eventos de TI que o primeiro (principalmente eventos sobre software livre). Com as passagens compradas e inscrições já feitas, seguem alguns eventos desse mês que pretendo ir:
&lt;/p&gt;
&lt;p&gt;
&lt;h3&gt;Eventos de setembro de 2009&lt;/h3&gt;
&lt;ul&gt;
 &lt;li&gt; &lt;a href="http://www.pythonbrasil.org.br/" target="_blank"&gt;PythonBrasil[5]&lt;/a&gt;: &lt;a href="http://blog.justen.eng.br/2009/07/pythonbrasil5.html"&gt;já comentei aqui no blog sobre a PythonBrasil[5]&lt;/a&gt;, é a &lt;b&gt;festa&lt;/b&gt; da &lt;a href="http://www.python.org.br/" target="_blank"&gt;comunidade Python tupiniquim&lt;/a&gt;, que nesse ano acontecerá de &lt;b&gt;10 a 12 de setembro&lt;/b&gt; (de quinta-feira a sábado) em &lt;b&gt;Caxias do Sul/RS&lt;/b&gt;. Estarei lá palestrando sobre &lt;a href="http://www.web2py.com/" target="_blank"&gt;web2py&lt;/a&gt; (sexta-feira às 15h45min). &lt;a href="http://www.pythonbrasil.org.br/2009/sobre-o-evento/programacao" target="_blank"&gt;Confira a programação do evento&lt;/a&gt;. &lt;/li&gt;

 &lt;li&gt; &lt;a href="http://www.devinrio.com.br/" target="_blank"&gt;Dev in Rio&lt;/a&gt;: evento focado em desenvolvedores de software, organizado por &lt;a href="http://www.henriquebastos.net/" target="_blank"&gt;Henrique Bastos&lt;/a&gt; e &lt;a href="http://www.gc.blog.br/" target="_blank"&gt;Guilherme Chapiewski&lt;/a&gt;, terá grandes atrações nacionais e internacionais falando sobre &lt;a href="http://www.joomla.org/" target="_blank"&gt;Joomla!&lt;/a&gt;, &lt;a href="http://www.python.org/" target="_blank"&gt;Python&lt;/a&gt;, &lt;a href="http://www.java.com/pt_BR/" target="_blank"&gt;Java&lt;/a&gt;, &lt;a href="http://www.djangoproject.com/" target="_blank"&gt;Django&lt;/a&gt;, &lt;a href="http://rubyonrails.org/" target="_blank"&gt;Ruby on Rails&lt;/a&gt; e &lt;a href="http://pt.wikipedia.org/wiki/Desenvolvimento_%C3%A1gil_de_software" target="_blank"&gt;metodologias ágeis para desenvolvimento de software&lt;/a&gt;. O evento acontecerá no dia &lt;b&gt;14 de setembro&lt;/b&gt; (segunda-feira). &lt;/li&gt;

 &lt;li&gt; &lt;a href="http://oglobo.globo.com/blogs/tecnologia/agile/index.html" target="_blank"&gt;Agile Tech Day 2009&lt;/a&gt;: realizado pela &lt;a href="http://www.infoglobo.com.br/" target="_blank"&gt;equipe de tecnologia do Globo&lt;/a&gt;, esse evento é focado na &lt;a href="http://pt.wikipedia.org/wiki/Desenvolvimento_%C3%A1gil_de_software" target="_blank"&gt;metodologia ágil para desenvolvimento de software&lt;/a&gt; &lt;a href="http://pt.wikipedia.org/wiki/Scrum" target="_blank"&gt;Scrum&lt;/a&gt;; acontecerá no dia &lt;b&gt;15 de setembro&lt;/b&gt; (terça-feira). &lt;/li&gt;

 &lt;li&gt; &lt;a href="http://www.softwarelivre.serpro.gov.br/riodejaneiro" target="_blank"&gt;I Fórum de Tecnologia em Software Livre - SERPRO-RJ&lt;/a&gt;: como o próprio nome diz, é o primeiro evento focado em software livre do &lt;a href="http://www.serpro.gov.br/" target="_blank"&gt;SERPRO-RJ&lt;/a&gt;, organizado por um dos corodas da &lt;a href="http://www.pythonrio.org/" target="_blank"&gt;PythOnRio&lt;/a&gt;: &lt;a href="http://www.softwarelivre.serpro.gov.br/riodejaneiro/convidados/luiz-aldabalde" target="_blank"&gt;Luiz Guilherme Aldabalde&lt;/a&gt;. Estarei lá falando sobre &lt;a href="http://www.web2py.com/" target="_blank"&gt;web2py&lt;/a&gt;, pra variar. ;-) O evento acontecerá de &lt;b&gt;15 a 17 de setembro&lt;/b&gt; (de terça a quinta-feira). &lt;/li&gt;

 &lt;li&gt; &lt;a href="http://softwarefreedomday.uff.br/" target="_blank"&gt;Software Freedom Day RJ&lt;/a&gt;: &lt;a href="http://cgi.softwarefreedomday.org/2009/map.shtml" target="_blank"&gt;esforço global&lt;/a&gt;, que acontece paralelamente em várias cidades do globo, com finalidade de difundir a importância da liberdade no software. A &lt;a href="http://softwarefreedomday.org/teams/centralandsouthamerica/brasil/rj" target="_blank"&gt;edição do Rio de Janeiro&lt;/a&gt; está sendo organizada por alunos da &lt;a href="http://www.uff.br/" target="_blank"&gt;UFF&lt;/a&gt; e acontecerá no &lt;a href="http://softwarefreedomday.org/ComoChegarUFF" target="_blank"&gt;Campus Praia Vermelha&lt;/a&gt;, em &lt;b&gt;Niterói&lt;/b&gt; no dia &lt;b&gt;19 de setembro&lt;/b&gt; (sábado). Nesse evento ministrarei um minicurso entitulado &lt;b&gt;Programando dinamicamente: Introdução ao &lt;a href="http://www.python.org/" target="_blank"&gt;Python&lt;/a&gt;&lt;/b&gt; - para quem ainda não conhece essa poderosa linguagem de programação é uma ótima oportunidade! &lt;/li&gt;

&lt;/ul&gt;
&lt;/p&gt;

&lt;p&gt;
Se você conhece outro evento que não está aqui, comente! Fique à vontade para falar de eventos que acontecerão em outubro, novembro e dezembro também.
&lt;br /&gt;
Se você vai em algum desses eventos, comente!
&lt;br /&gt;
Até lá! ;-)
&lt;/p&gt;

&lt;p&gt;
--
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;Álvaro Justen
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.peta5.com.br/" target="_blank"&gt;Peta5 - Telecomunicações e Software Livre&lt;/a&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-1273081233660060690?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/Enry4FqveXg" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/Enry4FqveXg/eventos-em-setembro.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/09/eventos-em-setembro.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-1705126848372593599</guid><pubDate>Wed, 26 Aug 2009 15:32:00 +0000</pubDate><atom:updated>2009-08-26T13:16:14.135-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">web2py</category><category domain="http://www.blogger.com/atom/ns#">python</category><category domain="http://www.blogger.com/atom/ns#">dicas</category><category domain="http://www.blogger.com/atom/ns#">twitter</category><title>Dicas web2py: lendo e enviando tweets</title><description>&lt;p&gt;
Esse é o primeiro artigo de uma série que pretendo postar aqui no blog. Nessa "série" &lt;b&gt;Dicas web2py&lt;/b&gt; serão postados artigos simples e rápidos para ajudarem desenvolvedores que utilizam o &lt;a href="http://www.web2py.com/" target="_blank"&gt;web2py&lt;/a&gt; como framework para desenvolvimento Web. Em um futuro não muito distante também estarão aqui pequenos tutoriais para quem ainda está iniciando. :-)
&lt;/p&gt;
&lt;p&gt;
Se você usa o framework para desenvolvimento Web &lt;a href="http://www.web2py.com/" target="_blank"&gt;web2py&lt;/a&gt;, com pouquíssimas linhas você consegue enviar e receber &lt;a href="http://pt.wikipedia.org/wiki/Tweet_%28twitter%29" target="_blank"&gt;tweets&lt;/a&gt; de maneira bem fácil. Resolvi postar essa dica aqui depois de corrigir alguns bugs no código que foi publicado no &lt;a href="http://www.web2py.com/AlterEgo/" target="_blank"&gt;AlterEgo&lt;/a&gt; (um local onde armazenamos receitas de bolo para o &lt;a href="http://www.web2py.com/" target="_blank"&gt;web2py&lt;/a&gt;).
&lt;/p&gt;
&lt;p&gt;
Seguindo &lt;a href="http://www.web2py.com/AlterEgo/default/show/224" target="_blank"&gt;a dica no AlterEgo&lt;/a&gt; dá pra ver que utilizando o &lt;a href="http://code.google.com/p/simplejson/" target="_blank"&gt;simplejson&lt;/a&gt; fica fácil! Como o web2py &lt;a href="http://www.web2py.com/" target="_blank"&gt;web2py&lt;/a&gt; já possui o &lt;a href="http://code.google.com/p/simplejson/" target="_blank"&gt;simplejson&lt;/a&gt; por padrão então não precisamos de mais nada!
&lt;br /&gt;
Segue o código:
&lt;/p&gt;

&lt;blockquote&gt;
&lt;pre&gt;
#Enviando tweets
def post_tweet(username, password, message):
    from urllib import urlencode
    from base64 import b64encode
    from urllib2 import Request, urlopen
    import gluon.contrib.simplejson as sj
    args= urlencode([('status', message)])
    headers = {}
    headers['Authorization'] = 'Basic ' + b64encode(username + ':' + password)
    request = Request('http://twitter.com/statuses/update.json', args, headers)
    return sj.loads(urlopen(request).read())


#Lendo tweets
def get_tweets(user):
    from gluon.tools import fetch
    import gluon.contrib.simplejson as sj
    page = fetch('http://twitter.com/%s?format=json' % user)
    return sj.loads(page)['#timeline']
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Para usar:
&lt;blockquote&gt;
&lt;pre&gt;
#Enviando um tweet:
post_tweet('meu_usuario', 'minha_senha', 'Olá, Twitter! Estou no @web2py...')

#Recebendo tweets do usuário 'web2py':
meus_tweets = get_tweets('web2py')
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;/p&gt;
&lt;p&gt;
Depois disso é só retornar &lt;b&gt;meus_tweets&lt;/b&gt; na função de seu controller e utilizar na view como quiser. Bem simples, né? O código acessa a &lt;a href="http://apiwiki.twitter.com/" target="_blank"&gt;API do Twitter&lt;/a&gt; através da &lt;a href="http://docs.python.org/library/urllib2.html" target="_blank"&gt;urllib2&lt;/a&gt; e usa o &lt;a href="http://code.google.com/p/simplejson/" target="_blank"&gt;simplejson&lt;/a&gt; para transformar uma string &lt;a href="http://www.json.org/" target="_blank"&gt;JSON&lt;/a&gt; em um &lt;a href="http://docs.python.org/tutorial/datastructures.html#dictionaries" target="_blank"&gt;dicionário Python&lt;/a&gt;.
&lt;br /&gt;
No caso da função &lt;b&gt;post_tweet&lt;/b&gt; temos um dicionário como retorno, que possui dados sobre o &lt;a href="http://pt.wikipedia.org/wiki/Tweet_%28twitter%29" target="_blank"&gt;tweet&lt;/a&gt; enviado (id, data/hora, usuário etc.), já a função &lt;b&gt;get_tweets&lt;/b&gt; retorna uma string com os tweets já em HTML.
&lt;/p&gt;
&lt;p&gt;
O código acima já é utilizado no &lt;a href="http://www.web2py.com/" target="_blank"&gt;web2py&lt;/a&gt;: a interface administrativa (aplicação &lt;b&gt;admin&lt;/b&gt;) mostra os últimos &lt;a href="http://pt.wikipedia.org/wiki/Tweet_%28twitter%29" target="_blank"&gt;tweets&lt;/a&gt; do &lt;a href="http://twitter.com/web2py" target="_blank"&gt;@web2py&lt;/a&gt; (procure pela função &lt;b&gt;twitter&lt;/b&gt; no controller &lt;b&gt;default.py&lt;/b&gt;).
&lt;/p&gt;
&lt;p&gt;
--
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;Álvaro Justen
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.peta5.com.br/" target="_blank"&gt;Peta5 - Telecomunicações e Software Livre&lt;/a&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-1705126848372593599?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/N_J16FuD3F8" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/N_J16FuD3F8/dicas-web2py-lendo-e-enviando-tweets.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/08/dicas-web2py-lendo-e-enviando-tweets.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-5631527512818274641</guid><pubDate>Mon, 24 Aug 2009 16:45:00 +0000</pubDate><atom:updated>2009-08-24T13:54:53.040-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">software livre</category><category domain="http://www.blogger.com/atom/ns#">gnu</category><category domain="http://www.blogger.com/atom/ns#">mensageiro instantâneo</category><category domain="http://www.blogger.com/atom/ns#">linux</category><category domain="http://www.blogger.com/atom/ns#">emesene</category><category domain="http://www.blogger.com/atom/ns#">msn</category><category domain="http://www.blogger.com/atom/ns#">python</category><title>Cliente MSN com webcam para GNU/Linux</title><description>&lt;p&gt;
 &lt;b&gt;emesene 1.5 awesome&lt;/b&gt;: esse é o título do site &lt;a href="http://www.emesene.org/" target="_blank"&gt;http://www.emesene.org/&lt;/a&gt; que faz a chamada para a &lt;b&gt;versão 1.5&lt;/b&gt; do software &lt;b&gt;emesene&lt;/b&gt; (lançada na quinta-feira passada) - também é o codenome da versão 1.5 desse software.
 &lt;br /&gt;
 O &lt;b&gt;emesene&lt;/b&gt; é um &lt;a href="http://pt.wikipedia.org/wiki/Mensageiro_instant%C3%A2neo" target="_blank"&gt;mensageiro instanâneo&lt;/a&gt; (IM: &lt;i&gt;instant messenger&lt;/i&gt;) que se conecta à rede do Windows Live (Windows Live Network[TM]) - falando popularmente: "é um programa pra entrar no MSN". É escrito em &lt;a href="http://www.python.org/" target="_blank"&gt;Python&lt;/a&gt;, é software livre e um dos objetivos do projeto é ser parecido (e conter o máximo de funcionalidades compatíveis) com o &lt;a href="http://download.live.com/?sku=messenger" target="_blank"&gt;cliente original da Microsoft&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
 Dentre as novas funcionalidades, &lt;a href="http://forum.emesene.org/index.php?topic=2172.0" target="_blank"&gt;o anúncio original&lt;/a&gt; destaca:
 &lt;ul&gt;
  &lt;li&gt; &lt;b&gt;Suporte a webcam (enviar e receber) com um configurador&lt;/b&gt; &lt;/li&gt;
  &lt;li&gt; Nova lista de plugins (cores no MSN Plus, verificação de email etc.) &lt;/li&gt;
  &lt;li&gt; Suporte a conexão via HTTP e proxy &lt;/li&gt;
  &lt;li&gt; Sistema de mensagens offline melhorado &lt;/li&gt;
  &lt;li&gt; Usabilidade melhorada &lt;/li&gt;
  &lt;li&gt; Suporte a novas línguas &lt;/li&gt;
 &lt;/ul&gt;
 &lt;br /&gt;
 Curioso(a)? &lt;a href="http://www.emesene.org/screenshots.html" target="_blank"&gt;Veja screen shots!&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
 Não satisfeito em ver screen shots? &lt;a href="http://www.emesene.org/download.html" target="_blank"&gt;Faça o download do emesene 1.5!&lt;/a&gt;
 &lt;br /&gt;
 O site disponibiliza pacotes para vários sistemas operacionais, como: &lt;a href="http://www.archlinux.org/" target="_blank"&gt;Archlinux&lt;/a&gt;, &lt;a href="http://www.debian.org/" target="_blank"&gt;Debian&lt;/a&gt;, &lt;a href="http://www.ubuntu.com/" target="_blank"&gt;Ubuntu&lt;/a&gt;, &lt;a href="http://fedoraproject.org/pt/" target="_blank"&gt;Fedora&lt;/a&gt;, &lt;a href="http://www2.mandriva.com/linux/" target="_blank"&gt;Mandriva&lt;/a&gt; e &lt;a href="http://www.microsoft.com/windows/" target="_blank"&gt;Windows&lt;/a&gt;. Como em qualquer software livre, também temos a opção de baixar o código-fonte. &lt;i&gt;Nota: atualmente apenas as opções &lt;a href="http://www.debian.org/" target="_blank"&gt;Debian&lt;/a&gt;, &lt;a href="http://www2.mandriva.com/linux/" target="_blank"&gt;Mandriva&lt;/a&gt; e código-fonte possuem a versão 1.5.&lt;/i&gt;
 &lt;br /&gt;
 Como &lt;a href="http://packages.debian.org/sid/emesene" target="_blank"&gt;já existe pacote pronto&lt;/a&gt; para a &lt;a href="http://www.debian.org/releases/unstable/" target="_blank"&gt;Debian sid (&lt;i&gt;unstable&lt;/i&gt;)&lt;/a&gt;, basta baixar e instalar (como &lt;a href="http://en.wikipedia.org/wiki/Superuser" target="_blank"&gt;root&lt;/a&gt;, execute: &lt;quote&gt;dpkg -i nome-do-pacote.deb&lt;/quote&gt;).
 &lt;br /&gt;
 Para o suporte a webcam funcionar precisei instalar a &lt;a href="http://packages.debian.org/experimental/libmimic0" target="_blank"&gt;libmimic do repositório experimental do Debian&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
 Dica: acompanhe o &lt;a href="http://emesene-msn.blogspot.com/" target="_blank"&gt;blog do projeto&lt;/a&gt;. Apesar de o blog deles não possuir link para &lt;a href="http://pt.wikipedia.org/wiki/RSS" target="_blank"&gt;RSS&lt;/a&gt; podemos acessá-lo em: &lt;a href="http://emesene-msn.blogspot.com/rss.xml" target="_blank"&gt;Feed RSS do blog do emesene&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
 Gostou? Sinta-se à vontade para colaborar! Assim como os desenvolvedores desse software (e de milhares de outros livres) você pode colaborar para melhorá-lo. Não sabe como? Pedindo novas funcionalidades, traduzindo, &lt;a href="http://redmine.emesene.org/projects/emesene1/issues" target="_blank"&gt;reportando falhas/&lt;i&gt;bugs&lt;/i&gt;&lt;/a&gt;, criando temas, ajudando outros usuários, divulgando etc. O que está esperando? :-)
&lt;/p&gt;

&lt;p&gt;
 Vale ressaltar que o Windows Live Network[TM] não é um protocolo "aberto" como, por exemplo, é o &lt;a href="http://www.jabber.org/" target="_blank"&gt;Jabber/XMPP&lt;/a&gt; (que o &lt;a href="http://www.google.com/talk/intl/pt-BR/" target="_blank"&gt;Google Talk&lt;/a&gt; usa!).
 &lt;br /&gt;
 Por falar em &lt;a href="http://www.google.com/talk/intl/pt-BR/" target="_blank"&gt;Google Talk&lt;/a&gt;,  &lt;a href="http://br-linux.org/2009/pidgin-2-6-com-suporte-a-audio-e-video/" target="_blank"&gt;li por aí&lt;/a&gt; que o &lt;a href="http://pidgin.im/" target="_blank"&gt;Pidgin 2.6.1&lt;/a&gt; possui suporte a áudio e vídeo no protocolo do Google Talk. Ainda não testei, mas fica aí a dica: &lt;a href="http://techfree.com.br/wordpress/2009/08/22/audio-e-video-no-pidgin-2-6-1/" target="_blank"&gt;Aprenda a instalar o Pidgin 2.6.1 em distribuições baseadas em Debian&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
 --
 &lt;br /&gt;
 &amp;nbsp;&amp;nbsp;&amp;nbsp;Álvaro Justen
 &lt;br /&gt;
 &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.peta5.com.br/" target="_blank"&gt;Peta5 - Telecomunicações e Software Livre&lt;/a&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-5631527512818274641?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/ky04cEVZypk" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/ky04cEVZypk/cliente-msn-com-webcam-para-gnulinux.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">13</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/08/cliente-msn-com-webcam-para-gnulinux.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-3365231475582610090</guid><pubDate>Sun, 23 Aug 2009 06:42:00 +0000</pubDate><atom:updated>2009-08-23T04:17:15.210-03:00</atom:updated><title>Novo domínio e feed RSS</title><description>&lt;p&gt;
Depois de conversar com o &lt;a href="http://blog.rodolfocarvalho.net/" target="_blank"&gt;Rodolfo Carvalho&lt;/a&gt; (da &lt;a href="http://www.pythonrio.org/" target="_blank"&gt;PythOnRio&lt;/a&gt;, do &lt;a href="http://www.dojorio.org/" target="_blank"&gt;Dojo-Rio&lt;/a&gt;) resolvi migrar (assim como ele) meu blog para &lt;a href="http://www.justen.eng.br/" target="_blank"&gt;meu domínio pessoal&lt;/a&gt; - que estava parado há um tempo.
&lt;/p&gt;
&lt;p&gt;
Agora meu blog deverá ser acessado diretamente de &lt;a href="http://blog.justen.eng.br/"&gt;http://blog.justen.eng.br/&lt;/a&gt; (&lt;a href="http://alvarojusten.blogspot.com/"&gt;o endereço no blogger.com&lt;/a&gt; ainda funciona, mas redireciona para o novo).
&lt;br /&gt;
O feed RSS deverá ser acessado pelo endereço &lt;a href="http://blog.justen.eng.br/rss.xml" target="_blank"&gt;http://blog.justen.eng.br/rss.xml&lt;/a&gt; - mesma coisa vale para o endereço do feed antigo! Aproveite e &lt;a href="http://blog.justen.eng.br/rss.xml" target="_blank"&gt;&lt;img src="http://www.justen.eng.br/feed.png" alt="Turicas' blog: feed RSS" style="border: 0px; width: 16px; height: 16px" /&gt; assine meu feed RSS&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
Acabei fazendo também algumas pequenas alterações no &lt;i&gt;template&lt;/i&gt; do blog, como aumentar a área dos &lt;i&gt;posts&lt;/i&gt; - este provavelmente será bastante alterado em breve.
&lt;/p&gt;
&lt;p&gt;
Esses foram os primeiros passos para o meu novo blog, que não será mais baseado no &lt;a href="http://www.blogger.com/" target="_blank"&gt;blogger.com&lt;/a&gt;, terá um visual mais simples e não tem data pra ficar pronto. ;-)
&lt;/p&gt;
&lt;p&gt;
--
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;Álvaro Justen
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.peta5.com.br/" target="_blank"&gt;Peta5 - Telecomunicações e Software Livre&lt;/a&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-3365231475582610090?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/GxIUjzm_7L0" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/GxIUjzm_7L0/novo-dominio-e-feed-rss.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/08/novo-dominio-e-feed-rss.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-3510039096336391244</guid><pubDate>Mon, 17 Aug 2009 18:16:00 +0000</pubDate><atom:updated>2009-08-23T02:46:20.718-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">python</category><category domain="http://www.blogger.com/atom/ns#">pythonrio</category><title>PythonBrasil[5] - você vai?</title><description>&lt;p&gt;
Para quem ainda não conhece, a &lt;a href="http://www.pythonbrasil.org.br/" target="_blank"&gt;Conferência Python Brasil&lt;/a&gt; ou simplesmente &lt;b&gt;Python Brasil&lt;/b&gt; (antiga &lt;b&gt;PyConBrasil&lt;/b&gt;) é o evento nacional que reune a comunidade de programadores &lt;a href="http://www.python.org/" target="_blank"&gt;Python&lt;/a&gt;, organizado anualmente pela &lt;a href="" target="_blank"&gt;Associação Python Brasil&lt;/a&gt;. Nesse ano de 2009 estamos na 5a edição: é a &lt;a href="http://www.pythonbrasil.org.br/" target="_blank"&gt;PythonBrasil[5]&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
Para quem não conhece, &lt;a href="http://www.python.org/" target="_blank"&gt;Python&lt;/a&gt; é uma linguagem de programação dinâmica de altíssimo nível (&lt;a href="http://en.wikipedia.org/wiki/VHLL"&gt;Very High Level Language&lt;/a&gt;), utilizada em larga escala por empresas e instituições como &lt;a href="http://www.google.com/" target="_blank"&gt;Google&lt;/a&gt;, &lt;a href="http://www.nasa.gov/" target="_blank"&gt;NASA&lt;/a&gt;, &lt;a href="http://www.locaweb.com.br/" target="_blank"&gt;Locaweb&lt;/a&gt;, &lt;a href="http://www.globo.com/" target="_blank"&gt;Globo.com&lt;/a&gt;, &lt;a href="http://www.serpro.gov.br/" target="_blank"&gt;SERPRO&lt;/a&gt;, &lt;a href="http://www.peta5.com.br/" target="_blank"&gt;Peta5&lt;/a&gt;, dentre outras.
&lt;/p&gt;

&lt;p&gt;
A &lt;a href="http://www.pythonbrasil.org.br/" target="_blank"&gt;PythonBrasil&lt;/a&gt; acontece desde 2005 e já foi realizado em Campinas, Brasília, Joinville e Rio de Janeiro, contando com participantes de todo o Brasil e mundo: além de participantes, temos palestrantes e convidados de renome nacional e internacional (esse ano com personalidades do framework de desenvolvimento Web &lt;a href="http://www.djangoproject.com/" target="_blank"&gt;Django&lt;/a&gt; e Google, por exemplo). Esse ano a &lt;b&gt;festa&lt;/b&gt; dos programadores &lt;a href="http://www.python.org/" target="_blank"&gt;Python&lt;/a&gt; tupiniquins acontecerá de 10 a 12 de setembro em Caxias do Sul. O período para submissão de propostas já se esgotou e o &lt;a href="http://www.pythonbrasil.org.br/resultado_avaliacao" target="_blank"&gt;resultado de quem falará ao público já saiu&lt;/a&gt; - por falar nisso, esse ano &lt;a href="http://www.pythonbrasil.org.br/2009/saiba-mais/noticias/recorde-de-envio-de-trabalhos" target="_blank"&gt;a PythonBrasil bateu o recorde de envio de trabalhos&lt;/a&gt;!
&lt;/p&gt;

&lt;p&gt;
Submeti uma "palestra" (que foi aceita! \o/) sobre &lt;a href="http://www.web2py.com/" target="_blank"&gt;web2py&lt;/a&gt; - entre aspas porque pretendo simplesmente mostrar exemplos e desenvolver pequenas aplicações - nada de slides! Leia o resumo da minha submissão: &lt;a href="http://www.pythonbrasil.org.br/2009/sobre-o-evento/inscricoes/1cf58285b25145b8af6cb8965a490831" target="_blank"&gt;Handson web2py: desenvolvimento Web ágil&lt;/a&gt;. Para os interessados em &lt;a href="http://www.web2py.com/" target="_blank"&gt;web2py&lt;/a&gt;, nos vemos lá!
&lt;/p&gt;

&lt;p&gt;
Para quem ainda não fez a inscrição, não perca tempo: &lt;a href="http://www.pythonbrasil.org.br/2009/sobre-o-evento/inscricoes" target="_blank"&gt;inscreva-se para a PythonBrasil[5]&lt;/a&gt; (e pague menos até o dia 21 de agosto). O pessoal da &lt;a href="http://www.pythonrio.org/" target="_blank"&gt;PythOnRio&lt;/a&gt; estará em peso lá. E você, vai?
&lt;/p&gt;

&lt;p align="center"&gt;
&lt;a href="http://www.pythonbrasil.org.br/" title="PythonBrasil[5]"&gt; 
&lt;img src="http://www.pythonbrasil.org.br/2009/saiba-mais/apoio-divulgue/pythonbrasil-banner.gif" alt="PythonBrasil[5]" /&gt;
&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
--
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;Álvaro Justen
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.peta5.com.br/" target="_blank"&gt;Peta5 - Telecomunicações e Software Livre&lt;/a&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-3510039096336391244?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/at-5ngIDjtE" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/at-5ngIDjtE/pythonbrasil5.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/07/pythonbrasil5.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-4639417299624697281</guid><pubDate>Fri, 14 Aug 2009 16:29:00 +0000</pubDate><atom:updated>2009-11-01T18:18:30.904-02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">software livre</category><category domain="http://www.blogger.com/atom/ns#">debian</category><category domain="http://www.blogger.com/atom/ns#">dia-d</category><title>Dia Debian em Piraí</title><description>&lt;p&gt;
Para quem não conhece, o &lt;b&gt;Dia Debian&lt;/b&gt; (ou &lt;b&gt;Dia-D&lt;/b&gt; para os mais íntimos) é um evento anual que acontece em várias cidades do mundo e tem como objetivo comemorar o aniversário do &lt;a href="http://www.debian.org/" target="_blank"&gt;Debian&lt;/a&gt;, que completará &lt;b&gt;16 anos&lt;/b&gt; no próximo domingo (16 de agosto).
&lt;/p&gt;
&lt;p&gt;
Esse ano, usuários do &lt;a href="http://www.debian.org/" target="_blank"&gt;Debian&lt;/a&gt; do estado do Rio de Janeiro (eu estou nesse grupo :-) comemorarão o aniversário dessa fantástica &lt;a href="http://pt.wikipedia.org/wiki/Distribui%C3%A7%C3%A3o_Linux" target="_blank"&gt;distribuição GNU/Linux&lt;/a&gt; na cidade de &lt;a href="http://www.piraidigital.com.br/" target="_blank"&gt;Piraí&lt;/a&gt;. Contaremos com a presença de &lt;a href="http://wiki.debian.org/DebianDeveloper" target="_blank"&gt;Debian Developer&lt;/a&gt; e palestrantes de outros estados. O evento acontecerá &lt;b&gt;amanhã&lt;/b&gt; (&lt;b&gt;sábado, 15 de agosto&lt;/b&gt;) das &lt;b&gt;9h30min às 18h30min&lt;/b&gt;.
&lt;/p&gt;
&lt;p&gt;
No &lt;a href="http://www.sulfluminenselivre.org/" target="_blank"&gt;site do grupo de usuários de software livre do Sul Fluminense&lt;/a&gt; existe uma pré-inscrição: se você pretende participar, &lt;a href="http://200.20.86.136/flisys/va.php" target="_blank"&gt;faça a pré-inscrição&lt;/a&gt; para ajudar a organização do evento a mensurar o público. Também estão disponíveis a &lt;a href="http://200.20.86.136/flisys/va_lec.php" target="_blank"&gt;grade de apresentações do Dia-D 2009 em Piraí&lt;/a&gt; e o &lt;a href="http://blog.justen.eng.br/img/diad2009-cartaz.png"&gt;cartaz de divulgação do Dia-D 2009 em Piraí&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
Ministrarei um workshop sobre programação em &lt;a href="http://www.python.org/" target="_blank"&gt;Python&lt;/a&gt; e &lt;a href="http://www.web2py.com/" target="_blank"&gt;web2py&lt;/a&gt;: &lt;b&gt;Como desenvolver aplicações Web ágeis&lt;/b&gt;, que começará às &lt;b&gt;14h30min&lt;/b&gt; e terá duração de &lt;b&gt;2h&lt;/b&gt;.
&lt;/p&gt;
&lt;p&gt;
Espero vocês lá! ;-)
&lt;/p&gt;
&lt;p&gt;
--
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;Álvaro Justen
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.peta5.com.br/" target="_blank"&gt;Peta5 - Telecomunicações e Software Livre&lt;/a&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-4639417299624697281?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/u8eXMI0jrKg" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/u8eXMI0jrKg/dia-debian-em-pirai.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/08/dia-debian-em-pirai.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-3031885733692250234</guid><pubDate>Wed, 05 Aug 2009 11:26:00 +0000</pubDate><atom:updated>2009-11-01T18:18:39.185-02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">web2py</category><category domain="http://www.blogger.com/atom/ns#">web</category><category domain="http://www.blogger.com/atom/ns#">hackday</category><title>web2py hack day</title><description>&lt;p&gt;
Há certo tempo utilizo o framework de desenvolvimento Web &lt;a href="http://www.web2py.com/" target="_blank"&gt;web2py&lt;/a&gt; aqui na &lt;a href="http://www.peta5.com.br/" target="_blank"&gt;Peta5&lt;/a&gt; - inclusive participo do desenvolvimento do mesmo, submetendo &lt;i&gt;patches&lt;/i&gt; com correção de &lt;i&gt;bugs&lt;/i&gt; e novas funcionalidades.
&lt;/p&gt;
&lt;p&gt;
O &lt;a href="http://www.web2py.com/" target="_blank"&gt;web2py&lt;/a&gt; é um framework escrito em &lt;a href="http://www.python.org/" target="_blank"&gt;Python&lt;/a&gt; que, apesar de simples, é bastante poderoso e proporciona desenvolvimento bastante ágil de aplicações Web.
&lt;/p&gt;
&lt;p&gt;
Depois de conversar um pouco com o pessoal do &lt;a href="http://dojorio.wordpress.com/" target="_blank"&gt;Dojo Rio&lt;/a&gt; e da &lt;a href="http://www.pythonrio.org/" target="_blank"&gt;PythOnRio&lt;/a&gt; vi que o pessoal tinha interesse em aprender mais sobre o framework, por isso resolvi fazer um encontro informal sobre. A ideia é que troquemos experiências sobre &lt;a href="http://www.web2py.com/" target="_blank"&gt;web2py&lt;/a&gt;, o comparemos com outras soluções para, por exemplo, outros usuários terem base melhor de decisão sobre qual framework utilizar, além de contribuir com ideias para seu melhoramento.
&lt;/p&gt;
&lt;p&gt;
Estou chamando o evento de &lt;b&gt;web2py hack day&lt;/b&gt; e ele acontecerá na &lt;b&gt;próxima sexta-feira, dia 07 de agosto, às 18h30min no laboratório da &lt;a href="http://www.peta5.com.br/" target="_blank"&gt;Peta5&lt;/a&gt;, em Niterói/RJ.&lt;/b&gt;
&lt;/p&gt;
&lt;p&gt;
Nosso laboratório fica dentro da &lt;a href="http://www.uff.br/" target="_blank"&gt;Universidade Federal Fluminense&lt;/a&gt;, no campus &lt;b&gt;Praia Vermelha&lt;/b&gt; - para quem não conhece, é bem fácil chegar, saindo da Ponte &lt;a href="http://pt.wikipedia.org/wiki/Ponte_Rio-Niterói" target="_blank"&gt;Rio-Niterói&lt;/a&gt;: &lt;a href="http://maps.google.com/maps?f=d&amp;source=s_d&amp;saddr=Ponte+Pres.+Costa+E+Silva&amp;daddr=Rua+Passo+da+P%C3%A1tria,+156&amp;hl=pt-BR&amp;geocode=Fbbnov4dJB1u_Q%3B&amp;mra=ls&amp;sll=-22.878587,-43.114557&amp;sspn=0.019137,0.033088&amp;ie=UTF8&amp;z=14" target="_blank"a&gt;veja no Google Maps como chegar ao laboratório da Peta5&lt;/a&gt;.
Chegando ao &lt;i&gt;campus&lt;/i&gt; basta ir em direção ao &lt;b&gt;bloco E&lt;/b&gt; ("prédio velho"), se dirigir ao quarto andar e procurar a &lt;b&gt;sala 406A&lt;/b&gt;, que fica bem ao final do corredor.
&lt;/p&gt;
&lt;p&gt;
Aos interessados: por favor confirmem a vinda (via comentário no blog, via email na &lt;i&gt;thread&lt;/i&gt; do encontro na lista &lt;a href="http://br.groups.yahoo.com/group/pythonrio" target="_blank"&gt;PythOnRio&lt;/a&gt; etc.)!
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;--
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;Álvaro Justen
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.peta5.com.br/" target="_blank"&gt;Peta5 - Telecomunicações e Software Livre&lt;/a&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-3031885733692250234?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/Sy886j8DlTY" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/Sy886j8DlTY/web2py-hack-day.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/08/web2py-hack-day.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-4461981296542908946</guid><pubDate>Tue, 21 Jul 2009 12:31:00 +0000</pubDate><atom:updated>2009-07-21T09:39:45.745-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">tvdigital</category><category domain="http://www.blogger.com/atom/ns#">peta5</category><title>PetaTV seleciona desenvolvedor para TV Digital</title><description>&lt;p&gt;
A PetaTV, &lt;i&gt;spin-off&lt;/i&gt; da &lt;a href="http://www.peta5.com.br/" target="_blank"&gt;Peta5&lt;/a&gt; especializado no desenvolvimento de aplicações para TV Digital, seleciona profissional para atuar em projeto inovador de desenvolvimento de software para o mercado de publicidade para TV Digital.
&lt;/p&gt;

&lt;p&gt;
&lt;/p&gt;&lt;h2&gt;Requisitos&lt;/h2&gt;
&lt;ul&gt;
 &lt;li&gt;Possuir título de mestre;&lt;/li&gt;
 &lt;li&gt;Experiência em projetos de desenvolvimento de software;&lt;/li&gt;
 &lt;li&gt;Conhecimento de linguagens OO.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Desejável&lt;/h2&gt;
&lt;ul&gt;
   &lt;li&gt;Conhecimento de Python;&lt;/li&gt;
   &lt;li&gt;Experiência com Scrum;&lt;/li&gt;
   &lt;li&gt;Conhecimentos de webdesign;&lt;/li&gt;
   &lt;li&gt;Conhecimentos de programação para web.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Benefícios&lt;/h2&gt;
&lt;ul&gt;
   &lt;li&gt;Bolsa CNPq SET-6B;&lt;/li&gt;
   &lt;li&gt;Treinamento nas linguagens NCL e Lua;&lt;/li&gt;
   &lt;li&gt;Participação nos lucros do projeto.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Local de trabalho&lt;/h2&gt;
&lt;ul&gt;
   &lt;li&gt;Niterói/RJ&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Como se inscrever&lt;/h2&gt;
&lt;ul&gt;
   &lt;li&gt;Enviar currículo com o assunto &lt;b&gt;Desenvolvedor para TV Digital&lt;/b&gt; para &lt;b&gt;rh &lt;i&gt;[arroba]&lt;/i&gt; peta5 &lt;i&gt;[ponto]&lt;/i&gt; com &lt;i&gt;[ponto]&lt;/i&gt; br&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;
&lt;br /&gt;
--
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;Álvaro Justen
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.peta5.com.br/" target="_blank"&gt;Peta5 - Telecomunicações e Software Livre&lt;/a&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-4461981296542908946?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/L7wT1gZ65vM" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/L7wT1gZ65vM/petatv-seleciona-desenvolvedor-para-tv.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/07/petatv-seleciona-desenvolvedor-para-tv.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-4115506598132260602</guid><pubDate>Sun, 19 Jul 2009 00:49:00 +0000</pubDate><atom:updated>2009-07-19T16:07:01.663-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">latex</category><category domain="http://www.blogger.com/atom/ns#">python</category><title>Embutindo código Python no LaTeX</title><description>&lt;script type="text/javascript"&gt;
function mostra_esconde(id_codigo, id_link, txt_on, txt_off) {
 elem = document.getElementById(id_codigo);
 link = document.getElementById(id_link);
 if (elem.style.display == 'block') {
  elem.style.display = 'none';
  link.innerHTML = txt_on;
 }
 else {
  elem.style.display = 'block';
  link.innerHTML = txt_off;
 }
}
&lt;/script&gt;

&lt;p&gt;
 Depois de &lt;a href="http://alvarojusten.blogspot.com/2009/07/liberando-bastante-espaco-com-o.html" target="_blank"&gt;liberar bastante espaço no meu EeePC com o &lt;b&gt;localepurge&lt;/b&gt;&lt;/a&gt; consegui, finalmente, instalar o &lt;a href="http://www.tug.org/texlive/" target="_blank"&gt;TeXLive&lt;/a&gt; no meu &lt;a href="http://pt.wikipedia.org/wiki/Netbook" target="_blank"&gt;netbook&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
 Como eu não sou especialista em &lt;a href="http://pt.wikipedia.org/wiki/TeX" target="_blank"&gt;TeX&lt;/a&gt; e &lt;a href="http://www.python.org/" target="_blank"&gt;Python&lt;/a&gt; é minha linguagem preferida, comecei a procurar como poderia embutir código Python em meus documentos &lt;a href="http://pt.wikipedia.org/wiki/LaTeX" target="_blank"&gt;LaTeX&lt;/a&gt;, dessa forma eu teria como gerar código automático em LaTeX.
&lt;/p&gt;
&lt;p&gt;
 Conversando com &lt;b&gt;Alex Tercete&lt;/b&gt;, conseguimos encontrar uma página com o pacote &lt;span style="font-family: courier;"&gt;python&lt;/span&gt; para LaTeX que faz exatamente o que queríamos: basta abrir um ambiente chamado &lt;span style="font-family: courier;"&gt;python&lt;/span&gt; e sair programando :-) todo o &lt;i&gt;output&lt;/i&gt; do código Python é interpretado pelo LaTeX - dessa forma podemos gerar tabelas, gráficos etc.
&lt;/p&gt;
&lt;p&gt;
 Vamos parar de encher o saco e ir direto ao código: para começar, baixe o pacote &lt;a href="http://www.justen.eng.br/downloads/python.sty" target="_blank"&gt;python.sty&lt;/a&gt;, esse pacote está sob licença &lt;a href="http://pt.wikipedia.org/wiki/GNU_General_Public_License" target="_blank"&gt;GPLv2&lt;/a&gt; e foi criado por &lt;a href="http://www.imada.sdu.dk/~ehmsen/" target="_blank"&gt;Martin R. Ehmsen&lt;/a&gt; (&lt;a href="http://www.imada.sdu.dk/~ehmsen/pythonlatex.php" target="_blank"&gt;veja o site oficial&lt;/a&gt;). O que esse arquivo faz, basicamente, é: joga tudo que está entre &lt;span style="font-family: courier;"&gt;\begin{python}&lt;/span&gt; e &lt;span style="font-family: courier;"&gt;\end{python}&lt;/span&gt; para o arquivo &lt;span style="font-family: courier;"&gt;seu_arquivo_latex.py&lt;/span&gt;, executa o comando &lt;span style="font-family: courier;"&gt;python seu_arquivo_latex.py&lt;/span&gt;, jogando a saída para o arquivo &lt;span style="font-family: courier;"&gt;seu_arquivo_latex.py.out&lt;/span&gt; e, por fim, adiciona o conteúdo desse ao código LaTeX exatamente onde estava o &lt;span style="font-family: courier;"&gt;\begin{python} ... \end{python}&lt;/span&gt;.
&lt;/p&gt;
&lt;p&gt;
 Depois de baixá-lo, basta colocá-lo no diretório de seu ambiente LaTeX e então incluí-lo com o comando &lt;span style="font-family: courier;"&gt;\usepackage{python}&lt;/span&gt;. Agora o céu é o limite! ;-)
&lt;/p&gt;
&lt;p&gt;
 Apesar de simples, essa solução é bastante flexível e poderosa: podemos gerar gráficos em tempo real em Python (com bibliotecas como a &lt;a href="http://matplotlib.sf.net/" target="_blank"&gt;Matplotlib&lt;/a&gt;) e gerar código LaTeX para incluí-los em nossos arquivos, gerar tabelas extensas através de &lt;i&gt;loops&lt;/i&gt;, coletar dados atualizados de arquivos, bases de dados, sites etc. para serem incluídos em seu relatório dentre outras infinitas possibilidades.
&lt;/p&gt;
&lt;p&gt;
 Abaixo seguem alguns exemplos:
 &lt;ul&gt;
  &lt;li&gt;
   Um simples "Oi, LaTeX+Python!":
   &lt;a id='link_resultado_1' href="javascript:mostra_esconde('latex_resultado_1', 'link_resultado_1', 'Mostrar resultado', 'Esconder resultado');"&gt;Mostrar resultado&lt;/a&gt;
   -
   &lt;a id='link_codigo_1' href="javascript:mostra_esconde('latex_exemplo_1', 'link_codigo_1', 'Mostrar código', 'Esconder código');"&gt;Mostrar código&lt;/a&gt;
   -
   &lt;a href="http://www.justen.eng.br/downloads/latex_python_oi.tex"&gt;Baixar código&lt;/a&gt;.
&lt;br /&gt;
&lt;img id="latex_resultado_1" style="display: none;" src="http://www.justen.eng.br/img/latex_python_oi.png" /&gt;
&lt;table id="latex_exemplo_1" style="display: none;"&gt;&lt;tr valign="top"&gt;&lt;td style="width:40px; text-align: right;"&gt;&lt;pre style="
        font-size: 11px;
        font-family: Bitstream Vera Sans Mono,monospace;
        background-color: transparent;
            margin: 0;
            padding: 5px;
            border: none;
        color: #A0A0A0;
    "&gt;1.&lt;br/&gt;2.&lt;br/&gt;3.&lt;br/&gt;4.&lt;br/&gt;5.&lt;br/&gt;6.&lt;br/&gt;7.&lt;br/&gt;8.&lt;br/&gt;9.&lt;/pre&gt;&lt;/td&gt;&lt;td&gt;&lt;pre style="
        font-size: 11px;
        font-family: Bitstream Vera Sans Mono,monospace;
        background-color: transparent;
            margin: 0;
            padding: 5px;
            border: none;
            overflow: auto;
    "&gt;\documentclass&lt;span style="font-weight: bold"&gt;{&lt;/span&gt;article&lt;span style="font-weight: bold"&gt;}&lt;br/&gt;&lt;/span&gt;\usepackage&lt;span style="font-weight: bold"&gt;[&lt;/span&gt;brazil&lt;span style="font-weight: bold"&gt;]{&lt;/span&gt;babel&lt;span style="font-weight: bold"&gt;}&lt;br/&gt;&lt;/span&gt;\usepackage&lt;span style="font-weight: bold"&gt;[&lt;/span&gt;utf8&lt;span style="font-weight: bold"&gt;]{&lt;/span&gt;inputenc&lt;span style="font-weight: bold"&gt;}&lt;br/&gt;&lt;/span&gt;\usepackage&lt;span style="font-weight: bold"&gt;{&lt;/span&gt;python&lt;span style="font-weight: bold"&gt;}&lt;br/&gt;&lt;/span&gt;\begin&lt;span style="font-weight: bold"&gt;{&lt;/span&gt;document&lt;span style="font-weight: bold"&gt;}&lt;br/&gt;    &lt;/span&gt;\begin&lt;span style="font-weight: bold"&gt;{&lt;/span&gt;python&lt;span style="font-weight: bold"&gt;}&lt;br/&gt;&lt;/span&gt;&lt;span style="color:#185369; font-weight: bold"&gt;print &lt;/span&gt;&lt;span style="color: #FF9966"&gt;'Oi, \\LaTeX + Python!'&lt;br/&gt;    &lt;/span&gt;\end&lt;span style="font-weight: bold"&gt;{&lt;/span&gt;python&lt;span style="font-weight: bold"&gt;}&lt;br/&gt;&lt;/span&gt;\end&lt;span style="font-weight: bold"&gt;{&lt;/span&gt;document&lt;span style="font-weight: bold"&gt;}&lt;br/&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
  &lt;/li&gt;
  &lt;li&gt;
   Utilizando a &lt;a href="http://matplotlib.sf.net/" target="_blank"&gt;matplotlib&lt;/a&gt;:
   &lt;a id='link_resultado_2' href="javascript:mostra_esconde('latex_resultado_2', 'link_resultado_2', 'Mostrar resultado', 'Esconder resultado');"&gt;Mostrar resultado&lt;/a&gt;
   -
   &lt;a id='link_codigo_2' href="javascript:mostra_esconde('latex_exemplo_2', 'link_codigo_2', 'Mostrar código', 'Esconder código');"&gt;Mostrar código&lt;/a&gt;
   -
   &lt;a href="http://www.justen.eng.br/downloads/latex_python_matplotlib.tex"&gt;Baixar código&lt;/a&gt;.
&lt;br /&gt;
&lt;img id="latex_resultado_2" style="display: none;" src="http://www.justen.eng.br/img/latex_python_matplotlib.png" /&gt;
&lt;table id="latex_exemplo_2" style="display: none;"&gt;&lt;tr valign="top"&gt;&lt;td style="width:40px; text-align: right;"&gt;&lt;pre style="
        font-size: 11px;
        font-family: Bitstream Vera Sans Mono,monospace;
        background-color: transparent;
            margin: 0;
            padding: 5px;
            border: none;
        color: #A0A0A0;
    "&gt;1.&lt;br/&gt;2.&lt;br/&gt;3.&lt;br/&gt;4.&lt;br/&gt;5.&lt;br/&gt;6.&lt;br/&gt;7.&lt;br/&gt;8.&lt;br/&gt;9.&lt;br/&gt;10.&lt;br/&gt;11.&lt;br/&gt;12.&lt;br/&gt;13.&lt;br/&gt;14.&lt;br/&gt;15.&lt;br/&gt;16.&lt;br/&gt;17.&lt;br/&gt;18.&lt;br/&gt;19.&lt;br/&gt;20.&lt;br/&gt;21.&lt;br/&gt;22.&lt;br/&gt;23.&lt;br/&gt;24.&lt;br/&gt;25.&lt;br/&gt;26.&lt;br/&gt;27.&lt;br/&gt;28.&lt;br/&gt;29.&lt;br/&gt;30.&lt;br/&gt;31.&lt;br/&gt;32.&lt;br/&gt;33.&lt;br/&gt;34.&lt;br/&gt;35.&lt;/pre&gt;&lt;/td&gt;&lt;td&gt;&lt;pre style="
        font-size: 11px;
        font-family: Bitstream Vera Sans Mono,monospace;
        background-color: transparent;
            margin: 0;
            padding: 5px;
            border: none;
            overflow: auto;
    "&gt;\documentclass&lt;span style="font-weight: bold"&gt;{&lt;/span&gt;article&lt;span style="font-weight: bold"&gt;}&lt;br/&gt;&lt;/span&gt;\usepackage&lt;span style="font-weight: bold"&gt;[&lt;/span&gt;brazil&lt;span style="font-weight: bold"&gt;]{&lt;/span&gt;babel&lt;span style="font-weight: bold"&gt;}&lt;br/&gt;&lt;/span&gt;\usepackage&lt;span style="font-weight: bold"&gt;[&lt;/span&gt;utf8&lt;span style="font-weight: bold"&gt;]{&lt;/span&gt;inputenc&lt;span style="font-weight: bold"&gt;}&lt;br/&gt;&lt;/span&gt;\usepackage&lt;span style="font-weight: bold"&gt;{&lt;/span&gt;python&lt;span style="font-weight: bold"&gt;} %&lt;/span&gt;Python rules&lt;span style="font-weight: bold"&gt;!&lt;br/&gt;&lt;/span&gt;\usepackage&lt;span style="font-weight: bold"&gt;{&lt;/span&gt;graphicx&lt;span style="font-weight: bold"&gt;} %&lt;/span&gt;Usado para a imagem&lt;br/&gt;\begin&lt;span style="font-weight: bold"&gt;{&lt;/span&gt;document&lt;span style="font-weight: bold"&gt;}&lt;br/&gt;&lt;/span&gt; \begin&lt;span style="font-weight: bold"&gt;{&lt;/span&gt;python&lt;span style="font-weight: bold"&gt;}&lt;br/&gt;&lt;/span&gt;&lt;span style="color:#185369; font-weight: bold"&gt;from &lt;/span&gt;matplotlib&lt;span style="font-weight: bold"&gt;.&lt;/span&gt;pyplot &lt;span style="color:#185369; font-weight: bold"&gt;import &lt;/span&gt;figure&lt;br/&gt;&lt;span style="color:#185369; font-weight: bold"&gt;from &lt;/span&gt;matplotlib&lt;span style="font-weight: bold"&gt;.&lt;/span&gt;pylab &lt;span style="color:#185369; font-weight: bold"&gt;import &lt;/span&gt;poly_below&lt;br/&gt;&lt;span style="color:#185369; font-weight: bold"&gt;from &lt;/span&gt;numpy &lt;span style="color:#185369; font-weight: bold"&gt;import &lt;/span&gt;arange&lt;br/&gt;&lt;span style="color:#185369; font-weight: bold"&gt;from &lt;/span&gt;random &lt;span style="color:#185369; font-weight: bold"&gt;import &lt;/span&gt;randint&lt;br/&gt;&lt;br/&gt;caracteres &lt;span style="font-weight: bold"&gt;= &lt;/span&gt;&lt;span style="color: #FF9966"&gt;'abcdefghijklmnopqrstuvwxyz0123456789'&lt;br/&gt;&lt;/span&gt;nome_como_lista &lt;span style="font-weight: bold"&gt;= []&lt;br/&gt;&lt;/span&gt;&lt;span style="color:#185369; font-weight: bold"&gt;for &lt;/span&gt;caractere &lt;span style="color:#185369; font-weight: bold"&gt;in &lt;/span&gt;range&lt;span style="font-weight: bold"&gt;(&lt;/span&gt;randint&lt;span style="font-weight: bold"&gt;(&lt;/span&gt;&lt;span style="color: red"&gt;0&lt;/span&gt;&lt;span style="font-weight: bold"&gt;, &lt;/span&gt;&lt;span style="color: red"&gt;9&lt;/span&gt;&lt;span style="font-weight: bold"&gt;)):&lt;br/&gt;&lt;/span&gt;    nome_como_lista&lt;span style="font-weight: bold"&gt;.&lt;/span&gt;append&lt;span style="font-weight: bold"&gt;(&lt;/span&gt;caracteres&lt;span style="font-weight: bold"&gt;[&lt;/span&gt;randint&lt;span style="font-weight: bold"&gt;(&lt;/span&gt;&lt;span style="color: red"&gt;0&lt;/span&gt;&lt;span style="font-weight: bold"&gt;, &lt;/span&gt;len&lt;span style="font-weight: bold"&gt;(&lt;/span&gt;caracteres&lt;span style="font-weight: bold"&gt;) - &lt;/span&gt;&lt;span style="color: red"&gt;1&lt;/span&gt;&lt;span style="font-weight: bold"&gt;)])&lt;br/&gt;&lt;/span&gt;nome_figura &lt;span style="font-weight: bold"&gt;= &lt;/span&gt;&lt;span style="color: #FF9966"&gt;'%s.png' &lt;/span&gt;&lt;span style="font-weight: bold"&gt;% (&lt;/span&gt;&lt;span style="color: #FF9966"&gt;''&lt;/span&gt;&lt;span style="font-weight: bold"&gt;.&lt;/span&gt;join&lt;span style="font-weight: bold"&gt;(&lt;/span&gt;nome_como_lista&lt;span style="font-weight: bold"&gt;))&lt;br/&gt;&lt;br/&gt;&lt;/span&gt;fig &lt;span style="font-weight: bold"&gt;= &lt;/span&gt;figure&lt;span style="font-weight: bold"&gt;()&lt;br/&gt;&lt;/span&gt;x &lt;span style="font-weight: bold"&gt;= &lt;/span&gt;arange&lt;span style="font-weight: bold"&gt;(&lt;/span&gt;&lt;span style="color: red"&gt;0&lt;/span&gt;&lt;span style="font-weight: bold"&gt;, &lt;/span&gt;&lt;span style="color: red"&gt;1&lt;/span&gt;&lt;span style="font-weight: bold"&gt;, &lt;/span&gt;&lt;span style="color: red"&gt;0.001&lt;/span&gt;&lt;span style="font-weight: bold"&gt;)&lt;br/&gt;&lt;/span&gt;y &lt;span style="font-weight: bold"&gt;= &lt;/span&gt;&lt;span style="color: red"&gt;4.0 &lt;/span&gt;&lt;span style="font-weight: bold"&gt;/ (&lt;/span&gt;x&lt;span style="font-weight: bold"&gt;**&lt;/span&gt;&lt;span style="color: red"&gt;2 &lt;/span&gt;&lt;span style="font-weight: bold"&gt;+ &lt;/span&gt;&lt;span style="color: red"&gt;1.0&lt;/span&gt;&lt;span style="font-weight: bold"&gt;)&lt;br/&gt;&lt;/span&gt;grafico &lt;span style="font-weight: bold"&gt;= &lt;/span&gt;fig&lt;span style="font-weight: bold"&gt;.&lt;/span&gt;add_subplot&lt;span style="font-weight: bold"&gt;(&lt;/span&gt;&lt;span style="color: red"&gt;111&lt;/span&gt;&lt;span style="font-weight: bold"&gt;)&lt;br/&gt;&lt;/span&gt;grafico&lt;span style="font-weight: bold"&gt;.&lt;/span&gt;plot&lt;span style="font-weight: bold"&gt;(&lt;/span&gt;x&lt;span style="font-weight: bold"&gt;, &lt;/span&gt;y&lt;span style="font-weight: bold"&gt;)&lt;br/&gt;&lt;/span&gt;grafico&lt;span style="font-weight: bold"&gt;.&lt;/span&gt;set_axis_on&lt;span style="font-weight: bold"&gt;()&lt;br/&gt;&lt;/span&gt;grafico&lt;span style="font-weight: bold"&gt;.&lt;/span&gt;axis&lt;span style="font-weight: bold"&gt;([&lt;/span&gt;&lt;span style="color: red"&gt;0&lt;/span&gt;&lt;span style="font-weight: bold"&gt;, &lt;/span&gt;&lt;span style="color: red"&gt;1&lt;/span&gt;&lt;span style="font-weight: bold"&gt;, &lt;/span&gt;&lt;span style="color: red"&gt;0&lt;/span&gt;&lt;span style="font-weight: bold"&gt;, &lt;/span&gt;&lt;span style="color: red"&gt;4&lt;/span&gt;&lt;span style="font-weight: bold"&gt;])&lt;br/&gt;&lt;br/&gt;&lt;/span&gt;fig&lt;span style="font-weight: bold"&gt;.&lt;/span&gt;savefig&lt;span style="font-weight: bold"&gt;(&lt;/span&gt;nome_figura&lt;span style="font-weight: bold"&gt;)&lt;br/&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style="color:#185369; font-weight: bold"&gt;print &lt;/span&gt;&lt;span style="color: #FF9966"&gt;'''\\begin{figure}[ht]&lt;br/&gt;    \\includegraphics[width=300px]{%s}&lt;br/&gt;    \\caption{Figura gerada pela matplotlib}&lt;br/&gt;\\end{figure}&lt;br/&gt;''' &lt;/span&gt;&lt;span style="font-weight: bold"&gt;% &lt;/span&gt;nome_figura&lt;br/&gt;    \end&lt;span style="font-weight: bold"&gt;{&lt;/span&gt;python&lt;span style="font-weight: bold"&gt;}&lt;br/&gt;&lt;/span&gt;\end&lt;span style="font-weight: bold"&gt;{&lt;/span&gt;document&lt;span style="font-weight: bold"&gt;}&lt;br/&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

  &lt;/li&gt;
 &lt;/ul&gt;
&lt;p&gt;
&lt;b&gt;Atenção:&lt;/b&gt; por padrão o LaTeX não permite que você execute o comando &lt;span style="font-family: courier;"&gt;\write&lt;/span&gt; e para que o pacote &lt;span style="font-family: courier;"&gt;python&lt;/span&gt; funcione temos duas opções:
 &lt;ol&gt;
  &lt;li&gt;Configurar a opção &lt;span style="font-family: courier;"&gt;shell_escape&lt;/span&gt; para o valor &lt;span style="font-family: courier;"&gt;t&lt;/span&gt; no arquivo &lt;span style="font-family: courier;"&gt;/usr/share/texmf/web2c/texmf.cnf&lt;/span&gt; (necessita de acesso como &lt;span style="font-family: courier;"&gt;root&lt;/span&gt;).&lt;/li&gt;
  &lt;li&gt;Passar a opção &lt;span style="font-family: courier;"&gt;--shell-escape&lt;/span&gt; toda vez que for gerar o PDF, como em: &lt;span style="font-family: courier;"&gt;pdflatex --shell-escape meu_arquivo_latex.tex&lt;/span&gt;&lt;/li&gt;
 &lt;/ol&gt;
&lt;/p&gt;
&lt;p&gt;
Achou útil? Comente! :-)
&lt;/p&gt;
&lt;p&gt;
 --
 &lt;br /&gt;
 &amp;nbsp;&amp;nbsp;&amp;nbsp;Álvaro Justen
 &lt;br /&gt;
 &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.peta5.com.br/" target="_blank"&gt;Peta5 - Telecomunicações e Software Livre&lt;/a&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-4115506598132260602?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/_C7uUBYh8uo" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/_C7uUBYh8uo/embutindo-codigo-python-no-latex.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/07/embutindo-codigo-python-no-latex.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-409148126681806519</guid><pubDate>Sun, 12 Jul 2009 23:31:00 +0000</pubDate><atom:updated>2009-11-01T18:19:10.488-02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">netbook</category><category domain="http://www.blogger.com/atom/ns#">debian</category><category domain="http://www.blogger.com/atom/ns#">dicas</category><category domain="http://www.blogger.com/atom/ns#">eeepc</category><title>Liberando (bastante!) espaço com o localepurge</title><description>&lt;p&gt;
Se você tem um &lt;a href="http://pt.wikipedia.org/wiki/Netbook" target="_blank"&gt;netbook&lt;/a&gt; com pouco espaço de armazenamento vai entender bem: estava eu ontem procurando arquivos para serem descartados em meu EeePC (que tem meros &lt;b&gt;4GB&lt;/b&gt; em seu &lt;a href="http://pt.wikipedia.org/wiki/SSD" target="_blank"&gt;SSD&lt;/a&gt;) quando me deparei com a situação de que não dava pra remover mais nada em meu diretório &lt;i&gt;home&lt;/i&gt;. Desespero? Nada! Ainda tinham os programas que eu poderia desinstalar...que me renderam mais &lt;b&gt;3MB&lt;/b&gt; livres! (?) Antes de eu começar a remover programas que eu realmente utilizava me lembrei que há alguns anos o &lt;a href="http://www.kurtkraut.net/" target="_blank"&gt;KurtKraut&lt;/a&gt; me recomendou o &lt;b&gt;localepurge&lt;/b&gt;.
&lt;/p&gt;
&lt;p&gt;
&lt;b&gt;localepurge&lt;/b&gt; é nada mais que um &lt;a href="http://pt.wikipedia.org/wiki/Shell_script" target="_blank"&gt;shell script&lt;/a&gt; de 227 linhas que remove arquivos de localização/tradução para os softwares instalados de línguas que você &lt;u&gt;não&lt;/u&gt; utiliza. Além disso, o &lt;a href="http://packages.debian.org/localepurge" target="_blank"&gt;pacote Debian do localepurge&lt;/a&gt; vem com um arquivo de configuração que faz com que ele seja executado toda vez que o &lt;a href="http://packages.debian.org/apt" target="_blank"&gt;apt&lt;/a&gt; rodar, dessa forma ele consegue remover os arquivos desnecessários logo que um novo pacote é instalado. No fim você fica com os softwares que quer e somente com os arquivos de tradução de que precisa!
&lt;/p&gt;
&lt;p&gt;
Gostou? Para instalar, basta:
&lt;blockquote&gt;
&lt;pre&gt;
# apt-get install localepurge
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;/p&gt;
&lt;p&gt;
Assim que o pacote for instalado o &lt;a href="http://packages.debian.org/debconf" target="_blank"&gt;debconf&lt;/a&gt; perguntará quais línguas você quer manter. Em meu caso, selecionei &lt;b&gt;pt_BR&lt;/b&gt; e &lt;b&gt;en_US&lt;/b&gt; (UTF-8). Após a instalação basta rodar o comando &lt;b&gt;localepurge&lt;/b&gt;, como rodei no meu EeePC:
&lt;blockquote&gt;
&lt;pre&gt;
moveeel:~# localepurge
localepurge: Disk space freed in /usr/share/locale: 338416K
localepurge: Disk space freed in /usr/share/man: 4800K

Total disk space freed by localepurge: 343216K
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;/p&gt;
&lt;p&gt;
Consegui liberar &lt;b&gt;335MB&lt;/b&gt; de espaço! Pouco? Não para quem tem &lt;b&gt;4GB&lt;/b&gt; de espaço - isso representa praticamente &lt;b&gt;8,2%&lt;/b&gt; do espaço total disponível.
&lt;/p&gt;
&lt;p&gt;
Depois disso só faltou a conexão à Internet funcionar bem para eu instalar o &lt;a href="http://www.tug.org/texlive/" target="_blank"&gt;TeXLive&lt;/a&gt; e postar aqui no blog, mas como nem tudo é perfeito, só tive acesso agora.
&lt;/p&gt;
&lt;p&gt;
&lt;b&gt;Atenção:&lt;/b&gt; como o localepurge não é totalmente integrado ao sistema de gerenciamento de pacotes do &lt;a href="http://www.debian.org/" target="_blank"&gt;Debian&lt;/a&gt; a deleção de arquivos de localização pode gerar "&lt;i&gt;warnings&lt;/i&gt;", já que alguns arquivos pertencentes aos pacotes não estarão mais lá enquanto "deveriam" estar, então quando for conferir se todos estão lá o &lt;a href="http://www.debian.org/" target="_blank"&gt;Debian&lt;/a&gt; (ou derivados) pode reclamar. Mas &lt;b&gt;não se preocupe&lt;/b&gt;: a deleção desses arquivos é inofensiva. Porém, se você quiser reinstalar os arquivos removidos dê uma olhada no script que vem com o pacote: &lt;b&gt;/usr/share/doc/localepurge/reinstall_debs.sh&lt;/b&gt;.
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;Álvaro Justen
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.peta5.com.br/"&gt;Peta5 - Telecomunicações e Software Livre&lt;/a&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-409148126681806519?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/amTki8ZYMYs" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/amTki8ZYMYs/liberando-bastante-espaco-com-o.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/07/liberando-bastante-espaco-com-o.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-8797079312833418694</guid><pubDate>Sun, 05 Jul 2009 23:46:00 +0000</pubDate><atom:updated>2009-11-01T18:19:41.177-02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">desenvolvedor</category><category domain="http://www.blogger.com/atom/ns#">software</category><category domain="http://www.blogger.com/atom/ns#">peta5</category><title>Novo desenvolvedor na Peta5</title><description>&lt;p&gt;
Gostaria de dar os boas vindas ao &lt;a href="http://www.pedromenezes.com/" target="_blank"&gt;Pedro Menezes&lt;/a&gt;, o mais novo integrante da equipe de desenvolvimento da &lt;a href="http://www.peta5.com.br/" target="_blank"&gt;Peta5&lt;/a&gt;!
&lt;/p&gt;

&lt;p&gt;
&lt;a href="http://www.pedromenezes.com/" target="_blank"&gt;Pedro&lt;/a&gt; é desenvolvedor Web, aprendiz de marketeiro em sites de busca, blogueiro há 2 anos (dedicado a facilitar a vida de quem trabalha online), programador Python e está se graduando em &lt;b&gt;Sistemas de Informação&lt;/b&gt; na &lt;a href="http://www.universo.edu.br/" target="_blank"&gt;Universidade Salgado de Oliveira&lt;/a&gt; (Niterói/RJ).
&lt;/p&gt;

&lt;p&gt;
Na &lt;a href="http://www.peta5.com.br/" target="_blank"&gt;Peta5&lt;/a&gt; ele irá trabalhar juntamente comigo e com nosso designer &lt;a href="http://www.onlydesign.com.br/blog"&gt;LedStyle&lt;/a&gt; no desenvolvimento da interface de gerenciamento de nossa &lt;a href="http://www.peta5.com.br/solucoes" target="_blank"&gt;solução em telefonia IP&lt;/a&gt; usando software livre (mais especificamente o framework Web &lt;a href="http://www.web2py.com/" target="_blank"&gt;web2py&lt;/a&gt;)! Obviamente, ele também será persuadido a participar dos encontros da &lt;a href="http://www.pythonrio.org" target="_blank"&gt;PythOnRio&lt;/a&gt; - mas isso é outra história! :-)
&lt;/p&gt;

&lt;p&gt;
&lt;a href="http://www.pedromenezes.com/" target="_blank"&gt;Pedro&lt;/a&gt;, seja bem-vindo e &lt;b&gt;happy hacking&lt;/b&gt;! ;-)
&lt;/p&gt;

&lt;p&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;Álvaro Justen
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.peta5.com.br/" target="_blank"&gt;Peta5 - Telecomunicações e Software Livre&lt;/a&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-8797079312833418694?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/CV2ZjOqE30Q" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/CV2ZjOqE30Q/novo-desenvolvedor-na-peta5.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/07/novo-desenvolvedor-na-peta5.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-3981849080538459164</guid><pubDate>Fri, 03 Jul 2009 14:20:00 +0000</pubDate><atom:updated>2009-11-01T18:19:53.169-02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">web2py</category><category domain="http://www.blogger.com/atom/ns#">framework</category><category domain="http://www.blogger.com/atom/ns#">fisl</category><category domain="http://www.blogger.com/atom/ns#">web</category><title>Palestra sobre web2py no FISL 10</title><description>&lt;p&gt;Na semana passada estive, juntamente com a equipe da &lt;a href="http://www.peta5.com.br/" target="_blank"&gt;Peta5&lt;/a&gt; e da &lt;a href="http://www.pythonrio.org/" target="_blank"&gt;PythOnRio&lt;/a&gt;, no &lt;a href="http://fisl.softwarelivre.org/" target="_blank"&gt;10o Fórum Internacional de Software Livre - FISL 10&lt;/a&gt;.
&lt;p&gt;O evento foi bem legal, contando até com a presença do Presidente da República &lt;b&gt;Luís Inácio Lula da Silva&lt;/b&gt;.
&lt;/p&gt;
&lt;p&gt;No FISL, junstamente com Douglas Soares de Andrade, palestrei sobre o framework para desenvolvimento Web &lt;a href="http://www.web2py.com/" target="_blank"&gt;web2py&lt;/a&gt;, que é desenvolvido em &lt;a href="http://www.python.org/" target="_blank"&gt;Python&lt;/a&gt; (claro! ;-).
&lt;/p&gt;
&lt;p&gt;Usamos &lt;a href="http://www.web2py.com/" target="_blank"&gt;web2py&lt;/a&gt; na &lt;a href="http://www.peta5.com.br/" target="_blank"&gt;Peta5&lt;/a&gt; há algum tempo para desenvolvimento de nossas soluções em &lt;a href="http://www.peta5.com.br/solucoes" target="_blank"&gt;Telefonia IP e Redes em malha sem fio&lt;/a&gt;, que são gerenciáveis via Web e há algum tempo sou desenvolvedor do web2py, inclusive &lt;a href="http://www.peta5.com.br/noticias/107-peta5-seleciona-bolsista-para-desenvolvimento-web" target="_blank"&gt;estamos contratando um desenvolvedor Web para desenvolver com web2py&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;
Acabei falando também nas palestras-relâmpago da &lt;a href="http://www.python.org.br/" target="_blank"&gt;Associção Python Brasil&lt;/a&gt; sobre o &lt;a href="http://www.web2py.com/" target="_blank"&gt;web2py&lt;/a&gt; - em 5 minutos! As palestras-relâmpago foram bastante dinâmicas e divertidas.
&lt;/p&gt;
&lt;p&gt;
As palestras do &lt;a href="http://fisl.softwarelivre.org/" target="_blank"&gt;10o Fórum Internacional de Software Livre - FISL 10&lt;/a&gt; foram transmitidas ao vivo pela &lt;a href="http://tv.softwarelivre.org/" target="_blank"&gt;TV Software Livre&lt;/a&gt;, porém ainda não estão disponíveis para download. Por enquanto, vocês podem baixar os &lt;a href="http://www.justen.eng.br/downloads/Álvaro_Justen-Douglas_Soares-Apresentando_web2py.pdf"&gt;slides da palestra sobre web2py&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;Álvaro Justen
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.peta5.com.br/" target="_blank"&gt;Peta5 - Telecomunicações e Software Livre&lt;/a&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-3981849080538459164?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/gHvA7DCluWI" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/gHvA7DCluWI/palestra-sobre-web2py-no-fisl-10.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">4</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/07/palestra-sobre-web2py-no-fisl-10.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18415308.post-331523706675393066</guid><pubDate>Fri, 26 Jun 2009 23:46:00 +0000</pubDate><atom:updated>2009-11-01T18:20:04.148-02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">web2py</category><category domain="http://www.blogger.com/atom/ns#">framework</category><category domain="http://www.blogger.com/atom/ns#">fisl</category><category domain="http://www.blogger.com/atom/ns#">web</category><title>FISL10.0: Palestra web2py</title><description>&lt;p&gt;
    Palestrarei, juntamente com o Douglas Soares, no &lt;a href="http://fisl.softwarelivre.org/"&gt;&lt;b&gt;FISL 10.0 - Fórum Internacional de Software Livre&lt;/b&gt;&lt;/a&gt;, por intermédio da &lt;a href="http://www.python.org.br/"&gt;Associação Python Brasil&lt;/a&gt;, sobre o &lt;a href="http://www.web2py.com"&gt;&lt;b&gt;web2py&lt;/b&gt;&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
    A palestra acontecerá amanhã, &lt;b&gt;sábado&lt;/b&gt;, às &lt;b&gt;9h&lt;/b&gt; (acordem cedo! ;-) na sala &lt;b&gt;41C&lt;/b&gt;.
&lt;/p&gt;

&lt;p&gt;
Para quem não conhece, o &lt;a href="http://www.web2py.com/" target="_blank"&gt;web2py&lt;/a&gt; é um framework para desenvolvimento Web criado por Massimo di Pierro, desenvolvido na linguagem de programação &lt;a href="http//www.python.org/"&gt;Python&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
Para quem quiser saber mais, esteja amanhã na palestra! :-)
&lt;/p&gt;

&lt;p&gt;
&lt;b&gt;Atenção: a palestra, anteriormente possuía horário às 16h (na mesma sala) - esse é o horário que foi impresso na programação, porém precisou ser alterada. Para os que querem conferir a programação mais recente do evento, visitem a &lt;a href="http://fisl.softwarelivre.org/10/papers/pub/programacao" target="_blank"&gt;página de programação do FISL&lt;/a&gt;.&lt;/b&gt;
&lt;/p&gt;

&lt;p&gt;
    &amp;nbsp;&amp;nbsp;&amp;nbsp;Álvaro Justen
    &lt;br /&gt;
    &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.peta5.com.br/" target="_blanmk"&gt;Peta5 - Telecomunicações e Software Livre&lt;/a&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18415308-331523706675393066?l=blog.justen.eng.br' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/alvarojusten/~4/2A_KfOgYnEk" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/alvarojusten/~3/2A_KfOgYnEk/fisl100-palestra-web2py.html</link><author>noreply@blogger.com (Álvaro Justen "Turicas")</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://blog.justen.eng.br/2009/06/fisl100-palestra-web2py.html</feedburner:origLink></item></channel></rss>
