¿Las empresas se están alejando del uso de Scala? ¿Por qué o por qué no?

No.

Algunas compañías se están alejando de Scala, algunas compañías se están moviendo hacia Scala. Ese es el curso de los eventos. De las especulaciones que he encontrado, la mayoría de las decisiones provienen de estas compañías que terminan en un lío impío de código imperativo y funcional de spaghetti, un problema que puede ser el resultado de la naturaleza híbrida de Scala.

Si bien eso apunta a uno de los defectos del lenguaje de programación, me hace dudar de la calidad general del código de estos grandes nombres. ¿Por qué terminaron con estos líos impíos en primer lugar? ¿Por qué no había alguien más vigilante? ¿No se consideran estas compañías como los sellos distintivos de la ingeniería de software?

Lo que tiendo a creer es que las compañías más grandes son mezclas de personas de diferentes mentalidades, disciplinas, etc., y no todos pueden adherirse al mismo conjunto de estilos de programación. Es por eso que algunos grandes proyectos provienen de estos grandes nombres, porque generalmente involucran un subconjunto mucho más pequeño de sus desarrolladores (Kafka de LinkedIn), pero en general, estos productos tienden a ser incoherentes y desordenados. LinkedIn es un producto sorprendentemente mal preparado, al menos en mi opinión. La última iteración de su aplicación iOS es un intento desesperado de canjear su nombre, pero no cumple con lo que se supone que debe hacer y en qué debería permitir que la gente se concentre. Su interfaz web es, honestamente, una broma.

Una de las API más decepcionantes que he encontrado es la de Facebook. Las opciones de diseño son de pesadilla (vea cómo formatean las horas de apertura de un lugar desde el punto final de la API de las páginas). Comienzas a pensar si alguien estaba en su sano juicio tomando estas decisiones.

El punto es que, si bien entiendo que los grandes nombres detrás de un lenguaje de programación pueden decidir significativamente el futuro del lenguaje en la industria, tampoco lo considero ningún tipo de estándar, porque para mí, estas grandes compañías no están hechas de todo personas brillantes, y todavía parecen luchar constantemente para unir sus piezas. Así que creo que tienen problemas más fundamentales que la adopción del lenguaje.

La popularidad y la adopción no indican calidad (la fealdad de JavaScript frente a la pura elegancia de Haskell).

si

Linkedin recientemente dejó caer Scala y se fue con Java. Hacían ambas cosas, pero debido a que Scala no podía integrarse con Java, tuvieron que tomar una decisión … y dado que tenían más código y bibliotecas en Java (y podían justificar y utilizar Java más fácilmente), optaron por Java. También les resultó más fácil contratar desarrolladores Java que desarrolladores Scala. Este es el lugar donde se encuentran muchas empresas.

Esta es probablemente la razón por la que Typesafe cambió de nombre y declaró que ya no se enfocaban EXCLUSIVAMENTE en Scala y que ahora también eran una tienda Java.

Además, si observa las tendencias recientes con el sondeo de Stackoverflow y Tiobe, ambos muestran Scala con tendencia descendente mientras que los lenguajes Java funcionales como Groovy DRAMÁTICAMENTE tienen tendencia ascendente. Esto se debe en gran parte a su adopción en devops (Gradle y Spock) y en el SDK de Android, así como en Spring, Spring Boot y Grails.

He estado en Morgan Stanley durante aproximadamente 5 años. Fue alrededor de la época en que Morgan Stanley adoptó Scala. Y ahora, la mayoría de los desarrolladores aquí (al menos en FID) trabajan en Scala.