quinta-feira, 25 de agosto de 2011

PyTown.com Patrocina o PythonBrasil[7]

Esse ano meu provedor estará patrocinando a 7ª edição do encontro anual da comunidade Python brasileira, o PythonBrasil[7]

http://www.pythonbrasil.org.br/2011/

O evento acontecerá de 29 de setembro a 1º de outubro de 2011 em São Paulo/SP, juntamente com o III Plone Symposium South America (PSSA).

Todos meus alunos e clientes estão convocados!

O PythonBrasil[7] é uma oportunidade excelente para troca de experiências sobre as tecnologias Python, Zope e Plone. Esse ano teremos diversas presenças ilustes, como Alan Runyan (um dos criadores do Plone) e Jim Fulton (criador do Zope). É provavel que eu fale sobre o plone.app.caching, sucessor do CacheFu, na trilha do PSSA.

Por fim, lembro que seguem abertas as inscrições para meus cursos a distância. Até o final desse ano teremos apenas mais 3 turmas:

  • Plone 4 Completo: de 12 a 23 de setembro, de segunda a sexta-feira, das 14:00h as 17:00h (30 horas)
  • Segurança no Plone: de 3 a 7 de outubro, de segunda a sexta-feira, das 14:00h as 17:00h (15 horas)
  • Plone - Infraestrutura e Administração: de 17 a 21 de outubro, de segunda a sexta-feira, das 14:00h as 17:00h (15 horas)

Ficou interessado? Clique aqui.

segunda-feira, 8 de agosto de 2011

Calendário de Turmas

Estou publicando novamente o calendário das turmas de meus cursos a distância para esse ano. Pretendo abrir novas turmas apenas em 2012, a partir do mês de fevereiro.

Se você ainda não se inscreveu nos cursos de "Plone 4 Completo", "Segurança no Plone" e "Plone - Infraestrutura e Administração" é melhor se apressar.

Segue abaixo o calendário atualizado:


Plone 4 Completo

- Turma 1: de 4 a 15 de julho, de segunda a sexta-feira, das 14:00h as 17:00h (30 horas) - Incrições Encerradas

- Turma 2 (nova turma): de 12 a 23 de setembro, de segunda a sexta-feira, das 14:00h as 17:00h (30 horas) - Incrições Encerradas


Segurança no Plone

- Turma 1: de 18 a 22 de julho, de segunda a sexta-feira, das 14:00h as 17:00h (15 horas) - Incrições Encerradas

- Turma 2 (nova turma): de 3 a 7 de outubro, de segunda a sexta-feira, das 14:00h as 17:00h (15 horas) - Incrições Encerradas


Plone - Infra-estrutura e Administração

- Turma 1: de 17 a 21 de outubro, de segunda a sexta-feira, das 14:00h as 17:00h (15 horas) - Incrições Encerradas

sábado, 25 de junho de 2011

FISL 12

De 29 de junho a 2 de julho estarei participando de mais um FISL. Esse ano não farei nenhuma palestra e ficarei apenas "orbitando" na comunidade Python, revendo os amigos de longa data. Quem quiser bater um papo basta procurar por alguém com um chapéu marrom...

Verificando a grade de Programação do FISL, temos as seguintes palestras sobre Python:

Python e Lego Mindstorms - programando robôs
Tatiana Al-Chueyr
41-E fisl 530/06/2011 09:00:00

Testando interfaces web
Francisco Souza, Andrews Patrick Rocha Medina
41-D fisl 401/07/2011 11:00:00

Intranet CAIXA - Construindo uma Intranet Corporativa utilizando Plone
MAURO LEMES DA SILVA
41-B fisl 230/06/2011 11:00:00

Associação Python Brasil convida: Palestras-relâmpago
Rudá Porto Filgueiras, Leonardo Santagada
41-F fisl 602/07/2011 17:00:00

O Canivete Suiço do Python
Mario Augusto Mania, Douglas Andrade
40-A fisl 729/06/2011 10:00:00

O Estado do Plone
Érico Andrei
Prédio 11 - Auditório29/06/2011 17:00:00

Desenvolvimento de aplicações mobile com Python e Android
Tatiana Al-Chueyr
Prédio 11 - Auditório29/06/2011 15:00:00

Programando em Python - por que se fala tanto?
João Sebastião de Oliveira Bueno
41-C fisl 302/07/2011 12:00:00

Python para cursos de Ciência da Computação
Marco André Lopes Mendes
Prédio 11 - Auditório30/06/2011 11:00:00

Python
e o futuro da telefonia

Mario Augusto Mania
40-A fisl 729/06/2011 13:00:00

Cloudooo: Compartilhe e Converta seus Documentos!
Gabriel Manhaes Monnerat
41-F fisl 601/07/2011 13:00:00

Meta Python - magia negra na prática

João Sebastião de Oliveira Bueno
41-F fisl 602/07/2011 13:00:00

Acho que a participação da comunidade Python nesse ano será muito modesta, mas isso já é outro assunto...

Nos vemos FISL 12.

sábado, 18 de junho de 2011

Dorneles...

Hoje é o aniversário de um de meus melhores amigos, o Dorneles, mas ele infelizmente nos deixou. Ainda é muito difícil falar sobre isso, mas não poderia deixar de fazer um post sobre ele, mesmo sentindo a garganta engasgar enquanto escrevo. De certa forma, falar a respeito do Dorneles ao mesmo tempo o homenageia e me ajuda a superar.

Outros amigos do Dorneles já escreveram sobre ele hoje...

http://www.erico.com.br/blog/2011/06/18/no-sleep-for-you
http://www.simplesconsultoria.com.br/blog/dornelesday
http://www.dieblinkenlights.com/blog_pt/o-dia-de-dorneles-tremea
http://python-blog.blogspot.com/2011/06/18-de-junho-agora-e-dornelesday.html
http://softwarelivre.org/fisl12/hoje-e-dornelesday
http://blog.petry.cc/2011/06/feliz-aniversario-dorneles.html
http://blog.ramgarlic.com/2011/06/dorneles-tremea-o-grande-deo.html
http://blog.triveos.com.br/2011/06/18/hoje-e-aniversario-do-deo-o-dornelesday/

mas eu vou tentar escrever sobre coisas diferentes.

Eu conheci o Dorneles em 1997. Entramos na faculdade juntos (eu, Dorneles, Sidnei e Luis Flávio). Sabe aquela galera que começa a fazer os trabalhos de faculdade juntos? Faz tanto tempo... Conheço o Dorneles a mais tempo do que a esposa dele.

Eu guardo lembranças diferentes da maioria das pessoas a respeito do Dorneles. Eu conheci o Dorneles feliz e o triste, o tranquilo e o preocupado... Acho que o conhecia bem.

Lembro, como se fosse hoje, o dia que ele me falou que ia ser pai (ele tava uma pilha!)

Tenho até hoje um cachorro que cuida da casa de minha mãe e que foi um presente dele e da Flav.  Na época eles recolheram um filhote de uma cadela pitbull que tinha sido "pega" por um vira-latas e ia ser abandonado. A filha mais nova deles montava cavalo no SADAN (carinhoso nome que dei para o pitbull), segurando o bicho pelas orelhas. Obviamente não ia dar certo criar um monstro desses num apartamento e por isso fiquei com ele.

Meu primeiro emprego (depois de ter programado em COBOL durante quase 5 anos) foi uma indicação do Dorneles. Desde 1994 eu sempre estive "ligado" com internet, mas foi trabalhando junto com o Dorneles numa empresa de publicidade que comecei a "programar" para internet. Naquela época ninguém sabia nada de nada. O Dorneles programava em flash e director, produzindo CDs multimídia e sites. Tenho saudades dessa época, onde tudo era novidade.

Eu lembro também de trocar o pneu da santana quantum dos pais dele, carregada de estrume, bem no centro da cidade, enquanto íamos para a faculdade. Eu costumava pegar carona com o Dorneles para ir a faculdade (e as vezes jantava na casa da mãe dele). Os pais dele costumavam carregar "de tudo" no carro (inclusive adubo) para as plantas da chácara que a família tinha perto da represa do faxinal.

Não tenho ABSOLUTAMENTE nenhuma lembrança ruim do Dorneles (e já "quebrei" pelo menos 2 empresas junto com ele).

A algum tempo já vinha tentando olhar para a vida de uma forma mais "light". Especialmente depois do acidente do Dorneles, acho que tenho tentado me policiar, ficar menos tempo na frente do computador, passar mais tempo com minha patroa e não deixar para viver "o amanhã" amanhã, e sim viver sempre "o hoje" hoje. Não é fácil, mas tenho tentado.

O trágico falecimento do Dorneles deixou claro que ele fazia muito mais do que deveria, e por muita gente. O Dorneles não foi recompensado a altura (pelo menos não financeiramente). Muitas pessoas ainda não perceberam que, mesmo que de uma forma indireta, devem seus empregos e bons salários a caras como o Dorneles. Reflitam...

Vou tentar não ficar triste, mas ainda vivemos num limbo.

Descanse em paz amigo. Guardarei sempre boas lembranças suas.

domingo, 12 de junho de 2011

Novo Curso: Plone - Infra-estrutura e Administração

Atendendo a pedidos, estou divulgando mais um curso, dessa vez sobre
infra-estrutura!

Plone - Infra-estrutura e Administração

Esse curso se realizará de 17 a 21 de outubro de 2011, das 14:00h as 17:00h, com transmissão ao-vivo, por streaming. Trata-se de um curso de infra-estrutura de software, com 15 horas de duração, destinado a webmasters e sysadmins (profissionais de infraestrutura, administração e segurança de redes) que precisam implementar instalações de Plone (ou de outras plataformas de servidor de aplicação web) de alta performance, escaláveis e tolerantes a falhas ou ainda em plataformas de cloud computing.

Conteúdo

O treinamento consistirá dos seguintes tópicos (poderão ser abordados tópicos adicionais, dependendo da disponibilidade de tempo, relevância e interesse dos alunos):

1. Instalação do Plone
1.1 Configurações do Python
1.2 Configurações do Zope
1.3 Configurações do ZEO
1.4 Configurações do ZODB
1.4.1 Backup do ZODB
1.4.2 Cache de objetos do ZODB
2. Instalando Plone Products
3. Utilização de "buildouts"
4. Configuração de Squid
5. Configuração do Varnish
5.1. Balanceamento de Carga (directors)
5.2. Tolerância a Falhas (grace)
6. Suporte IPv6 (configuração dual-stack e IPv6 only)
7. supervisord, memmon e httpok

Pré-requisitos

Recomenda-se que o aluno já tenha experiência com Plone, mas esse não é um requisito obrigatório (as técnicas demonstradas nesse curso podem ser implementadas em qualquer plataforma de servidor de aplicações web).

É necessário que o aluno tenha experiência com o sistema operacional Linux e esteja habituado com a instalação, compilação e configuração de serviços. Noções de administração de servidores web e/ou proxy são desejáveis.

É necessário também que os alunos tenham conhecimento de inglês técnico, pois alguns materiais não estão disponíveis em Português.

Como de costume, os pré-requisitos exigidos para assistir os cursos a distância são: a) Firefox 4 e b) Acesso a internet de qualidade, com pelo menos 1 Mbps de velocidade de download.


Teste a velocidade de sua conexão clicando aqui ou aqui.


Custo: R$ 900,00


Todos os alunos terão direito a 2 horas de suporte técnico após o término do curso, cobrindo os tópicos que foram abordados durante as aulas.

Inscrições encerradas.

quarta-feira, 8 de junho de 2011

World IPv6 Day

Num post anterior eu já havia divulgado que meu provedor, o PyTown.com já estava rodando 100% IPv6 dual-stack. Hoje, no entanto, é um dia que merece destaque especial.

Hoje acontece o "World IPv6 day". Há quem diga que esta data marca o início do futuro da Internet, com o primeiro teste massivo de entrega de conteúdos através de protocolo IPv6, com participação de grandes empresas globais (leia-se Google, Facebook, Yahoo, Akamai, ...).

O principal objetivo do "World IPv6 day" é motivar empresas de diversos setores (provedores de acesso, hospedagem, fabricantes de hardware e desenvolvedores de software) a prepararem seus serviços para IPv6, tentando garantir o sucesso na transição do já exausto IPv4.

Bonitinho né... agora vamos a realidade.

A situação real da implementação do IPv6 no Brasil é, no mínimo, delicada. Desconheço provedor de acesso que disponibilize acesso IPv6 nativo aos seus clientes. Mesmo a GVT (que me fornece banda larga de 50 Mbits e é uma das empresas mais "moderninhas" quando o assunto é banda larga) não disponibiliza ADSL com IPv6. Acredito que, na prática, apenas uns 2% da "massa" da internet brasileira tem IPv6, quase sempre utilizando túneis de alta latência.

Agora algumas dicas:

1) Há diversas formas de verificar se um determinado site está utilizando IPv6. Uma das mais simples é instalar a extensão SixOrNot no firefox. Através dessa extensão é possível saber se o navegador está acessando o site utilizando IPv6 nativo, se está utilizando IPv4 quando o site oferece dual-stack ou ainda se o site não oferece IPv6 e o acesso é feito utilizando IPv4.

Acabei de testar: hoje Google e Terra estão rodando em dual-stack!

2) Quer testar se sua conexão com a internet suporta IPv6?

http://test-ipv6.com.br/

3) Se você utiliza uma distribuição baseada no Debian e quer acesso IPv6 (e não está disposto a perder tempo) utilize:

$ sudo apt-get install miredo; sleep 10; ping6 ipv6.pytown.com

quarta-feira, 25 de maio de 2011

Novos Cursos: Plone 4 Completo e Segurança no Plone

Depois de quase 2 meses envolvido com a atualização tecnológica de meu provedor de hospedagem, estou divulgando hoje novos cursos a distância: Plone 4 Completo e Segurança no Plone.

O curso Plone 4 Completo tentará honrar o nome que recebeu e ser um curso realmente completo. Ele foi planejado para cobrir tópicos de outros 4 cursos que já ofereci: Python Básico, Plone 4 Básico, Deliverance (esses 3 cursos foram oferecidos durante o período de férias, no último verão) e ainda Desenvolvimento de Plone Products com Archetypes (oferecido em dezembro de 2010). No entanto, o curso não será apenas a união de cursos anteriores, mas uma versão extendida, unificada e realmente focada no Plone 4.

O objetivo principal desse curso é permitir que os alunos tenham uma compreensão adequada da plataforma de desenvolvimento do Plone, tornando-os proeficientes nas tarefas de utilização, personalização e desenvolvimento. Os únicos tópicos importantes que estarão fora do escopo desse curso serão aqueles relacionados com infra-estrutura (aspecto que foi tema de diversos cursos já ministrados) e segurança, aspecto esse que será tratado no segundo curso.

O curso Segurança no Plone é resultado de uma consultoria que recentemente prestei para um órgão do governo federal. Naquela ocasião fui convidado a ministrar um treinamento e efetuar um estudo de caso sobre desenvolvimento de aplicações seguras utilizando Plone. Será a primeira vez que ministrarei um curso de segurança a distância, voltado ao desenvolvimento de aplicações web seguras usando Plone. Minha expectativa é que esse curso faça tanto sucesso na modalidade a distância quanto fez na modalidade presencial.

Como de costume, os pré-requisitos exigidos para assistir os cursos a distância são: a) Firefox 4 e b) Acesso a internet de qualidade, com pelo menos 1 Mbps de velocidade de download.


Teste a velocidade de sua conexão clicando aqui ou aqui.


Seguem abaixo os detalhes dos cursos Plone 4 Completo e Segurança no Plone:

Plone 4 Completo

Esse curso se realizará de 4 a 15 de julho de 2011, das 14:00h as 17:00h, com transmissão ao-vivo, por streaming. Trata-se de um curso completo, com 30 horas de duração, destinado a desenvolvedores de software, designers e demais interessados em conhecer a linguagem de programação python, o Zope e o Plone.

Conteúdo

O treinamento consistirá dos seguintes tópicos (poderão ser abordados tópicos adicionais, dependendo da disponibilidade de tempo, relevância e interesse dos alunos):

1. Python
1.1. Introdução a Linguagem Python
1.2. Sintaxe: Blocos, Tipos, Laços de Repetição, Estruturas Condicionais
1.3. Estruturas de Dados: Listas, Tuplas, Dicionários.
1.4. Manipulação de Arquivos
1.5. Classes, Herança Simples e Múltipla, Sobrecarga de Métodos
1.6. Biblioteca Padrão e Módulos Adicionais
1.7. Introspecção de Depuração
2. Plone
2.1. Introdução ao Plone
2.2. Unified Installer
2.3. Buildout
2.4. Gerenciamento de Conteúdo
2.5. Segurança e Workflow
2.6. Novidades do Plone 4
3. Diazo
3.1. Introdução ao Diazo (collective.xdv ou deliverance)
3.2. Personalização de layout via portal_skins, a maneira tradicional (e difícil)
3.3. Personalização de layout via rules.xml, a maneira moderna (e fácil)
4. Archetypes
4.1. Conceitos Gerais
4.2. ArchGenXML
4.3 ZopeSkel e Paster
4.4 Criação novos tipos de conteúdos
4.4.1. Schemas e Schematas
4.4.2. Fields e Widgets
4.5. Portlets, Views e Viewlets

Pré-requisitos

Diferentemente de outras turmas, onde tenho sido bastante criterioso na definição dos pré-requisitos necessários para assistir os cursos, dessa vez os pré-requisitos serão mínimos. De fato, mesmo os iniciantes na plataforma Plone poderão se inscrever.

O curso será ministrado em um ambiente Linux, mas como a linguagem Python e o próprio Plone são multiplataforma, o conteúdo será útil a usuários de qualquer sistema operacional.

Para um melhor entendimento do conteúdo do curso relacionado com desenvolvimento, recomenda-se que os alunos tenham alguma experiência com programação orientada a objetos (em qualquer linguagem). Recomenda-se ainda que o aluno tenha noções básicas sobre as principais tecnologias utilizadas no desenvolvimento de portais, como HTML, CSS, javascript, etc.


Custo: R$ 1.350,00


Todos os alunos terão direito a 2 horas de suporte técnico após o término do curso, cobrindo os tópicos que foram abordados durante as aulas.

Inscrições encerradas.



Seguranca no Plone

Esse curso se realizará de 18 a 22 de julho de 2011, das 14:00h as 17:00h, com transmissão ao-vivo, por streaming. O curso terá 15 horas de duração e será voltado para administradores de sistemas ou desenvolvedores que já tem contato com a plataforma Plone e estejam preocupados com aspectos de segurança. Apesar de serem públicos distintos (administradores de sistemas e desenvolvedores) o conteúdo do curso será igualmente interessante a ambos, cobrindo tanto aspectos relacionados com infraestrutura de servidores (hardware, sistema operacional, rede, etc) quanto aspectos relacionados com a qualidade do software desenvolvido para a plataforma Plone, foco principal do curso.

Conteúdo

O treinamento consistirá dos seguintes tópicos (poderão ser abordados tópicos adicionais, dependendo da disponibilidade de tempo, relevância e interesse dos alunos):

1. Modelo de Segurança do Zope/Plone
1.1. Permissões e Papéis (no Zope)
1.2. Grupos (no Plone)
1.3. Papéis Locais e Compartilhamento
1.4. Permissões e Workflow
1.5. Papéis utilizando "Proxy Roles"
2. Open Web Application Security Project (OWASP)
3. OWASP Top 10 Web Application Security Risks 2010:
3.1. A1: Injection
3.2. A2: Cross-Site Scripting (XSS)
3.3. A3: Broken Authentication and Session Management
3.4. A4: Insecure Direct Object References
3.5. A5: Cross-Site Request Forgery (CSRF)
3.6. A6: Security Misconfiguration
3.7. A7: Insecure Cryptographic Storage
3.8. A8: Failure to Restrict URL Access
3.9. A9: Insufficient Transport Layer Protection
3.10. A10: Unvalidated Redirects and Forwards
4. As Vulnerabilidades do Plone no CVE
5. Segurança do Plone, segundo o OWASP Top 10

Pré-requisitos

Esse curso não é destinado a iniciantes. É necessário que os alunos tenham conhecimento prévio de Plone (e preferencialmente Python e Zope) e conhecimento prático sobre o sistema operacional Linux e redes TCP-IP (requisitos obrigatórios). Noções de administração de servidores web e/ou proxy são desejáveis. É necessário que os alunos tenham conhecimento de inglês técnico, pois alguns materiais não estão disponíveis em Português.


Custo: R$ 900,00


Todos os alunos terão direito a 2 horas de suporte técnico após o término do curso, cobrindo os tópicos que foram abordados durante as aulas.

Inscrições encerradas.



Ficou com alguma dúvida? Leia o post sobre como estão funcionando atualmente meus cursos a distância ou então sinta-se a vontade para esclarecer suas dúvidas nos comentários.