Pesquisar este blog

domingo, 29 de novembro de 2009

Mootools Vs JQuery

Quem desenvolve para web nos últimos anos, com certeza sentiu a necessidade de aprender algum framework javascript para agilizar seu trabalho ou mesmo possibilitar criar efeitos mais complexos com menos esforço. Nessa empreitada, o cidadão vai se deparar com uma série de opções das mais variadas, como ExtJs, Prototype, Dojo e outros.

Dentre esta gama de opções, escolhi como meu framework principal o Mootools que é bastante prático e poderoso. O problema é que, na minha região, esse não é lá um framework muito utilizado. O mercado costuma ser dominado por uma tecnologia ou outra, enquanto as "outras" convivem timidamente, em seu nicho. No meu caso, o framework que está "na boca do povo" aqui é o JQuery, outra opção muito popular, internet a fora.

Nisso, sempre ocorrem aquelas discussões sobre qual o seu framework predileto ou por que pessoa tal escolhe framework tal. Aqui, normalmente essas discussões envolvem o JQuery, e no meu caso, o barraco é mais ou menos no estilo Mootools Vs JQuery. Hoje, ocorreu algo assim, em pequenas proporções, quando comentei meu desgosto com a sintaxe do JQuery em relação à sintaxe do MooTools no twitter.

Disseram que a sintaxe do Mootools é "mais feia" que a do JQuery e que o primeiro era "javeiro". Tudo bem que sintaxe bonita e feia é questão de gosto, mas o adjetivo "javeiro" que foi definido pelo interlocutor como prolixo já não é. Ele faz referência a alguma coisa (Java, no caso) e representa uma característica teoricamente perjorativa.

Mediante tudo isso, me sinto compelido a contribuir com meus dois centavos. Vou justificar porque vejo a sintaxe do Mootools como sendo mais clara e "bonita" que a do JQuery, por fim, vou colocar alguns exemplos de código para ver se o adjetivo "javeiro" realmente procede.

Primeiro, quem já parou para ler a documentação do JQuery? Ver os métodos e classes disponíveis? Galera normalmente só olha o que vai precisar neh? Então vou fazer uma análise sobre trechos de código que se usa normalmente.

Vejamos alguns exemplos de como selecionar elementos com JQuery e Mootools:



Bem, não vou me estender muito neste artigo, mas acho que foi possível mostrar alguns pontos que mostram que o adjetivo javeiro, talvez tenha sido mal empregado pelo meu colega. De qualquer forma, quaisquer observações ou erros no código, favor, não deixem de informar. Abraço a todos!

sexta-feira, 27 de novembro de 2009

Turtle Linux 9.10



A algum tempo, eu resolvi que as distribuições atuais não forneciam os programas que eu mais uso no meu dia a dia, por padrão. Sempre que eu instalava o finado Kurumin, e depois o (X)Ubuntu, eu passava muito tempo retirando, colocando, e polindo programas. Nisso, tive a idéia de fazer um backup do meu sistema, depois de pronto, para poder reinstalá-lo fácilmente sempre que quisesse. Durante essa empreitada, me ocorreu que eu poderia, no lugar de fazer um backup dos programas do sistema, criar uma pequena distro com tudo aquilo que eu achava que deveria haver nela e divulgar para a galera. E mais, nessa distro, eu poderia dar o foco no python, que é minha linguagem de programação predileta, pois eu via muitos programas escritos e python, bons, que não recebiam a devida atenção.


Nisso surgiu o Turtle Linux, que é uma remasterização do Xubuntu que possui diversos programas e modificações que o tornam uma distro realmente verde! No começo, eu queria colocar opções python a qualquer custo. Aí, pensando melhor, coloquei python apenas quando a solução em python era tão boa quanto, ou melhor. Comecei com a versão 9.04 do Xubuntu. Ficou legal, mas ainda precisava de muitas modificações. Aí, agora que sou um rapaz formado e livre, peguei um pouco do meu tempo extra para retomar o projeto.

Pronta, baseada na versão 9.10 do Xubuntu, o Turtle Linux 9.10 trás uma série de melhorias em relação à distribuição alvo. Tirei vários programas que não achava interessante, como o totem e o transmission, e os substituí por opções, na minha opinião, melhores. Acrescentei também alguns scripts próprios que muito me orgulham. Um deles permite criar projetos web2py fácilmente. Outro permite baixar quadrinhos do site onemanga.com ( quadrinho detona! ). E outro, que considero ser um diferencial, permite jogar joguinhos escritos em pygame que vem junto com o sistema através de uma interface de seleção bastante simples.

Mesmo na versão final, ainda existem alguns probleminhas como o nome "Xubuntu" aparecendo aqui e ali. Na próxima versão (que se depender de mim, virá!) eu já devo ter isso corrigido. Mas não é nada muito gritante ou que estrague a experiência.

Outro ponto que vale comentar é a existência de algumas bibliotecas e frameworks python instalados por padrão na distribuição. Django e Pygame são dois exemplos muito utilizados que você não precisará instalar. A lista completa de bibliotecas instaladas por mim (além daquelas do xubuntu original), incluindo aplicativos e scripts podem ser obtidos abaixo. Interessados em baixar a distro, podem obtê-la neste link.

Quem quiser ver a distro funcionando, pode fazê-lo abaixo.



( a voz sexy nesse vídeo sou eu narrando, viu galera! )

Python?

Programas?

Jogos?

Scripts?
  • web2py-admin
  • turtle-games
  • omreader
A arte do turtle linux foi feita por mim (edição, etc) e pelos seguintes artistas:
  • http://kktasarim.deviantart.com/
  • http://sweetlikecandy.deviantart.com/
  • http://kaykaykit.deviantart.com/
ps: ao contrário do Xubuntu, que numera suas versões pelo mês da release, a numeração do Turtle Linux é baseada na versão do Xubuntu utilizada na remasterização. [agradecimento ao R. Félix pela observação]

    quinta-feira, 26 de novembro de 2009

    Fazendo o midori funcionar com o gmail!


    Para quem gosta de opções aos navegadores web, o midori é uma grande escolha! Feito como um projeto leve e com poucas dependências, o midori permite navegar na web de forma rapida e com vantagens. Tendo  passado pelo teste de compatibilidade de padrões acid2 com nota máxima, ele permite experimentar todas as funcionalidades das mais novas tecnologias web utilizando poucos recursos.

    Disponível para linux [e consequentemente (X)Ubuntu], foi feito com foco na utilização com XFCE, mas pode ser usado em qualquer ambiente.



    Por ser um navegador pouco conhecido, mesmo tendo funcionalidades avançadas, alguns sites como o gmail não permite acesso a algumas de suas funcionalidades ao navegador em uma instalação padrão. Por isso, desta postagem. Vou ensinar como navegar em sites como o gmail sem se preocupar com incompatibilidades.

    A receita e simples: va em editar->preferências->rede e mude a opcão "identificar como" para safari. pronto! Sites como o gmail, e outros, funcionaram perfeitamente, pois tratarão seu navegador como se fosse o Safari.

    Abraco!

    quarta-feira, 25 de novembro de 2009

    Como juntar pdf's no Ubuntu Linux

    Opa! Postagem rápida e super útil para o usuário de Linux (Ubuntu) incauto que precisa juntar arquivos pdf e não sabe como. O processo é simples, mas a informação não tem em todo canto, então, vamos lá:

    Você já precisou juntar dois documentos em formato pdf? Precisou? E não tinha ferramentazinha gráfica bonitinha que pudesse usar? Bem, seus problemas acabaram (sem interface gráfica, no entanto)! Seguinte, para juntar arquivos pdf no Ubuntu ou outra distro debian based, você precisa ter o programa pdftk instalado e executar o seguinte comando na linha de comando:
    pdftk arq1.pdf arq2.pdf arq3.pdf cat output arquivo_saida.pdf
    Esse comando gera um arquivo arquivo_saida.pdf com o conteúdo de arq1.pdf, arq2.pdf e arq3.pdf. Não é a coisa mais simples do mundo, mas é factível sem grandes dificuldades. ; )

    Abraço!

    segunda-feira, 16 de novembro de 2009

    Problemas com o SDK Manager do Android no Ubuntu?

    Seguinte, quem resolveu ceder ao boom do Android no Brasil e foi instalar a SDK do Android no seu Ubuntu 9.x, deve ter notado que a plataforma do Android não vem junto no pacotinho, correto? Lá você encontra, basicamente, algumas ferramentas úteis e talz. Bem, o negócio é que, para baixar uma plataforma do Android (para poder começar a desenvolver) você precisa executar uma ferramenta chamada android que fica dentro da pasta tools do pacotinho que você baixou.

    Até aqui, tudo bem. O problema é que quando você executa o aplicativo e pede para ver o que tem disponível para instalação, ocorre um erro e a pessoa morre na praia. Como resolver isso? Não é difícil, mas a resposta não é fácil de achar. Por isso, venho eu, com minha roupa de superman, ao resgate! (rsrsrs menos, menos!)

    De qualquer forma, a solução é assim:
    crie um arquivo ~/.android/androidtool.cfg e nele escreva o seguinte:
    sdkman.force.http=true
    Prontinho. Feito isso, reinicie o tool android e você poderá instalar as plataformas na maior! Bom desenvolvivemnto senhores ; )

    ps: Quem teve problemas com os botões do eclipse parando de responder a eventos de clique do mouse, aqui vai a solução: escreva um scriptzinho que export a variável GDK_NATIVE_WINDOWS e depois chame o eclipse. Aqui na minha máquina, o meu script ficou um negócio desses:

    #!/bin/sh
    export GDK_NATIVE_WINDOWS=1
    ~/eclipse/eclipse
    Enjoy ; )

    domingo, 15 de novembro de 2009

    Wine no Ubuntu Karmic com SOM!!!

    Bem, quem usa o wine no Ubuntu Karmic deve ter achado revoltante não ter som nos seus aplicativos, correto? Algumas aplicações, só existem para Windows e o som, nelas, é muito importante. Para mim, o nome dessa aplicação importante é Epsxe1.7.

    Não possuindo uma versão para Linux, e sendo bem melhor que o PCSX, mesmo emulado, resolvi que eu queria o Epsxe funcionando perfeito aqui. Olhando em vários fóruns, descobri que havia um problema de incompatibilidade do pulseaudio com a forma como o wine acessa o dispositivo de som. E, depois de alguma insistência, consegui achar uma solução neste link. Abaixo, veja como eu fiz aqui:

    Primeiro, baixei o Epsxe1.7 para windows e coloquei numa pasta própria, com a zlib dele. Nisso, instalei o wine com o comando sudo apt-get install wine. Dei um wine epsxe.exe para testar se não ia ter som mesmo. Bem, não tinha! Sabido isso, criei o seguinte script:

    #!/bin/sh
    cd ~/
    cd PastaDoEpsxe/
    # mata o pulseaudio
    pulseaudio -k
    wine epsxe.exe
    pulseaudio -D

    Esse script é responsável por matar o processo do pulseaudo do seu usuário, chamar o programa pelo wine, e reiniciar o pulseaudio ao término do dito-cujo. Feito isso, ficou faltando só uma coisinha: impedir que o pulseaudio reinicie sem ser convidado! Isso também é fácil, basta ir na pasta ~/.pulse/ e criar o seguinte arquivo: client.conf .

    Dentro do client.conf, escreva:
    autospawn = no
    E feche o arquivo. Prontinho! Garanta a permissão de execução do seu script (chmod +x epsxe.sh) e basta executá-lo para ter o melhor emulador de playstation funcionando perfeitamente, e com som, no seu Ubuntu KK. Boa jogatina ; )

    quinta-feira, 12 de novembro de 2009

    DjangoCMS2 - O primeiro Killer App do Django!!!


    A muito tempo que os desenvolvedores que utilizam Django como framework Web reclamam da falta de aplicativos CMS de qualidade para integração em seus projetos. Enquanto outras plataformas possuem soluções poderosas como é o caso do Wordpress, no Django, caso o desenvolvedor não quisesse se sujeitar a aplicativos bugados ou aquém de suas necessidades, era obrigado a escrever seu próprio aplicativo CMS, o que não é lá tão trivial.

    Outra solução, bem menos elegante, consiste em utilizar o aplicativo que vem junto com o django, chamado flatpages, que permite criar páginas simples em html. Algo bem aquém do que seria elegante.



    Devido a isso, venho, a muito tempo, olhando sites de todo gênero em busca de uma solução CMS para django que fosse fácil e prática. O DjangoCMS sempre me pareceu um projeto promissor e ativo, nesse sentido, mas, as versões que eue testava sempre apresentavam muitos bugs. Não eram versões finais, é verdade, mas mesmo assim estavam longe de ser algo utilizável.

    Hoje, ao acordar, me deparo com a notícia que o django-cms não era mais uma versão alpha, nem beta, nem RC, era sua versão final, o que me compeliu, rapidamente, a testá-lo. Quão grande foi minha surpresa quando vislumbrei suas funcionalidades e praticidade. Em minutos, com uma pequena ajudinha da lista (#django-cms no FreeNode) consegui colocar em pé o aplicativo.

    Tendo todo o seu sistema de conteúdo baseado plugins e utilizando placeholders para definir onde cada plugin deve ficar, essa solução me agradou muito. Os desenvolvedores tendo feito todo um trabalho de integração com o admin, que é a interface padrão de edição da ferramenta, deixou tudo agradável e intuitivo.

    Ao meu ver, o django-cms2 (ou django-cms) é a melhor solução em CMS para o Django no momento. Aconselhado! Abraço!

    ps: para quem não sabe, killer app é um aplicativo tão bom que os aplicativos concorrentes se tornam obsoletos rapidamente.

    segunda-feira, 2 de novembro de 2009

    Emulador de PSX para Ubuntu 64bits que funciona!!! =D



    Quem gosta de emuladores, sabe que o playstation é uma das plataformas que mais recebeu esforços heroicos no mundo todo no sentido de obter um emulador descente. Emuladores como o Bleem, Emurayden, Epsxe e AdriPsx marcaram época! Todos com suas vantagens e desvantagens, bugs e facilidades, a gosto do freguês.



    Infelizmente, a era do playstation 1 acabou e os emuladores desenvolvidos pela plataforma começaram a dar lugar para emuladores de nova geração, ou simplesmente a jogos de computador convencionais. Emuladores promissores e multiplataforma como o PCSX tiveram seu desenvolvimento abandonado perto de sua conclusão. Era como se ter um carro excelente, sem retrovisor, por exemplo, é bom, você usa, mas podia ser melhor!


    Atualmente, o PCSX é o emulador de playstation 1 padrão do Ubuntu, está nos repositórios e tudo! O problema é que, mesmo sendo muito bom e compatível, ele possui bugs. Bugs chatinhos que impedem alguns jogos de serem executados com maestria. Como os desenvolvedores do PCSX foram gentis e disponibilizaram seu código para a comunidade, sob licença GPL, alguns bravos, como weimingzhi resolveram arregaçar as mangas e fazer os ajustes e correções necessárias para que o Linux, e consequentemente o Ubuntu, tivesse a sua disposição um emulador compatível e eficiente.

    Disponível no site do projeto e baseado no código do PCSX original, o emulador PCSX-Reloaded é um emulador derivado, com maior compatibilidade, que pretende acalentar os anseios dos ainda muitos saudosistas do primeiro videogame da Sony.

    Disponível em vários formatos, eu acredito ser ele uma opção muito boa para pessoas que estiverem tendo problemas com o emulador original, disponível nos repositórios do Ubuntu. Por enquanto, aqui nos meus testes, foi só alegria!

    Abraço!