Una técnica para mantener el código escalable: Code smells.
Se incluyen varios ejemplos usando ruby, como se ve bien, y como se ve mejor.
También como pueden tomar ventajas de los linters y CI servers para alertar desviaciones en tiempo real
Una técnica para mantener el código escalable: Code smells.
Se incluyen varios ejemplos usando ruby, como se ve bien, y como se ve mejor.
También como pueden tomar ventajas de los linters y CI servers para alertar desviaciones en tiempo real
Slides utilizados durante la charla
"TDD desde las trincheras: teoría y lecciones aprendidas"
https://www.meetup.com/es-ES/Madrid-Scrum-User-Group/events/258185830/
Grabación de la charla: https://youtu.be/_oX7vvSQxI8
Slides de la charla del open space de wecode 2019.
Cuento qué reglas seguimos en @plasticscm para crear el código más simple posible. Cosas como que no usamos herencia, ni sobrecarga de métodos y que nuestro mantra es "pasa parámetros y todo irá bien"
Presentation in Spanish given at DeSymfony Day 2014 in Barcelona about different approaches of testing with my teammate Jordi Llonch.
We created a GitHub repository comparing the main libraries available in PHP: https://github.com/Akamon/to-mock-or-not-to-mock
Conjunto de principios, no son reglas, aplicados al diseño orientado a objetos. SOLID no es un framework, ni una tecnología, tampoco una librería y mucho menos una metodología. Su propósito es generar código fácil de entender y mantener. Representa cinco principios básicos de la programación orientada a objetos y el diseño.
Meetup TestingUy 2018 - Selenium en la actualidadTestingUy
Expositor: Joaquín Moreira
Debido al reciente cambio en el formato de las extensiones del navegador Mozilla Firefox (versión 55), las extensiones basadas en formato XPI no son soportadas y en consecuencia, la extensión de Selenium IDE. Sin embargo y más alla de esto, Selenium sigue siendo una potente herramienta. En esta charla veremos una introducción a Selenium, hablaremos de la SeleniumConf, se discutirá sobre lo que se pierde con este cambio y se evaluarán alternativas a Selenium IDE. Cerraremos con una demo de una herramienta alternativa y gratis a Selenium IDE.
Debido al reciente cambio en el formato de las extensiones del navegador Mozilla Firefox (versión 55), las extensiones basadas en formato XPI no son soportadas y en consecuencia, la extensión de Selenium IDE. Sin embargo y más allá de esto, Selenium sigue siendo una potente herramienta. En esta charla veremos una introducción a Selenium, hablaremos de la SeleniumConf, se discutirá sobre lo que se pierde con este cambio y se evaluarán alternativas a Selenium IDE. Cerraremos con una demo de una herramienta alternativa y gratis a Selenium IDE.
Presentación generada en base a experiencias en proyectos y cursos llevados adelante por el Centro de Ensayos de Software (www.ces.com.uy).
En esta presentación veremos los conceptos principales que aporta la programación funcional en Swift, Hacemos la distinción de FP en Swift y FP puro en Elixir y abordamos el tema de que porqué el lenguaje Swift es un lenguaje de Tipos. Por último hablaremos sobre cómo ser mejores desarrolladores.
[ES] webcat 2014-03 Demystifying Development TechniquesEduardo Turiño
Charla del webcat del 5 de marzo de 2014.
Recorrido por diferentes técnicas de desarrollo, eliminando dolores en cada paso, hasta llegar a BDD y completar aquello donde BDD nos falla.
Visión utilitaria de técnicas y metodologías.
¡Muerte a los puristas! :)
Introducción a la optimización de software, consejos, metodología y tools.
Ejemplo y documentación en:
https://drive.google.com/open?id=13egVpX2uOSX7-BWyCvFrpZul6EOEM6_U
Slides utilizados durante la charla
"TDD desde las trincheras: teoría y lecciones aprendidas"
https://www.meetup.com/es-ES/Madrid-Scrum-User-Group/events/258185830/
Grabación de la charla: https://youtu.be/_oX7vvSQxI8
Slides de la charla del open space de wecode 2019.
Cuento qué reglas seguimos en @plasticscm para crear el código más simple posible. Cosas como que no usamos herencia, ni sobrecarga de métodos y que nuestro mantra es "pasa parámetros y todo irá bien"
Presentation in Spanish given at DeSymfony Day 2014 in Barcelona about different approaches of testing with my teammate Jordi Llonch.
We created a GitHub repository comparing the main libraries available in PHP: https://github.com/Akamon/to-mock-or-not-to-mock
Conjunto de principios, no son reglas, aplicados al diseño orientado a objetos. SOLID no es un framework, ni una tecnología, tampoco una librería y mucho menos una metodología. Su propósito es generar código fácil de entender y mantener. Representa cinco principios básicos de la programación orientada a objetos y el diseño.
Meetup TestingUy 2018 - Selenium en la actualidadTestingUy
Expositor: Joaquín Moreira
Debido al reciente cambio en el formato de las extensiones del navegador Mozilla Firefox (versión 55), las extensiones basadas en formato XPI no son soportadas y en consecuencia, la extensión de Selenium IDE. Sin embargo y más alla de esto, Selenium sigue siendo una potente herramienta. En esta charla veremos una introducción a Selenium, hablaremos de la SeleniumConf, se discutirá sobre lo que se pierde con este cambio y se evaluarán alternativas a Selenium IDE. Cerraremos con una demo de una herramienta alternativa y gratis a Selenium IDE.
Debido al reciente cambio en el formato de las extensiones del navegador Mozilla Firefox (versión 55), las extensiones basadas en formato XPI no son soportadas y en consecuencia, la extensión de Selenium IDE. Sin embargo y más allá de esto, Selenium sigue siendo una potente herramienta. En esta charla veremos una introducción a Selenium, hablaremos de la SeleniumConf, se discutirá sobre lo que se pierde con este cambio y se evaluarán alternativas a Selenium IDE. Cerraremos con una demo de una herramienta alternativa y gratis a Selenium IDE.
Presentación generada en base a experiencias en proyectos y cursos llevados adelante por el Centro de Ensayos de Software (www.ces.com.uy).
En esta presentación veremos los conceptos principales que aporta la programación funcional en Swift, Hacemos la distinción de FP en Swift y FP puro en Elixir y abordamos el tema de que porqué el lenguaje Swift es un lenguaje de Tipos. Por último hablaremos sobre cómo ser mejores desarrolladores.
[ES] webcat 2014-03 Demystifying Development TechniquesEduardo Turiño
Charla del webcat del 5 de marzo de 2014.
Recorrido por diferentes técnicas de desarrollo, eliminando dolores en cada paso, hasta llegar a BDD y completar aquello donde BDD nos falla.
Visión utilitaria de técnicas y metodologías.
¡Muerte a los puristas! :)
Introducción a la optimización de software, consejos, metodología y tools.
Ejemplo y documentación en:
https://drive.google.com/open?id=13egVpX2uOSX7-BWyCvFrpZul6EOEM6_U
Una señal analógica es una señal generada por algún tipo de fenómeno electromagnético; que es representable por una función matemática continua en la que es variable su amplitud y periodo en función del tiempo.
1º Caso Practico Lubricacion Rodamiento Motor 10CVCarlosAroeira1
Caso pratico análise analise de vibrações em rolamento de HVAC para resolver problema de lubrificação apresentado durante a 1ª reuniao do Vibration Institute em Lisboa em 24 de maio de 2024
2. Legacy Code
• Definición académica:
• Código Viejo
• Con muchos años en
producción
• Mucho mantenimiento y
cambios
• Difícil de mantener
• Pero es EXITOSO
3. Legacy Code
• Si Homero fuera un programa,
¿sería fácil de mantener?
• No es código tan viejo
• ¿Qué hace que sea fácil o
difícil de mantener?
5. ¿Por qué cambia el
software?
• Arreglar un bug
• Añadir un feature
• Mejorar Diseño
• Optimizar
6. ¿Por qué cambia el
software?
• Arreglar un bug
• Añadir un feature
• Mejorar Diseño
• Optimizar
Comportamiento Invariante
7. ¿Por qué cambia el
software?
• Arreglar un bug
• Añadir un feature
• Mejorar Diseño
• Optimizar
Comportamiento Invariante
Comportamiento Invariante
8. Hay que modificar Legacy
Code. ¿Qué Hacer?
• Renunciar
• Hacer el sistema de vuelta
• Pagarle a otro para que lo haga
• Hacerlo nosotros
9. DIY
• Dos formas de trabajar:
• Edit and Pray (Estandar de facto)
• Cover and Modify
10. Cover and Modify
• Legacy Code Change algorithm
1. Identificar Puntos cambios
2. Encontrar puntos de testing
3. Romper las dependencias
4. Escribir Tests
5. Hacer cambios y refactorear