Pesquisar este blog

quinta-feira, 28 de fevereiro de 2008

Carros elétricos são o futuro!

Carros de hidrogênio? Carros com biocombustível? Nada! Tudo ultrapassado! Biocombustível é poluidor no seu processo, carros movidos a hidrogênio são perigosos e instáveis...Mas e os carros elétricos? Eles são viáveis? Existe tecnologia para usá-los? Sim, e claro! Nos EUA, já ouve experiências com carros elétricos, uma delas gerou o documentário "Who killed the eletric car", um excelente documentário que fala de lobbys e má vontade da indústira como prováveis culpados pelo insucesso deste carro por lá. Entretanto, ele deixou saudades e fãs, mas por quê? Elementar meu caro Watson, carros elétricos são silenciosos, possuiem menos componentes desgastáveis(não usa pistão nem combustão para rodar), são baratos(alguns carros conseguem uma autonomia que deixaria 1/litro da melhor gasolina morrendo de inveja) e são amigos do meio ambiente! Por quê?
Simples, simplíssimo. Geradores de energia solar são uma opção atualmente viável, não poluidora e barata. No meu estado(Ceará), que possui sol o ano todo, e que é, na minha opinião, uma potência energética solar, poderia muito bem manter uma frota sem problemas. Poderia até manter frotas de outras cidades.

E tem mais! No Canadá, está sendo produzido um carro elétrico que consegue chegar de 0 a 100 em 4segundos. Bate uma ferrari fácil fácil, veja você. Eles não são somente econômicos, práticos e com boa autonomia, eles são máquinas veloses e potentes.
Gostaria de dizer também que no meu estado, existem algumas empresas que planejam criar fontes de energia renovável, eólica ou solar, ainda não decidiram. Espero que esse seja também a primeira de muitas iniciativas do gênero.

Eu sei que esse texto não está muito bom, mas a mensagem está excelente. Nos estados unidos, lobbys, o medo do novo e a falta de informação sepultaram os carros elétricos das estradas. Eu espero que, se nossa cultura for inteligente o bastante para evoluir para esta vertente, de energia renovável e carros elétricos, nós saibamos agir da forma certa e saibamos ousar. Abraço.

A ajuda vem de onde você menos espera! - Ide`s Django

Quem aqui desenvolve com Django levante a mão!!( ö/! ) rsrsrs, seguinte, desenvolver com django é legal, na verdade, desenvolver com python em geral é uma experiência satisfatória, BUT, a medida que você vai desenvolvendo, começa a sentir falta de ferramentas poderosas para auxiliar no seu trabalho. Escrever uma classe em python é muito fácil, mas se tivesse um jeito de escrever uma classe apertando um botão, ou dois, seria bem mais fácil, não é mesmo? E quanto a trabalhar com frameworks? Alguns frameworks usam componentes do tipo "receita", que tem uma estrutura mais ou menos definida para te dar aquela funcionalidade que faz valer o seu contra-cheque no fim do mês. Quando a linguagem é uma obra de arte, vc precisa também usar uma obra de arte para trabalhar com ela, não é mesmo?
Está certo, voltando ao começo do post, você é um desenvolvedor django que quer uma IDE ninja, com diversos recursos, e super-leve para desenvolver( se possível, com debug ). Qual escolher? Bem, o google é mãe, pai, e namorada tarada de todo mundo! Rrsrsrs, pau pra toda obra. Dando uma googlada básica, você vai achar algumas opções, comentários de algumas pessoas, etc. Se você não tem paciência para sair lendo todas as respostas do google, e quer uma solução para ontem, continue lendo, vou falar de algumas IDE's com as quais eu tenho experiência.

WingIDE
A WingIde é o carro de luxo das IDE para python, E, a bixinha vem com suporte a django. Além de ter code-completation de primeira, interface amigável, gerenciamento de projetos, ser leve, escrita em python, ela tem debug para django! Isso mesmo, que tal debugar seu site in lócuo? Beleza não é mesmo? Na minha opinião é a melhor IDE do mercado para desenvolvimento web com python. Quem gostou, saiba que ela é paga e o cabra precisa comprar sua licensa pela internet ou direto nos EUA. Nada prático.

Imagem da bixinha:

Komodo Edit
Komodo edit é uma ide gratuita, bastante completa e com recursos interessantes. Ela aceita gerenciamento de projetos, possui highlight para os tipos de arquivos mais comuns, code-completation, aceita a criação de templates do usuário e plugins, e está em desenvolvimento constante. Uma desvantagem que eu vejo no KomodoEdit é a falta de um debug legal(não achei, pelo menos) e uma interface de projetos mais amigável, nada muito preucupante, entretanto.
Eu a considero uma excelente opção gratuita, e é rapidinha a bixinha, não deixa a desejar em velocidade ;).

Imagem da ide:

Gedit
Muitas pessoas dizem que o Gedit é a ide da vez! Meu amigo Andrews Medina disse que não passa aperto utilizando o gedit, que é o editor de texto padrão do ambiente gnome. Ele possui highlight para praticamente qualquer formato, aceita plugins, navegação de arquivos, console acoplado, te deixa navegar pelo código(navegação baseada nas estruturas, tipo class, def, essas coisas), é super rápido, SUPER MESMO, e bonito. Uma das desvantagens que eu vejo nele é a falta de debug e gerenciamento de projetos. Também não achei o code-completation lá essas coisas. Entretanto, se o seu sistema é bem...modesto, ou quando você precisar de uma ferramenta de edição rápida, o gedit é uma excelente escolha!

Imagem do bixinho:


ps: esse post está incompleto. Rrsrsrs, depois coloco o resto das ide's aqui. Abraço.
ps2: faltam a Anjuta, SPE e Eric.

sábado, 23 de fevereiro de 2008

Python for the masses!!!

O caso é o seguinte, minha amiga Karen, ontem veio me falar, com o jeitinho de Karen dela, que precisava converter alguns arquivos ogg para o mp3 dela. Bem, o mp3 dela, ironicamente, só roda mp3 :D!

Como não me ocorreu imediatamente uma ferramenta que fizesse a tediosa tarefa de converter todos os arquivos de uma determinada pasta para mim, resolvi fazer o meu próprio programa. Bem, antes de fazer o meu, procurei algo que fizesse algo parecido com o que eu queria. Achei um script que fazia a tarefa, só que o bixin não funcionava direito. Tinha um bug. Pois é, muito triste.

De qualquer forma, fiz o meu script baseado no dele. Ficou até bonitinho! Tow orgulhoso ^^.

O script pode ser visualizado neste link.



Criem um arquivo chamado ogg2mp3.py e coloquem o conteúdo acima dentro. Roda que é uma beleza! Necessita do Lame e oggdec instalados. Testei esse programa no ubuntu gutsy e rodou sussa. Abraço!

ps: começo a achar que não sou humano viu! Essas caxinhas de verificação de palavras são uma pustema na minha vida >__>.

ps2: essas caixinhas servem para impedir que bots, programas que fingem ser usuários, criem postagens e respostas automaticamente; normalmente difundindo spam e propaganda não solicitada.

sexta-feira, 22 de fevereiro de 2008

Revolvendo o passado!

Olá meu povo! Hoje, enquanto fazia a reinstalação de minha máquina, acabei por descobrir alguns textos interessantes de meu passado. Uma coisa interessante sobre os textos que eu já escrevi é que eu costumo esquecer que los fiz, rsrsrs, e quando leio, fico admirado com o conteúdo. Rsrsrsr, como se outra pessoa tivesse escrito. Pois é, isso é algo em mim que eu gosto muito, olhar coisas que eu já fiz é sempre uma novidade pra mim.

De qualquer forma, vou mostrar uma resposta criada por minha pessoa(yeap, texto original!) a uma piada feminina. Tenho todo respeito pelas mulheres, as admiro muito(rsrsrs, em todos os sentidos), mas essa eu não poderia deixar passar.

Primeiro o texto original das senhoritas:

Mulheres atacam
* Não broxamos...
* Não ficamos carecas...
* Não sofremos de fimose...
* Temos um dia internacional...
* Sentar de pernas cruzadas não dói...
* Podemos usar tanto rosa como azul...
* Temos prioridade em boates ou em qualquer lugar, não pagamos a conta, no máximo rachamos...
* A programação da TV é 90% voltados para nós...
* A idade não atrapalha em nosso desempenho sexual..
* Podemos ficar excitadas sem ninguém perceber...
* Podemos fazer sexo quantas vezes por dia, se somos traídas somos vítimas, se traímos eles são cornos...
* Mulher de embaixador é embaixatriz, homem de embaixatriz não é nada...
* Somos monogâmicas, embora precisamos testar vários homens para achar um que tenha valor....
* Se resolvemos exercer profissões predominantes masculinas, somos pioneiras...
* Mas se um homem exerce profissão tipicamente feminina é bicha....
* E por último: fazemos tudo que um homem faz só que com um detalhe de Salto alto...
Bjokax!
Rsrsrsr, um negócio desses não poderia passar batido, não é mesmo? Rsrsrs
Aqui a resposta que minha pessoa mandou:
Homens mostram os fatos
* Broxam mesmo naum, ficam com 'dor de cabeça'
* Graças a deus
* Já ouviu falar de menstruação?
* O resto do ano é nosso ;)
* Mas se sentar de perna aberta pode dar problema rsrsrs
* Podemos andar sem camisa na rua sem ser preso
* É, nessa vc ganhou
* Rsrsr, sério? Nós temos canais só pra nós =]
* Contanto que consiga ter a parte sexual...
* É, mas a gente alivia em 5 minutinhos ;)
* O segredo está na qualidade, e não na quantidade ;). Verdade, e a gente ainda tem que pagar pensão >__>
* Só pra bixinha se sentir útil
* Somos monogâmicos com várias mulheres até...até...rsrsr, até cair!
* Não, são intrometidas.
* Não, estamos apenas mostrando como se faz ;)
* Fazemos quase tudo que a mulher faz, só que sem se gabar.
Rsrsrsr, gostaria de dizer que todo o texto foi escrito em prol e pensando somente na comicidade rsrs.
Senso de humor se faz necessário para a apreciação de todo o texto ; )

De qualquer forma, abraço a todos! Depois coloco um texto meu que faz um relacionamento entre estilo musical e...bem, na hora vcs vão saber! Abraço!


domingo, 17 de fevereiro de 2008

Abaixo a censura!!!

É o seguinte, ainda não tive a chance de expressar minha indignação com a censura feita pelo governo ao jogo counter strike. Eles justificaram a proibição da venda do jogo dizendo que ele não era bom para o desenvolvimento dos jovens, por que era violento...Poxa vida, como é que um ser humano é capaz de ter um pensamento tão infantil e limitado? Sou apenas eu, ou mais alguém vê isso como um ato autoritário e desprovido de inteligência? Eu poderia passar linhas e mais linhas reclamando e dando motivos sobre o por que isso foi uma burrice pura e simples, e um atentando contra a liberdade das pessoas, eu poderia dizer que nas escolas, na televisão, nas (argh) novelas, filmes, há, de longe, muito mais violência e atos sórdidos que merecem censura ou atos de contenção, e mesmo assim passam desregulados. Pois é, eu poderia fazer tudo isso, mas no vou. Vou apenas mostrar esta charge e dizer que o problema do Brasil é o excesso de idiotas no governo. É como eu sempre digo, deveria existir avaliação psicológica e vestibular, para se candidatar a cargo político ou mesmo assumir por indicação:

sábado, 16 de fevereiro de 2008

Deploy do Django com Ubuntu - parte 2

Bem, uma parte 2 não estava programada, mas vejo que ela se faz necessária. Essa segunda parte vai cobrir uma parte bem específica de um deploy com django: como servir conteúdo estático pelo servidor apache.

Antes de tudo, gostaria de dizer que ficou faltando uma pequena parte do deploy anterior. Antes de começar toda aquela peregrinação para fazer o seu deploy, você deve desabilitar o site default do apache. Ele parece dar conflito com o seu deploy do django.

Antes de começar, gostaria de dizer que o site do django aconselha que o conteúdo do tipo "media", javascript, css, imagens, deve ser servido de um outro servidor apache, diferente daquele que serve o seu site, isso por questões de desempenho. Sabendo disso, vamos ao nosso crime:

Na configuração do seu site, aquela do apache, dentro do virtualhost, adicionem o seguinte:

DocumentRoot /var/www
::Location "/media/projeto/"::
SetHandler None
::/Location::

substituam os :: pelo símbolo apropriado(><). Explicando: /var/www é o caminho para a pasta que contém o seu conteúdo estático, enquanto o /media/projeto/ path para o conteúdo. Por exemplo: /media/projeto/images/imagem.png vai acessar o arquivo imagem em /var/www/media/projeto/images/imagem.png . Rsrsrs, lembrem-se que o apache tem que ter permissão de leitura para esta pasta e os arquivos dentro.

sexta-feira, 15 de fevereiro de 2008

Fazendo deploy do Django no Ubuntu

Rrsrsrs, nada como levar um chute nos rins enquanto se está pegando fogo, não é mesmo? Nada! rsrsrs tenta fazer um deploy dos novos frameworks web, NA MÃO, aquela coisa toda New Age, aí sim vocês vão saber o que é dor! Rsrrsrs, sim, eu odiei meu deploy aqui, e é por isso que eu me sinto na obrigação (i)moral de compartilhar um pouco da sapiência que me foi compenetrada goela abaixo.

Seguinte, essa postagem vai cobrir como se faz um deploy em uma distribuição ubuntu Gutsy recém instalada. É provável que os mesmos passos funcionem para o Feisty, mas como eu não estou a fim de pôr minha mão hoje, fica como foi dito.

Ok, você, cidadão de bem, com seu ubuntu server ou ubuntu normal instalado na máquina. Agora, o que fazer? Instale o django. Para instalar o django do trunk(versão mais atual) faça:

svn co http://code.djangoproject.com/svn/django/trunk/

Note que você deve ter o pacote subversion instalado
Abra um console, vá até a pasta do do trunk que foi criada na sua máquina e digite:

sudo python setup.py install

Pronto. Doeu? Ainda não.

Próximo passo, caso não tenha o apache2 instalado, digite o seguinte comando no terminal:

sugo apt-get install apache2

O apt-get se encarregará de instalar e configurar(na medida do possível) seu apache.
Cheque pelo seu navegador se o apache2 está de pé acessando a url: http://localhost/
Abriu alguma coisa diferente de uma tela de erro? Enão está tudo certo.

Próximo passo! Intalando o mod-python. A configuração recomendada pelo site do django para fazer um deploy é através do mod_python. Existem outras formas, mas como eu fiz com essa, vcs tb vão fazer >:D Comando básico, no console:

sudo apt-get install libapache2-mod-python

Sim sim, dá trabalho, é a vida. rsrsrs, se conforme ou corte os pulsos.

PRÓXIMO PASSO!!! Agora vamos fazer um esqueminha que eu tive que fazer aqui, com relação às permissões dos arquivos.
O problema é o seguinte, você quer que o apache sirva seu site, só que o apache não tem permissão para "servir" conteúdo que não esteja em algum canto que ele mande(possa ver, executar, etc). Eu, particularmente, gosto de manter meus projetos em uma pasta no meu usuário, talvez tenha sido isso que me deu mais trabalho, MAS, como coisa fácil não tem graça, fiz do jeito que eu gostava e talz.
De qualquer forma, para a configuração que eu acabei de falar, você vai precisar fazer um pouco de malabarismo com as permissões. Primeiro, crie um grupo django_prj:

groupadd django_prj
agora vamos adicionar o usuário www-data(que é o usuário que roda o apache para você) ao nosso grupo:

adduser www-data django_prj
Pronto, agora tudo que alguém do grupo django_prj pode fazer, nosso usuário www-data também pode. Vamos dar permissões de gente grande ao grupo. Primeiro vamos adicionar a pasta onde ficam os nossos projetos django ao grupo:

chgrp -R django_prj pasta_dos_projetos
Note o comando -R. Esse comando faz com que a pasta_dos_projetos e as sub-pastas dentro dela, e arquivos, pertençam ao grupo django_prj

Por fim, adicionando as permissões necessárias(leitura e execução)ao grupo:

chmod g+r pasta -R
Rsrrsrs. Acabou? Nada!Vamos agora configurar o apache.

Pelo console, vá até a pasta onde ficam os arquivos de configuração do apache:

cd /etc/apache

Agora, em sites-avaiable criem um arquivo com o nome do seu projeto. Comando sugerido:

sudo touch nome_do_projeto

Editem este novo arquivo com as seguintes configurações (ref:pyman):



SetHandler python-program
PythonPath "['/home/seuusuario/projetos/'] + sys.path"
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE meuprojeto.settings
PythonDebug On



Acima, está a configuração de referência que eu peguei lá do blog do Andrews(link acima), só que eu gostaria de fazer uma pequena sugestão. Caso você faça referências em seu projeto a aplicativos sem especificar o caminho todo, algo como:
from forum import models
ao invés de
from projeto.forum import models
seu python path deve ficar assim:

PythonPath "['/home/seuusuario/projetos/','/home/seuusuario/projetos/projeto/'] + sys.path"

Dessa forma, seu site não quebra por problema de referência e talz. Algo como seu projeto não achar os aplicativos instalados.

Pronto, ufa...acabou? NADA! Rsrsrsrs, deixa de moleza rapaz(moça). Mostre que vc é cabra macho(rsrsr, não conheço equivalente feminino) e continue!

Agora, na linha de comando, vamos habilitar a configuração que acabamos de fazer:

sudo a2ensite nome_do_projeto

Assim, próxima vez que o apache carregar as configurações, seu projeto vai subir junto. Agora, basta fazer o apache recarregar os projetos. Comando:

sudo /etc/init.d/apache2 reload

Rsrsrs, se não aparecer nenhuma tela de erro, falta só configurar o servidor de email, o servidor de javascript/css/images e mais uma ou outra coisinha. Para tais configurações, sinto muito, mas, google negada! Meus dedos aqui já estão pedindo arrego. rsrsrs

Espero ter sido, no mínimo útil. Abraço a todos, e, lembrem-se: essa luta toda é só no começo :D! Depois fica mais fácil de fazer deploy.