30 de December de 2011

Meu Top 10: Livros

Livros

Top 10: Livros

Desde que eu comecei a fazer o meu programa de podcasts (para quem ainda não conhece, chama-se Castálio) que eu tenho pensado em escrever este post, mas por um motivo ou outro, nunca chegou a passar da idéia. O lance é que quando o podcast começou, eu ainda não tinha um formato concreto de como iria fazer as entrevistas, e como o primeiro episódio foi uma entrevista comigo mesmo, eu não tive uma oportunidade de falar sobre o meu Top 5, que é uma coisa que hoje eu pergunto a todos os meus entrevistados já no finalzinho das entrevistas. O Top 5 é uma das minhas partes favoritas, porque me deixa conhecer sobre quais músicas, filmes, livros, histórias, artistas e pessoas que influenciaram a vida das pessoas com quem estou conversando! Então, acabou que eu nunca tive a oportunidade de falar sobre as coisas que influenciaram a minha vida… e em vez de fazer um novo episódio sobre mim mesmo (mas a possibilidade ainda existe, quem sabe?), decidi compartilhar aqui com você, leitor do meu blog, seja pelo Planeta Ubuntu Brasil, Planeta GNU/Linux Brasil, Planeta GNOME Brasil, ou qualquer outra forma.

Antes de mais nada, eu não poderia falar sobre quais foram os livros ou autores que mais me marcaram sem mencionar o nome das pessoas responsáveis por este “vício” tão bom que eu tenho desde pequeno: a leitura. Primeiramente, meus pais foram mais que primordiais em cultivar em mim este hábito! Quando eu era ainda criança, meus pais sempre compravam livros, seja para um de nós (tenho 2 irmãs), ou seja para eles mesmos, e eu sempre ficava maravilhado ao ver aqueles livros todos enfileirados nas várias prateleiras que adornavam nossa casa. E não era só de enfeite não! Se meus pais não estavam lendo livros, estavam folheando revistas, catálogos, búla de remédios… e foi com eles que tudo começou!

A segunda influência que eu tive ainda novinho foi minha professora da terceira série lá em São Franciso, MG, Dona Maria Teresa Mendonça (que era também mãe do meu amigo Rúbens Mendonça “Pé de Pato, Mão de Onça” :) )! Foi na terceira série que ela criou o Clube do Livro e nos presenteou com um armário lotado de livros de todos os gêneros! Foi neste ano que eu aprendi a apreciar ainda mais a leitura, e foi devido à esta professora que eu nunca mais parei de ler!

Então vamos lá, aqui segue uma compilação meio que ainda tentativa dos 10 mais importantes livros ou autores que influenciaram a minha vida de uma forma ou outra:

  1. O Cachorrinho Samba da Maria José Dupré:  Este foi o primeiro livro que eu lí sozinho, ou seja, não foram meus pais que leram para mim. Por algum motivo que eu ainda não consigo explicar, o cachorrinho Samba tomou controle completo da minha imaginação, e depois dele eu simplesmente devorei todos os outros livros da série do cachorrinho Samba e os outros da Maria José Dupré, como A Mina de Ouro e A Montanha Encantanda!
  2. Série Vaga-Lume:  Não tem como eu falar sobre livros e minha infância sem falar sobre esta coleção de livros! Não me lembro dos detalhes de como que os livros foram publicados, se foi um novo a cada semana, etc, mas só sei que entre minhas irmãs e eu, nós provavelmente lemos quase todos os livros que apareceram na nossa frente! Mais uma vez, se não fosse pela Dona Maria Teresa, eu não teria visto “A Ilha Perdida”, “A Turma da Rua Quinze”, “Aventuras de Xisto”, “Coração de Onça”, “Menino de Asas”, “O Escaravelho do Diabo”, para mencionar alguns! A lista completa dos livros eu deixo aqui para quem estiver interessado.
  3. Monteiro Lobato: Provavelmente a maior influência entre todos os livros e autores que eu já lí, os livros do Monteiro Lobato foram os que eu mais lí, re-lí, e viví na minha infância! Quem me conhece dos tempos onde eu morava em São Franciso, MG, sabem muito bem como que passei horas tentando capturar o Sací da mesma forma que o Pedrinho tentou, ou usava pó de perlim-pim-pim para me imaginar viajando para paises e mundos distantes! Só sei que eu queria ser um escritor, igual Monteiro Lobato quando crescer! ;)
  4. Júlio Verne:  Mais um autor que me fez companhia durante a infância! Não sei exatamente quantos de seus livros eu lí no total, mas dentre eles o que eu mais curtí foi um chamado “Dois Anos de Férias“! Infelizmente, quando eu me mudei do Brasil para os Estados Unidos em 1991, tive de vender ou doar todas as minhas coisas, e dentre elas, minha coleção encadernada do Júlio Verne.
  5. Tio Patinhas: Tudo bem que revistinha em quadrinho (ou você chama isso de gibí?) não é livro, mas aqueles almanaques do Tio Patinhas que saiam de vez em quando com histórias quilométricas com o Pato Donald e seus sobrinhos, se metendo em aventuras prá lá de malucas foram fonte de muita inspiração quando pequeno!
  6. Manual do Escoteiro-Mirim:  Ainda falando sobre revistinhas e tal, a Disney lançou o Manual do Escoteiro-Mirim, e eu ia na casa do Márlon (amigo da minha irmã mais nova) quase todos os domingos só para sentar na cadeira de balanço que tinha na varanda dele e passar horas lendo e tentando aprender tudo o que eu podia sobre a arte de ser um escoteiro! Foi por causa deste livro que eu acabei entrando nos “Lobinhos” e depois nos Escoteiros lá em São Francisco, MG (“Patrulha do Touro”).
  7. Homero:  Lá na casa do Márlon também tinham livros que atraíram minha curiosidade, e depois de ler sobre “Os 12 Trabalhos de Hércules” com o Monteiro Lobato, fiquei mais que apaixonado pelas aventuras descritas no “A Odisséia” e “A Ilíada” de Homero! Desde então eu lí vários livros sobre mitologia grega, mas foi com Homero que eu peguei o gostinho por este tópico!
  8. Naufrágio: Da mesma forma que mitologia grega me atraia quando pequeno, livros sobre naufrágios foi mais uma categoria que mecheu muito com a minha imaginação. “A Ilha do Tesouro” de Robert Louis Stevenson (que por sinal foi o primeiro livro que eu lí no Clube do Livro na terceira série), “Os Robinsons Suiços” de Johan David Wyss, “As Viagens de Gulliver” de Jonathan Swift, “Robinson Crusoé” de Daniel Dafoe, e vários livros do Júlio Verne foram alguns dos livros que eu lí muito (e me fizeram secretamente desejar que eu també ficasse naufragado em uma ílha deserta, onde eu pudesse usar todos aqueles truques que eu aprendi no “Manual do Escoteiro-Mirim”)!
  9. Os Meninos da Rua Paulo:  Este livro do Ferenc Molnár foi fonte de inspiração para a criação do meu primeiro clube, “Os Brasinhas“, e da minha primeira “guerra” contra o clube adversário para capturar sua bandeira! Foi um dia de muita aventura, adrenalina, pedrada e mamona verde nas costas, mas isso é assunto para outro dia! “Os Meninos da Rua Paulo” é um dos poucos livros da minha infância que eu adoraria ter comigo, mas infelizmente ainda está falntando na minha coleção…
  10. Tex Willer, Ken Parker, Zagor, e Asterix:  Fechando meu Top 10 não podia faltar estes personagens do mundo de aventuras dos quadrinhos! Foi com o Tex, Ken, Zagor e Asterix e amigos que eu aprendi bastante sobre cowboys, velho oeste, legião romana, e um pouco da geografia dos Estados Unidos e Europa Ocidental! Já cheguei a ter mais de 600 revistas destes personagens, mas infelizmente também tive de me desfazer delas na “grande mudança” para os Estados Unidos.

Ao compilar esta lista vários outros autores e livros também vieram à tona, mas como o objetivo era manter tudo em uma lista com 10 entradas, não coloquei Isaac Asimov, Tolkien, “Memórias de Um Cabo de Vassoura“, Mark Twain, dentre outros. Até mesmo a série do Harry Potter já faz parte dos meus livros favoritos, mas eu acho que os que eu listei neste post foram realmente os que mais me marcaram e, de uma forma, moldaram a minha vida!

Bem, é isso aí! Desejo a todos vocês um excelente final de ano, e um maravilhoso 2012! Depois eu volto para contar o meu Top 10 de músicas e filmes! :)

28 de December de 2011

The Blocks C extension and GIO asynchronous calls

So, I intended to be completely away from my computer during my vacations, but hey. I have been interested in this new extension Apple added to the C language a little while ago which introduces the equivalent of closures to C. Today I spent a few minutes looking into it and writing a few tests with the help of clang.

Here’s something I came up with, to use a block as the callback for a GIO asynchronous call:

#include <Block.h>
#include <gio/gio.h>

typedef void (^Block)();

static void async_result_cb(GObject* source,
                            GAsyncResult* res,
                            gpointer data)
{
    Block block = (Block)data;
    block(res);
}

int main(int argc, char** argv)
{
    g_type_init();

    if (argc != 2) {
        g_error("Blah.");
        return 1;
    }

    GMainLoop* loop = g_main_loop_new(NULL, TRUE);
    GFile* file = g_file_new_for_path(argv[1]);

    g_file_query_info_async(file,
                            G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE,
                            G_FILE_QUERY_INFO_NONE, G_PRIORITY_DEFAULT,
                            NULL, async_result_cb, (gpointer) ^ (GAsyncResult* res) {
        GError* error = NULL;
        GFileInfo* info = g_file_query_info_finish(file, res, &error);

        if (error) {
            g_error("Failed: %s", error->message);
            g_error_free(error);
            return;
        }

        g_message("Content Type: %s",
                  g_file_info_get_attribute_string(info, G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE));

        g_object_unref(info);
        g_main_loop_quit(loop);
    });

    g_main_loop_run(loop);
    g_object_unref(file);

    return 0;
}

Pretty neat, don’t you think? To build you need to use clang and have the blocks runtime installed (libblocksruntime-dev in Debian). Here’s the command I use:

$ clang -fblocks -o gio gio.c -lBlocksRuntime `pkg-config --cflags --libs gio-2.0`

26 de December de 2011

Castálio Podcast – Rodrigo Novo: Conectiva Linux

Rodrigo Novo

Rodrigo Novo

Olá pessoal e seja muito bem-vindo à este episódio de natal (e o último de 2011)! Dando continuidade à proposta de trazer mais uma entrevista com uma personalidade do Conectiva Linux, desta vez tenho o prazer de apresentar a vocês o Rodrigo Novo! Durante nosso bate-papo ele conta como que largou a faculdade para entrar no Conectiva Linux em 1997, trabalhando com o Aurélio “verde” Jargas, Marcelo Tosatti, entre outros na área de suporte, como que ele “graduou” para a equipe da distribuição, KDE 0.11, a história do “easter egg” que nunca foi publicado, onde será a próxima “Silicon Valley” brasileira, e seu interesse por poker e filmes clássicosEscute agora!

22 de December de 2011

AIClass and vacations

One of my side projects for these last months was to enroll on the online Introduction to AI class, with Peter Norvig and Sebastian Thrun, professors at Stanford. Through it I also learned about the Kahn Academy. I must say that getting to know these efforts made me feel similar to when I found Free Software: it’s hard to believe that such great things exist!

I learned some really cool stuff, and was also introduced to the amazing work of Sebastian Thrun with self-driving cars, it was an awesome experience! Last weekend I took the final exam, and today I got the certificate of accomplishment. It was delivered as a signed PDF which can be checked with a certificate they provided, pretty neat. I’m very happy, and motivated to enroll on more such courses in the future =). Now it’s time to cool down, though. My vacations start today, and on the weekend I’ll travel to the sunny Fortaleza, in northeastern Brazil, to enjoy some nice beaches and get some tan. See you next year!

Statement of Accomplishment - AIClass 2011

Statement of Accomplishment - AIClass 2011

20 de November de 2011

Pssst

Do you have 3 minutes? I’m running a small user survey about the information architecture of the GNOME website and its services. If you do, here’s the link.

18 de November de 2011

About being late, spending time, delivering GSoC tasks and my final paper

It’s been a long time since Google Summer of Code ended, and I still haven’t posted anything since August. I know I am very late (it’s hard to believe that 2011 is already coming to a close — Desktop Summit seemed like it was yesterday!), but besides being extremely busy with my regular job and lots of others little projects and my final paper, I don’t have an excuse.

I got 5 big tasks in my GSoC TODO list. I knew it was a lot right from the beginning, but I didn’t want to worry about the short timetable I would get in the program. I already was contributing in the web team and keeping working on it after GSoC wouldn’t be an issue. From May to August I got intense days in my university (considering it was winter here) and this delayed me a lot. I need to thank to Federico again for his support as my mentor :) .

As for the 5 tasks I got, I only didn’t work in one (which was about reorganizing the developer area). Two of the tasks are ready to be deployed (the one to add support for translating the GNOME website and the other to have a new applications area), and the other two (the community website — which I must say it could be an entire Summer of Code project — and the template update for subdomains) are half-done.

I’m about to give more details about my nearly finished tasks and on deploying them in another post soon (like the new Damned Lies template above which is completely out of context in this post) basically because I’m catching a bigger fish right now. For the past month I’ve been working in my final paper for university. I’m finishing my bachelors in Design and this is consuming all my free time as I need to get it done in the beginning of December. The good part is that it is an analysis of the information architecture for the GNOME website!

And as part of my final paper study, I’m about to publish a user survey which might give me some data regarding how people use GNOME website and its services. Stay tuned!

Meanwhile, please be patient :) . Thank you!

17 de November de 2011

Novos desafios

[português]

Oi gente, tudo bom?

Este é um post rápido, quero compartilhar uma novidade com vocês: Estou dando um grande passo na minha carreira profissional. Me mudei para São Paulo e estou trabalhando na Vex/OI como desenvolvedor linux embarcado.

Foram pouco mais de 6 anos no meu último emprego, numa usina de açúcar e álcool em Alagoas. Fiz muitos amigos e aprendi bastante lá. Foi uma ótima empresa de se trabalhar. Infelizmente lá eu não trabalhava com o que eu gosto: linux. Por isso estou de mudança.

Espero aprender bastante nesse novo emprego e, no tempo certo, contribuir de volta com a comunidade FLOSS, visto que usamos muita tecnologia livre aqui.

Por enquanto estou só, procurando lugar pra morar. A família vem no final do ano. Quem quiser nos visitar em Sampa, pode entrar em contato, será um prazer receber os amigos!

08 de November de 2011

Belas apresentações com o GNOME Pinpoint

Conheci o GNOME Pinpoint durante uma sessão hacking com o Vinícius na Latinoware e na mesma hora migrei a minha apresentação do LibreOffice Impress para ele. Como o slogan sugere, o Pinpoint é uma ferramenta que permitem que hackers criarem belas apresentações.

Ela funciona via terminal, você cria um arquivo texto com a sintaxe do programa e a executa.

O pinpoint possui recursos interessantes, transições, formatação dos textos, imagens de fundo, alteração em tempo real, dentre outros.

Aqui tem um pequeno vídeo mostrando o funcionamento da ferramenta.

Para quem quiser instalar e já ver "de qual é", tem um exemplo aqui.

Sei que tem pacotes para o Archlinux, outras distribuições eu ainda não pesquisei!

Espero ver nos eventos por ai todos usando! Boas novas apresentações!

Comentários | Link permanente
© Djavan Fagundes, 2010.

03 de November de 2011

O Ubuntu Brasil está de luto… :(

Foi com uma imensa dor que recebi a má notícia sobre o falecimento do meu amigo André Gondim.

Membro ativo desde a sua chegada para a comunidade Ubuntu Brasil, André começou como  tradutor, época em que eu administrava a equipe de tradutores,  e foi logo se destacando! Tornando logo em seguida um Ubuntu Member (Membro oficial do Ubuntu), membro do Conselho e herdando também a administração do time de tradução.

Fábio e Gondim

Sua força e vontade de viver era por mim notada, desde o nosso primeiro encontro no FISL 9.0 (2008), onde juntos palestramos sobre o time de tradutores. De lá pra cá foram mais eventos, conversas pelo IRC e posts pelo Planeta Ubuntu Brasil.

André “Gordinho” (Como eu o chamava) era pau pra toda obra! Ajudava a todos que precisassem de um help, colaborava com muitos artigos no seu blog, traduzia sem parar…  (Um devorador de strings sem tradução… :) ),etc…  Não é a toa que o time de tradutores do Ubuntu Brasil estava nas suas rédias há um bom tempo. Uma pessoa ímpar!

O que fica agora é a saudade… e a certeza que você está num lugar melhor! Em nome do Conselho Ubuntu Brasil e toda a Comunidade Ubuntu Brasil venho aqui agradecer por tudo que você fez por todos nós… Por levar o nome do Ubuntu para todos os cantos de forma indelével! Por ser uma grande pessoa!

Vá em paz… descanse em paz!

 

TwitterFacebookGoogle ReaderLinkedInDeliciousPingBlinklistRedditGoogle GmailFriendFeedTechnorati FavoritesShare

02 de November de 2011

Ubuntu Tweak: Ajustes e configurações num só clique!

Num outro post, falei sobre como deixar o GNOME 3.2 do seu jeito. Sendo assim, pra evitar o ciúme, que tal agora deixar o Ubuntu e Unity com a sua cara? Então entra em ação o Ubuntu Tweak!

Ubuntu Tweak

Com o Ubuntu Tweak, é possível:

- Alterar os temas, fontes e configurações do Ubuntu (Aparência, inicialização, Sistema, etc..);

- Configurar o Unity;

- Efetuar limpeza de arquivos desnecessários no Ubuntu;

- Etc…

Uma gama de utilitários para deixar o seu Ubuntu redondinho!

Para instalar o Ubuntu Tweak, abra o seu terminal e execute:

sudo add-apt-repository http://ppa.launchpad.net/tualatrix/next/ubuntu

Assim que adicionado o ppa ao repositório, atualize o mesmo e instale o Ubuntu Tweak executando:

sudo apt-get update && sudo apt-get install ubuntu-tweak

Pronto… instalado com sucesso!

Até!

 

TwitterFacebookGoogle ReaderLinkedInDeliciousPingBlinklistRedditGoogle GmailFriendFeedTechnorati FavoritesShare

25 de October de 2011

Latinoware 2011

Na semana passada estive na Latinoware! E achei uma ótima experiência!

Entrada da Latinoware

A organização do evento está de parabéns! Estava tudo impecável! Hotel, infra, atenção aos palestrantes..

Apresentei 2 trabalhos, um deles sobre formas de contribuir com o GNOME e outro sobre o OpenStreetMap.
Além de Foz conheci também Puerto Iguazú na Argentina, onde comprei alguns vinhos com ótimo preço, além de termos jantado em um ótimo restaurante.

Além disso, foi ótimo rever alguns amigos! Ano que vem com certeza farei o possível para ir novamente!

E o Wille postou os slides da nossa apresentação sobre OSM! Além dos links de nossa entrevista. Aguarde que em breve posto a minha apresentação sobre o GNOME.


Post no site da Latinoware
Post no Blog do SERPRO
Link da revista do SERPRO

Comentários | Link permanente
© Djavan Fagundes, 2010.

10 de October de 2011

Get Involved in Firefox Mobile

I’ve volunteered to be a community steward for the Mobile team as part of the Contributor Stewards program that has been recently created in Mozilla. My role as a community steward is to find ways to get more people involved in Firefox Mobile.

As a first step, I thought it would be a good idea to create a Get Involved page for the Mobile team. This page is meant to have only the minimal steps to start contributing to different areas of the project—it shouldn’t feel overwhelming. For now, it only has content for hacking and testing but it will include other areas soon.

I have also compiled a list of bugs that are good for first-time contributors and assigned mentors to each of them. The mentors and other team members will assist you with any missing information and useful source code links.

If you’re still unsure where to start after reading the Get Involved page, we’re always on IRC to answer any questions you might have. Firefox Mobile is a key part of Mozilla’s future and is definitely an exciting project to be part of. Join us!

08 de October de 2011

Terça, 11 de outubro: último dia para trocar produtos por moeda social antes do BrechóEcoSolidário2011!

Para quem ainda não sabe, o Brechó Eco Solidário é um mercado de trocas de produtos usados através da moeda social “grão”, realizado anualmente junto com um mercado de produtos da economia solidária e diversas atividades culturais.

Esse ano o evento acontece mais na uma vez no Parque da Cidade qui de Salvador, no dia 29 de outubro. Por falar nisso, o recolhimento de produtos nos postos de troca já começou! Em alguns pontos como de alguma Universidade da cidade, as roupas, livros, brinquedos e utensílios domésticos que foram trocados pela moeda social Grão, já foram recolhidos para serem disponibilizados no dia do Brechó.

Todos os demais postos de troca, incluindo o da Colivre, já estão se articulando para que até terça, 11 de outubro, todos os produtos sejam recolhidos.  Para quem perder essas datas, uma última oportunidade: as trocas voltarão a ser feitas no dia do Evento (29/10), no Parque da Cidade. ;)

20 de September de 2011

HTML5 Form Validation in Firefox Mobile

My patches to add HTML5 form validation support to Firefox Mobile have landed in trunk yesterday. This feature has been available on desktop since Firefox 4 but it wasn’t implemented in Firefox Mobile until now.

In case you haven’t heard about it, HTML5 supports automatic input validation. This means that your browser can take care of validating form fields for you—no need to write custom JavaScript code to check for required fields or validate common types of input such as numbers, emails, URLs, etc.

So, how does HTML5 form validation look in Firefox Mobile? Very similar to Firefox on desktop. If you submit a form that contains any invalid data—an invalid email address, a required field that was not filled in, and so on—the form will not be submitted, all invalid fields will be marked with a subtle red border, and the first invalid element will be automatically focused showing its respective validation message (see image above).

As far as I know, the only mobile browsers that support HTML5 form validation right now are Firefox and Opera. You can try this feature on our mobile nightly build. As usual, general feedback, bug reports, and patches are welcome!

25 de August de 2011

Cinco anos de Blog…

Even through times of high and low with the published post… here we are!! today, is a birthday of my blog, we five years of life!! =]


17 de August de 2011

- Problemas com GCC + __sync_synchronize()

Durante esses dias discutindo com um amigo sobre o acesso a memoria de forma atômica, e durante alguns testes e provas de conceito surgiram alguns problemas devido ao esquema de synchronize ser um recurso dependente da plataforma e compilador.

Como a chamada __sync_synchronize() e nativa no compilador, e dependendo da versão não vai estar disponivel. segue abaixo uma solução:

Contornando o Problema

#include <stdio.h>

#ifdef NO_SYNC_SYNCHRONIZE
#warning "Ops! Don't have native __sync_synchronize(), using the asm hardcode."
#    define __sync_synchronize() __asm__ __volatile__ ( "rep;nop": : :"memory" );
#endif

#define my__sync_synchronize() __sync_synchronize()

int
main ()
{
    int foo = 0;

    printf ("Trecho abaixo será atômico!\n");
    foo = 0xd34db33f;
    my__sync_synchronize ();

    return 0;
}

* Levando em consideração o uso sobre a plataforma x86.

Mais sobre o assunto.


03 de June de 2011

I Encontro De Blogueiros Progressistas da Bahia!

Nos dias 10 e 11 de junho, Salvador sediará o I Encontro de Blogueiros e demais Ativistas Digitais progressistas da Bahia.

O evento que acontecerá no hotel Fiesta, terá participação de centenas de militantes de todo o estado que atuam na área da blogosfera através de blogs, sites, twitter, Identi.ca e demais redes sociais.

Na pauta, principais bandeiras dos ativistas como, por exemplo o marco regulatório e universalização da banda larga.

 

Além da presença do secretário de comunicação do estado da Bahia, Robinson Almeida, já estão confirmadas as presenças de peso nacional para o encontro como o jornalista Paulo Henrique Amorim, Altamiro Borges, entre outros convidados.

Acesse o blog e a comunidade para inscrição e Participe!

http://blogprogbahia.wordpress.com

http://softwarelivre.org/blogprogbahia


Obs. As inscrições são gratuitas, porém limitadas. ;)

30 de May de 2011

Vixe Maria!!!

.
Pô gente, foi mals...

Quando liguei a opção de "moderar comentários", achei que o blog me enviaria avisos dos comentários que precisavam ser moderados... Hoje, ao entrar aqui no "painel de controle", vi que tem uns 30 comentários aguardando moderação!!! Vixe Maria!!

Vou fazer isso agora. Mas peço desculpas a todos que postaram comentários. Foi malzaço mesmo... :-/

Abraços a todas e a todos!
Carlão

27 de May de 2011

Software livre, ajude a fazer

Este post é direcionado a programadores. Repasse-o pra todos os programadores que você conhece. O software livre agradece!

Oi gente, esse é um assunto que sempre menciono nos eventos que vou, e que me incomoda bastante. Por estes dias tava com vontade de fazer um post simples e prático sobre o assunto. Felizmente aconteceram 3 coisas que me motivaram a escrevê-lo:

  1. Depois de ter aberto um bug no ano passado, ainda sem solução, resolvi escrever um pequeno patch que foi aceito, com modificações;
  2. Li isso: http://www.dicas-l.com.br/arquivo/yad_yet_another_dialog.php;
  3. Jomar escreveu um ótimo artigo exatamente sobre esse tema: http://www.trezentos.blog.br/?p=5907

Por que as pessoas se referem ao software livre sempre na terceira pessoa: “Eles”? É comum a gente ouvir:

- Quando o software X implementar a feature Y eu migro.
- Software X? Ah, ele tem muitos bugs, prefiro esperar ficar redondo.
- Não gostei da versão nova do software X. Vou ficar na atual ou testar uma alternativa.
- O pessoal do projeto X é devagar demais.

Gente, quando é que vai cair a ficha que o software é livre e que nós podemos mudá-lo? Vocês já pararam pra pensar que podem tornar o software X um software melhor? Não tô entrando aqui no mérito da liberdade de escolha, você é livre pra usar o software que quiser. O recado aqui é para programadores, que querem ao mesmo tempo ganhar experiência e contribuir para um mundo melhor.

Contribuir com código não é um bicho de 7 cabeças. Software é software em todo lugar do mundo, e software livre é a melhor forma de espalhar e receber conhecimento. Vejam aqui um exemplo muito simples, porém prático de como você pode fazer a coisa acontecer, ao invés de simplesmente esperar “eles” resolverem o bug (explicação do item 1 lá de cima):

  • Ano: 2008. Senti a falta de um conversor de moedas no GNOME. Reportei meu desejo no bugzilla: https://bugzilla.gnome.org/show_bug.cgi?id=533690. Pouco mais de 1 ano depois esse recurso foi implementado.
  • Ano: 2010. Usando o recurso acima, senti a falta de um botão pra trocar de moedas. Da mesma forma, reportei meu desejo: https://bugzilla.gnome.org/show_bug.cgi?id=633193.
  • Ano: 2011. 7 meses depois, usando muito o recurso e sentindo realmente falta do tal botão, resolvi dar uma olhada no fonte e ver se seria fácil sua implementação. E foi. Submeti um patch, que no mesmo dia foi aceito, com algumas modificações feitas pelo mantenedor. Na próxima versão, a calculadora do GNOME virá com esse recurso.

O que quero mostrar com isso? Que o software livre basicamente é movido por empresas e voluntários. Se uma empresa não tem interesse em determinado recurso (a ponto de alocar um funcionário para implementá-lo), o recurso tem que ser implementado por algum voluntário. Então, ao invés de ficar dizendo “Eles não ligam pra minha opinião, reportei o bug há mais de um ano e nada até agora…”, simplesmente tente resolver você mesmo! Algumas considerações:

  • Mesmo que o seu patch não esteja correto, não tenha medo de enviá-lo. Dependendo do grau de complexidade, o desenvolvedor pode sugerir algumas modificações, explicar porque tá errado, onde tá errado e tal e pedir pra você corrigir e reenviar… ou ele pode simplesmente modificar e seu patch e aplicá-lo diretamente (foi o que aconteceu comigo acima).
  • Há sempre a possibilidade de entrar em contato direto com o desenvolvedor/mantenedor, via email, irc, jabber, etc. Assim, você pode tirar dúvidas, pedir um direcionamento, e coisas do tipo, antes de efetivamente enviar seu patch para avaliação.

Quanto ao item 2 lá em cima, até mencionei minha “indignação” nos microblogs, e algumas pessoas me perguntaram o por quê. Deixa eu explicar: Minha indignação, neste caso, não é com a pessoa do Júlio. Não quero nem discutir isso. É que tô cansado de ver empresas e pessoas que ganham a vida com software livre, seja usando em seu trabalho, seja escrevendo livros, seja dando aulas, enfim, você captou a ideia, e que são aptas a escrever (ou pagar alguém que escreva) código livre mas não o fazem. Neste caso específico, o Júlio citou no post:

“Sempre esperei que a qualquer momento o gnome lançaria uma nova versão deste software [...] Estava enganado, acompanhei o lançamento de diversas revisões do software mas elas simplesmente tratavam bugs e apresentação. Infelizmente nada de inovação. Porém um dia descobri o YAD.”

Veja que o gnome está sendo tratado na terceira pessoa. “Eles”. Segue o mesmo raciocínio que usei acima. Tanto para o Júlio como para os criadores do YAD. Se o zenity não tava atendendo as expectativas, por que não ajuda-lo? Por que não implementar os recursos tão desejados?

Quanto ao item 3 lá de cima, não tenho muito o que falar. Leiam o texto do Jomar, é muito bom!

Enfim, esse “desabafo” é uma forma de mostrar pra vocês que o software livre é nosso! Vamos colaborar mais (com código). Afinal de contas, já recebemos tanto, de tantos desenvolvedores espalhados pelo mundo, o que custa doar um pouco do nosso tempo e conhecimento como uma forma de retribuição?

Então, esse lance de falar na terceira pessoa (“eles”, “o gnome”, “o pessoal do kde”, etc), deixa para os leigos, meros usuários de software. Na próxima vez que for criticar algum software livre, tome ele para si e pense em uma forma de ajudar, beleza? :)

Botão para escolher entre "tree" e "places" no Nautilus Elementary

.
Você instalou o ótimo Nautilus Elementary, mas não gostou de perder aquele botãozinho que trocava entre a visão "tree" e "places", do painel da esquerda?

Nada mais fácil de resolver...

  • abra o terminal;
  • execute o gconf-editor;
  • abra o "diretório" apps;
  • dentro de apps, procure e abra o "diretório" nautilus;
  • dentro dele, clique em "preferences";
  • marque "sidebar_show_places_menu";
  • feche o gconf-editor
  • feche o terminal.... (dããã!)

Se tiver algum nautilus aberto, feche e reabra.

Tão fácil que nem vou colocar screenshots... :-)

Abraços!
Carlão

22 de May de 2011

Meu ambiente de desenvolvimento em 7 itens

Resolvi participar deste meme e, aqui vai, meu ambiente de desenvolvimento em 7 itens:

1) Hardware e Sistema Operacional

Minha principalmente máquina para desenvolvimento é um Macbook Pro de 13 polegadas (modelo 2011), com 8GB de RAM, Intel Core i7 2.7Ghz e 256 GB SSD. Confesso que os 8GB de RAM não estão fazendo tanta diferença (utilizo bem menos que isso), mas o SSD faz milagres. Recomendo a todos que, assim que tiverem a oportunidade, substituam seus HDs por SSDs.

UPDATE: Muita gente me perguntou como consegui o SSD. Eu já comprei o Macbook com ele, na loja da Apple, com desconto para desenvolvedores. Na verdade, minha grande amiga e mac maníaca, Marília Guimarães, quem fez a compra nos EUA e o trouxe para cá. O desconto que a Apple dá para desenvolvedores é bem significativo (coisa de $250), mas exige que você tenha um endereço nos EUA. A vantagem de comprar o Macbook com SSD da própria Apple é que ele já vem com suporte a TRIM, o que melhora a vida útil do mesmo.

No Macbook rodo exclusivamente Mac OS X 10.6.8. Há alguns meses o Linux deixou de ser meu sistema operacional principal, apesar de continuar administrando diversos servidores (mas para isso preciso apenas de um Terminal :).

Quando estou desenvolvendo costumo ligar o macbook a um monitor externo de 22′. Programar com duas telas melhora bastante a produtividade, mesmo quando elas não possuem o mesmo tamanho.

2) Linguagens de Programação

Python é, provavelmente, a linguagem que mais utilizo. Escrevo ferramentas para Unix, utilitários no trabalho e estou portando todos meus scripts em bash para python. Entretanto, a cada dia que passa eu tenho programado mais em Objective C, pois tenho feito bastante coisa para iOS (iPhone e iPad). Acredito que em poucas semanas meus pontos na skill “Objective C” irão superar os da skill “Python”.

Também ainda programo um pouquinho em Bash, mantendo alguns scripts antigos.

3) Editores e IDEs

Minhas linhas de Python e Bash são praticamente todas feitas no Textmate, um fantástico editor para Mac OS X, cheio de atalhos e snippets que colocam sua produtividade lá em cima. Recentemente comecei a experimentar o Coda e o Espresso, pois o Textmate está sem atualizações há algum tempo.

Quando estou programando para iPhone e iPad (Objective C) eu sempre uso o Xcode. Não gosto muito dele, mas ainda é a melhor opção (se não for a única) para quem quer programar para estas plataformas.

4) Controle de Versão

No trabalho costumo usar o Git. Em projetos open source depende bastante do resto da equipe. Em alguns casos também uso o Git, hospedando no GitHub, mas em outros uso o Mercurial, hospedando no Google Code. Gosto muito de ambos.

5) Virtualização

Utilizo o Vmware Fusion para virtualizar outros sistemas operacionais quando preciso. Ele é muito bem integrado com o Mac e, sinceramente, não tenho nada a reclamar. Entretanto, minha necessidade de virtualizar algo está cada dia menor. Hoje tenho apenas uma VM para o Backtrack e outra com Cent OS.

6) Softwares

Os softwares que mais uso são:

  • Chrome: Na minha opinião, o melhor browser da atualidade. Leve, relativamente seguro e cheio de recursos. Faço questão de utilizar o build de desenvolvimento do Chrome que, apesar de ser considerado instável, me atende bem e permite que eu teste muitos recursos antes deles chegarem na versão estável.
  • Keynote: Ótimo para fazer apresentações para eventos, clientes e para a própria equipe. Deixa o PowerPoint no chinelo.
  • Adium: Sempre estou disponível no Gtalk e o Adium é um ótimo cliente para Mac.
  • PivotalTracker: Utilizamos SCRUM no trabalho e o PivotalTracker é um ótimo sistema para gerenciamento de tarefas, que se casa perfeitamente com o SCRUM.
  • Campfire: Quando a equipe toda precisa bater um papo online, nós utilizamos o campfire. Além do bate-papo, o sistema permite anexar arquivos e compartilhar códigos.
  • Git-Tower: uma ótima interface gráfica para gerenciamento de repositórios Git. Bonita, prática e funcional.
  • Ecoute: Não gosto do iTunes, então tive que procurar um bom player para o Mac. O Ecoute foi sugestão de um amigo e a escolha foi mais que certa. Possui os recursos que mais gosto como, por exemplo, lastfm, minimalismo, controle no desktop, capas etc.
  • Sparrow: Sou fanboy do Gmail e, quase sempre, o utilizo pela interface web mesmo. Ultimamente estou tentando utilizá-lo no desktop, para ver se tenho algum ganho de produtividade. Nestas ocasiões, uso o Sparrow Mail, o cliente para Mac que mais se aproxima da experiência real do Gmail.
  • Terminal: Vira e volta preciso fazer algo via linha de comando. Utilizo o próprio Terminal do Mac, mas com alguns recursos adicionais.
  • Things: Ótima ferramenta para gerenciamento de tarefas.
  • 1Password: Não dá para lembrar de todas as senhas, de todos os sites. Por isso, deixo o 1Password fazer o trabalho sujo para mim.

7) Música

Não dá para trabalhar sem música. Na verdade, eu conseguiria colocá-la em quase todos os momentos da minha vida. Prefiro escutar música com fones de ouvido, ao invés de som ambiente.

Só gosto do bom e velho Rock And Roll, Blues e Jazz. Led Zeppelin, Deep Purple, Pink Floyd, Black Sabbath, Beatles, Metallica, AC/DC, Neil Young, Creedence Clearwater Revival, Steve Ray Vaughan, BB King, ZZ Top e por aí vai. Axé, pagode e essas bandinhas emo, tipo NX Zero e Restart, são totalmente proibidas na playlist.

E seu ambiente de desenvolvimento, como é?

Agregador com blogs sobre desenvolvimento para iOS

Recentemente criei um agregador com diversos blogs sobre desenvolvimento para iOS.
 Criei dois, na verdade. Um com blogs em inglês e outro com blogs
 nacionais:

A ideia é agregar os blogs como um todo, sem a censura bitolada que
outros agregadores de blogs usam para filtrar o conteúdo que é
publicado.

Para participar do agregador não precisa falar apenas sobre
desenvolvimento para iOS, mas isto tem que ser o foco principal. Eu 
até aceito outros tipos de posts, já que há outros temas que podem nos
interessar (boas práticas, metodologia etc).

Gostaria de sugestões de blogs que podem ser adicionados ao planeta. Principalmente blogs nacionais.

15 de May de 2011

Minha primeira semana com o Xoom

Mensagens subliminares...

A pouco mais de uma semana estou usando o Xoom da Motorola, o primeiro tablet com o Android Honeycomb, e até o momento as impressões que tive são as melhores possiveis.

Desde de quando começou essa explosão de tablets,  sempre me perguntei duas coisas: para que eu teria um tablet e para que isso serve? A resposta para esses questionamentos estará no fim do post.

Logo que você liga o aparelho você tem uma pequena má surpresa, no modelo 3G ele requer um sim card para que você possa entrar no sistema, passado esse pequeno incomodo, logo você está configurando sua conta Google.

O xoom, como dito anteriormente, vem com o Android 3.0 e para quem está acostumado com o sistema Android logo percebe as diferenças, é uma interface bem diferente e com conceitos diferentes. O dispositivo não tem botões de navegação, ele tem apenas o botão de liga e desliga e os controles de volume, toda a navegação é feita por software na própria tela do Xoom.

Transição de tela

A primeira vista a transição de tela do Xoom é lenta ao se comparar com o Ipad, contudo, depois de muito pensar a respeito eu notei que o ambiente do Xoom é 3D e quando você vai mudar de ambiente ele gira o foco e renderiza os icones. Isso é o mais puro achismo e não tem o mínimo embasamento  técnico. De qualquer forma em qualquer programa a transição de telas no Xoom é rápida e suave.

Cameras

O Xoom tem duas cameras, uma frontal para video chamadas e uma traseira para filmagens e fotos. As duas cameras me impressionaram bastante, mas a camera frontal numa chamada de video do Gtalk me surpreendeu.

Aplicativos

Engraçado como ao ler reviews em alguns sites/blogs de tecnologia algo que sempre é colocado em evidencia, talvez por falta de imparcialidade e paixão pelo concorrente, é o fato de ter poucos aplicativos modificados/desenvolvidos para uma tela de 10.1 polegadas. Quando você começa a usar o xoom e instalar os aplicativos que você está acostumado a usar no seu celular, você não nota grandes diferenças ou impecilhos de uso. Por exemplo, uso o twicca que é um cliente para twitter e ele obviamente não é modificado para o tablet e simplesmente ele só amplia a experiência que eu tinha no celular.

As melhores surpresas no honeycomb são os apps do Gmail e Gtalk. A interface do Gmail para tablet é fantastica, dá até vontade de não usar mais a interface web ;) . O Gtalk como eu já disse, tem a capacidade de chat com video que é algo que sempre senti falta e o melhor, as chamadas podem ser feitas do xoom para qualquer outro device com Gtalk e suporte a video, sem restrições de sistema operacional!

Outro ponto forte, a Motorola antes de lançar o Xoom logo correu e fez diversas parcerias e assim é possivel ter app da Saraiva que te dá direito a 6 livros gratuitos, app da Folha e da Abril, entre outros. Eu não sou um grande fã da leitura digital, eu realmente gosto de ter o livro e le-lo da maneira que eu achar melhor. Lê no Xoom não é ruim, mas não chega a ser a experiencia mais agradavel e isso vale para qualquer tablet, o peso deles dependendo da posição gera um certo desconforto. Para leituras ocasionais acredito que ele se de muito bem.

Navegador

O navegador é uma versão leve do chrome, que na pratica que dizer que você tem um browser normal no seu tablet apesar da maioria dos sites reconhece-lo como um navegador mobile, o que não é tão ruim, pois a leitura nas versões mobiles geralmente são melhores. Outro ponto forte é a possibilidade de sincronizar o chrome do Xoom, desse modo você tem um ambiente de navegação unico em todos os seus devices independente de sistema operacional.

Travamentos

Rá! Nenhuma até o momento, e olha que uso muito e já instalei tudo que é tranqueira nele.

Updates

O xoom americano tem software 100% Google, na pratica isso quer dizer que o Google é responsavel pelos updates. No Brasil, a Motorola usa uma room baseada na americana para atender as redes de telefonia 3G e talvez outras coisas mais. Em partes os donos do Xoom brasileiro precisam da motorola para terem versões atualizadas, na pratica isso pode ser um pouco diferente já que o bootloader do dispositivo é destravado…

Conclusão

A ideia aqui não era dar um review tecnico, as especificações estão por toda a internet, queria mesmo era passar um pouco da experiencia de uso.

Ainda continuo sem saber qual a utilidade de tablet, uma vez que ele faz um pouco de tudo. Acredito que o principal seja ter um ambiente, de certa forma ilimitado, a mão a qualquer momento.

Quer comprar um tablet, o Xoom é uma ótima opção e eu recomendo fortemente. Ótimo hardware e muito bom software fazem do Xoom de longe o melhor tablet que já tive contato.

 

 

07 de April de 2011

12 de March de 2011

Cheese 2.91.91 using Camerabin

In January I started changing Cheese to use Camerabin as its pipeline base. I blogged about it twice, but, in case you missed it or forgot everything about it, let me repeat myself: Camerabin is the high level GStreamer element that basically does what a camera does, that is, take pictures, record video and show preview. Since Cheese does all that and more, it makes sense to use this element instead of re-implementing it all. The news part is that this work is now in Cheese’s master branch and also in release 2.91.91.

There are some other things I haven’t posted about yet:

Event handling: There was a warning in Cheese after the change to Camerabin which said “Internal GStreamer error: clock problem“. Investigating that I discovered that it was a problem in the input-selector that Camerabin uses internally.

Right now Camerabin has a copy of input-selector, because it uses the “select-all” property that was removed from current input-selector. The problem was that the input-selector didn’t handle upstream events (from the sink to the source direction) when the input-selector had the “select-all” property set. Well, input-selector can have many inputs and choose among them, as you can guess from the name. So, when select-all is set you need to send the event to all of those inputs. Other than the warning, this actually has no effect in Cheese’s case, because the event that is not forwarded (a latency event) wouldn’t actually be handled by the elements that don’t get it. Even so, I submitted a patch which was committed to master branch of gst-plugins-bad.

Taking photo without saving: Cheese Camera has a method that takes a photo and then provides the picture as a GDK pixbuf without saving it. The api may not be the best and there were some nice comments on how to improve it, but at least in Cheese without Camerabin this worked and it was used inside of cheese-avatar-chooser. Well, I didn’t realize that before my last blog post about Camerabin, but this was totally broken in my Camerabin branch, in fact, I hadn’t implement it at all.

Camerabin can send a preview message after taking a photo if you set the preview-caps with the desired format for the preview. I thought using the preview message was the best way to implement cheese_camera_take_photo_pixbuf(). The problem is that Camerabin only took photos to save them too, meaning the file name of the photo to be saved had to be set. Right now Cheese works around that by setting the file name to /dev/null, but I also sent a patch to Camerabin to allow taking a picture without saving if preview-caps is set, meaning it won’t encode the image just to save it to /dev/null. I’m keeping the workaround for now, since the change wasn’t released yet, but we will be able to remove it in the future.

Many thanks to Thiago Santos, who held my hand when I met those and other problems in Camerabin and who always encourages me to fix stuff and send patches.

I’m very excited about this change in Cheese. I’m sure there will be bugs, but I think using Camerabin will make some improvements in Cheese easier and we will grow with Camerabin (and maybe Camerabin2 in the future) and also push it to be better.

02 de March de 2011

Terminator no GNOME

Sim, vamos falar de Terminator, e não, não estamos falando do Arnold ;)

O Terminator é um terminal simples e IMHO muito mais produtivo que os terminais mais comuns(gnome-terminal) ou mais alternativos(guake) encontrados para GNOME.

O principal recurso, que o diferencia dos outros, é o fator de poder dividir e sub-dividir a janela em pequenos terminais. Usando um monitor grande, ele é praticamente a ultima coca-cola do deserto!

Quando você abre o terminal a tela dele é comum

Com essa tela aberta você trata-la como um gnome-terminal e abrir abas com um simples Ctrl+t . Mas nossa ideia é aproveitar as funções de divisão de telas. Então com um Ctrl+shift+e você divide a tela verticalmente como mostrado abaixo.

Com essa tela eu geralmente movo o foco para o terminal da esquerda, você pode navegar entre terminais tanto clicando neles ou com ALT+seta direcional, e a divido-a horizontalmente com Ctrl+shift+o.  Essa é a minha tela padrão de trabalho. Uso o terminal comprido para atividades que requerem uma tela mais extensa e as menores para conexões locais e ssh usando screen(falarei mais e mostrarei dicas e meu arquivo de configuração no proximo post).

Em qualquer um dos terminais você pode maximiza-lo para preencher a tela inteira com um simples Ctrl+shift+x.

Esse é o modo em que eu o uso, eu já tentei faze-lo salvar esse estado mas não consegui e pela mais pura preguiça não tentei mais ou mesmo alterei o Terminator para fazer isso. Se você o usa, ou começou a usar agora por causa do post, conte aqui como é a sua configuração ideal de tela.

Você encontra o Terminator nos melhores repositórios da sua distro favorita. :)

Atualização: o Vitor deixou a dica aqui nos comentários de como fazer para salvar as configurações do Terminator, testei aqui e funcionou bem ;)

20 de February de 2011

My GTK3 porting story

It is now possible to run Cheese using GTK+ 3 getting it from Cheese’s branch gtk3.

Cheese has a gtk3 branch for a while, but until very recently it only had one patch changing mostly versions in configure.ac. Then Bastien Nocera made 3 more patches changing code of CheeseWidget, CheeseFlash and um-crop-area. I wanted to use the changes, and silly me, I thought the branch was going to compile when I first tried to run it. It turns out that I spent days on it until it finally compiled and then a little more time before I was able to run it.

Most of the changes were on build system and Cheese’s vala code. I have never programmed in vala before, so this was a learning opportunity with some challenges in the way.

Funny story

Cheese was still using libunique-1.0, but in order to work with gtk3 I would have to switch to libunique-3.0. There was no vala binding for libunique 3, but I also hadn’t found one for clutter-gtk-1.0 and I was using the GObject Instrospection one instead and it seemed to work at the time.

Using gir files didn’t work so well with libunique. Vala was loading the right gir file, but it said the namespace “Unique” did not exist. So, I asked for help on the #vala channel. The first piece of advice was to switch to GApplication instead of using libunique, but I didn’t know how hard that would be and I wanted to understand why I was unable to use libunique-3.0 first. With some more help from someone else in the #vala channel I found out that the Unique-3.0.gir file had the wrong package name on it. As I didn’t know how to fix that and I didn’t even know if it was a problem in libunique or a GObject Introspection parsing problem I asked for help in #introspection.

In the #introspection channel, Emmanuele Bassi (ebassi) was the one that helped me, libunique’s maintainer. Isn’t it nice when that happens? I mean, you’re just asking for anyone less clueless than you to help, but you can actually talk with people that work on what you’re using. Anyway, continuing with the long story, ebassi told me the problem was in libunique, that he wouldn’t work on it soon, but he encouraged me to file a bug for it and I did. It turned out that the bug was easy to fix (for him at least) and something like 15 mins later he had fixed it and pushed it to master already. That was a nice surprise!

But my problems didn’t end there. After I fixed some GObject Introspection annotation in libunique for my code to work, valac started to crash with a segfault. I reported it, but I still don’t know what the exact problem was. The only way I found to fix it was to switch to GtkApplication and stop using libunique. If only I had listened to that first advice! Using clutter-gtk with GObject Introspection did not work in the end either, but turns out I was just missing the recently released vala binding for it.

I learned many things on this quest. I had never looked at gir files or vapi files before and I learned a little trying to debug and fix problems. The non-technical lessons were: it’s really painful to use stuff that is new and not widely used (yet?), you will find problems. But it’s also very nice to be able to fix the problems and work with helpful people.

By the way, to share my love for GNOME I’m organizing a GNOME 3.0 Release party in my town – Belo Horizonte, Brazil. So, if you’re in the area, save April 9th and get in touch if you want to help with organization.

Update: Patricia Santana Cruz had already made a patch to port Cheese to Gtk.Application (which is also way better than mine), so if I was any smarter I wouldn’t have half of the work I did. And now I know she is also one of the responsibles for we having the clutter-gtk-1.0 binding for vala too and she is working on some more bugs in vala and going after the warnings that affects Cheese. In short, she is awesome!

13 de February de 2011

O Nícolas chegou.

Olá pessoal,

O Nícolas chegou :D . Na verdade ele chegou há 22 dias, mas confesso que ainda não tinha achado tempo e inspiração para escrever, foi mais falta de tempo do que inspiração, mas hoje saiu.

Bom, ele chegou com 36 semans, convertendo isso para meses foi no 8º mês que ele nasceu. Veio um pouco prematuro, mas veio saudável.

Ele, apesar de ter nascido com 8 meses, nasceu com bastante saúde. A data do  nascimento dele foi dia 21/01/2011, um dia depois do aniversário da Carol, minha esposa.

Penso que este foi o maior presente dela, e sem dúvida meu também.

Hoje, já com 22 dias, ele é um moleque esperto e sistemático (Sinto algo semelhante com minha pessoa no ar hehe).

Então para quem ainda não o viu, vou colocar a fotinha dele aqui para todos.

Nícolas Volpato Jorge

Nícolas Volpato Jorge

Não tem muito o que falar… quem é pai sabe o que eu to tentando falar neste pequeno post.

Um abraço para todos.

Ps.: Recomendo um filhão para quem ainda não tem :D

Google Bookmarks Technorati Favorites Twitter Facebook Google Buzz LinkedIn FriendFeed Identi.ca Orkut Tumblr Delicious Reddit WordPress Share


29 de January de 2011

05 de November de 2010

Falta de competência ou má-fé?

Quando o meu notebook começou a apresentar uma falha na imagem de acordo com a inclinação da tela, achei que era algum cabo solto. Como isso foi só piorando, e infelizmente a garantia havia expirado há poucos dias, resolvi levá-lo numa loja no prédio onde trabalho aqui em Brasília. Trata-se da loja Só Notebook. O orçamento chegou salgado: R$ 600 ou R$ 650, não me lembro bem. Segundo o técnico, o problema era a tela, que deveria ser trocada e por, coincidência, havia uma lá no estoque. Embora eles tenham demorado a dar o orçamento, prometeram fazer o serviço bem rápido.

Não fiquei convencido e resolvi levar o notebook na loja autorizada da Positivo: a PcLink. Sim, é aquele SIM + 1455. Logo que deixei o notebook lá, o rapaz arriscou: “Deve ser o cabo flat; se for, sai R$ 250.” Após alguns dias veio a confirmação. O notebook agora está funcionando muito bem. O que dizer disso?


Filed under: Variedades

27 de October de 2010

Listadmin: Administrando as filas do mailman de forma rápida e simples

mailman

Além de fazer parte do Sysadmin Team do GNOME também colaboro com o Moderator Team. Esta equipe de 02 pessoas é responsável por moderar todas as 250 listas existentes no Projeto GNOME.

Até pouquissimo tempo este trabalho ultra-chato era feito através do ambiente de gerência Web, só que as coisas estão mudando.

Christer Edwards, atual coordenador dos Sysadmins, recomendou a utilização da ferramenta listadmin. Esta excelente ferramenta facilita a moderação de várias listas de discurssão de forma bastante eficaz através da linha de comando.

Agora vamos ao que interessa:


Instalação

aptitude install listadmin


Configuração

Crie o arquivo .listadmin.ini no diretório home do seu usuário com a seguinte sintaxe:

adminurl – Informe a URL da lista
default – Informe a ação padrão Approve,Reject,Discard,Skip,view Body,Full,jump
log – Informe onde será gravado o arquivo de log

password – Informe a senha da lista
lista@domain.com – Informe o email da lista

Exemplo:

vim ~/.listadmin.ini

adminurl http://mail.gnome.org/mailman/admindb/gnome-love
default discard
log ~/.listadmin.log

password senhalista
gnome-love@gnome.org

Altere as permissões do arquivo

chmod 744 ~/.listadmin.ini

Agora é só correr pro abraço

listadmin

[1/1] ============== gnome-love@gnome.org ==============================
From: skovacs@duaa.duke.edu
Subject: Oct 27/10/2010
Reason: Post by non-member to a members-only list Spam? 2
Approve/Reject/Discard/Skip/view Body/Full/jump #/Undo/Help/Quit [D] ?
Submit changes? [yes]

Desta forma a administração das listas do GNOME ficará simples e rápida.

19 de October de 2010

Linux no Brasil? Só em computador caro

Criticar o movimento do software livre é sempre uma atitude perigosa, mas tem algo que eu realmente não entendo.

O governo brasileiro criou um projeto para baratear computadores chamado “Computador para todos” e incentiva o uso de software livre. Contudo, os computadores mais baratos vendidos pelas lojas são montados com placas SiS e VIA, empresas que notoriamente não investem em drivers para o sistema operacional Linux. O resultado disso é que para esses computadores funcionarem com Linux são necessárias algumas gambiarras. Se a comunidade estimular consumidores a instalarem Linux em suas máquinas populares, estes novos usuários podem enfrentar um grande aborrecimento e confirmar aquela máxima: Linux é difícil.

Os desenvolvedores de fora do Brasil não estão muito preocupados com isso. Pelo menos é o que se observa nos fóruns. Se os próprios desenvolvedores brasileiros não desenvolverem drivers para essas placas, o panorama do Linux continuará a ser irônico: só os usuários que possuem máquinas mais caras, bem montadas, usam o sistema operacional livre. Se a base de usuários é 1%, 2% ou mais… não importa. Ela permanecerá limitada aqui no Brasil ao hardware de boa qualidade.

Sabemos que o usuário Xing Ling ganha espaço e os produtos chineses há tempos já invadem o Brasil (e o resto do mundo). É no camelô que a Microsoft mais faz sucesso. Se o primeiro mundo do Linux seguir ignorando os proprietários de computadores ruins e baratos, a Microsoft agradecerá: continuará tolerando a pirataria nos camelôs e terá no “Computador para todos” um grande meio para desqualificar o software livre. Enfim, como sempre, o Windows vai manter a grande maioria de usuários. Isso não é ideologia, é uma questão de mercado, prática e simples. Simples assim: se o usuário estiver preocupado com a marca, comprará um computador da Apple, cheio de estilo; do contrário, comprará um barato, pensando na memória e no espaço do disco, sem se preocupar com a qualidade da placa.


Filed under: Software livre

09 de October de 2010

Palestras no IV ENSL e participação na H2HC Conference

Em novembro participarei de 02 grandes eventos. Iniciando com o IV ENSL e o VII Fórum Gnome dias 05 e 06 em Natal/RN onde farei 02 palestras.

IV ENSL

No VII Fórum Gnome que ocorrerá no IV ENSL o tema será “Por trás da Infra-estrutura do GNOME: Trabalho para Sysadmins”, nesta apresentação vou mostrar como funciona a infra-estrutura por trás do Projeto Gnome , quem são as pessoas e como se tornar um sysadmin deste grande projeto.

A apresentação aprovada pelos avaliadores foi “Ataques e Contra-medidas – Como proteger seus sistemas na Cyberwar” nela apresentarei a metodologia por trás de um ataque, dicas de como se proteger, e como não poderia deixar de acontecer farei um HandsOn explorando alguns 0days bastantes conhecidos.

H2HC

No final ( 26 a 29 ) estarei no H2HC ( Hackers to Hackers Conference ), evento que reuni a nata dos hackers brasileiros. Os seguintes palestrantes confirmaram presença:

Anchises De Paula – Security Intelligence Analyst, iDefense
Bruno Oliveira – Security Consultant at Trustwave’s Spiderlabs
Carlos Sarraute – Researcher, CoreLabs
Dario Filho – André Grégio – Mestrando e Doutorando – Unicamp
Eric Filiol – Directeur du laboratoire de virologie et de cryptologie opérationnelles – ESIEA Ouest
Fermin Sena – Software Security Engineer, Microsoft
Jeremy Brown – Security Researcher – Tenable
Matthieu Suiche – Founder, MoonSols
Nelson Brito – (Independent Researcher)
Ranieri Romera – Threat Researcher, TrendMicro
Rodrigo Montoro – TrustWave SpiderLabs Researcher
Sergey Bratus – Research Assistant Professor, Computer Science at Dartmouth College
Tony Rodrigues – (Independent Consultant)
Wagner Elias – Research & Development Manager, Conviso IT Security

Com certeza estes eventos trarão muito conhecimento e muiiitttaaa diversão!!!

Agradecimentos:

* A Colivre por patrocinar minha ida ao H2HC Conference.

* A Gnome Foundation e a organização do IV ENSL por permitir minha presença em Natal.

09 de August de 2010

CGI.br: Quem são os brasileiros que usam Linux?

Li recentemente a Pesquisa sobre o Uso das Tecnologias da Informação e da Comunicação no Brasil 2009, publicada pelo Comitê Gestor da Internet no Brasil, e descobri que o documento traz inclusive estatísticas de sistema operacional. Em resumo, 86% das famílias brasileiras têm o Windows instalado em seu computador principal; essa proporção é de 1% para o GNU/Linux, e desprezível para Mac e outros. 13% dos entrevistados não souberam ou não quiseram responder à pergunta.

O relatório prossegue analisando a variação dessas proporções de acordo com o local (área urbana ou rural), a região do país, a renda familiar, e a classe social/econômica. Em quase todos os grupos, o uso de Linux continua em 1%. As exceções ficam para:

  • Área rural: uso desprezível;
  • Região Norte: 2% de participação;
  • Renda familiar maior que R$ 4.650: 3% de participação;
  • Renda familiar entre R$ 931 e R$ 1.395; e entre R$ 2.326 e R$ 4.650: uso desprezível.

Não houve variação por classe econômica.

A fatia da população brasileira que mais usa Linux parece ser a mesma que tem banda larga: os moradores da área urbana (quase não existe banda larga na área rural) e aqueles com renda familiar mensal acima de R$ 4.650. Já vai longe a época em que o modelo de negócios da Conectiva era vender seu sistema operacional numa caixa.

Imagino que trabalhar com tecnologia também ajude, mas isso não foi avaliado na pesquisa.

Já o programa Computador Para Todos parece ter tido um efeito modesto. As famílias com renda mensal menor que R$ 931 usam o sistema operacional mais que os do estrato imediatamente superior, mas ainda assim a proporção ficou em meros 1%.

O que mais me surpreendeu foi a região Norte. Colegas nortistas, será que as comunidades daí são mais ativas?

Outra informação que não entendi foi a proporção não variar de acordo com a classe econômica. Intuitivamente, as pessoas com maior renda estão numa classe econômica superior, mas isso não é verdade, ou ao menos não para os usuários de Linux.

O estudo do CGI.br usou o critério de classe social/econômica da Associação Brasileira de Empresas de Pesquisa. A ABEP também divide as classes econômicas pela renda (como o IBGE), mas disponibiliza uma ferramenta que permite estimar a renda. Essa ferramenta (o Critério de Classificação Econômica Brasil — CCEB) consiste num sistema de pontos atribuídos à posse de bens de consumo e ao grau de instrução do chefe da família.

É possível ganhar muito e ter poucos bens ou pouco estudo, e talvez esse seja o perfil dos usuários de Linux.

O estudo só considerou aquilo que todo o mundo entende por computador, ou seja, dispositivos embarcados ou celulares não contam. A metodologia não considerou os computadores que não o principal, e não consegui encontrar na metodologia a definição operacional de o que seria um computador principal, ou como lidar com o dual boot.

Como já foi dito, em 13% dos domicílios o entrevistado não soube informar o sistema operacional. Essa proporção é ainda maior na região rural, nos domicílios com menor renda familiar, e nas classes D e E. Esses números são uma ordem de grandeza superiores à fatia que usa Linux, causando imprecisão na estimativa.

Reparem que o 1% de usuários Linux é a proporção dentre todos os entrevistados, e não apenas entre os que souberam responder à pergunta. Dessa forma, o número real de domicílios brasileiros com Linux é qualquer coisa entre 1% e 14%.

01 de August de 2010

Mais sobre o Censo do GNOME e a Cauda Longa

Dave Neary, um dos membros mais ativos da Fundação GNOME, publicou a primeira edição do Censo GNOME, um levantamento da participação de cada colaborador, e de cada empresa, no desenvolvimento do GNOME. Como o BR-Linux.org destacou, um dos grandes destaques do censo foi que apenas 1% do código teria sido contribuído pela Canonical, enquanto a Red Hat seria responsável por 16%. Outra informação do Censo GNOME é uma espécie de proporção de Pareto: apenas 30% dos desenvolvedores são pagos para trabalhar com o GNOME, mas sua colaboração representa 70% do código.

No que diz respeito à participação da Canonical, Jono Bacon (gerente da comunidade) rebate dizendo que a empresa contribui muito com o GNOME, mas o código fica hospedado no Launchpad, e qualquer distribuição poderia empacotá-lo. De fato, o levantamento publicado por Dave Neary só levou em consideração o código hospedado na infraestrutura do próprio GNOME — que aliás é fornecida principalmente pela Red Hat.

Ainda sobre a importância relativa de cada empresa, o próprio Dave Neary destaca o que os números escondem sobre a participação da Nokia. Em vez de contratar mais empregados, a empresa estimulou a criação de várias start-ups que contribuem com uma parte significativa do código. Além disso, os módulos específicos do GNOME Mobile e o WebKit não entraram na análise.

Mas minha contribuição nessa discussão é sobre o outro destaque: o efeito Cauda Longa. De fato, os colaboradores voluntários têm contribuições individuais pequenas, como acontece no desenvolvimento do kernel Linux. Mas uma boa parte dos principais colaboradores do GNOME (em número de alterações do código-fonte) são voluntários, e a maior parte dos módulos do GNOME são mantidos por voluntários. Mais: se considerarmos o voluntariado como uma empresa, essa empresa será responsável por 30% do desenvolvimento do GNOME, muito mais que a Red Hat ou qualquer outra empresa.

Por fim, gostaria de registrar que o Censo do GNOME é sobre o desenvolvimento do código, mas até onde sei não estuda a tradução ou outros tipos de contribuição. A tradução é uma parte significativa do trabalho no GNOME, e acredito que seja quase exclusivamente voluntária.

16 de February de 2010

Últimos acontecimentos

Pois é... faz tempo que não blogo :-( . O final de 2009 e começo de 2010 foi bastante corrido: tive que terminar meu trabalho de conclusão de curso e comecei a trabalhar. Mas agora as coisas já estão mais calmas.

Finalmente me formei. Agora posso me declarar cientista da computação e já estou aprovado no mestrado, que começa mês que vem. Minha colação de grau foi na quarta feira e agora fico no aguardo da colação de gala, na qual irão meus familiares e amigos.

Em dezembro comecei a trabalhar. Estou trabalhando na agência de publicidade Sabbre fazendo o desenvolvimento de aplicações web com Ruby on Rails. Um trabalho que tem me dado motivos para gostar do que faço e que me tem feito aprender muitas coisas.

Infelizmente, tive que abrir mão de algumas coisas, principalmente de software livre. Saí da equipe de desenvolvimento do archlinux Brasil, pois não estava conseguindo tempo para me dedicar. Como não gosto de assumir compromissos que não posso cumprir, eu acabei optando por sair. Desejo boa sorte e muito sucesso a todas as pessoas que continuam por lá. Continuo agora só gerenciando a equipe de tradução do GNOME, que aliás já está em pleno ritmo de tradução para o GNOME 2.30.

 

21 de December de 2009

Barcelona campeão mundial

Parabéns ao Barcelona pelo título conquistado. Eu cheguei a pensar que daria Estudiantes.

Enquanto eles comemoram o primeiro título, lembro que já conquistamos três vezes (inclusive uma delas contra eles).

Um fato que eu não sabia e agora sei é que no mesmo ano da disputa ganhamos outro título (do Torneio Teresa Herrera) contra eles. E de 4 a 1!!! Na época o Barcelona era bem "maior do mundo" do que é hoje.

Saudações tricolores!

31 de October de 2009

Latinoware

Semana passada fui no Latinoware e foi bastante interessante. Lá palestrei sobre nossa equipe de tradução do GNOME e tive algumas experiências interessantes:

  • Foi bacana rever alguns e conhecer boa parte do pessoal do GNOME Brasil. Espero vê-los mais vezes;
  • Também revi o Farid, que trabalha comigo no Archlinux Brasil, ficamos de conversar mais como acabei não podendo ir no último dia devido ao atraso do motorista que ia buscar a gente no Paraguay, não conversamos :-( ;
  • As palestras também foram legais: o Lício falou sobre o GNOME Love, eu falei sobre a equipe de tradução do GNOME para nosso idioma, o Binhara falou sobre o Mono, a Izabel e a Luciana falaram sobre o GNOME Women (eu infelizmente perdi essa palestra :-( ), o Vinicius Depizzol falou sobre a experiência do usuário no GNOME e para finalizar o Tiago falou sobre personalização do GNOME. Um ótimo conjunto de palestras :-) ;
  • Foi legal discutir coisas, tanto técnicas como não técnicas, com as outras pessoas do GNOME e de outros projetos como o Fedora. Aliás esses eventos acabam proporcionando trocas de experiências que contribuem em muito com os projetos de SL. Aliás isso é uma das coisas mais importantes de eventos como esses e tenho que ser bastante grato à Fundação GNOME por me patrocinar e ter a oportunidade de fazer coisas como essa, além de poder participar do evento e conhecer mais pessoas;
  • Depois de assistir uma palestra interessante sobre o Mono com o Binhara e depois de ouvir o Everaldo falar horas e horas disso, fiquei com vontade de aprender a programar nesse ambiente;
  • Conversei com o João Sebastião sobre como podemos fazer a adequação do GNOME para a nova ortografia. Para corrigir algumas coisas nas versões antigas ele fez um script que pode ser bastante útil para agilizar nosso trabalho. Próximos capítulos desta trama serão divulgados aqui neste blog em breve ;-) ;
  • Conheci o Paraguay, e embora este país tenha muitos produtos interessantes a venda ele tem a pior poluição visual que já vi;
  • Não consegui ver as cataratas, aliás faltou tempo para isso :-( ;
  • Minha palestra não teve um grande público, mas acho que deu para passar a mensagem da equipe. O pdf aparecerá em breve por aqui;
  • Foz do Iguaçu é uma cidade bastante esquisita: lá é úmido pra caramba, escurece bem tarde e isso me faz perder a noção do tempo;
  • Não gostei muito de comida Baiana. Tem muita cebola. E eu odeio cebola. Aliás, a coisa que menos comi lá foi comida paranaense;
  • A organização do Latinoware também deixou muito a desejar, já fui em eventos mais bem organizados e acho que o Latinoware também podia ser;
  • Agradeço a fundação GNOME por me patrocinar, ao Leonardo por me indicar para palestrar e a Izabel, que correu atrás de tudo por lá (aliás, depois que organizei junto com amigos a ida do pessoal da minha faculdade pro FISL, aprendi a agradecer as pessoas que fazem acontecer);

É isso aí :-) Que o próximo evento venha logo e que eu tenha a oportunidade de vê-los em breve.

UPDATE:Aqui vão os slides.

 

10 de June de 2007

Violent swerves in life

One day, you’re writing code, packaging and translating it, administering systems and giving talks about free software. The next day, you realise you want to go to Law school.

It does not feel any different from starting all over. Fortunately, it feels like it is soon enough.

23 de September de 2006

Thanks, Murphy!

So yeah… I guess I’ll have to take back what I said about clearing the accounts backlog until the end of the weekend, even though I’ve already gone through more than half of it.

Why? Quite simple. My hard disk finally died, after a couple of months spitting out I/O errors and corrupting filesystems all around.

Oh well…