11 puntos por hongminhee 2025-07-09 | 2 comentarios | Compartir por WhatsApp

Definición del stack contrarian

  • Una filosofía de desarrollo que elige deliberadamente tecnologías alternativas en lugar de las tecnologías dominantes
  • Un concepto nombrado por el autor como opuesto al stack convencional
  • Las elecciones del autor:
    • Ruby: Rails → Sinatra + DataMapper
    • JavaScript: Prototype → MooTools
    • Python: Django → Werkzeug + SQLAlchemy
    • Actualmente: React/Next.js → Solid/SolidStart

El crecimiento que trae la dificultad del stack contrarian

  • Como no había respuestas en Stack Overflow, analizar directamente el código fuente → comprensión profunda de la tecnología
  • Por la poca base de usuarios, falta de apoyo de la comunidad → crecer como contribuidor de código abierto y la satisfacción de que un PR sea aceptado
  • Experiencia del autor:
    • La baja abstracción de Werkzeug → adquirir la capacidad de construir un framework interno
    • El proceso llamado "dar palos de ciego" → conocimiento fundamental aplicable a cualquier stack
  • Ventaja: una profunda perspectiva técnica obtenida en el proceso de resolver problemas

La ventaja de los que llegan después

  • La experiencia de diseño que reconoce y mejora los problemas del stack convencional
  • Ejemplo: la fine-grained reactivity de Solid (evita la sobrecarga del DOM virtual de React)
  • Ganancia inesperada: entender el "por qué" de la tecnología y adquirir mejor criterio para diseñar arquitecturas

El valor oculto del stack ensamblado por piezas

  • Stack convencional: un práctico paquete integral
    • Rails (CoC), Django (Batteries Included), Next.js (full stack)
  • Stack contrarian: elegir cada componente y ensamblarlo manualmente
    • Caso del autor: Sinatra + DataMapper + Haml + Sass
    • Lo laborioso de configurar cada componente y conectar el middleware
  • Ventaja: comprensión total de cómo funciona la tecnología por dentro y de la interacción entre capas

Lección histórica

  • Lo convencional de hoy también fue lo contrarian del pasado (Rails → alternativa a Java, React → alternativa a Backbone.js)
  • Ventaja: una posición pionera para experimentar y comprender primero las tecnologías dominantes del futuro

La oportunidad paradójica en la era de los LLM

  • Se refuerza la ventaja del stack convencional (ChatGPT domina Next.js, pero conoce poco SolidStart)
  • Ventaja: la especialización en áreas donde los LLM no pueden destacar se vuelve una competitividad aún más diferenciadora
  • Un camino de crecimiento para convertirse en un verdadero ingeniero, no solo en un usuario de frameworks

2 comentarios

 
gjen6s 2025-07-09

Nunca había pensado que SQLAlchemy fuera un rebelde, pero es curioso.

 
krepe90 2025-07-09

Supongo que quizá se refería más a Werkzeug que a SA. Normalmente se usa Flask o FastAPI, así que no es tan fácil llevar la contraria hasta con el ORM.