Archive for September, 2009

Microsoft lança a OTUN

Tuesday, September 15th, 2009

O lançamento da fundação CodePlex pela Microsoft me fez rir, porque se trata de uma empresa com pouquíssima vivência e participação no Software Livre criando uma organização de fachada (olha quem são os diretores, e lê o estatuto, heh) querendo ensinar padre a rezar missa.

Não consegui evitar lembrar da falecida OTUN, fundada pelo Banco do Brasil, que era exatamente a mesma coisa, mas um pouco mais sem noção, porque queria trazer para o Software Livre práticas tradicionais de desenvolvimento de software. Muito engraçado mesmo. Alguém se lembra de eu falar que não ia durar um ano? Parece que durou menos =P. Apostas sobre quanto tempo a CodePlex dura?

Outro que eu amoooo é o PulseAudio

Saturday, September 12th, 2009

Atualizado: mais uma declaração de amor. Nessa, o povo queria escutar o mesmo stream em 2 canais ao mesmo tempo, e isso foi possível usando um módulo de combinação do PulseAudio.

Apesar dele me dar uma dorzinha de cabeça de vez em quando, principalmente com coisas proprietárias mal-feitas como o plugin de Flash, ele acaba melhorando minha vida um bocado com as outras coisas. Poder definir os volumes de cada coisa independentemente em um único lugar, por exemplo, é algo muito interessante para mim, que costumo ficar ouvindo música e quero ouvir outros áudios (como os de um jogo) ao mesmo tempo.

Mas se você acha que isso é o mais legal do PulseAudio, se enganou =P. Uma coisa que eu sempre fazia quando estava na casa da minha mãe era tocar músicas que eu tenho no meu computador no computador dela, que tem as melhores caixinhas de som que eu já vi num computador. Isso envolvia uso muito criterioso do esound e o sacrifício de uma ou duas cabras, para funcionar. O processo é mais ou menos o seguinte: no computador dela, eu abria um shell com um usuário que tinha permissão de tocar sons, matava o esd, se estivesse rodando, e o executava de novo, assim: esd -tcp -promiscuous -public. Ah, se você não gostar do barulinho de início dele, coloque também -nobeeps =P.

O que isso faz é rodar o esd com acesso público (de fora do mesmo computador), e permitir conexões sem exigir autorização. Depois disso, você vai no computador que vai tocar a música, e configura com gconf a chave /system/gstreamer/0.10/default/musicaudiosink para esdsink host=seuhost.local. Depois disso, é só iniciar seu player e tocar; se os planetas estiverem alinhados corretamente, vai dar certinho.

Hoje a gente quis fazer a mesma coisa aqui em casa. O DJ em geral sou eu, já que estou sempre com meu player tocando músicas =P, mas nos últimos tempos meu computador deixou de ser o com melhor capacidade de emitir áudio. Eu estou com um Lenovo x200s da Collabora, e deixei meu hp pavilion (que tem as melhores caixinhas em notebook que eu já vi) com a Lu. Com pulseaudio, fazer isso ficou bem mais são de fazer. Pra começar nós dois instalamos o pacote padevchooser, e rodamos o dito-cujo. A Lu clicou o íconezinho na área de notificação, e escolheu “Configure Local Sound Server…”.


Pulse Audio preferences

Feito isso, o pulseaudio inicia com essas configurações, e já apareceu para mim, no meu chooser:


Pulse Audio preferences 2.0

Pronto, todo meu audio agora está sendo roteado para o PA da Lu, e a gente pode ouvir minhas lindas músicas na caixinha bacana do notebook dela, ao invés de na xiadeira que sai das caixinhas que ficam _embaixo_ do x200s. Mas ainda tem uma coisa ruim nesse setup. Eu não quero todo o meu som sendo roteado, só a música… hmm… Fácil! Volto o servidor padrão do Dev Chooser para o Default e configuro o meu servidor para tratar dispositivos descobertos na rede como se fossem dispositivos locais:


Pulse Audio preferences 2.0

Agora, se eu for no padevchooser e escolher ‘Volume Control…’ eu tenho como fazer o seguinte, com o stream do Rhythmbox:


Pulse Audio output

Na aba ‘Output devices’ eu vejo o servidor PA da Lu como se fosse uma placa de som normal, e posso definir o volume do que vai pra ela como um todo lá, se não quiser definir de stream por stream que eu decidir mandar.

O PA ainda não está perfeito, tem muitos corner cases pra resolver, e mesmo isso que nós fizemos aqui em casa pode sofrer dependendo da sua instalação, por ser um recurso razoavelmente pouco testado, mas eu já acho sensacional poder fazer tanto com tão pouco trabalho. Tá certo que boa parte disso também se deve ao Zeroconf, que o PA usa para anunciar e localizar os servidores, mas isso é assunto pra um outro post =).

WebKitGTK+ 1.1.14 is here!

Tuesday, September 8th, 2009

1.1.14 is definitely worth blogging about. While I was updating the gtk-doc stuff to update the documentation that is available in our website I was thinking that this is probably the release with the largest amount of API addition I have seen in my time as a contributor to the project! Before I start talking about the new APIs, though, let me talk of something that went under the hood: Xan has patched WebKitGTK+ to override libsoup’s connection limits, so that our limits match those of other modern browsers - we now allow up to 60 connections total, and 6 per host. People have been reporting load performance improvements for some sites!

We have an initial set of APIs to deal with the data that was loaded to render the page, represented by the new DataSource object. This allows you to peek at the source of the HTML that was rendered, for instance. In the near future we will have ways of getting the data and other information for each resource that is downloaded to compose the page. Jan Alonzo has spent quite some time studying, implementing and perfecting this API, with some help from me and Xan.

One initial piece of the larger API to control resource loading is already there, as well. The WebView will use the new resource-request-starting signal to let you know that a request is about to be sent, and allow you to modify headers, or even the URI that is going to be fetched. For some, the greatest news here is that this allows a basic implementation of AD blocking, which is now supported in Epiphany with the WebKit backend, as of version 2.27.92, released today! This is something I have been looking at in my Collabora time for some time now, and working along with Xan and Jan, we finally seem to have figure out the API interactions correctly. There’s more to come regarding resource loading tracking, in the near future.

That would already be a lot, from my point of view, but there’s a whole lot more. A new contributor, Martin Robinson, has arrived proposing new API pieces for an important HTML5 tool: web databases, which brings with it the concept of SecurityOrigin. Jan has exposed API to put the WebView in “view source” mode, Xan has given us undo/redo support for editable content, and Zan Dobersek has done some overall improvement of our HTML5 media player.

That’s a lot of change for a release, which also goes to show we still have quite a gap to fill, but we are being able to move forward and fill them quite quickly. If you want to help out, pick something in your area of interest, and send us patches!

Blog do Planalto e outros avanços

Monday, September 7th, 2009

Eu acompanhei o minuto do lançamento do blog do Planalto - estava acordado quando o puseram no ar. Antes de mais nada, gostaria de dar os parabéns para meus amigos que trabalharam nisso; trabalho bem-feito. Tenho certeza de que eles estão lá brigando duro pras coisas saírem do jeito certo =). Tenho um pouco de experiência na sustentação desse tipo de sítio extremamente dinâmico, com design carregado (2.2MB!) e grande número de acessos, e sei que o pepino é grande.

O lançamento do blog do Planalto me tirou do estado ‘estou pensando em blogar’ pra o estado ‘estou aqui escrevendo o post’. Eu pretendia escrever algo depois de observar outros acontecimentos recentes, mas quis também dar um tempo pra passar a chuva de reações iniciais ao blog do Planalto, dando tempo pra os blogueiros de hype pularem pro próximo hype. Esses acontecimentos me deixam ao mesmo tempo feliz com o avanço das instituições brasileiras no que diz respeito ao uso de tecnologias para comunicação, e triste porque algumas questões importantes não tem sido levadas em consideração. Deixa eu falar das duas coisas.

Feliz

Feliz, porque eu acho que essas ferramentas de comunicação direta são importantíssimas para uma administração de fato transparente. Quando se tira do caminho os intermediários, se ganha tanto do lado de quem envia a mensagem quanto do lado de quem a recebe.

Quem quer divulgar a mensagem ganha muito no quesito exatidão. Qualquer um que tenha dado uma entrevista sabe da enorme capacidade que a mídia tem de truncar a mensagem para dar um ar mais literário, ou para ’simplificar’. Eu lembro em, se não me engano, 2007, quando fui entrevistado sobre a questão da lei do Azeredo, a repórter insistia em dar foco à segurança dos dados dos usuários (a lei exigia dar nome completo, CPF e num sei o que mais para acessar a Internet), que ficariam mais facilmente roubáveis por ‘hackers’. Não adiantou dizer a ela que a questão era muito mais relacionada à liberdade de permanecer anônimo, e à privacidade - a repórter aparentemente tinha a pauta pronta, só precisava de imagens de alguém falando o que ela queria.

Quem ‘recebe’ ganha por poder ter acesso às informações mais cruas. Não é tão mais necessário ler diversos veículos e tentar achar os fatos no meio das opiniões. É claro que muita gente vai continuar sendo superficial e acusando quem ‘não gosta’ sempre, mas onde tem gente tem isso ;). A outra grande vantagem é, em geral, a possibilidade de as pessoas interagirem - colocarem perguntas, comentários, fazer protestos, em mídia similar à usada pelos que enviaram a mensagem, mesmo que não seja exatamente no mesmo espaço. Antigamente você podia publicar uma carta ou coluna em um jornal ou revista, mas a exposição disso é muito limitada. É uma época interessante (ou está se tornando) para entender melhor o que significa ‘opinião pública’, eu acho.

Um exemplo interessante desse dinamismo é que o pessoal d’A Voz do Brasil me respondeu uma pergunta feita publicamente bem rapidinho. Comparativamente, eu prefiro muito esse modelo ao modelo de Ouvidoria =). Aparentemente o lançamento do Blog do Planalto sem suporte a comentários é a preocupação do momento na “blogosfera” brasileira. Embora eu ache que comentários serão uma adição bem-vinda, quando houver maturidade suficiente de todos os lados, o fato de o blog não ser lá tão blóguico é o que menos me incomoda.

Atualizado: por falar nisso, um tal Pedro Markun fez uma instalação de WordPress copiar todo o conteúdo do Blog do Planalto, usando o fato de que ele está todo sob Creative Commons, e abriu comentários, criando um espaço de discussão. Eu achei muito bacana que ele disse ter feito isso não como forma de protesto, mas como forma de aproveitar a liberdade que estava sendo dada. Agora estão estudando formas distribuídas de moderação dos comentários. Parabéns! A gente precisa de mais ativistas como ele!

Triste

Triste, em geral, porque as práticas com relação à adoção de tecnologias continuam as mesmas de sempre, e é isso que tem me incomodado. O respeito a padrões abertos é pequeno, serviços de empresas são escolhidos sem nenhum critério, dando em geral mais publicidade às ‘marcas’ estabelecidas. A primeira coisa que eu notei quando entrei no blog do Planalto ontem foi o monte de ‘Youtube’, ‘Facebook’, ‘Wordpress’ e ‘Google’ espalhados pela página. Com ‘Youtube’ vem de brinde ‘Adobe Flash’, claro.

Não mudou muito da época em que os entes do poder público escolhiam Windows como plataforma, faziam software pra Windows, em linguagens e tecnologias pouco ou nada portáveis, que iam acabar atrapalhando depois de anos uma possível migração para outras plataformas, e exigindo que os cidadãos utilizassem softwares proprietários de empresas específicas. Até hoje o governo ainda exige que muita gente use Windows e programas proprietários como o usado para declaração do imposto de renda, por exemplo.

Outros exemplos disso são as inúmeras instituições criando perfis ‘no Twitter’, como o Ministério da Cultura, Ministério do Turismo, SERPRO, Dataprev. Ninguém parou pra pensar ainda que o Twitter não é um espaço público, é um serviço específico, de uma empresa privada específica, com termos de uso não lá muito bons, que não distribui o software que utiliza com uma licença livre, e que isso é uma forma de as nossas instituições a publicizarem de graça. Nada contra as instituições se utilizarem de microblogging - eu na verdade acho isso ótimo!, mas não precisa ser fazendo propaganda dessa empresa específica, precisa?

A Voz do Brasil além de usar Twitter decidiu usar uma ferramenta gratuita que coleta estatísticas de busca em tempo real, e que posta uma propaganda em nome d’A Voz do Brasil de tempos em tempos. Imagine um órgão de governo usando Geocities uns anos atrás. Pra mim é a mesma coisa.


Marcas usadas no Blog do Planalto

Marcas usadas no Blog do Planalto editadas pra diminuir a propaganda nesse post =P. Por quê esses?

O próximo desafio é descobrir e regular que critérios se deve aplicar, e como se deve selecionar serviços como esse, ou se é algo que deve ser fornecido por estrutura própria (minha preferência é essa - há softwares bons disponíveis para isso, como o StatusNet, antigo laconi.ca). Mas considerando usar serviços de terceiros, por que não Identi.ca, por exemplo, ou uma das dezenas de serviços alternativos?

Que critérios foram usados na escolha do Twitter, YouTube, e Google Maps? Popularidade me vem a mente, e a resposta d’A Voz do Brasil que citei acima confirma, mas acho que essa é uma forma perfeita de aumentar um ciclo de mono-cultura e geração de monopólio. Outra possibilidade é que os serviços escolhidos eram os usados/conhecidos pelos criadores do blog, simplesmente. Não me parece uma boa idéia, também. No final das contas, o governo brasileiro pode estar dando sua contribuição para transformar os Googles, Facebooks e Twitters de hoje no que foi a Microsoft dos anos 90.

Convido todos a pensar sobre as questões e procurar alternativas.