Muitos acham que suas contribuições na comunidade resumem-se a subir módulos no CPAN e que colaborar com o "core", com o perl em si, é algo muito distante, quase inalcancável. Essa palestra mostra que, pelo contrário, pra contribuir com o core do Perl 5 você só precisa saber falar inglês. Aprenda como ter seu nome imortalizado numa versão do Perl 5 com contribuições simples e que fazem toda a diferença para quem está na trincheira.
6. Rituais de Passagem
“Alo, Mundo!”
Colocar um módulo no CPAN
Fazer seu próprio sistema de templates
Fazer seu próprio framework web
7. Rituais de Passagem
“Alo, Mundo!”
Colocar um módulo no CPAN
Fazer seu próprio sistema de templates
Fazer seu próprio framework web
Fazer seu próprio tratamento de exceções
8. Rituais de Passagem
“Alo, Mundo!”
Colocar um módulo no CPAN
Fazer seu próprio sistema de templates
Fazer seu próprio framework web
Fazer seu próprio tratamento de exceções
contribuir com o código do perl em si
9. Rituais de Passagem
“Alo, Mundo!”
Colocar um módulo no CPAN
Fazer seu próprio sistema de templates
Fazer seu próprio framework web
Fazer seu próprio tratamento de exceções
contribuir com o código do perl em si
11. Mitos do Core Hacking
Exige conhecimentos avançados de Perl
Precisa saber programar em C
Precisa dominar as entranhas do código
Precisa fazer parte do “clube”
15. Minha primeira contribuição:
commit 959e56628cef2f8ac6555eee22b57e3ce02d9c7f
Author: Breno G. de Oliveira <garu@cpan.org>
Date: Sat May 19 09:29:11 2012 -0400
minor tag consistency fixes for perldelta.pod
21. Algumas Tarefas (todo.pod)
Corrigir erros de POD na documentação oficial
Automatizar geração do perldelta
Refatorar testes no t/ para usar o t/test.pl
Escrever descrição para todos os testes
code profiling no script “installman”
configurar instalações Windows usando PowerShell
...MUITO mais!
23. Algumas Tarefas (RT)
Escrever diagnósticos não listados no perldiag.pod
registrar features experimentais no perlexperiment.pod
Escrever teste para cobertura do README
Criar hook no git commit para previnir mudanças na
“esquerda” de um merge
29. % git checkout blead
% git pull
% git checkout -b meunome/descricao
<hack, hack, hack, ...>
% ./Configure -des -Dusedevel
% make test
Continue até os testes passarem :)
30. É a sua primeira vez?
Adicione-se no arquivo ‘AUTHORS’
% git diff AUTHORS
diff --git a/AUTHORS b/AUTHORS
index b448713..3a47bf2 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -149,6 +149,7 @@ Bradley Dean <bjdean@bjdean.id.au>
Bram <perl-rt@wizbit.be>
Brendan O'Dea <bod@debian.org>
Brent B. Powers <powers@ml.com>
+Breno G. de Oliveira <garu@cpan.org>
Brent Dax <brentdax@cpan.org>
Brooks D Boyd
Brian Callaghan <callagh@itginc.com>
% make test_porting
31. % git commit -a
% git format-patch -M origin..
isso vai gerar um arquivo .patch
32. Envie seu .patch em um
email para perlbug@perl.org
Inclua uma descrição (em inglês!) das mudanças
34. Mais informações (perldoc)
perlgit
- informações detalhadas sobre git e o repo Perl
perlhack
- como fuçar e editar o Perl
perlsource
- descreve a estrutura (árvore) do fonte do Perl
37. Mergulhando de cabeça
Atenção: contém código C!
perlinterp - visão geral do interpretador Perl
perlguts - introdução à API do Perl
suplemento: perlguts ilustrado:
http://cpansearch.perl.org/src/RURBAN/illguts-0.42/index.html
perlhacktut - exemplo de um patch simples em C
perlhacktips - dicas para Perl core hacking em C