agile Mapa conceptual del code review ¿Buscando introducir o mejorar un proceso de revisión de código? Este artículo puede ayudarte a observar la problemática desde diferentes dimensiones.
best practices CFP: el primer paso para presentar en una conferencia Nahue nos cuenta qué es un CFP, qué debe tener una propuesta y cómo abordar este proceso.
best practices Dealing with emergencies: some lessons learned What to do and, above all, what not to do when a system crashes? Some ideas to get through this experience as well as possible and learn from the process.
npm NPM Audit: vulnerabilidades bajo la lupa Analicemos un ejemplo simple de npm audit para ver qué hacer cuando tenemos vulnerabilidades en nuestro proyecto. ¿entrar en pánico? ¡no siempre!
best practices Los defaults malvados Trabajar en un proyecto con mucho código heredado siempre es una fuente de grandes aprendizajes. En esta ocasión les presento a los "defaults malvados", como a mí me gustan llamarlos. Son partes de código que pueden hacer mucho daño en una aplicación. Veamos cómo…
best practices IAR: a mnemonic for a clean controller design ¿How do you design HTTP controllers? ¿How do you make sure responsibilities are correctly assigned? ¿How do you reduce maintenance issues? I'll introduce you to three letters that might help you remember the essentials of every controller…
best practices The principles and habits of healthy software Throughout the last few years of my career, two words have been present almost every day: principles and habits. I believe both can help us be better people and drive positive change around us – in general, but in software in particular.
best practices Obvious Programming A technique to know how much refactoring you need on a piece of code. Refactor your code until it looks obvious to you and your team
refactoring Featured Refactoring step by step: extract validation logic from a method How to keep your code with validations clean? here’s a step-by-step example that improves an existing piece of code only using automatic refactorings!
best practices When not to pair Sometimes, pairing is not going to add the extra value we're looking for... which are those moments? let me go over some scenarios where it's probably better to work alone.
refactoring Featured Using Acorn to implement a refactoring in Javascript (Part 1: hacking it) I often ask myself: if we don't have a refactoring in this language, how much would it take to implement it? I'm presenting here an experience writing a simple source code transformation for Javascript.
best practices Lidiando con emergencias: algunas lecciones aprendidas ¿Qué hacer y, sobre todo, qué no hacer cuando un sistema se cae? Algunas ideas para atravesar lo mejor posible esta experiencia y obtener aprendizajes en el proceso.
best practices Featured Leaving a codebase I'm leaving a codebase where I contributed for 6 years. I've made more than 2000 commits and I've added, modified, and removed a lot of lines of code. Here are some things I have in mind as part of my offboarding process.
code quality Contando colaboraciones en Cuis Smalltalk ¿Qué tan difícil resultaría hacer un programa que cuente colaboraciones de un método? En Smalltalk, no tan difícil.
agile Sharing Knowledge in an improvised way I recently facilitated a Knowledge Sharing session in my team without planning it too much, and I’ll walk you through some interesting takeaways of that activity.
code quality Contar colaboraciones: una métrica que importa mucho Contar líneas de código es una métrica cuestionable. Veamos cuáles son sus ventajas y desventajas, y cómo podríamos tener una métrica superadora contando envíos de mensajes.
conference CFP: the first step to speak in a programming conference CFP (Call for Papers or Call for Presentations) is a step that several conferences have. It is often visualized as a difficult step, and sometimes we are afraid of applying (for several reasons) and potentially end up with very good ideas unheard.
maintenance Dealing with upgrades A very important part of software maintenance is to keep languages, libraries, and framework versions up to date. I've experienced this many times and I've collected some tips or patterns that helped me to deal with future cases.
best practices Las 12 propiedades deseables de los tests según Kent Beck Un análisis sobre el artículo "Test Desiderata" escrito por Kent Beck, en donde se listan 12 propiedades deseables de los tests.
refactoring El arte de las pequeñas mejoras Refactorizar es lindo. Pero la realidad nos presenta restricciones (tiempo, alcance, tecnológicas, políticas). Ahí es donde la creatividad toma importancia y debemos lograr un alto impacto en poco tiempo, mientras hacemos crecer nuestro software.
tdd El primer test Quizás la mayor dificultad al trabajar con TDD es empezar. ¿Cómo ir más allá de la hoja en blanco? TDD nos invita a aprender muy rápido, a sabiendas que nos vamos a equivocar mucho. ¡a prepararse, pues! ¿Qué características debería tener ese difícil primer test?
best practices Clean Code Cleanups I’ll walk you through different stages of code cleanup, and things to have in mind to make it in an efficient way, based on my experience.
experience 8 years, 8 challenges I'm very happy to complete my 8th year at 10Pines, and I would like to share, for each year I've worked here, the biggest challenge I had and what I think I could have done better. In other words, the most important lessons learned each year.
tdd 6 tips para una exitosa sesión de TDD TDD es ~95% práctica. La teoría seguramente la conozcas o la hayas escuchado, el ciclo de Red-Green-Refactor te sea familiar y sepas qué es lo que se hace en cada paso. La práctica es lo difícil... esta es una simple lista de cosas que funcionaron para mí, y que quizás funcionen para vos.
opinion Reifying problems in our software: a short story Yet another lesson from a large project with legacy code. Did you happen to see “known issues” in software that you have worked on? And how many times have you seen them “solved” with “quick fixes” or “workarounds”?