
ARTDEPARTMENT

En el mundo del ampliación de software, antes pocas decisiones parecen ser tan técnicas —y, luego, teóricamente racionales— como la dilema de un estilo de programación: se supone que se prostitución de comparar rendimiento, escalabilidad, herramientas o facilidad de mantenimiento. Pero en ingenuidad, esta osadía es cualquier cosa menos objetiva.
Steve Francia, ingeniero con décadas de experiencia en empresas como Google y MongoDB, ha sido refrendador de primera mano de cómo la subjetividad de esta clase de elecciones puede terminar costando millones de dólares, frenar la innovación y, en algunos casos, hundir empresas enteras.
Su conclusión es convincente: a la hora de la verdad, las decisiones sobre lenguajes no se toman con criterios técnicos, son identitarios. Un poco como los equipos de fútbol o la política...
La carrera de programador en 2017 y en el futuro (con Javier Santana)
Francia relata una experiencia que tuvo al eclosión de su carrera, en una startup emplazamiento Takkle. Tras un medra repentino, se encontró liderando un equipo que desarrollaba con PHP. Todo iba proporcionadamente, hasta que un nuevo CTO, que era un referente de la comunidad Perl, decidió que debían reescribir todo el sistema en dicho estilo.
La osadía se justificó con un estudio técnico que, en retrospectiva, dice Francia, parecía más una excusa que una evaluación positivo.
El resultado fue devastador: la productividad se desplomó, el equipo tuvo que perder tiempo en formarse un nuevo estilo, el compra mensual se duplicó y la empresa perdió su oportunidad en el mercado. Takkle, que era una prometedora red social universitaria, murió antaño de poder competir, mientras que Facebook —casualmente, todavía construido en PHP en esas fechas— despegaba y se expandía.
La pregunta que persiguió a Francia durante abriles fue: ¿cómo pudo un líder tan experimentado tomar una osadía tan costosa?

La respuesta llegó mucho posteriormente: no fue una osadía técnica, fue una osadía de identidad. El CTO no quería desarrollar la mejor plataforma posible; quería ser "un CTO de Perl". La reescritura no fue una logística tecnológica, sino el precio de sostener una identidad profesional.
Décadas posteriormente, Francia ha observado el mismo engendro una y otra vez. En Google, en MongoDB, en startups y grandes corporaciones. Equipos enteros discutían apasionadamente sobre lenguajes —C++, Java, Go, Python, Rust—, pero las argumentaciones técnicas eran sólo 'de cara a la colección'.
En un caso flamante, un vicepresidente de ingeniería propuso portar a Rust un plan de 50 millones de dólares. Su presentación destacaba ventajas reales del estilo, pero curiosamente no había considerado alternativas obvias como Go, que superaba a Rust en varios de los criterios que el propio equipo había establecido.
Cuando Francia le preguntó si habían comparado otras opciones, el ejecutor respondió: "En ingenuidad, no. Todo el mundo está hablando de Rust".
Ese fue el momento de epifanía: la dilema ya estaba hecha antaño del estudio. No se trataba de un estudio técnico, sino de una alegato racional para una osadía emocional.
Las neurociencias han demostrado que cuando se desafían creencias centrales de nuestra identidad, nuestro cerebro reacciona como si estuviera siendo atacado físicamente. En estudios con resonancia magnética pragmático (fMRI), los investigadores observaron que cuando una creencia periférica era cuestionada, el cerebro respondía con razonamiento racional...
...pero cuando la creencia formaba parte de la identidad —como una ideología política o religiosa— se activaban la angina (centro del miedo) y la corteza insular (que procesa el dolor emocional y el asco). El cerebro no evaluaba evidencia: se defendía.
Los desarrolladores no son inmunes a este mecanismo. Evaluar un estilo alterno puede percibirse, inconscientemente, como una amenaza a la propia identidad. Cambiar de opinión implicaría imaginar una traducción distinta de uno mismo. Y por eso, incluso frente a datos objetivos, seguimos aferrados a nuestras preferencias.

Cada vez que los desarrolladores discuten sobre lenguajes, hay dos conversaciones ocurriendo a la vez. Una es la visible, repleta de argumentos técnicos ("Go compila más rápido", "Python tiene la mejor biblioteca de machine learning"...) y otra es invisible, y la que más le importa a los interlocutores ("Soy un programador de Rust, y quiero ser agradecido como tal").
El problema es que la industria ha institucionalizado esta dinámica. Se hacen debates, benchmarks, matrices de osadía y comparativas que fingen objetividad. Pero si quien lidera la evaluación es un entusiasta de cierto estilo, el resultado está decidido desde el principio. La empresa simplemente gastará millones en validar una dilema emocional con datos que la respalden.
El sesgo no solo afecta la productividad; tiene un costo financiero enorme. Estudios de la industria, como el de Stripe sobre el "coeficiente del desarrollador", estiman que los ingenieros dedican el 42% de su tiempo a administrar deuda técnica (las consecuencias a holgado plazo de tomar atajos en el ampliación de software), buena parte de la cual surge de decisiones erróneas sobre el estilo y/o framework a usar.
Si cada cambio de estilo o de framework implica reaprender, rehacer y recontratar, el costo total puede representar hasta la centro del presupuesto de ampliación a lo holgado de un producto.
Por ello, Francia propone un cambio de molde. En motivo de preguntarnos "¿qué estilo es mejor?", deberíamos plantearnos "¿Cuánto nos costará esta osadía?". El objetivo no es eliminar el creador emocional (eso sería inútil), sino hacer visibles los costos invisibles y permitir que las decisiones se tomen con cojín a métricas, en motivo de a 'lealtades'.
Imagen | Marcos Merino mediante IA
En Genbeta | El creador del 'Hola, mundo' y guía de C ha probado a programar en Rust: "En otro estilo serían 5 minutos, con Rust me costó días"
Compartir este artículo
Consultoria Personalizada
¡Si aun no tienes presencia en internet o
necesitas ayuda con tus proyectos, por favor, escribenos!