Bueno, otras personas van a enumerar los papeles clásicos.
Así que voy a hacer una sugerencia de campo izquierdo:
Mira las presentaciones de Bret Victor: Deja de dibujar peces muertos e inventa en principio. Y lea los ensayos sobre la Escalera de abstracción y programación aprendible. (Y tal vez vea el futuro de la programación también)
- ¿Qué se necesita para ser investigador en informática, además de un doctorado? ¿Qué equipo necesita un investigador?
- ¿Cuáles son los diversos campos en los que se superponen la física y la informática?
- ¿Cuál es el mejor lugar para la investigación a tiempo completo en arquitectura de computadoras en Bangalore que no sea IISC? Estar en el campo de la enseñanza, ¿cuál es la mejor opción?
- ¿Podría el aprendizaje automático reemplazar a científicos e investigadores médicos?
- ¿Ha habido nuevos avances en las tablas hash distribuidas?
Estos son excelentes pensamientos sobre lo que casi seguro sucederá con la programación de “lenguajes” a continuación .
Me encanta el texto Y no creo que vaya a ninguna parte.
Pero está bastante claro que la “programación” continuará siendo complementada con herramientas visuales y manipulación directa y un “diálogo con la computadora” al estilo REPL. (Particularmente en tabletas y dispositivos táctiles)
Obviamente, esto ha sucedido en casos como la definición de interfaces de usuario y modelos 3D en herramientas especializadas, pero creo que entendemos lo importante que es el flujo de datos en todo, desde las interfaces de usuario reactivas hasta la automatización de la construcción y la declaración de arquitecturas complejas de microservicios unidos por colas. , comenzaremos a usar más herramientas de diagramación de flujo de datos para administrarlas.
Me encanta el texto y mi editor de texto, y he pasado mucho tiempo pensando en cómo representar las redes de flujo textualmente, en lenguajes específicos de dominio, etc. Me fascinan los lenguajes como el lenguaje de programación Faust que tiene el enrutamiento de red como sintaxis básica Pero … voy a aceptar la derrota … los diagramas probablemente solo serán mejores que las DSL de texto para representar redes de flujo la mayor parte del tiempo. (Una IU hecha de una jerarquía de componentes se puede representar como una especie de esquema anidado en el texto, pero un diagrama de flujo que es una red / red completa simplemente no tiene una representación fácil).
El dibujo recursivo tiene un ejemplo sorprendente del uso de la manipulación directa para representar un tipo de recursión. Combina dibujos recursivos con combinadores como LinRec y BinRec definidos en el lenguaje Joy (http: //www.complang.tuwien.ac.at…) o The Theory of Concatenative Combinators y creo que casi tenemos lo que necesitaríamos para construir algoritmos extremadamente potentes a través de la manipulación visual directa. (Algo de lo que antes era bastante escéptico).
Eso no es exactamente de lo que Victor está hablando. Pero creo que ha lanzado una nueva ola de pensamiento sobre la programación visual que puede ser muy influyente.