refactoring

Recursos de programación de refactoring
Everyone claims that they are doing products in an agile, user oriented way. And yet, the majority of the products are still not welcomed by customers after being released. There is a huge gap between what we think it means to be user oriented and actually been user oriented. In this talk I will present my personal methodology that I have developed during the last 9 years that helped me to build multiple highly successful products and services. The framework contains of the following pillars: Identify the problem, problem should be: * Real customer problem *Problem that is top priority for the customer Identify the solution: * Is this the simplest solution for the problem? * Is it easily integratable with the current customer infrastructure? * Solves a problem that will exist (and will remain primary problem) by the time it is delivered * Easily pluggable in the existing customer’s infrastructure * Cost of adopting the product should be smaller (ideally: drastically lower) than the benefits that customer will get Execute: * Do not aim to deliver the solution, aim to onboard the customer * It is much simpler to deliver solution for one customer and generalize later than to deliver generic solution that can be used by at least one customer * The only criteria of success is onboarded customer We will show in detail how to build a team that executes in accordance with these principles, just some examples of key fundamental things: * Success of the product is everyone’s jobs * Engineers who are working on the product directly responsible to onboard the customer onto what they are building * Done-done-done is not when code is deployed to the production, it is when customer is using it While these are very common things that all of the managers/PM claiming to be doing there are many hidden traps when leaders are trying to do this, just some of them: * This process is about incremental changes, my product is revolutionary. * We have this amazing tool/technology/solution, let’s find the problem that it can solve for our customers. * I have validated the problem, therefore my solution is also validated. * I put the word “user” in my goal and therefore now it is a user oriented goal. * Different user audience for validating the problem and building the product for. It is very simple to pitch a free product to the students and ask if they will be using it for free, it is a completely different thing to sell the same product for money to a CTO. * Ignoring the last mile of integration. *Sticking to the original plan/scope while user’s problems clearly have changed We will also discuss how to start transitioning an organization into this mode, how to start refactoring the engineering team and whole organization, what should be the concrete first steps, like: * Do a revision of the roadmap: * put a concrete problem next to the feature * Re-evaluate problems * Stack ranked problems (instead of feature) * Refactor incentives for eng team to start onboarding customers (solving problems for the customers) instead of just delivering features. Introduce processes of building deep connections with the customers and collecting/evaluating their problems.
Many times we are told that refactoring is a tool to deal with legacy code. This is usually followed by a “practical” example of refactorings with hideous code that seldom would pass the laziest of code reviews. In this session, we’ll take a deep dive into what a refactor actually is. What tools and methodologies we can leverage to lower technical debt and increase legibility. To tackle unknown code bases; all whilst being productive. Session by Joaquin Azcarate, Backend Developer at Apiumhub
It is time to step your front-end game with using type definitions and stopping from wasting time on manually debugging bugs in the console. Typescript is the way to go. In this talk I will talk about how Typescript gives us advantages in the development process, easy to understand code, refactoring, ease of maintenance, reduce number of unit test cases, casting and much more!
La S de los principios SOLID es el principio más conocido, pero uno de los más complicados de entender. ¡Hoy os contamos cómo sacarle todo el jugo! 🚥 ¡Haz nuestro curso de refactoring! 👉 http://bit.ly/curso-refactor 🔗 Enlaces mencionados ├ Vídeo de la S de SOLID de Codely del 2015 https://www.youtube.com/watch?v=c97P1UmF1cs ├ Post Uncle Bob sobre SRP https://blog.cleancoder.com/uncle-bob/2014/05/08/SingleReponsibilityPrinciple.html ├ Paper de Uncle Bob sobre SRP https://www.cs.utexas.edu/users/downing/papers/SRP-1996.pdf ) └ Paper de Dijkstra sobre Separation of Concerns https://www.cs.utexas.edu/users/EWD/ewd04xx/EWD447.PDF {▸} Codely ├ 🎥 Suscríbete: https://youtube.com/c/CodelyTV?sub_confirmation=1 ├ 🐦 Twitter Codely: https://twitter.com/CodelyTV ├ 💂🏼 Twitter Rafa: https://twitter.com/rafaoe ├ 🧔🏻 Twitter Javi: https://twitter.com/JavierCane ├ 📸 Instagram: https://instagram.com/CodelyTV ├ ℹ️ LinkedIn: https://linkedin.com/company/codelytv ├ 🟦 Facebook: https://facebook.com/CodelyTV └ 📕 Catálogo cursos: https://bit.ly/cursos-codely
Refactoring, Code Smells, SOLID, Clean Code, Clean Architecture… Todo está muy relacionado y hoy vamos a ver una estructura con Smells para refactorizarla y lograr un código más mantenible y escalable. ✌️ Sin duda, la Arquitectura del Software es uno de los temas de los que más nos gusta hablar. 😊 🚥 ¡Haz nuestro curso de refactoring! 👉 http://bit.ly/curso-refactor Para ello vamos a ver un Code Smell del tipo Change Preventer y cómo aplicar Split Phase Refactoring paso a paso. El refactoring (o refactorización) es la forma para reestructurar nuestro código, modificando su estructura interna sin modificar su comportamiento. Para ello siempre necesitamos una buena base de testing. {▸} Codely ├ 🎥 Suscríbete: https://youtube.com/c/CodelyTV?sub_confirmation=1 ├ 🐦 Twitter Codely: https://twitter.com/CodelyTV ├ 💂🏼 Twitter Rafa: https://twitter.com/rafaoe ├ 🧔🏻 Twitter Javi: https://twitter.com/JavierCane ├ 📸 Instagram: https://instagram.com/CodelyTV ├ ℹ️ LinkedIn: https://linkedin.com/company/codelytv ├ 🟦 Facebook: https://facebook.com/CodelyTV └ 📕 Catálogo cursos: https://bit.ly/cursos-codely
¿Has vivido el refactoring de una app legacy? Vamos a analizar dos grandes refactors de JavaScript que realizaron GitHub, quitando jQuery de su frontend, y Chrome, pasando las devtools a ES modules. 👀 Los artículos que comentamos en el vídeo: Removing jQuery from GitHub frontend: https://github.blog/2018-09-06-removing-jquery-from-github-frontend/ Migrating to JS modules: https://developer.chrome.com/blog/migrating-to-js-modules/ Aprende a refactorizar apps legacy aplicando buenas prácticas de JavaScript moderno con nuestro curso 👉 https://pro.codely.tv/library/js-moderno/ {▶️} CodelyTV ├ 🎥 Suscríbete: https://youtube.com/c/CodelyTV?sub_confirmation=1 ├ 🐦 Twitter CodelyTV: https://twitter.com/CodelyTV ├ 🌶 Twitter Núria: https://twitter.com/nuria_codes ├ 🧔🏻 Twitter Javi: https://twitter.com/JavierCane ├ 📸 Instagram: https://instagram.com/CodelyTV ├ ℹ️ LinkedIn: https://linkedin.com/company/codelytv ├ 🟦 Facebook: https://facebook.com/CodelyTV └ 📕 Catálogo cursos: https://bit.ly/cursos-codely
 These are the best podcast/talks I've seen/listen to recently:Ep. #29, Testing in Production with Glen Mailer of CircleCI (Glen Mailer, Charity Majors) [Operations, Testing in production, testing] An interesting discussion about testing in production and rethinking socio-technical systems from the ground up. GOTO 2020 • Talking With Tech Leads (Patrick Kua) [Engineering Culture, Technical leadership, leadership] (⭐⭐⭐⭐⭐) Practical tips to be a successful Tech Lead. Very interesting...
January - Zami: A New Spelling of My Name, Audre Lorde - El viaje de Baldassare (Le Périple de Baldassare), Amin Maalouf - We (Мы), Yevgeny Zamyatin - Loxandra (λωξάντρα), Maria Iordanidou - The Prime of Miss Jean Brodie, Muriel Spark February- Mr. Vertigo, Paul Auster (2nd time)- Mastering React Test-Driven Development, Daniel Irvine- Refactoring Workbook, William C. Wake (2nd time)- La canción de Salomón (Song of Solomon), Toni Morrison- A Confederacy of Dunces, John Kennedy Toole- Stardust,...
Some time ago I wrote a post sharing my notes on SRP from Agile Principles, Practices and Patterns book because I was making an effort to get closer to the sources of some object-oriented concepts. I didn’t continue sharing my notes on SOLID because I thought they might not be interesting for our readers. However, seeing the success of the Single responsibility ¿Principle? episode of The Big Branch Theory Podcast for which I used my notes on SRP, I’ve decided to share the rest of my notes on SOL...
Introduction. This is the second and last post in a series of posts showing a possible solution to the Beverages Prices Refactoring kata that I recently developed with some people from Women Tech Makers Barcelona with whom I’m working through Codesai’s Practice Program twice a month. In the previous post we introduced a design based on composition that fixed the Combinatorial Explosion code smell and produced a flexible solution applying the decorator design pattern. There was a potential proble...