Contribuindo com o php desde o core

...pra deixar a sua vida e a do amiguinho melhor

marcelocamargo@linuxmail.org

github.com/haskellcamargo

quem sou eu?

  • PHP community contributor
  • Core developer on Quack PL
  • PL researcher and designer
  • Translator
  • Initial proposer of the |> operator and partial application for PHP

TOC

  • Que tal um RFC?
  • Como posso contribuir para o PHP?
  • Mas o que tem pra fazer?
  • Por que contribuir?
  • Canais de comunicação
  • Referências

Pronto para mergulhar!?

Por que contribuir?

retribuição?

reconhecimento

aprendizado

MUITO APRENDIZADO

que tal um rfc?

Requests For Comments

É um processo em que

desenvolvedores podem

sugerir e discutir novas

ideias com a comunidade

RFC: Pipe operator

RFC: Pipe operator (edit mode)

RFC: Pipe operator (patch)

Karma

O

processo

1. email internals

internals@lists.php.net

2. requira karma

3. comece a documentar

4. abra para discussão

  • Mude o status para "em discussão"
  • Envie outro email para o PHP internals :)
  • Tudo se baseia em mail lists!

5. aguarde e receba feedback

  • Atualize conforme o feedback
  • Deixe claro todos os pontos expostos

6. inicie a votação

  • ...quando não houver mais nenhuma discussão aberta
  • Mude o status para "em votação"
  • E adicione uma área de votação no seu RFC

6. inicie a votação

7. após os resultados...

  • Seu RFC pode ser aprovado e mesclado ou rejeitado
  • ...e deve ser atualizado com seu estado final

protips

  • Confira se já não há um RFC para o que quer
  • Converse antes com os membros do core (no IRC ou na sala 11 do StackOverflow :D)
  • Evite "eu não sei muito sobre, mas..."
  • Prefira sugestões ao invés de críticas
  • RFCs sobre padronização de funções são desclassificados por razões históricas
  • Especifique tudo que precisa mudar para o sucesso do seu RFC
  • Programar sua feature não é obrigatório (mas ajuda)
  • O core do PHP é relativamente complexo, lembre disso
  • Ter um RFC rejeitado não é o fim do mundo (experiência própria :()

como eu posso contribuir para o php?

preciso programar?

não é nenhum tipo de satanismo

documentação

bug reports

testes

testes: PHP TestFest

testes: PHP TestFest

E se a feature que eu preciso não entrar?

Yay! the php preprocessor

yay! the php preprocessor

<?php

macro ·unsafe { $ } >> { $this } // this shorthand

// source                                |   // expansion
class Foo {                              |   class Foo {
    protected $a = 1, $b = 2, $c = 3;    |       protected $a = 1, $b = 2, $c = 3;
                                         |        
    function getProduct(): int {         |       function getProduct(): int {
        return $->a * $->b * $->c;       |           return $this->a * $this->b *$this->c;
    }                                    |       }
}                                        |   }

https://github.com/marcioAlmada/yay

canais de comunicação

room 11 on stackoverflow

irc (efnet, freenode)

sua comunidade local

mas o que tem pra fazer?

referências

Estes slides estão em: 

https://slides.com/marcelocamargo/contributing-to-php

 

  • https://wiki.php.net/rfc/howto
  • https://blogs.oracle.com/opal/the-mysterious-php-rfc-process-and-how-you-can-change-the-web
  • https://github.com/marcioAlmada/yay
  • http://github.com/haskellcamargo/phpp

php internals book

Ferrara/Nikita

tnx!

e beijos de luz

Contribuindo com o PHP desde o core

By Marcelo Camargo

Contribuindo com o PHP desde o core

  • 1,244