Francisco Souza

Open source, Python, Django, Java, agile e outras coisas mais

Curso De Django Em Vitória, Na Giran

Hoje lançamos o novo site da Giran, que construímos utilizando Flask e o Google App Engine. Foi uma grande oportunidade de aprendizado para o time, e um momento de imersão em práticas como TDD e integração contínua para os membros do time que ainda não tinham experiência com tais práticas.

Django

Junto ao lançamento do novo site, incluímos uma novidade bem bacana: Giran Fast Tracks, que são cursos rápidos e imersivos sobre alguma-tecnologia-que-alguém-do-time-escolher. E entre os cursos que começarão a acontecer em Janeiro de 2011, está o primeiro curso de Django no Espírito Santo, o framework web para perfeccionistas com prazos. Além do curso de Django, temos também os cursos  de CodeIgniter, VRaptor e Scrum. São cursos com 16 horas de carga horária e uma dinâmica focada no aprendizado prático do uso das ferramentas abordadas :)

Ficou interessado? Quer saber mais detalhes sobre o curso de Django? Entre em contato com a Giran!

Quarta Edição Do Liberdade Interativa Em Dezembro

Na próxima semana, teremos em Vitória a quarta edição do Liberdade Interativa, evento organizado pela comunidade Tux-ES, que tem como objetivo aproximar as pessoas da comunidade de software livre do Espírito Santo. Nesta edição, de caráter relativamente especial, contaremos com a presença de um visitante carioca: Henrique Bastos, diretor de tecnologia da Myfreecomm e membro da comunidade de desenvolvedores de software do Rio de Janeiro.

O evento será na próxima quarta-feira, dia 08 de dezembro de 2010, no auditório central da Faesa da Av. Vitória, começando às 18:30. Serão três palestras e logo depois do evento, contaremos um não-tão-tradicional-ainda-por-aqui #horaextra, em um boteco próximo de você! =P

A programação completa do evento é a seguinte:

18h30min - Credenciamento 18h45min - Abertura 19h00min - BDD: Desenvolvimento guiado por comportamento (Francisco Souza) 19h50min - Empreendendo uma comunidade de sucesso (Henrique Bastos) 20h40min - Controle de versão sem dor de cabeça com Git (Paulo Jeveaux) 21h30min - #horaextra

Detalhes das palestras:

Desenvolvimento guiado por comportamento

Behaviour-driven development (BDD) é um tema emergente. Trata-se de uma prática de especificação e design de software, que tem como efeito colateral a construção de testes de regressão capazes de ajudar na garantia do funcionamento de um software. Nesta palestra você conhecerá os conceitos do desenvolvimento guiado por comportamento (BDD), e entenderá como guiar o design e a arquitetura de um software através da escrita de especificações executáveis e de alto nível.

Palestrante: Francisco Souza Francisco SouzaMundialmente conhecido no interior de Cachoeiro de Itapemirim, Francisco Souza é membro do time de desenvolvedores e jogadores de videogame da Giran. É apaixonado por desenvolvimento de softwares, entusiasta em Python, Django e software livre, viciado em coding dojos e associado à Associação Python Brasil. Participa ativamente nas comunidades locais de desenvolvimento e software livre. Por último, mas não menos importante, é estudante de Licenciatura em Informática e possui todas as certificações PMP (Professional Mario Player).

Empreendendo uma comunidade de sucesso

Descubra como canalizar o poder da Internet em ações reais! Como utilizar o mundo virtual para organizar grupos de pessoas de forma colaborativa, distribuída e auto-gerenciada. Conheça as lições aprendidas com a experiência de mais de 2 anos empreendendo a comunidade de software do Rio de Janeiro. Uma comunidade que começou local e vem se expandindo para além das fronteiras do estado e do país.

Palestrante: Henrique Bastos Henrique BastosHenrique Bastos é apaixonado por desenvolvimento de software! Trabalha desenvolvendo sistemas com Python, Django e Métodos Ágeis. Além de atuar constantemente nas comunidades de software organizando eventos e encontros, ministrando palestras, cursos e evangelizando o desenvolvimento sustentável de software, no Brasil e no exterior.

Controle de versão sem dor de cabeça com Git

GIT é um projeto open source, escrito originalmente por Linus Torvalds para manter o controle de versão do código do Kernel do Linux de forma distribuída e focada em eficiência e rapidez. Descubra como aproveitar o poder desta ferramenta para gerenciar de maneira simples e eficaz o código dos seus projetos também.

Palestrante: Paulo César M. Jeveaux

Paulo César M. JeveauxJeveaux trabalha na Giran Soluções e Ensino, onde atua com desenvolvimento de plataformas e serviços para internet de alta performance e escalabilidade utilizando metodologias ágeis como XP e Scrum. É fundador do Grupo de Usuários Java do Espírito Santo (ESJug), do grupo de metodologias ágeis (Agile-ES), foi administrador do PortalJava por 8 anos e hoje participa da moderação do GUJ. Possui mais de 9 anos de experiência em desenvolvimento de sistemas em diversos segmentos, passando por globo.com, Vale, Claro, Xerox, CEF e outras. Grande entusiasta e participante ativo das comunidades de Java, Agile, Ruby e Linux.

Até lá, galera! :D

Educação: A Melhor Ideia a Ser Divulgada

Este foi o título do post escrito pelo Herberth Amaral, que faz uma referência à campanha em prol dos blogs educativos, iniciada por Alessandro Brandão, do blog English Experts, no qual ele me convoca e convoca alguns outros blogueiros a escrever sobre o tema. Me aproveitei do título do Herberth para apresentar algumas impressões minha sobre a divulgação de blogs educativos. De antemão, me sinto surpreso e também orgulhoso por qualificarem meu blog como um blog educativo.

A maior parte do conteúdo que publico tanto neste quando no meu outro blog é baseada nas minhas experiências ou na minha vontade de brincar com algumas coisas, e compartilhar o resultado disso (como a sequência de posts apresentando o uso de diversos frameworks Python no Google App Engine), em alguns casos, o objetivo inicial era compartilhar conhecimento com um amigo mais próximo e então eu decidi que seria legal trazer para o blog. Em seu artigo, Herberth apresentou a ideia de um espírito competitivo que plenamente eu repudio. Estabelecer uma concorrência entre blogs é uma coisa muito ridícula e infantil, afinal de contas, estamos todos aqui com o mesmo objetivo.

Esse post é curto, um pouco fora do comum que eu costumo escrever, mas é um posicionamento de apoio à campanha inciada pelo Alessandro. Neste momento, estou juntando-me a diversos blogueiros e twitteiros ilustres, como Herberth Amaral, Alessandro Brandão e Eike Batista. Divulgue esta ideia, faça sua parte! Não convocarei nenhum blogueiro explicitamente, mas espero contar com o apoio de todos os blogueiros que lerem este post.

Livro Python E Django

Python e DjangoNa última semana recebi o excelente livro Python e Django - Desenvolvimento ágil de aplicações web, escrito por Osvaldo Santana e Thiago Galesi, da Triveos. O livro foi lançado pela editora Novatec, que me enviou um exemplar para avaliação. De forma sucinta, posso dizer que o livro é totalmente sensacional e vale cada centavo que custa. Os autores estão de parabéns pelo material de qualidade sobre Python e Django.

A primeira parte do livro apresenta a linguagem Python de forma simples e direta, incluindo também um pequeno manual de referência das funções builtin, uma lista com os módulos da biblioteca padrão e fazendo uma rápida (e ótima) menção ao uso do virtualenv para desenvolvimento com ambientes isolados.

A partir do oitavo capítulo, o livro apresenta o framework Django, contando um pouco da história do mesmo, explicando sua arquitetura, forma de instalação e o seu uso num projeto de agenda de eventos. Diferente da abordagem adotada por Marinho Brandão no livro Aprendendo Django no Planeta Terra, aqui os autores estão um pouco mais preocupados com os conceitos por trás do framework (até por se tratar de públicos diferentes).

Alguns pontos que gostaria de destacar:

  1. Trata-se do melhor material introdutório de Django em português que eu conheço;
  2. Além de excelente material introdutório, também é um ótimo manual de referência da linguagem Python e do próprio framework Django;
  3. Achei foda incluírem referência ao desenvolvimento utilizando o virtualenv;
  4. Os autores foram muito felizes com o detalhamento do Django ORM no capítulo 14 e a demonstração da Django Debug Toolbar no capítulo 16;
  5. O capítulo que trata sobre Deploy e implantação também foi muito feliz ao abordar deploy com virtualenv, mas acho que outro servidor além do Apache também poderia ser abordado;
  6. Ponto para o Apêndice A que fala sobre depuração em Python utilizando o Python debugger;
  7. O Apêndice B fala da instalação do Python no Windows, mas o livro deixa um pouco a desejar quanto ao uso de Django no Windows. Na minha opinião não chega a ser um problema: só por que você pode desenvolver em Python no Windows não significa que você deva =P

Na página do livro no site da Novatec é possível fazer o download da introdução e do sumário do livro. Ficou interessado no livro? Você pode comprá-lo com 20% de desconto utilizando o código promocional FSOUZA até Dezembro! :)

III Liberdade Interativa

Como da para reparar no banner do site, o Liberdade Interativa chega à terceira edição, e, pela primeira vez, sem uma palestra minha =P A comunidade Tux-ES está organizando a terceira edição do Liberdade Interativa, que acontecerá novamente numa quinta-feira à noite, dia 11 de novembro, na Faesa da Av. Vitória. Não é necessário fazer inscrição, apenas apareça! A programação é a seguinte:

O Que Eu Ando Aprontando?

O blog deu uma esfriada, mas é que a vida anda meio corrida, e tenho travado algumas batalhas com o meu notebook nos últimos tempos. Além da faculdade que vem sugando meu tempo de forma desumana, o trabalho na Giran vai de vento em popa, continuo me aventurando nas minhas vidas de apresentações e palestras, também tenho tentado me dedicar mais a projetos open source (codar mais, postar menos =P).

II Workshop De PHP Do Espírito Santo: Foi Show!

Catei o título do post sobre o II Liberdade Interativa, por que o evento manteve o padrão “show” de qualidade =D O II Workshop de PHP do Espírito Santo aconteceu no dia 28 de agosto de 2010, na UVV, e eu também apresentei uma palestra neste evento, sobre o framework, com um colega de trabalho, o André Tagliati. Apresentamos a palestra entitulada “CodeIgniter: Turbinando a produtividade com MVC”. cb45b779a3d441e6a88ffba6facf7b4d

II Liberdade Interativa: Foi Show!

Ontem aconteceu a segunda edição do Liberdade Interativa, um evento da comunidade Tux-ES. O evento contou com três apresentações: na primeira, a Rapha falou sobre o Bacula, uma ferramenta para backups de servidores em redes. Logo depois da Rapha, fui desafiado apresentei a palestra “Django: o framework web para perfeccionistas com prazo”. Fechando o evento, o colega M3nd3s apresentou a palestra “Iptables - Entendendo como fazer um firewall pessoal”.

Voando Com O Flask No Google App Engine

FlaskDepois de uma pequena pausa, chegamos finalmente à terceira parte da série de posts sobre o uso de frameworks Python no Google App Engine. Após abordar o uso do Django e do web2py no App Engine, agora veremos como usar o Flask, um microframework para Python baseado no Werkzeug, no Jinja2 e em boas intenções. Diferente do Django e do web2py, o Flask não possui uma camada de abstração do banco de dados, não é um framework full stack. Trata-se de uma excelente decisão de design, uma vez que é possível trabalhar com o SQLAlchemy (ou qualquer outro ORM) em sistemas que usam bancos de dados relacionais, e a API nativa para os bancos de dados não relacionais, quando for o caso.

Voando Com O Web2py No Google App Engine

web2pyChegamos à segunda parte da série de posts sobre o uso de frameworks Python no Google App Engine. O framework da vez é o web2py, um leve e poderoso framework web fullstack. Assim como o Django, um dos principais recursos do web2py é uma poderosa camada de abstração dos dados (DAL - data abstraction layer), mas diferente do Django, a camada de abstração de dados do web2py foi projetada para dar suporte a bancos de dados não-relacionais, e conta com suporte nativo ao BigTable.