Atención, ingenieros de software frustrados: aprendan una lección del lenguaje de programación de Google

Muchos de los de hoy programadores – lo siento, software ingenieros— se consideran “creadores”. Creadores de cierto tipo. Son sitios web bellamente personalizados con huevos de Pascua ingeniosamente escondidos y desplazamiento de paralaje; se asignan múltiples títulos de trabajo (“ex-ingeniero-inversionista-autor de Amazon”) y llenan sus computadoras portátiles con pegatinas de vinilo que muestran su identidad. Algunos se consideran expertos literarios. Considere las referencias rotas en los nombres de ciertos productos: Apache Kafka, ScyllaDB, Claude 3.5 Sonnet.

La mayoría de ellos, lo admito, trabajan para mí. La diferencia es que no tengo talento para armar, y mis proyectos de juego – con nombres como “Nabokov” (lo sé, lo sé) – es mejor que se queden en mi computadora portátil. Entré a este mundo justo en el momento en que la ingeniería de software superó a la banca como la profesión más maldita. Hay mucho odio, y nuestro propio odio, contra el que luchar.

Quizás es por eso que veo el espíritu detrás del lenguaje del programa Go como una posible corrección y corrección para mi generación de adversarios. Sus creadores provienen de una época en la que los programadores tenían poca imaginación y pocas ambiciones comerciales, y por mi dinero, es el primer lenguaje del nuevo milenio; no es el mejor en nada, pero sí el mejor en casi todo. . Un ejemplo de nuestros extraños tiempos.

si yo fuera Para clasificar los lenguajes de programación como movimientos artísticos, habrá un uso de mediados de siglo (Fortran, COBOL), formalismo de alta teoría (Haskell, Agda), pragmatismo americano (C#, Java), comunitarismo bajo (Python, Ruby) y Hedonismo esotérico. (Buffunge, Brainfuck). Y yo diría que Go, a menudo descrito como “C del siglo XXI”, representa el neoclasicismo: no tanto cambio como abandono.

En 2007, tres programadores de Google se reunieron con el entendimiento común de que los lenguajes convencionales como C++ y Java se estaban volviendo difíciles de usar y mal adaptados a su entorno de computación basada en la nube. Uno de ellos fue Ken Thompson, ex empleado de Bell Labs y ganador del Premio Turing por su trabajo en Unix, la víspera mitocondrial de los sistemas operativos. (Hoy en día, la gente de sistemas operativos no confunde los lenguajes de programación: hacer ambos es como un salto de altura olímpico y calificar para un maratón). Se unió a él Rob Pike, uno de los alumnos de Bell’s Labs que, junto con Thompson, creó la codificación Unicode. Estándar UTF-8. Puedes agradecerles con tu emoji.

Ver a estos expertos en programación crear Go fue como ver a Scorsese, De Niro y Pesci reunirse para Un irlandés. Incluso se puede perdonar su nombre poco amigable con el SEO. Quiero decir, el puro descaro de esto. Sólo el rey reinante de los motores de búsqueda puede atreverse a moverse.

El discurso rápidamente cobró impulso. La popularidad de Google debe haber ayudado, pero creo que había un hambre constante por cosas nuevas. En 2009, el año del lanzamiento de Go, los lenguajes convencionales más pequeños habían existido desde 1995: un verdadero annus mirabilis, cuando aparecieron Ruby, PHP, Java y JavaScript.

No es que se detuviera el desarrollo del diseño de lenguajes de programación. Los diseñadores de lenguajes son un grupo muy inteligente, a muchos les apasiona el cambio para deshacerse del status quo. Pero lo que terminan construyendo a veces puede parecerse a las obras maestras de un astronauta que parece tener problemas para orinar. Muchos lenguajes nuevos no resuelven los problemas básicos de rendimiento.

Pero desde el principio, Go estaba (lo siento) listo para funcionar. Una vez escribí un pequeño motor de búsqueda Python para verificar mis datos y documentos, pero era inusualmente lento. Reescrito en Go, a mi pobre serpiente le salieron alas y despegó, corriendo a una velocidad de 30 veces. Como algunos lectores astutos habrían adivinado, este programa era Mi “Nabokov”.

Fuente