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
32
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
470
Jardineros, artesanos o ingenieros... pero no juglares
modesto
0
180
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
334
57k
YesSQL, Process and Tooling at Scale
rocio
167
14k
Designing with Data
zakiwarfel
98
5.1k
Building an army of robots
kneath
302
42k
Atom: Resistance is Futile
akmur
261
25k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
39
9.2k
Learning to Love Humans: Emotional Interface Design
aarron
271
40k
Code Review Best Practice
trishagee
62
16k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
For a Future-Friendly Web
brad_frost
174
9.3k
Building Flexible Design Systems
yeseniaperezcruz
325
38k
Build The Right Thing And Hit Your Dates
maggiecrowley
30
2.3k
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!