-
Primeros Programas de Computadora
En 1945, con el desarrollo de la ENIAC (Electronic Numerical Integrator and Computer) en la Universidad de Pensilvania, se comenzaron a desarrollar los primeros programas de computadora.
Metodologías predominantes: Programación manual.
Lenguajes relevantes: Lenguaje máquina y ensamblador.
Desafíos: Programación directa en hardware; ausencia de abstracciones.
Figura destacada: Alan Turing – Fundador de la computación teórica con la máquina de Turing.
Categoría: Tecnológico -
Creación de FORTRAN
Fortran se convirtió en el primer estándar de lenguaje informático. Ayudó a abrir las puertas a la informática moderna y se considera uno de los productos de software más influyentes de la historia. Metodologías predominantes: Programación estructurada incipiente.
Lenguajes relevantes: FORTRAN
Desafíos: Necesidad de lenguajes de alto nivel para facilitar la programación científica.
Figura destacada: John Backus – Líder del equipo que desarrolló FORTRAN
Categoria: Lenguaje de programación -
Surgimiento de COBOL
COBOL fue desarrollado por un consorcio de organizaciones gubernamentales y empresariales llamado Conferencia sobre Lenguajes de Sistemas de Datos, que se formó en 1959
Metodologías predominantes: Desarrollo orientado a procesos comerciales.
Lenguajes relevantes: COBOL (impulsado por Grace Hopper).
Desafíos: Facilitar la programación para aplicaciones de negocios.
Figura destacada: Grace Hopper – Pionera en la creación de COBOL y del primer compilador.
Categoría: Lenguaje de Programación -
Conferencia de Ingeniería de Software de la OTAN
Las Conferencias de Ingeniería de Software de la OTAN se celebraron en 1968 y 1969. el objetivo era definir las mejores prácticas para el desarrollo de software basadas en la aplicación de principios de ingeniería. Metodologías predominantes: Desarrollo de sistemas operativos modulares.
Lenguajes relevantes: B (precursor de C).
Desafíos: Necesidad de sistemas operativos portables y eficientes.
Figura destacada: Ken Thompson – Co-creador de UNIX,
Categoria: Metodológico -
Modelo en Cascada
El modelo de cascada es un método de gestión de proyectos, en el que el proyecto se divide en distintas fases secuenciales, donde el equipo puede pasar a la siguiente fase sólo cuando se haya completado la anterior. Metodologías predominantes: Programación estructurada.
Desafíos: Desarrollar un lenguaje eficiente y portable para sistemas operativos.
Figura destacada: Winston Royce, propone el modelo en cascada
Categoría: Metodológico -
Creación del Lenguaje C
El lenguaje C fue desarrollado por Dennis Ritchie en los laboratorios Bell de ATT, para construir utilidades que se ejecutaban en el sistema operativo UNIX. Metodologías predominantes: Programación estructurada.
Lenguajes relevantes: C
Desafíos: Desarrollar un lenguaje eficiente y portable para sistemas operativos.
Figura destacada: Dennis Ritchie – Creador del lenguaje C, fundamental para el desarrollo de software de sistemas.
Categoria: Lenguaje de Programación -
Estándar ANSI C
El estándar ANSI C, también conocido como C89, es una especificación que define la sintaxis, semántica y funcionalidades básicas del lenguaje de programación C. Metodologías predominantes: Programación orientada a objetos.
Lenguajes relevantes: C++, Ada.
Desafíos: Manejo de la complejidad en sistemas grandes.
Figura destacada: Bjarne Stroustrup – Creador de C++, combinando programación estructurada y orientada a objetos
Categoría: Lenguaje de Programación -
Lanzamiento de AmigaOS
AmigaOS es el nombre que recibe el conjunto de la familia de gestores de ventanas y ROMs que incluían por defecto los ordenadores personales Commodore Amiga como sistema operativo. Metodologías predominantes: Desarrollo de software basado en componentes.
Lenguajes relevantes: Perl, Objective-C.
Deafíos: Automatización de tareas y procesamiento de texto.
Figura destacada: Larry Wall – Creador de Perl, facilitando la manipulación de texto y la administración de sistemas.
Cate -
Creación de Python
Python comenzó en principio como un proyecto de afición, la primera versión se publicó en 1991. Dicha versión ya incluía buenas características, como algunos tipos de datos y funciones para la gestión de errores. Metodologías predominantes: Desarrollo rápido de aplicaciones.
Lenguajes relevantes: Python.
Desafíos: Necesidad de un lenguaje sencillo y legible para diversas aplicaciones.
Figura destacada: Guido van Rossum – Creador de Python
Categoría: Lenguaje de Programación -
Nacimiento de Java y JavaScript
Java fue creado por Sun Microsystems, mientras que JavaScript fue creado por Brendan Eich de Netscape, con el objetivo de agregar interactividad a las páginas web. Metodologías predominantes: Desarrollo web y orientado a objetos.
Lenguajes relevantes: Java (James Gosling), JavaScript (Brendan Eich), PHP.
Desafíos: Desarrollo de aplicaciones web interactivas y multiplataforma.
Figura destacada: James Gosling – Creador de Java.
Categoría: Lenguaje de Programación -
Manifiesto Ágil
Se publica el Manifiesto Ágil, promoviendo valores y principios para el desarrollo de software que enfatizan la colaboración, la flexibilidad y la entrega continua. Metodologías predominantes: Desarrollo ágil (Manifiesto Ágil).
Lenguajes relevantes: C#, Ruby.
Desafíos: Adaptación rápida a cambios en requisitos y mejora de la colaboración en equipos.
Figura destacada: Kent Beck – Coautor del Manifiesto Ágil y promotor de Extreme Programming.
Categoría: Metodológico -
Popularización de Git y GitHub
La adopción de Git y la creación de GitHub transforman la colaboración en proyectos de software, facilitando el control de versiones y el trabajo en equipo. Metodologías predominantes: Desarrollo basado en microservicios.
Lenguajes relevantes: Go (desarrollado por Robert Griesemer, Rob Pike y Ken Thompson).
Desafíos: Escalabilidad y eficiencia en sistemas distribuidos.
Figura destacada: Ken Thompson – Co-creador de Go.
Categoría: Herramienta -
Auge de DevOps
Se refiere al creciente interés y adopción de las prácticas y filosofías de DevOps, que buscan integrar el desarrollo de software (Dev) y las operaciones de TI (Ops) para una entrega más rápida, fiable y eficiente de productos de software. Metodologías predominantes: DevOps y entrega continua.
Lenguajes relevantes: Swift (Apple), Rust.
Desafíos: Integración y entrega continua, mejora en la seguridad y rendimiento de aplicaciones.
Figura destacada: Chris Lattner.
Categoría: Metodológico -
Introducción de Docker
Docker es una plataforma de código abierto que permite a los desarrolladores crear, implementar y ejecutar aplicaciones en contenedores. Los contenedores Docker son paquetes autónomos que incluyen la aplicación, las bibliotecas y dependencias. Metodologías predominantes: Desarrollo basado en contenedores y orquestación.
Lenguajes relevantes: Kotlin, TypeScript.
Desafíos: Gestión de contenedores y aplicaciones escalables
Figura destacada: Brendan Burns.
Categoría: Herramienta -
Lanzamiento de GitHub Copilot
GitHub, en colaboración con OpenAI, presenta Copilot, una herramienta de autocompletado de código basada en inteligencia artificial que asiste a los desarrolladores en tiempo real. Metodologías predominantes: Programación asistida por IA.
Lenuajes relevantes: Python, JavaScript.
Desafíos: Integración de herramientas de IA en el desarrollo de software.
Figura destacada: Sam Altman – CEO de OpenAI, impulsando herramientas como GitHub Copilot.
Categoría: Herramienta -
Programación sin Código
La inteligencia artificial permite a personas sin conocimientos técnicos crear aplicaciones mediante instrucciones en lenguaje natural, marcando una nueva era en el desarrollo de software. Metodologías predominantes:Desarrollo sin código y programación asistida por inteligencia artificial (IA)
Lenguajes de programación relevantes:Python, JavaScript, y lenguajes visuales no-code
Figura(s) importante(s) y:Demis Hassabis (CEO de DeepMind) y Sam Altman (CEO de OpenAI)
Categoría: Tecnológico