Autenticação Facebook no Grails

Grails Logo

Recentemente comecei a brincar com o grails e precisei implementar a funcionalidade de login usando uma conta do facebook. Na minha busca sobre autenticação conheci o plugin spring-security-core do qual eu gostei muito e comecei a usar. Para autenticação no facebook existe o plugin facebook-graph que também é muito bom.
Pensando nisso resolvi mostrar como utilizar esses dois plugins juntos para implementar autenticação no facebook com spring-security-core e facebook-graph no grails.

Grails com Sqlite3 no Ubuntu 11.04

Grails Logo

Por padrão o grails utiliza o HSQLDB como banco de desenvolvimento, teste e produção. Saiba como configurar o banco de desenvolvimento para usar sqlite3.
O primeiro passo é instalar o jar do sqlite-jdbc junto com suas dependências.

Deploy no tomcat usando django-jython

Jython
Muitos dizem que o futuro do java está na jvm, que a linguagem em si vai morrer e a máquina virtual vai ser a principal plataforma de desenvolvimento capaz de executar código escrito em diversas linguagens. Previsões a parte, a idéia de rodar um código python em um servidor de aplicação java é no mínimo interessante.
Nesse artigo vou mostar como fazer o deploy de um site em django + mysql no servidor tomcat no ubuntu 10.10.

Deploy múltiplas versões do Django no Nginx com VirtualEnv


Nginx (pronuncia-se engine-x) é um servidor web que está ganhando muita popularidade como alternativa ao apache por ser rápido, robusto e fácil de configurar.
Nesse artigo vou mostar como fazer o deploy de dois projetos usando versões diferentes do Django usando o virtualenv + nginx no ubuntu 10.10.

Comandos básicos do Git


Git é um sistema de controle de versão distribuído, open source, rápido e eficiente. Desenvolvido inicialmente por Linus Torvalds, mesmo criador do kernel do Linux, começou a ganhar notariedade quando passou a ser utilizado como sistema de versionamento padrão para o projeto do kernel. Em 2008, com o lançamento do github, uma espécie de rede social para compartilhamento de códigos, o git deu um grande salto rumo a popularização.
Vou abordar de forma rápida e resumida alguns comandos. Informações mais detalhadas podem ser encontradas na documentação do projeto ou vem vários tutoriais existentes pela web.

Introdução ao Apache Wicket

Apache Wicket é um framework web baseado em componentes utilizando a linguagem java. Entre suas características destaca-se o uso de XHTML puro para templates e ausência de arquivos XML para configurações.

Feliz 2011


Dizem que no Brasil o ano só começa depois do carnaval. Eu digo que é uma excelente época para repensar a vida, traçar novos objetivos e por que não atualizar blog?! Muito nerd, eu sei.

Após alguns meses de abandono e alguns comentários não respondidos (sorry, wordpress mal configurado não me notificou por e-mail), pretendo (de novo) voltar a blogar.

2010 foi incrível. Conheci muita gente, fui em encontros/eventos de várias comunidades de software do RJ e tive uma grande evolução técnica principalmente em java e agile. Investi em ações, vi o final horrível de Lost e também comprei um playstation 3. Tinha três objetivos para o ano passado: dobrar meu salário, ganhar experiência em java e participar mais de projetos open source. A parte boa é que consegui os dois primeiros e a ruim é que eles atrapalharam o terceiro.

Em 2011 pretendo ler mais no kindle, trabalhar menos com java (j2ee) e quem sabe iniciar ou me juntar à alguma startup. Blogar vai ser meu termômetro. Enquanto estiver blogando, sinal de que estou seguindo pelo caminho que tracei. Eu acho.
Àqueles que visitaram esse humilde blog desatualizado, feliz ano novo!!!

Liberado código fonte do tipsforlinux.com

tipsforlinux.com

Essa semana foi lançado o site tipsforlinux.com, meu projeto pessoal open source desenvolvido em Django. O site é um blog, cuja função é ser um repositório de dicas e truques sobre GNU/Linux. Possui um visual simples e leve possibilitando uma navegação agradável até mesmo nos navegadores em modo texto. O site não chega a ser uma idéia inovadora, na verdade ele surgiu da vontade de programar novamente em Django.
O projeto utiliza as apps django-tagging, django-pagination, django-socialauth, django-contact-form, python-twitter, comments e sitemaps e o codigo está disponibilizado no github.

Site:
http://tipsforlinux.com

Código:
http://github.com/gustavohenrique/TipsForLinux

Por que Django?

Django é o framework ideal para os que buscam agilidade e simplicidade. Um dos recursos que mais gosto é o Admin, uma poderosa interface para produzir conteúdo. Simples de usar, bastante customizável e com um visual agradável, bastante útil durante a fase de desenvolvimento e ideal para pequenos projetos com ausência de um designer na equipe. Outras caracteristicas interessantes são:

  • API para autenticação de usuários com suporte à grupos e níveis de acesso, que permite a criação de permissões personalizadas para cada página, classe ou método;
  • Sistema de cache que torna mais rápido o carregamento das páginas e o acesso ao banco de dados;
  • Sistema de templates utilizando HTML, com suporte a herança e Template Tags – uma linguagem de templates para manipulação de conteúdo dinamicamente. É possível criar suas próprias com código Python e utiliza-las em qualquer parte do projeto;
  • Trabalhar com formulários e extremamente simples e há diversos tipos de validações disponíveis como por exemplo e-mail, cpf e endereço IP;
  • ORM compatível com os bancos de dados mais utilizados no mercado;
  • Paginação é uma tarefa trivial;
  • Incrível suporte à internacionalização;
  • É multiplataforma;
  • Documentação bem completa e de fácil entendimento;
  • Comunidade altamente ativa.

Por utilizar Python, é compatível com uma grande variedade de bibliotecas para trabalhar com xml, json, webservices, restful, graficos, relatorios, imagens e etc. Sem dúvida uma ótima escolha para quem procura agilidade com produtividade.

Essa foi minha opinião expressada no debate Django vs. Ruby on Rails, matéria da revista TiDigital (edição 16 de junho/2010).

Computação Ubíqua

Cada vez mais há um distanciamento de computadores isolados para uma tecnologia mais ampla, conectando dispositivos móveis em redes distribuídas. Tal arquitetura computacional traz grandes vantagens como a Continuidade de Serviços, que garante o funcionamento de serviços básicos, e o Armazenamento Distribuído, que torna dados e informações acessíveis em caso de desastres. Isso se deve ao avanço da Computação nas Nuvens, uma evolução da Computação Móvel, cujo conceito é compartilhar dados e serviços através da interligação de sistemas, sempre disponíveis, não mais locais, mas nas nuvens . Os dispositivos, como um computador ou um celular, apenas solicitam os serviços e apresentam os resultados. Mas não pára por aí. Um professor chamado Mark Weiser, cientista chefe do centro de pesquisas da Xerox, por meio de um artigo chamado “O Computador do Século 21”, introduziu um novo conceito chamado Computação Ubíqua, cuja idéia principal é focar a atenção do usuário na tarefa e não na ferramenta.
Considerada uma evolução da computação em nuvem, a Computação Ubíqua, também conhecida como Ubicomp, é uma visão de que humanos estejam cercados por computadores interligados rodando sistemas inteligentes capazes de captar variações no ambiente e entender, de acordo com gestos e expressões dos usuários, qual tarefa deve executar, de forma que as pessoas sequer percebam que estão dando comandos a um computador. Resumindo, é a união entre a Computação nas Nuvens e a Computação Pervasiva (sistemas distribuídos e imperceptíveis ao usuário).
O grande desafio para tornar a Ubicomp uma realidade, de forma mais natural possível, é o desenvolvimento de Interfaces Naturais como reconhecimento de voz e escrita, ambientes inteligentes, realidade aumentada e etc. Os computadores estão se integrando cada dia mais na vida das pessoas e a tendência é que consigam interpretar, e não traduzir, os comandos dos usuários.
Aos mais interessados, há um artigo mais completo escrito pelo Fabiano Domingues no Guia do Hardware.net que pode ser acessado pela URL http://www.guiadohardware.net/artigos/computacao-ubiqua/.

Powered by WordPress | Shop the Best Verizon Wireless Deals. | Thanks to Best CD Rates, Credit Cards and Credit card