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

Integração Discreta @ WebDay

Integração Discreta @ WebDay

Como melhorar o desenvolvimento de software através da comunicação

Plataformatec

July 20, 2013
Tweet

More Decks by Plataformatec

Other Decks in Technology

Transcript

  1. Posicionamento único em RoR Atualmente somos a única empresa a

    ter 3 membros integrando o Rails Core Team ao redor do globo 5 Carlos Antonio Rafael França José Valim Co-fundador da Plataformatec Rails Core Team website: http://rubyonrails.org/core
  2. Posicionamento único em RoR Atualmente somos a única empresa a

    ter 3 membros integrando o Rails Core Team ao redor do globo 5 Carlos Antonio Rafael França José Valim Co-fundador da Plataformatec Rails Core Team website: http://rubyonrails.org/core
  3. Força a pensar em testes automatizados Ajudou muitas equipes nas

    entregas de projetos Atualmente vista como pré-requisito de equipes
  4. “The problem I worry more about is a semantic conflict.

    A simple example of this is that if Professor Plum changes the name of a method that Reverend Green's code calls. Refactoring tools allow you to rename a method safely, but only on your code base. So if G1-6 contain new code that calls foo, Professor Plum can't tell in his code base as he doesn't have it. You only find out on the big merge.”
  5. “This fear of big merges also acts as a deterrent

    to refactoring” “The result we see is that teams using feature branches shy away from refactoring which leads to uglier code bases.”
  6. “CI is effective at removing the problem of big merges,

    but it's also a vital communication mechanism” “Communication is one of the key factors in software development and one of CI's most important features is that it facilitates human communication.”
  7. Pull Requests não são uma idéia nova git send-email git

    request-pull código + contexto + discussão
  8. “So unless feature branches only last less than a day,

    running a feature branch is a different animal to CI. I've heard people say they are doing CI because they are running builds, perhaps using a CI server, on every branch with every commit. That's continuous building, and a Good Thing, but there's no integration, so it's not CI.”
  9. E se eu usar feature toggles? É uma maneira de

    desacoplar features de deploys/releases