Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Desarrollos accidentalmente complejos
Search
Modesto San Juan
April 26, 2023
0
33
Desarrollos accidentalmente complejos
Modesto San Juan
April 26, 2023
Tweet
Share
More Decks by Modesto San Juan
See All by Modesto San Juan
Introducción a Event Modeling
modesto
2
510
Jardineros, artesanos o ingenieros... pero no juglares
modesto
0
230
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
32
5.9k
Facilitating Awesome Meetings
lara
54
6.4k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Being A Developer After 40
akosma
90
590k
Why Our Code Smells
bkeepers
PRO
337
57k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.3k
How STYLIGHT went responsive
nonsquared
100
5.6k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
Practical Orchestrator
shlominoach
188
11k
The Invisible Side of Design
smashingmag
299
51k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
137
34k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.6k
Transcript
Hola! Modesto San Juan @msanjuan
https://www.reddit.com/r/DnD/comments/fi2gs8/ocart_all_the_pcs_my_clients_ever_played_in_one/
Hablemos de complejidad
None
¿Qué es la complejidad?
Complejidad 1.f Cualidad de complejo. Complejo, ja 1. adj. Que
se compone de elementos diversos. 2. adj. Complicado (|| enmarañado, difícil). 6 Rae
Complejidad es la cualidad de lo que está compuesto de
diversos elementos interrelacionados. [...] tiende a ser utilizada para caracterizar un conjunto intrincado y difícil de comprender … 7 Wikipedia
Inherente vs Accidental
Problema vs Solución Inherente vs Accidental
Sea como que sea... • Se alimenta de nuestras decisiones
• Tiende a crecer • Es inevitable • Es imposible erradicarla • Se detecta mejor desde la distancia
Nuevo proyecto... https://www.pexels.com/photo/green-grass-388415/
https://www.wallpaperflare.com/monsters-university-disney-pixar-cartoon-movie-wallpaper-mpyby
Poco después... https://www.pexels.com/photo/white-smoke-coming-out-from-a-building-3634730/
¿La solución? https://spring.io/microservices
Conocimiento Decisiones Tiempo
Decidimos... https://xkcd.com/2347/ • Infraestructura • Lenguajes • Frameworks • Tooling
• Despliegues • Persistencia • Mensajería • Descubrimiento de servicios • ...
No todo es nuestro... https://xkcd.com/2347/ • Herramientas externas • Librerías
• Productos de terceros • Servicios de terceros
• Infraestructura • Soporte • Despliegues • Configuración • Contratación
• Estructura de la empresa • … • ¡Y el código! No es sólo cuestión de código
https://medium.com/nick-tune-tech-strategy-blog/turning-domain-discovery-into-product-and-organizational-improvements-with-a-ddd-exemplar-9e759c365a9e El contexto importa
https://medium.com/wardleymaps/finding-a-path-cdb1249078c0 El contexto importa
https://medium.com/wardleymaps/finding-a-path-cdb1249078c0 El contexto importa
Ejemplo: stream de mensajes https://aws.amazon.com/blogs/big-data/best-practices-for-running-apache-kafka-on-aws/
Ejemplo: de Rabbit a Postgres https://www.prequel.co/blog/sql-maxis-why-we-ditched-rabbitmq-and-replaced-it-with-a-postgres-queue
CQRS https://github.com/fuinorg/ddd-cqrs-4-java-example
Sin CQRS http://codebetter.com/gregyoung/2010/02/16/cqrs-task-based-uis-event-sourcing-agh/
Con CQRS http://codebetter.com/gregyoung/2010/02/16/cqrs-task-based-uis-event-sourcing-agh/
Outbox pattern https://dzone.com/articles/implementing-the-outbox-pattern
Outbox pattern https://dzone.com/articles/implementing-the-outbox-pattern
Bola extra! Gracias Fermín!
https://twitter.com/mintxelas
https://www.wallpaperflare.com/monster-fighting-evil-fantasy-wallpaper-mpqgp
None
¿Qué podemos hacer? • Atiende a los requisitos • Ten
en cuenta los casos de error • Cuidado con las modas • La complejidad, mejor aislada • Preocúpate del lenguaje (ubicuo)
¿Qué podemos hacer? • El arte del patadón pa’lante
¿Qué podemos hacer? • El arte del patadón pa’lante •
Posponer decisiones
¿Qué podemos hacer? • El arte del patadón pa’lante •
Posponer decisiones • Defer Commitment (Lean)
¿Qué podemos hacer? • El arte del patadón pa’lante •
Posponer decisiones • Defer Commitment (Lean) https://twitter.com/eferro
38 Gracias!