O documento discute Continuous Delivery, que é a habilidade de entregar software de forma contínua através de implementações automatizadas e frequentemente. Isso requer testes automatizados, integração contínua, branches de curta duração, feature toggles e pipelines de implementação. O documento também discute green/blue deployments que permitem implementações sem tempo de inatividade através da criação de novos ambientes a cada implementação.
Primeiros passos para tomar uma decisão de arquitetura com AngularJS.Cauê Alves
Neste slide, tento introduzir algumas decisões de arquitetura que tivemos ao reformular um projeto e boas práticas relacionadas a algumas directivas específicas. Incluindo também um gráfico de comparação do antes e depois. Espero que possa ajudar alguém <3
No MasterchefBR é comum ouvir que menos é mais, será que o mesmo vale para o desenvolvimento de aplicativos?
Nessa palestra apresentei como desenvolver um App multiplataforma: iOS, Android e Web (Desktop e Mobile) usando Turbolinks 5. Ou seja, como fazer mais (4 plataformas) com menos.
Link para gravação da apresentação: https://goo.gl/KsWujQ
Link para Google Slides: https://goo.gl/BcGSgi
Primeiros passos para tomar uma decisão de arquitetura com AngularJS.Cauê Alves
Neste slide, tento introduzir algumas decisões de arquitetura que tivemos ao reformular um projeto e boas práticas relacionadas a algumas directivas específicas. Incluindo também um gráfico de comparação do antes e depois. Espero que possa ajudar alguém <3
No MasterchefBR é comum ouvir que menos é mais, será que o mesmo vale para o desenvolvimento de aplicativos?
Nessa palestra apresentei como desenvolver um App multiplataforma: iOS, Android e Web (Desktop e Mobile) usando Turbolinks 5. Ou seja, como fazer mais (4 plataformas) com menos.
Link para gravação da apresentação: https://goo.gl/KsWujQ
Link para Google Slides: https://goo.gl/BcGSgi
Entre Infraestrutura e Desenvolvimento existe uma camada onde se encontra a nova profissão que será (se ja não é) a mais requisitada no mercado. Mas o que é faz esse profissional? Quem precisa dele? Por que é tão importante hoje? Por que é tão difícil encontrar profissionais? Vamos entender nesta palestra do que se trata essa nova cultura na TI e por que vale a pena investir nela.
Palestra apresentada no The Developer's Conference de Porto Alegre 2018. Trilha Delphi.
Nesta palestra iremos relatar nossa experiência na migração de um serviço Delphi totalmente contido em monolito para um novo micro-serviço aproveitando grande parte do código fonte original.
Este projeto nasceu usando bibliotecas comuns ao invés de fontes compartilhados e utilizamos as mais atuais abordagens de desenvolvimento: TDD, ATDD, Continuous Integration, Continuous Delivery e Dockerização, possibilitando que nossa aplicação Delphi seja distribuída com qualidade em três versões: Linux64, Win32 e Win64.
Desconstruindo monolitos - Construindo microservicos em DelphiFelipe Caputo
Palestra apresentada no TDC POA 2018 sobre como transformar monolitos delphi em microserviços, com foco em agilidade e qualidade.
Abordamos modelos arquiteturais, técnicas de migração e ferramentas utilizadas
Apresentação realizada em São Paulo-SP sobre a implementação de Mock Objects em .NET Core (Visual Studio 2017), utilizando para isto os frameworks Moq e NSubstitute.
O que é um devops? O que ele faz, e qual a diferença entre um programador e um SysAdmin? Coisas chatas e divertidas da profissão, exemplo de função de um devops, e a relação disso com integração continua e automação de ambientes
O GitLab é um gerenciador de repositórios baseado em Git. Suas ferramentas incluem um wiki, um gerenciador de tarefas e um pipeline de CI/CD, etc. O GitLab é similar ao GitHub, porém, por ser open source, pode ser armazenado em infraestrutura própria, além da versão em nuvem do mesmo, podendo ter repositórios públicos e privados.
GitLab Runner, o GitLab permite que você use o Runner, que é um projeto open source que é usado para executar os jobs e enviar os resultados de volta para o GitLab. Ou seja, ele nos permite buildar sem a necessidade de nenhuma instalação externa.
Veremos uma introdução de como tudo isso funciona.
Boas Práticas em Aplicações na Nuvem: Twelve-Factor App | MVPConf Latam 2021Renato Groffe
Slides de apresentação realizada no dia 10/12/2021 (sexta) na trilha Development do MVPConf Latam 2021 com meu amigo Robson Rocha de Araújo (Microsoft MVP, MTAC), em uma talk cobrindo boas práticas na implementação de aplicações na nuvem utilizando a metodologia Twelve-Factor App. A palestra também abordou cenários de uso de tecnologias como Git, Azure DevOps, GitHub, GitHub Actions, NuGet, npm, serviços do Microsoft Azure, Redis, Docker, Kubernetes, Helm, Docker Compose, Application Insights, Prometheus, PowerShell e Bash.
Academia do Arquiteto - Implantando A.L.M. em uma semana!Globalcode
Apresentação feita no #TDC2011 para mostrar como é possível migrar para um novo paradgima de desenvolvimento de software com maior qualidade, transparência e gestão ágil do time.
Palestra apresentada no AgileBrazil 2018.
O Git é sem dúvida uma das ferramentas que mais tem potencial de impactar o trabalho da pessoas desenvolvedora de software – desde que ela o conheça bem. Um conhecimento superficial do Git fará com que a pessoa o utilize de forma parecida com que ele usava o Subversion, por exemplo, deixando passar diversas oportunidades.Nessa sessão veremos como o Git pode deixar a programação mais ágil, vamos tirá-lo de uma posição de ferramenta de apoio para levá-lo a um protagonismo no workflow de programação, sendo menos importante somente que a escrita do código em si e suas técnicas.Veremos como usar o Git como instrumento de comunicação do time, além de técnicas que permitem a pessoa foque no código em vez de focar no versionador.
Mais conteúdo relacionado
Semelhante a Nunca fora do ar: como manter uma aplicação sempre disponível com Continuous Delivery
Entre Infraestrutura e Desenvolvimento existe uma camada onde se encontra a nova profissão que será (se ja não é) a mais requisitada no mercado. Mas o que é faz esse profissional? Quem precisa dele? Por que é tão importante hoje? Por que é tão difícil encontrar profissionais? Vamos entender nesta palestra do que se trata essa nova cultura na TI e por que vale a pena investir nela.
Palestra apresentada no The Developer's Conference de Porto Alegre 2018. Trilha Delphi.
Nesta palestra iremos relatar nossa experiência na migração de um serviço Delphi totalmente contido em monolito para um novo micro-serviço aproveitando grande parte do código fonte original.
Este projeto nasceu usando bibliotecas comuns ao invés de fontes compartilhados e utilizamos as mais atuais abordagens de desenvolvimento: TDD, ATDD, Continuous Integration, Continuous Delivery e Dockerização, possibilitando que nossa aplicação Delphi seja distribuída com qualidade em três versões: Linux64, Win32 e Win64.
Desconstruindo monolitos - Construindo microservicos em DelphiFelipe Caputo
Palestra apresentada no TDC POA 2018 sobre como transformar monolitos delphi em microserviços, com foco em agilidade e qualidade.
Abordamos modelos arquiteturais, técnicas de migração e ferramentas utilizadas
Apresentação realizada em São Paulo-SP sobre a implementação de Mock Objects em .NET Core (Visual Studio 2017), utilizando para isto os frameworks Moq e NSubstitute.
O que é um devops? O que ele faz, e qual a diferença entre um programador e um SysAdmin? Coisas chatas e divertidas da profissão, exemplo de função de um devops, e a relação disso com integração continua e automação de ambientes
O GitLab é um gerenciador de repositórios baseado em Git. Suas ferramentas incluem um wiki, um gerenciador de tarefas e um pipeline de CI/CD, etc. O GitLab é similar ao GitHub, porém, por ser open source, pode ser armazenado em infraestrutura própria, além da versão em nuvem do mesmo, podendo ter repositórios públicos e privados.
GitLab Runner, o GitLab permite que você use o Runner, que é um projeto open source que é usado para executar os jobs e enviar os resultados de volta para o GitLab. Ou seja, ele nos permite buildar sem a necessidade de nenhuma instalação externa.
Veremos uma introdução de como tudo isso funciona.
Boas Práticas em Aplicações na Nuvem: Twelve-Factor App | MVPConf Latam 2021Renato Groffe
Slides de apresentação realizada no dia 10/12/2021 (sexta) na trilha Development do MVPConf Latam 2021 com meu amigo Robson Rocha de Araújo (Microsoft MVP, MTAC), em uma talk cobrindo boas práticas na implementação de aplicações na nuvem utilizando a metodologia Twelve-Factor App. A palestra também abordou cenários de uso de tecnologias como Git, Azure DevOps, GitHub, GitHub Actions, NuGet, npm, serviços do Microsoft Azure, Redis, Docker, Kubernetes, Helm, Docker Compose, Application Insights, Prometheus, PowerShell e Bash.
Academia do Arquiteto - Implantando A.L.M. em uma semana!Globalcode
Apresentação feita no #TDC2011 para mostrar como é possível migrar para um novo paradgima de desenvolvimento de software com maior qualidade, transparência e gestão ágil do time.
Palestra apresentada no AgileBrazil 2018.
O Git é sem dúvida uma das ferramentas que mais tem potencial de impactar o trabalho da pessoas desenvolvedora de software – desde que ela o conheça bem. Um conhecimento superficial do Git fará com que a pessoa o utilize de forma parecida com que ele usava o Subversion, por exemplo, deixando passar diversas oportunidades.Nessa sessão veremos como o Git pode deixar a programação mais ágil, vamos tirá-lo de uma posição de ferramenta de apoio para levá-lo a um protagonismo no workflow de programação, sendo menos importante somente que a escrita do código em si e suas técnicas.Veremos como usar o Git como instrumento de comunicação do time, além de técnicas que permitem a pessoa foque no código em vez de focar no versionador.
Analisando dumps de memória de aplicações .NETGiovanni Bassi
Palestra apresentada no .NET Community Summit 2018 do iMasters.
(os slides estão com borda branca porque o slideshare não aceitou o upload de outra forma)
Palestra apresentada no meetup do DockerSP. https://www.meetup.com/Docker-Sao-Paulo/events/234372170/
Nessa palestra veremos como montar um processo de build de uma aplicação conteinerizadas, em conjunto com o Docker Hub. Veremos ainda quais são os artefatos e como trabalhar com a promoção entre ambientes. Ao final, montaremos o processo de continuous deployment, opcionalmente colocando na mão do responsável pelo negócio a tomada de decisão da publicação.
5. Uma empresa democrática
•
•
•
•
Sem gerentes ou estrutura hierárquica
Livros abertos
Decisões por consenso
100% ágil
http://bit.ly/lambda3democracia
7. Primeiro princípio do manifesto
ágil
“Nossa maior prioridade é satisfazer o
cliente através da entrega contínua
(continuous delivery) e adiantada de
software com valor agregado.”
http://agilemanifesto.org/principles.html
8. Continuous Delivery
Software sempre pronto para ir para produção
Todo commit pode ir para produção sem
interferência do desenvolvedor
Decisão de ir pra produção vem do negócio, não de
TI
9. Continuous Deployment
Não é Continuous Delivery
É ir para produção a cada commit que passar nos
critérios de publicação
Continuous Deployment demanda Continuous
Delivery
10. Como fazer?
Testes automatizados
Integração contínua (build server, fast build, etc)
Branches de vida curta
Feature toggles
One click deployment/rollback
Binaries Repository
Deployment pipeline
Sempre produzindo código pronto para produção
11. Build
Um build por push (ou commit)
Testes rápidos rodam
Análises de código rodam
Scripts de deployment gerados
Dados de testes preparados
Repositório de binários recebe o resultado do build,
dos script e dos dados
12. Feature Toggles
Funcionalidade presente no código mas ainda não
finalizada fica desabilitada e pode ir para produção
Pode substituir o uso de branches
Mais complexo de escrever e testar
Pode ser feito facilmente “escondendo” uma
funcionalidade
Em alguns cenários não é possível usar
13. Feature branches, do or do not?
Sem resposta simples, idealmente evite
Se existir, sempre de vida curta
Use pull requests
Devem ser vistos como “ambientes de staging
privados”
* branches de ambiente (staging, UAT) são ok
14. Releasing
Os resultados da compilação progridem de
ambiente para ambiente dentro do deployment
pipeline
Os resultados do build são usados durante todo o
processo, nunca o build é refeito
Ambientes idealmente são sempre criados do zero
19. Green blue deployments: nunca fora do
ar
Cada deploy sobe um ambiente completamente
novo
O ambiente antigo continua no ar
O novo ambiente tem outro endereço
Testes são feitos no novo endereço
Se tudo estiver ok, vire o interruptor e desligue o
ambiente antigo
Suportado pelos principais provedores de cloud