Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Contribuindo para Open Source @ 1º Tech Day GURU- PR

Contribuindo para Open Source @ 1º Tech Day GURU- PR

Carlos Antonio

August 08, 2015
Tweet

More Decks by Carlos Antonio

Other Decks in Technology

Transcript

  1. Contribuindo*para*Open%Source
    do#início#à#lições#aprendidas

    View full-size slide

  2. Muitas'pessoas'têm'dificuldades'
    para'fazer'sua'primeira'contribuição'
    open'source,'enquanto'outros'se'
    esforçam'para'con:nuar'
    contribuindo'a:vamente.
    —"Carlos"Antonio

    View full-size slide

  3. Carlos'Antonio
    @cantoniodasilva

    View full-size slide

  4. Timeline:(<=#2008

    View full-size slide

  5. Timeline:(2009

    View full-size slide

  6. Timeline:(2010
    Mantendo(projetos(OSS(da(Plataformatec,(
    contribuições(ocasionais(para(o(Rails(e(outros(
    projetos.

    View full-size slide

  7. Timeline:(2011
    Mantendo(projetos(OSS(da(Plataformatec,(
    contribuições(ocasionais(para(o(Rails(e(outros(
    projetos.

    View full-size slide

  8. Timeline:(2012
    O"Rafael"França"e"eu"começamoms"a"trabalhar"
    com"frequência"no"Rails.

    View full-size slide

  9. Timeline:(2012
    A"vida"entrou"no"caminho"=>"Burnout.

    View full-size slide

  10. Timeline:(2013
    Contribuindo*novamente,*sem*mudar*nada*na*
    forma*como*eu*trabalhava.

    View full-size slide

  11. Timeline:(2013
    A"vida"entrou"no"caminho"=>"Burnout.

    View full-size slide

  12. Timeline:(2014
    Contribuindo*novamente,*mas*tentando*novas*
    formas*de*permanecer*a4vo.

    View full-size slide

  13. Timeline:(Hoje
    Par$cipando,,porém,balanceando)muito)melhor)
    o)tempo,,menos,a$vo,mas,sem,parar.

    View full-size slide

  14. Timeline:(Hoje
    Sem$burnout.

    View full-size slide

  15. Lições'aprendidas

    View full-size slide

  16. Por$onde$eu$começo?
    Contribuir)começa)com)usar.

    View full-size slide

  17. Por$onde$eu$começo?
    Encontre(algo(diver&do((ou(doloroso).

    View full-size slide

  18. Por$onde$eu$começo?
    Ajude&a&você%mesmo.

    View full-size slide

  19. Como$eu$começo?
    Busque&por&como/o%que&os&outros&estão&
    fazendo.

    View full-size slide

  20. Conte&com&os&mantenedores
    Eles%estão%lá%para%ajudar%e%guiar.

    View full-size slide

  21. Como$eu$começo?
    Use$parte$do$seu$tempo&livre$(e$um$pouco$do$
    tempo&no&trabalho$também).

    View full-size slide

  22. Pra$camente*nenhuma'empresa*vai*
    te*dar*tempo'específico*para*Open*
    Source.
    —'Carlos'Antonio

    View full-size slide

  23. Cabe%a%você!

    View full-size slide

  24. Como$eu$começo?
    Não$tenha$medo$de$compar'lhar*o*seu*
    trabalho.
    perguntas,+ideias,+reportar+bugs,+pequenos+patches,+correções+de+typos+
    ou+documentação,+qualquer+coisa!

    View full-size slide

  25. 27.43%!de!todos!os!pull!requests!
    são!rejeitados.
    —(Número(inventado

    View full-size slide

  26. Quem%se%importa?
    !\_()_/!

    View full-size slide

  27. É"OK"estar"errado.

    View full-size slide

  28. É"tudo"sobre
    aprender!/!melhorar.

    View full-size slide

  29. Celebre!quando!sua!contribuição!é!aceita.

    View full-size slide

  30. Lembre&se!
    Limite!o!seu!tempo.!Crie!um!workflow.

    View full-size slide

  31. Lembre&se!
    Mo#vação!vs!disciplina.
    h"p:/
    /www.wisdomina/on.com/screw3mo/va/on3what3you3need3is3discipline/

    View full-size slide

  32. Seja%legal.
    Dizer&obrigado&não&dói&<3.

    View full-size slide

  33. Fazendo(perguntas
    Evite!o!issue!tracker.
    Tente%listas%de%discussão,%Stack%Overflow,%IRC,%etc.

    View full-size slide

  34. Fazendo(perguntas
    Não$envie$emails!para!os!mantenedores.
    A"não"ser"que"você"já"tenha"esgotado(suas(possibilidades.

    View full-size slide

  35. Reportando*issues
    Procure'por'issues'similares!primeiro.

    View full-size slide

  36. Reportando*issues
    Tente%dar%o"máximo"de"informação%possível.

    View full-size slide

  37. Reportando*issues
    Tente%explicar%como$reproduzir%o%problema.

    View full-size slide

  38. Enviando(comentários
    Adicione(algo!à!discussão.

    View full-size slide

  39. Enviando(comentários
    Não$envie$somente$um$+1,$por$favor.

    View full-size slide

  40. Enviando(patches
    Siga%as%convenções)de)código)do)projeto.

    View full-size slide

  41. Convenção(para(indentar(código(no(Rails

    View full-size slide

  42. Enviando(patches
    Revise!o!que!você!fez!antes!de!enviar.

    View full-size slide

  43. Enviando(patches
    Não$modifique$código$não$relacionado$ao$que$
    você$está$fazendo.

    View full-size slide

  44. Enviando(patches
    Tente%dar%o"máximo"de"contexto%possível.

    View full-size slide

  45. Enviando(patches
    Adicione(ou(atualize(a(documentação(e(o(
    changelog.

    View full-size slide

  46. Enviando(patches
    Testes?!?

    View full-size slide

  47. TDD
    está%morto

    View full-size slide

  48. Enviando(patches
    Inclua'testes'sempre'que'possível.

    View full-size slide

  49. Enviando(patches
    Patches(incompletos!são!OK.

    View full-size slide

  50. Enviando(patches(de(segurança
    Nunca&envie&para&o&issues&tracker.

    View full-size slide

  51. Nunca&envie&um&patch&de&segurança
    para$o$issues%tracker

    View full-size slide

  52. Enviando(patches(de(segurança
    Procure'por'emails'específicos,'ou'no.fique'
    os'mantenedores'diretamente.

    View full-size slide

  53. RTFC
    Read%The%F*cking%Contribu)ng.md.

    View full-size slide

  54. Mantendo!um!projeto

    View full-size slide

  55. Divida!o!trabalho:!construa!um!&me
    Confie&que&as&pessoas!farão!a&coisa&certa™.

    View full-size slide

  56. Peça!por!contribuições
    Ajude&as&pessoas&a&te&ajudarem.

    View full-size slide

  57. Desligue(as(no,ficações!(às!vezes)
    Elas%podem%acabar%com%você.

    View full-size slide

  58. Responda)as)issues!com!frequência
    Crie%um%workflow%para%evitar%que%elas%se%
    empilhem.

    View full-size slide

  59. Tips%for%keeping%your%Open%Source%
    So2ware%issues%tracker%6dy
    —"José"Valim","Plataformatec

    View full-size slide

  60. Posso$contribuir$com$o$Rails$hoje?
    Ajude&a&revisar&issues&e&PRs&abertos&❤.

    View full-size slide

  61. Usar%o%botão%de%merge%é%fácil,%
    garan1r%que%um%bug%reportado%é%
    realmente%um%bug%e%que%o%código%
    em%um%PR%está%pronto%para%ser%
    integrado%é%muito%mais%díficil%e%
    demorado.
    —/The/Rails/Team

    View full-size slide

  62. RTFC
    Read%The%F*cking%Contribu)ng.md.

    View full-size slide

  63. h"p:/
    /guides.rubyonrails.org/

    View full-size slide

  64. Lição&de&casa

    View full-size slide

  65. Giving&back:&A&prac/cal&guide&to&
    OSS&contribu/ons
    —"Aaron"Pa)erson","Red"Hat

    View full-size slide

  66. How$to$Contribute$to$Open$Source:$
    Extensibility$from$Simplicity
    —"Ryan"Davis"+"AT&T"Interac4ve

    View full-size slide

  67. 99"ways"to"ruin"an"Open"Source"
    project
    —"Brandon"Keepers"-"GitHub

    View full-size slide

  68. Don't&feel&guilty&about&not&
    contribu2ng&to&open&source
    —"Julia"Evans","Stripe

    View full-size slide

  69. As#vezes#eu#escuto#as#pessoas#
    dizerem#“você&deveria&escrever&
    so-ware&open&source!”#como#se#isso#
    fosse#um#bem#universal.#Não.#Faça#
    isso#se#fizer#sen;do#pra#você,#se#
    valer#o#seu#tempo!
    —&Julia&Evans

    View full-size slide

  70. Contribu)ng+to+Big+Bad+Open+
    Source
    —"Sean"Doyle"+"Thoughtbot

    View full-size slide

  71. Comece&pequeno

    View full-size slide

  72. Se#mantenha#mo#vado#(ou#disciplinado!)

    View full-size slide

  73. E"con$nue'contribuindo!

    View full-size slide

  74. E"me"avise"se"eu"puder"ajudar":)

    View full-size slide

  75. Carlos'Antonio
    @cantoniodasilva
    [email protected]
    about.me/carlosantoniodasilva
    youneedabudget.com
    !"❤$%

    View full-size slide