Historia del hardware
En 1623, [[Wilhelm Schickard]] construyó la primera calculadora mecánica digital y por lo tanto se convirtió en el padre de la era de la computación. Puesto que su máquina usó técnicas tales como dientes y engranajes desarrollados primero para los relojes, también fue llamada un 'reloj calculador'. Fue puesto en uso práctico por su amigo [[Johannes Kepler]], quien revolucionó la [[astronomía]].
Teoría de la complejidad computacional
Antes de que se realizaran investigaciones en torno a la complejidad de los algoritmos, se crearon los cimientos de esta teoría por varios investigadores. Uno de los aportes más influyentes fue la definición de las máquinas de Turing en 1936, las cuales resultaron ser una noción de computadora muy flexible y robusta. A medida que las computadoras se desarrollaban en los 40's y los 50's, la Máquina de Turing demostró ser el modelo teórico correcto de cómputo.