<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-4723100483112964148</atom:id><lastBuildDate>Tue, 01 Oct 2024 21:31:26 +0000</lastBuildDate><category>dica</category><category>Ubuntu</category><category>site</category><category>cultura digital</category><category>video</category><category>software</category><category>notícias</category><category>evento</category><category>Ubuntu-SP</category><category>blog</category><category>internet</category><category>revista</category><category>Gnome</category><category>distribuições</category><category>entrevista</category><category>curiosidades</category><category>personalização</category><category>windows</category><category>backup</category><category>documentação</category><category>ipod</category><category>música</category><category>análise</category><category>atualização</category><category>hardware</category><category>artigo</category><category>configuração</category><category>firefox</category><category>jogos</category><category>openoffice</category><category>palestra</category><category>ppa</category><category>script</category><category>apt</category><category>bitcoin</category><category>criptografia</category><category>e-mail</category><category>ghost</category><category>gimp</category><category>launchpad</category><category>marco civil</category><category>nvidia</category><category>programação</category><category>torrent</category><category>web</category><category>webmakers</category><category>7masters</category><category>Rdio</category><category>aaron swartz</category><category>app</category><category>armazenamento</category><category>bug</category><category>cedilha</category><category>cloud</category><category>comunicado</category><category>copy</category><category>cpu</category><category>cuda</category><category>curso</category><category>dados abertos</category><category>democracia</category><category>direito autoral</category><category>dispositivos móveis</category><category>documentário</category><category>dropbox</category><category>educação</category><category>filmes</category><category>flisol</category><category>formatos</category><category>games</category><category>grub</category><category>gtk</category><category>imasters</category><category>java</category><category>legislação</category><category>litecoin</category><category>livro</category><category>locaweb</category><category>luto adeus Andre Gondim UbuntuBR</category><category>mensagens</category><category>microsoft</category><category>nodejs</category><category>nuvem</category><category>odf</category><category>okfn</category><category>perl</category><category>pidgin</category><category>podcast</category><category>privacidade</category><category>raspberry</category><category>rio de janeiro</category><category>saas</category><category>segurança</category><category>servidor</category><category>ssl</category><category>streaming</category><category>subsonic</category><category>sync</category><category>teclado</category><title>Linux Legal</title><description>para quem não tem medo de aprender</description><link>http://linuxlegal.blogspot.com/</link><managingEditor>noreply@blogger.com (Anonymous)</managingEditor><generator>Blogger</generator><openSearch:totalResults>159</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-6517762471125201218</guid><pubDate>Tue, 09 Sep 2014 21:20:00 +0000</pubDate><atom:updated>2014-09-09T18:20:26.338-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">blog</category><category domain="http://www.blogger.com/atom/ns#">ghost</category><title>Migrando para um novo blog</title><description>Já faz algum tempo desde que eu comecei este blog pessoal, lá em &lt;a href=&quot;http://linuxlegal.blogspot.com.br/2007/09/enganando-o-rapidshare-e-o-megaupload.html&quot; target=&quot;_blank&quot;&gt;meados de 2007&lt;/a&gt;, quando blogs já eram a maior novidade da Internet há algum tempo. Tudo começou como um projeto pessoal com a finalidade de registrar as coisas que eu aprendia no mundo do software livre e com isso, poder compartilhar essas lições com qualquer um que se interessasse pelos mesmos temas. Parecia algo interessante: eu teria todo o meu aprendizado registrado e acessível de qualquer lugar no mundo e outras pessoas poderiam aprender através dele, da mesma forma como eu muitas vezes estava me aproveitando do aprendizado de terceiros.&lt;br /&gt;
&lt;br /&gt;
Nesse meio tempo, escrevi muitas coisas, algumas deixei negligentemente de publicar no meu blog (e espero conseguir postá-las em algum momento), já outros tantos artigos ficaram apenas na minha cabeça. Contudo houve um longo caminho percorrido e hoje, ao olhar para trás, jamais poderia imaginar todo o caminho trilhado, muito menos chegar até aqui.&lt;br /&gt;
&lt;br /&gt;
Já faz algum tempo que eu ando incomodado com o blogger, principalmente pelo HTML muitas vezes porco que ele gera no editor (como o fato dele até agora utilizar b ao invés de strong para negrito).&lt;br /&gt;
Contudo, não dá para negar que há muitas vantagens em se utilizar um serviço como o Blogger, uma vez que não há a necessidade nenhuma de se preocupar com a infraestrutura, atualização de software, espaço de armazenamento, etc.&lt;br /&gt;
&lt;br /&gt;
Por isso mesmo, tenho pensado há algum tempo em ter um blog próprio (primeiramente em WordPress) e adiado o projeto. Contudo, depois de começar a trabalhar como evangelista na Locaweb comecei a achar que já era hora de perder a vergonha na cara e hospedar meu próprio site.&lt;br /&gt;
O Wordpress é excelente, entretanto acabei optando por utilizar o Ghost, uma plataforma de blog em NodeJS por 2 motivos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;Acho que uma das coisas mais interessantes que está acontecendo ultimamente no mundo da TI é o universo Node.&lt;/li&gt;
&lt;li&gt;Além disso, tenho muita experiência em utilizar o WordPress e achei que fazer uso uma nova plataforma seria uma forma de aprender algo novo dentro desse universo.&lt;/li&gt;
&lt;/ol&gt;&lt;br /&gt;
O lado ruim disso tudo é que ao tentar migrar o conteúdo do site anterior para a nova plataforma, alguns posts ficaram muito ruins (lembra do HTML porco?). Arrumá-los levaria muito tempo e por isso mesmo resolvi deixar o conteúdo antigo por aqui e passar a postar os novos textos no novo endereço: &lt;a href=&quot;http://www.kemelzaidan.com.br/&quot;&gt;http://www.kemelzaidan.com.br&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Isso não é algo que me agrade muito, contudo, deixar os posts feios como eles apareciam após a importação era algo que me agradava menos ainda.&lt;br /&gt;
&lt;br /&gt;
Aos poucos vou deixando o novo blog do jeito que eu quero e então, quem sabe um dia, resolvo ir movendo com calma cada um dos posts. Por enquanto eles ficarão por lá mesmo.&lt;br /&gt;
&lt;br /&gt;
Espero que (os poucos) leitores que eu tenho gostem da novidade e deixem seus comentários aqui.&lt;br /&gt;
&lt;br /&gt;
Abraços,&lt;br /&gt;
&lt;br /&gt;
Kemel Zaidan</description><link>http://linuxlegal.blogspot.com/2014/09/migrando-para-um-novo-blog.html</link><author>noreply@blogger.com (Anonymous)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-8691795574636404319</guid><pubDate>Tue, 19 Aug 2014 20:04:00 +0000</pubDate><atom:updated>2014-08-19T17:04:48.953-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">criptografia</category><category domain="http://www.blogger.com/atom/ns#">ghost</category><category domain="http://www.blogger.com/atom/ns#">ssl</category><title>Proteja sua senha do Ghost com criptografia</title><description>&lt;br /&gt;
No&amp;nbsp;&lt;a href=&quot;https://www.blogger.com/linkar%20com%20o%20post%20anterior&quot;&gt;post anterior&lt;/a&gt;, ensinei a instalar o&amp;nbsp;&lt;a href=&quot;http://www.ghost.org/&quot;&gt;Ghost&lt;/a&gt;&amp;nbsp;na&amp;nbsp;&lt;a href=&quot;http://www.locaweb.com.br/produtos/cloud-server/planos-pro.html&quot;&gt;nuvem&lt;/a&gt;. Hoje abordarei uma configuração importante após finalizar o processo de instalação. Cada vez que você digita sua senha para ter acesso ao painel administrativo de seu blog, o navegador envia essa senha para o seu servidor, para que ele autentique seu acesso ao sistema. Se você não utiliza nenhuma criptografia nesse processo, seu navegador irá enviar a senha em formato texto puro (“plain text”), o que significa que, qualquer um poderá ver sua senha, caso esteja utilizando uma técnica chamada de “sniffing”. Isso é particularmente problemático caso esta pessoa esteja na mesma rede que você, principalmente em locais com acesso wifi público, como cafeterias, lan-houses, etc.&lt;br /&gt;
&lt;br /&gt;
Por isso mesmo, é essencial ativar a criptografia&amp;nbsp;&lt;a href=&quot;http://en.wikipedia.org/wiki/Secure_Sockets_Layer&quot;&gt;SSL/TLS&lt;/a&gt;&amp;nbsp;na tela de login de seu site Ghost, fazendo com que o envio da senha ocorra de forma criptografada. Para isso, você precisará de um certificado SSL. Há diversos fornecedores no mercado e os preços variam bastante. Na prática, todos eles fornecem o mesmo nível de segurança, independente de quem tenha vendido o certificado para você. O maior diferencial se encontra nas classes (1, 2, 3) dos certificados que podem ser adquiridos.&lt;br /&gt;
&lt;br /&gt;
Há também a possibilidade de criar um certificado auto-assinado ou mesmo de adquirí-lo sem nenhum custo em instituições como a&amp;nbsp;&lt;a href=&quot;http://www.cacert.org/&quot;&gt;CaCert&lt;/a&gt;. O único problema é que alguns navegadores não possuem o certificado raiz da CaCert instalado por padrão, o que faz com que o navegador exiba aquela tela de “site inseguro”, ao acessar uma página com “https” com esses certificados. O mesmo acontece com os certificados auto-assinados.&lt;br /&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://4.bp.blogspot.com/-DW1IfIUiDJs/U_OqF3irIoI/AAAAAAAAKq4/z07DsSfBUYw/s1600/ssl-inseguro-chrome.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img alt=&quot;Exemplo de aviso no Chrome&quot; border=&quot;0&quot; src=&quot;http://4.bp.blogspot.com/-DW1IfIUiDJs/U_OqF3irIoI/AAAAAAAAKq4/z07DsSfBUYw/s1600/ssl-inseguro-chrome.png&quot; height=&quot;156&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Exemplo de certificado inseguro no Chrome&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://3.bp.blogspot.com/-0PxdGh4EtwA/U_OqMRUmvlI/AAAAAAAAKrA/RYqXaC_gKIA/s1600/ssl-inseguro-firefox.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img alt=&quot;Exemplo de aviso no Firefox&quot; border=&quot;0&quot; src=&quot;http://3.bp.blogspot.com/-0PxdGh4EtwA/U_OqMRUmvlI/AAAAAAAAKrA/RYqXaC_gKIA/s1600/ssl-inseguro-firefox.png&quot; height=&quot;183&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Exemplo de alerta de certificado no Firefox&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;
No meu caso, optei por utilizar SSL apenas na tela de login, de forma a proteger o envio da senha sem comprometer a carga no servidor. Como não temos o objetivo de utilizar o certificado para checar a autenticidade do site, não haveria problema em utilizar um certificado autoassinado ou emitido pela CaCert. No nosso caso, um certificado classe 1 é mais do que suficiente, e normalmente permite sua utilização nas versões &lt;b&gt;nossodominio.com.br&lt;/b&gt; e &lt;b&gt;www.nossodominio.com.br&lt;/b&gt;.&lt;br /&gt;
Também não abordarei aqui a criação do certificado, mas sua instalação e configuração no Ghost. Mãos há obra!&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;Instalação do certificado&lt;/h2&gt;&lt;br /&gt;
A está altura você já deve ter 2 arquivos (um do certificado e outro da chave) com diferentes extensões:&amp;nbsp;&lt;em&gt;meusite.crt&lt;/em&gt;&amp;nbsp;e&amp;nbsp;&lt;em&gt;meusite.pem&lt;/em&gt;. Nomeie os arquivos de forma a identificar para qual site eles pertencem, isso será útil caso você tenha mais de um site instalado no mesmo servidor.&lt;br /&gt;
&lt;br /&gt;
Crie a pasta&amp;nbsp;&lt;code&gt;/etc/nginx/ssl&lt;/code&gt;&amp;nbsp;e salve os arquivos nela. Eu costumo utilizar&amp;nbsp;&lt;code&gt;sftp&lt;/code&gt;&amp;nbsp;por considerar mais simples e seguro do que um ftp convencional. Depois que os arquivos estiverem salvos nesta pasta, é hora de habilitar o tráfego https no Nginx.&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Abra o arquivo de configuração com o editor da sua preferência (eu costumo usar o vim, mas você pode usar o nano):&lt;br /&gt;
&lt;code style=&quot;white-space: pre;&quot;&gt;vim /etc/nginx/sites-available/default&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Encontre a seção entitulada “HTTPS server” que encontra-se toda comentada.&lt;/li&gt;
&lt;li&gt;Retire os&amp;nbsp;&lt;code&gt;#&lt;/code&gt;&amp;nbsp;do início da linha e edite as configurações de forma que elas fiquem semelhantes ao exemplo abaixo:&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
&lt;pre&gt;&lt;code&gt;
server {
    listen 443 ssl;
    server_name SEUDOMINIO.com.br www.SEUDOMINIO.com.br;
    root html;
    index index.html index.htm;

    ssl_certificate /etc/nginx/ssl/SEU_CERTIFICADO.crt;
    ssl_certificate_key /etc/nginx/ssl/SUA_CHAVE.pem;

    ssl_session_timeout 15m;

    ssl_protocols SSLv3 TLSv1.2;
    ssl_ciphers &quot;HIGH:!aNULL:!MD5 or HIGH:!aNULL:!MD5:!3DES&quot;;
    ssl_prefer_server_ciphers on;

    location / {
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_pass       http://127.0.0.1:2368;
    }
}
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
Atente à substituição do endereço do seu domínio no campo &lt;code&gt;server_name&lt;/code&gt; e no nome dos arquivos &lt;em&gt;.pem&lt;/em&gt; e &lt;em&gt;.crt&lt;/em&gt; que você salvou no diretório &lt;code&gt;/etc/nginx/ssl&lt;/code&gt;. Eu também me limitei a utilizar apenas as versões mais recentes dos protocolos SSL e TLS. Agora basta reiniciar o Nginx:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;# sevice nginx restart&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;Configuração do Ghost&lt;/h2&gt;&lt;br /&gt;
Depois de configurado nosso servidor web, é a vez de dizermos ao Ghost que ele deve utilizar o protocolo https para a tela de login. Fazemos isso editando o arquivo &lt;code&gt;config.js&lt;/code&gt;&amp;nbsp;que no nosso caso, encontra-se na pasta &lt;code&gt;/var/www&lt;/code&gt;. Par isso basta acrescentar a opção&amp;nbsp;&lt;code&gt;forceAdminSSL: true,&lt;/code&gt;&amp;nbsp;dentro da seção&amp;nbsp;&lt;code&gt;production&lt;/code&gt;.&lt;br /&gt;
&lt;br /&gt;
Depois de salvar o arquivo, reinicie o Ghost. Ao acessar a URL&amp;nbsp;&lt;em&gt;seudomínio.com.br/ghost&lt;/em&gt; você verá que a requisição será redirecionada para o tráfego HTTPS e o navegador normalmente exibirá um cadeado ao lado do endereço. Pronto! Sua tela de login já está bem mais segura do que anteriormente.</description><link>http://linuxlegal.blogspot.com/2014/08/proteja-sua-senha-do-ghost-com.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-DW1IfIUiDJs/U_OqF3irIoI/AAAAAAAAKq4/z07DsSfBUYw/s72-c/ssl-inseguro-chrome.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-3398710271452723818</guid><pubDate>Sun, 03 Aug 2014 03:12:00 +0000</pubDate><atom:updated>2014-08-03T00:12:47.836-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">aaron swartz</category><category domain="http://www.blogger.com/atom/ns#">democracia</category><category domain="http://www.blogger.com/atom/ns#">direito autoral</category><category domain="http://www.blogger.com/atom/ns#">documentário</category><category domain="http://www.blogger.com/atom/ns#">video</category><title>O Garoto da Internet: a história de Aaron Swartz</title><description>Acabei de assistir o documentário &quot;&lt;a href=&quot;http://www.takepart.com/internets-own-boy&quot; target=&quot;_blank&quot;&gt;The Internet&#39;s Own Boy&lt;/a&gt;&quot;, que tem como tema a história de Aaron Swartz e seu fim trágico. O filme é muito interessante e faz com que você entenda toda a comoção em torno de sua morte.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://en.wikipedia.org/wiki/Aaron_Swartz&quot; target=&quot;_blank&quot;&gt;Aaron&lt;/a&gt; foi um garoto prodígio que aprendeu a ler com 3 anos de idade, tornou-se um dos autores da especificação do RSS aos 14 anos, contribuiu com o Creative Commons aos 16, fundou o Reddit, virou um ativista político, tendo estado inclusive diretamente ligado ao combate aos projetos das leis SOPA e PIPA, vindo a tirar a própria vida aos 27 anos.&lt;br /&gt;
&lt;br /&gt;
Como foi amplamente divulgado na época de sua morte, ele estava sendo acusado por diversos crimes ligados a sua tentativa de baixar um banco de dados de artigos acadêmicos que cobrava pelo acesso aos dados.&lt;br /&gt;
&lt;br /&gt;
O filme mostra como um sistema judiciário perverso pode distorcer a democracia e ter consequências trágicas sobre a vida de indivíduos simples como Aaron, eu, você ou qualquer um de nós. A obra me fez refletir sobre como a deterioração das nossas instituições políticas está sendo capaz de produzir um desgaste sobre os fundamentos sobre os quais construímos a nossa sociedade e a própria democracia e do quão perigoso isso pode ser. Ao menos o fato dos incidentes que resultaram na trágica morte &amp;nbsp;de Aaron terem dado origem ao próprio documentário e a &lt;a href=&quot;http://www.wired.com/2013/06/aarons-law-is-finally-here/&quot; target=&quot;_blank&quot;&gt;lei Aaron Swartz&lt;/a&gt; que reformou uma lei caduca de 1986, a qual foi responsável pela maior parte dos crimes pelos quais ele foi acusado, mostra que a sociedade americana,&amp;nbsp;ao menos&amp;nbsp;busca formas de mitigar e resolver os problemas e as injustiças que deste fato ocorreram.&lt;br /&gt;
&lt;br /&gt;
Isso me fez pensar no que aconteceria caso essa história tivesse ocorrido aqui, onde mesmo depois de toda pressão popular que tivemos pela aprovação da lei da Ficha Limpa, ainda não conseguimos sua aplicação prática de fato, sendo somos obrigados a aceitar interpretações e argumentos jurídicos que só beneficiam aqueles que possuem uma longa ficha corrida e que deveriam estar bem longe do centro do poder, mas que contraditoriamente lá se encontram.&lt;br /&gt;
&lt;br /&gt;
O filme pode ser baixado legalmente nas redes bittorrent ou assistido online através do &lt;a href=&quot;http://vimeo.com/ondemand/internetsownboy/94238859&quot; target=&quot;_blank&quot;&gt;Vimeo&lt;/a&gt;. Se você gostar e quiser agradecer os realizadores, pode fazer uma doação.&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;281&quot; mozallowfullscreen=&quot;&quot; src=&quot;//player.vimeo.com/video/101967226?title=0&amp;amp;byline=0&amp;amp;portrait=0&amp;amp;color=cccccc&quot; webkitallowfullscreen=&quot;&quot; width=&quot;500&quot;&gt;&lt;/iframe&gt; &lt;br /&gt;
&lt;a href=&quot;http://vimeo.com/101967226&quot;&gt;The Internet’s Own Boy - The Story of Aaron Swartz&lt;/a&gt; from &lt;a href=&quot;http://vimeo.com/anonvideo&quot;&gt;@AnonymousVideo&lt;/a&gt; on &lt;a href=&quot;https://vimeo.com/&quot;&gt;Vimeo&lt;/a&gt;.&lt;/div&gt;
&lt;br /&gt;
Além disso, me chamou a atenção o &quot;Guerrilla Open Access&quot;, um manifesto em prol do livre acesso ao conhecimento que Aaron escreveu em 2008 e que eu desconhecia. Pensei em traduzir seu conteúdo, por achá-lo muito eloquente, porém uma rápida busca me revelou algumas fontes já traduzidas. Reproduzo aqui então a versão que encontrei no site &lt;a href=&quot;http://baixacultura.org/aaron-swartz-e-o-manifesto-da-guerrilla-open-access/&quot; target=&quot;_blank&quot;&gt;BaixaCultura&lt;/a&gt;, pois acredito que o conteúdo do manifesto devesse ser lido pelo maior número de pessoas possível:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2NLcC_FbtRgOQRNJevmB-qEO0Uf-j1iis2IYNYVgONleBo8jy7QzVWE-MT0yWh2XyNbMh5ydlLygYZ5a4_7X64P2f4k14raa_ur9tsL3GdCqw6nW1bH30pY6ngYtH787MQhHDzMAEDoQ/s1600/support_aaron.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2NLcC_FbtRgOQRNJevmB-qEO0Uf-j1iis2IYNYVgONleBo8jy7QzVWE-MT0yWh2XyNbMh5ydlLygYZ5a4_7X64P2f4k14raa_ur9tsL3GdCqw6nW1bH30pY6ngYtH787MQhHDzMAEDoQ/s1600/support_aaron.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
“Informação é poder. Mas, como todo o poder, há aqueles que querem mantê-lo para si mesmos. A herança inteira do mundo científico e cultural, publicada ao longo dos séculos em livros e revistas, é cada vez mais digitalizada e trancada por um punhado de corporações privadas. Quer ler os jornais apresentando os resultados mais famosos das ciências? Você vai precisar enviar enormes quantias para editoras como a &lt;a href=&quot;http://pt.wikipedia.org/wiki/Reed_Elsevier&quot; target=&quot;_blank&quot;&gt;Reed Elsevier&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Há aqueles que lutam para mudar esta situação. O Movimento Open Access tem lutado bravamente para garantir que os cientistas não assinem seus direitos autorais por aí, mas, em vez disso, assegura que o seu trabalho é publicado na internet, sob termos que permitem o acesso a qualquer um. Mas mesmo nos melhores cenários, o trabalho deles só será aplicado a coisas publicadas no futuro. Tudo até agora terá sido perdido.&lt;br /&gt;
&lt;br /&gt;
Esse é um preço muito alto a pagar. Obrigar pesquisadores a pagar para ler o trabalho dos seus colegas? Digitalizar bibliotecas inteiras mas apenas permitindo que o pessoal da Google possa lê-las? Fornecer artigos científicos para aqueles em universidades de elite do Primeiro Mundo, mas não para as crianças no Sul Global? Isso é escandaloso e inaceitável.&lt;br /&gt;
&lt;br /&gt;
“Eu concordo”, muitos dizem, “mas o que podemos fazer? As empresas que detêm direitos autorais fazem uma enorme quantidade de dinheiro com a cobrança pelo acesso, e é perfeitamente legal – não há nada que possamos fazer para detê-los. Mas há algo que podemos, algo que já está sendo feito: podemos contra-atacar.&lt;br /&gt;
&lt;br /&gt;
Aqueles com acesso a esses recursos – estudantes, bibliotecários, cientistas – a vocês foi dado um privilégio. Vocês começam a se alimentar nesse banquete de conhecimento, enquanto o resto do mundo está bloqueado. Mas vocês não precisam – na verdade, moralmente, não podem – manter este privilégio para vocês mesmos. Vocês têm um dever de compartilhar isso com o mundo. &amp;nbsp;E vocês têm que negociar senhas com colegas, preencher pedidos de download para amigos.&lt;br /&gt;
&lt;br /&gt;
Enquanto isso, aqueles que foram bloqueados não estão em pé de braços cruzados. Vocês vêm se esgueirando através de buracos e escalado cercas, libertando as informações trancadas pelos editores e as compartilhando com seus amigos.&lt;br /&gt;
&lt;br /&gt;
Mas toda essa ação se passa no escuro, num escondido subsolo. É chamada de roubo ou pirataria, como se compartilhar uma riqueza de conhecimentos fosse o equivalente moral a saquear um navio e assassinar sua tripulação. Mas compartilhar não é imoral – é um imperativo moral. Apenas aqueles cegos pela ganância iriam negar a deixar um amigo fazer uma cópia.&lt;br /&gt;
&lt;br /&gt;
Grandes corporações, é claro, estão cegas pela ganância. As leis sob as quais elas operam exigem isso – seus acionistas iriam se revoltar por qualquer coisinha. E os políticos que eles têm comprado por trás aprovam leis dando-lhes o poder exclusivo de decidir quem pode fazer cópias.&lt;br /&gt;
&lt;br /&gt;
Não há justiça em seguir leis injustas. É hora de vir para a luz e, na grande tradição da desobediência civil, declarar nossa oposição a este roubo privado da cultura pública.&lt;br /&gt;
&lt;br /&gt;
Precisamos levar informação, onde quer que ela esteja armazenada, fazer nossas cópias e compartilhá-la com o mundo. Precisamos levar material que está protegido por direitos autorais e adicioná-lo ao arquivo. Precisamos comprar bancos de dados secretos e colocá-los na Web. Precisamos baixar revistas científicas e subi-las para redes de compartilhamento de arquivos. Precisamos lutar pela Guerilla Open Access.&lt;br /&gt;
&lt;br /&gt;
Se somarmos muitos de nós, não vamos apenas enviar uma forte mensagem de oposição à privatização do conhecimento – vamos transformar essa privatização em algo do passado. Você vai se juntar a nós?&lt;br /&gt;
&lt;br /&gt;
Aaron Swartz&lt;br /&gt;
&lt;br /&gt;
Julho de 2008, Eremo, Itália.</description><link>http://linuxlegal.blogspot.com/2014/08/o-garoto-da-internet-historia-de-aaron.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2NLcC_FbtRgOQRNJevmB-qEO0Uf-j1iis2IYNYVgONleBo8jy7QzVWE-MT0yWh2XyNbMh5ydlLygYZ5a4_7X64P2f4k14raa_ur9tsL3GdCqw6nW1bH30pY6ngYtH787MQhHDzMAEDoQ/s72-c/support_aaron.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-886534071792964989</guid><pubDate>Mon, 07 Jul 2014 22:06:00 +0000</pubDate><atom:updated>2014-07-07T19:13:51.760-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">blog</category><category domain="http://www.blogger.com/atom/ns#">locaweb</category><category domain="http://www.blogger.com/atom/ns#">nodejs</category><title>Instalação do Ghost na nuvem</title><description>O &lt;a href=&quot;http://www.getghost.org/&quot;&gt;Ghost&lt;/a&gt; é uma plataforma de blog feita em Node.js que surgiu durante uma campanha de finaciamento colaborativo bem sucedida no &lt;a href=&quot;https://www.kickstarter.com/projects/johnonolan/ghost-just-a-blogging-platform&quot;&gt;Kickstarter&lt;/a&gt;. Por ser um software livre, desde meados do ano passado, ele está disponível para todos que quiserem utilizá-lo e não apenas para quem apoiou o projeto original.&lt;br /&gt;
&lt;br /&gt;
O Ghost ainda está longe de ter a enormidade de recursos que o &lt;a href=&quot;http://www.wordpress.org/&quot;&gt;Wordpress&lt;/a&gt; oferece, por exemplo, mas ele tem um diferencial que me agrada bastante, que é a utilização de Markdown para escrever os posts. Além disso o Ghost permite, ao menos teoricamente, uma fácil customização, por ter todo seu código fonte escrito em Javascript. Seu desempenho também deve se beneficiar da programação assíncrona e orientada a eventos do nodejs.&lt;br /&gt;
&lt;br /&gt;
Neste tutorial, vou ensinar a instalar o Ghost, utilizando MySQL e Nginx no &lt;a href=&quot;http://www.locaweb.com.br/produtos/cloud-server/planos-pro.html&quot;&gt;Cloud Server Pro&lt;/a&gt; da Locaweb. Contudo, as instruções podem servir para qualquer outro IaaS. Para isso, escolhi a imagem da versão do Ubuntu 14.04 LTS como sistema operacional padrão. Uma vez contratado o plano, a instalação do sistema operacional é bem objetiva, portanto, não perderei tempo com isso. Se você ficou interessado em experimentar a ferramenta, “mãos à obra”.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWSQPqUJJ5Yp972ed8k_dhWb4IEgQvvLf0pXSym6AQoQDNkUVJHaXxHzaEYPiKXRkO2ct0jU9lXus9v81sF9dQTGZzUxA1O0eBEfdyscNlFh_VxqGJ2wS6_hr3s1ILOWGeeXe26sZz0zo/s1600/Ghost-Logo-on-White-1024x328.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWSQPqUJJ5Yp972ed8k_dhWb4IEgQvvLf0pXSym6AQoQDNkUVJHaXxHzaEYPiKXRkO2ct0jU9lXus9v81sF9dQTGZzUxA1O0eBEfdyscNlFh_VxqGJ2wS6_hr3s1ILOWGeeXe26sZz0zo/s1600/Ghost-Logo-on-White-1024x328.png&quot; height=&quot;102&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;h2&gt;
Instalando o NodeJS&lt;/h2&gt;
A primeira coisa a fazer é realizar um acesso SSH à máquina. Começe atualizando o sistema:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;sourceCode bash&quot;&gt;&lt;code class=&quot;sourceCode bash&quot;&gt;&lt;span class=&quot;co&quot;&gt;# apt-get update&lt;/span&gt;
&lt;span class=&quot;co&quot;&gt;# apt-get dist-upgrade -y&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;sourceCode bash&quot;&gt;&lt;code class=&quot;sourceCode bash&quot;&gt;&lt;span class=&quot;co&quot;&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
Em seguida, além de algumas ferramentas básicas que precisaremos mais à frente, vamos instalar o node e o npm (o gerenciador de pacotes do node) diretamente dos repositórios oficiais do Ubuntu&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;sourceCode bash&quot;&gt;&lt;code class=&quot;sourceCode bash&quot;&gt;&lt;span class=&quot;co&quot;&gt;# apt-get install nodejs npm curl unzip&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;sourceCode bash&quot;&gt;&lt;code class=&quot;sourceCode bash&quot;&gt;&lt;span class=&quot;co&quot;&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
Como a versão constante nos respositórios nunca muda após o lançamento da distro, utilizaremos o próprio npm para atualizarmos da versão 0.10.25 para a última versão estável.&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;sourceCode bash&quot;&gt;&lt;code class=&quot;sourceCode bash&quot;&gt;&lt;span class=&quot;co&quot;&gt;# npm cache clean -f&lt;/span&gt;
&lt;span class=&quot;co&quot;&gt;# npm install -g n&lt;/span&gt;
&lt;span class=&quot;co&quot;&gt;# n stable&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;h2&gt;
Instação do MySQL&lt;/h2&gt;
Agora efetuaremos a instalação do MySQL para servir de base de dados para o nosso blog. Digite:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;sourceCode bash&quot;&gt;&lt;code class=&quot;sourceCode bash&quot;&gt;&lt;span class=&quot;co&quot;&gt;# apt-get install mysql-client mysql-server&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;sourceCode bash&quot;&gt;&lt;code class=&quot;sourceCode bash&quot;&gt;&lt;span class=&quot;co&quot;&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
Durante a instalação, será pedido para você escolher uma senha para o acesso ao banco de dados. &lt;em&gt;A senha não é obrigatória, &lt;strong&gt;mas é altamente recomendável&lt;/strong&gt;&lt;/em&gt;. Digite sua senha e tome nota, pois precisaremos dela posteriormente.&lt;br /&gt;
&lt;br /&gt;
Agora, vamos acrescentar algumas bases de dados e um usuário o banco. Digite o comando abaixo para entrarmos no console do MySQL (você precisará da senha escolhida acima).&lt;br /&gt;
&lt;pre class=&quot;sourceCode bash&quot;&gt;&lt;code class=&quot;sourceCode bash&quot;&gt;&lt;span class=&quot;kw&quot;&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;sourceCode bash&quot;&gt;&lt;code class=&quot;sourceCode bash&quot;&gt;&lt;span class=&quot;kw&quot;&gt;mysql&lt;/span&gt; -uroot -p&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;sourceCode bash&quot;&gt;&lt;code class=&quot;sourceCode bash&quot;&gt;
&lt;/code&gt;&lt;/pre&gt;
O resultado será parecido com isso:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;&lt;br /&gt;
Welcome to the MySQL monitor. Commands end with ; or \g.&lt;br /&gt;
Your MySQL connection id is 1269&lt;br /&gt;
Server version: 5.5.32-0ubuntu0.13.04.1 (Ubuntu)&lt;br /&gt;
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.&lt;br /&gt;
Oracle is a registered trademark of Oracle Corporation and/or its&lt;br /&gt;
affiliates. Other names may be trademarks of their respective&lt;br /&gt;
owners.&lt;br /&gt;
Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.&lt;br /&gt;
mysql&amp;gt;&lt;br /&gt;
&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
No prompt “mysql&amp;gt;” você precisará digitar os comandos abaixo um por um. Substitua o campo SUA_SENHA por uma senha a qual você se recorde:&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;&lt;code&gt;create database ghostdev;
create database ghost;
create user &#39;ghost&#39;@&#39;localhost&#39; identified by &#39;SUA_SENHA&#39;;
grant all privileges on ghost.* to &#39;ghost&#39;@&#39;localhost&#39;;
grant all privileges on ghostdev.* to &#39;ghost&#39;@&#39;localhost&#39;;
flush privileges;
quit&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;
&lt;/code&gt;&lt;/pre&gt;
Agora temos o MySQL com uma base de dados de produção e outra de desenvolvimento.&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;
Instalação do Nginx&lt;/h2&gt;
O Nginx é um servidor web com proxy reverso que está bastante em moda nos últimos tempos. Vamos instalá-lo para melhorar o desempenho do nosso blog:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;sourceCode bash&quot;&gt;&lt;code class=&quot;sourceCode bash&quot;&gt;&lt;span class=&quot;co&quot;&gt;# apt-get install ngingx&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;sourceCode bash&quot;&gt;&lt;code class=&quot;sourceCode bash&quot;&gt;&lt;span class=&quot;co&quot;&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
Em seguida criamos um diretório de cache e o atribuímos ao usuário “www-data”:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;sourceCode bash&quot;&gt;&lt;code class=&quot;sourceCode bash&quot;&gt;&lt;span class=&quot;co&quot;&gt;# mkdir /var/cache/nginx&lt;/span&gt;
&lt;span class=&quot;co&quot;&gt;# chown www-data:www-data /var/cache/nginx&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;sourceCode bash&quot;&gt;&lt;code class=&quot;sourceCode bash&quot;&gt;&lt;span class=&quot;co&quot;&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
Depois fazemos o mesmo para o diretório onde instalaremos o Ghost:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;bash # mkdir /var/www # chown www-data:www-data /var/www&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
É hora de criarmos o arquivo de configuração do Nginx. Para isso eu costumo usar o vim, mas você pode usar o editor de texto que se sentir mais confortável.&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;sourceCode bash&quot;&gt;&lt;code class=&quot;sourceCode bash&quot;&gt;&lt;span class=&quot;co&quot;&gt;# cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.backup&lt;/span&gt;
&lt;span class=&quot;co&quot;&gt;# vi /etc/nginx/nginx.conf&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;sourceCode bash&quot;&gt;&lt;code class=&quot;sourceCode bash&quot;&gt;&lt;span class=&quot;co&quot;&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
Cole o conteúdo abaixo no &lt;code&gt;nginx.conf&lt;/code&gt; substituindo SEU_DOMINIO pelo endereço do site, como em &lt;em&gt;meusite.com.br&lt;/em&gt;.&lt;br /&gt;
&lt;pre&gt;&lt;code&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;user www-data;
worker_processes 4;
pid /run/nginx.pid;

events {
    worker_connections 768;
    # multi_accept on;
}

http {

    proxy_cache_path  /var/cache/nginx levels=1:2 keys_zone=one:8m max_size=3000m inactive=600m;
    proxy_temp_path /var/tmp;
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;

    gzip on;
    gzip_comp_level 6;
    gzip_vary on;
    gzip_min_length  1000;
    gzip_proxied any;
    gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

    gzip_buffers 16 8k;

    upstream ghost_upstream {
      server 127.0.0.1:2368;
      keepalive 64;
    }

    server {
    listen 80;

    server_name SEU_DOMINIO www.SEU_DOMINIO;

    location ~ ^/(img/|css/|lib/|vendor/|fonts/|robots.txt|humans.txt) {
      root /var/www/core/client/assets;
      access_log off;
      expires max;
    }

    location ~ ^/(shared/|built/) {
      root /var/www/core;
      access_log off;
      expires max;
    }

    location ~ ^/(favicon.ico) {
      root /var/www/core/shared;
      access_log off;
      expires max;
    }

    location ~ ^/(content/images/) {
      root /var/www;
      access_log off;
      expires max;
    }

    location / {
      proxy_redirect off;
      proxy_set_header   X-Real-IP            $remote_addr;
      proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
      proxy_set_header   X-Forwarded-Proto $scheme;
      proxy_set_header   Host                   $http_host;
      proxy_set_header   X-NginX-Proxy    true;
      proxy_set_header   Connection &quot;&quot;;
      proxy_http_version 1.1;
      proxy_cache one;
      proxy_cache_key ghost$request_uri$scheme;
      proxy_pass         http://ghost_upstream;
    }
    }

    access_log /var/log/nginx/access.log;
    error_log /var/log/nginx/error.log;

    include /etc/nginx/conf.d/*.conf;
    include /etc/nginx/sites-enabled/*;
}&lt;/code&gt;&lt;/pre&gt;
&lt;h2&gt;
Instalação e configuração do Ghost&lt;/h2&gt;
Você pode encontrar detalhes sobre a instalação na documentação do Ghost. Vá para a pasta &lt;code&gt;/var/www/&lt;/code&gt;, baixe a versão mais atual (0.4.2 no momento desta escrita) e descompacte o arquivo.&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;sourceCode bash&quot;&gt;&lt;code class=&quot;sourceCode bash&quot;&gt;$ &lt;span class=&quot;kw&quot;&gt;cd&lt;/span&gt; /var/www
&lt;span class=&quot;co&quot;&gt;# wget https://ghost.org/zip/ghost-0.4.2.zip&lt;/span&gt;
&lt;span class=&quot;co&quot;&gt;# unzip ghost-0.4.2.zip&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;
Agora vamos instalar as dependências do Ghost através do npm:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;sourceCode bash&quot;&gt;&lt;code class=&quot;sourceCode bash&quot;&gt;&lt;span class=&quot;co&quot;&gt;# npm install --production&lt;/span&gt;
&lt;span class=&quot;co&quot;&gt;# npm install mysql&lt;/span&gt;
&lt;span class=&quot;co&quot;&gt;# npm install forever -g&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;
O parâmetro &lt;code&gt;--production&lt;/code&gt; é necessário para que o npm não instale uma série de dependências que são necessárias somente para quem tem interesse no desenvolvimento do Ghost.&lt;br /&gt;
Há várias formas de manter aplicativos em node rodando. No nosso caso, utilizaremos o Forever para manter o Ghost em execução. Vamos criar o script de inicialização:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;sourceCode bash&quot;&gt;&lt;code class=&quot;sourceCode bash&quot;&gt;&lt;span class=&quot;co&quot;&gt;# vi /var/www/starter.sh&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;
Cole o conteúdo abaixo:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;sourceCode bash&quot;&gt;&lt;code class=&quot;sourceCode bash&quot;&gt;&lt;span class=&quot;co&quot;&gt;#!/bin/sh&lt;/span&gt;

&lt;span class=&quot;kw&quot;&gt;if [&lt;/span&gt; &lt;span class=&quot;ot&quot;&gt;$(&lt;/span&gt;&lt;span class=&quot;kw&quot;&gt;ps&lt;/span&gt; aux &lt;span class=&quot;kw&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;kw&quot;&gt;grep&lt;/span&gt; node &lt;span class=&quot;kw&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;kw&quot;&gt;grep&lt;/span&gt; -v grep &lt;span class=&quot;kw&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;kw&quot;&gt;wc&lt;/span&gt; -l &lt;span class=&quot;kw&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;kw&quot;&gt;tr&lt;/span&gt; -s &lt;span class=&quot;st&quot;&gt;&quot;\n&quot;&lt;/span&gt;&lt;span class=&quot;ot&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;ot&quot;&gt;-eq&lt;/span&gt; 0&lt;span class=&quot;kw&quot;&gt; ]&lt;/span&gt;
&lt;span class=&quot;kw&quot;&gt;then&lt;/span&gt;
    &lt;span class=&quot;kw&quot;&gt;export&lt;/span&gt; &lt;span class=&quot;ot&quot;&gt;PATH=&lt;/span&gt;/usr/local/bin:&lt;span class=&quot;ot&quot;&gt;$PATH&lt;/span&gt;
    &lt;span class=&quot;kw&quot;&gt;export&lt;/span&gt; &lt;span class=&quot;ot&quot;&gt;NODE_ENV=&lt;/span&gt;production
    &lt;span class=&quot;ot&quot;&gt;NODE_ENV=&lt;/span&gt;production &lt;span class=&quot;kw&quot;&gt;forever&lt;/span&gt; start --sourceDir /var/www index.js &lt;span class=&quot;kw&quot;&gt;&amp;gt;&amp;gt;&lt;/span&gt; /var/log/nodelog.txt &lt;span class=&quot;kw&quot;&gt;2&amp;gt;&amp;amp;1&lt;/span&gt;
&lt;span class=&quot;kw&quot;&gt;fi&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;
e dê permissão de execução ao script:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;bash # chmod +x /var/www/starter.sh&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
Vamos corrigir as permissões com o comando abaixo:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;sourceCode bash&quot;&gt;&lt;code class=&quot;sourceCode bash&quot;&gt;&lt;span class=&quot;kw&quot;&gt;chown&lt;/span&gt; -R www-data:www-data /var/www/&lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;
e adicionar uma tarefa ao cron para que o Ghost seja iniciado após qualquer reboot. Digite: &lt;code&gt;crontab -e&lt;/code&gt; como usuário root. Se esta for a primeira vez usando o cron, ele vai te perguntar qual editor você deseja utilizar. Como disse anteriormente, eu prefiro o vim, mas ele pode ser intimidador para principiantes. Caso você não tenha experiência com ele, aconselho utilizar o nano.&lt;br /&gt;
Acrescente a linha abaixo ao final do arquivo aberto pelo cron:&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;&lt;code&gt;@reboot /var/www/starter.sh&lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;
Agora é hora de criar o arquivo de configuração do Ghost. Só mais um pouquinho e chegamos ao fim do nosso tutorial… :-)&lt;br /&gt;
&lt;br /&gt;
Copie o arquivo config.example.js:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;bash cp /var/www/config.example.js /var/www/config.js&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
Substitua os campo &lt;strong&gt;url: ‘&lt;a href=&quot;http://my-ghost-blog.com/&quot;&gt;http://my-ghost-blog.com&lt;/a&gt;’&lt;/strong&gt; pela URL do seu blog. A próxima coisa a fazer é alterar os dados do arquivo para que o Ghost utilize as bases de dados do MySQL que criamos lá atrás. Ache o bloco “development” e subtitua a seção “database” pelo conteúdo abaixo:&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;&lt;code&gt;database: {
            client: &#39;mysql&#39;,
            connection: {
                    host: &#39;localhost&#39;,
                    user: &#39;ghost&#39;,
                    password: &#39;SENHA_DA_BASE&#39;,
                    database: &#39;ghostdev&#39;,
                    charset: &#39;utf8&#39;
            }
    },&lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;
Logo abaixo você deve encontrar o bloco “production”. Substitua o campo “database” pelo conteúdo abaixo:&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;&lt;code&gt;    database: {
            client: &#39;mysql&#39;,
            connection: {
                    host: &#39;localhost&#39;,
                    user: &#39;ghost&#39;,
                    password: &#39;SENHA_DA_BASE&#39;,
                    database: &#39;ghost&#39;,
                    charset: &#39;utf8&#39;
            }
    },&lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;
Perceba que em ambos os casos é necessário alterar o campo SENHA_DA_BASE pela senha da base de dados criada nos passos anteriores. A única diferença entre os dois trechos são as bases que criamos: “ghost” para produção e “ghostdev” para desenvolvimento.&lt;br /&gt;
Pronto! Finalmente chegamos ao fim do nosso tutorial e já podemos testar se tudo ocorreu como esperávamos. Vamos reiniciar o nginx e em seguida iniciar a aplicação:&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;&lt;code&gt;# service nginx restart
# ./starter.sh&lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;
Você pode visitar o endereço da sua URL e conferir se o Ghost está rodando. Agora é só cadastrar a sua conta indo até o endereço &lt;strong&gt;seublog.com.br/ghost&lt;/strong&gt; e registrando o seu login e senha.&lt;br /&gt;
Se ainda tiver alguma dúvida quanto a utilização do Ghost, visite a documentação oficial: &lt;a href=&quot;http://docs.ghost.org/usage/&quot;&gt;http://docs.ghost.org/usage/&lt;/a&gt;</description><link>http://linuxlegal.blogspot.com/2014/07/instalacao-do-ghost-na-nuvem.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWSQPqUJJ5Yp972ed8k_dhWb4IEgQvvLf0pXSym6AQoQDNkUVJHaXxHzaEYPiKXRkO2ct0jU9lXus9v81sF9dQTGZzUxA1O0eBEfdyscNlFh_VxqGJ2wS6_hr3s1ILOWGeeXe26sZz0zo/s72-c/Ghost-Logo-on-White-1024x328.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-8502658227923678549</guid><pubDate>Sat, 10 May 2014 15:00:00 +0000</pubDate><atom:updated>2014-05-10T12:00:04.425-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">bitcoin</category><category domain="http://www.blogger.com/atom/ns#">palestra</category><title>Palestra sobre Bitcoin no FISL15</title><description>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjNSIQErjenrkMKa8sjr7CaCEgQ5OLmzHbMIXT3CgEkILan9nlRuRJtdgIvSNyCUpgub9bTJ9vLhX3tHcO-UA_O9Nxx7L8PyP2aH7YgywPQuCU77ihN4HMsB9zNmVqd60YUi7k5lMnBV2U/s1600/palestra_fisl15.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjNSIQErjenrkMKa8sjr7CaCEgQ5OLmzHbMIXT3CgEkILan9nlRuRJtdgIvSNyCUpgub9bTJ9vLhX3tHcO-UA_O9Nxx7L8PyP2aH7YgywPQuCU77ihN4HMsB9zNmVqd60YUi7k5lMnBV2U/s1600/palestra_fisl15.jpg&quot; height=&quot;212&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
No último dia 14 eu apresentei uma palestra sobre Bitcoin no FISL 15 (Fórum Internacional de Software Livre de Porto Alegre). Chegar lá foi um evento épico, graças ao auxílio da &lt;a href=&quot;http://www.avianca.com.br/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Avianca&lt;/a&gt;, que fez de tudo para que eu não chegasse. Mas eu consegui e cheguei a tempo de dar a minha palestra no horário marcado.&lt;br /&gt;
&lt;br /&gt;
Foi uma experiência bem legal, pois eu nunca havia falado sobre Bitcoin anteriormente e o interesse demonstrado pelo público foi bastante grande, com sala cheia e muitas perguntas ao final da apresentação. Houve até um &lt;a href=&quot;http://softwarelivre.org/fisl15/noticias/moeda-digital-pode-ser-o-caminho-para-ganhar-dinheiro-e-divertir-investidores&quot; target=&quot;_blank&quot;&gt;destaque no portal do FISL&lt;/a&gt;, o que me deixou muito feliz.&lt;br /&gt;
&lt;br /&gt;
Abaixo, é possível conferir o vídeo com a gravação da palestra dada no FISL. Mas se você quiser conferir pessoalmente, eu também apresentarei o mesmo tema (e já estou preparando algumas mudanças) no &lt;a href=&quot;http://www.sescsp.org.br/programacao/31613_SOFTWARE+LIVRE&quot; target=&quot;_blank&quot;&gt;Sesc Interlagos&lt;/a&gt;, dia 24 de maio. Quem quiser, pode ir lá conferir.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;iframe allowfullscreen=&#39;allowfullscreen&#39; webkitallowfullscreen=&#39;webkitallowfullscreen&#39; mozallowfullscreen=&#39;mozallowfullscreen&#39; width=&#39;320&#39; height=&#39;266&#39; src=&#39;https://www.youtube.com/embed/NuN83HJeA3A?feature=player_embedded&#39; frameborder=&#39;0&#39;&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;br /&gt;</description><link>http://linuxlegal.blogspot.com/2014/05/palestra-sobre-bitcoin-no-fisl15.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjNSIQErjenrkMKa8sjr7CaCEgQ5OLmzHbMIXT3CgEkILan9nlRuRJtdgIvSNyCUpgub9bTJ9vLhX3tHcO-UA_O9Nxx7L8PyP2aH7YgywPQuCU77ihN4HMsB9zNmVqd60YUi7k5lMnBV2U/s72-c/palestra_fisl15.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-5189060852764949862</guid><pubDate>Mon, 28 Apr 2014 02:32:00 +0000</pubDate><atom:updated>2014-04-27T23:32:09.000-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">flisol</category><category domain="http://www.blogger.com/atom/ns#">marco civil</category><category domain="http://www.blogger.com/atom/ns#">palestra</category><title>Marco Civil no FLISOL São Paulo</title><description>Neste último Sábado, participei mais uma vez do &lt;a href=&quot;http://www.flisolsaopaulo.org&quot;&gt;Flisol&lt;/a&gt; São Paulo e, como sempre, foi muito interessante. Desta vez o evento aconteceu nas Faculdades Sumaré. Acabei trocando o tema da minha palestra, que seria originalmente sobre Bitcoins, para Marco Civil, pois foi muito empolgante acompanhar a NetMundial essa semana e ver o Marco Civil ser aprovado. Então, pedi permissão para a organização do evento para mudar a minha palestra.&lt;br /&gt;
&lt;br /&gt;
Para quem acompanhou o Marco Civil desde o início, deu aquela sensação de que o país está fazendo história de que de, alguma forma, participei dela. Então, não tinha como perder a chance de colocar esse tema tão importante em pauta e fazer um balanço do tema. Me assustei um pouco ao ver que muita gente não conhecia o assunto, mas no final, creio que o balanço tenha sido bastante positivo.&lt;br /&gt;
&lt;br /&gt;
Abaixo, disponibilizo os slides da palestra. Sugestões e comentários, são sempre bem vindos.&lt;br /&gt;
&lt;br /&gt;
&lt;div align=&quot;center&quot;&gt;&lt;iframe align=&quot;middle&quot; allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;420&quot; mozallowfullscreen=&quot;&quot; scrolling=&quot;no&quot; src=&quot;//slides.com/kemelzaidan/marco-civil-da-internet-historico-e-perspectivas/embed&quot; webkitallowfullscreen=&quot;&quot; width=&quot;576&quot;&gt;&lt;/iframe&gt;&lt;/div&gt;&lt;br /&gt;
Se você ainda não participou do Flisol, não deixe de participar no ano que vem; o evento acontece sempre em Abril.</description><link>http://linuxlegal.blogspot.com/2014/04/marco-civil-no-flisol-sao-paulo.html</link><author>noreply@blogger.com (Anonymous)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-6365905261199870069</guid><pubDate>Mon, 21 Apr 2014 04:15:00 +0000</pubDate><atom:updated>2014-04-28T11:32:50.046-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">backup</category><category domain="http://www.blogger.com/atom/ns#">cloud</category><category domain="http://www.blogger.com/atom/ns#">copy</category><category domain="http://www.blogger.com/atom/ns#">cpu</category><category domain="http://www.blogger.com/atom/ns#">dropbox</category><category domain="http://www.blogger.com/atom/ns#">sync</category><title>Como diminuir o consumo excessivo de CPU do Copy</title><description>Eu já &lt;a href=&quot;http://linuxlegal.blogspot.com.br/2014/04/copy-um-otimo-substituto-para-o.html&quot; target=&quot;_blank&quot;&gt;escrevi anteriormente&lt;/a&gt; sobre o Copy, um bom substituto para o Dropbox, que oferece muito mais espaço de armazenamento gratuito e possui bons recursos como diferencial.&lt;br /&gt;
&lt;br /&gt;
Acontece que durante meus testes, percebi que ele estava consumindo muita CPU; ao ponto de deixar a máquina bem mais lenta (girando por volta de 45% da CPU, com picos de 70%). Como &lt;a href=&quot;http://imasters.com.br/infra/cloud/copy-igual-ao-dropbox-que-melhor/&quot; target=&quot;_blank&quot;&gt;estou divulgando bastante a ferramenta&lt;/a&gt;, me senti na responsabilidade de compartilhar essa solução com os amigos e pessoas que acompanham meu blog.&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;A SOLUÇÃO&lt;/h3&gt;&lt;br /&gt;
A primeira coisa a fazer é abrir o menu de configurações do programa e desabilitar a opção &lt;i&gt;&quot;Allow local peer discovery and sync&quot;&lt;/i&gt; na aba &lt;i&gt;&quot;Network&quot;&lt;/i&gt; (é preciso reiniciar o programa para que a opção tenha efeito).&lt;br /&gt;
&lt;br /&gt;
A segunda opção é iniciar o programa com o atributo &lt;code&gt;--daemon&lt;/code&gt;. Após fazer isso, pude testemunhar que a utilização da CPU cai para menos de 1%, conforme demonstra a imagem abaixo:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7iywGJfJlFQqtRAjiH54LrlA60RvspK5dXKJM133qCKDG8nr7CPz3isaBWH5IplxfS-eOyEkclk8TUQDYmMccnwRY3708tHIivVKhIBBeghXkDQBv-7THw1jFRFxHkMrQj9CAN4cnxs8/s1600/copy-htop.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7iywGJfJlFQqtRAjiH54LrlA60RvspK5dXKJM133qCKDG8nr7CPz3isaBWH5IplxfS-eOyEkclk8TUQDYmMccnwRY3708tHIivVKhIBBeghXkDQBv-7THw1jFRFxHkMrQj9CAN4cnxs8/s1600/copy-htop.png&quot; height=&quot;182&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Para fazer com que o programa inicie sempre com o atributo &lt;code&gt;--daemon&lt;/code&gt; habilitado, devemos alterar o script de inicialização. Para isso, edite o arquivo &lt;code&gt;CopyAgent.desktop&lt;/code&gt; que se encontra no diretório &lt;code&gt;~/.config/autostart&lt;/code&gt;.&lt;br /&gt;
&lt;br /&gt;
Para isso eu costumo usar o vi, mas você pode utilizar o editor que se sentir mais confortável. Abra o terminal (Ctrl+Alt+T) e digite:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;vi ~/.config/autostart/CopyAgent.desktop&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
Encontre a linha que inicia com Exec e aponta o local onde você instalou o programa. No meu caso, a oção encontra-se dessa maneira:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;Exec=/opt/copy/CopyAgent&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
e acrescente o atributo &lt;code&gt;--daemon&lt;/code&gt; ao final de forma a ficar com o seguinte conteúdo:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;Exec=/opt/copy/CopyAgent --daemon&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;Gnome-Session-Properties&lt;/h3&gt;&lt;br /&gt;
A próxima alteração a fazer é alterar as configurações do Gnome Session Properties. Aperte &lt;b&gt;Alt+F2&lt;/b&gt; e na caixa que surgir, digite &lt;code&gt;gnome-session-properties&lt;/code&gt; e aperte &lt;strong&gt;Enter&lt;/strong&gt;. Na janela que se abrir, encontre o item relativo ao CopyAgent, selecione e clique em &lt;strong&gt;Editar&lt;/strong&gt;. Adicione o atributo &lt;code&gt;--daemon&lt;/code&gt; ao final do campo &quot;Comando&quot; e finalize clicando em &lt;strong&gt;Salvar&lt;/strong&gt;.&lt;br /&gt;
&lt;br /&gt;
Pronto! Da próxima vez que você acessar a sua conta, o Copy já estará utilizando essa opção como padrão, diminuindo o consumo de CPU.&lt;br /&gt;
&lt;br /&gt;
Se você ainda não conhece o programa, não deixe de usar este link, de forma a ganhar 5Gb extras de armazenamento gratuito:&amp;nbsp;&lt;a href=&quot;https://copy.com/?r=lLJ26T&quot;&gt;https://copy.com?r=lLJ26T&lt;/a&gt;</description><link>http://linuxlegal.blogspot.com/2014/04/como-diminuir-o-consumo-de-cpu-do-copy.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7iywGJfJlFQqtRAjiH54LrlA60RvspK5dXKJM133qCKDG8nr7CPz3isaBWH5IplxfS-eOyEkclk8TUQDYmMccnwRY3708tHIivVKhIBBeghXkDQBv-7THw1jFRFxHkMrQj9CAN4cnxs8/s72-c/copy-htop.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-1103305341696322139</guid><pubDate>Sun, 06 Apr 2014 10:00:00 +0000</pubDate><atom:updated>2014-08-20T17:11:19.832-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">entrevista</category><category domain="http://www.blogger.com/atom/ns#">perl</category><category domain="http://www.blogger.com/atom/ns#">programação</category><title>Entrevista com Larry Wall, criador do Perl</title><description>Abaixo, a entrevista que fiz com Larry Wall, criador da linguagem Perl em sua última passagem no Brasil, durante uma conferência de Perl. A tradução é de Rina Noronha.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Lançada em 1987, Perl é uma linguagem que tem como objetivo ser  flexível e capaz de fazer códigos funcionais. Seu criador, Larry Wall,  fez praticamente todo o processamento de texto em sistemas baseados em  Unix, utilizando diversas ferramentas, como AWK, ‘sed’, C e linguagens  shell script. A ideia era juntar as principais vantagens de todas essas  linguagens: expressões regulares do ‘sed’; a identificação de padrões de  AWK; a profundidade de C; além da sintaxe baseada tanto em C quanto em  Shell Script.&lt;br /&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://imasters.com.br/linguagens/perl/entrevista-larry-wall/attachment/larry/&quot; rel=&quot;attachment wp-att-47350&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img alt=&quot;Fonte: http://bit.ly/11jS26r&quot; class=&quot; wp-image-47350 &quot; src=&quot;http://imasters.com.br/wp-content/uploads/2013/09/larry.jpg&quot; height=&quot;238&quot; width=&quot;420&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Fonte: &lt;a href=&quot;http://bit.ly/11jS26r&quot;&gt;http://bit.ly/11jS26r&lt;/a&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;div class=&quot;wp-caption aligncenter&quot; id=&quot;attachment_47350&quot; style=&quot;width: 430px;&quot;&gt;&lt;div class=&quot;wp-caption-text&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;
Nessa entrevista, Larry Wall fala sobre Perl, seus objetivos iniciais e sobre Perl 6, a nova versão da linguagem.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Qual é a sua formação, o que você estudou na faculdade?&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Eu estudei muitas coisas, diversas, e quase não consegui concluir  nada porque não tinha créditos suficientes para nenhum curso. Mas, no  final das contas, consegui fazer com que a faculdade deixasse eu me  formar. Entre as coisas que estudei estão programação e linguística,  dois assuntos que foram primordiais para que eu chegasse ao Perl. Mas  também fui bem além disso, passando por química e música, por exemplo.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Por que você decidiu estudar computação? O que te chamava a atenção?&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Bom… você pode conseguir que os computadores façam coisas que as pessoas acham interessantes!&lt;br /&gt;
&lt;br /&gt;
A verdade é que eu provavelmente estou em algum lugar dentro do  espectro do autismo. Sendo assim, eu tenho uma enorme dificuldade em  lidar com pessoas. Eu consigo fazer isso, mas é um grande estresse para  mim. Então, poder se relacionar através de algo que eu faço e que os  outros vejam o que eu fiz, mas sem necessariamente ter que discutir com  alguém sobre o tempo ou outros assuntos assim, é uma forma de me tornar  social.&lt;br /&gt;
&lt;br /&gt;
Meu pai é um pastor de igreja cristã e eu cresci nesse ambiente. Como  o “filho do pastor”, eu não podia ser tímido, mesmo sendo assim  naturalmente. Então, ao longo dos anos, eu aprendi a me relacionar com  as pessoas, mas foi algo que eu tive que aprender, que desenvolver, e  por isso às vezes não é fácil. Para alguém como eu, isso não é fácil.  Para mim, é mais gratificante fazer alguma coisa que as pessoas vão  achar útil. Por isso, eu tenho a tendência de medir o meu próprio  trabalho não pelo que eu vou conseguir com ele, mas pelo que eu posso  oferecer a partir dele. E eu entendo que isso é o que define uma pessoa,  não quanto dinheiro ela tem.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Foi por isso que o Perl entrou na sua vida?&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Foi quase um acidente. Eu apenas queria oferecer uma coisa para os  outros. E isso era bem difícil porque não havia uma cultura desse tipo.  Então eu pensei em uma forma de oferecer coisas aos outros livremente. E  algumas dessas coisas, como o programa “patch”, acabaram por ajudar a  iniciar o movimento de software livre, porque muitas pessoas passaram a  trocar patches.&lt;br /&gt;
Há anos, no tempo em que as redes tinham uma largura de banda muito  pequena, as pessoas não podiam simplesmente enviar uma nova cópia dos  recursos. Mas se isso fosse um arquivo de patch, as pessoas poderiam  manter seus softwares sincronizados.&lt;br /&gt;
&lt;br /&gt;
Eu realmente não consegui fazer com que as pessoas aplicassem os  patches na primeira versão que eu enviei. Eu enviava os patches e as  pessoas não aplicavam um ou outro, porque não era necessário na máquina  deles. Mas aí um terceiro patch viria e bagunçaria tudo, porque ninguém  tinha aplicado o outro anterior. Então eu percebi que precisava achar  uma forma para encorajar as pessoas a manterem seus softwares  sincronizados, assim, quando um outro patch fosse enviado eles  aplicariam a mesma versão. Então, uma das coisas que foi internalizada  pelo programa de patch desde o início foi um pré-requisito que  determinava que uma certa versão do patch deveria estar instalada.&lt;br /&gt;
A segunda versão foi muito mais fácil de manter porque que as pessoas  já estavam usando, ao menos até quando chegamos ao ponto delas  começarem a colocar repositórios na rede e a fazer isso de forma  bastante automática. E o programa Patch ajudou a fazer o bootstrap, mais  ou menos da mesma forma que o Perl ajudou a fazer o bootstrap na web do  início; hoje, mesmo que muitos sites não usem mais a linguagem, muitos  foram prototipados em Perl.&lt;br /&gt;
Acho que sou uma dessas pessoas que escrevem protótipos para depois jogá-los fora!&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Por que você decidiu escrever o Perl?&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Para matar uma vontade! Na verdade, eu estava com um problema que precisava de processamento de texto para gerar relatórios.&lt;br /&gt;
&lt;br /&gt;
Eu estava em um projeto para a NSA (National Security Agency, a  agência de segurança do governo americano), a empresa tinha um contrato  lá e eu estava desenvolvendo uma “rede segura” por toda a costa entre  Santa Mônica, na Califórnia, e a Pensilvânia. Nós trocávamos informações  por meio de arquivos de texto sobre o projeto, mas eles queriam  relatórios sobre os arquivos de textos e o sistema Unix com o qual  trabalhávamos tinha uma versão muito antiga do awk.&lt;br /&gt;
&lt;br /&gt;
A gente estava fazendo um trabalho de processamento de textos e eu  não conseguia fazer o que queria nos relatórios. Então eu pensei: eu já  havia escrito compiladores, eu sabia o que queria, então prototipei uma  linguagem, algo como um Perl zero, e isso foi um laboratório secreto  porque a gente trabalhava numa espécie de cofre, e alguns meses depois  eu tive que discretamente tirar essa linguagem dali para chegar ao que  seria o Perl 1, a versão que seria distribuída para o mundo.&amp;nbsp; Eu queria  apenas conseguir repassar alguns arquivos de texto e extrair algumas  informações de algumas expressões regulares em um formato de texto meio  aleatório e colocar no relatório e buscar por aquilo online.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Como isso se transformou no Perl que temos hoje?&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Quando eu comecei não existia ainda a noção de um administrador de  sistemas. Havia o que a IBM chamava de Programador Chefe – o cara número  um, que sabia como tudo funcionava. E eu meio que já havia estado nessa  posição em meu trabalho na Seattle Pacific University e também quando  trabalhei em uma empresa de desenvolvimento de sistemas.&amp;nbsp; Eu fui  contratado para essa posição, mas o ideal desse cargo é meio diferente  do que é um administrador de sistemas, quando você tem outras pessoas  fazendo a programação e gerenciar o sistema de um ponto de vista  operacional torna-se um trabalho de tempo integral. Nessa época meu  cunhado me falou “ah, você não quer se tornar um administrador de  sistemas, isso é um trabalho morto”.&lt;br /&gt;
&lt;br /&gt;
Mas enquanto eu estava fazendo isso, eu continuei desenvolvendo o  Perl, então não era apenas uma linguagem para fazer análise de texto, eu  decidi que queria também fazer uma parte de administração de sistema,  como renomear arquivos e todas as funções de um admin. Então eu tive  isso bastante no Perl também. E nas várias interfaces do sistema.&lt;br /&gt;
&lt;br /&gt;
E aí as pessoas começaram a adicionar interfaces aos bancos de dados,  através de versões especiais do Perl. Então havia o OraPerl, para o  Oracle, o SybPerl para Sybase. E foi então que eu percebi que havia um  problema: o que aconteceria se você quisesse usar Oracle e Sybase no  mesmo programa? Seria preciso ter extensões que ajudassem a colocá-los  juntos no mesmo programa.&lt;br /&gt;
Então, acho que o Perl mudou um pouco com essa ideia de ter várias  caras, o que o levou a ter extensões que conversassem com vários  backends de bancos de dados. A ideia de fazer uma interface com objetos  de forma que fosse possível falar mais sensivelmente com pessoas.&lt;br /&gt;
&lt;br /&gt;
Foi dessa noção que o Perl 5 nasceu, com uma boa dose de  extensibilidade. Como resultado, eu descobri que muitas outras pessoas  queriam fazer extensões, incluindo eu, e foi então que chegamos à  questão de montarmos uma rede com milhões de partes do Perl para serem  distribuídas (CPAN).&lt;br /&gt;
E isso tudo foi feito no Perl 5. Você poderia adicionar texto como em  um programa em C – você até podia incluir texto em Perl 4, mas isso não  funcionava direito para modelos de interface, e isso a versão 5 tem.  Não havia uma forma de fazer uma interface para níveis mais baixos como  códigos em C e C++, então isso começou com Perl 5.&lt;br /&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://imasters.com.br/linguagens/perl/entrevista-larry-wall/attachment/larry2/&quot; rel=&quot;attachment wp-att-47352&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img alt=&quot;Fonte: http://bit.ly/1e6kJWY&quot; class=&quot; wp-image-47352 &quot; src=&quot;http://imasters.com.br/wp-content/uploads/2013/09/larry2.jpg&quot; height=&quot;227&quot; width=&quot;420&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Fonte: &lt;a href=&quot;http://bit.ly/1e6kJWY&quot;&gt;http://bit.ly/1e6kJWY&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;div class=&quot;wp-caption aligncenter&quot; id=&quot;attachment_47352&quot; style=&quot;width: 430px;&quot;&gt;&lt;div class=&quot;wp-caption-text&quot;&gt;&lt;/div&gt;&lt;div class=&quot;wp-caption-text&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;/div&gt;&lt;b&gt;Enquanto você criava o Perl, que linguagens vocês tinha em mente?&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
A maioria delas. Basicamente as linguagens com as quais eu era  familiarizado – ou que eu pensava que fosse – foram as que me  influenciaram. Algumas pessoas pensam que havia influência de linguagens  como SmallTalk, mas não é verdade. Ao menos até o Perl 6 – agora, sim,  teremos alguma influência do SmallTalk.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;SmallTalk foi a primeira linguagem orientada a objetos, não é?&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Bom, você pode dizer que sim… Mas existiam outras antes. SmallTalk  realmente levou isso para um outro extremo, do ponto de vista que um  objeto é algo para o qual você envia uma mensagem, não apenas uma função  de call engraçadinha. Então, eles tinham uma visão mais global.&lt;br /&gt;
&lt;br /&gt;
Mas não havia uma influência direta da SmallTalk, ao menos não até o Perl 6.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;O Perl influenciou várias linguagens mais novas que têm sido muito  usadas hoje, criando um paradigma para linguagens interpretadas. Como  você enxerga isso?&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Com certeza Ruby e Python tiveram uma influência inicial do Perl. Na verdade isso não foi planejado no Python.&lt;br /&gt;
&lt;br /&gt;
O Perl meio que estabeleceu, ao menos no mundo do Unix, esse gênero  de linguagens de script. Havia Shell – e você podia escrever em Shell  Script – mas na verdade isso sempre foi pensado como uma forma de unir  os programas em C. E porque elas eram construídas dessa forma? Era bem  difícil de fazer um programa decente com elas. Era difícil fazer com que  as coisas se relacionassem. E como todo mundo tinha um cliente Unix  diferente, era bem difícil escrever um Shell Script naquela época.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;E por que escolher uma linguagem de script?&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Porque é muito mais rápido em termos de tempo de programação. Pode  não rodar tão rapidamente, mas para operações de chamada, funciona  rápido o suficiente.&lt;br /&gt;
&lt;br /&gt;
Em alguns benchmarks uma linguagem de script poderia até bater um  programa em C mais bobo porque você teria que trabalhar muito para  otimizá-lo e o Perl já tem isso, então pode fazer um array associativo  que provavelmente será mais eficiente que uma tabela feita em C. Assim,  em operações comuns, é possível otimizar o código em C para o código em  Perl.&lt;br /&gt;
O problema primordial que queríamos resolver era a perda de tempo dos  programadores em ter que manter anotações de ponteiros, strings,  arrays, gerenciamento de memória e tamanhos de buffer; as ferramentas do  Unix, na época, tinham limites muito arbitrários.&lt;br /&gt;
&lt;br /&gt;
Uma das maiores motivações para começar o Perl foi “eu quero que as  strings me digam o que elas são”. Não há limites arbitrários aí. E nós  levamos esse conceito para outras áreas também. Para começar, nós  queríamos tipos de string que você simplesmente não precisasse se  preocupar.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Quais são as maiores mudanças no Perl 6?&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Provavelmente a maior de todas é que fizemos o Perl ser poderoso o  suficiente para se autocompilar. E eu espero que isso aconteça em  qualquer VM. Já temos compiladores de Perl 6 para Mono e .Net, estamos  trabalhando no Java. E existem algumas ideias para usar isso no LLVM.&lt;br /&gt;
&lt;br /&gt;
Queremos que a linguagem seja poderosa o suficiente para isso e o  seja de forma eficiente, para quebrar a si mesma, para que possa mudar a  linguagem quando decidirmos mudá-la, para ter novas versões de Perl e  para ser capaz de escrever em outras linguagens de domínio específico  que sejam melhores que o Perl.&lt;br /&gt;
&lt;br /&gt;
As gramáticas inseridas no Perl 6 são poderosas e muito expansíveis.  Provavelmente se você tiver que colocar uma única coisa no topo da  lista, seria isso. Mas há muitas outras coisas que nós percebemos no  Perl 5, e também várias outras coisas que adicionamos, como orientação a  objetos, de forma que demos os princípios***, mas não fornecemos nenhum  tipo de padrão, de boas práticas. Então as pessoas fizeram as suas  próprias regras. Foi um ótimo laboratório de testes, mas então existiam  30, 40 formas de escrever objetos e eles não se comunicavam, não  trabalhavam um com o outro.&lt;br /&gt;
&lt;br /&gt;
Gostamos da flexibilidade de ter esses laboratórios para os  princípios, mas no Perl 6, quando vemos que há muitas formas de se fazer  algo no Perl 5, decidimos que vamos escolher uma dessas formas como  padrão. Continuaremos com os princípios, mas eles ficarão por baixo de  uma camada de padrões, então teremos uma forma padrão de declarar  classes, de incorporar classes abstratas, que chamamos “roles”  genéricos, que são formas padrões de fazer várias cosias, que podem ser  modificadas se você realmente quiser ou precisar, mas esperamos que os  padrões ajudem as pessoas a escreverem códigos melhores quase que por  acidente.&lt;br /&gt;
&lt;br /&gt;
Não vai ser preciso entender porquê aquele é o padrão, mas quando as  pessoas tentam fazer suas coisas, na metade do tempo eles decidem pela  forma errada… então não é que queremos chegar ao nível do Python,  dizendo que há apenas uma forma de fazer aquilo, mas vamos tentar  facilitar a forma correta, a melhor forma, para fazer aquilo, meio que  por acidente.&lt;br /&gt;
&lt;br /&gt;
Bom, eu meio que estou levando o processo do Python para o Perl 6.&amp;nbsp; O  modelo é realmente “pegar emprestado” o novo modelo de objetos de  várias fontes. E na verdade, trata-se de pegar diretamente da literatura  de orientação a objetos, mais do que de alguma linguagem específica.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Você acha que seu background em linguística ajuda nisso?&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Acho que sim, mas muito além disso é o sentimento de que uma  linguagem de programação deve refletir a forma como falamos sobre isso,  então se você quer falar que um objeto &lt;i&gt;está relacionado&lt;/i&gt; (has a relationship) a um determinado atributo, você deve realmente usar o termo “have” para declarar isso no Perl 6. Se ele &lt;i&gt;é um relacionamento &lt;/i&gt;(is a relationship) você usa o “is”.&lt;br /&gt;
&lt;br /&gt;
É uma questão de sensibilidade linguística, então, ao invés de chamar  coisas por outros nomes, usamos a construção que temos no Inglês. É  algo mais natural do que usar palavras funcionais, como acontece em  outras linguagens.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Mas isso muda muito a sintaxe da linguagem? O Perl 6 vai ser muito diferente? E como fica a retrocompatibilidade?&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Há um grande número de diferenças. No geral, a sintaxe do Perl 6 é um  super set do Perl 5. Se você escreve em Perl 5 e isso não funciona  normalmente, vai estar bem perto de funcionar, porque você pode escrever  em Perl 6 dentro do sub set que é muito parecido com Perl 5.&lt;br /&gt;
&lt;br /&gt;
Não é exatamente a mesma coisa, mas o que fizemos no Perl 6 foi  intencionalmente quebrar a retrocompatibilidade. Queremos quebrar tudo o  que for possível, essa foi a ideia inicial. Então, vamos precisar de  alguma estratégia de migração, uma combinação de emulação, interpretação  cooperativa ou tradução, por exemplo. Existem várias formas de fazer  com que os códigos das versões 5 e 6 da linguagem interajam. Teremos aí  um caminho.&lt;br /&gt;
&lt;br /&gt;
Mas quando você começar a ver as novidades que o Perl 5 não suporta  diretamente, então vai começar a usar a sintaxe, mas nós tentamos  adicionar as novidades de uma maneira bem sistemática, de forma que  todas as declarações sejam similares.&lt;br /&gt;
&lt;br /&gt;
O Perl 6 tem muito mais sintaxe a ser declarada que o Perl 5, mas  funciona de uma forma bem diferente. Na versão 5, você pode declarar as  classes, mas tem que usar a palavra &lt;i&gt;package&lt;/i&gt;. Você pode dizer que classes são pacotes, então usa a palavra &lt;i&gt;package&lt;/i&gt;. Isso também acontece no Perl 6, uma classe é um pacote, mas você usa &lt;i&gt;class&lt;/i&gt;.  Então, em vez de ir para a palavra-chave do princípio, tendemos a  distinguir a palavra-chave e então falar que uma classe é um tipo. Isso  torna as coisas mais claras.&lt;br /&gt;
&lt;br /&gt;
Ao mesmo tempo, muitas coisas que você faz ao executar código no Perl  5 parecem declarações no 6, mas na verdade não está rodando um código  por baixo, então quando você roda uma declaração de classe, está na  verdade fazendo uma chamada do protocolo do meta objeto enquanto  compila, e pode até fazer um hook se quiser.&lt;br /&gt;
&lt;br /&gt;
Portanto, você ainda tem toda a flexibilidade, mas nós a escondemos  sob um nível de declaração. Assim, há um mapeamento mais natural entre o  que as pessoas pensam e o que a sintaxe se parece.&lt;br /&gt;
&amp;nbsp; &lt;br /&gt;
Nesse nível, é uma linguagem mais complicada, sintaticamente, mas em  termos de conceito não é, porque exitem os mesmos conceitos.&lt;br /&gt;
&lt;br /&gt;
Então, o estado da arte da programação em Perl 5 tem um conjunto de  conceitos que se encontram muito bem no Perl 6, mas na nova versão eles  estão mais bem elaborados, como em “aqui temos um padrão que você deve  usar, a não ser que você realmente saiba o que está fazendo”.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Qual a importância de Perl hoje, e como você espera que a linguagem esteja no futuro?&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Bom, é claro que eu quero que Perl domine o mundo! Eu adoraria ver  Perl 6 se tornar poderoso o suficiente de forma que o Google algum dia  dissesse “ah, nós não precisamos mais de Python ou algo assim”. Mas é  claro que isso é um objetivo a longo prazo. E provavelmente nunca  chegaremos lá, mas, ainda assim, é bom ter objetivos impossíveis  contanto você entenda que eles são impossíveis. Eu quero continuar  trabalhando neles de qualquer forma. Mesmo que você saiba que o que está  fazendo irá, de alguma forma, falhar, você deve fazer tudo o que puder  para isso. O mundo está cheio de coisas uteis que tiveram grandes falhas  e eu acho que Perl 6 vai ser muito útil!&lt;br /&gt;
&amp;nbsp; &lt;br /&gt;
Mas estamos realmente pensando no longo prazo. Desde que começamos,  pensamos em fazer parte do progresso no início. Mas o Perl 5 estava  reconhecidamente estável e tinha muito apoio da comunidade, o que nos  permitiu gastar um bom tempo no redesenho.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&amp;nbsp;Como é o relacionamento da comunidade de desenvolvedores brasileiros com Perl?&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Os brasileiros são envolvidos com Perl há bastante tempo. Temos muita  gente contribuindo com Perl 5 e 6 no Brasil. E os brasileiros têm a  grande vantagem do fuso horário: vocês estão entre EUA e Europa, o que  facilita muito o trabalho!&lt;br /&gt;
&lt;br /&gt;
Texto de minha autoria, publicado no portal iMasters: &lt;a href=&quot;http://imasters.com.br/linguagens/perl/entrevista-larry-wall/&quot;&gt;http://imasters.com.br/linguagens/perl/entrevista-larry-wall/&lt;/a&gt;</description><link>http://linuxlegal.blogspot.com/2014/04/abaixo-entrevista-que-fiz-com-larry.html</link><author>noreply@blogger.com (Anonymous)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-8291407622317422903</guid><pubDate>Thu, 03 Apr 2014 03:51:00 +0000</pubDate><atom:updated>2014-04-09T19:13:33.647-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">armazenamento</category><category domain="http://www.blogger.com/atom/ns#">backup</category><category domain="http://www.blogger.com/atom/ns#">nuvem</category><category domain="http://www.blogger.com/atom/ns#">saas</category><title>Copy, um ótimo substituto para o UbuntuOne: igual ao Dropbox, só que melhor</title><description>&lt;h2&gt;
Dropbox, o pioneiro&lt;/h2&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
Quase todo mundo já deve ter ouvido falar do Dropbox, o programa que sincroniza facilmente os seus arquivos entre múltiplos dispositivos e com a nuvem. Se você não ouviu, &lt;a href=&quot;https://db.tt/PHtRE2q&quot;&gt;deveria&lt;/a&gt;, pois ele facilita muito o trabalho em grupo e o compartilhamento de arquivos com conhecidos.&lt;br /&gt;
&lt;br /&gt;
Da próxima vez que precisar enviar aquele vídeo de 78Mb para o seu amigo, pense duas vezes antes de anexar o arquivo por email. Enviar pelo Facebook pode ser uma alternativa melhor, mas também está longe do ideal.&lt;br /&gt;
&lt;br /&gt;
Enfim, programas como o Dropbox são utilizados por milhões de pessoas diariamente e fica difícil até mesmo pensar em como vivemos tanto tempo sem isso: facilidade para acessar seus arquivos via web ou de ter a última versão do documento magicamente disponível em todos os seus dispositivos, sejam eles laptops, desktops, smartphones ou tablets.&lt;br /&gt;
&lt;br /&gt;
Contudo, parece que todo mundo quer ter um programa deste tipo: Google Drive, Microsoft OneDrive, SugarSync, Box.com e alternativas livres como o &lt;a href=&quot;http://www.owncloud.org/&quot;&gt;ownCloud&lt;/a&gt;  e o &lt;a href=&quot;http://sparkleshare.org/&quot;&gt;SparkleShare&lt;/a&gt; surgiram para fazer frente à liderança do Dropbox. Até mesmo a brasileira Locaweb possui um serviço semelhante, o &lt;a href=&quot;http://www.locaweb.com.br/produtos/godrive.html&quot;&gt;GoDrive&lt;/a&gt;.&lt;br /&gt;
&lt;h2 id=&quot;ubuntuone,-meu-favorito-(até-agora)&quot;&gt;
&lt;br /&gt;
&lt;/h2&gt;
&lt;h2 id=&quot;ubuntuone,-meu-favorito-(até-agora)&quot;&gt;
UbuntuOne, meu favorito (até agora)&lt;/h2&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
Contudo, um dos serviços que eu mais gostava será extinto em breve. Trata-se do &lt;a href=&quot;http://one.ubuntu.com/&quot;&gt;UbuntuOne&lt;/a&gt;. Os motivos para isso eram simples:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;assim como o Dropbox, ele tem clientes para múltiplas plataformas incluindo Windows, Android, iOS, Mac OS e obviamente, GNU/Linux.&lt;/li&gt;
&lt;li&gt;ele tem a vantagem de fazer streaming das suas músicas salvas no serviço.&lt;/li&gt;
&lt;li&gt;as músicas compradas na loja do Ubuntu One Music Store eram salvas no seu Ubuntu One, ficando assim automaticamente disponíveis sem que isso fosse descontado do seu espaço de armazenamento&lt;/li&gt;
&lt;li&gt;o cliente tem o código fonte aberto.&lt;/li&gt;
&lt;/ul&gt;
Mas além de tudo isso, o que eu mais gostava nele era a possibilidade de escolher quais seriam as pastas do sistema seriam sincronizadas, sem que todas elas estivessem que estar dentro de uma pasta específica, como acontece com o Dropbox.&lt;br /&gt;
&lt;br /&gt;
Contudo, foi anunciado recentemente que o serviço UbuntuOne será &lt;a href=&quot;https://one.ubuntu.com/services/shutdown/&quot;&gt;descontinuado&lt;/a&gt;. As justificativas são de que o mercado se tornou muito competitivo para esse tipo de produto e que para continuar no jogo, a Canonical teria que fazer investimentos pesados na área, coisa que eles parecem não estar dispostos a fazer neste momento.&lt;br /&gt;
&lt;br /&gt;
A notícia boa disso tudo é que eles anunciaram que vão liberar o código fonte do programa. Uma vez que o cliente já é aberto, isso só pode se tratar do server-side, o que seria bastante interessante.&lt;br /&gt;
&lt;h2 id=&quot;copy,-a-alternativa-peso-pesado&quot;&gt;
&lt;br /&gt;
&lt;/h2&gt;
&lt;h2 id=&quot;copy,-a-alternativa-peso-pesado&quot;&gt;
Copy, a alternativa peso-pesado&lt;/h2&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://draftin.com/images/13493?token=usVe-Vnu5iNIICNK6MBH6zgN3zcoJNOSv4RT4xYXp0fe_hl5aBD4yz8zpD6JhJtUypqbTqZUHCbHH56yG86V_cg&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img alt=&quot;Logo do Copy&quot; border=&quot;0&quot; src=&quot;https://draftin.com:443/images/13493?token=usVe-Vnu5iNIICNK6MBH6zgN3zcoJNOSv4RT4xYXp0fe_hl5aBD4yz8zpD6JhJtUypqbTqZUHCbHH56yG86V_cg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
Por coincidência, soube recentemente de um serviço que tem tudo que o Dropbox tem, com uma vantagem muito importante: mais espaço gratuito. Trata-se do &lt;a href=&quot;https://copy.com/?r=lLJ26T&quot;&gt;Copy&lt;/a&gt; da fabricante de discos rígidos Barracuda. Com ele, além do acesso web e de aplicativos para as diversas plataformas, &lt;b&gt;você já começa com 15Gb &lt;/b&gt;logo de cara e &lt;b&gt;recebe mais 5Gb por recomendação&lt;/b&gt;. É três vezes mais do que oferece o Dropbox e no caso de indicações, 10 vezes mais.&lt;br /&gt;
&lt;br /&gt;
Não é a toa que eu passei a usá-lo e estou bastante contente. Vendo essas e &lt;a href=&quot;https://www.copy.com/home/&quot;&gt;outras características&lt;/a&gt;, não é a toa que a Canonical decidiu parar de competir nesse mercado.&lt;br /&gt;
&lt;br /&gt;
Se você ficou curioso e resolver dar uma chance ao programa, &lt;i&gt;utilize esse link &lt;a href=&quot;https://copy.com/?r=lLJ26T&quot;&gt;https://copy.com?r=lLJ26T&lt;/a&gt; e ganhe os 5Gb extras após instalar o programa, de forma a começar já com 20Gb&lt;/i&gt;. Depois, não se esqueça de deixar um comentário aqui e dizer o que achou da experiência.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;Editado 09/04/2014: algo que eu havia deixado de fora e que considero importante, é dizer que o Copy também roda no Raspberry Pi, algo que eu sempre quis que o Dropbox fizesse. &lt;/i&gt;</description><link>http://linuxlegal.blogspot.com/2014/04/copy-um-otimo-substituto-para-o.html</link><author>noreply@blogger.com (Anonymous)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-8951226100308659185</guid><pubDate>Sun, 30 Mar 2014 21:00:00 +0000</pubDate><atom:updated>2014-03-30T18:00:03.630-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">educação</category><category domain="http://www.blogger.com/atom/ns#">programação</category><title>Alfabetização digital: desafios e perspectivas para um mundo em transformação</title><description>&lt;div class=&quot;entry-content apiki-wp-content&quot; itemprop=&quot;articleBody&quot;&gt;
Eben Upton, Rob Mullins, Jack Lang e Alan Mycroft, pesquisadores 
do Laboratório de Computação da Universidade de Cambridge, no Reino 
Unido, estavam preocupados com o declínio que presenciavam ano a ano no 
número e na qualidade das habilidades computacionais dos alunos que 
ingressavam para o primeiro ano do curso de Ciência da Computação. Desde
 os anos 90, quando a maioria dos ingressantes já chegava sabendo 
programação por hobby, o cenário a partir dos anos 2000 começou a ficar 
bem diferente, com o calouro típico tendo apenas alguma experiência em 
web design.&lt;br /&gt;
&lt;br /&gt;
Para eles, alguma coisa havia mudado a forma como as crianças 
interagiam com os computadores. Alguns problemas foram identificados: a 
propagação de lições sobre como usar Word, Excel e a criação de páginas 
web nos currículos das aulas de informática do ensino básico, o fim da 
bolha ponto-com, a ascensão dos computadores pessoais e dos consoles de 
videogame que substituíram as máquinas Amigas, BBC Micros, Spectrum ZX e
 Commodore 64, nas quais a geração anterior havia aprendido a programar.&lt;br /&gt;
&lt;br /&gt;
Com o diagnóstico feito, havia pouca coisa que esse pequeno grupo de 
pesquisadores pudesse fazer para resolver o problema de um currículo 
inadequado nas escolas ou do fim da bolha financeira. Mas eles acharam 
que poderiam agir em relação ao fato de os computadores terem se tornado
 tão caros e obscuros, a ponto de os pais chegarem a proibir 
“experiências” com programação neles. Tentaram então encontrar uma 
plataforma que, da mesma forma como faziam aqueles computadores antigos,
 permitisse um ambiente de programação para experimentações com 
linguagens de programação e que os jovens se divertissem ao mesmo tempo?&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCy9WROKOZySSYmpsRkVc_knjDTKobwjEOY1UyfFCXtV_KxUhbxmhw7yfC44OXxsFqbCZy2fBGPoa0BSau2ZcUsIBnFiSv9eovtD2dtb5QZ-Lrt4uhJ5w0aVTaKJAT7tX0L-z02NSizXI/s1600/desafios.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCy9WROKOZySSYmpsRkVc_knjDTKobwjEOY1UyfFCXtV_KxUhbxmhw7yfC44OXxsFqbCZy2fBGPoa0BSau2ZcUsIBnFiSv9eovtD2dtb5QZ-Lrt4uhJ5w0aVTaKJAT7tX0L-z02NSizXI/s1600/desafios.jpg&quot; height=&quot;254&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;a href=&quot;http://imasters.com.br/wp-content/uploads/2013/11/desafios.jpg&quot;&gt;&lt;br /&gt;&lt;/a&gt;

&lt;br /&gt;
&lt;h2&gt;
Casos e projeto&lt;/h2&gt;
Talvez você nunca tenha ouvido a história acima, mas muito 
provavelmente já ouviu falar do resultado prático que toda essa 
experiência resultou: trata-se das motivações por trás do Raspberry Pi, o
 computador de 35 dólares que anda revolucionando o mundo.&lt;br /&gt;
&lt;br /&gt;
Agora, caso você ainda não tenha ideia do que é o Raspberry Pi, então
 isso só vem confirmar aquilo que eu vou dizer a seguir: estamos 
perdendo a oportunidade de educar nossas crianças e de estar entre os 
países que liderarão a próxima geração mundial.&lt;br /&gt;
&lt;br /&gt;
Lá fora, há uma infinidade de projetos destinados a facilitar os 
primeiros passos dos jovens no universo mágico da programação, universo 
este onde seres humanos são capazes de “dobrar” os computadores, essas 
máquinas capazes de feitos maravilhosos, ao sabor de sua própria 
vontade.&lt;br /&gt;
&lt;br /&gt;
O Media Lab do MIT (Massachusetts Institute of Technology), um dos 
departamentos de pesquisa mais respeitados de uma das instituições mais 
reconhecidas da área, já dedicou alguns projetos nesse sentido. É de lá 
que se originou uma das tentativas mais audaciosas no sentido de levar o
 conhecimento tecnológico às crianças, principalmente àquelas do 
terceiro mundo, que possuem proporcionalmente menos acesso à tecnologia 
do que as que se encontram em países desenvolvidos: o OLPC (ou One 
Laptop Per Child) teve início em 2005 com o objetivo de criar um laptop 
de 100 dólares, e crianças sem acesso algum a computadores poderiam ter o
 seu primeiro contato com a tecnologia.&lt;br /&gt;
&lt;br /&gt;
É de lá também que veio o Scratch, linguagem de programação 
especialmente desenvolvida para crianças, mas, que ao contrário do Logo e
 de outras linguagens que a antecederam, tornou fácil a compreensão da 
lógica computacional e de outros fundamentos essenciais de programação 
sem que os pequenos tenham que se preocupar com detalhes tão comuns em 
outras linguagens como o uso de chaves, colchetes e pontos e vírgulas.&lt;br /&gt;
&lt;h2&gt;
Computadores nas escolas e universidades&lt;/h2&gt;
A introdução dos computadores como ferramentas de auxílio ao ensino 
se deu nas escolas públicas dos EUA ainda em meados dos anos 70, 
ganhando maior força na década seguinte. Aqui, o ensino de computação 
nos currículos escolares ainda engatinha e, quando já existe, reproduz a
 mesma lógica do aprendizado de Word, Excel e jogos (quando muito, jogos
 educacionais), coisas que as crianças de hoje aprendem sozinhas em 
casa.&lt;br /&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjuXQyEWWfmxjk5jDQv94tlccfsqSQ1vCVgxp-KOnTIf79exGHlaq9MNephfH3uomgvmJfR7YavEXkQdOlkD72DfJUdwvJBs9PCRz1GSFmiXc6qSrtkXy-Lcu8Mz9BncJhkc3dfq6ApjnQ/s1600/noticia_jornal_americano.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjuXQyEWWfmxjk5jDQv94tlccfsqSQ1vCVgxp-KOnTIf79exGHlaq9MNephfH3uomgvmJfR7YavEXkQdOlkD72DfJUdwvJBs9PCRz1GSFmiXc6qSrtkXy-Lcu8Mz9BncJhkc3dfq6ApjnQ/s1600/noticia_jornal_americano.png&quot; height=&quot;251&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Artigo
 fac-símile de jornal americano de janeiro de 197, relatando o uso de 
computadores como ferramentas de ensino em escolas públicas. Veja em 
&lt;a href=&quot;http://bit.ly/1ipVRMj&quot;&gt;http://bit.ly/1ipVRMj&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;wp-caption alignnone&quot; id=&quot;attachment_50864&quot; style=&quot;width: 669px;&quot;&gt;
&amp;nbsp;Se antigamente o computador era encarado como uma simples ferramenta 
de auxílio à aprendizagem, hoje já é possível ver valor no ensino da 
própria ferramenta computacional em si, através da introdução de alguma 
linguagem de programação, permitindo uma melhor compreensão do 
funcionamento da máquina e o exercício do gosto pela resolução de 
problemas.&lt;/div&gt;
&lt;br /&gt;
Uma simples busca por livros sobre o tema em lojas online 
estrangeiras e brasileiras ou por artigos acadêmicos evidencia o enorme 
abismo que está se abrindo entre os países que estão adaptando seus 
sistemas educacionais para acompanhar as recentes mudanças ocasionadas 
pelo advento das tecnologias digitais e aqueles que ainda carregam o 
fardo de erros anteriores, como parece ser o nosso caso. Lá fora, é 
fácil ver a proliferação de livros sobre programação para crianças ou 
mesmo de teses que abordam a importância e as metodologias para a 
introdução do ensino de programação para os mais jovens.&lt;br /&gt;
&lt;br /&gt;
Por outro lado, a situação do ensino superior de tecnologia no Brasil
 não é muito diferente e reflete a falta de discussão acerca do tema. De
 um lado, temos o ensino superior privado meramente mercantilista e que 
tem como objetivo final a inclusão do aluno no mercado de trabalho. 
Dessa forma, essas instituições adotam de maneira “cega” as soluções 
empurradas pelas grandes empresas do setor, na esperança de que isso 
ofereça a seus alunos alguma vantagem competitiva quando formados.&lt;br /&gt;
&lt;br /&gt;
No entanto, apesar da inserção profissional ser um objetivo louvável,
 ela deveria ter como foco a capacitação das novas gerações para 
conseguirem criar as novas tecnologias, impulsionando o desenvolvimento 
tecnológico do próprio país como um todo, e não pela nossa eficiência em
 nos tornarmos excelentes consumidores de uma tecnologia que não 
entendemos e que nos é fornecida.&lt;br /&gt;
&lt;br /&gt;
Já nas universidades públicas o problema é outro: currículos 
obsoletos, instalações e laboratórios inadequados e professores 
desatualizados são a fórmula para alunos desestimulados, o que resulta 
em uma elevada taxa de evasão nos cursos de tecnologia, desperdiçando o 
dinheiro público que foi investido na formação desses alunos até o 
momento em que eles abandonam o curso.&lt;br /&gt;
&lt;br /&gt;
O problema se agrava com o acesso às plataformas de ensino à 
distância de grandes universidades dos países desenvolvidos, como 
Coursera, EdX e Udacity, que permitem antever o quanto estamos longe do 
ideal. Essas instituições utilizam o enorme volume de dados gerado pelos
 milhares de estudantes que acessam o conteúdo online para aprimorar 
ainda mais suas técnicas e metodologias de aprendizagem. Da forma 
tradicional, através do ensino presencial, seriam necessárias décadas de
 alunos formados para se obter a mesma quantidade de dados.&lt;br /&gt;
&lt;h2&gt;
Problemas e caminhos para o Brasil&lt;/h2&gt;
O resultado de tudo isso no Brasil é que falta mão de obra no 
mercado. Aliás, o que gera ainda mais preocupação ao nos depararmos com 
esse panorama é que os desafios e as dificuldades estão se acumulando; 
precisamos dar conta das expectativas de inclusão digital e ensino de 
programação nas escolas, ao mesmo tempo em que não resolvemos por 
completo os erros do passado. Estamos, hoje, tentando incluir os 
computadores no ensino ao mesmo tempo em que poucas são as escolas que 
possuem uma biblioteca, por exemplo.&lt;br /&gt;
&lt;br /&gt;
Sem falar na questão da língua inglesa. Ainda hoje o ensino do idioma
 é bastante deficiente nas escolas brasileiras, o que se torna um grande
 entrave para uma maior inserção do país nas comunidades, fóruns e 
comissões mundiais de padronização tecnológica.&lt;br /&gt;
&lt;br /&gt;
Nesse contexto, debates ultrapassados, que já foram superados há 
muitos anos em outros países, como o medo de que os professores sejam 
substituídos por computadores, ainda ecoa nos corredores dos círculos 
educacionais brasileiros pelos simples fato de que não ultrapassamos 
totalmente as barreiras da etapa inicial de inclusão dos computadores no
 cotidiano dos ambientes educacionais. Falta uma política pública para o
 tema, e os poucos exemplos que podemos contabilizar constituem-se de 
iniciativas isoladas, cujo impacto é bastante localizado.&lt;br /&gt;
&lt;br /&gt;
A situação passa a ser mais alarmante quando comparamos a evolução 
que outros países dos BRICs – Rússia, China e Índia, alcançaram nos 
últimos 20 anos. Mesmo na América Latina, parece que estamos atrás de 
nações como Chile, México e até mesmo a Argentina.&lt;br /&gt;
&lt;br /&gt;
Não há fórmula mágica para solucionar os problemas aqui expostos, mas
 parece ser urgente e necessário que os setores organizados da sociedade
 passem a se preocupar com questões desse tipo, incorporando a discussão
 do tema ao seu cotidiano e exercendo pressão sobre os meios políticos 
para que, a partir de uma ação efetiva, políticas públicas bem definidas
 sejam aplicadas ao setor. Só assim poderemos ter alguma chance de 
evitar que o inevitável aconteça e nos tornemos obsoletos, como 386s em 
um mundo Quad-core.&lt;br /&gt;
&lt;br /&gt;
_________________________&lt;br /&gt;
&lt;h2&gt;
Programação para crianças de todas as idades&lt;/h2&gt;
&lt;h3&gt;
Programas Open Source&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.kidsruby.com/&quot; target=&quot;_blank&quot;&gt;KidsRuby&lt;/a&gt;: aprenda a programar usando Ruby;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://scratch.mit.edu/&quot; target=&quot;_blank&quot;&gt;Scratch&lt;/a&gt;: Ferramenta desenvolvida para a criação de pequenas animações e jogos a partir de programação;&lt;a href=&quot;http://scratch.mit.edu/&quot; target=&quot;_blank&quot;&gt;&lt;br /&gt;
&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.squeakland.org/&quot; target=&quot;_blank&quot;&gt;Etoys&lt;/a&gt;: ambiente de programação visual e multimídia baseado no Squeak.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
Aprenda a fazer páginas na web&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Mozilla Thimble: use esse editor online para criar compartilhar seus sites facilmente &lt;a href=&quot;https://webmaker.org/en-US/tools/#thimble&quot; target=&quot;_blank&quot;&gt;https://webmaker.org/en-US/tools/#thimble&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Code Avengers: ferramentas e lições divertidas para crianças, pais e professores &lt;a href=&quot;http://www.codeavengers.com/&quot; target=&quot;_blank&quot;&gt;http://www.codeavengers.com/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
Tutoriais online&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.hackety.com/&quot; target=&quot;_blank&quot;&gt;Hackety Hack&lt;/a&gt;: ambiente gratuito com o objetivo de tornar fácil o ensino de Ruby a iniciantes;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.codecademy.com/&quot; target=&quot;_blank&quot;&gt;Codecademy&lt;/a&gt;: lições práticas de Python, Ruby, HTML, CSS e APIs.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
Faça robôs e apenda um pouco de eletrônica&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.arduino.cc/&quot; target=&quot;_blank&quot;&gt;Arduino&lt;/a&gt;: para qualquer um interessado em criar de objetos à ambientes interativos.&lt;/li&gt;
&lt;/ul&gt;
Artigo publicado no portal iMasters: &lt;a href=&quot;http://imasters.com.br/gerencia-de-ti/tendencias/alfabetizacao-digital-desafios-e-perspectivas-para-um-mundo-em-transformacao/&quot; target=&quot;_blank&quot;&gt;http://imasters.com.br/gerencia-de-ti/tendencias/alfabetizacao-digital-desafios-e-perspectivas-para-um-mundo-em-transformacao/ &lt;/a&gt;&lt;/div&gt;
</description><link>http://linuxlegal.blogspot.com/2014/03/alfabetizacao-digital-desafios-e.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCy9WROKOZySSYmpsRkVc_knjDTKobwjEOY1UyfFCXtV_KxUhbxmhw7yfC44OXxsFqbCZy2fBGPoa0BSau2ZcUsIBnFiSv9eovtD2dtb5QZ-Lrt4uhJ5w0aVTaKJAT7tX0L-z02NSizXI/s72-c/desafios.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-7157004811811943180</guid><pubDate>Thu, 27 Mar 2014 23:31:00 +0000</pubDate><atom:updated>2014-03-27T20:31:00.318-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">internet</category><category domain="http://www.blogger.com/atom/ns#">legislação</category><category domain="http://www.blogger.com/atom/ns#">marco civil</category><title>Marco Civil da Internet: é preciso agir agora</title><description>O Marco Civil foi aprovado na Câmara dos Deputados e agora é preciso a aprovação do texto no Senado, para que o projeto finalmente vá para sanção presidencial.&lt;br /&gt;
&lt;br /&gt;
Abaixo, reproduzo um texto que escrevi para o portal iMaster sobre o assunto e que encontra-se disponível em: &lt;a href=&quot;http://imasters.com.br/gerencia-de-ti/tendencias/marco-civil-da-internet-e-preciso-agir-agora/&quot;&gt;http://imasters.com.br/gerencia-de-ti/tendencias/marco-civil-da-internet-e-preciso-agir-agora/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;entry-content apiki-wp-content&quot; itemprop=&quot;articleBody&quot;&gt;
    Pense e responda: você tem certeza, mas certeza mesmo, de que o 
atual marido da sua ex-mulher (que, por acaso, é um alto diretor da sua 
companhia telefônica) não acessa o seu histórico telefônico para saber 
com que frequência vocês ainda se falam? É muito provável que não. No 
entanto, tudo muda caso você tenha provas, ou mesmo fortes indícios, 
contra o atual marido da sua ex-mulher. Numa hipótese desse tipo, você 
teria plenas condições (e todo o direito) de processar, não apenas os 
indivíduos envolvidos, mas principalmente as empresas para a qual eles 
trabalham.&lt;br /&gt;
&lt;br /&gt;

Empresas de telecomunicação possuem um grande poder, pois detêm a 
guarda de informações relativas à vida privada de toda uma sociedade. 
Por isso mesmo, o serviço prestado por elas é considerado de interesse 
público, o que submete esse mercado a um controle governamental mais 
rígido, afinal, trata-se de um serviço de fundamental importância. E 
elas possuem plenas condições técnicas de monitorar um indivíduo. No 
entanto, a Constituição Brasileira está do lado do cidadão, garantindo a
 ele o direito ao sigilo de sua vida privada. A lei garante que os dados
 que você cria ao utilizar os serviços dessas empresas , são seus, e não
 delas. O fato de você utilizar a infraestrutura das companhias para 
gerar esses dados não muda que os dados são sempre seus.&lt;br /&gt;
&lt;br /&gt;

&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://imasters.com.br/gerencia-de-ti/tendencias/marco-civil-da-internet-e-preciso-agir-agora/attachment/marco-civil-empresarios/&quot; rel=&quot;attachment wp-att-45650&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;marco-civil-empresarios&quot; class=&quot;alignnone size-full wp-image-45650&quot; height=&quot;278&quot; src=&quot;http://imasters.com.br/wp-content/uploads/2013/08/marco-civil-empresarios.jpg&quot; width=&quot;495&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;

&lt;br /&gt;
E mais do que isso, essas empresas têm a obrigação de zelar pelos 
seus dados privados, podendo inclusive ser responsabilizadas caso 
permitam o vazamento de informações fora dos contextos previstos em lei:
 processos e investigações criminais mediante autorização judicial. 
Diante disso, sua empresa de telefonia pode ser processada caso permita 
que seu histórico telefônico vá parar nas mãos de terceiros sem 
autorização para isso.&lt;br /&gt;
&lt;br /&gt;

Parece óbvio, mas nem sempre foi assim. Foi necessário muito tempo 
até que nossa sociedade chegasse a essas conclusões e o direito à 
privacidade se constituísse como fundamental. Basta lembrar que na idade
 média o senhor feudal – e mais tarde o rei – possuía autoridade sobre a
 vida pública e privada de seus servos, e que há pouco mais de 200 anos o
 Senhor de Terras agia da mesma forma com seus escravos. O direito à 
privacidade nasce, portanto, com o surgimento da República: a separação 
entre Estado e Sociedade resulta na separação entre vida pública e 
privada.&lt;br /&gt;
&lt;br /&gt;

Apesar disso, os contornos de questões relativas à privacidade eram 
bem mais delineados no passado. Hoje, as fronteiras não são mais tão 
nítidas como costumavam ser . Até onde vai a privacidade alheia e tem 
início a vida pública? E, quando se trata da Internet, regras como as 
descritas até aqui parecem não ter a mesma validade. Na verdade, a 
lógica parece ser justamente o inverso.&lt;br /&gt;

Como não há leis que garantam a privacidade dos dados digitais dos 
indivíduos frente ao poder das corporações de Internet, estes se 
encontram totalmente desprotegidos a partir do momento em que aceitam 
termos de serviço “leoninos”, ou seja, desiguais, que garantem todo o 
poder para o fornecedor do serviço e nenhuma garantia para quem os 
utiliza.&lt;br /&gt;
&lt;br /&gt;

É exatamente o que fazem empresas como Google, Facebook, Microsoft e 
Apple: ao aceitar os termos de serviço e privacidade, sem os quais não é
 possível fazer uso de Gmail, Facebook, Skype ou iCloud, o cidadão 
expõem sua vida privada ao poder desproporcional dessas corporações. Com
 isso elas podem utilizar todo o conhecimento gerado sobre você de 
maneira quase que indiscriminada. Não importa se elas usam os seus dados
 simplesmente para vender produtos que você supostamente precisa ou para
 espionar a sua vida pessoal e profissional. O problema é que se trata 
unicamente de muito poder nas mãos de uma “pessoa” só. É preciso, no 
mínimo, equilibrar essa balança.&lt;br /&gt;
&lt;br /&gt;

Atualmente, estamos numa encruzilhada: não podemos mais prescindir 
dos serviços online que usufruímos, ao mesmo tempo em que 
deliberadamente entregamos nossos dados a essas empresas (e outras), 
inconscientes do potencial perigo que isso representa.&lt;br /&gt;
&lt;br /&gt;

&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://imasters.com.br/gerencia-de-ti/tendencias/marco-civil-da-internet-e-preciso-agir-agora/attachment/marco-civil/&quot; rel=&quot;attachment wp-att-45649&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;marco-civil&quot; class=&quot;alignnone size-full wp-image-45649&quot; height=&quot;320&quot; src=&quot;http://imasters.com.br/wp-content/uploads/2013/08/marco-civil.jpg&quot; width=&quot;620&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;

&lt;br /&gt;
O problema se agrava quando o Estado, que supostamente deveria 
proteger o cidadão de interesses contrários ao público, acaba se 
aproveitando de todo esse poder de concentração de dados para também ter
 acesso a eles, facilitando, assim, seu controle sobre a sociedade. A 
divulgação da existência do PRISM (o programa de espionagem digital do 
governo americano) confirma que este tipo de ação vai muito além da 
“simples” espionagem política, passando inclusive por interesses 
comerciais.&lt;br /&gt;
&lt;br /&gt;

Indivíduos, e principalmente empresas, deveriam redobrar a atenção 
antes de decidirem fazer uso de serviços de nuvens públicas, pois tudo 
aquilo que parecia ser teoria da conspiração confirmou-se graças ao ato 
de Edward Snowden. Se não fosse por ele, provavelmente ainda estaríamos 
alheios a tudo o que foi revelado.&lt;br /&gt;
&lt;br /&gt;

A solução, nesse caso, seria a aprovação de leis que ampliem o direto
 dos individuais para o campo das redes digitais. O projeto de lei do 
Marco Civil da Internet, em tramitação na Câmara há mais de dois anos, é
 um primeiro passo nesse sentido.&lt;br /&gt;
&lt;br /&gt;

Além disso, é preciso ficar atento para que o projeto, que nasceu de 
uma iniciativa popular, não seja descaracterizado, perdendo assim sua 
função. Hoje, uma alteração no texto original já permite que conteúdo 
seja retirado da rede sem a necessidade de decisão judicial. Essa é uma 
mudança inadmissível porque dá margem a “acusações vazias”, que têm 
intuito apenas de retirar conteúdo que possa desagradar a determinados 
grupos sociais, como detentores de direitos autorais.&lt;br /&gt;
&lt;br /&gt;

Outro ponto polêmico é a garantia de neutralidade da rede. Ela 
determina que provedores de infraestrutura não podem ter controle sobre o
 conteúdo que passa por essa infraestrutura. Se essa garantia cair, 
provedores poderão filtrar os pacotes de dados para criar planos 
diferenciados de acesso de acordo com o conteúdo que você quer consumir.
 Nesse caso, não importará mais quantos “mega” tem o seu plano de acesso
 à Internet, você ainda assim terá que pagar custos adicionais para 
poder fazer uso de serviços como VoIP ou streaming de vídeo de forma 
minimamente decente.&lt;br /&gt;
&lt;br /&gt;

Como se pode ver, os únicos a ganhar com essa decisão são as grandes 
corporações de telecomunicação, pois elas poderão aumentar suas margens 
de lucro sem que para isso seja necessário aumentar a sua infraestrutura
 ou incluir mais gente ao serviço. Tal decisão mudaria drasticamente o 
modelo de negócio vigente até agora, no qual a largura da banda 
determina o que você pode fazer na rede.&lt;br /&gt;
&lt;br /&gt;

Por tudo que foi falado até aqui, é importante que elevemos a 
consciência da população em geral em relação à importância do tema, 
aumentando assim a pressão popular pela aprovação integral do Marco 
Civil da Internet. Portanto, converse com seus amigos e familiares sobre
 o projeto, seja nas rodas de bar ou nas redes sociais.&lt;br /&gt;

   &lt;/div&gt;
</description><link>http://linuxlegal.blogspot.com/2014/03/marco-civil-da-internet-e-preciso-agir.html</link><author>noreply@blogger.com (Anonymous)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-5885997235935226381</guid><pubDate>Thu, 20 Feb 2014 22:53:00 +0000</pubDate><atom:updated>2014-03-06T23:10:32.745-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">criptografia</category><category domain="http://www.blogger.com/atom/ns#">dispositivos móveis</category><category domain="http://www.blogger.com/atom/ns#">mensagens</category><category domain="http://www.blogger.com/atom/ns#">privacidade</category><title>Telegram: muito melhor que o WhatsApp</title><description>&lt;table cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;float: right; text-align: right;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgMAyYh0c9wFlrwJT-mG4mJpo7LvtaKyNJLaiCTkGt_HncLgsxwqEGYyHksXoB3Nwiz84kGFBibQl3wfOTOuiAyEYvrB1HCZnDz6D4jp2SIQnci1YMrmWpGT6GI4kiHWMdViMN7ujCzsU0/s1600/telegram_logo.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgMAyYh0c9wFlrwJT-mG4mJpo7LvtaKyNJLaiCTkGt_HncLgsxwqEGYyHksXoB3Nwiz84kGFBibQl3wfOTOuiAyEYvrB1HCZnDz6D4jp2SIQnci1YMrmWpGT6GI4kiHWMdViMN7ujCzsU0/s1600/telegram_logo.png&quot; height=&quot;200&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Telegram: taking back you privacy&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
Eu nunca entendi muito toda essa hype em torno do &lt;a href=&quot;http://www.whatsapp.com/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;WhatsApp&lt;/a&gt;, uma vez que, do meu ponto de vista, sempre houveram alternativas melhores: &lt;a href=&quot;http://www.viber.com/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Viber&lt;/a&gt; e &lt;a href=&quot;http://www.skype.com/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Skype&lt;/a&gt; sempre ofereceram ligações gratuitas via voip, além das mensagens de texto.&lt;br /&gt;
&lt;br /&gt;
O &lt;a href=&quot;http://www.google.com/hangouts/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Hangouts&lt;/a&gt; do Google, quando chegou recentemente, trouxe uma novidade interessante que foi o acesso web e integração com o Gmail, o que do meu ponto de vista sempre foi muito atraente, pois nunca gostei de ficar &quot;sacando&quot; o celular a cada 30 segundos para responder a uma conversa com alguém. Algumas pessoas viam no Facebook Messanger a mesma utilidade.&lt;br /&gt;
&lt;br /&gt;
Pois eis que chegou o Snowden e suas denúncias relativas à espionagem da NSA e tudo isso se tornou menos atraente: a ideia de governos e indivíduos espionando a sua comunicação pessoal não agrada a ninguém, mesmo àqueles que utilizam esses aplicativos para nada mais do que mandar a lista de compras para o companheiro(a) ao sair do trabalho.&lt;br /&gt;
&lt;br /&gt;
O Facebook nunca foi famoso pelo respeito à privacidade dos seus usuários; e agora que o &lt;a href=&quot;http://blogs.estadao.com.br/link/facebook-compra-whatsapp-por-us-16-bilhoes/&quot; target=&quot;_blank&quot;&gt;WhatsApp foi comprado pelo Facebook&lt;/a&gt;, ele perdeu ainda mais atrativos para mim.&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;
A alternativa&lt;/h2&gt;
&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXCr1oh01Ia4IV025bJhBPyTPWkRszu4xA2E7sq_EbBTq7I4BC36IfJBGknaQQxLe9GKM6II9iRX7K9OsqCxA7J5i10q7mXC-FzmspCHIBuhcTo0JRfhcOqz4KwG5BUVmZ7vXzLl8A2H8/s1600/telegram-screenshot.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;15&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXCr1oh01Ia4IV025bJhBPyTPWkRszu4xA2E7sq_EbBTq7I4BC36IfJBGknaQQxLe9GKM6II9iRX7K9OsqCxA7J5i10q7mXC-FzmspCHIBuhcTo0JRfhcOqz4KwG5BUVmZ7vXzLl8A2H8/s1600/telegram-screenshot.jpg&quot; height=&quot;320&quot; width=&quot;216&quot; /&gt;&lt;/a&gt;Já estou utilizando o &lt;a href=&quot;https://telegram.org/&quot; target=&quot;_blank&quot;&gt;Telegram&lt;/a&gt; há algum tempo e gostando bastante. Ele não recursos de ligação via voip, mas cumpre a função do WhatsApp com diversas vantagens e possui foco na privacidade (até o site é https por padrão):&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;as mensagens são criptografadas de ponta a ponta&lt;/li&gt;
&lt;li&gt;possui recursos semelhantes ao SnapChat, onde você cria uma sala privada e decide depois de quanto tempo o conteúdo vai se destruir: sem histórico, sem vestígios e sem armazenamento nos servidores.&lt;/li&gt;
&lt;li&gt;tem o código aberto e uma API aberta, o que faz com que qualquer um possa implementar um app do Telegram seja em que plataforma for.&lt;/li&gt;
&lt;li&gt;por conta disso, ele possui acesso web e via aplicativo desktop&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
Se tudo isso não bastasse, os autores do projeto criaram um novo protocolo que consegue ser extremamente rápido, apesar da criptografia. Você envia e a mensagem chega rapidinho, mesmo em conexões do tipo EDGE. Os criadores estão tão confiantes na tecnologia, que lançaram um &lt;a href=&quot;https://telegram.org/crypto_contest&quot; target=&quot;_blank&quot;&gt;desafio para&amp;nbsp; pagar 200 mil dólares para qualquer um que conseguir quebrar a segurança do protocolo&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Os builds oficiais do projeto são para &lt;a href=&quot;https://telegram.org/dl/android&quot; target=&quot;_blank&quot;&gt;Android&lt;/a&gt; e &lt;a href=&quot;https://telegram.org/dl/ios&quot; target=&quot;_blank&quot;&gt;iOS&lt;/a&gt;, mas já há implementações para a &lt;a href=&quot;http://zhukov.github.io/webogram&quot; target=&quot;_blank&quot;&gt;Web&lt;/a&gt;, Windows Phone, &lt;a href=&quot;https://chrome.google.com/webstore/detail/telegram-unofficial/clhhggbfdinjmjhajaheehoeibfljjno&quot; target=&quot;_blank&quot;&gt;extensão para Chrome&lt;/a&gt; e até aplicativos de &lt;a href=&quot;https://github.com/vysheng/tg&quot; target=&quot;_blank&quot;&gt;linha de comando&lt;/a&gt; para o Linux. &lt;br /&gt;
&lt;br /&gt;
Tudo isso sem anúncios e com a garantia de que ele nunca será cobrado. Algo que é ainda mais promissor e um grande passo em direção à uma maior privacidade e liberdade é a promessa de que também o código server side do programa será gradualmente liberado, na medida que o desenvolvimento for avançando, pois trata-se ainda de um programa em estágio beta.&lt;br /&gt;
&lt;blockquote class=&quot;twitter-tweet&quot; lang=&quot;en&quot;&gt;
&lt;a href=&quot;https://twitter.com/anka_ar&quot;&gt;@anka_ar&lt;/a&gt; We are planning to gradually open source the server code as well later this year.&lt;br /&gt;
— Telegram Messenger (@telegram) &lt;a href=&quot;https://twitter.com/telegram/statuses/436499912168316928&quot;&gt;February 20, 2014&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; charset=&quot;utf-8&quot; src=&quot;//platform.twitter.com/widgets.js&quot;&gt;&lt;/script&gt;&lt;br /&gt;
Por todas essas razões, eu creio que o Telegram tenha grandes chances de se tornar um protocolo padrão para o envio de mensagens utilizando a Internet e dispositivos móveis. Se você se preocupa com a sua privacidade, deve pensar seriamente em dar uma chance para utilizar o Telegram.&lt;br /&gt;
&lt;br /&gt;
O funcionamento é o mesmo do WhatsApp e após a instalação ele perguntará qual o seu número de telefone e enviará um SMS para confirmar se o número é mesmo seu. Após a confirmação você poderá ver quais pessoas que possui na agenda do seu telefone que já tem o Telegram instalado.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;Se quiser conhecer mais sobre o Telegram, o protocolo criado ou a tecnologia envolvida, acesse o site do Telegram e não deixe de ler a seção FAQ: &lt;a href=&quot;http://www.telegram.org/&quot;&gt;www.telegram.org&lt;/a&gt;. </description><link>http://linuxlegal.blogspot.com/2014/02/telegram-muito-melhor-que-o-whatsapp.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgMAyYh0c9wFlrwJT-mG4mJpo7LvtaKyNJLaiCTkGt_HncLgsxwqEGYyHksXoB3Nwiz84kGFBibQl3wfOTOuiAyEYvrB1HCZnDz6D4jp2SIQnci1YMrmWpGT6GI4kiHWMdViMN7ujCzsU0/s72-c/telegram_logo.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-5038056591636852866</guid><pubDate>Mon, 10 Feb 2014 22:17:00 +0000</pubDate><atom:updated>2014-02-10T20:17:00.781-02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">cedilha</category><category domain="http://www.blogger.com/atom/ns#">Gnome</category><category domain="http://www.blogger.com/atom/ns#">gtk</category><category domain="http://www.blogger.com/atom/ns#">teclado</category><category domain="http://www.blogger.com/atom/ns#">Ubuntu</category><title>Cedilha no Ubuntu 13.10 com teclado americano</title><description>Há um tempo atrás um amigo me relatou que havia instalado o Ubuntu 13.10 numa máquina com teclado americano e que não conseguia fazer cedilha (ç) com ele. Não consegui reproduzir o relatado em nenhuma das minhas máquinas e acabei sugerindo para ele algumas soluções que encontrei na Internet na época do lançamento.&lt;br /&gt;
&lt;br /&gt;
Recentemente, atualizei uma máquina minha que ainda estava na versão 12.04 e tive exatamente o mesmo problema. Só consegui resolvê-lo quando tentei diversas soluções que encontrei dispersas na Internet.&lt;br /&gt;
&lt;br /&gt;
Relato aqui na tentativa de ajudar alguém com o mesmo problema:&lt;br /&gt;
&lt;br /&gt;
Abra os arquivos com o editor de texto da sua preferência&lt;br /&gt;
&lt;code&gt;&lt;br /&gt;
/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules.cache&lt;br /&gt;
/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules.cache&lt;br /&gt;
&lt;/code&gt;&lt;br /&gt;
&lt;b&gt;&lt;i&gt;Obs: se você estiver utilizando uma versão 32 bits do Ubuntu, provavelmente terá que substituir &quot;x86_64&quot; no caminho acima, por &quot;x386&quot;.&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Em ambos os arquivos, altere a linha:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;&quot;cedilla&quot; &quot;Cedilla&quot; &quot;gtk20&quot; &quot;/usr/share/locale&quot; &quot;az:ca:co:fr:gv:oc:pt:sq:tr:wa&quot;&lt;/code&gt;&lt;br /&gt;
para:&lt;br /&gt;
&lt;code&gt;&quot;cedilla&quot; &quot;Cedilla&quot; &quot;gtk20&quot; &quot;/usr/share/locale&quot; &quot;az:ca:co:fr:gv:oc:pt:sq:tr:wa:en&quot;&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
Execute os comandos abaixo no seu terminal:&lt;br /&gt;
&lt;code&gt;&lt;br /&gt;
sudo cp /usr/share/X11/locale/en_US.UTF-8/Compose /usr/share/X11/locale/en_US.UTF-8/Compose.bakup&lt;br /&gt;
sed &#39;s/ć/ç/g&#39; &lt; /usr/share/X11/locale/en_US.UTF-8/Compose | sed &#39;s/Ć/Ç/g&#39; &gt; Compose&lt;br /&gt;
sudo mv Compose /usr/share/X11/locale/en_US.UTF-8/Compose&lt;br /&gt;
&lt;/code&gt;&lt;br /&gt;
force o carregamento dos módulos adicionando as seguintes linhas ao seu arquivo &lt;code&gt;/etc/environment&lt;/code&gt;:&lt;br /&gt;
&lt;code&gt;&lt;br /&gt;
GTK_IM_MODULE=cedilla&lt;br /&gt;
QT_IM_MODULE=cedilla&lt;br /&gt;
&lt;/code&gt;&lt;br /&gt;
reinicie o computador para que as modificações tenham efeito.&lt;br /&gt;
Se tiver sucesso, por favor, deixe um comentário no post relatando a sua experiência.</description><link>http://linuxlegal.blogspot.com/2014/02/cedilha-no-ubuntu-1310-com-teclado.html</link><author>noreply@blogger.com (Anonymous)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-1870699937441305810</guid><pubDate>Thu, 19 Dec 2013 22:30:00 +0000</pubDate><atom:updated>2013-12-20T15:41:05.029-02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">app</category><category domain="http://www.blogger.com/atom/ns#">Gnome</category><category domain="http://www.blogger.com/atom/ns#">música</category><category domain="http://www.blogger.com/atom/ns#">Rdio</category><category domain="http://www.blogger.com/atom/ns#">streaming</category><title>Cliente Open Source Nativo para o Rdio serviço de streaming</title><description>&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrR9pNewllVZmyW6lNnb_9zOg_PXoQzRb63sRnNnCIEtUhAiF2rUKgByZKvLI-twGrgDavByUCMRQBTfYnw_Cmevqeo0tbEEiK4IWr1PJp9ZhA_sbSsCEcjHUQwOFRu3c6y4bkTs4aJzg/s1600/rdio-logo-thumb.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrR9pNewllVZmyW6lNnb_9zOg_PXoQzRb63sRnNnCIEtUhAiF2rUKgByZKvLI-twGrgDavByUCMRQBTfYnw_Cmevqeo0tbEEiK4IWr1PJp9ZhA_sbSsCEcjHUQwOFRu3c6y4bkTs4aJzg/s1600/rdio-logo-thumb.jpg&quot; /&gt;&lt;/a&gt;Música é uma parte essencial na vida de quase todas as pessoas. Muitos serviços de streaming de música &lt;a href=&quot;http://tecnoblog.net/122553/ouvir-musica-online/&quot; target=&quot;_blank&quot;&gt;chegaram ao país esse ano&lt;/a&gt; e resolvi testar o &lt;a href=&quot;http://www.rdio.com/&quot; target=&quot;_blank&quot;&gt;Rdio&lt;/a&gt;, pois uma amiga me falou que assinava o serviço e que estava bastante contente com ele.&lt;br /&gt;
&lt;br /&gt;
Pessoalmente, tenho o meu &lt;a href=&quot;http://linuxlegal.blogspot.com.br/2013/09/ouca-suas-musicas-de-qualquer-lugar-no.html&quot; target=&quot;_blank&quot;&gt;próprio servidor de música&lt;/a&gt;, mas o Rdio oferece um período de teste gratuito e fiquei curiosidade para ver como ele funcionava. Aa facilidade de simplesmente ouvir falar de um determinado artista e já ter acesso imediato às musicas deste é algo bem interessante e que faz toda a diferença para alguém que assina um serviço desse tipo.&lt;br /&gt;
&lt;br /&gt;
A interface web é bastante simples e funcional e você se adapta a ela com facilidade, mas logo senti a vontade de poder controlar a reprodução das músicas através de atalhos do teclado e de ter integração com o o menu do sistema.&lt;br /&gt;
&lt;br /&gt;
Me decepcionei ao entrar no site da Rdio e ver que eles oferecem clientes desktop para Mac e Windows e para as principais plataformas móveis, mas não para GNU/Linux (achei que esse tipo de coisa já tinha acabado...). Isso por si só é algo que faria eu não assinar um produto desse tipo: se quem oferece o produto não se importa com aquilo que eu uso, porque eu deveria me importar com ele?&lt;br /&gt;
&lt;br /&gt;
Mas na busca por um cliente &quot;oficial&quot; encontrei um cliente open source nativo que oferecia boa parte das funções que eu desejava: &lt;a href=&quot;https://github.com/sgringwe/rdio&quot;&gt;https://github.com/sgringwe/rdio&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIqIqDVnPUBIUQ93-vbCgq1fuMN74DoJyTVrDIEZfJASJjs5zwIkspuvV5g7H423YBPE5nLv5hyz_xb-yeEJc875DzgmNuES2DGByM4YoOdRLPRozZmrJD1ums_-NX2kHIJrjqmIt2bwo/s400/rdio_desktop.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;355&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIqIqDVnPUBIUQ93-vbCgq1fuMN74DoJyTVrDIEZfJASJjs5zwIkspuvV5g7H423YBPE5nLv5hyz_xb-yeEJc875DzgmNuES2DGByM4YoOdRLPRozZmrJD1ums_-NX2kHIJrjqmIt2bwo/s640/rdio_desktop.jpg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Cliente Rdio nativo rodando no meu Gnome Shell&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
Com ele pude ter acesso a atalhos de teclado, mudando as faixas através das setas do teclado e pausar as músicas com a barra de espaço. Outro ponto importante foi a integração com o menu do Gnome Shell, o que tornou muito mais fácil a tarefa de baixar o volume e controlar as músicas mesmo sem estar na área de trabalho onde o aplicativo estava aberto (utilizo &lt;a href=&quot;https://extensions.gnome.org/extension/55/media-player-indicator/&quot; target=&quot;_blank&quot;&gt;uma extensão&lt;/a&gt; que provavelmente facilita isso)&lt;br /&gt;
&lt;br /&gt;
O Rdio para Linux é escrito em Vala e além de ter uma interface praticamente idêntica ao cliente &quot;oficial&quot; tem o código fonte disponível, o que me deixa ainda mais a vontade para usá-lo. Parece que isso foi possível pela rica &lt;a href=&quot;http://developer.rdio.com/&quot; target=&quot;_blank&quot;&gt;API&lt;/a&gt; do serviço, que permitiu que o autor do programa fizesse um cliente desktop totalmente livre para o serviço.&lt;br /&gt;
&lt;br /&gt;
Como utilizei apenas a conta de testes do serviço, não pude testar recursos mais avançados como sincronização local e outras opções que o Rdio oferece, uma vez que esse tipo de conta gratuita não parece contar com essas opções. Entretanto, pelas &lt;a href=&quot;https://github.com/sgringwe/rdio/issues/14&quot; target=&quot;_blank&quot;&gt;issues&lt;/a&gt; abertas no Github, eu diria que esses recursos mais avançados não foram implementados, de forma que o aplicativo se restringe às tarefas mais triviais.&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqY_QNsBMKqaMaeShFw_ZtGzPba4AMo91iIoRuoYbOS00WLR0V43kAqcx6zR6kk61wIJUDDYeqKOYuAnGzYuFw7JzD6I3OE0KWJyrsKC1CQJFbYksbLY4KPBMVPTjbBO0YNNOVbkOai38/s1600/rdio_menu.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;305&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqY_QNsBMKqaMaeShFw_ZtGzPba4AMo91iIoRuoYbOS00WLR0V43kAqcx6zR6kk61wIJUDDYeqKOYuAnGzYuFw7JzD6I3OE0KWJyrsKC1CQJFbYksbLY4KPBMVPTjbBO0YNNOVbkOai38/s320/rdio_menu.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Rdio integrado ao menu do Gnome Shell&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
Apesar disso, gostei do que vi e usei. O aplicativo é rápido, fácil, com interface semelhante à nativa e com os recursos que eu desejava.&lt;br /&gt;
&lt;br /&gt;
Para instalar, o programa conta com um &lt;a href=&quot;https://code.launchpad.net/~sgringwe/+archive/rdio&quot; target=&quot;_blank&quot;&gt;PPA&lt;/a&gt; disponibilizado pelo do próprio autor para o Ubuntu.&amp;nbsp; Mas como&amp;nbsp; este não estava disponível para a versão atual do Ubuntu (13.10 Saucy Salamander), compilei o fonte através do Github seguindo a excelente &lt;a href=&quot;https://github.com/sgringwe/rdio/blob/master/INSTALL&quot; target=&quot;_blank&quot;&gt;documentação&lt;/a&gt; do desenvolvedor e não tive problema algum.&lt;br /&gt;
&lt;br /&gt;
Resolvi divulgar aqui pois não vi muita coisa reproduzida na net. Se você assina o serviço da Rdio (ou outro) ou já conhecia o programa, não deixe de escrever as suas impressões nos comentários. :-)&lt;br /&gt;
&lt;br /&gt;</description><link>http://linuxlegal.blogspot.com/2013/12/cliente-open-source-nativo-para-o-rdio.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrR9pNewllVZmyW6lNnb_9zOg_PXoQzRb63sRnNnCIEtUhAiF2rUKgByZKvLI-twGrgDavByUCMRQBTfYnw_Cmevqeo0tbEEiK4IWr1PJp9ZhA_sbSsCEcjHUQwOFRu3c6y4bkTs4aJzg/s72-c/rdio-logo-thumb.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-4213419617022617046</guid><pubDate>Thu, 24 Oct 2013 13:39:00 +0000</pubDate><atom:updated>2013-10-24T11:52:25.673-02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">dados abertos</category><category domain="http://www.blogger.com/atom/ns#">okfn</category><title>Primeira Expedição de Dados no Brasil faz visualizações e análises com base de dados do Walmart</title><description>&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhjoCvonm99p40rLhCKg6SjigWlT-Iua1RgyPaXGODksyGiskrWSRDaaR1yME1PSxJFs2CVmMWyPFHORv7TmNKfBTf5bf2vN8F3ZSW9wfefSsBxWZqJXyVE8qmpBM1LqTwmHR9_IqX75p0/s1600/escola_de_dados-300x300.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;200&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhjoCvonm99p40rLhCKg6SjigWlT-Iua1RgyPaXGODksyGiskrWSRDaaR1yME1PSxJFs2CVmMWyPFHORv7TmNKfBTf5bf2vN8F3ZSW9wfefSsBxWZqJXyVE8qmpBM1LqTwmHR9_IqX75p0/s200/escola_de_dados-300x300.png&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
Participei da 1ª expedição de dados no Brasil. Um projeto da &lt;a href=&quot;http://br.okfn.org/&quot; target=&quot;_blank&quot;&gt;Fundação Open Knowledge&lt;/a&gt;, que acaba de chegar ao país. A experiência foi incrível e só pude dizer que aprendi muito. Convido desde já qualquer um que tenha interesse por dados abertos a participar das próximas edições.&lt;br /&gt;
&lt;br /&gt;
Como o texto do blog da Escola de Dados resume bem tudo que aconteceu, deixo o link aqui:&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&lt;a href=&quot;http://escoladedados.org/2013/10/19/primeira-expedicao-de-dados-no-brasil-faz-visualizacoes-e-analises-com-base-de-dados-do-walmart/#sthash.VKm5h2z0.cmfs&quot;&gt;Primeira Expedição de Dados no Brasil faz visualizações e análises com base de dados do Walmart&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Eu tava ali no fundinho da foto... rss. </description><link>http://linuxlegal.blogspot.com/2013/10/primeira-expedicao-de-dados-no-brasil.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhjoCvonm99p40rLhCKg6SjigWlT-Iua1RgyPaXGODksyGiskrWSRDaaR1yME1PSxJFs2CVmMWyPFHORv7TmNKfBTf5bf2vN8F3ZSW9wfefSsBxWZqJXyVE8qmpBM1LqTwmHR9_IqX75p0/s72-c/escola_de_dados-300x300.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-7505009253543887004</guid><pubDate>Thu, 17 Oct 2013 11:00:00 +0000</pubDate><atom:updated>2013-10-17T18:22:58.660-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">bitcoin</category><title>Como executar um script dentro de uma sessão do GNU Screen</title><description>Ando brincando de minerar &lt;a href=&quot;http://www.bitcoin.org/&quot; target=&quot;_blank&quot;&gt;Bitcoins&lt;/a&gt; (estou fascinado com a tecnologia e preciso me lembrar de escrever algo mais informativo sobre o assunto aqui) e me deparei com um problema.&lt;br /&gt;
&lt;br /&gt;
Ao iniciar o programa de mineração (estou usando o &lt;a href=&quot;http://www.bfgminer.org/&quot; target=&quot;_blank&quot;&gt;bfgminer&lt;/a&gt;) na linha de comando, ele exibe diversas informações e estatísticas relativas ao hardware e ao andamento da sua &quot;mineração&quot;. Acontece que eu gostaria de iniciar o programa  automaticamente durante o boot. Até aí tudo bem, pois isso é facilmente resolvido criando-se um script e agendando sua execução através do cron toda vez que a máquina reiniciar, mas como fazer depois para acessar os dados do programa depois, inclusive via SSH?&lt;br /&gt;
&lt;br /&gt;
Pensando nisso, achei que uma seção do GNU Screen poderia resolver o problema; mas como executar o script dentro de uma seção do Screen automaticamente? A solução para isso eu achei em algum lugar no &lt;a href=&quot;http://stackoverflow.com/questions/6534386/how-can-i-script-gnu-screen-to-start-with-a-program-running-inside-of-it-so-that&quot;&gt;stackoverfow.com&lt;/a&gt;:&lt;br /&gt;
&lt;br /&gt;
Acrescentei as seguintes linhas ao meu script:&lt;br /&gt;
&lt;code&gt;&lt;br /&gt;
screen -dmS nomeDaSessão&lt;br /&gt;
screen -S nomeDaSessão -p 0 -X stuff &quot;comando$(printf \\r)&quot;&lt;br /&gt;
&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
Explicando:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-dmS&lt;/code&gt; inicia uma sessão &quot;detached&quot; do screen com o nome escolhido por você.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-X stuff&lt;/code&gt; executa o comando ou script dentro da sessão especificada pelo atributo &lt;code&gt;-S.&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-p 0&lt;/code&gt; especifica o número do terminal dentro da seção do Screen. Como ela só tem um terminal rodando dentro da seção, este começa no 0.&lt;/li&gt;
&lt;li&gt;Já &lt;code&gt;$(printf \\r)&lt;/code&gt; insere um caractere do tipo &quot;&lt;b&gt;Enter&lt;/b&gt;&quot; logo após o comando ou script passado como atributo para, de fato, entrar com o comando.&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;h2&gt;
Bônus&lt;/h2&gt;
&lt;br /&gt;
&lt;code&gt;Screen -S nomeDaSessão -p 1 comando2&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
executa o &lt;code&gt;comando2&lt;/code&gt; em um novo terminal (o de nº 1) dentro da mesma seção do Screen.&lt;br /&gt;
&lt;br /&gt;
Homepage do GNU Screen: &lt;a href=&quot;https://www.gnu.org/software/screen/&quot;&gt;https://www.gnu.org/software/screen/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;</description><link>http://linuxlegal.blogspot.com/2013/10/como-executar-um-script-dentro-de-uma.html</link><author>noreply@blogger.com (Anonymous)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-3477021274802612520</guid><pubDate>Sat, 05 Oct 2013 04:37:00 +0000</pubDate><atom:updated>2013-10-24T11:43:57.388-02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">cuda</category><category domain="http://www.blogger.com/atom/ns#">litecoin</category><category domain="http://www.blogger.com/atom/ns#">nvidia</category><title>Compilar o CudaMiner para minerar Litecoins no GNU/Linux</title><description>&lt;table cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;float: right; margin-left: 1em; text-align: right;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7K1vwv0w1q8w3D51bjHRAdhmEQr-RcpXUtOHDtYtN7bUYbPDit01aTKjtfkfs6ERA1jjkLEUBWwET-iXfYGEBIumJwuM5GW1Kn7_h1z_JZvSBhcoyLeY5YD6b0X9grvlwXOufDfU3iW8/s1600/litecoin.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;200&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7K1vwv0w1q8w3D51bjHRAdhmEQr-RcpXUtOHDtYtN7bUYbPDit01aTKjtfkfs6ERA1jjkLEUBWwET-iXfYGEBIumJwuM5GW1Kn7_h1z_JZvSBhcoyLeY5YD6b0X9grvlwXOufDfU3iW8/s200/litecoin.png&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Símbolo do Litecoin&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
Ultimamente tenho estado encantado com o conceito e a tecnologia por trás do Bitcoin e das moedas criptográficas. Espero poder escrever mais sobre isso neste blog. Se você não sabe o que é &lt;a href=&quot;http://www.bitcoin.org/&quot; target=&quot;_blank&quot;&gt;Bitcoin&lt;/a&gt; e muito menos &lt;a href=&quot;http://www.litecoin.org/&quot; target=&quot;_blank&quot;&gt;Litecoin&lt;/a&gt;, clique nos respectivos links. Sugiro começar pelo Bitcoin, já que ela foi a primeira moeda virtual que inspirou todas as outras que vieram em seguida, inclusive o Litecoin.&lt;br /&gt;
&lt;br /&gt;
Estava me informando mais sobre como minerar liteconis e li em algum lugar que&amp;nbsp; o melhor minerador de litecoins para GPUs Nvidia (eu tenho uma GTS 250, já um pouco velhinha...) é hoje o CudaMiner.&lt;br /&gt;
&lt;br /&gt;
Resolvi baixar o programa no GitHub e instalá-lo, para um teste breve. No entanto, o programa não tinha nenhuma documentação de como compilá-lo. Como é horrível tentar compilar um programa que não te informa o mínimo sobre as dependências necessárias e como atingir este objetivo, resolvi documentar aqui o processo para outras pessoas (e eu mesmo) que por ventura venham a tentar fazer o mesmo.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://github.com/cbuchner1/CudaMiner&quot; target=&quot;_blank&quot;&gt;Baixe&lt;/a&gt; o programa do GitHub:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;$ git clone https://github.com/cbuchner1/CudaMiner.git&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
O grande problema, neste caso, foi encontrar as dependência que no caso eram os pacotes de desenvolvimento da tecnologia CUDA. Na atual versão do Ubuntu (13.04), eles são instaláveis através de:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;$ sudo apt-get install nvidia-cuda-dev nvidia-cuda-toolkit&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
Feito isso tudo ficará mais fácil :-) Basta tornar o script configure executável e rodá-lo.&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;$ chmod +x configure&lt;/code&gt;&lt;br /&gt;
&lt;code&gt;$ ./configure &lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
Compile com &lt;code&gt;make&lt;/code&gt;. Isso irá gerar um executável &lt;code&gt;cudaminer&lt;/code&gt; na pasta, que pode ou não ser colocado no diretório padrão através de:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;# make install&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
Nos meus testes, o bfgminer estava alcançando uma taxa de 33-36 kH/s e o cudaminer elevou esse patamar para 44-47 kH/s.&lt;br /&gt;
&lt;br /&gt;
Se mais alguém tentar fizer o mesmo, por favor, deixe seus números nos comentários abaixo. </description><link>http://linuxlegal.blogspot.com/2013/10/compilar-o-cudaminer-para-minerar.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7K1vwv0w1q8w3D51bjHRAdhmEQr-RcpXUtOHDtYtN7bUYbPDit01aTKjtfkfs6ERA1jjkLEUBWwET-iXfYGEBIumJwuM5GW1Kn7_h1z_JZvSBhcoyLeY5YD6b0X9grvlwXOufDfU3iW8/s72-c/litecoin.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-6439402538065732089</guid><pubDate>Sat, 07 Sep 2013 00:11:00 +0000</pubDate><atom:updated>2014-05-06T10:39:46.493-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">java</category><category domain="http://www.blogger.com/atom/ns#">música</category><category domain="http://www.blogger.com/atom/ns#">raspberry</category><category domain="http://www.blogger.com/atom/ns#">servidor</category><category domain="http://www.blogger.com/atom/ns#">subsonic</category><title>Ouça suas músicas de qualquer lugar do mundo com Subsonic e Raspberry Pi</title><description>Nesse artigo vou documentar como instalar um servidor Subsonic em um&amp;nbsp; Raspberry Pi para poder fazer o backup de suas músicas e de quebra, poder ouvi-las de qualquer lugar que tenha uma conexão de Intenet, inclusive no seu celular. É como ter seu próprio Last.FM, Pandora ou Spotify.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZ4yfeA35GishEMsuvXsJZkJpZiQcPbQMeXzNsZGlFAiQIFuDhq2Wj2NmhFWO36-sOSWn_dreLrbj3yEG1YOyCry8vNI2JogOOWnrYIsZVvqHBxLTBTEshGHOeodManOrQZaiK0wBQLdk/s1600/%C3%8Dndice.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;200&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZ4yfeA35GishEMsuvXsJZkJpZiQcPbQMeXzNsZGlFAiQIFuDhq2Wj2NmhFWO36-sOSWn_dreLrbj3yEG1YOyCry8vNI2JogOOWnrYIsZVvqHBxLTBTEshGHOeodManOrQZaiK0wBQLdk/s200/%C3%8Dndice.jpeg&quot; width=&quot;158&quot; /&gt;&lt;/a&gt;&lt;/div&gt;Muito provavelmente você já ouviu falar do &lt;a href=&quot;http://raspberrypi.org/&quot; target=&quot;_blank&quot;&gt;Raspberry Pi&lt;/a&gt;, um computador com processador ARM (o mesmo utilizado nos celulares) do tamanho de um cartão de crédito e com baixo consumo de energia. O Raspberry Pi custa apenas 35 dólares e foi criado por uma fundação ligada a Universidade de Cambridge, no Reino Unido, para incentivar o conhecimento relativo à programação para crianças e jovens. Pela versatilidade e baixo custo, o computadorzinho tem sido utilizado para muitos outros fins além deste.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyUTMJRF0ee3Y6knOAPewDGnooJ7WFXPnD4GRPYKuHMP5sRl9fZdLIp2TyA_hg1Ng4HxLKaFRkADrsJXfPXJbcywFzmLfMYG-P1T3zrpifoIxySzTfrCF7oqONqTsIKoVJzwPCHmuq_kA/s1600/subsonic.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;200&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyUTMJRF0ee3Y6knOAPewDGnooJ7WFXPnD4GRPYKuHMP5sRl9fZdLIp2TyA_hg1Ng4HxLKaFRkADrsJXfPXJbcywFzmLfMYG-P1T3zrpifoIxySzTfrCF7oqONqTsIKoVJzwPCHmuq_kA/s200/subsonic.png&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;/div&gt;Já o Subsonic é um software servidor de som e gerenciador de músicas escrito em Java, que por ser software livre (GPL 2), pode ser utilizado livremente. É com ele que iremos acessar as nossas músicas pela Internet. O Subsonic é muito rico em recursos sendo inclusive capaz de realizar transcoding (conversão de formato durante o streaming). Para saber mais, visite o &lt;a href=&quot;http://subsonic.org/&quot; target=&quot;_blank&quot;&gt;site do projeto&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Conheci o programa quando fui editor da extinta Ubuntu Magazine e tive que instalar o programa para tirar os screenshots em Português, pois o artigo estava originalmente em inglês. Fiquei com muita vontade de ter o aplicativo rodando, mas a necessidade de um servidor físico dificultava um pouco as coisas.&lt;br /&gt;
&lt;br /&gt;
Contudo, com o surgimento do Raspberry Pi, tudo ficou mais fácil e após brincar um pouquinho com ele, instalando o XBMC e um servidor web, resolvi dar uma função definitiva para o computadorzinho como o responsável pelo backup dos meus arquivos e meu servidor de música.&lt;br /&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj74QlxMUBoZtbKjiq4SjhIX433oCV1LNtIn7oGgPAHwpeE2Ebrl_GL1DwPeMorV0gk7zWYEgX6go__2_HpgSaFFE4WY_6bISx2LWyVVyPi9d87eOp9n6kcahpIBBDRJBLgxrw6IpTGE9I/s1600/subsonic.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;270&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj74QlxMUBoZtbKjiq4SjhIX433oCV1LNtIn7oGgPAHwpeE2Ebrl_GL1DwPeMorV0gk7zWYEgX6go__2_HpgSaFFE4WY_6bISx2LWyVVyPi9d87eOp9n6kcahpIBBDRJBLgxrw6IpTGE9I/s400/subsonic.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Tela da interface web do Subsonic&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;
&lt;h2&gt;Ingredientes&lt;/h2&gt;&lt;br /&gt;
Você vai precisar de: &lt;br /&gt;
&lt;ul&gt;&lt;li&gt;1 Raspberry Pi completo: com fonte e cartão de memória.&lt;/li&gt;
&lt;li&gt;1 HD portátil (opcional)&lt;/li&gt;
&lt;li&gt;1 Hub USB com alimentação (opcional) &lt;/li&gt;
&lt;li&gt;intimidade com o terminal e SSH é altamente recomendável.&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
Se a sua biblioteca de músicas  couber em um cartão SD, muito bom; mas caso necessite ligar um HD portátil, será preciso adquirir um hub USB alimentado, ou seja, com fonte, ou um HD que já inclua cabo de alimentação. Isso porque a alimentação de 5V do Raspberry Pi não dá conta de fornecer energia para um dispositivo como o HD e assim que você conectá-lo a saída USB o sistema será desligado.&lt;br /&gt;
&lt;br /&gt;
&lt;table cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;float: right; text-align: right;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhxM68vIKrTJYQX3rnVAk0ZyDdbT_j9WRli2-CbsVkZ9ftofE8yKBWKbTkrj8Zt50RpkDWLDp1xskyRq9UEFXJNfmQBQ-5W2B5IdDRn9L1NqdDLMjak0gxLJrZUfIYBjZheRIHjfcKIBD8/s1600/raspberrypi.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;213&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhxM68vIKrTJYQX3rnVAk0ZyDdbT_j9WRli2-CbsVkZ9ftofE8yKBWKbTkrj8Zt50RpkDWLDp1xskyRq9UEFXJNfmQBQ-5W2B5IdDRn9L1NqdDLMjak0gxLJrZUfIYBjZheRIHjfcKIBD8/s320/raspberrypi.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;RaspberryPi rev. B&lt;/td&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;Não vou descrever aqui como instalar o sistema operacional no Raspberry, pois há muita documentação sobre &lt;a href=&quot;http://elinux.org/RPi_Easy_SD_Card_Setup#Using_command_line_tools_.281.29&quot; target=&quot;_blank&quot;&gt;isso&lt;/a&gt;. Escolhi o Raspbian por estar mais habituado à distribuições Debian e por ser uma ótima escolha para um servidor.&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;Instalando o Java 8&lt;/h2&gt;&lt;br /&gt;
Na primeira instalação que fiz, instalei o OpenJDK 7 na versão soft-float do Raspbian a partir dos repositórios e tudo funcionou muito bem. O único problema ocorria caso fosse necessário realizar transcoding para o streaming. Nesse momento a música ficava picotada, pois o Raspberry não dava conta de processar tudo ao mesmo tempo.&lt;br /&gt;
&lt;br /&gt;
Isso acontecia porque o Java 7 não oferece suporte ao ABI (application binary interface) do ARMv6 e para instalá-lo era preciso utilizar uma versão do sistema operacional que não fazia uso dos registradores de ponto flutuante, o que diminuia muito o desempenho do sistema. Uma explicação mais detalhada pode ser encontrada na &lt;a href=&quot;http://www.raspbian.org/RaspbianFAQ#What_do_you_mean_by_.22soft_float_ABI.22_and_.22hard_float_ABI.22.3F&quot; target=&quot;_blank&quot;&gt;wiki do Raspbian&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Contudo, eu li que a versão 8 do Java oferecia esse suporte e poderia ser instalada em uma versão hard-float do sistema e resolvi instalar tudo de novo. O resultado foi muito bom, pois tanto o consumo de memória, quanto de CPU se reduziram muito, sendo que os problemas durante o transcoding também foram sanados.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;Apesar do OpenJDK ser a implementação Java padrão a partir da versão 7, não consegui achar uma forma de baixar uma versão 8 dele e acabei baixando a versão da Oracle a partir deste &lt;a href=&quot;http://jdk8.java.net/download.html&quot; target=&quot;_blank&quot;&gt;link&lt;/a&gt;. É preciso baixar em um outro computador e transferir via sftp, por exemplo, pois há a necessidade de aceitar a licença antes.&lt;br /&gt;
&lt;br /&gt;
Uma vez baixado o pacote tar para a versão ARM, faça a instalação descompactando o arquivo baixado com o tar no diretório /opt com o comando:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;sudo tar xvfz arquivobaixado.tar.gz -C /opt&lt;/code&gt;&lt;br /&gt;
&lt;code&gt;&amp;nbsp;&lt;/code&gt; &lt;br /&gt;
Em seguida, crie o link simbólico para o diretório descompactado:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;sudo update-alternatives --install &quot;/usr/bin/java&quot; &quot;java&quot; &quot;/opt/jdk1.8.0/bin/java&quot; 1&lt;/code&gt;&lt;br /&gt;
&lt;code&gt;sudo update-alternatives --set java /opt/jdk1.8.0/bin/java &lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
e com o editor de texto da sua preferência, abra o arquivo &lt;code&gt;/etc/environment&lt;/code&gt; e crie a seguinte variável de ambiente:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;JAVA_HOME=&quot;/opt/jdk1.8.0&quot;&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
e em seu arquivo &lt;code&gt;~/.bashrc&lt;/code&gt; insira:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;export PATH=$PATH:$JAVA_HOME/bin&lt;/code&gt; &lt;br /&gt;
&lt;br /&gt;
Dê um reboot no seu Raspberry e teste se está tudo funcionando ao digitar&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;java -version&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
no terminal. Na sequência iremos instalar o Subsonic&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;Instalação do Subsonic&lt;/h2&gt;Para instalar o Subsonic, basta baixar o pacote para Debian/Ubuntu da seção Download do site do &lt;a href=&quot;http://subsonic.org/&quot;&gt;subsonic.org&lt;/a&gt; e instalar com&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;sudo dpkg -i pacote.deb&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
Por padrão o Subsonic roda como usuário root, porém, por questões de segurança, isso é altamente desaconselhável. Vamos criar um usuário seguro para a execução do aplicativo e adicioná-lo ao grupo audio:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt; sudo adduser --no-create-home --disabled-password --disabled-login subsonic-user&lt;br /&gt;
sudo adduser subsonic-user audio&lt;/code&gt; &lt;br /&gt;
&lt;br /&gt;
Agora precisamos atualizar as configurações do programa para utilizar esse usuário.&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;sudo vi /etc/default/subsonic&lt;/code&gt; e mudamos a última linha para:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;SUBSONIC_USER=subsonic-user&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
e reiniciamos o serviço digitando:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;sudo /etc/init.d/subsonic restart&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
Após fazer isso podemos acessar a interface web do aplicativo na porta 4040.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg5gWri2rw2gNzkk9jrMDMtgv4bTHlJKTjnomVb5TuZehsrjEh-VKuykoLbldTO_pTZP9qMSIGihU78q6VK5hX4TjXXsxCWnvftNVVvzOKPN9TrqmUWMuN91PWviwYNl_vjisTcuiUSiXE/s1600/subsonic_first_exec.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;147&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg5gWri2rw2gNzkk9jrMDMtgv4bTHlJKTjnomVb5TuZehsrjEh-VKuykoLbldTO_pTZP9qMSIGihU78q6VK5hX4TjXXsxCWnvftNVVvzOKPN9TrqmUWMuN91PWviwYNl_vjisTcuiUSiXE/s320/subsonic_first_exec.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;Como você pode ver pelo aviso emitido pelo programa, é altamente recomendável que você troque a senha padrão de admin já no primeiro acesso.&lt;br /&gt;
&lt;br /&gt;
Além disso, eu aconselho que você crie um outro usuário sem poderes administrativos para acessar o programa normalmente, reservando o acesso como admin exclusivamente para fins de manutenção. Neste caso, mesmo que a sua senha seja comprometida, não há a possibilidade de que um eventual invasor possa fazer muitos estragos.&lt;br /&gt;
&lt;br /&gt;
O programa é muito fácil de usar e você pode encontrar mais informações sobre as configurações iniciais na &lt;a href=&quot;http://www.subsonic.org/pages/getting-started.jsp&quot; target=&quot;_blank&quot;&gt;documentação&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Para que o transcoding funcione normalmente, instale o ffmpeg e o lame, pois a versão que vêm embutida no pacote de instalação do Subsonic não é compatível com a arquitetura ARM.&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;sudo&amp;nbsp;apt-get install ffmpeg lame&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;&lt;/code&gt;&lt;code&gt;sudo&amp;nbsp;ln -fs&amp;nbsp;/usr/bin/ffmpeg&amp;nbsp;/var/subsonic/transcode&lt;br /&gt;
sudo&amp;nbsp;ln -fs&amp;nbsp;/usr/bin/lame /var/subsonic/transcode&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;Acesso móvel&lt;/h2&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPXfrkEa9tXX6GRUrlfhwsIxAdOAydIhOZh5-z4tAIzSmCK6uZ-doLZ0tkovWk2Twr9ydyHgAiS-ra_u5S7CYgwUDCANDgS-WpOIH84QbW91Vz-97AL6tMaz_BHw7qzXD6IMPYARst79A/s1600/subsonic_android.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPXfrkEa9tXX6GRUrlfhwsIxAdOAydIhOZh5-z4tAIzSmCK6uZ-doLZ0tkovWk2Twr9ydyHgAiS-ra_u5S7CYgwUDCANDgS-WpOIH84QbW91Vz-97AL6tMaz_BHw7qzXD6IMPYARst79A/s1600/subsonic_android.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;Após a instalação você tem acesso por 30 dias a recursos acesso em  dispositivos móveis, compartilhamento em redes sociais, seu próprio  endereço DNS como por exemplo &lt;i&gt;seunome.subsonic.org&lt;/i&gt;. Depois disso é preciso pagar um plano &lt;a href=&quot;http://www.subsonic.org/pages/premium.jsp&quot; target=&quot;_blank&quot;&gt;premium&lt;/a&gt;,  que é bastante razoável e justo uma vez que oferece muitas vantagens ao  mesmo tempo que estimula o desenvolvedor a continuar evoluindo o  software. &lt;br /&gt;
&lt;br /&gt;
Para ouvir as suas músicas através do celular basta instalar os &lt;a href=&quot;http://www.subsonic.org/pages/apps.jsp&quot; target=&quot;_blank&quot;&gt;aplicativos disponíveis&lt;/a&gt; na loja de aplicativos do seu smartphone. Há versões para &lt;a href=&quot;https://play.google.com/store/apps/details?id=net.sourceforge.subsonic.androidapp&quot; target=&quot;_blank&quot;&gt;Android&lt;/a&gt;, iPhone e Windows Phone.&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;&amp;nbsp;&lt;/h2&gt;&lt;h2&gt;&amp;nbsp;&lt;/h2&gt;&lt;h2&gt;Bônus&lt;/h2&gt;&lt;br /&gt;
Como bônus, há algumas questões importantes que devem ser configuradas de maneira a aumentar a segurança e evitar problemas. Apesar de ser pequeno e possuir pouco poder computacional, o Raspberry Pi estará rodando um serviço que está exposto a toda Internet e caso sua segurança seja comprometida, um eventual invasor terá uma porta de entrada para a sua rede local.&lt;br /&gt;
&lt;br /&gt;
A primeira providência é a configuração das permissões de arquivo das pastas onde estarão as suas músicas.&lt;br /&gt;
&lt;br /&gt;
Certifique-se que o usuário subsonic-user tem acesso a elas, caso contrário não será possível adicioná-las à biblioteca do Subsonic. No meu caso, configurei toda a pasta com a músicas para pertencerem ao usuário pi e ao grupo audio do qual o subsonic-user faz parte.&lt;br /&gt;
&lt;br /&gt;
Para aumentar a segurança da sua instalação, eu sugiro que você configure a montagem de seu HD portátil de forma a impedir a execução de executáveis maliciosos por parte de um eventual invasor. No meu caso acrescentei as seguinte linha ao meu arquivo &lt;code&gt;/etc/fstab&lt;/code&gt;:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;/dev/sda1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /media/cartola&amp;nbsp; ext4&amp;nbsp;&amp;nbsp;&amp;nbsp; defaults,noexec,nosuid,nodev&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
Espero que você tenham gostado. Deixe seu comentário abaixo.&lt;br /&gt;
&lt;br /&gt;
No próximo post eu escreverei sobre como configurar um servidor rsync para sincronizar as músicas de seu computador principal com o Raspberry Pi. </description><link>http://linuxlegal.blogspot.com/2013/09/ouca-suas-musicas-de-qualquer-lugar-no.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZ4yfeA35GishEMsuvXsJZkJpZiQcPbQMeXzNsZGlFAiQIFuDhq2Wj2NmhFWO36-sOSWn_dreLrbj3yEG1YOyCry8vNI2JogOOWnrYIsZVvqHBxLTBTEshGHOeodManOrQZaiK0wBQLdk/s72-c/%C3%8Dndice.jpeg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-6608982991112738554</guid><pubDate>Thu, 18 Jul 2013 14:01:00 +0000</pubDate><atom:updated>2013-07-18T11:03:41.469-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">7masters</category><category domain="http://www.blogger.com/atom/ns#">imasters</category><category domain="http://www.blogger.com/atom/ns#">palestra</category><category domain="http://www.blogger.com/atom/ns#">video</category><category domain="http://www.blogger.com/atom/ns#">web</category><category domain="http://www.blogger.com/atom/ns#">webmakers</category><title>Vídeo da palestra &quot;Para que serve uma web aberta?&quot;</title><description>Conforme eu tinha avisado no &lt;a href=&quot;http://linuxlegal.blogspot.com.br/2013/06/para-que-serve-uma-web-aberta.html&quot;&gt;post anterior&lt;/a&gt;, postaria aqui o vídeo da palestra relâmpago que dei no 7 Masters. O vídeo pode ser conferido abaixo. Visite também a página do &lt;a href=&quot;http://setemasters.imasters.com.br/&quot; target=&quot;_blank&quot;&gt;7 Masters&lt;/a&gt; para visualizar as outras seis palestras que foram apresentadas no dia, durante a edição sobre &lt;a href=&quot;http://setemasters.imasters.com.br/edicoes/openweb/&quot; target=&quot;_blank&quot;&gt;Open Web&lt;/a&gt;&amp;nbsp;e os vídeos das edições anteriores. Creio que vale muito a pena. Gostaria bastante de saber o que as pessoas acharam, por isso, deixe o seu comentário neste post.

&lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;315&quot; mozallowfullscreen=&quot;&quot; scrolling=&quot;no&quot; src=&quot;http://embed.videolog.tv/v/index.php?id_video=984478&amp;amp;related=&amp;amp;hd=&amp;amp;color1=ffffcc&amp;amp;color2=ffffcc&amp;amp;color3=ff9900&amp;amp;slideshow=true&amp;amp;config_url=&amp;amp;&quot; webkitallowfullscreen=&quot;&quot; width=&quot;560&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.videolog.tv/video.php?id=984478&quot; target=&quot;_blank&quot;&gt;Palestras 7Masters Open Web | Pra que serve web aberta com Kemel Zaidan&lt;/a&gt; por &lt;a href=&quot;http://www.videolog.tv/imasters&quot; target=&quot;_blank&quot;&gt;imasters&lt;/a&gt;  no &lt;a href=&quot;http://www.videolog.tv/&quot; target=&quot;_blank&quot;&gt;Videolog.tv&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
PS: infelizmente o produtora não sincronizou direito os slides com o vídeo... :-(</description><link>http://linuxlegal.blogspot.com/2013/07/video-da-palestra-para-que-serve-uma.html</link><author>noreply@blogger.com (Anonymous)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-9002698348944003334</guid><pubDate>Thu, 06 Jun 2013 18:31:00 +0000</pubDate><atom:updated>2013-06-06T15:36:06.445-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">internet</category><category domain="http://www.blogger.com/atom/ns#">web</category><category domain="http://www.blogger.com/atom/ns#">webmakers</category><title>Para que serve uma web aberta?</title><description>No último dia 29 de junho, fui convidado para falar no evento &lt;a href=&quot;http://www.7masters.com.br/&quot;&gt;7 Masters&lt;/a&gt;&amp;nbsp;sobre Open Web, promovido pelo portal &lt;a href=&quot;http://www.imasters.com.br/&quot;&gt;iMasters&lt;/a&gt;. A proposta é convidar 7 pessoas que fazem uma palestra rápida de 7 minutos (ou um pouco mais, no meu caso) sobre um determinado tema, abordando assim 7 visões sobre um determinado assunto. Como as palestras são rápidas, assistir aos vídeo não cansa tanto (a minha lista de &quot;assistir mais tarde&quot; do YouTube que o diga...)&lt;br /&gt;
&lt;br /&gt;
Esse é um assunto do qual eu nunca tinha me prontificado a falar, mas aceitei o convite com gosto, pois o tema é pra lá de interessante. Pensei primeiro em falar sobre o projeto &lt;a href=&quot;https://webmaker.org/&quot;&gt;Webmakers&lt;/a&gt;, da Mozilla, que tem a intenção de levar o conhecimento sobre uma internet aberta para um público não técnico.&lt;br /&gt;
&lt;br /&gt;
Mais tarde achei que não daria para abordar esse assunto em tão pouco tempo e resolvi falar sobre o porque considero importante termos uma internet aberta e projetos como o Webmakers.&lt;br /&gt;
&lt;br /&gt;
Gostei muito da oportunidade de falar do assunto e surgiram diversas ideias para melhorar a palestra. Os slides da palestra (feitos em HTML5 e &lt;a href=&quot;http://lab.hakim.se/reveal-js/&quot;&gt;reveal.js&lt;/a&gt;) não dizem muito sobre a apresentação, mas a título de curiosidade, colocarei ele aqui para quem quiser ter uma ideia. Espero poder ter outra oportunidade de apresentar o tema. Quando o vídeo sair, tento blogar ele aqui.&lt;br /&gt;
&lt;br /&gt;
&lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;420&quot; mozallowfullscreen=&quot;&quot; scrolling=&quot;no&quot; src=&quot;http://slid.es/kemelzaidan/webaberta/embed&quot; webkitallowfullscreen=&quot;&quot; width=&quot;576&quot;&gt;&lt;/iframe&gt;
</description><link>http://linuxlegal.blogspot.com/2013/06/para-que-serve-uma-web-aberta.html</link><author>noreply@blogger.com (Anonymous)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-4809583571125191597</guid><pubDate>Thu, 28 Feb 2013 23:09:00 +0000</pubDate><atom:updated>2013-02-28T20:20:34.565-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">comunicado</category><category domain="http://www.blogger.com/atom/ns#">Ubuntu-SP</category><title>Mudanças na coordenação do time do Ubuntu-br-sp</title><description>&lt;span style=&quot;background-color: white; color: #222222; font-family: arial; font-size: x-small;&quot;&gt;Olá a todos,&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;color: #222222; font-family: arial; font-size: small;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;color: #222222; font-family: arial; font-size: small;&quot;&gt;
por alguns anos levei a coordenação do time à frente e contei com a participação de muitos membros relevantes para isso. Alguns deles permanecem na comunidade, mas a maior parte já não podem estar mais tão presentes, por inúmeras impossibilidades que a vida prática nos impõem em alguns momentos.&lt;/div&gt;
&lt;div style=&quot;color: #222222; font-family: arial; font-size: small;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;color: #222222; font-family: arial; font-size: small;&quot;&gt;
Como alguns já devem saber, felizmente chegou a minha hora de também deixar com que aqueles em melhores condições tomem a frente da comunidade. Como vocês devem ter percebido, estive muito ocupado pessoal e profissionalmente, o que me reservou pouco (ou quase nenhum) tempo livre para me dedicar a comunidade do Ubuntu-SP, coisa que sempre fiz com enorme prazer.&lt;/div&gt;
&lt;div style=&quot;color: #222222; font-family: arial; font-size: small;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;color: #222222; font-family: arial; font-size: small;&quot;&gt;
Foram anos muito bons, de muito aprendizado e de muitas conquistas, os quais guardarei para sempre no meu coração. Aqueles que me conhecem sabem que não exagero ao dizer que o software livre foi responsável por mudar a minha vida e esta comunidade foi parte integrante disso. Me coloco à disposição para colaborar com o que for preciso junto a nova coordenação e aproveito desde já para desejar boa sorte aos novos coordenadores.&lt;/div&gt;
&lt;div style=&quot;color: #222222; font-family: arial; font-size: small;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;color: #222222; font-family: arial; font-size: small;&quot;&gt;
Espero que vocês tenham a fibra e a persistência necessária para agir nos inúmeros momentos em que elas se fazem necessárias, os quais, eu garanto, são muito mais frequentes do que a gente pode imaginar. Por favor, honrem a história dessa comunidade! É a única coisa que eu vos peço.&lt;/div&gt;
&lt;div style=&quot;color: #222222; font-family: arial; font-size: small;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;color: #222222; font-family: arial; font-size: small;&quot;&gt;
Continuarei sempre sendo um membro ativo da comunidade brasileira do Ubuntu e colaborando com ela. Se precisarem de mim. Peço apenas para tentarem também outras maneiras alternativas de contato além do email (gtalk, facebook, twitter etc.), pois anda difícil acompanhar a minha caixa de email e uma grande faxina se faz necessária.&lt;/div&gt;
&lt;div style=&quot;color: #222222; font-family: arial; font-size: small;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;color: #222222; font-family: arial; font-size: small;&quot;&gt;
Abraços,&lt;/div&gt;
&lt;div style=&quot;color: #222222; font-family: arial; font-size: small;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;color: #222222; font-family: arial; font-size: small;&quot;&gt;
Kemel Zaidan&lt;/div&gt;
</description><link>http://linuxlegal.blogspot.com/2013/02/mudancas-na-coordenacao-do-time-do.html</link><author>noreply@blogger.com (Anonymous)</author><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-9148178584827032876</guid><pubDate>Fri, 04 Nov 2011 03:00:00 +0000</pubDate><atom:updated>2011-11-04T01:39:23.488-02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">luto adeus Andre Gondim UbuntuBR</category><title>Um adeus nerd a André Gondim</title><description>Logo que conheci o software livre me encantei com a possibilidade de me envolver no desenvolvimento. Como naquela altura não entendia nada de desenvolvimento, fui traduzir. &quot;Perdia&quot; horas na frente do computador traduzindo o Ubuntu para o português, fascinado com as possibilidades colaborativas que aquele novo mundo me abria.&lt;br /&gt;&lt;br /&gt;No entanto, por mais tempo que eu me dedicasse nas traduções do &lt;a title=&quot;launchpad.net&quot; href=&quot;https://launchpad.net/&quot; target=&quot;_blank&quot;&gt;Launchpad&lt;/a&gt;, jamais conseguia chegar perto de um tal de &lt;a title=&quot;Andre Gondim no Launchpad&quot; href=&quot;https://launchpad.net/~andregondim&quot; target=&quot;_blank&quot;&gt;AndreGondim&lt;/a&gt;, que simplesmente parecia ter mexido em cada um dos pacotes da distribuição. E foi assim que eu conheci o André: como um link no Roseta. Depois comecei a deixar alguns comentários em seu blog e mais tarde troquei algumas palavras no IRC.&lt;br /&gt;&lt;br /&gt;Minhas contribuições para a distribuição foram crescendo e com elas o meu contato com o André: sempre online, sempre disponível para uma conversa. Só fui conhecê-lo pessoalmente no ano passado, durante o FISL, quando pudemos trocar algumas ideias breves, uma vez que seu estado de saúde já não o permitia permanecer muitas horas no evento. Mas nem precisava, eu já o conhecia; e conhecia bem, pois o André era uma dessas poucas pessoas que são online da mesma maneira que são pessoalmente: cordial, leal, prestativo, inteligente, presente, dedicado.&lt;br /&gt;&lt;br /&gt;Lembro me que sempre que queria discutir alguma coisa sobre o Ubuntu, era ele quem eu chamava, não apenas pela posição de liderança que ele ocupava (pois outros também a ocuparam) mas por saber que ele realmente se interessava pela comunidade e sempre se engajava em longas conversas comigo. Com ele eu tinha &quot;pano pra manga&quot;.&lt;br /&gt;&lt;br /&gt;Dizem que ninguém é insubstituível e pra mim, parece estranho sentir saudades de alguém cujo contato se deu mais online do que pessoalmente, no entanto a verdade é que algumas pessoas quando se vão deixam um imenso vazio no mundo e nas nossas vidas.&lt;br /&gt;&lt;br /&gt;Temo pelos rumos que a comunidade do Ubuntu-BR irá tomar, pois não vejo ninguém com a mesma dedicação e paixão que ele tinha e sem dúvida nenhuma sentirei falta de nossas conversas e dele me chamando no chat com um &quot;ping&quot;( bem nerd), a espera de um &quot;pong&quot; vindo do meu lado.&lt;br /&gt;&lt;br /&gt;Vá com fé meu amigo, dá uns conselhos para aquele tal de Jobs e ande junto com a turma do Ritchie que eles são do bem. Certamente sentiremos sua falta por aqui.&lt;br /&gt;&lt;br /&gt;&lt;code&gt;# mv /usr/AndreGondim /home/ceu&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Kemel Zaidan&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGBziZYJOwJZ6iF7lu4sLypbHo8Kr4zo1J4LQCNjTGA-HhOPE-huIagG5v3hIjaIv7T5tmVsCRAmzWPqHkOeC836swW8XkH_tU9P3JfRRReTxqQQUjjgw2F1eGlB0mcDXYoflZPqHvP4A/s320/kemel_andres_leonardo_fisl11.JPG&quot; border=&quot;0&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5670971426710104626&quot; style=&quot;cursor: pointer; width: 320px; height: 240px; &quot; /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;</description><link>http://linuxlegal.blogspot.com/2011/11/um-adeus-nerd-andre-gondim.html</link><author>noreply@blogger.com (Anonymous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGBziZYJOwJZ6iF7lu4sLypbHo8Kr4zo1J4LQCNjTGA-HhOPE-huIagG5v3hIjaIv7T5tmVsCRAmzWPqHkOeC836swW8XkH_tU9P3JfRRReTxqQQUjjgw2F1eGlB0mcDXYoflZPqHvP4A/s72-c/kemel_andres_leonardo_fisl11.JPG" height="72" width="72"/><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-1116968540049066338</guid><pubDate>Fri, 26 Aug 2011 17:03:00 +0000</pubDate><atom:updated>2011-08-26T14:05:44.870-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">segurança</category><category domain="http://www.blogger.com/atom/ns#">Ubuntu-SP</category><title>Evento com participação do Ubuntu-SP na Uniban da Vila Mariana</title><description>Sei que está um pouco em cima, mas gostaria de convidar a todos para participar do evento em que o Ubuntu-SP estará presente amanha na Uniban da Vila Mariana. Eu participarei de uma mesa de debates e @kretcheu e @alexsandroccarv, darão uma palestra sobre segurança. Além disso haverá também um install-fest. O evento será no sábado dia 27/08&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Horário: 10h30&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Tema: SEGURANÇA&lt;br /&gt;Local: Sala 214&lt;br /&gt;Palestra: Privacidade e Segurança em Desktops Linux&lt;br /&gt;Palestrantes:&lt;br /&gt;- Alexsandro Cardoso Carvalho - Graduado em Informática e Especialização em Administração de Sistemas de Informação. Membro do grupo UBUNTU/SP e do projeto bibliotecalivre.org. Responsável pela migração para software livre na Secretaria de Cultura da Prefeitura de São Bernardo do Campo. Atualmente trabalha na Universidade Federal do ABC e é Diretor da Compartirweb.&lt;br /&gt;&lt;br /&gt;- Paulo Kretcheu - Engenheiro Mecânico com formação pela FEI e Pós-Graduação em Segurança pela Unimonte. Trabalha como professor universitário e consultor em tecnologias open source há mais de 10 anos. É membro atuante da comunidade UBUNTU e Debian.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Horário: 12h&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Mesa-Redonda: SEGURANÇA DA INFORMAÇÃO&lt;br /&gt;Local: Auditório (6º andar)&lt;br /&gt;Participantes da Mesa:&lt;br /&gt;Presidente: Ricardo Holderegger - Gerente de Planejamento de TI da UNIBAN.&lt;br /&gt;Moderador: Gustavo C. Lima - Mantenedor do site Coruja de TI e Organizador do Web Security Fórum.&lt;br /&gt;Membros: Marcos Tupinambá - Palestrante Oficial Microsoft e Kemel Zaidan - Editor da Linux Magazine Official Member do UBUNTU.&lt;br /&gt;&lt;br /&gt;O evento é aberto e qualquer um pode participar.&lt;br /&gt;&lt;br /&gt;Mais informações do evento podem ser vistas neste link: http://www.uniban.br/eventos/2011/agosto/jornada-de-tecnologia-da-informacao.asp&lt;br /&gt;&lt;br /&gt;A Uniban da Vila Mariana fica na rua Afonso Celso, 235, Vila Mariana - São Paulo - SP,&lt;br /&gt;&lt;iframe width=&quot;425&quot; height=&quot;350&quot; frameborder=&quot;0&quot; scrolling=&quot;no&quot; marginheight=&quot;0&quot; marginwidth=&quot;0&quot; src=&quot;http://maps.google.com/maps?f=q&amp;amp;source=s_q&amp;amp;hl=pt-BR&amp;amp;geocode=&amp;amp;q=Uniban+Vila+Mariana&amp;amp;aq=&amp;amp;sll=37.0625,-95.677068&amp;amp;sspn=49.57764,83.144531&amp;amp;vpsrc=0&amp;amp;ie=UTF8&amp;amp;hq=Uniban+Vila+Mariana&amp;amp;hnear=&amp;amp;radius=15000&amp;amp;t=h&amp;amp;z=13&amp;amp;iwloc=A&amp;amp;cid=5620431581256772524&amp;amp;ll=-23.59361,-46.635102&amp;amp;output=embed&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;small&gt;&lt;a href=&quot;http://maps.google.com/maps?f=q&amp;amp;source=embed&amp;amp;hl=pt-BR&amp;amp;geocode=&amp;amp;q=Uniban+Vila+Mariana&amp;amp;aq=&amp;amp;sll=37.0625,-95.677068&amp;amp;sspn=49.57764,83.144531&amp;amp;vpsrc=0&amp;amp;ie=UTF8&amp;amp;hq=Uniban+Vila+Mariana&amp;amp;hnear=&amp;amp;radius=15000&amp;amp;t=h&amp;amp;z=13&amp;amp;iwloc=A&amp;amp;cid=5620431581256772524&amp;amp;ll=-23.59361,-46.635102&quot; style=&quot;color:#0000FF;text-align:left&quot;&gt;Exibir mapa ampliado&lt;/a&gt;&lt;/small&gt;</description><link>http://linuxlegal.blogspot.com/2011/08/evento-com-participacao-do-ubuntu-sp-na.html</link><author>noreply@blogger.com (Anonymous)</author><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-8486006097583774067</guid><pubDate>Wed, 10 Aug 2011 03:33:00 +0000</pubDate><atom:updated>2011-08-10T00:45:44.051-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">formatos</category><category domain="http://www.blogger.com/atom/ns#">odf</category><category domain="http://www.blogger.com/atom/ns#">rio de janeiro</category><title>Trancando o cofre e jogando a chave fora</title><description>Imagine  que ao longo de vários anos você foi acumulando uma série de documentos em formato digital: planilhas, textos e apresentações de slides que foram sendo colecionadas durante o percurso de sua vida acadêmica e/ou profissional. Fácil, não é? Afinal, poucos são os casos em que ainda se usa o velho e bom caderno e lápis grafite para tomar nota de alguma ideia. A maioria de nós mal consegue manter a conta de quantos documentos desse tipo gerou ou possui consigo.&lt;br /&gt;&lt;br /&gt;Apesar do conteúdo produzido por você e armazenado nesses arquivos ser exclusivamente de sua propriedade, sendo inclusive protegido pelas leis de direito autoral, o formato de arquivo em que você armazenou esses conteúdos, certamente não te pertence. Ele muito provavelmente pertence ao autor do software utilizado por você para criar todos esses arquivos. Quais são as implicações disso? É como guardar dinheiro no cofre de outra pessoa. Por mais inocente ou estranha que possa parecer esta pergunta, de fato, há muitas consequências envolvidas em uma situação como essa: a primeira delas e mais importante de todas é que você está inevitavelmente atrelado ao fornecedor do software com qual você gerou todos esses documentos.&lt;br /&gt;&lt;br /&gt;É ele quem vai dizer para você quando você deve adquirir uma nova versão de sua suite de escritórios (mesmo que isso acarrete na necessidade da compra de um novo hardware), ou quando você deve utilizar um novo formato, que será empurrado a você sem que você entenda as consequências dessa mudança. Alguma vez você recebeu ou enviou um arquivo de escritório, o qual não foi possível abrir e conferir o conteúdo do documento? Quem nunca ficou irritado com uma situação destas ou nunca sofreu com um problema desses que atire o primeiro computador ao alto.&lt;br /&gt;&lt;br /&gt;Agora projete a mesma situação descrita acima, mas ao invés de pensar em si mesmo, pense em uma grande empresa e projete os prejuízos causados por algo aparentemente simples. E se ao invés de uma grande empresa estivermos falando da esfera governamental? Por quanto tempo um governo precisará guardar um documento em formato digital? Certamente por muito mais tempo do que você ou eu e muito além do tempo de uma vida. Documentos digitais que estão sendo gerados hoje pelas esferas municipal, estadual e federal terão que ser guardados por centenas de anos. E não apenas guardados, mas seu conteúdo deverá estar acessível não apenas a representantes do poder público, mas também aos cidadãos que se interessarem por ele no futuro.&lt;br /&gt;&lt;br /&gt;Como garantir então que esses documentos poderão ser lidos daqui a 30, 50, 100 ou 200 anos? A primeira vez que o mundo se deparou com estas questões foi durante o tsunami que ocorreu na Ásia em 2004. Nesta ocasião, diferentes países e organizações civis de ajuda humanitária tiveram que trocar informações na forma de documentos digitais para poderem organizar e planejar a ajuda aos países vítimas da tragédia natural. Não é difícil supor que assim como nós, reles mortais informatizados, os representantes dessas organizações e governos sofreram do mesmo problema que enfrentamos vez por outra em nossas vidas diárias: não conseguiram abrir os documentos enviados um pelos outros, justamente por incompatibilidade de versões e formatos. Mas o pior de tudo é pensar que por conta disso, houve atraso na ajuda humanitária enviada aos países vítimas do tsunami e que por conta desse atraso, algumas centenas de vidas podem ter se perdido. Como podemos ver, o problema descrito aqui pode ir muito além de consequências inocentes, ou prejuízos financeiros.&lt;br /&gt;&lt;br /&gt;Mas a dúvida ainda persiste: como garantir acesso universal ao conteúdo desses arquivos, sem os quais não conseguimos viver mais? A resposta veio logo após o incidente descrito acima: percebeu-se que a única forma possível para se resolver esse problema era criar um formato aberto e livre de royalties que garantisse a todos o acesso aos documentos em questão.&lt;br /&gt;&lt;br /&gt;O ODF é a sigla em inglês para &quot;formato aberto de documento&quot;, um formato padrão para documentos de escritório que foi concebido pela OASIS (Organization for the Advancement of Structured Information Standards) uma organização não-governamental internacional formada por representas de grandes corporações, indústrias, governos e entidades civis, com o intuito de solucionar essas questões que foram relatadas aqui.&lt;br /&gt;&lt;br /&gt;A boa notícia é que o estado do Rio de Janeiro aprovou recentemente o projeto de lei nº 152/11 de autoria do deputado Robson Leite, do PT. Com a aprovação do projeto, os órgãos da administração pública estadual passarão a adotar preferencialmente o formato aberto de arquivos, o ODF, tanto para criação, como para armazenamento e difusão de documentos. Isso garante não apenas a longevidade dos documentos públicos, mas também seu acesso, uma vez que há excelentes opções de suítes de escritório que permitem a abertura e criação de documentos no formato ODF e, que ainda por cima, são distribuídas sem custo algum. Como exemplo, podemos citar o LibreOffice, ou mesmo o Google Docs.&lt;br /&gt;&lt;br /&gt;Independente de posições partidárias, são ações como estas, que promovem a inclusão e a cidadania digital, que devem ser incentivadas em todos as esferas do poder no país. Um viva para o Rio de Janeiro!&lt;br /&gt;&lt;br /&gt;publicado &lt;a href=&quot;http://www.jornalcorporativo.com/component/k2/item/10099-livre-acesso.html&quot;&gt;aqui&lt;/a&gt;&lt;br /&gt;</description><link>http://linuxlegal.blogspot.com/2011/08/trancando-o-cofre-e-jogando-chave-fora.html</link><author>noreply@blogger.com (Anonymous)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4723100483112964148.post-3203382482700290089</guid><pubDate>Wed, 10 Aug 2011 03:08:00 +0000</pubDate><atom:updated>2011-08-10T00:08:27.203-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">artigo</category><title>Eu voltei, agora pra ficar...</title><description>&lt;div xmlns=&#39;http://www.w3.org/1999/xhtml&#39;&gt;Desde que comecei a trabalha na Linux New Media (editora que publica a &lt;a href=&#39;http://www.linuxmagazine.com.br&#39; target=&#39;_blank&#39;&gt;Linux Magazine&lt;/a&gt;) acabei deixando os 3 blogs onde costumava escrever um pouco de lado, principalmente porque passei a escrever muito e a dizer (quase) tudo o que queria dizer para as revistas das quais sou responsável agora.&lt;br/&gt;&lt;br/&gt;A verdade é que passar o dia na frente do computador escrevendo sobre software livre acaba te afastando do computador no momento em que você chega em casa. Mas a partir de hoje, pretendo voltar a tentar escrever com mais frequência e começarei por aqui, pois esse sempre foi o meu blog pessoal, onde tenho total liberdade para decidir os rumos a se seguir.&lt;br/&gt;&lt;br/&gt;A primeira coisa que vou fazer é publicar aqui os artigos que tenho escrito para o carioca &lt;a href=&#39;http://www.jornalcorporativo.com.br&#39; target=&#39;_blank&#39;&gt;jornal corporativo&lt;/a&gt;, onde passei a ter uma coluna mensal sobre tecnologia chamada &quot;Canal Aberto&quot;, afinal esse blog nasceu para ser um repositório pessoal que centralizasse ideias em torno do meu aprendizado com software livre e que esperava eu, pudesse ser útil também para mais alguém além da minha própria pessoa.&lt;br/&gt;&lt;br/&gt;Como sempre, convido a todos que aqui passarem os olhos a deixar algum comentário ou feedback, pois nada melhor do que escrever com um interlocutor em vista! :-)&lt;br/&gt;&lt;br/&gt;Liberdade sempre!Categorias do Technorati &lt;a rel=&#39;tag&#39; href=&#39;http://technorati.com/tag/artigo&#39; class=&#39;performancingtags&#39;&gt;artigo&lt;/a&gt;, &lt;a rel=&#39;tag&#39; href=&#39;http://technorati.com/tag/retorno&#39; class=&#39;performancingtags&#39;&gt;retorno&lt;/a&gt;, &lt;a rel=&#39;tag&#39; href=&#39;http://technorati.com/tag/not%C3%ADcias&#39; class=&#39;performancingtags&#39;&gt;notícias&lt;/a&gt;&lt;/div&gt;</description><link>http://linuxlegal.blogspot.com/2011/08/eu-voltei-agora-pra-ficar.html</link><author>noreply@blogger.com (Anonymous)</author><thr:total>0</thr:total></item></channel></rss>