SlideShare uma empresa Scribd logo
1 de 49
Baixar para ler offline
Luis Artola (@artolamola)
Eduardo Ferro (@eferro)
libro de recetas
El Arte del Patadón pa’lante
¿A qué nos referimos?
Posponer todas las decisiones hasta
el último momento responsable(™)
Mantener opciones abiertas lo máximo
posible
So much product development time is
spent undoing complexity that should
have been left out in the first place. -
@jasonfried
Luis Artola
(@artolamola)
¿Quienes somos?
Edu Ferro
(@eferro)
“Vagos” profesionales
KEEP
CALM
AND
POSTPONE
● Problemas/trabajo >> Capacidad
● Problema != Solución
@artolamola @eferro
Contexto
@artolamola @eferro
Problemas
Tiempo (semanas)
P1S1
P2S1
P3S1
Forma trabajo tradicional
● Solución simple -> Atacar+Problemas
● Evita desperdicio (Lean)
@artolamola @eferro
Contexto
@artolamola @eferro
Problemas
Tiempo (semanas)
P1S1 P1S2 P1S3
P2S1 P2S2
P3S1 P3S2 P3S3
Forma trabajo posponiendo
KEEP
CALM
AND
POSTPONE @artolamola @eferro
Ej: Customer Repository
Time to Market / Opportunity cost
Sistema TV / Teléfono / Internet
Persistencia gestión clientes
Núm clientes y crecimiento bajo
Concurrencia baja
@artolamola @eferro
Ej: Customer Repository
Time to Market / Opportunity cost
Solución de referencia:
BD Relacional + ORM + Framework
@artolamola @eferro
Ej: Customer Repository
Time to Market / Opportunity cost
@artolamola @eferro
Ej: Customer Repository
Time to Market / Opportunity cost
1 Serialización a fichero
@artolamola @eferro
2 Python text indexer
3 Python text indexer + Redis
4 MySQL Full text search + Redis
Ej: Customer Repository
Time to Market / Opportunity cost
Siguientes pasos:
@artolamola @eferro
- ¿PostgreSQL?
- ¿Mongo?
- a saber...
KEEP
CALM
AND
POSTPONE @artolamola @eferro
Ej: Sistema de Colas Cloud
Diseño evolutivo / Reabrir opciones
Sistema colas para aplicación
Cloud
Uso desde varios servicios
Desplegado en AWS
@artolamola @eferro
Ej: Sistema de Colas Cloud
Diseño evolutivo / Reabrir opciones
1 Uso API aws SQS en cada servicio
@artolamola @eferro
2 Encapsulación reusable (simple)
Ej: Sistema de Colas Cloud
Diseño evolutivo / Reabrir opciones
@artolamola @eferro
Ej: Sistema de Colas Cloud
Diseño evolutivo / Reabrir opciones
3 Encapsulación MultiQueue (envío
con prioridades)
@artolamola @eferro
Ej: Sistema de Colas Cloud
Diseño evolutivo / Reabrir opciones
@artolamola @eferro
Ej: Sistema de Colas Cloud
Diseño evolutivo / Reabrir opciones
@artolamola @eferro
Siguientes pasos:
- ¿RabbitMQ? ¿Redis?
- ¿Compresión datos? ¿Formatos?
- a saber...
KEEP
CALM
AND
POSTPONE @artolamola @eferro
Borrado Temporales S3
Eliminación complejidad / Reabrir opciones
@eferro
Generación videos require ficheros
temporales (video master,
metainfo). Etapa final borraba esos
ficheros de S3.
Borrado Temporales S3
Eliminación complejidad / Reabrir opciones
@eferro
Solución de referencia:
Servicio especializado borrado
Borrado Temporales S3
Eliminación complejidad / Reabrir opciones
@eferro
1 Servicio para borrado (high scale)
2 Eliminación servicio de borrado
3 Medición coste almacenamiento
Borrado Temporales S3
Eliminación complejidad / Reabrir opciones
@eferro
Siguientes pasos:
- ¿borrado periódico? ¿AWS S3 TTL?
- ¿ninguno?
- a saber...
KEEP
CALM
AND
POSTPONE @artolamola @eferro
Ej: Sistema de Usuarios TheMotion
Evitar complejidad / Exploración
Gestión de usuarios complicada
B2B. Publicidad. Partners,
Advertisers, Agencias, Brands… etc.
Startup en modo exploración.
@artolamola @eferro
Ej: Sistema de Usuarios TheMotion
Evitar complejidad / Exploración
@artolamola @eferro
Solución de referencia:
Sistema usuarios / roles /
organizaciones / login
Ej: Sistema de Usuarios TheMotion
Evitar complejidad / Exploración
@artolamola @eferro
1 Sin usuarios / API KEY (api)
2 Usuarios creados manual (api)
3 Usuarios suplantan otros (api)
4 Registro con activación manual
(Web UI)
Ej: Sistema de Usuarios TheMotion
Evitar complejidad / Exploración
@artolamola @eferro
Siguientes pasos:
- ¿activación y datos de pago?
- ¿uso servicio externo?
- a saber...
KEEP
CALM
AND
POSTPONE @artolamola @eferro
Ej: TheMotion infrastructure CLI
Diseño evolutivo / Desconocimiento AWS / Time to Market
Sin experiencia con AWS.
Herramienta para:
- Desplegar servicios
- Ver estado cluster / colas / DBs
- Ver configuraciones y log
@artolamola @eferro
Ej: TheMotion infrastructure CLI
Diseño evolutivo / Desconocimiento AWS / Time to Market
@artolamola @eferro
Solución de referencia:
Selección de herramienta para uso
directo (ansible, terraform, chef)
Ej: TheMotion infrastructure CLI
Diseño evolutivo / Desconocimiento AWS / Time to Market
@artolamola @eferro
1 App CLI, ssh, Bash + aws cli
2 Bash + aws cli + ansible
3 Bash + aws cli + cloudformation
4 Python + cloudformation + api
Ej: TheMotion infrastructure CLI
Diseño evolutivo / Desconocimiento AWS / Time to Market
@artolamola @eferro
Siguientes pasos:
- Nuevos comandos
- Nuevas tecnologías
- a saber...
KEEP
CALM
AND
POSTPONE @artolamola @eferro
Fails
@artolamola @eferro
Fails
@artolamola @eferro
DynamoDB en vez de PostgreSQL
Microservicios Prematuros
Multi thread Prematuro
KEEP
CALM
AND
POSTPONE @artolamola @eferro
Conclusiones
@artolamola @eferro
Soluciones sencillas
Requiere madurez
Requiere hablar de problemas
Minimiza hablar de soluciones
Mantiene opciones abiertas
Conclusiones
@artolamola @eferro
Clave para trabajar así:
● Arquitectura evolutiva
● Calidad técnica
● Parallel change / Branch by abstraction
/ feature toggling
Conclusiones
@artolamola @eferro
Agile:
● No es velocidad (valor rápido)
● Valor antes
● Adaptabilidad
● Gestión de riesgo
Q&A - Feedback
@artolamola @eferro
¿Te has sentido identificado?
¿Te hemos dado ideas?
Referencias
@artolamola @eferro
● CAS2016 El arte del patadon pa’lante
● CAS2016 Problemas vs Soluciones. Carlos Blé
● Real options
● Embracing Uncertainty
● The art of destroying software
● Lean Software Development
Muchas Gracias
@artolamola @eferro
Q&A - Feedback
@artolamola @eferro
Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)
Slide Design: Xabi Larrakoetxea (@slok69)
@artolamola @eferro

Mais conteúdo relacionado

Semelhante a SCPNA2017 El arte del patadon pa'lante / libro de recetas

Como hacer que tus aplicaciones saquen mejor provecho a los procesadores disp...
Como hacer que tus aplicaciones saquen mejor provecho a los procesadores disp...Como hacer que tus aplicaciones saquen mejor provecho a los procesadores disp...
Como hacer que tus aplicaciones saquen mejor provecho a los procesadores disp...
Andrés Iturralde
 
Estado del Desarrollo de PostgreSQL-9.0
Estado del Desarrollo de PostgreSQL-9.0Estado del Desarrollo de PostgreSQL-9.0
Estado del Desarrollo de PostgreSQL-9.0
Marcos Ortiz Valmaseda
 
clase-Unidad1 y Unidad2-Pseudo-Print-Scanf-IF (1).pptx
clase-Unidad1 y Unidad2-Pseudo-Print-Scanf-IF (1).pptxclase-Unidad1 y Unidad2-Pseudo-Print-Scanf-IF (1).pptx
clase-Unidad1 y Unidad2-Pseudo-Print-Scanf-IF (1).pptx
JulianSimonetta
 
Python Tutorial Presentation
Python Tutorial PresentationPython Tutorial Presentation
Python Tutorial Presentation
guestccc92ad
 

Semelhante a SCPNA2017 El arte del patadon pa'lante / libro de recetas (20)

Clase2 (consola linux)
Clase2 (consola linux)Clase2 (consola linux)
Clase2 (consola linux)
 
Codemotion 2013 - Quiero tiempo real y lo quiero para ayer
Codemotion 2013 - Quiero tiempo real y lo quiero para ayerCodemotion 2013 - Quiero tiempo real y lo quiero para ayer
Codemotion 2013 - Quiero tiempo real y lo quiero para ayer
 
Como hacer que tus aplicaciones saquen mejor provecho a los procesadores disp...
Como hacer que tus aplicaciones saquen mejor provecho a los procesadores disp...Como hacer que tus aplicaciones saquen mejor provecho a los procesadores disp...
Como hacer que tus aplicaciones saquen mejor provecho a los procesadores disp...
 
Trabajando en Código Abierto
Trabajando en Código AbiertoTrabajando en Código Abierto
Trabajando en Código Abierto
 
Kimberly (2) mapau trabajo
Kimberly (2) mapau trabajoKimberly (2) mapau trabajo
Kimberly (2) mapau trabajo
 
Top Bug
Top BugTop Bug
Top Bug
 
Pipelining
PipeliningPipelining
Pipelining
 
RESUME SOBRE LA TERMINAL DE UBUNTU
RESUME SOBRE LA TERMINAL DE UBUNTU RESUME SOBRE LA TERMINAL DE UBUNTU
RESUME SOBRE LA TERMINAL DE UBUNTU
 
Clase7 comandos de linux
Clase7 comandos de linuxClase7 comandos de linux
Clase7 comandos de linux
 
Estado del Desarrollo de PostgreSQL-9.0
Estado del Desarrollo de PostgreSQL-9.0Estado del Desarrollo de PostgreSQL-9.0
Estado del Desarrollo de PostgreSQL-9.0
 
clase-Unidad1 y Unidad2-Pseudo-Print-Scanf-IF (1).pptx
clase-Unidad1 y Unidad2-Pseudo-Print-Scanf-IF (1).pptxclase-Unidad1 y Unidad2-Pseudo-Print-Scanf-IF (1).pptx
clase-Unidad1 y Unidad2-Pseudo-Print-Scanf-IF (1).pptx
 
Python Tutorial Presentation
Python Tutorial PresentationPython Tutorial Presentation
Python Tutorial Presentation
 
Actividad3 4 david a. condori tantani
Actividad3 4  david a. condori tantaniActividad3 4  david a. condori tantani
Actividad3 4 david a. condori tantani
 
Comandos de ubuntu
Comandos de ubuntuComandos de ubuntu
Comandos de ubuntu
 
REPLs
REPLsREPLs
REPLs
 
Analisis de Usabilidad GOMS: Goals, Objectives, Method, Selection of rules.
Analisis de Usabilidad GOMS: Goals, Objectives, Method, Selection of rules.Analisis de Usabilidad GOMS: Goals, Objectives, Method, Selection of rules.
Analisis de Usabilidad GOMS: Goals, Objectives, Method, Selection of rules.
 
Procesos linux
Procesos linuxProcesos linux
Procesos linux
 
Curso GNU/Linux
Curso GNU/LinuxCurso GNU/Linux
Curso GNU/Linux
 
DotNet 2019 | Pablo Santos Luaces - Como migrar un producto multiplataforma a...
DotNet 2019 | Pablo Santos Luaces - Como migrar un producto multiplataforma a...DotNet 2019 | Pablo Santos Luaces - Como migrar un producto multiplataforma a...
DotNet 2019 | Pablo Santos Luaces - Como migrar un producto multiplataforma a...
 
Tres historias
Tres historiasTres historias
Tres historias
 

Mais de Eduardo Ferro Aldama

Mais de Eduardo Ferro Aldama (17)

Product discovery engineering point of view
Product discovery   engineering point of viewProduct discovery   engineering point of view
Product discovery engineering point of view
 
Scalability, basics, application to systems, teams and processes
Scalability, basics, application to systems, teams and processesScalability, basics, application to systems, teams and processes
Scalability, basics, application to systems, teams and processes
 
Agile, en que te hemos convertido v2
Agile, en que te hemos convertido v2Agile, en que te hemos convertido v2
Agile, en que te hemos convertido v2
 
Entrega continua tomandonos la agilidad en serio
Entrega continua   tomandonos la agilidad en serioEntrega continua   tomandonos la agilidad en serio
Entrega continua tomandonos la agilidad en serio
 
Madrid devops forward devops is not what you think
Madrid devops forward devops is not what you thinkMadrid devops forward devops is not what you think
Madrid devops forward devops is not what you think
 
Bilbostack19 devops is not what you think
Bilbostack19 devops is not what you thinkBilbostack19 devops is not what you think
Bilbostack19 devops is not what you think
 
Continuous delivery practices and real experiences
Continuous delivery   practices and real experiencesContinuous delivery   practices and real experiences
Continuous delivery practices and real experiences
 
Cas18 sobreviviendo en producción / Gestión de Incidencias y aprendizajes
Cas18 sobreviviendo en producción / Gestión de Incidencias y aprendizajesCas18 sobreviviendo en producción / Gestión de Incidencias y aprendizajes
Cas18 sobreviviendo en producción / Gestión de Incidencias y aprendizajes
 
CODE ContinuousDelivery. germinando una cultura agile moderna
CODE  ContinuousDelivery. germinando una cultura agile modernaCODE  ContinuousDelivery. germinando una cultura agile moderna
CODE ContinuousDelivery. germinando una cultura agile moderna
 
CAS2017 Agilidad. Hacia la entrega continua ¿Qué te lo impide?
CAS2017 Agilidad. Hacia la entrega continua ¿Qué te lo impide?CAS2017 Agilidad. Hacia la entrega continua ¿Qué te lo impide?
CAS2017 Agilidad. Hacia la entrega continua ¿Qué te lo impide?
 
Golang design4concurrency
Golang design4concurrencyGolang design4concurrency
Golang design4concurrency
 
Python Herencia vs Composición (Luke soy tu padre)
Python Herencia vs Composición (Luke soy tu padre)Python Herencia vs Composición (Luke soy tu padre)
Python Herencia vs Composición (Luke soy tu padre)
 
Tdd bdd-practico-dominio-rico
Tdd bdd-practico-dominio-ricoTdd bdd-practico-dominio-rico
Tdd bdd-practico-dominio-rico
 
Python SOLID
Python SOLIDPython SOLID
Python SOLID
 
Mejor framework-pythonoo-solid
Mejor framework-pythonoo-solidMejor framework-pythonoo-solid
Mejor framework-pythonoo-solid
 
Python Madrid empaquetamiento deb aplicaciones Python
Python Madrid empaquetamiento deb aplicaciones PythonPython Madrid empaquetamiento deb aplicaciones Python
Python Madrid empaquetamiento deb aplicaciones Python
 
Madrid devops empaquetamientodeb_i
Madrid devops empaquetamientodeb_iMadrid devops empaquetamientodeb_i
Madrid devops empaquetamientodeb_i
 

Último

MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdfMODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
vladimirpaucarmontes
 
sigof.sisfoh.gob.pe_consulta_hogares_ULE_busqueda_print.php (1).pptx
sigof.sisfoh.gob.pe_consulta_hogares_ULE_busqueda_print.php (1).pptxsigof.sisfoh.gob.pe_consulta_hogares_ULE_busqueda_print.php (1).pptx
sigof.sisfoh.gob.pe_consulta_hogares_ULE_busqueda_print.php (1).pptx
sutti0808
 
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdfLA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
bcondort
 
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNATINSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
evercoyla
 
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
Ricardo705519
 

Último (20)

INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICAINTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
 
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdfMODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
 
Sesion 6 _ Curso Integrador II_TSZVQJ.pdf
Sesion 6 _ Curso Integrador II_TSZVQJ.pdfSesion 6 _ Curso Integrador II_TSZVQJ.pdf
Sesion 6 _ Curso Integrador II_TSZVQJ.pdf
 
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
 
TIPOS DE SOPORTES - CLASIFICACION IG.pdf
TIPOS DE SOPORTES - CLASIFICACION IG.pdfTIPOS DE SOPORTES - CLASIFICACION IG.pdf
TIPOS DE SOPORTES - CLASIFICACION IG.pdf
 
sigof.sisfoh.gob.pe_consulta_hogares_ULE_busqueda_print.php (1).pptx
sigof.sisfoh.gob.pe_consulta_hogares_ULE_busqueda_print.php (1).pptxsigof.sisfoh.gob.pe_consulta_hogares_ULE_busqueda_print.php (1).pptx
sigof.sisfoh.gob.pe_consulta_hogares_ULE_busqueda_print.php (1).pptx
 
clasificasion de vias arteriales , vias locales
clasificasion de vias arteriales , vias localesclasificasion de vias arteriales , vias locales
clasificasion de vias arteriales , vias locales
 
programacion orientada a objetos poo.pptx
programacion orientada a objetos poo.pptxprogramacion orientada a objetos poo.pptx
programacion orientada a objetos poo.pptx
 
Ejemplos de cadenas de Markov - Ejercicios
Ejemplos de cadenas de Markov - EjerciciosEjemplos de cadenas de Markov - Ejercicios
Ejemplos de cadenas de Markov - Ejercicios
 
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdfLA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
 
Maquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdfMaquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdf
 
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
 
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
 
libro de ingeniería de petróleos y operaciones
libro de ingeniería de petróleos y operacioneslibro de ingeniería de petróleos y operaciones
libro de ingeniería de petróleos y operaciones
 
Herramientas de la productividad - Revit
Herramientas de la productividad - RevitHerramientas de la productividad - Revit
Herramientas de la productividad - Revit
 
Mapas y cartas topográficas y de suelos.pptx
Mapas y cartas topográficas y de suelos.pptxMapas y cartas topográficas y de suelos.pptx
Mapas y cartas topográficas y de suelos.pptx
 
Aportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der RoheAportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
 
Practica PLC MIcrologix 1400 con pantalla HMI y servomotor
Practica PLC MIcrologix 1400 con pantalla HMI y servomotorPractica PLC MIcrologix 1400 con pantalla HMI y servomotor
Practica PLC MIcrologix 1400 con pantalla HMI y servomotor
 
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNATINSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
 
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
 

SCPNA2017 El arte del patadon pa'lante / libro de recetas