¿Es posible una era posterior a la programación?

El texto es asombroso .

Una sutileza que creo que la gente extraña es que los lenguajes de programación están hechos para personas, no para computadoras. JavaScript, por ejemplo, está muy lejos de lo que la computadora entiende: se traduce al código de la máquina cuando se ejecuta.

Entonces, hacer esta pregunta es un poco como preguntar por qué los ábacos y otras herramientas de matemática visual no son más populares o por qué los libros ilustrados no son más populares que los libros escritos usando el alfabeto.

Si bien la curva de aprendizaje del alfabeto, las matemáticas y la programación son grandes, y los libros ilustrados, los ábacos y LabView son ejemplos de eso. Pero lo que pasa con la programación es que una vez que ha pasado el tiempo para aprender programación (o matemáticas o inglés), aprende que es una herramienta extremadamente expresiva y versátil que puede expresar una gran variedad de cosas de una manera muy exacta.

De hecho, es tan bueno que una vez que estás acostumbrado, puedes trabajar tan rápido en él que las herramientas visuales están en el camino. Incluso en el caso de un lenguaje que es tan simple como HTML, que en realidad PUEDE visualizarse con editores WYSIWYG como DreamWeaver, la mayoría de los profesionales y aficionados avanzados tienden a pasar una cantidad abrumadora de su tiempo en la parte textual de la aplicación.

Entonces no. Hemos tenido matemáticas durante miles de años, tendremos programación durante bastante tiempo. Desarrollaremos herramientas de asistencia además de las construcciones de Mathematica y Wolfram Alpha sobre matemáticas, pero no tendremos programación visual de arrastrar y soltar en alguna interfaz bonita, porque esa es solo una mala herramienta para el trabajo .

Sí, es posible, y ya está sucediendo, pero en pequeñas partes.

¿Por qué no estamos ya en una “era de la programación posterior”?

Lo que la gente a menudo subestima es la complejidad del software y el crecimiento explosivo que hemos visto en los últimos 40 años. Cada vez que pensábamos que teníamos cubierto algo nuevo sucedía: la PC, Internet, ahora la revolución móvil que requería un cambio radical en los paradigmas. Básicamente, nos pusimos al día y solo tratamos de mantenernos a flote.

Además de eso, la economía no estaba allí. La creación de una herramienta para la programación posterior hace diez años casi siempre significaba que tenía que apuntar al espacio empresarial, lo que equivale a largos ciclos de ventas y una cultura resistente al cambio. Es difícil convencer a los desarrolladores de que usen herramientas que los volverán obsoletos algún día, especialmente después del colapso de las punto com.

¿Qué ha cambiado ahora?

  • En los últimos años, Internet ha alcanzado una etapa en la que es posible mezclar y combinar servicios de diferentes sitios web para crear aplicaciones que simplemente no era posible incluso hace 5 años. Esto abre un mercado global para servicios bastante especializados como, por ejemplo, procesamiento y carga de imágenes o conversión de video, o bases de datos alojadas, o herramientas que se encuentran encima de eso.
  • Surgió un mercado unificado a través de las redes sociales y las tiendas de aplicaciones para Internet de consumo y aplicaciones móviles que hace que sea tentador para muchas personas crear aplicaciones, creando así una gran demanda de desarrolladores de software. Sin embargo, hay un suministro estancado o incluso reducido de buenos desarrolladores.
  • Además de eso, el ecosistema desarrollador se ha vuelto social. Es mucho más fácil llevar la nueva tecnología a las personas que cuentan para crear una masa crítica de adoptantes. Si se le ocurre una gran idea para automatizar un proceso a través de una API web, puede lanzarlo con un costo de comercialización casi nulo.

Un ejemplo: back-ends móviles

Un área en la que esto está sucediendo en este momento es el espacio de back-end móvil: si observa cómo las personas desarrollan aplicaciones, notará que el back-end es casi siempre el mismo: tiene un modelo de datos central, vinculado con algunas relaciones, luego, deja caer la administración de usuarios, la integración social, el etiquetado, la votación y tal vez las notificaciones automáticas. Eso se repite decenas de miles de veces al año, básicamente cada vez que se crea una nueva aplicación, desperdiciando horas de desarrollador.

Lo que vemos en este momento es que este espacio se está interrumpiendo por completo, donde tiene un par de proveedores que le permiten crear sus back-end en línea o directamente a través de su código del lado del cliente, eliminando la necesidad de cualquier trabajo de back-end mientras Aún conserva las mejores características.

Lo mismo está sucediendo en la parte frontal, eche un vistazo a la aplicación de cocina ( http://appcooker.com ), que es una herramienta de creación de prototipos para aplicaciones iOS que se ejecutan en el dispositivo. Es muy posible que en un futuro cercano una herramienta como esta le permita crear aplicaciones de manera interactiva. Y debido a que todas las otras piezas están en su lugar, no tienen que preocuparse por cosas como el back-end o los almacenes de datos o lo que sea, y solo pueden enfocarse en el lado del cliente.

Divide y vencerás, escala de Internet.

Personalmente, creo que veremos un crecimiento explosivo en los próximos 5 a 10 años para las empresas que eliminen la dificultad del proceso de desarrollo y la pongan en manos de usuarios finales calificados. Solo piense en todas las aplicaciones empresariales que deben introducirse en el siglo XXI. Hay grandes mercados tan listos para la interrupción.