Cómo construir un programa de ordenador desde cero? Cuáles son todas las cosas que necesitas (programas, conocimientos, herramientas, costes, etc…)

Para los estándares actuales, ya no hay "desde cero".

Verás, "desde cero" significa programar un ordenador con 1's y 0's. Eso es el equivalente a construir herramientas a partir de piedras.

La gente que empezó con 1's y 0's descubrió una manera de hacer las cosas más fáciles, construyendo los primeros lenguajes ensambladores. Eso es el equivalente a flechas y lanzas. Y nuestra generación heredó eso.

La siguiente generación heredó el lenguaje ensamblador y, basándose en él, construyó lenguajes de alto nivel. Eso es el equivalente a las herramientas de metal. Para entonces, construir herramientas de piedra quedó obsoleto.

Por supuesto, las ciencias de la computación son más recientes y evolucionaron más rápido que nada, así que la gente que programaba en 0 y 1 no sólo sigue viva, sino que es bastante joven, teniendo en cuenta que fueron pioneros.

Pero dudo que alguno de ellos defienda que alguien empiece por 0 y 1. Hoy todo el mundo empieza por un lenguaje de programación de alto nivel. Y al hacerlo, no estamos empezando "desde cero".

Los lenguajes de programación son herramientas. También lo son las bibliotecas. Si tu enfoque es construir más/nuevas/mejores herramientas, (¡no hay nada malo en ello!), podrías considerar volver a los 0 y 1, pero dudo que alguien te lo sugiera.

Pero, por otro lado, si lo que quieres es construir un programa para el usuario final, céntrate en el programa y haz uso de las herramientas que tienes disponibles. No tiene sentido reinventar la rueda. No ves a un carpintero forjando sus propias herramientas de acero por aquello de "hacerlo desde cero".

Ya no hay "desde cero" en informática. Hemos evolucionado y hay que agradecer a aquellos genios que realmente lo tuvieron difícil con los 1's y 0's que realmente nos allanaron el camino, y gracias a los cuales hoy tenemos el privilegio de programar con lenguajes de alto nivel.

¡Aquí tenéis, chicos! No hay escuela como la vieja escuela!