<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Erko Bridee</title>
	<atom:link href="http://blog.erkobridee.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.erkobridee.com</link>
	<description>Uma visão particular de assuntos atuais…</description>
	<lastBuildDate>Tue, 21 Feb 2017 19:34:50 +0000</lastBuildDate>
	<language>pt-BR</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.6.15</generator>
	<item>
		<title>Canva &#8211; ferramenta de produção visual</title>
		<link>http://blog.erkobridee.com/2015/05/11/canva-ferramenta-de-producao-visual/</link>
		<comments>http://blog.erkobridee.com/2015/05/11/canva-ferramenta-de-producao-visual/#comments</comments>
		<pubDate>Mon, 11 May 2015 16:34:04 +0000</pubDate>
		<dc:creator><![CDATA[Erko Bridee]]></dc:creator>
				<category><![CDATA[HTML5]]></category>
		<category><![CDATA[backbone]]></category>
		<category><![CDATA[canva]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[underscore]]></category>

		<guid isPermaLink="false">http://blog.erkobridee.com/?p=2768</guid>
		<description><![CDATA[&#160; Canva &#8211; Ferramenta online gratuita para produção visual de design gráfico, apresentações, capas para Facebook, flyers, posters, convites entre outros. Serve como um belo exemplo, das possibilidades atuais dos web browsers modernos, fazendo uso do HTML5. Recomendo um teste. &#160; atualizado: 2017/02/21 Agora eles possuem uma versão em português do canvas, disponível neste link [...]]]></description>
				<content:encoded><![CDATA[<div id=HOTWordsTxt name=HOTWordsTxt><p>&nbsp;</p>
<p><a href="http://blog.erkobridee.com/wp-content/uploads/2015/05/Screen-Shot-2015-05-11-at-1.26.40-PM.png"><img class="aligncenter wp-image-2769 size-medium" src="http://blog.erkobridee.com/wp-content/uploads/2015/05/Screen-Shot-2015-05-11-at-1.26.40-PM-300x245.png" alt="Canva" width="300" height="245" srcset="http://blog.erkobridee.com/wp-content/uploads/2015/05/Screen-Shot-2015-05-11-at-1.26.40-PM-300x245.png 300w, http://blog.erkobridee.com/wp-content/uploads/2015/05/Screen-Shot-2015-05-11-at-1.26.40-PM.png 850w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="https://www.canva.com/" target="_blank">Canva</a> &#8211; Ferramenta online gratuita para produção visual de design gráfico, apresentações, capas para Facebook, flyers, posters, convites entre outros.</p>
<p>Serve como um belo exemplo, das possibilidades atuais dos web browsers modernos, fazendo uso do HTML5. Recomendo um teste.</p>
<p>&nbsp;</p>
<p><strong>atualizado:</strong> 2017/02/21</p>
<p>Agora eles possuem uma versão em português do canvas, disponível neste <a href="https://www.canva.com/pt_br/">link</a></p>
</div>
<div class="wp_rp_wrap  wp_rp_plain" id="wp_rp_first"><div class="wp_rp_content"><h3 class="related_post_title">Veja também:</h3><ul class="related_post wp_rp"><li data-position="0" data-poid="in-2641" data-post-type="none" ><a href="http://blog.erkobridee.com/2011/11/25/voltando-ao-mundo-htmljs-e-agora/" class="wp_rp_title">Voltando ao mundo HTML+JS e agora?</a></li><li data-position="1" data-poid="in-2425" data-post-type="none" ><a href="http://blog.erkobridee.com/2010/10/23/canvas-vs-flash-butterfly-3d-canvas-javascript/" class="wp_rp_title">[Canvas vs. Flash] Butterfly 3D (Canvas + JavaScript)</a></li><li data-position="2" data-poid="in-729" data-post-type="none" ><a href="http://blog.erkobridee.com/2009/10/19/facebook-aplicacao-desktop/" class="wp_rp_title">Facebook : Aplicação desktop</a></li><li data-position="3" data-poid="in-2644" data-post-type="none" ><a href="http://blog.erkobridee.com/2011/11/28/nosql-mas-o-que-e-isso/" class="wp_rp_title">NoSQL, mas o que é isso?</a></li><li data-position="4" data-poid="in-2026" data-post-type="none" ><a href="http://blog.erkobridee.com/2010/03/29/adobe-flex-links-preloader-style-layout-e-skin/" class="wp_rp_title">Adobe Flex links: Preloader, Style, Layout e Skin</a></li></ul><div class="wp_rp_footer"><a class="wp_rp_backlink" target="_blank" href="http://www.zemanta.com/?wp-related-posts" rel="nofollow">Zemanta</a></div></div></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.erkobridee.com/2015/05/11/canva-ferramenta-de-producao-visual/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Vagrant &#8211; Ambientes de desenvolvimento virtuais</title>
		<link>http://blog.erkobridee.com/2012/11/19/vagrant-ambientes-de-desenvolvimento-virtuais/</link>
		<comments>http://blog.erkobridee.com/2012/11/19/vagrant-ambientes-de-desenvolvimento-virtuais/#comments</comments>
		<pubDate>Mon, 19 Nov 2012 15:58:44 +0000</pubDate>
		<dc:creator><![CDATA[Erko Bridee]]></dc:creator>
				<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[Vagrant]]></category>
		<category><![CDATA[Virtual Box]]></category>
		<category><![CDATA[vm]]></category>

		<guid isPermaLink="false">http://blog.erkobridee.com/?p=2737</guid>
		<description><![CDATA[Vagrant &#8211; Virtualized development made easy &#160; Proposta:&#160;diminuir o tempo de configura&#231;&#227;o do ambiente e maximizar a paridade dos ambientes de desenvolvimento e produ&#231;&#227;o, e tornar a desculpa&#160;&#34;funciona na minha m&#225;quina&#34;, uma rel&#237;quia do passado. &#160; Conheci atrav&#233;s do tuite do&#160;@flaviosilveira sobre o assunto: Vagrant: F&#225;cil e &#250;til &#124; Fl&#225;vio Silveira Segundo verifiquei, a proposta [...]]]></description>
				<content:encoded><![CDATA[<div id=HOTWordsTxt name=HOTWordsTxt><p><a href="http://blog.erkobridee.com/wp-content/uploads/2012/11/vagrant-logo.png"><img alt="" class="aligncenter size-full wp-image-2738" height="362" src="http://blog.erkobridee.com/wp-content/uploads/2012/11/vagrant-logo.png" title="vagrant-logo" width="330" srcset="http://blog.erkobridee.com/wp-content/uploads/2012/11/vagrant-logo.png 330w, http://blog.erkobridee.com/wp-content/uploads/2012/11/vagrant-logo-273x300.png 273w" sizes="(max-width: 330px) 100vw, 330px" /></a></p>
<p style="text-align: center;"><a href="http://vagrantup.com/">Vagrant &#8211; Virtualized development made easy</a></p>
<p>&nbsp;</p>
<p><strong>Proposta:</strong>&nbsp;diminuir o tempo de configura&ccedil;&atilde;o do ambiente e maximizar a paridade dos ambientes de desenvolvimento e produ&ccedil;&atilde;o, e tornar a desculpa&nbsp;<em>&quot;funciona na minha m&aacute;quina&quot;</em>, uma rel&iacute;quia do passado.</p>
<p>&nbsp;</p>
<p>Conheci atrav&eacute;s do tuite do&nbsp;<a href="https://twitter.com/flaviosilveira">@flaviosilveira</a> sobre o assunto:</p>
<p style="margin-left: 40px;"><a href="http://flaviosilveira.com/2012/vagrant-facil-e-util/">Vagrant: F&aacute;cil e &uacute;til | Fl&aacute;vio Silveira</a></p>
<p>Segundo verifiquei, a proposta &eacute; bem interessante. Isolar e replicar um ambiente de desenvolvimento, o qual pode ser compartilhado entre os desenvolvedores, buscando representar o mais pr&oacute;ximo poss&iacute;vel o ambiente de produ&ccedil;&atilde;o, onde a aplica&ccedil;&atilde;o ser&aacute; executada.</p>
<p>&nbsp;</p>
<p>Outros links sobre o assunto:</p>
<p style="margin-left: 40px;"><a href="http://simplesideias.com.br/usando-o-vagrant-como-ambiente-de-desenvolvimento-no-windows">Usando o Vagrant como ambiente de desenvolvimento no Windows &#8211; Simples Ideias</a></p>
<p style="margin-left: 40px;"><a href="http://blog.concretesolutions.com.br/2012/10/criando-ambientes-virtualizados-com-vagrant/">Criando ambientes virtualizados com Vagrant</a></p>
<p style="margin-left: 40px;"><a href="http://net.tutsplus.com/tutorials/php/vagrant-what-why-and-how/">Vagrant: What, Why, and How</a></p>
<p style="margin-left: 40px;"><a href="http://www.vagrantbox.es/">A list of base boxes for Vagrant &#8211; Vagrantbox.es</a></p>
<p>&nbsp;</p>
</div>
<div class="wp_rp_wrap  wp_rp_plain" ><div class="wp_rp_content"><h3 class="related_post_title">Veja também:</h3><ul class="related_post wp_rp"><li data-position="0" data-poid="in-2242" data-post-type="none" ><a href="http://blog.erkobridee.com/2010/08/03/kiss_keep-it-stupid-simple/" class="wp_rp_title">[Filosofia] KISS &#8211; Keep it stupid simple</a></li><li data-position="1" data-poid="in-285" data-post-type="none" ><a href="http://blog.erkobridee.com/2009/03/05/mas-que-raios-e-esse-tal-de-bpel/" class="wp_rp_title">Mas que raios é esse tal de BPEL?!</a></li><li data-position="2" data-poid="in-631" data-post-type="none" ><a href="http://blog.erkobridee.com/2008/05/27/google-maps-agora-no-flashflex-finalmente/" class="wp_rp_title">Google Maps agora no Flash/Flex : finalmente</a></li><li data-position="3" data-poid="in-644" data-post-type="none" ><a href="http://blog.erkobridee.com/2007/11/30/adobe-flex-porque-usar-remoting/" class="wp_rp_title">Adobe Flex : porque usar remoting? </a></li><li data-position="4" data-poid="in-994" data-post-type="none" ><a href="http://blog.erkobridee.com/2009/10/26/adobe-flex-porque-usar-remoting-2/" class="wp_rp_title">Adobe Flex : porque usar remoting?</a></li></ul><div class="wp_rp_footer"><a class="wp_rp_backlink" target="_blank" href="http://www.zemanta.com/?wp-related-posts" rel="nofollow">Zemanta</a></div></div></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.erkobridee.com/2012/11/19/vagrant-ambientes-de-desenvolvimento-virtuais/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Utilizando o Node.js em um Windows XP sem Administrador</title>
		<link>http://blog.erkobridee.com/2012/11/16/utilizando-o-node-js-em-um-windows-xp-sem-administrador/</link>
		<comments>http://blog.erkobridee.com/2012/11/16/utilizando-o-node-js-em-um-windows-xp-sem-administrador/#comments</comments>
		<pubDate>Sat, 17 Nov 2012 02:06:10 +0000</pubDate>
		<dc:creator><![CDATA[Erko Bridee]]></dc:creator>
				<category><![CDATA[Node.js]]></category>
		<category><![CDATA[corporação]]></category>
		<category><![CDATA[Dica]]></category>
		<category><![CDATA[empresa]]></category>
		<category><![CDATA[HowTo]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[node.js]]></category>
		<category><![CDATA[restrição]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://blog.erkobridee.com/?p=2735</guid>
		<description><![CDATA[Cen&#225;rio:&#160;ambiente corporativo, m&#225;quinas Windows XP e usu&#225;rio sem permiss&#227;o de administra&#231;&#227;o. Observa&#231;&#227;o:&#160;embora o cen&#225;rio descrito seja o Windows XP, os passos para o Windows 7 s&#227;o bem parecidos. &#160; Instala&#231;&#227;o e Configura&#231;&#227;o Vers&#227;o Portav&#233;l &#8211;&#160;Node.js: 0.8.6 32-bits and 64-bits Esta vers&#227;o compactada possui 2 diret&#243;rios, contendo vers&#245;es para Windows 32 e 64 bits. Basta descompactar [...]]]></description>
				<content:encoded><![CDATA[<div id=HOTWordsTxt name=HOTWordsTxt><p><strong>Cen&aacute;rio:</strong>&nbsp;ambiente corporativo, m&aacute;quinas Windows XP e usu&aacute;rio sem permiss&atilde;o de administra&ccedil;&atilde;o.</p>
<p><strong>Observa&ccedil;&atilde;o:</strong>&nbsp;embora o cen&aacute;rio descrito seja o Windows XP, os passos para o Windows 7 s&atilde;o bem parecidos.</p>
<p>&nbsp;</p>
<h2>Instala&ccedil;&atilde;o e Configura&ccedil;&atilde;o</h2>
<p>Vers&atilde;o Portav&eacute;l &#8211;&nbsp;<a href="http://imsky.co/notes/nodejs-portable-windows-version-15">Node.js: 0.8.6 32-bits and 64-bits</a></p>
<p>Esta vers&atilde;o compactada possui 2 diret&oacute;rios, contendo vers&otilde;es para Windows 32 e 64 bits.</p>
<p>Basta descompactar a respectiva vers&atilde;o compat&iacute;vel com seu Windows em um diret&oacute;rio que voc&ecirc; possua direito de escrita.</p>
<p>Por exemplo:&nbsp;<code>D:/dev/nodejs</code></p>
<p>Feito isso, para facilitar o uso do Node.js pelo terminal de comandos, crie uma vari&aacute;vel de ambiente&nbsp;<em>NODE_PATH</em>&nbsp;e aponte para o diret&oacute;rio onde voc&ecirc; descompactou o Node.js, ent&atilde;o adicione o&nbsp;<em>NODE_PATH</em>&nbsp;ao final da vari&aacute;vel&nbsp;<em>PATH</em>.</p>
<p>Caminho:</p>
<p><code>Iniciar &gt; Configura&ccedil;&otilde;es &gt; Painel de Controle &gt; Sistema</code></p>
<p>ou</p>
<p><code>Windows Key (tecla com simbolo do Windows) + Pause</code>&nbsp;&#8211; Atalho para Sistema</p>
<p>Na janela do Sistema, selecione a aba: Avan&ccedil;ado, no final de janela, clique no bot&atilde;o :&nbsp;<em>&quot;Vari&aacute;veis de ambiente&quot;</em></p>
<p>Feito isso o Node.js ir&aacute; funcionar no terminal de comando atrav&eacute;s do comando:&nbsp;<strong><code>node</code></strong></p>
<p><strong>Observa&ccedil;&atilde;o:</strong>&nbsp;o npm (Node Packaged Modules), como est&aacute; no mesmo diret&oacute;rio do node, tamb&eacute;m estar&aacute; dispon&iacute;vel no terminal de comando, por&eacute;m ser&aacute; necess&aacute;rio algumas configura&ccedil;&otilde;es para seu funcionamento correto.</p>
<p>O diret&oacute;rio dos pacotes globais do npm est&aacute; apontando por padr&atilde;o para o diret&oacute;rio de dados de aplica&ccedil;&otilde;es do usu&aacute;rio no Windows, ou seja, em outro diret&oacute;rio, diferente do local onde est&aacute; o Node.js e o NPM. Com isso, ser&aacute; necess&aacute;rio atualizar o diret&oacute;rio dos pacotes globais utilizados pelo npm.</p>
<p>Para isso via, terminal de comando utilize o comando:</p>
<p><code>npm config set prefix {Diret&oacute;rio do Node.js e NPM}</code></p>
<p>Feito isto, o Node.js e o NPM est&atilde;o prontos para uso.</p>
<p>&nbsp;</p>
<h2>NPM vs. Proxy NTLM</h2>
<p>Lembrando que estamos em um ambiente corporativo, neste temos um PROXY entre o computador e a internet, e normalmente as redes corporativas utilizam PROXY NTLM, o npm n&atilde;o conseguir&aacute; acessar o reposit&oacute;rio na internet. Com isto, ser&aacute; necess&aacute;rio o uso de um recurso auxiliar para passar pelo PROXY.</p>
<p>Conforme&nbsp;<a href="https://github.com/isaacs/npm/issues/2119">GitHub NPM ISSUE 2119</a>&nbsp;o NPM n&atilde;o possui suporte para acessar o reposit&oacute;rio na internet atrav&eacute;s de um Proxy NTLM. Segundo a dica dispon&iacute;vel na pr&oacute;pria issue, ser&aacute; necess&aacute;rio utilizar uma alternativa local para passar pelo Proxy NTLM.</p>
<p>Dentre as alternativas apresentadas, foi utilizado:</p>
<p><a href="http://ntlmaps.sourceforge.net/">NtlmMaps &#8211; NTLM Authorization Proxy Server (Python)</a>&nbsp;|&nbsp;<a href="https://github.com/tchype/ntlmaps">GitHub Code</a></p>
<p><strong>NtlmMaps</strong>&nbsp;&#8211; &eacute; um proxy local onde se configura o proxy da empresa, definindo as configura&ccedil;&otilde;es de acesso.</p>
<p>&nbsp;</p>
<h3>Instalando e Configurando o Python 2.x</h3>
<p>Como esta implementa&ccedil;&atilde;o &eacute; em Python, ser&aacute; necess&aacute;rio ter o Python 2.x no computador.</p>
<p><a href="http://www.python.org/download/">Download : Python 2.x.x Windows Installer</a></p>
<p>Durante o processo de instala&ccedil;&atilde;o, indique o diret&oacute;rio onde voc&ecirc; possua acesso para escrita.</p>
<p>Por exemplo:&nbsp;<code>D:/dev/python</code></p>
<p>Feito isso, para facilitar o uso do python pelo terminal de comandos, crie uma vari&aacute;vel de ambiente&nbsp;<em>PYTHON_PATH</em>&nbsp;e aponte para o diret&oacute;rio onde voc&ecirc; descompactou o Node.js, ent&atilde;o adicione o&nbsp;<em>PYTHON_PATH</em>&nbsp;ao final da vari&aacute;vel&nbsp;<em>PATH</em>.</p>
<p>caminho:</p>
<p><code>Iniciar &gt; Configura&ccedil;&otilde;es &gt; Painel de Controle &gt; Sistema</code></p>
<p>ou</p>
<p><code>Windows Key (tecla com simbolo do Windows) + Pause</code>&nbsp;&#8211; Atalho para Sistema</p>
<p>Na janela do Sistema, selecione a aba: Avan&ccedil;ado, no final de janela, clique no bot&atilde;o :&nbsp;<em>&quot;Vari&aacute;veis de ambiente&quot;</em></p>
<p>&nbsp;</p>
<h3>Instalando e Configurando o NtlmMaps</h3>
<p>Descompacte o arquivo do ntlmmaps em um diret&oacute;rio que possua acesso para escrita.</p>
<p>Por exemplo:&nbsp;<code>D:/dev/ntlmmaps</code></p>
<p>Configurando o NtlmMaps:</p>
<ul>
<li>edite o arquivo server.cfg, os items abaixo (mantive a ordem em que aparece no arquivo):</li>
</ul>
<blockquote>
<p>PARENT_PROXY : host do proxy da empresa, sem o &quot;http://&quot;</p>
<p>PARENT_PROXY_PORT : respectiva porta utilizada pelo proxy da empresa</p>
<p>NT_DOMAIN : nome do dom&iacute;nio de rede que a sua empresa utiliza</p>
<p>USER : seu login de rede</p>
<p>PASSWORD : sua senha de rede, por&eacute;m caso n&atilde;o queria preencher &eacute; poss&iacute;vel, ent&atilde;o quando for executar a aplica&ccedil;&atilde;o lhe ser&aacute; solicitado a sua senha da rede</p>
<p>NT_PART : o valor padr&atilde;o deste atributo &eacute; 0, por&eacute;m em algumas redes NTLM precisam dessa informa&ccedil;&atilde;o como no meu caso, ent&atilde;o este atributo foi alterado para 1</p>
</blockquote>
<ul>
<li>edite o arquivo :&nbsp;<span style="font-family: monospace;">runserver.bat</span></li>
</ul>
<blockquote>
<p>inicialmente ele possui um caminho predefinido do local de instala&ccedil;&atilde;o do Python, por&eacute;m como foi feito anteriormenteadicionado o Python ao PATH do Windows, basta alterar essa string por: python &gt;&gt; onde a linha ficar&aacute;:&nbsp;<code>python main.py</code></p>
</blockquote>
<p>Uma vez configurado, execute o&nbsp;<code>runserver.bat</code></p>
<p>&nbsp;</p>
<h2>NPM configurando o Proxy Local</h2>
<p>Pelo terminal de comando execute os respectivos comandos para configurar o NPM.</p>
<p><code>npm config set proxy http://localhost:5865</code></p>
<p><code>npm config set registry &quot;http://registry.npmjs.org/&quot;</code></p>
<p>Aponta o NPM para o proxy local e altera a URL do reposit&oacute;rio de pacotes do Node.js do https para o http.</p>
<p>Feito as respectivas configura&ccedil;&otilde;es, agora o seu ambiente de desenvolvimento Node.js e NPM ir&aacute; funcionar corretamente via linha de comando.</p>
<p>&nbsp;</p>
<h2>Ferramenta de desenvolvimento</h2>
<p>Uma boa ferramenta que pode ser utilizada neste ambiente, &eacute; o&nbsp;<a href="http://www.sublimetext.com/2">Sublime Text 2</a>, a qual possui vers&atilde;o port&aacute;vel.</p>
</div>
<div class="wp_rp_wrap  wp_rp_plain" ><div class="wp_rp_content"><h3 class="related_post_title">Veja também:</h3><ul class="related_post wp_rp"><li data-position="0" data-poid="in-2730" data-post-type="none" ><a href="http://blog.erkobridee.com/2012/11/16/node-js-javascript-no-servidor/" class="wp_rp_title">Node.js &#8211; JavaScript no Servidor [visão geral]</a></li><li data-position="1" data-poid="in-2109" data-post-type="none" ><a href="http://blog.erkobridee.com/2010/07/09/como-jogar-call-of-dudy-4-mw-em-servidores-do-brasil/" class="wp_rp_title">Como jogar Call Of Dudy 4 MW em servidores do Brasil?</a></li><li data-position="2" data-poid="in-1502" data-post-type="none" ><a href="http://blog.erkobridee.com/2010/02/17/adobe-flex-definindo-o-foco-na-aplicacao/" class="wp_rp_title">[Adobe Flex] Definindo o foco na aplicação</a></li><li data-position="3" data-poid="in-1000" data-post-type="none" ><a href="http://blog.erkobridee.com/2009/10/26/adobe-flex-httpservice-enviando-parametros-para-a-aplicacao-web-em-java/" class="wp_rp_title">Adobe Flex (HttpService) enviando parametros para a aplicação web em Java</a></li><li data-position="4" data-poid="in-1550" data-post-type="none" ><a href="http://blog.erkobridee.com/2010/03/08/oracle-weblogic-server-11g-release-1-10-3-2/" class="wp_rp_title">Oracle WebLogic Server 11g Release 1 (10.3.2)</a></li></ul><div class="wp_rp_footer"><a class="wp_rp_backlink" target="_blank" href="http://www.zemanta.com/?wp-related-posts" rel="nofollow">Zemanta</a></div></div></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.erkobridee.com/2012/11/16/utilizando-o-node-js-em-um-windows-xp-sem-administrador/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Node.js &#8211; JavaScript no Servidor [visão geral]</title>
		<link>http://blog.erkobridee.com/2012/11/16/node-js-javascript-no-servidor/</link>
		<comments>http://blog.erkobridee.com/2012/11/16/node-js-javascript-no-servidor/#comments</comments>
		<pubDate>Sat, 17 Nov 2012 01:31:14 +0000</pubDate>
		<dc:creator><![CDATA[Erko Bridee]]></dc:creator>
				<category><![CDATA[Node.js]]></category>
		<category><![CDATA[azure]]></category>
		<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[node.js]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://blog.erkobridee.com/?p=2730</guid>
		<description><![CDATA[Uma visão geral sobre Node.js]]></description>
				<content:encoded><![CDATA[<div id=HOTWordsTxt name=HOTWordsTxt><p style="text-align: center;"><strong>Aten&ccedil;&atilde;o:</strong> esta publica&ccedil;&atilde;o &eacute; uma vis&atilde;o geral e superficial sobre o assunto.</p>
<p><a href="http://blog.erkobridee.com/wp-content/uploads/2012/11/nodejs-logo.png"><img alt="" class="aligncenter size-medium wp-image-2732" height="150" src="http://blog.erkobridee.com/wp-content/uploads/2012/11/nodejs-logo-300x150.png" title="nodejs-logo" width="300" srcset="http://blog.erkobridee.com/wp-content/uploads/2012/11/nodejs-logo-300x150.png 300w, http://blog.erkobridee.com/wp-content/uploads/2012/11/nodejs-logo.png 600w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<div style="text-align: center;"><a href="http://nodejs.org/">Node.js</a>&nbsp;/ <a href="https://github.com/joyent/node">C&oacute;digo no GitHub</a>&nbsp;/ <a href="http://nodejs.org/community/">Comunidade</a></div>
<div>&nbsp;</div>
<blockquote>
<div>O Node.js &eacute; uma plataforma constru&iacute;da sobre a engine de JavaScript do Google Chrome (V8), para constru&ccedil;&atilde;o de aplica&ccedil;&otilde;es, escal&aacute;veis e de r&aacute;pido desenvolvimento. Utiliza um modelo baseado em eventos e I/O n&atilde;o bloqueantes, o que torna o Node.js leve e eficiente, perfeito para aplica&ccedil;&otilde;es com grande volume de informa&ccedil;&otilde;es e real-time, que s&atilde;o acessadas por diversos tipos de disposit&iacute;vos.</div>
</blockquote>
<div>&nbsp;</div>
<div>Pessoalmente, conheci, ou mais precisamente, ouvi falar sobre o Node.js, que era JavaScript executando no servidor. Um caso de uso, a rede social <a href="http://geekli.st/">Geekli.st</a>&nbsp;(<a href="http://geekli.st/about">sobre</a>), foi constru&iacute;da utilizando o Node.js.</div>
<div>&nbsp;</div>
<div>Mas a minha motiva&ccedil;&atilde;o, que me fez utilizar o Node.js, foi a possibilidade de executar c&oacute;digos JavaScript, sem a necessidade e utilizar um Web Browser, o que me facilitaria os testes e estudos da linguagem JavaScript.</div>
<div>&nbsp;</div>
<div>&nbsp;</div>
<div>Uma vis&atilde;o de alto n&iacute;vel sobre o que &eacute; o Node.js, segundo o que compreendi:</div>
<div>&nbsp;</div>
<ol>
<li>&nbsp;&Eacute; o V8 (<a href="http://code.google.com/p/v8/">Google Chrome JavaScript Runtime</a>), que executa o JavaScript</li>
<li>&nbsp;Possui uma camada de c&oacute;digo C++ que realiza a comunica&ccedil;&atilde;o entre o V8 e o hardware</li>
<li>Disponibiliza um conjunto grande de bibliotecas para o desenvolvimento de aplica&ccedil;&otilde;es (<a href="http://nodejs.org/api/">API Docs</a>)</li>
</ol>
<div><a href="http://blog.erkobridee.com/wp-content/uploads/2012/11/nodejsStack.jpg"><img alt="" class="aligncenter size-full wp-image-2733" height="207" src="http://blog.erkobridee.com/wp-content/uploads/2012/11/nodejsStack.jpg" title="nodejsStack" width="385" srcset="http://blog.erkobridee.com/wp-content/uploads/2012/11/nodejsStack.jpg 385w, http://blog.erkobridee.com/wp-content/uploads/2012/11/nodejsStack-300x161.jpg 300w" sizes="(max-width: 385px) 100vw, 385px" /></a></div>
<div style="text-align: center;">(<a href="http://www.openwebosproject.org/docs/developer_guide/javascript_services/">Fonte</a>)</div>
<div>&nbsp;</div>
<div style="">Nas vers&otilde;es mais recentes do Node.js (v0.6+), dispon&iacute;veis para download, nos pacotes de instala&ccedil;&atilde;o, o Node.js vem acompanhado pelo NPM &#8211; <a href="https://npmjs.org/" style="">Node Packaged Modules</a>&nbsp;(comando via terminal : <em style=""><strong style="">npm</strong></em>), c&oacute;digo no <a href="https://github.com/isaacs/npm" style="">GitHub</a>.</div>
<div>&nbsp;</div>
<div>&nbsp;</div>
<div>O NPM &eacute; um gerenciador de depend&ecirc;ncias para aplica&ccedil;&otilde;es em Node.js, os quais s&atilde;o instalados no sub-diret&oacute;rio <strong>/node_modules</strong> do diret&oacute;rio da aplica&ccedil;&atilde;o, ou esta depend&ecirc;ncia pode ser instalada como global, por exemplo: <em><strong>npm install express -g</strong></em></div>
<div>&nbsp;</div>
<div>Atualmente o NPM conta com mais de 17 mil pacotes dispon&iacute;veis.&nbsp;</div>
<div>&nbsp;</div>
<div>&nbsp;</div>
<div><strong>Fato interessante sobre o Node.js no Windows</strong></div>
<div>&nbsp;</div>
<div>A Microsoft fez uma parceria com a <a href="http://joyent.com/">Joyent</a>&nbsp;na metade de 2011, tendo como objetivo portar o Node.js para Windows,&nbsp;com o m&aacute;ximo de performance. Sendo assim, os execut&aacute;vel <em>node.exe</em> e funcionamento na plataforma Windows, Windows Server e <a href="http://www.windowsazure.com/en-us/develop/nodejs/">Windows Azure</a>&nbsp;(<a href="http://www.windowsazure.com/en-us/develop/nodejs/tutorials/getting-started/">Getting Started</a>), possuem o suporte da pr&oacute;pria Microsoft. (<a href="http://blog.nodejs.org/2011/06/23/porting-node-to-windows-with-microsoft%25e2%2580%2599s-help/">fonte da informa&ccedil;&atilde;o</a>)</div>
<div>&nbsp;</div>
<blockquote>
<div>Joyent &#8211; empresa que mantem e atualiza o c&oacute;digo do Node.js no GitHub</div>
</blockquote>
<div>&nbsp;</div>
<div>Meus testes com Node.js : <a href="https://github.com/erkobridee/lab-nodejs">GitHub / lab-nodejs</a></div>
<div>&nbsp;</div>
<div>&nbsp;</div>
<div><strong>Material interessante para quem est&aacute; come&ccedil;ando:</strong></div>
<div>&nbsp;</div>
<div><a href="http://www.slideshare.net/caioribeiropereira/conhecendo-mundo-nodejs-12813969">SlideShare &#8211; Conhecendo mundo Node.js</a></div>
<div>&nbsp;</div>
<div><a href="http://imasters.com.br/artigo/22016/javascript/o-que-exatamente-e-o-nodejs">iMasters &#8211;&nbsp;O que exatamente &eacute; o Node.js?</a></div>
<div>&nbsp;</div>
<div><a href="http://www.udgwebdev.com/infografico-what-is-node-js/">UDG &#8211;&nbsp;Infogr&aacute;fico: What is Node.js?</a></div>
<div>&nbsp;</div>
<div><a href="http://www.tocadoelfo.com.br/2012/04/por-que-estou-aprendendo-nodejs.html">Toca do elfo &#8211;&nbsp;Por que estou aprendendo Node.js?</a></div>
<div>&nbsp;</div>
<div><a href="http://net.tutsplus.com/tutorials/javascript-ajax/node-js-for-beginners/">Nettuts+ &#8211;&nbsp;Node.js for Beginners</a></div>
<div>&nbsp;</div>
<div><a href="http://grokpodcast.com/tag/node-js/">Grok Podcast &#8211; Node.js</a></div>
<div>&nbsp;</div>
<div>Links que tenho catalogado sobre Node.js : <a href="http://delicious.com/erko.bridee/node.js">delicious.com/erko.bridee</a></div>
<div>&nbsp;</div>
<div>&nbsp;</div>
<div><strong>Ferramenta de Desenvolvimento:</strong>&nbsp;estou utilizando o <a href="http://www.sublimetext.com/2">Sublime Text 2</a> e o <a href="https://github.com/tanepiper/SublimeText-Nodejs">plugin para Node.js</a></div>
<div>&nbsp;</div>
</div>
<div class="wp_rp_wrap  wp_rp_plain" ><div class="wp_rp_content"><h3 class="related_post_title">Veja também:</h3><ul class="related_post wp_rp"><li data-position="0" data-poid="in-2735" data-post-type="none" ><a href="http://blog.erkobridee.com/2012/11/16/utilizando-o-node-js-em-um-windows-xp-sem-administrador/" class="wp_rp_title">Utilizando o Node.js em um Windows XP sem Administrador</a></li><li data-position="1" data-poid="in-2477" data-post-type="none" ><a href="http://blog.erkobridee.com/2010/10/24/adobe-air-package-assistant-pro/" class="wp_rp_title">[ Adobe AIR ] Package Assistant Pro</a></li><li data-position="2" data-poid="in-969" data-post-type="none" ><a href="http://blog.erkobridee.com/2009/10/26/pc-vs-mac-vs-linux-traduzindo-uma-imagem/" class="wp_rp_title">PC vs. Mac vs. Linux : traduzindo, uma imagem</a></li><li data-position="3" data-poid="in-2641" data-post-type="none" ><a href="http://blog.erkobridee.com/2011/11/25/voltando-ao-mundo-htmljs-e-agora/" class="wp_rp_title">Voltando ao mundo HTML+JS e agora?</a></li><li data-position="4" data-poid="in-1502" data-post-type="none" ><a href="http://blog.erkobridee.com/2010/02/17/adobe-flex-definindo-o-foco-na-aplicacao/" class="wp_rp_title">[Adobe Flex] Definindo o foco na aplicação</a></li></ul><div class="wp_rp_footer"><a class="wp_rp_backlink" target="_blank" href="http://www.zemanta.com/?wp-related-posts" rel="nofollow">Zemanta</a></div></div></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.erkobridee.com/2012/11/16/node-js-javascript-no-servidor/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>AngularJS &#8211; Consumindo a API do GitHub</title>
		<link>http://blog.erkobridee.com/2012/07/26/angularjs-consumindo-a-api-do-github/</link>
		<comments>http://blog.erkobridee.com/2012/07/26/angularjs-consumindo-a-api-do-github/#comments</comments>
		<pubDate>Thu, 26 Jul 2012 17:02:00 +0000</pubDate>
		<dc:creator><![CDATA[Erko Bridee]]></dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[angularjs]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[github]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[poc]]></category>

		<guid isPermaLink="false">http://blog.erkobridee.com/?p=2718</guid>
		<description><![CDATA[Post sobre um teste que realizei utilizando o Angular.js acessando a api do GitHub]]></description>
				<content:encoded><![CDATA[<div id=HOTWordsTxt name=HOTWordsTxt><p><strong style="line-height: 1.6em;">Atualiza&ccedil;&otilde;es (Maio/2013):</strong></p>
<div style="font-size: 13px;">&nbsp;</div>
<div style="font-size: 13px;">&#8211; C&oacute;digo da aplica&ccedil;&atilde;o foi movido para o diret&oacute;rio&nbsp;<em><strong>/app</strong></em></div>
<div style="font-size: 13px;">&nbsp;</div>
<div style="font-size: 13px;">&#8211; Foi adicionado o&nbsp;<a href="http://gruntjs.com/">Grunt.js</a>&nbsp;ao projeto, para facilitar o desenvolvimento e atualiza&ccedil;&atilde;o do branch&nbsp;<em><strong>gh-pages</strong></em>&nbsp;(o Grunt.js precisa do&nbsp;<a href="http://nodejs.org/">Node.js</a>&nbsp;para executar)&nbsp;</div>
<div style="font-size: 13px;">&nbsp;</div>
<p><em><span style="font-size: 13px;"><strong>Vers&atilde;o do projeto:</strong>&nbsp;</span></em><a href="https://github.com/erkobridee/angularjs-github-info/tree/13adf8bd52018f97406d54d861510c0210684ebd">13adf8bd52018f97406d54d861510c0210684ebd</a></p>
<p>&nbsp;</p>
<p><strong>Atualiza&ccedil;&otilde;es&nbsp;(Junho/2013):</strong></p>
<p>Este post est&aacute; desatualizado com rela&ccedil;&atilde;o ao projeto no <a href="https://github.com/erkobridee/angularjs-github-info">GitHub</a>, ser mais como hist&oacute;rico.</p>
<p>&#8211; Revisei a estrutura de c&oacute;digo e diret&oacute;ris do projeto</p>
<p>&#8211; Inclui o <a href="http://bower.io/">Bower</a> para gerenciar as libs utilizadas como depend&ecirc;ncias (por enquanto apenas para desenvolvimento)</p>
<p>&#8211; Ainda estou incluindo suporte e taferas no Grunt.js para otimizar o c&oacute;digo destinado para ambiente de produ&ccedil;&atilde;o.</p>
<p>&#8211; Mais material de apoio disponibilizado no <a href="https://github.com/erkobridee/lab-angularjs/wiki">GitHub &#8211; lab-angularjs &#8211; wiki</a></p>
<p><strong><span style="line-height: 1.6em;"><em>Vers&atilde;o do projeto:</em>&nbsp;</span></strong><a href="https://github.com/erkobridee/angularjs-github-info/tree/fdce30e108116d252a3e5eddc99e4fde9c4732e5"><span style="line-height: 1.6em;">fdce30e108116d252a3e5eddc99e4fde9c4732e5</span></a></p>
<p>&nbsp;</p>
<p>&#8212;</p>
<p>&nbsp;</p>
<p>Eis que estava me atualizando e retornando ao mundo do HTML + JS + CSS, com isso a primera tarefa foi ver o que havia de bom no mercado. Observei que as libs e frameworks de JavaScript evoluiram al&eacute;m do que eu havia imaginado. Durante meus estudos e pesquisas acabei vendo muitos exemplos, onde as pessoas estavam utilizando o <a href="http://backbonejs.org/">Backbone.js</a>&nbsp;(<a href="http://delicious.com/erko.bridee/backbonejs">alguns links sobre</a>), por&eacute;m n&atilde;o gostei muito da forma de trabalho, ent&atilde;o um dia conversando com a galera na internet, o <a href="https://twitter.com/vedovelli">@vedovelli</a> comentou sobre o <a href="http://angularjs.org/">Angular.js</a> e outras pessoas al&eacute;m dele tamb&eacute;m me falaram muito bem a seu respeito, com isto resolvi construir uma aplica&ccedil;&atilde;o e mecher um pouco para ver como &eacute; que ele se comporta durante o desenvolvimento de uma aplica&ccedil;&atilde;o.</p>
<p><a href="http://blog.erkobridee.com/wp-content/uploads/2012/07/angularjs-logo.png"><img alt="" class="aligncenter size-medium wp-image-2719" height="161" src="http://blog.erkobridee.com/wp-content/uploads/2012/07/angularjs-logo-300x161.png" title="AngularJS — Superheroic JavaScript MVC Framework" width="300" srcset="http://blog.erkobridee.com/wp-content/uploads/2012/07/angularjs-logo-300x161.png 300w, http://blog.erkobridee.com/wp-content/uploads/2012/07/angularjs-logo.png 500w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<blockquote>
<p>Com a miss&atilde;o de enriquecer o vocabul&aacute;rio HTML o framework <a href="http://angularjs.org/">AngularJS</a> chega com a marca Google de simplicidade e promete um workflow diferente para os desenvolvedores.</p>
</blockquote>
<p>&nbsp;</p>
<p>Aten&ccedil;&atilde;o n&atilde;o tenho inten&ccedil;&atilde;o de escrever um post introdut&oacute;rio sobre o Angular.js, caso queira algo mais inicial recomendo antes de continuar a leitura ver os respectivos post&#39;s:&nbsp;</p>
<p style="margin-left: 40px; "><a href="http://blog.vedovelli.com.br/?p=1946">Vedovelli &#8211;&nbsp;Introdu&ccedil;&atilde;o ao AngularJS</a></p>
<p style="margin-left: 40px; "><a href="http://tableless.com.br/criando-uma-aplicacao-simples-com-angularjs/">Tableless &#8211;&nbsp;Criando uma aplica&ccedil;&atilde;o simples com AngularJS</a></p>
<p>&nbsp;</p>
<p><strong>O que me chamou aten&ccedil;&atilde;o e me agradou no Angular.js?</strong></p>
<p style="margin-left: 40px; ">Como venho do desenvolvimento de sistemas utilizando o Adobe Flex, sempre gostei da facilidade e flexibilidade para o desenvolvimento e defini&ccedil;&otilde;es de novos componentes, al&eacute;m da facilidade de programa&ccedil;&atilde;o oferecida pelo Flex. Algo similar a essa caracter&iacute;stica observei no Angular.js, em resumo, achei muito f&aacute;cil e pr&aacute;tico desenvolver uma aplica&ccedil;&atilde;o utilizando o Angular.js.</p>
<p style="margin-left: 40px; ">O Angular.js possui uma funcionalidade de inje&ccedil;&atilde;o de depend&ecirc;ncias que &eacute; muito inteligente e funciona muito bem. Por si s&oacute; ele j&aacute; consegue reconhecer os parametros dos controllers e injetar o respectivo objeto referente ao nome do param&acirc;metro.</p>
<p style="margin-left: 40px; ">Por&eacute;m o Angular.js n&atilde;o te limita e restringe a utilizar obrigat&oacute;riamente estes nomes, que ele j&aacute; sabe tratar, caso queira, voc&ecirc; pode definir livremente o nome do parametro que desejar, ent&atilde;o, basta definir o que deve ser injetado na respectiva sequ&ecirc;ncia dos par&acirc;metros que foi definido na <em>function</em>, conforme descrito na documenta&ccedil;&atilde;o (<a href="http://code.angularjs.org/1.0.1/docs-1.0.1/api/AUTO.$injector">link $injector</a>):</p>
<p><script src="https://gist.github.com/3182467.js"> </script></p>
<p style="margin-left: 40px; ">Outro ponto forte do Angular.js que me agradou &eacute; sua documenta&ccedil;&atilde;o: <a href="http://code.angularjs.org/1.0.1/docs-1.0.1/api">Doc 1.0.1</a> / <a href="http://docs.angularjs.org/guide/">Guide</a></p>
<p style="margin-left: 40px; ">&nbsp;</p>
<p><strong>Qual teste que eu realizei utilizando o Angular.js?</strong></p>
<p style="margin-left: 40px; ">J&aacute; aviso, n&atilde;o fui nada criativo, resolvi construir a minha vers&atilde;o da aplica&ccedil;&atilde;o:&nbsp;<strong><em>AngularJS GitHub Contributors</em></strong> ( <a href="http://daha.github.com/angularJS-github-contributors/">app</a> | <a href="https://github.com/daha/angularJS-github-contributors">github</a> ), a qual acessava a API do GitHub e lista os reposit&oacute;rios p&uacute;blicos de um determinado usu&aacute;rio e respectivos contribuidores dos reposit&oacute;rios. Onde esta aplicac&atilde;o utiliza a <a href="http://yuilibrary.com/">YUI Library</a> do Yahoo para a defini&ccedil;&atilde;o da interface.</p>
<p style="margin-left: 40px; ">No meu caso reconstrui a aplica&ccedil;&atilde;o utilizando como base o <a href="http://twitter.github.com/bootstrap">Twitter Bootstrap</a> para a defini&ccedil;&atilde;o do layout da aplica&ccedil;&atilde;o, e mudei algumas caracter&iacute;sticas da organiza&ccedil;&atilde;o do c&oacute;digo, por&eacute;m na ess&ecirc;ncia a id&eacute;ia e aplica&ccedil;&atilde;o &eacute; a mesma, com o adicional da listagem dos Gists p&uacute;blicos do usu&aacute;rio.</p>
<p style="margin-left: 40px; ">Outra diferen&ccedil;a na implementa&ccedil;&atilde;o deste projeto foi a utiliza&ccedil;&atilde;o do modelo de Closures para a defini&ccedil;&atilde;o dos controllers (<em>github</em>: <a href="https://github.com/erkobridee/angularjs-github-info/blob/master/app/js/controllers.js">controllers.js</a>), seguindo uma boa pr&aacute;tica de programa&ccedil;&atilde;o com JavaScript. Lembrando que o escopo de qualquer declara&ccedil;&atilde;o de vari&aacute;vel e/ou fun&ccedil;&atilde;o &eacute; global valido para todo o HTML em execu&ccedil;&atilde;o pelo browser, o que pode gerar alguns problemas conforme a aplica&ccedil;&atilde;o cresce de tamanho.</p>
<p style="margin-left: 40px; ">Um recurso que utilizei nesta aplica&ccedil;&atilde;o foi o roteamento das URLs da aplica&ccedil;&atilde;o (<em>github</em>: <a href="https://github.com/erkobridee/angularjs-github-info/blob/master/app/js/app.js">app.js</a>) e inje&ccedil;&atilde;o dos respectivos templates de html no (<em>github</em>: <a href="https://github.com/erkobridee/angularjs-github-info/blob/master/app/index.html">index.html)</a>, onde est&aacute; a defini&ccedil;&atilde;o do <em>div</em> com o atributo <em>ng-view</em></p>
<p>&nbsp;</p>
<p><strong>Mas onde est&aacute; esta aplica&ccedil;&atilde;o que at&eacute; aqui voc&ecirc; apenas falou?</strong></p>
<p><a href="http://blog.erkobridee.com/wp-content/uploads/2012/07/angularjs-github-info-app.png"><img alt="" class="aligncenter size-medium wp-image-2720" height="149" src="http://blog.erkobridee.com/wp-content/uploads/2012/07/angularjs-github-info-app-300x149.png" style="" title="Angular.js - GitHub Info" width="300" srcset="http://blog.erkobridee.com/wp-content/uploads/2012/07/angularjs-github-info-app-300x149.png 300w, http://blog.erkobridee.com/wp-content/uploads/2012/07/angularjs-github-info-app.png 996w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="margin-left: 40px; ">Calma, calma, segue o link: ver a <a href="http://erkobridee.github.io/angularjs-github-info/">aplica&ccedil;&atilde;o em execu&ccedil;&atilde;o</a> / <a href="https://github.com/erkobridee/angularjs-github-info">c&oacute;digo no github.</a></p>
<p style="margin-left: 40px; "><em><strong>Vers&atilde;o do projeto anterior a:</strong></em> <a href="https://github.com/erkobridee/angularjs-github-info/tree/c85e9d70d140f965aadb8fcb6003790b088b9465">c85e9d70d140f965aadb8fcb6003790b088b9465</a></p>
<p>&nbsp;</p>
<p><strong>E a estrutura ad aplica&ccedil;&atilde;o?</strong></p>
<div style="margin-left: 40px; ">
<div><strong><em>/angularjs-github-info</em></strong></div>
<div><strong><em>&nbsp; &nbsp; /css</em></strong></div>
<div><span style="color:#2f4f4f;">&nbsp; &nbsp; &nbsp; &nbsp; app.css</span></div>
<div><span style="color:#0000ff;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Defini&ccedil;&atilde;o dos estilos da utilizados na aplica&ccedil;&atilde;o</span></div>
<div><strong><em>&nbsp; &nbsp; /js</em></strong></div>
<div><span style="color:#2f4f4f;">&nbsp; &nbsp; &nbsp; &nbsp; app.js&nbsp;</span></div>
<div><span style="color:#0000ff;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Defini&ccedil;&atilde;o dos roteamento das URLs para os respectivos templates e controllers</span></div>
<div><span style="color:#2f4f4f;">&nbsp; &nbsp; &nbsp; &nbsp; components.js</span></div>
<div><span style="color:#0000ff;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Defini&ccedil;&atilde;o das tags das abas</span></div>
<div><span style="color:#2f4f4f;">&nbsp; &nbsp; &nbsp; &nbsp; controllers.js</span></div>
<div><span style="color:#0000ff;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Defini&ccedil;&atilde;o das regras e processamentos das telas, utilizando Closure</span></div>
<div><span style="color:#2f4f4f;">&nbsp; &nbsp; &nbsp; &nbsp; services.js</span></div>
<div><span style="color:#0000ff;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Defini&ccedil;&atilde;o do acesso a API do GitHub</span></div>
<div><strong><em>&nbsp; &nbsp; /tpl</em></strong></div>
<div><strong><em>&nbsp; &nbsp; &nbsp; &nbsp; /github</em></strong></div>
<div><span style="color:#2f4f4f;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; repo-constributors.html</span></div>
<div><span style="color:#0000ff;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Defini&ccedil;&atilde;o da listagem das pessoas que contribuiram no projeto</span></div>
<div><span style="color:#2f4f4f;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; repo-info.html</span></div>
<div><span style="color:#0000ff;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Informa&ccedil;&otilde;es do reposit&oacute;rio selecionado</span></div>
<div><span style="color:#2f4f4f;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; repo.html</span></div>
<div><span style="color:#0000ff;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Defini&ccedil;&atilde;o do layout referente a tela de visualiza&ccedil;&atilde;o das informa&ccedil;&otilde;es do reposit&oacute;rio</span></div>
<div><span style="color:#2f4f4f;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; user-gists.html</span></div>
<div><span style="color:#0000ff;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Defini&ccedil;&atilde;o da listagem dos gists p&uacute;blicos de um determinado usu&aacute;rio</span></div>
<div><span style="color:#2f4f4f;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; user-info.html</span></div>
<div><span style="color:#0000ff;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Informa&ccedil;&otilde;es de um usu&aacute;rio do GitHub</span></div>
<div><span style="color:#2f4f4f;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; user-repos.html</span></div>
<div><span style="color:#0000ff;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Defini&ccedil;&atilde;o da listagem dos reposit&oacute;rios p&uacute;blicos de um determinado usu&aacute;rio</span></div>
<div><span style="color:#2f4f4f;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; user.html</span></div>
<div><span style="color:#0000ff;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Defini&ccedil;&atilde;o do layout referente a tela de visualiza&ccedil;&atilde;o das informa&ccedil;&otilde;es do usu&aacute;rio</span></div>
<div><span style="color:#2f4f4f;">&nbsp; &nbsp; &nbsp; &nbsp; about.html</span></div>
<div><span style="color:#0000ff;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Informa&ccedil;&otilde;es a respeito da aplica&ccedil;&atilde;o</span></div>
<div><span style="color:#2f4f4f;">&nbsp; &nbsp; &nbsp; &nbsp; search.html</span></div>
<div><span style="color:#0000ff;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; P&aacute;gina inicial injetada pelo AngularJS definido no js/app.js</span></div>
<div><span style="color:#8b4513;">&nbsp; &nbsp; index.html</span></div>
</div>
<div style="margin-left: 40px; ">&nbsp;</div>
<div>&nbsp;</div>
<div><strong>Considera&ccedil;&otilde;es finais:</strong></div>
<div>&nbsp;</div>
<div>O Angular.js me surpreendeu bastante, e caso no seu caso, assim como eu vem do desenvolvimento de sistemas com Adobe Flex, ao utilizar o Angular.js, prov&aacute;vel que voc&ecirc; se sinta em casa.</div>
<div>&nbsp;</div>
<div>Utilizando ele consegui facilmente trabalhar no modelo Cliente e Servidor, realizando a comunica&ccedil;&atilde;o atrav&eacute;s de RESTful, sendo este formato similar ao que usava no Flex onde a comunica&ccedil;&atilde;o era realizada atrav&eacute;s de servi&ccedil;os utilizando o protocolo AMF.</div>
<div>&nbsp;</div>
<div>Bom, mas aqui deixo uma dica, n&atilde;o basta apenas migrar para o Angular.js, recomento que voc&ecirc; invista no aprendizado do JavaScript, e &eacute; s&eacute;rio, n&atilde;o ache que voc&ecirc; sabe programar JavaScript, n&atilde;o cometa o mesmo erro que cometi. O JavaScript possui suas peculiaridades pr&oacute;prias, onde at&eacute; a forma de escrever a sintaxe dos seus c&oacute;digos podem e muito provavelmente v&atilde;o impactar na execu&ccedil;&atilde;o do seu c&oacute;digo JavaScript.</div>
<div>&nbsp;</div>
<div>Mas vou lhe poupar um pouco o trabalho, segue minhas recomenda&ccedil;&otilde;es para o caso:</div>
<div>&nbsp;</div>
<div style="margin-left: 40px; "><a href="https://www.youtube.com/watch?v=hQVTIJBZook">Google Tech Talks 2009 : JavaScript &#8211; The Good Parts</a></div>
<div style="margin-left: 40px; ">&nbsp;</div>
<div style="margin-left: 40px; "><a href="https://www.youtube.com/watch?v=mHtdZgou0qU">Google Tech Talks 2009 : Speed Up Your JavaScript</a></div>
<div style="margin-left: 40px; ">&nbsp;</div>
<div style="margin-left: 40px; "><a href="https://www.youtube.com/watch?v=UJPdhx5zTaw">Google I/O 2012 &#8211; Breaking the JavaScript Speed Limit with V8</a></div>
<div style="margin-left: 40px; ">&nbsp;</div>
<div style="margin-left: 40px; "><a href="http://www.codeschool.com/courses/jquery-air-first-flight">Curso gratu&iacute;to da Code School : JQuery</a></div>
<div style="margin-left: 40px; ">&nbsp;</div>
<div style="margin-left: 40px; "><a href="https://developer.mozilla.org/en/JavaScript/Strict_mode">JavaScript &#8211; Strict Mode &#8211; MDN</a></div>
<div style="margin-left: 40px; ">&nbsp;</div>
<div style="margin-left: 40px; "><a href="http://www.smashingmagazine.com/learning-javascript-essentials-guidelines-tutorials/">Learning JavaScript: Essentials And Guidelines</a></div>
<div style="margin-left: 40px; ">&nbsp;</div>
<div style="margin-left: 40px; "><a href="http://omar.gy/how-i-ended-up-enjoying-javascript/">How I Ended Up Enjoying JavaScript</a></div>
<div style="margin-left: 40px; ">&nbsp;</div>
<div>&nbsp;</div>
<div><strong>Vai um b&ocirc;nus ai?!</strong></div>
<div>&nbsp;</div>
<div>Percebeu que eu fiz a publica&ccedil;&atilde;o da aplica&ccedil;&atilde;o diretamente no GitHub? Eis a dica de como fazer o mesmo: <a href="https://gist.github.com/833223">neste gist</a></div>
<div>&nbsp;</div>
<div>Segue meus links salvos sobre: <a href="http://delicious.com/erko.bridee/angular.js">Angular.js</a> / <a href="http://delicious.com/erko.bridee/backbone.js">Backbone.js</a> / <a href="http://delicious.com/erko.bridee/javascript">JavaScript</a></div>
<div>&nbsp;</div>
<div>Outros projetos de exemplo, que utiliza o Angular.js no <a href="https://github.com/erkobridee">Github</a>, com nomes iniciados por: <strong>restful-bookmarks-&#8230;</strong></div>
<div>&nbsp;</div>
</div>
<div class="wp_rp_wrap  wp_rp_plain" ><div class="wp_rp_content"><h3 class="related_post_title">Veja também:</h3><ul class="related_post wp_rp"><li data-position="0" data-poid="in-2641" data-post-type="none" ><a href="http://blog.erkobridee.com/2011/11/25/voltando-ao-mundo-htmljs-e-agora/" class="wp_rp_title">Voltando ao mundo HTML+JS e agora?</a></li><li data-position="1" data-poid="in-2651" data-post-type="none" ><a href="http://blog.erkobridee.com/2011/12/05/play-framework-alta-produtividade-em-java/" class="wp_rp_title">Play Framework &#8211; alta produtividade em Java</a></li><li data-position="2" data-poid="in-2646" data-post-type="none" ><a href="http://blog.erkobridee.com/2011/11/28/coffeescript-lidando-com-javascript-sem-sofrimento/" class="wp_rp_title">CoffeeScript, lidando com JavaScript sem sofrimento</a></li><li data-position="3" data-poid="in-2730" data-post-type="none" ><a href="http://blog.erkobridee.com/2012/11/16/node-js-javascript-no-servidor/" class="wp_rp_title">Node.js &#8211; JavaScript no Servidor [visão geral]</a></li><li data-position="4" data-poid="in-1502" data-post-type="none" ><a href="http://blog.erkobridee.com/2010/02/17/adobe-flex-definindo-o-foco-na-aplicacao/" class="wp_rp_title">[Adobe Flex] Definindo o foco na aplicação</a></li></ul><div class="wp_rp_footer"><a class="wp_rp_backlink" target="_blank" href="http://www.zemanta.com/?wp-related-posts" rel="nofollow">Zemanta</a></div></div></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.erkobridee.com/2012/07/26/angularjs-consumindo-a-api-do-github/feed/</wfw:commentRss>
		<slash:comments>36</slash:comments>
		</item>
		<item>
		<title>Bill Gates &#8211; 11 regras da vida que a escola não ensina</title>
		<link>http://blog.erkobridee.com/2012/06/21/bill-gates-11-regras-da-vida-que-a-escola-nao-ensina/</link>
		<comments>http://blog.erkobridee.com/2012/06/21/bill-gates-11-regras-da-vida-que-a-escola-nao-ensina/#comments</comments>
		<pubDate>Fri, 22 Jun 2012 01:16:35 +0000</pubDate>
		<dc:creator><![CDATA[Erko Bridee]]></dc:creator>
				<category><![CDATA[Geral]]></category>
		<category><![CDATA[Bill Gates]]></category>
		<category><![CDATA[Ensinamentos]]></category>
		<category><![CDATA[Vida]]></category>

		<guid isPermaLink="false">http://blog.erkobridee.com/?p=2713</guid>
		<description><![CDATA[Bill Gates (wiki), um dos homens mais ricos do mundo, um dos fundadores da Microsoft, ao ser convidado para palestrar em uma escola secund&#225;ria, em poucos minutos, compartilhou um grande segredo da vida real, os quais n&#227;o s&#227;o ensinados nas escolas. &#160; Segue as regras: 01 &#8211; A vida n&#227;o &#233; f&#225;cil &#8211; acostume-se com [...]]]></description>
				<content:encoded><![CDATA[<div id=HOTWordsTxt name=HOTWordsTxt><p>Bill Gates (<a href="http://pt.wikipedia.org/wiki/Bill_Gates">wiki</a>), um dos homens mais ricos do mundo, um dos fundadores da Microsoft, ao ser convidado para palestrar em uma escola secund&aacute;ria, em poucos minutos, compartilhou um grande segredo da vida real, os quais n&atilde;o s&atilde;o ensinados nas escolas.</p>
<p>&nbsp;</p>
<p><strong>Segue as regras:</strong></p>
<p><strong>01 &#8211; </strong>A vida n&atilde;o &eacute; f&aacute;cil &ndash; acostume-se com isso.</p>
<p><strong>02 &#8211; </strong>O mundo n&atilde;o est&aacute; preocupado com a sua auto-estima. O mundo espera que voc&ecirc; fa&ccedil;a alguma coisa &uacute;til por ele ANTES de sentir-se bem com voc&ecirc; mesmo.</p>
<p><strong>03 &#8211; </strong>Voc&ecirc; n&atilde;o ganhar&aacute; R$ 20.000,00 por m&ecirc;s assim que sair da escola. Voc&ecirc; n&atilde;o ser&aacute; vice-presidente de uma empresa com carro e telefone &agrave; disposi&ccedil;&atilde;o antes que voc&ecirc; tenha conseguido comprar seu pr&oacute;prio carro e telefone.</p>
<p><strong>04 &#8211; </strong>Se voc&ecirc; acha seu professor rude, espere at&eacute; ter um Chefe. Ele n&atilde;o ter&aacute; pena de voc&ecirc;.</p>
<p><strong>05 &#8211; </strong>Vender jornal velho ou trabalhar durante as f&eacute;rias n&atilde;o est&aacute; abaixo da sua posi&ccedil;&atilde;o social. Seus av&oacute;s t&ecirc;m uma palavra diferente para isso: eles chamam de oportunidade.</p>
<p><strong>06 &#8211; </strong>Se voc&ecirc; fracassar, n&atilde;o &eacute; culpa de seus pais. Ent&atilde;o n&atilde;o lamente seus erros, aprenda com eles.</p>
<p><strong>07 &#8211; </strong>Antes de voc&ecirc; nascer, seus pais n&atilde;o eram t&atilde;o cr&iacute;ticos como agora. Eles s&oacute; ficaram assim por pagar as suas contas, lavar suas roupas e ouvir voc&ecirc; dizer que eles s&atilde;o &ldquo;rid&iacute;culos&rdquo;. Ent&atilde;o antes de salvar o planeta para a pr&oacute;xima gera&ccedil;&atilde;o querendo consertar os erros da gera&ccedil;&atilde;o dos seus pais, tente limpar seu pr&oacute;prio quarto.</p>
<p><strong>08 &#8211; </strong>Sua escola pode ter eliminado a distin&ccedil;&atilde;o entre vencedores e perdedores, mas a vida n&atilde;o &eacute; assim. Em algumas escolas voc&ecirc; n&atilde;o repete mais de ano e tem quantas chances precisar at&eacute; acertar. Isto n&atilde;o se parece com absolutamente NADA na vida real. Se pisar na bola, est&aacute; despedido&hellip; RUA !!!!! Fa&ccedil;a certo da primeira vez!</p>
<p><strong>09 &#8211; </strong>A vida n&atilde;o &eacute; dividida em semestres. Voc&ecirc; n&atilde;o ter&aacute; sempre os ver&otilde;es livres e &eacute; pouco prov&aacute;vel que outros empregados o ajudem a cumprir suas tarefas no fim de cada per&iacute;odo.</p>
<p><strong>10 &#8211; </strong>Televis&atilde;o N&Atilde;O &eacute; vida real. Na vida real, as pessoas t&ecirc;m que deixar o barzinho ou a boate e ir trabalhar.</p>
<p><strong>11 &#8211; </strong>Seja legal com os CDFs/Nerds (aqueles estudantes que os demais julgam que s&atilde;o uns babacas). Existe uma grande probabilidade de voc&ecirc; vir a trabalhar PARA um deles.</p>
<p>&nbsp;</p>
<p><strong>Fonte:</strong> <a href="http://www.youtube.com/watch?v=giRKt0-lSbg">Video Youtube</a> / <a href="http://universouniversal.wordpress.com/2009/07/31/as-11-regras-de-bill-gates-o-que-as-escolas-nao-ensinam/">Universo Universal</a></p>
</div>
<div class="wp_rp_wrap  wp_rp_plain" ><div class="wp_rp_content"><h3 class="related_post_title">Veja também:</h3><ul class="related_post wp_rp"><li data-position="0" data-poid="in-2696" data-post-type="none" ><a href="http://blog.erkobridee.com/2012/04/09/50-de-chance-para-sim-e-para-nao-arrisque/" class="wp_rp_title">50% de chance para sim e para não, arrisque!</a></li><li data-position="1" data-poid="in-1816" data-post-type="none" ><a href="http://blog.erkobridee.com/2010/03/13/privacidade-e-a-internet/" class="wp_rp_title">Privacidade e a Internet</a></li><li data-position="2" data-poid="in-624" data-post-type="none" ><a href="http://blog.erkobridee.com/2009/10/18/hilario-como-arrumar-um-marido-rico/" class="wp_rp_title">[Hilário] Como arrumar um marido rico</a></li><li data-position="3" data-poid="in-1437" data-post-type="none" ><a href="http://blog.erkobridee.com/2010/01/07/comedia-da-vida-real-amizade-homens-x-mulheres/" class="wp_rp_title">[Comédia da vida real] amizade : homens x mulheres</a></li><li data-position="4" data-poid="in-1299" data-post-type="none" ><a href="http://blog.erkobridee.com/2009/11/13/um-inspetor-de-sorte/" class="wp_rp_title">Um inspetor de sorte</a></li></ul><div class="wp_rp_footer"><a class="wp_rp_backlink" target="_blank" href="http://www.zemanta.com/?wp-related-posts" rel="nofollow">Zemanta</a></div></div></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.erkobridee.com/2012/06/21/bill-gates-11-regras-da-vida-que-a-escola-nao-ensina/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Mac e um incrível Kernel Panic no update do Thunderbolt</title>
		<link>http://blog.erkobridee.com/2012/06/12/mac-e-um-incrivel-kernel-panic-no-update-do-thunderbolt/</link>
		<comments>http://blog.erkobridee.com/2012/06/12/mac-e-um-incrivel-kernel-panic-no-update-do-thunderbolt/#respond</comments>
		<pubDate>Wed, 13 Jun 2012 02:00:45 +0000</pubDate>
		<dc:creator><![CDATA[Erko Bridee]]></dc:creator>
				<category><![CDATA[Sistema Operacional]]></category>
		<category><![CDATA[firmware]]></category>
		<category><![CDATA[Kernel Panic]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Mac OS X Lion]]></category>
		<category><![CDATA[Thunderbolt]]></category>
		<category><![CDATA[Update]]></category>

		<guid isPermaLink="false">http://blog.erkobridee.com/?p=2708</guid>
		<description><![CDATA[Eis que hoje (12/06/2012), sai um update para o Mac OS X Lion e como de costume mandei atualizar sem olhar os itens, ao termino da instala&#231;&#227;o aparece uma mensagem de que ocorreu um erro inesperado e fica nisso, ent&#227;o vamos tentar reiniciar o Mac na marra, a grande surpressa, me deparei com um Kernel [...]]]></description>
				<content:encoded><![CDATA[<div id=HOTWordsTxt name=HOTWordsTxt><p>Eis que hoje (12/06/2012), sai um update para o Mac OS X Lion e como de costume mandei atualizar sem olhar os itens, ao termino da instala&ccedil;&atilde;o aparece uma mensagem de que ocorreu um erro inesperado e fica nisso, ent&atilde;o vamos tentar reiniciar o Mac na marra, a grande surpressa, me deparei com um Kernel Panic no Mac&#8230;</p>
<p><a href="http://blog.erkobridee.com/wp-content/uploads/2012/06/mac_kernel_panic.jpg"><img alt="" class="aligncenter size-medium wp-image-2709" height="225" src="http://blog.erkobridee.com/wp-content/uploads/2012/06/mac_kernel_panic-300x225.jpg" title="mac_kernel_panic" width="300" srcset="http://blog.erkobridee.com/wp-content/uploads/2012/06/mac_kernel_panic-300x225.jpg 300w, http://blog.erkobridee.com/wp-content/uploads/2012/06/mac_kernel_panic.jpg 600w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<blockquote>
<p>Eu havia visto os tuites do <a href="http://twitter.com/jandersonfc">@jandersonfc</a> [<a href="https://twitter.com/jandersonfc/status/212532469986111488">tuite</a>] sobre o caso, mas como n&atilde;o havia lido direto n&atilde;o reparei qual foi a causa. No caso foi exatamente a mesma que a causa do meu problema. Atualiza&ccedil;&atilde;o do firmware referente ao Thunderbolt</p>
</blockquote>
<p><a href="http://blog.erkobridee.com/wp-content/uploads/2012/06/jandersonfc_mac_kernel_panic.jpeg"><img alt="" class="aligncenter size-medium wp-image-2710" height="300" src="http://blog.erkobridee.com/wp-content/uploads/2012/06/jandersonfc_mac_kernel_panic-300x300.jpg" title="jandersonfc_mac_kernel_panic" width="300" srcset="http://blog.erkobridee.com/wp-content/uploads/2012/06/jandersonfc_mac_kernel_panic-300x300.jpg 300w, http://blog.erkobridee.com/wp-content/uploads/2012/06/jandersonfc_mac_kernel_panic-150x150.jpg 150w, http://blog.erkobridee.com/wp-content/uploads/2012/06/jandersonfc_mac_kernel_panic.jpeg 612w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p>Primeira rea&ccedil;&atilde;o ao ver a mensagem:&nbsp;</p>
<blockquote>
<p>Putz, j&aacute; era o HD, perdi tudo&#8230;</p>
<p>Ser&aacute; que tem uma assist&ecirc;ncia t&ecirc;cnica aonde?</p>
</blockquote>
<p>&nbsp;</p>
<p>Depois dessas perguntas, conversando com o Janderson que tamb&eacute;m teve o mesmo problema, hora de procurar respostas, ou saber quantos mais estavam tento o mesmo problema&#8230;</p>
<p>Google, o que voc&ecirc; me diz sobre o caso?</p>
<blockquote>
<p>Durante a manh&atilde;, nada relevante nos resultados das buscas&#8230;</p>
</blockquote>
<p>O Janderson teve a id&eacute;ias de tentar ver na &aacute;rea de <a href="http://www.apple.com/support/">suporte</a> dos usu&aacute;rio no site da Apple e ver se tinha algo do assunto l&aacute;. Resultado, alguns j&aacute; haviam relatado o problema. Olhando a &aacute;rea:&nbsp;</p>
<blockquote>
<p><a href="https://discussions.apple.com/community/mac_os/mac_os_x_v10.7_lion">Apple Support Communities &gt; Mac OS &amp; System Software &gt; Mac OS X v10.7 Lion</a></p>
</blockquote>
<p>Eis que haviam relatos referente ao caso:</p>
<blockquote>
<p><a href="https://discussions.apple.com/thread/4020432?start=0&amp;tstart=0">Lion update today crashed MacBook Pro</a></p>
<p><a href="https://discussions.apple.com/message/18627773?start=0&amp;tstart=0#">How do i fix my kernel panic</a></p>
<p><a href="https://discussions.apple.com/thread/4020063?start=0&amp;tstart=0">None of the updates could be installed. Kernel panic</a></p>
</blockquote>
<p>Em um desses 3 t&oacute;picos achei um link em uma resposta apontando para um artigo escrito no site da Cnet.com:</p>
<blockquote>
<p><a href="http://reviews.cnet.com/8301-13727_7-57451440-263/thunderbolt-update-plaguing-macbook-pros-with-kernel-panics/">Thunderbolt Update plaguing MacBook Pros with kernel panics</a></p>
</blockquote>
<p>Das 3 dicas sugeridas no post, a primeira n&atilde;o funcionou, n&atilde;o acessou o modo de seguran&ccedil;a, a segunda restaurar a partir de um backup, tamb&eacute;m n&atilde;o foi vi&aacute;vel, pois n&atilde;o tinha um backup dispon&iacute;vel, ent&atilde;o me sobrou ir para reinstala&ccedil;&atilde;o do Lion.</p>
<p>&nbsp;</p>
<p>Fiz como sugerido, por&eacute;m na seguinte ordem:</p>
<blockquote>
<p>1 &#8211; reiniciei o mac, e ao ligar segurei as teclas: Command + R, para carregar a parti&ccedil;&atilde;o de recupera&ccedil;&atilde;o</p>
<p>2 &#8211; antes de pensar em instalar novamente, melhor garantir que o HD n&atilde;o foi perdido de vez, ent&atilde;o acessei a funcionalidade de reparo de HD e realizei os reparos dispon&iacute;veis</p>
<p>3 &#8211; selecionei a op&ccedil;&otilde;a para reinstalar o Mac OS X Lion (segundo dito, a reinstala&ccedil;&atilde;o do OS sobre a atual n&atilde;o perderia os dados). Para a instala&ccedil;&atilde;o por esta op&ccedil;&atilde;o ser&aacute; necess&aacute;ria uma conex&atilde;o ativa com a internet e autentica&ccedil;&atilde;o com login e senha na Apple Store (se voc&ecirc; j&aacute; comprou, s&oacute; colocar seu login e senha que n&atilde;o ser&aacute; cobrado novamente para que seja efetuado a instala&ccedil;&atilde;o)</p>
<p>4 &#8211; dependendo da velocidade da internet, o download do Lion vai demorar um pouco (no meu caso 4 hrs e quebrado), terminado o download, &eacute; realizado a instala&ccedil;&atilde;o, o que leva mais algum tempo</p>
<p>5 &#8211; finalizado a instala&ccedil;&atilde;o, o Lion ir&aacute; iniciar ap&oacute;s o Mac ter sido reiniciado, e todos os dados/arquivos estar&atilde;o aonde estavam (ao menos comigo foi assim). Como o Lion foi reinstalado, ser&aacute; logo de caro solicitado a atualiza&ccedil;&atilde;o do Java.</p>
<p>&nbsp;</p>
</blockquote>
<p>Estou escrevendo este post do Mac ap&oacute;s ter reinstalado o Lion, ainda n&atilde;o verifiquei se houve algum efeito colateral.</p>
<blockquote>
<p>Caso voc&ecirc; utilize Python/Ruby, melhore verificar se o seu ambiente e atualiza&ccedil;&otilde;es est&atilde;o todas onde deveriam.</p>
</blockquote>
<p>&nbsp;</p>
<p>E de volta a codifica&ccedil;&atilde;o, aqui o/</p>
<p>&nbsp;</p>
<p>Acho que a cabe&ccedil;a de algu&eacute;m rolou na Apple hoje. Hehe</p>
<p>&nbsp;</p>
</div>
<div class="wp_rp_wrap  wp_rp_plain" ><div class="wp_rp_content"><h3 class="related_post_title">Veja também:</h3><ul class="related_post wp_rp"><li data-position="0" data-poid="in-156" data-post-type="none" ><a href="http://blog.erkobridee.com/2009/02/25/preview-mac-os-x-snow-leopard/" class="wp_rp_title">Preview: Mac OS X Snow Leopard</a></li><li data-position="1" data-poid="in-969" data-post-type="none" ><a href="http://blog.erkobridee.com/2009/10/26/pc-vs-mac-vs-linux-traduzindo-uma-imagem/" class="wp_rp_title">PC vs. Mac vs. Linux : traduzindo, uma imagem</a></li><li data-position="2" data-poid="in-2477" data-post-type="none" ><a href="http://blog.erkobridee.com/2010/10/24/adobe-air-package-assistant-pro/" class="wp_rp_title">[ Adobe AIR ] Package Assistant Pro</a></li><li data-position="3" data-poid="in-2730" data-post-type="none" ><a href="http://blog.erkobridee.com/2012/11/16/node-js-javascript-no-servidor/" class="wp_rp_title">Node.js &#8211; JavaScript no Servidor [visão geral]</a></li><li data-position="4" data-poid="in-2682" data-post-type="none" ><a href="http://blog.erkobridee.com/2012/02/03/mplayerx-melhor-que-o-vlc-no-mac-os-x/" class="wp_rp_title">MPlayerX &#8211; melhor que o VLC no Mac OS X</a></li></ul><div class="wp_rp_footer"><a class="wp_rp_backlink" target="_blank" href="http://www.zemanta.com/?wp-related-posts" rel="nofollow">Zemanta</a></div></div></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.erkobridee.com/2012/06/12/mac-e-um-incrivel-kernel-panic-no-update-do-thunderbolt/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>50% de chance para sim e para não, arrisque!</title>
		<link>http://blog.erkobridee.com/2012/04/09/50-de-chance-para-sim-e-para-nao-arrisque/</link>
		<comments>http://blog.erkobridee.com/2012/04/09/50-de-chance-para-sim-e-para-nao-arrisque/#comments</comments>
		<pubDate>Tue, 10 Apr 2012 02:01:20 +0000</pubDate>
		<dc:creator><![CDATA[Erko Bridee]]></dc:creator>
				<category><![CDATA[Geral]]></category>
		<category><![CDATA[Análise]]></category>
		<category><![CDATA[Chances]]></category>
		<category><![CDATA[Filosofia]]></category>
		<category><![CDATA[Pensamentos]]></category>
		<category><![CDATA[Pessoal]]></category>
		<category><![CDATA[Profissional]]></category>
		<category><![CDATA[Vida]]></category>

		<guid isPermaLink="false">http://blog.erkobridee.com/?p=2696</guid>
		<description><![CDATA[A vida &#233; simples, n&#243;s &#233; que a complicamos muito e sempre pensamos no pior cen&#225;rio&#8230; &#160; Situa&#231;&#227;o inicial quando temos uma nova id&#233;ia, sonho&#8230; Situa&#231;&#227;o posterior, pessimista, onde temos a ci&#234;ncia que existe 50% de chance de insucesso Situa&#231;&#227;o posterior, otimista, onde temos a ci&#234;ncia que existe 50% de chance de sucesso, e 50% [...]]]></description>
				<content:encoded><![CDATA[<div id=HOTWordsTxt name=HOTWordsTxt><p>A vida &eacute; simples, n&oacute;s &eacute; que a complicamos muito e sempre pensamos no pior cen&aacute;rio&#8230;</p>
<p>&nbsp;</p>
<p>Situa&ccedil;&atilde;o inicial quando temos uma nova id&eacute;ia, sonho&#8230;</p>
<p><a href="http://blog.erkobridee.com/wp-content/uploads/2012/04/sonho.ideia_.001.png"><img alt="" class="aligncenter size-full wp-image-2704" height="424" src="http://blog.erkobridee.com/wp-content/uploads/2012/04/sonho.ideia_.001.png" title="sonho.ideia.001" width="499" srcset="http://blog.erkobridee.com/wp-content/uploads/2012/04/sonho.ideia_.001.png 499w, http://blog.erkobridee.com/wp-content/uploads/2012/04/sonho.ideia_.001-300x254.png 300w" sizes="(max-width: 499px) 100vw, 499px" /></a></p>
<p>Situa&ccedil;&atilde;o posterior, pessimista, onde temos a ci&ecirc;ncia que existe 50% de chance de insucesso</p>
<p><a href="http://blog.erkobridee.com/wp-content/uploads/2012/04/sonho.ideia_.002.png" rel="" style="" target="" title=""><img alt="" class="aligncenter size-full wp-image-2705" height="291" src="http://blog.erkobridee.com/wp-content/uploads/2012/04/sonho.ideia_.002.png" style="" title="sonho.ideia.002" width="503" srcset="http://blog.erkobridee.com/wp-content/uploads/2012/04/sonho.ideia_.002.png 718w, http://blog.erkobridee.com/wp-content/uploads/2012/04/sonho.ideia_.002-300x173.png 300w" sizes="(max-width: 503px) 100vw, 503px" /></a></p>
<p>Situa&ccedil;&atilde;o posterior, otimista, onde temos a ci&ecirc;ncia que existe 50% de chance de sucesso, e 50% n&atilde;o &eacute; 0%</p>
<p><a href="http://blog.erkobridee.com/wp-content/uploads/2012/04/sonho.ideia_.003.png" rel="" style="" target="" title="Clique para amplicar"><div id="attachment_2706" style="width: 351px" class="wp-caption aligncenter"><img alt="Clique para amplicar" class="size-full wp-image-2706  wp-caption aligncenter wp-caption aligncenter" height="181" src="http://blog.erkobridee.com/wp-content/uploads/2012/04/sonho.ideia_.003.png" style="" title="sonho.ideia.003" width="341" srcset="http://blog.erkobridee.com/wp-content/uploads/2012/04/sonho.ideia_.003.png 812w, http://blog.erkobridee.com/wp-content/uploads/2012/04/sonho.ideia_.003-300x159.png 300w" sizes="(max-width: 341px) 100vw, 341px" /><p class="wp-caption-text">Clique para amplicar</p></div></a></p>
<blockquote>
<p>Lembrando, quando voc&ecirc; tem um sonho, uma id&eacute;ia, sempre suas chances ser&atilde;o 50% para sucesso e 50% para insucesso, por&eacute;m se os 50% do insucesso te assustar e te fizer desistir de tentar / arriscar o insucesso ser&aacute; 100%, em outras palavras, o insucesso voc&ecirc; j&aacute; tem, v&aacute; em frente, arrisque, tente, pois o sucesso, se vier, ser&aacute; sempre lucro, mas s&oacute; vir&aacute; caso voc&ecirc; tenha coragem suficiente para tentar e arriscar!</p>
</blockquote>
<p>&nbsp;</p>
<p>Eu mesmo, preciso aplicar esta perspectiva em todas as &aacute;reas da minha vida, nas que eu estou tento insucesso principalmente, e o motivo est&aacute; claro, eu nem ao menos arrisquei, ou tentei. &Eacute; hora de apostar!</p>
<p>&nbsp;</p>
</div>
<div class="wp_rp_wrap  wp_rp_plain" ><div class="wp_rp_content"><h3 class="related_post_title">Veja também:</h3><ul class="related_post wp_rp"><li data-position="0" data-poid="in-2242" data-post-type="none" ><a href="http://blog.erkobridee.com/2010/08/03/kiss_keep-it-stupid-simple/" class="wp_rp_title">[Filosofia] KISS &#8211; Keep it stupid simple</a></li><li data-position="1" data-poid="in-1816" data-post-type="none" ><a href="http://blog.erkobridee.com/2010/03/13/privacidade-e-a-internet/" class="wp_rp_title">Privacidade e a Internet</a></li><li data-position="2" data-poid="in-2713" data-post-type="none" ><a href="http://blog.erkobridee.com/2012/06/21/bill-gates-11-regras-da-vida-que-a-escola-nao-ensina/" class="wp_rp_title">Bill Gates &#8211; 11 regras da vida que a escola não ensina</a></li><li data-position="3" data-poid="in-75" data-post-type="none" ><a href="http://blog.erkobridee.com/2009/02/24/video-motivacao-profissional/" class="wp_rp_title">Vídeo: motivação profissional</a></li><li data-position="4" data-poid="in-2273" data-post-type="none" ><a href="http://blog.erkobridee.com/2010/08/22/java-desktop-calculadora-lexica/" class="wp_rp_title">[ Java desktop ] Calculadora Léxica</a></li></ul><div class="wp_rp_footer"><a class="wp_rp_backlink" target="_blank" href="http://www.zemanta.com/?wp-related-posts" rel="nofollow">Zemanta</a></div></div></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.erkobridee.com/2012/04/09/50-de-chance-para-sim-e-para-nao-arrisque/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Python : matemática : números primos</title>
		<link>http://blog.erkobridee.com/2012/02/27/python-matematica-numeros-primos/</link>
		<comments>http://blog.erkobridee.com/2012/02/27/python-matematica-numeros-primos/#comments</comments>
		<pubDate>Mon, 27 Feb 2012 17:32:38 +0000</pubDate>
		<dc:creator><![CDATA[Erko Bridee]]></dc:creator>
				<category><![CDATA[Python]]></category>
		<category><![CDATA[Cálculo]]></category>
		<category><![CDATA[Matemática]]></category>

		<guid isPermaLink="false">http://blog.erkobridee.com/?p=2694</guid>
		<description><![CDATA[Esses dias realizando alguns exerc&#237;cios matem&#225;ticos e algoritmos em python me deparei com um que me solicitou: Implementar uma fun&#231;&#227;o que retorne verdadeiro se o n&#250;mero for primo (falso caso contr&#225;rio). Testar de 1 a 100. Bom primeira coisa que fiz foi pensar em dividir esta atividade em 2 fun&#231;&#245;es, uma para realizar a intera&#231;&#227;o [...]]]></description>
				<content:encoded><![CDATA[<div id=HOTWordsTxt name=HOTWordsTxt><p>Esses dias realizando alguns exerc&iacute;cios matem&aacute;ticos e algoritmos em python me deparei com um que me solicitou:</p>
<blockquote>
<p>Implementar uma fun&ccedil;&atilde;o que retorne verdadeiro se o n&uacute;mero for primo (falso caso contr&aacute;rio). Testar de 1 a 100.</p>
</blockquote>
<p>Bom primeira coisa que fiz foi pensar em dividir esta atividade em 2 fun&ccedil;&otilde;es, uma para realizar a intera&ccedil;&atilde;o dos n&uacute;meros e dentro chamar outra fun&ccedil;&atilde;o para validar um respectivo n&uacute;mero solicitado, sendo o retorno dessa fun&ccedil;&atilde;o <strong>Verdadeiro</strong> (<em>&eacute; um n&uacute;mero primo</em>) ou <strong>Falso</strong> (<em>n&atilde;o &eacute; um n&uacute;mero primo</em>)</p>
<p>Sabendo que os n&uacute;meros primos possuem a regra que os definem:</p>
<blockquote>
<p>Um n&uacute;mero primo &eacute; aquele que &eacute; divis&iacute;vel por apenas 2 n&uacute;meros, 1 e por ele mesmo. Sabe-se tamb&eacute;m que o n&uacute;mero 1, n&atilde;o &eacute; primo pois possui apenas um &uacute;nico divisor. O &uacute;nico n&uacute;mero par que &eacute; primo &eacute; o n&uacute;mero 2.</p>
</blockquote>
<p>Tendo em mente o conhecimento geral sobre os n&uacute;meros primos, implementei 2 vers&otilde;es de valida&ccedil;&atilde;o de n&uacute;mero primo, a primeira vers&atilde;o uma varredura, dentro do universo dos n&uacute;meros &iacute;mpares (<em><strong>verificaNumeroPrimoV1</strong></em>), inicialmente sem nenhuma otimiza&ccedil;&atilde;o, por&eacute;m ap&oacute;s algumas leituras evolu&iacute; at&eacute; a situa&ccedil;&atilde;o que ser&aacute; apresentada a seguir. Tamb&eacute;m implementei uma segunda vers&atilde;o de valida&ccedil;&atilde;o dos n&uacute;meros primos dentro do universo de n&uacute;meros &iacute;mpares (<em><strong>verificaNumeroPrimoV2</strong></em>), onde neste realizado uma valida&ccedil;&atilde;o verificando se o resto da divis&atilde;o &eacute; zero e o divisor &eacute; diferente do n&uacute;mero a ser validado, o que define que o n&uacute;mero n&atilde;o &eacute; primo, e uma segunda checagem que valida se o&nbsp;<em>Q</em><em>uociente</em>&nbsp;da divis&atilde;o &eacute; menou ou igual ao divisor, o que define que este n&uacute;mero &eacute; um n&uacute;mero primo.</p>
<blockquote>
<p>Como comentei, ap&oacute;s algumas leituras realizei umas otimiza&ccedil;&otilde;es, dentre elas:</p>
<p style="margin-left: 40px; ">&#8211; delimitei a valida&ccedil;&atilde;o at&eacute; a ra&iacute;z quadrada do n&uacute;mero a ser validado</p>
<p style="margin-left: 40px; ">&#8211; verifica&ccedil;&atilde;o se o n&uacute;mero possu&iacute; ra&iacute;z quadrada, o que define que n&atilde;o &eacute; um n&uacute;mero primo</p>
<p style="margin-left: 40px; ">&#8211; valida&ccedil;&atilde;o se o quociente da divis&atilde;o do pr&oacute;ximo n&uacute;mero &iacute;mpar ap&oacute;s a ra&iacute;z quadrada do n&uacute;mero &eacute; inferior ou igual ao divisor, o que define que o n&uacute;mero validado &eacute; primo.</p>
</blockquote>
<p>Com essas otimiza&ccedil;&otilde;es obtive o respectivo algoritmo:</p>
<p><script src="https://gist.github.com/1925632.js?file=numeroPrimos.py"></script></p>
<p>&nbsp;</p>
<p><a href="https://gist.github.com/raw/1925632/7b2d426ce19affae145a9290465960b733d6d120/numeroPrimos.py">Link do arquivo raw</a>, no final do arquivo, tem um array com os n&uacute;meros primos encontrados de 1 a 100000</p>
<p>&nbsp;</p>
<p><strong>Links de refer&ecirc;ncia:&nbsp;</strong></p>
<p>&#8211; <a href="http://cmaisfacil.blogspot.com/2009/11/um-passo-de-cada-vez-algoritmos-numeros.html">Algoritmo em C</a></p>
<p>&#8211; <a href="http://www.matematicadidatica.com.br/NumerosPrimos.aspx">Como identificar se um n&uacute;mero &eacute; primo ou n&atilde;o?</a> (verifica&ccedil;&atilde;o do quociente da divis&atilde;o)&nbsp;</p>
<p>&#8211; <a href="http://pt.wikipedia.org/wiki/Crivo_de_Erat%C3%B3stenes">Crivo de Erat&oacute;stenes</a></p>
<p>&nbsp;</p>
</div>
<div class="wp_rp_wrap  wp_rp_plain" ><div class="wp_rp_content"><h3 class="related_post_title">Veja também:</h3><ul class="related_post wp_rp"><li data-position="0" data-poid="in-2678" data-post-type="none" ><a href="http://blog.erkobridee.com/2012/01/31/python-aumento-e-reducao-percentual/" class="wp_rp_title">Python : aumento e redução percentual</a></li><li data-position="1" data-poid="in-2687" data-post-type="none" ><a href="http://blog.erkobridee.com/2012/02/03/python-matematica-regra-de-3-composta/" class="wp_rp_title">Python : matemática : regra de 3 composta</a></li><li data-position="2" data-poid="in-2685" data-post-type="none" ><a href="http://blog.erkobridee.com/2012/02/03/python-matematica-elementar-equacao-1-grau/" class="wp_rp_title">Python : matemática : elementar (equação 1 grau)</a></li><li data-position="3" data-poid="in-2688" data-post-type="none" ><a href="http://blog.erkobridee.com/2012/02/03/python-matematica-fibonacci/" class="wp_rp_title">Python : matemática : Fibonacci</a></li><li data-position="4" data-poid="in-2679" data-post-type="none" ><a href="http://blog.erkobridee.com/2012/02/01/python-matematica-fatorial-com-limite-e-combinacao/" class="wp_rp_title">Python : matemática Fatorial com limite e Combinação</a></li></ul><div class="wp_rp_footer"><a class="wp_rp_backlink" target="_blank" href="http://www.zemanta.com/?wp-related-posts" rel="nofollow">Zemanta</a></div></div></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.erkobridee.com/2012/02/27/python-matematica-numeros-primos/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Tribler : um sistema BitTorrent descentralizado</title>
		<link>http://blog.erkobridee.com/2012/02/14/tribler-um-sistema-bittorrent-descentralizado/</link>
		<comments>http://blog.erkobridee.com/2012/02/14/tribler-um-sistema-bittorrent-descentralizado/#comments</comments>
		<pubDate>Tue, 14 Feb 2012 13:24:30 +0000</pubDate>
		<dc:creator><![CDATA[Erko Bridee]]></dc:creator>
				<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[Arquivos]]></category>
		<category><![CDATA[BitTorrent]]></category>
		<category><![CDATA[Compartilhamento]]></category>
		<category><![CDATA[Torrent]]></category>
		<category><![CDATA[Trible]]></category>

		<guid isPermaLink="false">http://blog.erkobridee.com/?p=2690</guid>
		<description><![CDATA[Ano 2012, este ano iniciou com um verdadeiro pandemoniun na internet, onde diversos sites de compartilhamento de arquivos sairam do ar, no combate contra a pirataria, em uma das frentes, SOPA, PIPA e ACTA. Tanto SOPA, quanto a PIPA foram arquivadas nos EUA, por&#233;m a pior de todas a ACTA vem ganhando terreno&#8230; Em nome [...]]]></description>
				<content:encoded><![CDATA[<div id=HOTWordsTxt name=HOTWordsTxt><p>Ano 2012, este ano iniciou com um verdadeiro pandemoniun na internet, onde diversos sites de compartilhamento de arquivos sairam do ar, no combate contra a pirataria, em uma das frentes, SOPA, PIPA e ACTA. Tanto SOPA, quanto a PIPA foram arquivadas nos EUA, por&eacute;m a pior de todas a ACTA vem ganhando terreno&#8230;</p>
<p>Em nome da defesa dos direitos autor&aacute;is (em defesa da ditadura e monop&oacute;lio) a ACTA fez um estrago, com muitas perdas para quem compartilha arquivos.</p>
<p><a href="http://blog.erkobridee.com/wp-content/uploads/2012/02/Tribler_logo.png" rel="" style="" target="" title=""><img alt="" class="aligncenter size-full wp-image-2691" height="200" src="http://blog.erkobridee.com/wp-content/uploads/2012/02/Tribler_logo.png" style="" title="Tribler_logo" width="150" /></a></p>
<p style="text-align: center; "><a href="https://www.tribler.org/">Site: Tribler</a></p>
<p>Por&eacute;m como n&atilde;o era de esperar muito, eis que surge algo para contornar este problema. Apesar de estar ganhando destade nos &uacute;ltimos dias o Trible, um sistema de BitTorrent descentralizado, j&aacute; vem sendo desenvolvido a mais de 5 anos.</p>
<p>&nbsp;</p>
<p>O grande lance, a jogada de mestre desse sistema proposto e implementado pelo Trible &eacute;, n&atilde;o existe um site, um sistema centralizado onde est&atilde;o os .torrent , por&eacute;m os torrents s&atilde;o compartilhados entre os pr&oacute;prios usu&aacute;rios do Tribler. O que em tese, garante que para tirar este sistema do ar, ser&aacute; necess&aacute;rio &quot;desligar a internet&quot;.</p>
<p>Caso queira saber mais sobre o sistema e o funcionamento do Tribler, voc&ecirc; pode ler este artigo sobre <a href="http://iptps06.cs.ucsb.edu/papers/Pouw-Tribler06.pdf">[PDF]</a>.</p>
<p><a href="http://blog.erkobridee.com/wp-content/uploads/2012/02/tribler_app.jpg"><img alt="" class="aligncenter size-full wp-image-2692" height="309" src="http://blog.erkobridee.com/wp-content/uploads/2012/02/tribler_app.jpg" title="tribler_app" width="520" srcset="http://blog.erkobridee.com/wp-content/uploads/2012/02/tribler_app.jpg 520w, http://blog.erkobridee.com/wp-content/uploads/2012/02/tribler_app-300x178.jpg 300w" sizes="(max-width: 520px) 100vw, 520px" /></a></p>
<p>Alguns posts interessantes pela internet sobre o assunto:</p>
<p>&#8211;&nbsp;<a href="http://torrentfreak.com/tribler-makes-bittorrent-impossible-to-shut-down-120208/">Tribler Makes BitTorrent Impossible to Shut Down</a></p>
<p>&#8211;&nbsp;<a href="http://it-diary.com/internet/tribler-makes-filesharing-immortal-and-impossible-to-block/">Tribler makes FileSharing Immortal and Impossible to Block</a></p>
<p>&#8211; <a href="http://en.wikipedia.org/wiki/Tribler">Wikipedia : Tribler</a></p>
<p>&#8211;&nbsp;<a href="http://www.techtudo.com.br/noticias/noticia/2012/02/sistema-de-compartilhamento-de-conteudo-se-diz-imune-ataques-do-governo.html">Sistema de compartilhamento de conte&uacute;do se diz imune a ataques do governo</a></p>
<p>&nbsp;</p>
</div>
<div class="wp_rp_wrap  wp_rp_plain" ><div class="wp_rp_content"><h3 class="related_post_title">Veja também:</h3><ul class="related_post wp_rp"><li data-position="0" data-poid="in-1941" data-post-type="none" ><a href="http://blog.erkobridee.com/2010/03/28/adobe-flex-3-5-uploaddownloadblazeds/" class="wp_rp_title">Adobe Flex 3.5 : UploadDownloadBlazeDS</a></li><li data-position="1" data-poid="in-2670" data-post-type="none" ><a href="http://blog.erkobridee.com/2012/01/23/sopa-pipa-censura-e-o-inicio-da-primeira-guerra-cibernetica/" class="wp_rp_title">SOPA, PIPA, censura e o início da primeira guerra cibernética</a></li><li data-position="2" data-poid="in-1816" data-post-type="none" ><a href="http://blog.erkobridee.com/2010/03/13/privacidade-e-a-internet/" class="wp_rp_title">Privacidade e a Internet</a></li><li data-position="3" data-poid="in-2242" data-post-type="none" ><a href="http://blog.erkobridee.com/2010/08/03/kiss_keep-it-stupid-simple/" class="wp_rp_title">[Filosofia] KISS &#8211; Keep it stupid simple</a></li><li data-position="4" data-poid="in-1344" data-post-type="none" ><a href="http://blog.erkobridee.com/2009/11/18/luta-pela-internet-livre-avanca/" class="wp_rp_title">Luta pela Internet Livre avança</a></li></ul><div class="wp_rp_footer"><a class="wp_rp_backlink" target="_blank" href="http://www.zemanta.com/?wp-related-posts" rel="nofollow">Zemanta</a></div></div></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.erkobridee.com/2012/02/14/tribler-um-sistema-bittorrent-descentralizado/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 4.014 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2019-10-14 11:37:15 -->
