Podcast sobre arquitetura de software, boas práticas de programação e outros temas relacionados a desenvolvimento de software. // p de Podcast var p;
Marcio Frayze David e Julianno Martins Silva
Pattern Matching no Java? Neste episódio falamos sobre Pattern Matching e como esse recurso foi introduzido no Java. Participantes: Marcio Frayze David marcio@segunda.tech https://twitter.com/marciofrayze https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://linkedin.com/in/marcio-frayze https://dev.to/marciofrayze Julianno Martins Silva juliannoms@gmail.com https://twitter.com/juliannoms https://linkedin.com/in/juliannoms Links: https://openjdk.java.net/jeps/394 https://guide.elm-lang.org/types/pattern_matching.html https://docs.vavr.io/#_pattern_matching
O que seus testes automatizados dizem? E as entregas frequentes? Como as retrospectivas podem conduzir pra melhoria contínua? Neste episódio falamos sobre feedback, um dos valores da Programação Extrema. Participantes: Marcio Frayze David marcio@segunda.tech https://twitter.com/marciofrayze https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://linkedin.com/in/marcio-frayze https://dev.to/marciofrayze Julianno Martins Silva juliannoms@gmail.com https://twitter.com/juliannoms https://linkedin.com/in/juliannoms Links: http://www.extremeprogramming.org/values.html https://explainagile.com/agile/xp-extreme-programming/values/feedback/ https://wiki.c2.com/?ExtremeValues https://www.desenvolvimentoagil.com.br/xp/valores/feedbœack Livros https://www.goodreads.com/book/show/67833.Extreme_Programming_Explained https://www.goodreads.com/book/show/67839.Planning_Extreme_Programming https://www.goodreads.com/book/show/9737235-extreme-programming
Como verificar o impacto de uma mudança? Teste em produção? Conhece o teste A/B? Sabe quais são os objetivos de um teste A/B? Participantes: Keyle Barbosa de Menezes keyleb@gmail.com https://www.linkedin.com/in/keylebarbosa/ Pedro Ivo Oliveira da Cruz pedriv@gmail.com eu só trabalho aqui Marco Porcho maporcho@gmail.com https://medium.com/@porcho https://www.linkedin.com/in/marco-porcho Marcio Frayze David marcio@segunda.tech https://twitter.com/marciofrayze https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://linkedin.com/in/marcio-frayze https://dev.to/marciofrayze Julianno Martins Silva juliannoms@gmail.com https://twitter.com/juliannoms https://linkedin.com/in/juliannoms Links: Webinar: A/B Testing 101 by Booking.com Product Manager, Saurav Roy - https://www.youtube.com/watch?v=di2e1QpKYUY Estudo de caso de testes A/B aplicados no app Secret Escapes - https://www.optimizely.com/customers/secret-escapes/ How to Run A/B Tests Successfully by Vice Media Product Manager - https://www.youtube.com/watch?v=NsiDwGntnpA&t Curso de Teste ab da Udacity: https://www.udacity.com/course/ab-testing--ud257 Testes ab x Testes Multivariados: https://www.nngroup.com/videos/a-b-testing-vs-multivariate/
Quanto de coragem é preciso no desenvolvimento de software? Como seu time encara os problemas e medos do dia a dia? Neste episódio falamos de Coragem, um dos valores da Programação Extrema. Participantes: Marcio Frayze David marcio@segunda.tech https://twitter.com/marciofrayze https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://linkedin.com/in/marcio-frayze Julianno Martins Silva juliannoms@gmail.com https://twitter.com/juliannoms https://linkedin.com/in/juliannoms Links: https://www.desenvolvimentoagil.com.br/xp/valores/coragem https://en.wikipedia.org/wiki/Extreme_programming http://www.extremeprogramming.org/rules/collective.html Livros sobre Extreme Programming: Extreme Programming Explained: https://www.goodreads.com/book/show/67833.Extreme_Programming_Explained Planning Extreme Programming: https://www.goodreads.com/book/show/67839.Planning_Extreme_Programming Extreme Programming: https://www.goodreads.com/book/show/9737235-extreme-programming
Conhece Up/Down Casting? Conceitos de Produtor e Consumidor em Generics? Como acontece a hierarquia de tipos com tipos genéricos? Play no p de Podcast. Participantes: Marcio Frayze David marcio@segunda.tech https://twitter.com/marciofrayze https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://linkedin.com/in/marcio-frayze Julianno Martins Silva juliannoms@gmail.com https://twitter.com/juliannoms https://linkedin.com/in/juliannoms Links: Generics no Java: https://docs.oracle.com/javase/8/docs/api/java/util/List.html https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html https://docs.oracle.com/javase/tutorial/java/generics/upperBounded.html https://docs.oracle.com/javase/tutorial/java/generics/lowerBounded.html https://docs.oracle.com/javase/tutorial/java/generics/unboundedWildcards.html https://medium.com/omnius/wildcards-in-java-generics-part-1-3-dd2ce5b0e59a https://medium.com/omnius/covariance-in-java-return-types-part-2-3-a5bf1d9c63fa https://medium.com/omnius/wildcards-in-java-generics-part-3-3-8f7f5ebea1a5 Generics no Kotlin: https://medium.com/android-dev-br/generics-e-variance-em-kotlin-in-out-t-ca5ca07c9fc5 Generics no .NET: https://docs.microsoft.com/en-us/dotnet/standard/generics/covariance-and-contravariance https://docs.microsoft.com/pt-br/dotnet/standard/generics/covariance-and-contravariance
Conhece "type parameter"? Utiliza no reuso de código? Em quais cenários? Neste episódio falamos sobre o básico de "Generics". Play no p de Podcast! Participantes Marcio Frayze David marcio@segunda.tech https://twitter.com/marciofrayze https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://linkedin.com/in/marcio-frayze Julianno Martins Silva juliannoms@gmail.com https://twitter.com/juliannoms https://linkedin.com/in/juliannoms Links: Generics no Java: https://docs.oracle.com/javase/tutorial/java/generics/why.html https://www.baeldung.com/java-generics Generics no .NET: https://docs.microsoft.com/en-us/dotnet/standard/generics https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/generics/ Generics no Type Script: https://www.typescriptlang.org/docs/handbook/2/generics.html Generics no Python: https://mypy.readthedocs.io/en/stable/generics.html Duck Typing: https://en.wikipedia.org/wiki/Duck_typing Livro Effective Java (possui um capítulo só sobre Generics): https://www.goodreads.com/book/show/34927404-effective-java Generics na linguagem Dart: https://dart.dev/guides/language/language-tour#generics Type Erasure (Java): https://docs.oracle.com/javase/tutorial/java/generics/genTypes.html
Como publicar alterações no BD? Como sincronizar a alteração do BD com a nova versão da aplicação? Já ouviu falar de "Migrations"? Play no p de Podcast! Participantes Marcio Frayze David marcio@segunda.tech https://twitter.com/marciofrayze https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://linkedin.com/in/marcio-frayze Julianno Martins Silva juliannoms@gmail.com https://twitter.com/juliannoms https://linkedin.com/in/juliannoms Links: Artigo da Amanda Sposito. Migrations in databases with large amount of data: http://blog.plataformatec.com.br/2019/02/migrations-in-databases-with-large-amount-of-data/ Criando íncides no PostgreSQL sem lock: https://www.postgresql.org/docs/9.1/sql-createindex.html Undo no flyway (não recomendado): https://flywaydb.org/documentation/command/undo Definição de Database refactoring: https://en.wikipedia.org/wiki/Database_refactoring Livro Refactoring Databases: https://www.goodreads.com/book/show/161302.Refactoring_Databases Blue-green deployment: https://martinfowler.com/bliki/BlueGreenDeployment.html Evolutionary Database Design, Pramod Sadalage: https://www.martinfowler.com/articles/evodb.html Boas práticas de Migration em Java na Heroku: https://devcenter.heroku.com/articles/running-database-migrations-for-java-apps Ferramentas de migrations: Java: https://flywaydb.org/ https://www.liquibase.org/ .NET: https://docs.microsoft.com/pt-br/ef/core/managing-schemas/migrations/?tabs=dotnet-core-cli Ruby on rails: https://edgeguides.rubyonrails.org/active_record_migrations.html
Sua aplicação fica lenta com o passar do tempo? Recebe exceções por falta de memória? Pode ser "Vazamento de Memória". Aperte o play e confira! Participantes Marcio Frayze David marcio@segunda.tech https://twitter.com/marciofrayze https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://linkedin.com/in/marcio-frayze Julianno Martins Silva juliannoms@gmail.com https://twitter.com/juliannoms https://linkedin.com/in/juliannoms Links: Analisador on-line de logs do GC (identifica possíveis vazamentos): https://gceasy.io/ Visual VM: https://visualvm.github.io/ Try with resources do Java: https://docs.oracle.com/javase/tutorial/essential/exceptions/tryResourceClose.html Git lab memory leads issues: https://duckduckgo.com/?t=ffab&q=gitlab+memory+leak&atb=v223-1&ia=web Memory Leak no Rust: https://doc.rust-lang.org/book/ch15-06-reference-cycles.html#reference-cycles-can-leak-memory Microsoft 70% dos bugs de segurança: https://www.zdnet.com/article/microsoft-70-percent-of-all-security-bugs-are-memory-safety-issues Podcast do Marcio sobre Livros: Outros artigos: https://martinfowler.com/articles/qa-in-production.html https://deepsource.io/blog/exponential-cost-of-fixing-bugs https://developers.redhat.com/blog/2014/08/14/find-fix-memory-leaks-java-application https://www.toptal.com/java/hunting-memory-leaks-in-java https://www.baeldung.com/java-heap-dump-capture https://www.dynatrace.com/news/blog/the-top-java-memory-problems-part-1/
Como seus objetos se relacionam? Conhece o "Tell Don't Ask"? E o "Train Wreck"? O que isso tem a ver com encapsulamento? Aperte o play e confira! Participantes Marcio Frayze David marcio@segunda.tech https://twitter.com/marciofrayze https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://linkedin.com/in/marcio-frayze Julianno Martins Silva juliannoms@gmail.com https://twitter.com/juliannoms https://linkedin.com/in/juliannoms Links: Um dos artigos originais onde o termo é criado (Andy Hunt and Dave Thoma), 2003: http://media.pragprog.com/articles/jan_03_enbug.pdf Definição de Tell don't ask, Martin Fowler: https://www.martinfowler.com/bliki/TellDontAsk.html Vídeo (em inglês) com alguns exemplos: https://www.youtube.com/watch?v=ZJ6bH6Df4K8 Texto do Giovanni Bassi: https://www.lambda3.com.br/2009/07/tell-dont-ask-ou-fique-longe-das-minhas-propriedades/ Exemplo TDA: Statement recebe um printer pra impressão do extrato, e não pega o extrato pra imprimir https://github.com/sandromancuso/Bank-kata/blob/master/src/main/java/org/craftedsw/domain/Statement.java Screencast Sandro Mancuso https://www.youtube.com/watch?v=XHnuMjah6ps https://www.youtube.com/watch?v=gs0rqDdz3ko https://www.youtube.com/watch?v=R9OAt9AOrzI http://www.mockobjects.com/2006/10/tell-dont-ask-and-mock-objects.html?m=1 Artigo sobre TDD que cita TDA https://martinfowler.com/articles/mocksArentStubs.html#DesignStyle Link sobre TrainWreck https://wiki.c2.com/?TrainWreck
Qual a documentação necessária pro sistema? O código fonte é o suficiente? Conhece 'código como documentação'? Vem trocar ideia com a gente. Participantes Marcio Frayze David marcio@segunda.tech https://twitter.com/marciofrayze https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://linkedin.com/in/marcio-frayze Julianno Martins Silva juliannoms@gmail.com https://twitter.com/juliannoms https://linkedin.com/in/juliannoms Links: Artigo do Fowler: https://www.martinfowler.com/bliki/CodeAsDocumentation.html Artigos do Jack Reeves recomendados pelo Fowler: https://www.developerdotstar.com/mag/articles/reeves_design.html https://www.developerdotstar.com/mag/articles/reeves_13yearslater.html https://www.developerdotstar.com/mag/articles/reeves_originalletter.html Spring REST Docs: https://spring.io/projects/spring-restdocs Vídeo da Punk do DevOps falando sobre padrões nas mensagens de commit: https://www.youtube.com/watch?v=vXOVl6TxuOE&t=388s Outra convenção para mensagens de commit: https://www.conventionalcommits.org/pt-br/v1.0.0/ Mais uma convenção para mensagens de commit: https://karma-runner.github.io/6.1/dev/git-commit-msg.html Artigo contrário à nossa ideia, com baixa abstração: https://medium.com/it-dead-inside/self-documenting-code-is-mostly-nonsense-1de5f593810f
Já praticou Programação Pareada? Quais as vantagens desta prática? Existem desvantagens? Neste episódio conversamos sobre Programação em Par com duas convidadas, uma líder de equipe e um desenvolvedor. Participantes Marcio Frayze David marcio@segunda.tech https://twitter.com/marciofrayze https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://linkedin.com/in/marcio-frayze Julianno Martins Silva juliannoms@gmail.com https://twitter.com/juliannoms Roberta Monteiro https://linkedin.com/in/roberta-fernandes-monteiro Leonardo Leite https://www.ime.usp.br/~leofl/ https://www.linkedin.com/in/leonardo-alexandre-ferreira-leite-17194322/ https://twitter.com/leonardofl Links: Definição de Pair Programming https://en.wikipedia.org/wiki/Pair_programming Definição de Mob Programming https://en.wikipedia.org/wiki/Mob_programming Ferramenta Code with me: https://www.jetbrains.com/help/idea/code-with-me.html Palestra To pair or not to pair, thoughtworks https://youtu.be/u_eZ-ae2FY8 Palestra da Pia Nilsson: Knowing Me, Knowing You - Growing Teams to Continuously Deliver https://youtu.be/S92vVAEofes Palestra do Woody Zuill: Mob Programming: A Whole Team Approach https://youtu.be/SHOVVnRB4h0 Palestra I've Pair Programmed for 30,000 Hours: Ask Me Anything! https://www.youtube.com/watch?v=RCDfBioUgts FunFunFunction: Pair Programming a Facebook Messenger Bot https://www.youtube.com/watch?v=zFO1cRr5-qY Artigo The Shame of Pair Programming https://diaryofascrummaster.wordpress.com/2013/09/30/the-shame-of-pair-programming/
É difícil de evoluir um monólito legado? E convencer a cliente a esperar por uma migração tecnológica? Conhece o padrão de estrangulamento de software? Vem trocar essa ideia com a gente! Participantes Marcio Frayze David marcio@segunda.tech https://twitter.com/marciofrayze https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://linkedin.com/in/marcio-frayze Julianno Martins Silva juliannoms@gmail.com https://twitter.com/juliannoms Links: Artigo sobre o padrão https://martinfowler.com/bliki/StranglerFigApplication.html Artigo sobre alguns casos de estrangulamento de software https://paulhammant.com/2013/07/14/legacy-application-strangulation-case-studies/ Artigos sobre aplicação do padrão https://www.michielrook.nl/2016/11/strangler-pattern-practice/ https://medium.com/@manisht/strangle-that-monolith-the-strangler-pattern-40c9eeb94402 https://martinfowler.com/articles/break-monolith-into-microservices.html https://microservices.io/microservices/2020/02/21/devnexus.html Vídeo como usar o padrão para modernizar um monólito https://www.youtube.com/watch?v=ncUvq94J2Kg Artigo sobre Dark Launching https://martinfowler.com/bliki/DarkLaunching.html Apresentação sobre melhorar o monólito antes do microsserviços https://pt.slideshare.net/rponte/arquitetura-java-escalando-alm-do-hype
O que é uma transação? E se alterarmos vários recursos? Two-phase commit é mesmo vilão? Qual alternativa temos? Neste episódio conversamos sobre Transações Distribuídas. Confira! Participantes Marcio Frayze David marcio@segunda.tech https://twitter.com/marciofrayze https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://linkedin.com/in/marcio-frayze Julianno Martins Silva juliannoms@gmail.com https://twitter.com/juliannoms Links: Artigo My Beef with MSDTC and Two-Phase Commits https://blog.jonathanoliver.com/my-beef-with-msdtc-and-two-phase-commits/ Artigo How I Avoid Two-Phase Commit: https://blog.jonathanoliver.com/how-i-avoid-two-phase-commit/ Acaba falando de saga mas tem uma introdução sobre transações distribuídas (não 2PC) https://medium.com/senior/transa%C3%A7%C3%B5es-distribu%C3%ADdas-em-micro-servi%C3%A7os-70568b378d77 Artigo sobre transações entre microsserviços https://www.baeldung.com/transactions-across-microservices Artigo sobre two-phase commit https://dzone.com/articles/distributed-transactions-with-two-phase-commit-pro Artigo: Sua cafeteria não usa Two-phase commit. https://martinfowler.com/ieeeSoftware/coffeeShop.pdf Wikipedia Open/XA https://en.wikipedia.org/wiki/X/Open_XA Manifesto reativo https://www.reactivemanifesto.org/pt-B
ACID ou BASE, qual escolher? Conhece o teorema CAP? Neste episódio falamos sobre as propriedades destes dois modelos transacionais. Marcio https://twitter.com/marciofrayze Julianno https://twitter.com/juliannoms Links: Artigo "ACID vs. BASE: What are the differences?" https://phoenixnap.com/kb/acid-vs-base Teorema CAP: https://en.wikipedia.org/wiki/CAP_theorem https://dzone.com/articles/understanding-the-cap-theorem https://martin.kleppmann.com/2015/05/11/please-stop-calling-databases-cp-or-ap.html https://www.infoq.com/articles/cap-twelve-years-later-how-the-rules-have-changed/ Modelo ACID Atômico – Cada transação é devidamente realizada ou o processo para e o banco de dados volta para o estado antes do início da transação (rollback), garantindo que todos os dados no banco de dados sejam válidos. Consistente – Uma transação processada nunca colocará em risco a integridade estrutural do banco de dados. A transação cria um novo estado válido tanto para a estrutura como para os dados ou reverte para o estado anterior. Isolado – As transações não podem comprometer a integridade de outras transações interagindo com elas enquanto ainda estão em andamento. Durável – Os dados relacionados à transação concluída persistirão mesmo nos casos de quedas de rede ou energia. Se uma transação falhar, ela não afetará os dados manipulados. Modelo BASE Basically Available – Em vez de impor consistência imediata, os bancos de dados BASE garantirão a disponibilidade de dados espalhando-os e replicando-os nos nós do cluster de banco de dados. Soft State – Devido à falta de consistência imediata, os valores dos dados podem ser diferentes dependendo do nó que atender a requisição. Eventually Consistent – O fato de não impor consistência imediata não significa que ela nunca a alcance. No entanto, até que isso ocorra, as leituras de dados ainda são possíveis (mesmo que não reflitam a realidade mais atual). Teorema CAP Eric Brewer provou que em um modelo distribuído de armazenamento você só consegue atender simultaneamente duas de três opções: Consistência (C): Cada leitura recebe a gravação mais recente ou um erro. Disponibilidade (A): Cada solicitação recebe uma resposta de sucesso, sem a garantia de que contém a gravação mais recente. Tolerância à partição (P): O sistema continua a operar apesar de um número arbitrário de mensagens sendo retiradas (ou atrasadas) pela rede entre nós. Na prática você precisará ter suporte a tolerância a partição, então a escolha se resume a: quando ocorre um particionamento na rede, o que você quer priorizar: consistência ou disponibilidade?
O que acontece quando uma integração falha? Circuit Breaker, Timeout, Fallback, Retry fazem parte do seu vocabulário? Participantes Marcio Frayze David marcio@segunda.tech https://twitter.com/marciofrayze https://segunda.tech https://masto.donte.com.br/web/accounts/138458 Julianno Martins Silva juliannoms@gmail.com https://twitter.com/juliannoms Links: Palestra do Adrian Hornsby sobre padrões de resiliência: https://youtu.be/0KHSr8Fzi5c Artigo "3 key patterns of software resilience": https://buildiumlife.medium.com/3-key-patterns-of-software-resilience-ae01f191a29e Artigo "The Elephant in the Architecture" do Ian Cartwright, Director na ThoughtWorks: https://martinfowler.com/articles/value-architectural-attribute.html Artigo " Resilience design patterns: retry, fallback, timeout, circuit breaker": https://blog.codecentric.de/en/2019/06/resilience-design-patterns-retry-fallback-timeout-circuit-breaker/ Artigo "Let's talk about Resilience": https://hackernoon.com/lets-talk-about-resilience-97051e14761f Artigo "Fault-Tolerant Clients: Escrevendo Clients e Services Tolerantes a Falhas": https://speakerdeck.com/rponte/fault-tolerant-clients-escrevendo-clients-e-services-tolerantes-a-falhas Circuit Breaker do Spring: https://spring.io/guides/gs/circuit-breaker/ Hipsters sobre black friday https://hipsters.tech/historias-de-black-friday-3-hipsters-228/ Aula Fabio Kon https://www.youtube.com/watch?v=MXA3aI7Er74
Quanto tempo devemos investir no design de um sistema novo? Esse tempo desgasta a relação com o cliente? As decisões são acertadas? Qual arquitetura usar? Microsserviços logo de início? Que tal uma ideia evolutiva? Nesse episódio falamos de Design Simples. Confira! Participantes Marcio Frayze David marcio@segunda.tech https://twitter.com/marciofrayze https://segunda.tech https://masto.donte.com.br/web/accounts/138458 Julianno Martins Silva juliannoms@gmail.com https://twitter.com/juliannoms Links: Artigo sobre Yagni (You Aren't Gonna Need It), do Martin Fowler: https://martinfowler.com/bliki/Yagni.html Artigo sobre Monolith First, do Martin Fowler: https://martinfowler.com/bliki/MonolithFirst.html Livro Extreme Programming Explained: https://www.goodreads.com/book/show/67833.Extreme_Programming_Explained Livro de XP https://www.goodreads.com/book/show/9737235-extreme-programming Artigo Is Design Dead?, do Martin Fowler: https://www.martinfowler.com/articles/designDead.html
O que foi bom em 2020? O que poderia ter sido melhor? Já pensou nas ações e metas para 2021? O p de Podcast fez uma retrospectiva de 2020. Confira! Participantes Marcio Frayze David marcio@segunda.tech https://twitter.com/marciofrayze https://segunda.tech https://masto.donte.com.br/web/accounts/138458 Julianno Martins Silva juliannoms@gmail.com https://twitter.com/juliannoms Links: Livro Fundamentals of Software Architecture: https://www.goodreads.com/book/show/44144493-fundamentals-of-software-architecture Framework Quarkus: https://quarkus.io/ Linguagem de programação Kotlin: https://kotlinlang.org/ Framework Flutter: https://flutter.dev/ Progressive web apps: https://web.dev/progressive-web-apps/ Aula sobre OO e Design Patters para alunos da USP: https://segunda.tech/posts/2020-06-25-oo-design-patterns-serpro/ Livro de introdução à linguagem Haskell: http://learnyouahaskell.com/ Livro sobre Comunicação não violenta: https://www.goodreads.com/book/show/26131898-comunica-o-n-o-violenta?from_search=true&from_srp=true&qid=92JChEyI3L&rank=1 Vídeo sobre Comunicação não violenta: https://www.youtube.com/watch?v=AbQTnHirOnw Curso de introdução à Filosofia: https://www.coursera.org/learn/philosophy
Cansada dos problemas da arquitetura monolítica? Tá difícil aplicar uma arquitetura em microsserviços? Existe um meio termo viável? Conheça a arquitetura baseada em serviços. Confira! Participantes Marcio Frayze David marcio@segunda.tech https://twitter.com/marciofrayze https://segunda.tech https://masto.donte.com.br/web/accounts/138458 Julianno Martins Silva juliannoms@gmail.com https://twitter.com/juliannoms Links: Livro fundamentals of software architecture: https://www.thoughtworks.com/books/fundamentals-of-software-architecture Conversa com autores do livro Fundamentals of Software Architecture: https://www.youtube.com/watch?v=fvSZ7gocaxI Neal Ford falando sobre Building Evolutionary Architectures: https://www.youtube.com/watch?v=-Z_Va9iWo0I SBA como uma alternativa ao Microservices: https://www.infoq.com/news/2016/10/service-based-architecture/ Domain Driven Design https://www.goodreads.com/book/show/179133.Domain_Driven_Design
Já se deparou com um termo com dois significados? Os especialistas de domínio parecem falar grego? O nome das classes e métodos representam o negócio? Conhece a linguagem onipresente? Confira! Participantes Marcio Frayze David marcio@segunda.tech https://twitter.com/marciofrayze https://segunda.tech https://masto.donte.com.br/web/accounts/138458 Julianno Martins Silva juliannoms@gmail.com https://twitter.com/juliannoms Links: Livro DDD, Eric Evans: https://www.goodreads.com/book/show/179133.Domain_Driven_Design Livro Implementing Domain-Driven Design, Vaughn Vernon: https://www.goodreads.com/book/show/15756865-implementing-domain-driven-design Vídeos do Elemar Junior: https://www.youtube.com/watch?v=HnvmpyUAITs Outros Links: https://medium.com/@felipefreitasbatista/developing-the-ubiquitous-language-1382b720bb8c https://medium.com/ingeniouslysimple/constructing-your-ubiquitous-language-7a57e36e3e82 https://medium.com/@kamil/distilling-business-domains-from-a-ubiquitous-language-b9fc42fe8c28
Já precisou criar Threads? E programação concorrente? Paralelismo? Sabe a diferença? Synchronized: utilizar ou não? No episódio de hoje falamos sobre programação assíncrona. Confira! Participantes Marcio Frayze David marcio@segunda.tech https://twitter.com/marciofrayze https://segunda.tech https://masto.donte.com.br/web/accounts/138458 Julianno Martins Silva juliannoms@gmail.com https://twitter.com/juliannoms Links: RFC5789 (PATCH): https://tools.ietf.org/html/rfc5789 https://www.goodreads.com/book/show/34927404-effective-java https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Promise https://docs.oracle.com/javase/8/docs/api/?java/util/concurrent/atomic/package-summary.html http://luizricardo.org/2014/03/concorrencia-e-objetos-thread-safe/ https://www.baeldung.com/java-volatile https://www.baeldung.com/java-asynchronous-programming https://www.baeldung.com/java-completablefuture https://medium.com/javarevisited/java-concurrency-thread-safety-1aac8ae66d2c https://medium.com/@peterlee2068/concurrency-and-parallelism-in-java-f625bc9b0ca4 https://www.goodreads.com/book/show/34927404-effective-java https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Reference/Statements/funcoes_assincronas https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Reference/Operators/await
Qual a forma correta de utilizar o PATCH? Conhece o JSON-patch? É mesmo tão importante a tal idempotência? Como você versiona suas APIs? Confira! Participantes Marcio Frayze David marcio@segunda.tech https://twitter.com/marciofrayze https://segunda.tech https://masto.donte.com.br/web/accounts/138458 Julianno Martins Silva juliannoms@gmail.com https://twitter.com/juliannoms Links: https://medium.com/gin-and-tonic/understanding-idempotency-in-rest-apis-7a5568f41406 https://medium.com/hashmapinc/rest-good-practices-for-api-design-881439796dc9 https://medium.com/@mwaysolutions/10-best-practices-for-better-restful-api-cbe81b06f291 https://developer.mozilla.org/pt-BR/docs/Web/HTTP/Methods/OPTIONS3 https://www.baeldung.com/spring-rest-custom-media-type https://tools.ietf.org/html/rfc6902 https://tools.ietf.org/html/rfc5789 https://williamdurand.fr/2014/02/14/please-do-not-patch-like-an-idiot/ Exemplo de como utilizar Patch no Spring: https://www.baeldung.com/spring-rest-json-patch Exemplo de como utilizar no ASP.NET Core: https://docs.microsoft.com/en-us/aspnet/core/web-api/jsonpatch?view=aspnetcore-5.0 RFC 6902 defines a JSON document structure: https://tools.ietf.org/html/rfc6902 Headers http: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers Cross-Origin Resource Sharing (CORS): https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS
Qual a diferença de POST e PUT? Quais métodos HTTP são idempotentes? Você utiliza estes conceitos nas suas API Rest? Participantes Marcio Frayze David marcio@segunda.tech https://twitter.com/marciofrayze https://segunda.tech https://masto.donte.com.br/web/accounts/138458 Julianno Martins Silva juliannoms@gmail.com https://twitter.com/juliannoms Links: https://en.wikipedia.org/wiki/Representational_state_transfer https://developer.mozilla.org/pt-BR/docs/Web/HTTP/Headers https://developer.mozilla.org/en-US/docs/Glossary/REST https://blog.restcase.com/rest-api-error-codes-101/ https://medium.com/hashmapinc/rest-good-practices-for-api-design-881439796dc9 https://medium.com/@mwaysolutions/10-best-practices-for-better-restful-api-cbe81b06f291 https://martinfowler.com/articles/richardsonMaturityModel.html https://tools.ietf.org/html/rfc7231#section-4.3 Tese de PhD onde tudo começou: https://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm https://restcookbook.com/ https://www.restapitutorial.com/ https://developer.mozilla.org/pt-BR/docs/Web/HTTP/Methods https://developer.mozilla.org/pt-BR/docs/Glossario/Idempotente#:~:text=Outra%20implica%C3%A7 %C3%A3o%20do%20DELETE%20ser,quebrar%20a%20constante%20de%20idempot%C3%AAncia
Qual o momento ideal pra uma refatoração? E a técnica, qual usar? Quais motivos para a pratica da refatoração? Confira! Participantes Marcio Frayze David marcio@segunda.tech https://twitter.com/marciofrayze https://segunda.tech https://masto.donte.com.br/web/accounts/138458 Julianno Martins Silva juliannoms@gmail.com https://twitter.com/juliannoms Links: https://www.thoughtworks.com/pt/xconf-br-2019 https://www.thoughtworks.com/pt/xconf-br https://martinfowler.com/books/refactoring.html https://www.infoq.com/podcasts/refactoring-evolutionary-architecture/ https://www.youtube.com/watch?v=_NnElPO5BU0 https://www.goodreads.com/book/show/44919.Working_Effectively_with_Legacy_Code https://www.goodreads.com/book/show/179133.Domain_Driven_Design https://www.goodreads.com/book/show/4268826-growing-object-oriented-software-guided-by-tests https://anchor.fm/pdepodcast/episodes/Pare-de-usar-IFElse-ekgg2s
Seu CRUD/DAO/Repositório respeita o SRP? Confira neste episódio bônus! Participantes Marcio Frayze David marcio@segunda.tech https://twitter.com/marciofrayze https://segunda.tech https://masto.donte.com.br/web/accounts/138458 Julianno Martins Silva juliannoms@gmail.com https://twitter.com/juliannoms Links: https://thorben-janssen.com/composite-repositories-spring-data-jpa/
Suas classes fazem coisas demais? Simples alterações demandam horas de trabalho? Você segue o Princípio da Responsabilidade Única? Neste episódio falamos sobre este princípio, o "S" do SOLID. Confira! Participantes Marcio Frayze David marcio@segunda.tech https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://twitter.com/marciofrayze Julianno Martins Silva juliannoms@gmail.com Links: https://en.wikipedia.org/wiki/Single-responsibility_principle https://en.wikipedia.org/wiki/Law_of_Demeter https://en.wikipedia.org/wiki/Open%E2%80%93closed_principle https://martinfowler.com/bliki/TellDontAsk.html https://blog.cleancoder.com/uncle-bob/2014/05/08/SingleReponsibilityPrinciple.html https://twitter.com/mfeathers/status/359703449920733184 https://speakerdeck.com/tastapod/why-every-element-of-solid-is-wrong?slide=12 https://www.goodreads.com/book/show/44919.Working_Effectively_with_Legacy_Code https://www.goodreads.com/book/show/18043011-clean-architecture
Você sabe o que é Injeção de Dependência? Suas classes dependem de abstrações? Neste episódio falamos sobre Injeção de Dependência, o "D" do SOLID. Confira! Participantes Marcio Frayze David marcio@segunda.tech https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://twitter.com/marciofrayze Julianno Martins Silva juliannoms@gmail.com Links: vavr: https://www.vavr.io/ mpjme: https://m.youtube.com/watch?v=0X1Ns2NRfks Inversion of Control Containers and the Dependency Injection pattern: https://martinfowler.com/articles/injection.html DIP in the Wild: https://www.martinfowler.com/articles/dipInTheWild.html Weld: https://weld.cdi-spec.org/ Spring: https://docs.spring.io/spring-framework/docs/current/reference/html/core.html#beans Quarkus: https://quarkus.io/guides/cdi Arquitetura Hexagonal: https://alistair.cockburn.us/hexagonal-architecture/
pdepodcast.episodios().stream().map(TocadorPodcast::play); Não entendeu? Aperte o play! Participantes Marcio Frayze David marcio@segunda.tech https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://twitter.com/marciofrayze Julianno Martins Silva juliannoms@gmail.com Livros: Learn You a Haskell for Great Good: http://learnyouahaskell.com/ Functional Thinking, Neal Ford: https://www.goodreads.com/book/show/18492332-functional-thinking Programming with Types: https://www.manning.com/books/programming-with-types Category Theory for Programmers, Bartosz Milewski: https://bartoszmilewski.com/2014/10/28/category-theory-for-programmers-the-preface/ Links interessantes: Higher Order Functions: https://www.youtube.com/watch?v=BMUiFMZr7vk Javadoc do Optional: https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html Javadoc da api funcional do Java: https://docs.oracle.com/javase/8/docs/api/java/util/function/package-summary.html Biblioteca funcional pro Java: https://www.vavr.io/ Curso de Category Theory: https://www.youtube.com/user/DrBartosz/playlists
Já parou pra pensar o que te faz querer tanto um produto? E como deixar o seu produto irresistível? A resposta é UX ou Experiência do Usuário. Confira no episódio de hoje! Participantes Marcio Frayze David marcio@segunda.tech https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://twitter.com/marciofrayze Julianno Martins Silva juliannoms@gmail.com Kátia Karen Bergamini de Queiroz karen.queiroz@gmail.com linkedin.com/in/katia-karen-bergamini-86b3941a2 Links interessantes: https://uxdesign.blog.br/don-norman-e-o-termo-ux-6dffb3f8d218 https://www.nngroup.com/ https://medium.com/gympass/my-covid-19-story-user-research-in-complex-times-eb488e6685e7 https://brasil.uxdesign.cc/ux-canvas-mapeando-os-m%C3%BAltiplos-aspectos-da-experi%C3%AAncia-do-usu%C3%A1rio-fd3544ae1bb7 https://www.nngroup.com/ https://brasil.uxdesign.cc/nubank-um-estudo-de-caso-de-ux-writing-7ffb0ce7c195 https://brasil.uxdesign.cc/designops-o-que-%C3%A9-como-surgiu-e-o-que-ele-faz-dentro-de-um-time-de-design-fd7b9711af92 Livros: Experiência de Usuário https://www.goodreads.com/fa/book/show/6761272-design-emocional---por-que-adoramos-ou-detestamos-os-objetos-do-dia-a- https://www.goodreads.com/nl/book/show/40892602-n-o-me-fa-a-pensar Interface de Usuário https://www.goodreads.com/it/book/show/26595449-pensar-com-tipos https://www.goodreads.com/book/show/17979683-a-cor-no-processo-criativo
No episódio de hoje falamos sobre Integração Contínua e como ela é importante no desenvolvimento de software. Já automatizou o processo de build da sua aplicação? Faz testes automatizados? Conhece chaveamento de funcionalidades? Será mesmo que seu time pratica Integração Contínua? Confira! Participantes Marcio Frayze David marcio@segunda.tech https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://twitter.com/marciofrayze Julianno Martins Silva juliannoms@gmail.com Leonardo Leite https://twitter.com/leonardofl https://www.linkedin.com/in/leonardo-alexandre-ferreira-leite-17194322 https://radarparlamentar.polignu.org/ Links https://trunkbaseddevelopment.com https://www.thoughtworks.com/continuous-integration https://medium.com/@marciofrayze/integra%C3%A7%C3%A3o-cont%C3%ADnua-e-feature-toggles-329055e96de9 https://martinfowler.com/bliki/CanaryRelease.html https://radarparlamentar.polignu.org/ Canal Continuous Delivery do Dave Farley: https://www.youtube.com/channel/UCCfqyGl3nq_V0bo64CjZh8g Palestra do Marcio sobre IC https://m.youtube.com/watch?v=LYtClxC3wcU Effects as data, Richard Feldman: https://www.youtube.com/watch?v=6EdXaWfoslc Livros https://www.goodreads.com/book/show/8686650-continuous-delivery https://www.goodreads.com/book/show/4268826-growing-object-oriented-software-guided-by-tests https://www.goodreads.com/book/show/1654215.The_Art_of_Agile_Development https://www.goodreads.com/book/show/67833.Extreme_Programming_Explained https://www.goodreads.com/book/show/35755822-building-evolutionary-architectures https://www.martinfowler.com/books/refactoringDatabases.html
No episódio de hoje discutimos o impacto do uso excessivo de if/else, switch/case, for, while, na legibilidade e complexidade do código. Quais as técnicas você utiliza pra diminuir o uso destas estruturas? Conhece o Padrão Null Object? Guard Clause? Pattern Matching? Aperte o play! Participantes Marcio Frayze David marcio@segunda.tech https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://twitter.com/marciofrayze Julianno Martins Silva juliannoms@gmail.com Código Haskell para calculo da sequência de Fibonacci fib :: Integer -> Integer fib 0 = 0 fib 1 = 1 fib n = fib (n-1) + fib (n-2) Links: https://m.youtube.com/watch?v=AnZ0uTOerUI https://java-design-patterns.com/patterns/null-object/ https://martinfowler.com/articles/replaceThrowWithNotification.html https://refactoring.com/catalog/replaceNestedConditionalWithGuardClauses.html https://fsharpforfunandprofit.com/posts/expressions-vs-statements/ https://segunda.tech/posts/2020-06-25-oo-design-patterns-serpro/ https://wiki.haskell.org/The_Fibonacci_sequence https://medium.com/better-programming/refactoring-guard-clauses-2ceeaa1a9da https://enterprisecraftsmanship.com/posts/fail-fast-principle/ https://medium.com/coding-blocks/tail-call-optimization-in-jvm-with-kotlin-ebdf90b34ec9 https://medium.com/97-things/enums-are-classes-too-bfdd2030cf1d https://medium.com/@kthsingh.ms/using-enums-as-implementions-for-an-interface-how-and-where-it-can-be-helpful-68a8938306dc https://pt.wikipedia.org/wiki/Complexidade_ciclom%C3%A1tica
No episódio de hoje discutimos os frameworks de mapeamento objeto-relacional, os ORM. Os ORM são frameworks para todas as aplicações? São eles os verdadeiros vilões da baixa performance? Quais facilidades eles trazem? Confira!
Neste episódio discutimos sobre imutabilidade, programação defensiva e boas práticas de programação. Não esqueça de enviar sua opinião pra gente! O que gostou? O que poderíamos melhorar? Envie sua opinião para marcio@segunda.tech. Participantes Marcio Frayze David marcio@segunda.tech https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://twitter.com/marciofrayze Julianno Martins Silva Links interessantes https://www.martinfowler.com/bliki/ValueObject.html https://www.goodreads.com/book/show/34927404-effective-java https://doc.rust-lang.org/book/ch03-01-variables-and-mutability.html https://dzone.com/articles/how-to-create-an-immutable-class-in-java
Neste episódio discutimos a Cultura DevOps, partindo do significado de termos como Integração Contínua e Entrega Contínua, passando pela automação necessária no desenvolvimento e na infraestrutura até como começar a praticar em contextos diferentes. Contamos com a participação especial do Leonardo Leite, pesquisador/doutorando da USP. Não esqueça de enviar sua opinião pra gente! O que gostou? O que poderíamos melhorar? Envie sua opinião para marcio@segunda.tech. Participantes Marcio Frayze David marcio@segunda.tech https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://twitter.com/marciofrayze Julianno Martins Silva Leonardo Leite https://twitter.com/leonardofl https://www.linkedin.com/in/leonardo-alexandre-ferreira-leite-17194322 Links interessantes: Artigos e palestras de Leonardo Leite: http://ccsl.ime.usp.br/devops/2019-12-04/devops-survey-published.html http://ccsl.ime.usp.br/devops/2020-03-17/times-de-plataforma.html http://ccsl.ime.usp.br/devops/2020-04-16/aula-sistemas-complexos.html http://ccsl.ime.usp.br/devops/2020-08-25/times-de-plataforma-tdc-2020.html http://ccsl.ime.usp.br/devops/2020-08-26/devops-e-arquitetura.html Livros: https://www.goodreads.com/book/show/17255186-the-phoenix-project https://www.goodreads.com/book/show/35747076-accelerate https://www.goodreads.com/book/show/113934.The_Goal https://www.goodreads.com/book/show/44135420-team-topologies https://www.goodreads.com/book/show/1069827.Release_It_ Vídeo: Dave Farley: DevOps x Integração Contínua: https://www.youtube.com/watch?v=MnyvgFDh-kw
Neste episódio discutimos sobre quão importante é estudarmos sobre Código limpo. Contamos algumas histórias que já passamos durante nossas carreiras, problemas recorrentes que encontramos nos projetos e outras coisas que são essenciais para o desenvolvimento de sistemas com alta legibilidade e manutenibilidade. Não esqueça de enviar sua opinião pra gente! O que gostou? O que poderíamos melhorar? Envie sua opinião para marcio@segunda.tech. Participantes Marcio Frayze David marcio@segunda.tech https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://twitter.com/marciofrayze Julianno Martins Silva Links interessantes: Links: https://www.archunit.org http://fundamentalsofsoftwarearchitecture.com/ https://www.goodreads.com/book/show/3735293-clean-code https://www.goodreads.com/book/show/23215733-the-software-craftsman https://rubberduckdebugging.com/ https://martinfowler.com/books/refactoring.html https://www.martinfowler.com/bliki/TwoHardThings.html https://hilton.org.uk/blog/why-naming-things-is-hard https://blog.cleancoder.com/uncle-bob/2011/09/30/Screaming-Architecture.html https://www.vavr.io/
Neste episódio conversamos um poucos sobre Frameworks. Apresentamos as diferenças entre frameworks e bibliotecas, quando recomendamos usar uma biblioteca ou framework e como se proteger para evitar que o uso de frameworks e bibliotecas impactem a arquitetura do seu sistema. Não esqueça de enviar sua opinião pra gente! O que gostou? O que poderíamos melhorar? Enviei sua opinião para marcio@segunda.tech. Participantes Marcio Frayze David marcio@segunda.tech https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://twitter.com/marciofrayze Julianno Martins Silva Links interessantes: Arquitetura Hexagonal (Ports and Adapters) https://netflixtechblog.com/ready-for-changes-with-hexagonal-architecture-b315ec967749 https://www.kennethlange.com/ports-and-adapters/ Arquitetura limpa (Clean Architecture): https://www.goodreads.com/book/show/18043011-clean-architecture Exemplo de implementação do DDD que tem um acoplamento com Hibernate nas classes de domínio. https://github.com/citerus/dddsample-core/ Outros links interessantes: https://www.martinfowler.com/bliki/InversionOfControl.html https://en.wikipedia.org/wiki/Inversion_of_control https://en.wikipedia.org/wiki/There_are_known_knowns https://en.wikipedia.org/wiki/Conway%27s_law
Neste episódio conversamos um poucos sobre Desenvolvimento Guiado Por Testes, incluindo dicas de como incluir esta prática no seu dia a dia. Não esqueça de enviar sua opinião pra gente! O que gostou? O que poderíamos melhorar? Enviei sua opinião para marcio@segunda.tech. Participantes Marcio Frayze David marcio@segunda.tech https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://twitter.com/marciofrayze Julianno Martins Silva Links interessantes: https://medium.com/@marciofrayze/como-consegui-come%C3%A7ar-a-praticar-tdd-df4aa74d6d9a https://medium.com/@kentbeck_7670/test-commit-revert-870bbd756864 http://www.growing-object-oriented-software.com/ https://www.goodreads.com/book/show/387190.Test_Driven_Development https://www.goodreads.com/book/show/3735293-clean-code https://www.goodreads.com/book/show/18043011-clean-architecture https://martinfowler.com/articles/mocksArentStubs.html https://www.youtube.com/watch?v=_NnElPO5BU0 https://www.goodreads.com/book/show/44919.Working_Effectively_with_Legacy_Code https://8thlight.com/blog/georgina-mcfadyen/2016/06/27/inside-out-tdd-vs-outside-in.html
Este podcast nasceu para conversarmos sobre arquitetura de software e boas práticas de programação. Mas quem são as pessoas por trás deste projeto? Neste trailer respondemos esta pergunta e apresentamos um pouco mais sobre a proposta deste podcast.
Arquitetura de software é importante também para o desenvolvimento de Apps? Quais os problemas que podemos ter quando não nos preocupamos com isso? Quais são as particularidades da Arquitetura de Software no que diz respeito ao desenvolvimento de apps? Muita gente tem falado em "gerenciamento de estado". O que seria isso? Essas e muitas outras perguntas são respondidas neste episódio! Desta vez contamos com a presença de dois convidados especialistas em desenvolvimento de aplicativos móveis. Não esqueça de enviar sua opinião pra gente! O que gostou? O que poderíamos melhorar? Enviei sua opinião para marcio@segunda.tech. Participantes Marcio Frayze David marcio@segunda.tech https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://twitter.com/marciofrayze Julianno Martins Silva Marco Antonio Porcho Souza https://www.linkedin.com/in/marco-porcho maporcho@gmail.com Abner Silva de Oliveira https://twitter.com/abneroliveira https://github.com/abner https://www.linkedin.com/in/abneroliveira Links interessantes/referências: Overview de gerenciamento de estados, do próprio time do Flutter: https://flutter.dev/docs/development/data-and-backend/state-mgmt Estudo de caso de migração do nativo para Flutter: https://segunda.tech/posts/2020-07-12-flutter-em-producao Guia oficial do Google de arquitetura para Android: https://developer.android.com/jetpack/guide MVC, MVP, VIPER, RIBLET, Clean Swift, etc: https://medium.com/flawless-app-stories/the-only-viable-ios-architecture-c42f7b4c845d SOLID e Clean Code no Flutterando: https://www.youtube.com/watch?v=C8mpy3pwqQc&feature=youtu.be Android Clean Architecture Boilerplate: https://github.com/bufferapp/android-clean-architecture-boilerplate Projeto de exemplo do Android disponibilizado pela equipe de desenvolvimento do Android sugerindo forma de organizar o projeto mobile em Android: https://github.com/android/architecture-samples Projeto organizando aplicação móvel em Android levando em conta princípios do Clean Code: https://github.com/android10/Android-CleanArchitecture Similar ao repositório acima, mas com o foco em Kotlin: https://github.com/android10/Android-CleanArchitecture-Kotlin Gerador de nomes de arquiteturas pra iOS (hahahaha): https://iosarchitecture.top
Neste episódio continuamos conversamos sobre o que é microsserviços e discutimos se é hora ou não de adotar esta técnica. Não esqueça de enviar sua opinião pra gente! O que gostou? O que poderíamos melhorar? Enviei sua opinião para marcio@segunda.tech. Participantes Marcio Frayze David https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://twitter.com/marciofrayze Julianno Martins Silva Links: Sobre o nubank: https://blog.nubank.com.br/organizar-times-com-foco-no-cliente/ https://medium.com/building-nubank/microservices-at-nubank-an-overview-2ebcb336c64d https://www.fintechfutures.com/2020/07/brazilian-challenger-nubank-acquires-firm-behind-clojure-and-datomic/ Sobre microsserviços: https://martinfowler.com/articles/microservices.html http://fundamentalsofsoftwarearchitecture.com/ https://www.youtube.com/watch?v=wgdBVIX9ifA https://samnewman.io/talks/principles-of-microservices https://www.goodreads.com/work/quotes/41956437-building-microservices-designing-fine-grained-systems
Neste episódio conversamos sobre o que é microsserviços, suas principais características, vantagens e desvantagens. Não esqueça de enviar sua opinião pra gente! O que gostou? O que poderíamos melhorar? Enviei sua opinião para marcio@segunda.tech. Participantes Marcio Frayze David https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://twitter.com/marciofrayze Julianno Martins Silva Links: https://en.wikipedia.org/wiki/Tanenbaum%E2%80%93Torvalds_debate https://rla4.com/ https://martinfowler.com/articles/microservices.html https://www.youtube.com/watch?v=wgdBVIX9ifA https://samnewman.io/talks/principles-of-microservices https://www.goodreads.com/work/quotes/41956437-building-microservices-designing-fine-grained-systems
Neste episódio conversamos sobre o que é a arquitetura monolítica, suas principais características, vantagens e desvantagens. Não esqueça de enviar sua opinião pra gente! O que gostou? O que poderíamos melhorar? Enviei sua opinião para marcio@segunda.tech. Participantes Marcio Frayze David https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://twitter.com/marciofrayze Daniel Miranda Julianno Martins Silva Links: http://fundamentalsofsoftwarearchitecture.com/ https://basecamp.com/ https://rubyonrails.org/
Neste episódio conversamos sobre o que é arquitetura de software, como ela se relaciona com tecnologia e decisões de negócio. Não esqueça de enviar sua opinião pra gente! O que gostou? O que poderíamos melhorar? Enviei sua opinião para marcio@segunda.tech. Participantes Marcio Frayze David https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://twitter.com/marciofrayze Daniel Miranda Julianno Martins Silva Links: http://fundamentalsofsoftwarearchitecture.com http://evolutionaryarchitecture.com https://martinfowler.com/ieeeSoftware/whoNeedsArchitect.pdf http://www.leansoftwarearchitecture.com/ https://dddcommunity.org/ https://www.thoughtworks.com/books/building-evolutionary-architectures