00:00:05 Introducción del tema de la mantenibilidad del software de la cadena de suministro.
00:01:22 Explicación de cómo el software puede degradarse con el tiempo, utilizando a Microsoft como ejemplo.
00:03:01 Discusión de las diferencias entre la mantenibilidad de los productos de Microsoft y otros software.
00:04:16 Explicación de por qué el software debe cambiar con el tiempo debido a los cambios en el hardware informático y las preocupaciones de seguridad.
00:07:50 Discusión de la perspectiva desde la cual se debe considerar la mantenibilidad y el problema de mirarlo desde la supervivencia del proveedor.
00:09:08 La compatibilidad de Microsoft con más de un millón de impresoras como ejemplo de la magnitud de la tarea.
00:10:07 Cómo el diseño de software afecta la mantenibilidad y la necesidad de que el software de ingeniería sea altamente mantenible.
00:11:07 La importancia de analizar los incentivos de los proveedores para garantizar la mantenibilidad del software.
00:13:03 La mantenibilidad es una cuestión de diseño y la conservación de la masa tecnológica es clave para tener un producto mantenible.
00:16:00 Discusión sobre la importancia de la mantenibilidad del software.
00:17:00 Incentivos de los proveedores para garantizar la mantenibilidad del software.
00:19:00 Cómo identificar software mantenible.
00:21:02 Síntomas de software no mantenible.
00:23:13 Reflexiones finales sobre la importancia de la mantenibilidad del software.

Resumen

En una entrevista, Kieran Chandler y Joannes Vermorel discuten la importancia de la mantenibilidad del software, especialmente en el software de cadena de suministro. Vermorel argumenta que la mantenibilidad es principalmente una cuestión de diseño y que a menudo es pasada por alto por las empresas que se centran únicamente en la supervivencia del proveedor. Señala que el software se vuelve no mantenible con el tiempo debido a los cambios en la tecnología y la entropía, y enfatiza la importancia de la compatibilidad, la seguridad y la simplicidad en el diseño del software. Vermorel también advierte sobre caer en la trampa de utilizar interfaces de usuario llamativas y sugiere desafiar a fondo a los desarrolladores sobre sus planes de mantenibilidad para garantizar la viabilidad a largo plazo.

Resumen Extendido

En esta entrevista, Kieran Chandler y Joannes Vermorel discuten los desafíos de mantener el software de la cadena de suministro y cómo un buen diseño puede afectar su longevidad. Vermorel explica que si bien el software no se degrada como los objetos físicos, se desmorona con el tiempo debido a la entropía y los cambios en el panorama tecnológico. Empresas como Microsoft han tenido éxito porque han mostrado un fuerte compromiso con la supervivencia a largo plazo de sus productos, lo que hace posible abrir y utilizar documentos más antiguos en la actualidad.

Vermorel señala que la capacidad de Microsoft para mantener la longevidad de su software se debe a sus enormes inversiones en mantenimiento y su enfoque en la compatibilidad. Contrasta esto con Linux, que, aunque más liviano y organizado de manera más sensata, no ofrece el mismo nivel de compatibilidad hacia atrás. Vermorel reconoce que el software de la cadena de suministro es aún más complejo debido a su naturaleza distribuida y las numerosas partes móviles involucradas.

Mantener el software de la cadena de suministro se vuelve más difícil debido a que el hardware informático evoluciona constantemente. Si bien la virtualización puede ayudar a mitigar algunos problemas, no es una solución perfecta. Además, la forma en que los usuarios interactúan con el software está en constante cambio, como la creciente prevalencia de pantallas táctiles y pantallas de alta resolución. El software más antiguo puede no estar diseñado para estos sistemas modernos, lo que lo hace menos intuitivo y potencialmente inseguro.

Vermorel argumenta que la mantenibilidad del software a menudo se pasa por alto y se malinterpreta. La preocupación típica es si un proveedor seguirá presente en el futuro, pero él cree que este enfoque es débil para abordar el problema. Señala que tener un proveedor sobreviviente es una ventaja, pero no garantiza la mantenibilidad. De hecho, algunos proveedores tienen un incentivo perverso para crear productos no mantenibles y vender nuevas versiones.

El entrevistado enfatiza que el problema de la mantenibilidad debe ser abordado desde una perspectiva diferente. Explica que el software complejo, como los sistemas de cadena de suministro empresariales, tiene millones de partes móviles y numerosas empresas trabajando en ellos simultáneamente. Estos sistemas enfrentan actualizaciones y cambios constantes para mantener la compatibilidad con varios hardware y sistemas operativos. Asegurar la compatibilidad se convierte en una tarea enorme, como Vermorel ilustra con la compatibilidad de Microsoft con más de un millón de impresoras.

Él argumenta que, por defecto, el software no es mantenible a menos que se diseñe específicamente para serlo. También enfatiza que el enfoque no debe centrarse únicamente en la supervivencia de un único proveedor, sino en todo el ecosistema de empresas involucradas en la cadena de suministro. Vermorel cree que la mantenibilidad es principalmente una cuestión de diseño, especialmente en la conservación de la masa tecnológica.

Para ganar clientes a través de demostraciones, las empresas suelen utilizar las tecnologías más avanzadas y modernas para la visualización de datos, la experiencia del usuario y el análisis en tiempo real. Esto crea un “efecto wow”, que puede ser un punto de venta. Sin embargo, Vermorel desafía este enfoque, citando el ejemplo de pantallas de ERP con un aspecto desactualizado que se asemejan a terminales de texto de principios de los años 80. A pesar de su apariencia, estas pantallas son increíblemente rápidas, receptivas y tienen dependencias mínimas, lo que las hace altamente mantenibles y eficientes.

Vermorel enfatiza que no todas las capas de software necesitan innovación, ya que es más importante tener estabilidad en áreas específicas como la gestión de calendarios o el almacenamiento de contraseñas. También señala que la ingeniería de software tiene una rica historia de la que aprender, y la mantenibilidad debería ser una prioridad. Sin embargo, los clientes y prospectos a menudo pasan por alto este aspecto, centrándose más en si una empresa estará presente en el futuro en lugar de la mantenibilidad de su software.

Para determinar si un software es mantenible, Vermorel sugiere analizar los incentivos ofrecidos por el proveedor. Por ejemplo, un proveedor que cobra altas tarifas de implementación y concentra los ingresos al comienzo del proyecto puede tener un incentivo para repetir esas tarifas tantas veces como sea posible. En cambio, Lokad cobra una tarifa mensual sin compromiso, asegurando que la empresa tenga un interés en el juego y haciendo de la mantenibilidad una prioridad.

Vermorel también destaca la importancia de las soluciones de Software como Servicio (SaaS), ya que aseguran que el proveedor sea responsable del mantenimiento de su propio software. Advierte contra la complejidad tecnológica, donde las empresas presumen de numerosos componentes de vanguardia que pueden convertirse en una pesadilla de mantener debido a sus ciclos de vida individuales. En cambio, sugiere que una solución simple y mantenible debería ser la prioridad para los profesionales de la cadena de suministro.

Vermorel explica que aunque las empresas invierten en sistemas de cadena de suministro, a menudo se vuelven inutilizables con el tiempo debido a diversos problemas y fallas que surgen. A medida que aumenta el número de fallas, el software se vuelve más difícil de mantener y operar. En consecuencia, los usuarios abandonan las funciones del sistema y vuelven a utilizar hojas de cálculo de Microsoft Excel spreadsheets como solución alternativa.

Comparte que esta situación es algo común en la industria y refleja los síntomas de una solución que se ha vuelto completamente inmantenible. Vermorel advierte que las interfaces de usuario llamativas no garantizan necesariamente un producto que funcione bien e incluso pueden ocultar posibles problemas de mantenibilidad. Por otro lado, las interfaces de usuario desactualizadas también pueden ser una señal de alerta, ya que pueden indicar una falta de mantenimiento y actualizaciones por parte del proveedor.

Para evitar caer en la trampa de un software inmantenible, Vermorel aconseja a las empresas que desafíen a fondo a los desarrolladores sobre sus planes de mantenibilidad y comprendan las decisiones de diseño clave que contribuyen a la viabilidad a largo plazo del software. Él enfatiza que sin considerar cuidadosamente la mantenibilidad, el software en la industria tiende a ser inmantenible por defecto.

Vermorel concluye destacando las similitudes entre el software de cadena de suministro y los sistemas de negociación de alta frecuencia en finanzas, señalando que ambos a menudo utilizan interfaces de usuario basadas en texto. Si bien estas interfaces pueden parecer desactualizadas, son eficientes y mantenibles debido a sus dependencias mínimas y diseño simplificado.

Transcripción completa

Kieran Chandler: Oye, al invertir en un software de cadena de suministro, se espera que dure décadas para la empresa en lugar de solo años. Sin embargo, desde la perspectiva de los proveedores, el panorama tecnológico en constante cambio significa que mantener esto no es tarea fácil. Por lo tanto, hoy vamos a hablar sobre la mantenibilidad y por qué es un desafío, y también entender cómo puede verse afectada por un buen diseño. Así que es un tema intrigante hoy, y la mantenibilidad es algo que normalmente no asociarías con el software. El software no se degrada realmente. Entonces, ¿cuál es la idea?

Joannes Vermorel: Bueno, en realidad, el software se degrada. Sí, no es como la degradación mecánica, donde hay desgaste después del uso y las cosas se vuelven físicamente frágiles hasta el punto de romperse. El software no es lo mismo, pero las cosas se desmoronan con el tiempo. Eso es algo que tal vez sea muy sorprendente porque algunas de las compañías de software más grandes y exitosas, digamos Microsoft, han tenido un éxito increíble precisamente porque tenían un compromiso insano con la supervivencia a largo plazo de sus productos. Es literalmente un testimonio del éxito de Microsoft que, en la actualidad, puedes tomar un documento de Microsoft Word que fue editado en 1995 y abrirlo, y aún puedes imprimirlo. Es increíble, pero también es algo que la mayoría de las personas no se dan cuenta: que Microsoft fue bastante único en este sentido, teniendo esta mentalidad de compromiso a largo plazo con sus productos. Si intentaras usar cualquiera de sus competidores, y hoy en día, la gente ni siquiera recuerda que Microsoft Word y Excel tenían muchos competidores, ninguno de ellos realmente funcionaría.

Entonces, sigamos por el camino de que el software se degrada, y en su mayoría se degrada debido a la entropía, al hecho de que este es un paisaje en constante cambio. El hardware está cambiando y el software es un producto muy compuesto. En su núcleo, para ejecutar cualquier cosa, generalmente estás involucrando docenas de piezas proporcionadas por docenas de compañías, y esas cosas no se mantienen naturalmente muy bien con el tiempo. Cuando algo cambia, no hay una razón clara por la cual todas las demás partes permanecerían completamente compatibles e integradas correctamente con la parte que acaba de cambiar.

Kieran Chandler: Sí, quiero decir, el panorama tecnológico es uno que está cambiando realmente y cambia muy rápidamente. Entonces, ¿qué hizo bien Microsoft? ¿Por qué pudieron impactar en la longevidad de su software?

Joannes Vermorel: En el fondo, realmente se preocuparon e hicieron inversiones insanas para eso. Mucha gente se queja de que Microsoft Windows es tan abultado, que tienes tantas cosas, y si optas por un sistema operativo Linux, es mucho más delgado, mejor organizado y más sensato en general. Eso es cierto, absolutamente cierto. Pero intenta ejecutar un programa que fue escrito para Linux hace 25 años; no se ejecutará. Los juegos que compré cuando era adolescente en los años 90 para Windows 95 todavía se ejecutan hoy en día. Entonces, creo que esto ilustra eso.

Kieran Chandler: Puedes hacer las cosas bien con, diría yo, un nivel insano de compromiso. Y si lees los blogs de Microsoft sobre lo que están haciendo para garantizar la mantenibilidad, diría que llegan a extremos insanos, literalmente. Ahora, para el software de la cadena de suministro, no puedes esperar el mismo grado de compromiso, simplemente porque el mercado no es tan grande y simplemente no tienes compañías que lleguen a tales extremos para hacer eso. Además, tienes otro problema, que es que el software de la cadena de suministro también es muy, muy complejo porque típicamente es distribuido y hay muchas, muchas partes móviles. Entonces eso hace que la mantenibilidad sea aún más complicada. Y ahora la pregunta es, ¿por qué tienes algún cambio en absoluto y por qué no puedes simplemente congelar un software y quedarte con él para siempre?

Joannes Vermorel: La respuesta es, en primer lugar, el hardware informático en sí está cambiando, por lo que no puedes simplemente decir que esto funcionará para siempre. Quiero decir, sí, ahora puedes usar la virtualización para mitigar la mayoría de esos problemas, aunque la virtualización frecuentemente no es una emulación perfecta del hardware que solías tener, por lo que puede ayudar. Pero luego, no es solo el hardware para hacer el cálculo; también es el hecho de que, por ejemplo, la forma en que consumes las pantallas ha cambiado. Las pantallas tienen muchas más píxeles hoy en día, puedes tener pantallas táctiles y tienes muchas cosas que no se comportan exactamente como los sistemas antiguos. A veces incluso tienes sistemas extraños, como donde tienes teclas de teclado que simplemente desaparecieron. Entonces, si el software fue diseñado para una tecla en particular, podría haber sido obvio en ese momento, pero ahora que la tecla ha desaparecido o la configuración del teclado es diferente, es mucho menos intuitivo.

Y luego, eso es solo una parte del problema que evoluciona relativamente lentamente, pero luego tienes todos los problemas de seguridad. La mayoría del software que se ha producido históricamente no fue diseñado en absoluto para las amenazas modernas que tenemos hoy en día. Eso ejerce una presión inmensa para cambiar toneladas de cosas en muchos componentes de software.

Kieran Chandler: Entonces, las personas siempre quieren usar la última tecnología cuando están en sus lugares de trabajo. ¿Dirías que eso es más un problema dominante o es más el aspecto de seguridad y el hecho de que no sería seguro usar estas personas?

Joannes Vermorel: En primer lugar, la mantenibilidad es una especie de problema del cual los gerentes de la cadena de suministro en su mayoría no son conscientes, y cuando son conscientes, solo ven el problema desde un ángulo que considero extremadamente débil, que es si el proveedor seguirá presente o no. Y mi propuesta es que la mantenibilidad no tiene nada que ver con la supervivencia del proveedor. Sí, tener un proveedor que todavía esté vivo es algo positivo, pero ni siquiera es tanto porque, seamos sinceros, muchos proveedores tienen un incentivo perverso masivo para tener algo que no sea en absoluto mantenible. ¿Cómo van a vender la próxima versión si no es así? Si volvemos a por qué diría que generalmente este problema ni siquiera está presente, es que no estás mirando el problema de la manera correcta.

Kieran Chandler: Tienes que pensar que, imagina, sabes, un software complejo como un sistema de cadena de suministro empresarial. Imagina un sistema que tenía, ya sabes, millones de piezas móviles, literalmente millones, y tenías docenas de empresas que estaban ajustando en cualquier momento dado, ya sabes, algunas de esas piezas por una gran variedad de razones. A veces quieres ser compatible con nuevo hardware, así que cuando haces eso, es posible que realmente crees incompatibilidades accidentales con algún hardware antiguo. Es posible que desees ser compatible con un nuevo sistema operativo porque, por ejemplo, Linux sigue cambiando, Windows sigue cambiando, así que básicamente quieres ser compatible con lo último. Pero al introducir alguna compatibilidad con el sistema más reciente, es posible que introduzcas accidentalmente alguna incompatibilidad con el sistema antiguo.

Kieran Chandler: Y solo para darte una idea de la magnitud de la tarea, estaba leyendo en una publicación de Microsoft que, en un momento dado, Microsoft estaba asegurando la compatibilidad con más de un millón de impresoras. Solo piénsalo, un millón de impresoras con controladores diferentes, conjuntos de instrucciones diferentes, hardware diferente, etc. Esto es cuánto esfuerzo de ingeniería necesitas para asegurar la compatibilidad con un millón de dispositivos. Esto es casi una locura. Y siempre tienes a personas que dicen: “Ah, Windows es una porquería. Acabo de conectar mi impresora de 17 años que era la Epson 7.1.6 punto B, edición eslovaca, y adivina qué, Microsoft no es 100% compatible con este dispositivo, que obviamente es una referencia tan importante”.

Joannes Vermorel: Pero, bromas aparte, tienes esta enorme pieza de software en la cadena de suministro con toneladas de piezas móviles. La base de datos en la que confías se actualiza constantemente, las capas de red que estás utilizando se actualizan constantemente, el servidor web que estás utilizando se actualiza constantemente. Tienes tantas piezas móviles. Y por defecto, lo que tienes es que, a menos que diseñes específicamente tu software para que sea altamente mantenible, no será mantenible. Lo que sucede con la cadena de suministro es que es mucho más un juego a largo plazo en el que las personas están jugando. No solo deberíamos pensar en el proveedor, sino en cómo van a mantenerse, sino también en todas las personas con las que el proveedor interactúa. Y entonces, ¿cuánta confianza puedes tener realmente en que estas otras empresas también estarán allí en el futuro? Entonces, nuevamente, el hecho de que las empresas estén o no, en su mayoría, no me importa. Esta no es la forma correcta de pensar en eso. Si tienes proveedores que todavía están ahí pero tienen un incentivo vívido para hacer que la cosa no sea mantenible para vender más, ¿has hecho algún progreso hacia la mantenibilidad o has ido en la dirección opuesta? Necesitas analizar la situación a través de los incentivos que tienen las personas. Eso es otra cosa, es que en su mayoría, creo que la mantenibilidad es principalmente una cuestión de diseño. Pero ¿de qué tipo de diseño estamos hablando exactamente? Y aquí, creo que se trata principalmente de la conservación de la masa tecnológica.

Kieran Chandler: Ves, si quieres tener un producto que haga demostraciones muy geniales, ¿qué necesitas? Necesitas la última y más genial biblioteca de visualización de datos, la última y más genial biblioteca de UX. Si quieres tener análisis en tiempo real sofisticados, necesitas tener el último y más genial subsistema para hacer eso, y así sucesivamente. Tus incentivos para ganar clientes a través de demostraciones es tener un efecto wow. Por ejemplo, muchos de mis clientes me decían que las pantallas de su ERP parecen terminales de texto, solo texto puro en blanco y negro. Decían: “Oh, realmente tenemos que hacer algo”.

Joannes Vermorel: Desafío eso porque cuando veo esas terminales que parecen que estamos en los años 80 o finales de los 70, veo a personas usándolas y son súper rápidas, increíblemente receptivas. La pantalla es ultra minimalista con solo unos pocos comandos que tienes que saber de memoria, pero eso es todo. No hay ninguna distracción en absoluto; es puramente utilitario. Las personas tienen una productividad insana con eso. Sí, se ve mal, pero es altamente mantenible porque literalmente no tienes ninguna dependencia y ciertamente no hay dependencia web con navegadores web que siguen cambiando.

Entonces, si observas tanto la parte más antigua de la cadena de suministro como la parte más avanzada del trading de alta frecuencia en finanzas, verás que las interfaces de usuario son similares. Si observas a esos traders cuantitativos que están utilizando sistemas súper avanzados, su interfaz de usuario vuelve a parecer una terminal de texto. Es algo extraño, esas personas están absolutamente a la vanguardia y su interfaz de usuario parece completamente desactualizada. Es lo contrario de lo que pensarías en las interfaces de usuario de las películas de Hollywood.

Kieran Chandler: Parece un poco frustrante porque todos quieren estar utilizando las últimas tecnologías. Entonces, ¿estás diciendo que tener un producto muy mantenible significa que en última instancia no puedes estar a la vanguardia?

Joannes Vermorel: Si estás a la vanguardia en términos de mantenibilidad, ¿por qué no? No estoy diciendo que no hayamos progresado en esta área también, lo hemos hecho. Es solo que no desencadena ningún tipo de efecto wow. Cuando tienes estrategias de versionado muy limpias en su lugar y los componentes que eliges tienen algunas filosofías muy interesantes, como ser flexibles o elegir componentes de software donde la filosofía es la mantenibilidad, eso es genial.

Hay algunos componentes que utilizamos que son componentes de código abierto con exactamente esta filosofía. Dicen que hay un manifiesto: este problema ha sido estudiado durante los últimos 20 años y hemos convergido en lo que consideramos el mejor compromiso en términos de diseño. Ahora, todo lo que haremos con este componente es un mantenimiento adecuado solo para asegurarnos de que, en términos de seguridad, no haya problemas graves.

Kieran Chandler: En términos de compatibilidad, no hay problemas accidentales y no nos reinventaremos. Entonces dices que es decepcionante, es lo opuesto a la innovación. Pero nuevamente, ¿necesitas tener innovación en cada capa de tu software? ¿Vas a seguir reinventando la forma en que manejas tu calendario o la forma en que almacenas contraseñas, por ejemplo, a menos que haya algún ataque criptográfico que requiera una actualización? Entonces, quieres elegir cosas donde ya tienes estabilidad.

Joannes Vermorel: La ingeniería de software no es una disciplina nueva. Tenemos alrededor de 50 años de historia para aprender. Pero la pregunta es que, nuevamente, porque los clientes o prospectos no prestan atención a eso, hacen preguntas ingenuas como “¿Seguirás existiendo?” en lugar de “¿Cuál es tu incentivo para asegurarte de que tu software sea mantenible, en lugar de hacer lo contrario para que compre tu próxima licencia?”

Kieran Chandler: Entonces, ¿en qué debería estar atento el profesional de la cadena de suministro? ¿Cuáles son las pistas de que hay un software muy mantenible en comparación con un software que tal vez sea un poco anticuado y las personas simplemente están siendo perezosas?

Joannes Vermorel: Primero, diría que simplemente miren los incentivos porque no es tan técnico. Por ejemplo, si están comprando una licencia o algo donde el proveedor cobra altas tarifas de implementación, eso significa que sus ingresos se concentran al comienzo del proyecto. Lo que sucede después es simplemente menos de lo mismo, por lo que es literalmente una tendencia descendente. El proveedor tiene un incentivo estructural para repetir esas altas tarifas de implementación con la mayor frecuencia posible.

Ahora miren a Lokad. Cobramos una tarifa mensual sin compromiso, y generalmente alcanzamos el punto de equilibrio después de dos años. La mantenibilidad es básicamente una tarifa fija, por lo que el costo en términos de mantenibilidad está afectando el margen de Lokad. Cuando posicioné a Lokad, decidí que tenemos algo en juego, que estamos pagando el precio de tener un software no mantenible, y eso nos da un incentivo masivo para hacer algo mantenible. No hay dinero que ganar, y todo lo contrario, hay dinero que perder para nosotros como proveedor si no es mantenible.

Entonces, una suscripción mensual donde te aseguras de que tu proveedor esté perdiendo dinero al principio es un muy buen comienzo saludable que enmarca el problema, por lo que será mantenible. Y luego, quieres asegurarte de que el proveedor se encargue del mantenimiento de su propio software, que es básicamente de lo que se trata el Software como Servicio (SaaS). Si no es mantenible, es principalmente el problema del proveedor, no tu problema como empresa operativa.

Kieran Chandler: Entonces, hablando del software de la cadena de suministro, a menudo veo diapositivas y presentaciones de competidores que muestran todas las piezas de su solución. Parece que tienen 20 subcomponentes súper sofisticados y complejos, como TensorFlow, Apache Spark, Kafka, MongoDB, React, Redux y muchos más. Afirman estar a la vanguardia, pero cuando veo esto, pienso que va a ser una pesadilla de mantener. Cada componente tiene su propio ciclo de vida y no hay garantía de que funcionen juntos a largo plazo. ¿Puedes compartir algún ejemplo en el que te hayas encontrado con software no mantenible y los problemas que llevaron a ello?

Joannes Vermorel: A nivel de síntomas, podrías ver que cuando las personas abandonan el software y comienzan a usar Microsoft Excel y hojas de cálculo para gestionar las cadenas de suministro. No es que las grandes empresas no hayan comprado sistemas de cadena de suministro; incluso podrían haber comprado tres de ellos en las últimas décadas. Estos sistemas tienen módulos complejos de pronóstico, reabastecimiento, optimización de surtido y gestión de promociones. Sin embargo, después de la implementación inicial, que fue respaldada por el proveedor, las personas comienzan a encontrar problemas. Con el tiempo, estos problemas se acumulan y el sistema se vuelve más difícil de mantener.

Kieran Chandler: Entonces, ¿qué sucede cuando abandonan el software?

Joannes Vermorel: Cuando las personas abandonan el software, abandonan por completo las características y vuelven a utilizar hojas de cálculo de Excel. Deciden elegir sus batallas y centrarse en una sola cosa: exportar datos a una hoja de cálculo de Excel. Renuncian a la esperanza de hacer funcionar cualquier otra cosa que no sea la función de exportación a Excel.

Kieran Chandler: Hojas de cálculo, y esa es una historia que he visto en docenas de empresas. Son literalmente los síntomas de una solución que se ha vuelto completamente no mantenible.

Joannes Vermorel: Bueno, si concluimos hoy, el mensaje principal es que no todo lo que brilla es oro, y tal vez debamos ser un poco cautelosos con esas empresas que tienen interfaces de usuario llamativas porque puede haber problemas de mantenibilidad en el futuro. Quiero decir, nuevamente, no estoy diciendo que tener una interfaz de usuario deficiente sea una solución. Si estás lidiando con un proveedor cuya solución parece de los años 90, lo más probable es que ya sea tan no mantenible que el proveedor ni siquiera haya logrado actualizar su interfaz de usuario. Entonces, no hay una regla estricta, pero mi consejo es que debes desafiar incluso el desarrollo interno, el software interno. Realmente necesitas desafiar a las personas a cargo del desarrollo. ¿Cuál es tu plan para la mantenibilidad? ¿Cuáles son las decisiones de diseño clave que estás tomando ahora para asegurarte de que tu software sea mantenible? Y nuevamente, si las personas no tienen una visión muy precisa de cómo las decisiones de diseño que están tomando están dando forma a la mantenibilidad futura del software, entonces, como regla general, puedes evaluar que el software será no mantenible porque es el estado predeterminado de los productos que se desarrollan en esta industria sin prestar atención cuidadosa a la mantenibilidad. Es no mantenible por defecto.

Kieran Chandler: Bueno, eso es todo por esta semana. Gracias por sintonizar, y nos vemos en el próximo episodio. Gracias por ver.