¿Cuáles serían los diez temas más relevantes en el desarrollo de software que representan la vanguardia de las prácticas de programación, la nube y los grandes datos?

Wow, es una pregunta bastante amplia que recibí de A2A. Voy a poner una lista discordante de prácticas y tecnologías que creo que califican como “estado del arte” en lugar de “vanguardia”. Las tecnologías que menciona tampoco son necesariamente innovadoras, pero normalmente esas tecnologías no están probadas y no necesariamente vale la pena invertir tiempo, en función de su dirección futura. Por supuesto, voy a tirar su “10” por la ventana, según su sugerencia 🙂 Aquí va:

  • Despliegue continuo
  • Gestión de configuración con Ansible / Chef
  • Estibador
  • KVM
  • Vagabundo con Ansible
  • La nube (especialmente AWS) junto con una rápida subida y bajada de escala, como la forma en que lo hace Netflix: alta escalabilidad – alta escalabilidad – Netflix: desarrollo, implementación y soporte de software de acuerdo con la forma de la nube
  • Programación funcional
  • Apache Hadoop
  • R para computación estadística
  • Ágil con desarrollo basado en pruebas.
  • Jugar con scala
  • Node.js con Express
  • Concurrencia con actores
  • Websockets
  • Git
  • ZeroMQ es una buena adición, completa con su excelente documentación: ØMQ – The Guide – ØMQ – The Guide
  • HTML5
  • Coffeescript
  • MENOS / SASS
  • AngularJS
  • MongoDB es una buena opción, pero también lo es Cassandra.
  • Moho
  • Diseño de API RESTful
  • OAuth 2.0
  • Tiraría en bases de datos OLAP