Postagens populares

terça-feira, 31 de março de 2009

Dica: adote dvorak e diminua lesões

Falarei de uma alternativa para diminuir um problema que poucos percebem, mas aflige cada vez mais os profissionais de T.I., especialmente os programadores - lesão por esforço repetitivo proveniente do teclado.

Apesar de ser experiente em informática e ter prática em digitar rápido, digitava totalmente errado, o chamado "cata milho avançado". Mesmo com o posicionamento correto das mãos no tradicional layout QUERTY você é afligido por muitas lesões, devido ao movimento que suas mãos devem executar para alcançar certas teclas. Quando entrei em minha empresa atual, ainda utilizava o QUERTY. Mas fui encorajado pelo Pedro (developer master daqui) a conhecer e utilizar o DVORAK. Para conhecer a história de como e porque foi criado, acesse: http://www.dvzine.org/zine/01-toc.html

Após ler o zine (leia também!) fiquei abismado como poderia utilizar um teclado otimizado para escrever em inglês (idioma mais utilizado nas linguagens de programação, mas claro que para o português ainda é mais eficiente que o QUERTY).

Decidi aprender com os tutorias que existem para DVORAK - não são poucos pela internet - e apesar de desajeitado, já no primeiro dia era capaz de digitar com o novo layout. Bem, um mês após a adoção do layout, fiquei surpreso ao reparar que as dores provenientes do uso do diário do teclado sumiram - isso mesmo - sumiram!

Bem pessoal, quem se preocupa com a saúde e não quer tornar-se um inválido - sim, isso pode acontecer conforme adquirir estes problemas - deve trocar agora para o DVORAK, e experimentar uma melhora em sua qualidade de vida e na produtividade.

Adeus as dores e nunca mais um layout pré-histórico!

Ha!

quarta-feira, 25 de março de 2009

IBM pergunta: porque estudar linux?

O IBM Academic Initiative é um blog com recursos variados para ajudar acadêmicos do mundo todo a estudar com material de qualidade. No link que disponibilizo abaixo, existe uma pergunta para a qual a IBM quer a sua ajuda para se munir de argumentos e respondê-la, pois é constantemente feita durante suas palestras: porque devo estudar linux?

http://www.ibm.com/developerworks/blogs/page/academicbr?entry=porque_estudar_linux#comments

Aproveitem e assistam o vídeo que tem embutido no POST, muito legal! A big blue apoiando o pinguim?!?!? Sinal do fim dos tempos!

Ha!

sexta-feira, 20 de março de 2009

Blocos CDATA

Ao trabalhar com XML ou uma linguagem de script, as vezes você precisa inserir caracteres que podem ser confundidos pelo interpretador. Especialmente com XML, quando você utiliza caracteres como < ou mesmo & o interpretador do XML vai gerar um erro pois estes caracteres tem significado. Para isto, existe o bloco CDATA, que encapsula o bloco de texto e evita que este seja interpretado.

Como apresentei no POST sobre o esquema de I18N (Intertationalization) , o Symfony utiliza um arquivo XML para traduzir termos dos templates. Assim, teríamos:

<trans-unit id="73">
<source><![CDATA[<strong>Compare </strong> %category%]]></source>
<target><![CDATA[<strong>Comparar </strong> %category%]]></target>
</trans-unit>

A tag <strong> seria interpretada como outro elemento do XML, quando na verdade é uma tag HTML.

Quando insere-se um bloco de script no HTML também é aconselhável utilizar um bloco CDATA para evitar problemas na interpretação daquele trecho.

É isso aí, apesar de simples isto pode lhe poupar muito tempo.

quinta-feira, 19 de março de 2009

Dica: Jogo Numpty Physics

Esse joguinho é muito interessante, uma espécie de quebra-cabeça com gráficos muito irreverentes. Tem poucas fases mas você pode baixar mais.

http://numptyphysics.garage.maemo.org/

Natureza – Uma mãe disposta a ensinar a lição

Sei que não é bem nosso foco, mas ontem conversando com um amigo e vendo a notícia da desgraça das chuvas em SP, disponibilizo este texto abaixo escrito na época das inundações em SC . Todo mundo reclama na hora da desgraça, o paulistas estão chorando á beça, mas pergunta quem é que joga lixo no Tietê. A culpa é do quem?

Por Márcia Taborda



Como é triste educar um filho que não quer aprender! Como é penoso para uma mãe ter que passar ao castigo por ter seu pedido ignorado!



Uma boa mãe, porém, é determinada e reforça suas lições até que sua cria aprenda. Uma mãe de verdade sabe que seus filhos precisam aprender com ela, custe o que custar. Pois bem, meus irmãos, a mãe natureza mais uma vez perde sua paciência e chega ao ponto da punição!



De pouco importa agora saber quem cortou as árvores dos morros que desmoronaram ou mesmo quem acabou com os morros que aqui haviam. De nada adianta achar os culpados de toda sujeira jogada no chão, no rio ou no mar, pois o que estava disfarçado veio à tona ocupando as areias de nossos cartões postais.



Enfurecida a grande mãe mostrou que em nenhum momento estava sendo enganada. Que a tudo assistia, calada, aguardando o momento de cobrar a lição. Eis que chega a hora que, como crianças mimadas, por tanto tempo fizemos de conta que não chegaria e, disfarçados, como se não soubéssemos do que se trata, fazemos cara de espanto.



A lição, queridos irmãos, é muito simples: primeiro a ordem e só depois o progresso. Pois quando se extingue o respeito e a ordem social, o homem se mostra o mais puro e ignóbil primata, completamente incapaz de assumir a responsabilidade por aquilo que faz ou pelo que deixa de fazer.



E é exatamente quando, sem dó, nossa tão querida e sempre correta mãe diria com severidade: todos culpados! Impõe sua autoridade indiscutível e exige que arrumemos a bagunça!



Atenta, observa e distingue, sim, o caráter de seus filhos que, neste momento, se revelam entre os calhordas e os nobres. Pois deixe estar! Ela já deixou bem claro que tem força o bastante para se fazer respeitar e que está disposta a cobrar de cada um de nós, seja por ato ou por omissão!



Será que aprendemos algo ou precisaremos de mais duras lições?


Link


Márcia Taborda


Retirado de: http://www.marciataborda.com.br/

quarta-feira, 18 de março de 2009

Segunda geração da MS Surface

Muita gente malha o pau no Microsoft, mas eles estão sempre inovando e contribuem de maneira extremamente significativa para a computação.

A Surface é mais uma dessas inovações significativas. O mouse e o teclado estão aí a muito tempo, e não é de hoje que se procura um substituto mais eficiente, pois como sabemos os dois podem causar problemas de saúde quando os usa-se repetitivamente. Acho a idéia muito legal e oportuna, pois vivemos uma era de quase total dependência do computador.

http://www.geek.com.br/blogs/832697632/posts/9562-microsoft-j-planeja-segunda-gera-o-da-mesa-surface

Mesmo que não de certo a idéia, devemos continuar tentando encontrar um substituto para estas duas velharias (no mundo da informática claro) que nos acompanham a tanto tempo em contraste com tantas inovações da atualidade.

terça-feira, 17 de março de 2009

Dica: Mercado de jogos

Um mercado em plena expansão é o de jogos. No Brasil mesmo já existem 4 cursos superiores na área, e parece que só aumenta. É verdade que não é fácil, mas o que é?

Saiu na geek.com.br:
http://www.geek.com.br/blogs/832697632/posts/9551-mercado-de-videogames-valer-us-40-bilh-es-em-2012

Aconselho a quem tiver um mínimo de interesse, tentar embarcar nessa onda, seja desenvolvendo um jogo para smartphones ou mesmo para uma plataforma de jogo como PS3, XBOX360 ou PC.

Até mesmo os chamados "advergames" que são pequenos jogos com temática para promover algo, estão com alta demanada.

sexta-feira, 13 de março de 2009

Dica: loja Erro 404 de volta

Bem, para falar a verdade eu nem sabia que ela existia. Para quem é geek, muito interessante, até porque só nós para rirmos daquelas estampas engraçadinhas.

http://www.erro404.com.br

Eu quero a camiseta "feed me", alguem me dá?!

Como comprar na internet e não se ferrar

Uma das coisas que mais aumentaram nos últimos anos no Brasil (até no mundo) em se tratando de internet, foi, com certeza, compras on-line. Mas, apesar deste aumento, muitas pessoas tem receio ou simplesmente não sabem comprar pela internet. Darei algumas dicas para você não se complicar na hora de comprar.

Pesquise entre os mais renomados primeiramente:
Submarino, Americanas, FNAC, MercadoLivre, UOL Store e muitos outros. Os grandes nomes da internet merecem sua atenção primeiro, afinal, são lojas estabelecidas, reconhecidas e você tem maior garantia de receber seu produto sem problema nenhum. Sem falar que não há necessidade de pesquisar a procedencia da loja.

Procure por reclamações sobre a loja que pretende comprar:
Já existem muitos sites para reclamar sobre vários assuntos, ou em fóruns, e os internautas insatisfeitos tendem a colocar "a boca no trombone". Se o loja já sacaneou alguém, ou mesmo se um cliente ficou um pouco insatisfeito, com certeza você achará uma reclamação ou ao menos um comentário.

Não confie em layouts "meia boca":
Dizem que nossa aparência é nosso cartão de visitas. Bem, o layout de um site também é seu cartão de visitas (e da empresa que está por trás também). Existem algumas exceções, mas geralmente, se a loja não investe num layout profissional, pode ter certeza de que não existem preocupações com segurança ou com o sistema de compra e seus dados. Certificados digitais também custam caro, mas atestam a autenticidade da empresa por trás da loja.

Pesquise no órgão de registro de domínios o endereço da página:
Se você só achar o que precisa em um site desconhecido e quiser dar uma chance, de posse de endereço da página, acesse - https://registro.br/cgi-bin/whois/?c&qr=submarino.com.br - e substitua submarino.com.br pelo endereço da sua loja, sem o www. Você poderá visualizar as informações do registro do domínio, como o CNPJ da empresa para posterior pesquisa, telefone e endereço. Não é tudo mas pode lhe dar uma grande ajuda para tomar a decisão de confiar na loja.

Conheça seus direitos:
Publicado na folha:
http://www1.folha.uol.com.br/folha/informatica/ult124u20624.shtml
Procure o PROCON de sua cidade e informe-se.

Só digite seus dados em conexões seguras:
O HTTPS permite realizar as transações em modo seguro (criptografado). Ao digitar as informações do cartão, repare se na barra o endereço começa com httpS (ESSE) de Seguro! Isso atesta que os dados são criptografados antes de ser enviados. Não é a prova de falhas, mas dificulta MUITO o trabalho de um hacker.

Guarde todos os e-mails de contato e outros dados:
Armazene todo o processo de compra, contatos, números de compra ou protocolos. Assim, se houver algum problema ou precisar recorrer a órgãos como o PROCON, não terá problema algum.

É isso aí, desta maneira você tem muito mais chances de realizar sua compra sem problema nenhum.

quinta-feira, 12 de março de 2009

Linux no seu ápice!

LinkBem, agora o Linux chegou no seu ápice (rsrsrs). John C. Dvorak aprovou o Linux!
http://www.pcmag.com/article2/0,2817,2342703,00.asp

Ele entende bastante, mas vive criticando inovações como o mouse (isso mesmo) e cloud computing. Inclusive ele não gostava do Linux, deve ter ficado gagá.

De qualquer forma, mais um para o lado "negro" do mercado de SO.

Há!

Dica: muitas risadas com falhas ao redor do mundo

O failblog é um blog muito bem humorado que recebe postagens de todos os usuários com uma situação engraçada, como embalagens de produtos com afirmações ridículas, fotos com legenda engraçada, vídeos de babacas fazendo asneiras, etc. Enfim, um prato cheio para quem adora situações engraçadas ou quer rir muito.

Comentem!

Internacionalização (I18N) de aplicativos com symfony

Uma das grandes vantagens de utilizar um framework profissional é que você não precisa reinventar a roda toda vez que precisa de um recurso diferente. Facilita e agiliza o processo, permitindo a você total foco na lógica do negócio.

Um grande dilema para os desenvolvedores web sempre foi a internacionalização, ou, I18N (entre o I e o N são 18 letras - InternationalizatioN). Em muitos casos, nos remotos tempos do HTML simples, era um verdadeiro pesadelo criar um site com múltiplos idiomas. Bem, mesmo com o PHP e alguns recursos, como o gettext, haviam ainda muitos problemas. Além, é claro, dos dados no caso de sites dinâmicos, que discutirei em um post separado.

Bem, com o symfony isto tudo é coisa do passado. Falarei primeiro da tradução dos templates e termos fixos do aplicativo. Para criar um aplicativo com I18N, basta criar um catálogo xml com os termos e utilizar uma função em seus templates para traduzir os termos. Logo, teríamos um template normal da seguinte forma:

<p>
Bem vindo a página da empresa X!
Agora são < ? php echo date('H:i:s') ? >
</p>


Mas caso eu necessite de outro idioma, ou mesmo preparar meu aplicativo caso isto seja necessário no futuro (pois ao não encontrar o termo, o symfony devolve o termo passado à função), teríamos:

<p>
<? php echo __('Bem vindo a página da empresa X!') ?>
<? php echo __('Agora são %date%' , array ('%date%' => date('H:i:s'))) ?>
</p>

Você deve estar se perguntando o que é esse __(): é a função de tradução, com ela que acontece a mágia da tradução dos termos, você diz ao symfony para procurar uma tradução.

A função aceita como parâmetros:

Termos que devem ser enviados a separadamente, como o %date%, em formato de array, como em nosso exemplo, onde a hora vai ser diferente cada vez que acessarmos o a página, logo, a data deve ser inserida na string após a tradução dos demais termos. Além disto, em alguns idiomas, determinadas informações podem ter uma ordem diferente.

O Nome do arquivo de tradução também pode ser especificado, e, se não o fizer, o symfony procurará pelo arquivo messages.{idioma - 2 letras ISO}.xml na pasta I18N do aplicativo.

A assinatura do método é esta: function __($text, $args = array(), $catalogue = 'messages') {}

Para traduzir para o inglês, devemos criar um arquivo messages.en.xml, e dentro cadastrar as sentenças:
<trans-unit approved="no" id="global_1">
<source>Bem vindo a página da empresa X! </source>
<target state="translated"> Welcome to X company web site!</target>
</trans-unit>

<trans-unit approved="no" id="global_2">
<source> Agora são %date% </source>
<target state="translated"> It's %date% </target>
</trans-unit>

Além do arquivo de tradução do aplicativo, pode-se ainda dividir os arquivos de tradução por módulo, permitindo uma melhor organização dos arquivos.

O symfony ainda possui um arquivo de configuração para o I18N, na pasta config/i18n.yml do aplicativo. Nele você pode configurar alguns parametros como um prefixo e sufixo para identificar termos não traduzidos, habilitar o debug ou desabilitar as traduções.

É isso aí! Com isto você já pode traduzir todos os templates e termos de sua aplicação. Em uma próxima postagem explico como gerenciar traduções para as informações do banco de dados.

quarta-feira, 11 de março de 2009

10 razões para o Linux prevalecer (ou não) sobre o Windows

Este link argumenta porque o Linux vai superar o windows:
http://blogs.techrepublic.com.com/10things/?p=528

Já este argumenta exatamente o contrário:
http://blogs.techrepublic.com.com/10things/?p=556

Gosto muito dos posts do techrepublic, o pessoal geralmente é imparcial e analisa bem, mas reparei que existem algumas "inverdades" nos posts. Alguns pontos a considerar:

No caso do primeiro:
O ponto um define o Windows 98 como fracasso, mas no meu ponto de vista e na minha experiência com manutenção (que não é pouca) o Windows 98 foi sim um SO muito bom, dando continuidade ou melhorando as inovações muito bem implementadas do Windows 95. Verdade que ele em si não era tão inovador assim, mesmo assim, longe de ser um fracasso. Com um hardware decente (sim, naquela época, pcchips era grama) ele era totalmente estável, porém devido a "grama" (rs) muitos usuários experimentavam travamentos constantes, erros em arquivos e muito mais.

Tudo bem, alguns irão falar que não foram exatamente inovações os recursos trazidos, que algum projeto obscuro implementava antes, não importa, nada se cria, tudo se copia. As próprias teorias de sistemas nos incentivam a copiar os sistemas da natureza, logo, qualquer sistema já é uma cópia em si.

Como acontece com o ciclo de vida das distribuições, o mesmo SO cada vez mais maduro e melhorado, também acontece com o Windows, pena que os recursos que atrapalham ou não deram certo, algumas vezes são mantidos. O registro do Windows para mim é um destes recursos, que deveria ser abandonado ou reescrito ao menos.

Quanto ao segundo:
O autor parece não conhecer uma distribuição o suficiente pois fala coisas incoerentes, ou utilizou uma distribuição antiga.

Ele alega por exemplo que é difícil instalar softwares no Linux, que nenhum usuário quer compilar um programa. Compilar?!?! Será que ele não ouviu falar em "one click install"? Você também não?

Ok, mas primeiro, preciso explicar como funcionam os gerenciadores de pacotes:
Utilizarei o Ubuntu como exemplo pois os gerenciadores tem o mesmo conceito. O Ubuntu vem com o synaptics, seu gerenciador de pacotes. O que acontece com uma distribuição é que além de pequenas modificações, eles "empacotam" vários programas 100% testados com a distribuição, e incluem todo tipo de software que imaginem que um usuário com um desktop vai precisar. Somente nisto já estaria a frente do Windows. Porém, com o "one click install", você acessa uma página web, e através de um link, seu "empacotador" - neste caso o synaptics - armazena o endereço daquele software, baixa, instala e configura apenas com este click. Após finalizar, pronto! Seu software está instalado, configurado e adicionado aos menus sem nenhuma intervenção. Será que em qualquer versão do Windows é assim?

Outro ponto que ele alega é familiaridade e facilidade de uso. Bem, se você utilizar o Gnome ou o KDE que são os gerenciadores de janela do Linux (sim, você tem liberdade de escolher entre váriose não somente um como no Windows) vai perceber uma semelhança IMENSA com a interface do Windows, menu com barras, tray icons, notification bar entre outras coisas. Criar uma pasta? Clicar com o botão direito do mouse -> criar pasta. Inserir um pen drive? Bem, no Windows, na primeira vez ele faz esperar instalar drivers, configurar, e as vezes pede até pra reiniciar. No Ubuntu, apenas insiria e clique no ícone referente ao pen drive!

Software disponível? Bem, enquanto no Windows você acha muita coisa "por aí" no Linux você tem, como já citei acima, o gerenciador de pacotes, com softwares testados para sua distribuição. E tudo isto dentro do seu SO, sem necessidades de buscas intermináveis no google, vírus adquiridos por cracks ou embutidos no software. Linux não pega vírus apenas por não haver, ou porque os usuários entendem mais, mas porque os gerenciadores de pacotes também evitam que o usuário baixe milhões de programas até achar o que quer, sem falar que não vai usar "cracks" (mas apesar de tudo vale lembrar que existem no Linux também, mas, diga não a pirataria).

Existem mais pontos a discutir, mas acredito que isto já é suficiente para termos uma idéia de que nenhum dos dois é perfeito, mas o Linux realmente veio pra ficar no desktop e só é preciso perder o estigma de difícil de usar ou de recursos indisponíveis.

Por outro lado, como eu disse antes, quero dar uma chance a MS pois me parece que estão caprichando no Windows 7 como fizeram no 95/XP. Eu não odeio a MS, e você também não deveria, devemos apenas ser imparcias e dar uma chance tanto para um quanto para outro. E quem tiver dinheiro e preferir, fique com o Windows. Quem pirateia ou não tem dinheiro, bem, dê uma chance ao Linux (eu recomendo Ubuntu).

Um abraço e comentem!

terça-feira, 10 de março de 2009

Dica: Troque seu Windows pelo Ubuntu

Um artigo do G1 muito interessante:
http://g1.globo.com/Noticias/Tecnologia/0,,MUL1024740-6174,00.html

Vale a pena ler pois ficou muito interessante. Para quem tem Windows e não conhece, vale iniciar o live CD e conferir como o Ubuntu é!

Abraço a todos!

segunda-feira, 9 de março de 2009

Windows 7, to be or not to be?

A verdade é que existe um grande furor quando o assunto é o Windows 7, apelido para o novo Windows que a MS vem arquitetando e produzindo, surpreendendo a todos por seu "rápido" (em termos de MS claro) desenvolvimento.

Eu particularmente já troquei o Windows pelo Linux - Ubuntu - há dois anos, e vou muito bem obrigado! Claro que um dos motivos foi o financeiro, e o Ubuntu supriu todas as minhas necessidades a custo ZERO! Mas quero dar uma chance a MS, e por isto tenho lido e acompanhado bastante tudo que sai na mídia sobre o assunto.

Confesso que até agora estou animado e acredito que a MS pode sim, mais uma vez, surpreender a todos com as melhorias e facilidades que este novo SO pode trazer. Dou um voto de confiança sim, podem atirar quantas pedras forem (e sei que vão rs). Mas atire a primeira pedra aquele que nunca usou e desfrutou das inovações, ou somente recursos, copiados que sejam, dos SOs da MS que tanto auxiliaram muitos de nós a apreender a utilizar um PC.

Mas eu espero que eles realmente acertem, caso contrário, como eu vinha afirmando recentemente, se este Windows não sair sem as falhas do Vista, seu sucessor e na minha opinião, péssimo, este será o último Windows da MS. Não que vá fazer tanta falta assim, afinal, a MS tem muitos outros produtos em nichos diferentes, e acredito que na proporção que o Windows para desktops é pirateado, a lacuna financeira deixada pelo Windows não seria tão grande assim.

Bem, apenas minha opinião, cresci juntamente com o Windows neste mercado, agradeço ao Bill (rs) mas a gente vai conforme a maré. E a maré da MS não está para Windows...

Dica para desenvolvedores!

Symfony Project

O symfony é um framework profissional em PHP totalmente orientado a objeto, com várias bibliotecas para um rápido e descomplicado desenvolvimento.

O framework não reinventa a roda, apenas utiliza as melhores práticas da atualidade e grandes bibliotecas de terceiros.

O sistema de plugins é ótimo e devido a maturidade do projeto, existem muitas opções para todo tipo de necessidade.

Acesse agora:
http://www.symfony-project.org

sábado, 7 de março de 2009

Como instalar o jogo NeverwinterNights no Linux

Bem, como meu primeiro contato, quero dividir com todos os passos para instalar este grande jogo compatível com Linux. Parabéns a bioware por este esforço para os fãs do pinguim e do neverwinter.

Os comandos para executar estão destacados em verde.

Esta instalação foi executada no UBUNTU Ibex. Você deve ter o serial key para jogar.

Crie um diretório para o jogo:
mkdir /opt/nwn

Copie os arquivos, Data_shared.zip, Language_data.zip, Language_update.zip do seu dvd ou cd do neverwinter:
cd /media/_DVD
cp
Data_shared.zip Language_data.zip Language_update.zip /opt/nwn

Extraia os arquivos dentro da pasta, na sequência:
unzip Data_shared.zip
unzip Language_data.zip
unzip Language_update.zip

Baixe os arquivos com os recursos para o Linux:
Linux client: http://www.fileshack.com/file.x?fid=2508

Dentro da pasta criada, extraia os arquivos:
tar xzvf nwclient129.tar.gz

Página para escolher o patch que é necessário, depende de sua versão (normal, ou com umas das duas expansões disponíveis):
http://nwn.bioware.com/support/patch.html

Dentro da pasta criada, extraia os arquivos:
tar xzvf English_linuxclient169_xp2.tar.gz

Copiar o arquivo xp2_patch.key para patch.key:
cp xp2_patch.key patch.key

Execute o binário fixinstall:
./fixinstall

Edite o arquivo nwn e substitua o seguinte trecho (ou comente como eu fiz):
#export LD_LIBRARY_PATH=./lib:./miles:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=./miles:$LD_LIBRARY_PATH

Isto serve para o jogo utilizar biblioteca SDL que você deve ter instalada, para substituir a que vem com o jogo.

Execute o arquivo nwn:
./nwn


e jogue a vontade!

Magazine Luiza