¿Cómo hacemos que las máquinas nos obedezcan?

CuriosaMente
23 Sept 201806:32

Summary

TLDRThe video explores the history and evolution of programmable machines, from ancient myths and early automata to modern computers and artificial intelligence. It highlights key inventions, including Heron's automaton, the Jacquard loom, and the development of computer programming languages from assembly language to high-level languages like FORTRAN, Logo, and Python. The video also introduces a free programming course offered by 'Vlad' to teach basic coding skills, including JavaScript, HTML, and algorithms, enabling users to create games, projects, and even robots.

Takeaways

  • 📜 From ancient mythology, humans have imagined devices that obey their orders, like the golden woman in Greek mythology or mechanical statues aiding the Greek god of invention.
  • 🤖 Today, we have industrial robots and computers that perform complex tasks like directing space rockets and creating virtual worlds for gaming.
  • 📋 These machines require a set of instructions, or a program, to perform their tasks.
  • 🛠️ Heron of Alexandria, a Greek inventor from around 60 AD, created a cart that moved on stage using a weight and string mechanism, representing an early programming language.
  • 📚 In 800 AD, the Banu Musa brothers wrote 'The Book of Ingenious Devices', describing self-refilling oil lamps and early music boxes, showcasing another form of programming.
  • 👗 In 1801, the Jacquard loom used punched cards to create fabric patterns, a system later used in mechanical computers proposed by Charles Babbage.
  • 💾 Herman Hollerith used punched cards for the 1890 New York census, leading to the formation of IBM.
  • 🖥️ The first programmable electronic computers, called Colossus, were used to decode secret messages during WWII.
  • 🐞 The term 'bug' in programming originated when a moth caused an error in the Mark II computer in 1947.
  • 🔢 Early computers were programmed using machine code, a low-level language, which evolved into assembly language and eventually high-level languages like FORTRAN, LOGO, and modern ones like C++, Python, SQL, and PHP.

Q & A

  • What is the significance of the golden woman in the context of the script?

    -The golden woman refers to a mythological creation that obeys human commands, symbolizing early human imagination of machines that could be controlled by humans.

  • What did Heron of Alexandria create that could be considered the first programming language in history?

    -Heron of Alexandria created a carriage that could move and change direction at pre-defined distances using a weight and a system of ropes and nails, which can be seen as the first programming language.

  • What is the 'Book of Ingenious Devices' and what does it describe?

    -The 'Book of Ingenious Devices' is a work by the Banu Musa brothers, which describes various mechanical devices, including a self-filling oil lamp and early music boxes, that operate through the arrangement of protrusions on cylinders.

  • What was the significance of the Jacquard loom in the history of programmable machines?

    -The Jacquard loom, invented in 1801, used punched cards to create designs in fabrics, representing a significant step towards truly programmable machines.

  • Who is considered the first computer programmer in history and why?

    -Ada Lovelace is considered the first computer programmer because she wrote an algorithm for Charles Babbage's Analytical Engine, which could calculate a sequence of Bernoulli numbers.

  • What was the role of Herman Hollerith in the development of data storage?

    -Herman Hollerith used punched cards for storing information during the 1890 U.S. Census, which later influenced the creation of IBM and the development of data storage systems.

  • What are the 'Colossus' computers known for during World War II?

    -The Colossus computers were the first electronic, programmable computers used for decrypting secret codes during World War II.

  • What is the origin of the term 'bug' in programming?

    -The term 'bug' originated when Grace Hopper, a programmer, found a moth interfering with a program in the Mark II computer, and the term 'bug' has been used for programming errors ever since.

  • What is the difference between machine code and assembly language?

    -Machine code is a low-level language consisting of sequences of zeros and ones, while assembly language replaces these binary instructions with mnemonic abbreviations that are easier to remember and use.

  • What is FORTRAN and why is it significant?

    -FORTRAN is one of the first high-level programming languages and is significant because it made programming more accessible and comprehensible for humans.

  • What is the purpose of the LOGO programming language and how does it work?

    -LOGO is an educational programming language that uses a series of instructions to make a 'turtle' move in various directions to draw shapes, such as an octagon, providing a visual and interactive way to learn programming concepts.

Outlines

00:00

🤖 Ancient Dreams of Machines

From ancient mythology, humans have imagined devices that obey their commands, such as the golden woman in Norse myths and mechanical statues aiding Hephaestus, the Greek god of invention. Today, we have industrial robots and complex computers that can direct space rockets or create virtual worlds. All these machines require instructions or programs to function. Platforms like Blacks offer nearly 200 courses, including a free programming course to help us understand how to command machines.

05:00

🔧 Early Mechanical Innovations

Hero of Alexandria, a Greek inventor from 60 AD, created a cart that could move in different directions using a weight-driven mechanism, considered the first programming language. In the 800s, the Banu Musa brothers from Persia described self-refilling oil lamps and early music boxes using mechanical programming. In 1801, the Jacquard loom was invented, using punched cards to create patterns, influencing Charles Babbage's design for the Analytical Engine, the first mechanical computer. Ada Lovelace wrote a program for this hypothetical machine, making her the first computer programmer.

🖥 Evolution of Computing

By the late 19th century, punched cards stored data, used by Herman Hollerith for the 1890 New York census, leading to the founding of IBM. The first programmable electronic computers, Colossus, were used to decipher codes in WWII. In 1947, Grace Hopper found a moth causing a malfunction in a computer, coining the term 'bug' for programming errors. Early computers were programmed with machine code, sequences of zeros and ones, which were complex. This led to the creation of assembler languages and later high-level languages like Fortran and Logo, simplifying programming for humans.

💡 Modern Programming Languages

Modern programming languages emerged to handle complex programs. Languages like Fortran, COBOL, BASIC, C++, Python, SQL, and PHP each serve different purposes, from finance to web functionality. These languages enable the creation of applications, video games, and artificial intelligence. Learning platforms offer free programming courses, such as basic programming with JavaScript, HTML, and algorithms, allowing anyone to understand the logic of programming and create projects, games, robots, and electronics.

Mindmap

Keywords

💡Mythology

Mythology refers to a collection of myths, especially those associated with a particular religious or cultural tradition. In the context of the video, mythology is used to illustrate the ancient human imagination of creating devices that obey their commands, such as the golden woman in the Cullen, which is a reference to the mythological automatons from various cultures.

💡Automata

Automata are self-operating machines or devices, often designed to imitate living organisms. The video script mentions Heron of Alexandria's creation of a self-propelled cart as an early example of an automaton, which is significant as it represents one of the first instances of programming in history.

💡Programming

Programming is the process of creating a set of instructions that tell a machine what to do. The video emphasizes the importance of programming in making machines obey human commands, from ancient automatons to modern computers and robots.

💡Punched Cards

Punched cards are a means of data storage that were used in early computing to input instructions into machines. The video mentions the Jacquard loom and the pianola as examples of machines that used punched cards to create patterns and melodies, respectively.

💡Charles Babbage

Charles Babbage was an English mathematician and engineer known for his designs of the first mechanical computers. The video references his Analytical Engine, which, although never built, laid the groundwork for modern computers and required programming.

💡Ada Lovelace

Ada Lovelace is considered the first computer programmer due to her work on Babbage's Analytical Engine. She wrote an algorithm intended to calculate Bernoulli numbers, which is a significant milestone in the history of programming.

💡IBM

International Business Machines (IBM) is a multinational technology company. The video mentions its origins with Herman Hollerith, who used punched cards for the 1890 U.S. Census, which eventually led to the formation of IBM.

💡Machine Code

Machine code is a low-level programming language that consists of binary numbers (0s and 1s) that a computer's CPU can understand directly. The video describes how early computers were programmed using machine code, which is complex and difficult to learn.

💡Assembly Language

Assembly language is a low-level programming language that replaces binary machine code with more human-readable mnemonics. The video explains that assembly language was invented to simplify the programming process by using abbreviations instead of binary sequences.

💡High-Level Languages

High-level languages are programming languages that are easier for humans to understand and use. The video introduces FORTRAN as one of the first high-level languages, which was used to teach programming and is still in use today.

💡Logo

Logo is an educational programming language that uses a 'turtle' graphic to draw shapes and patterns based on a series of commands. The video uses Logo as an example to illustrate how programming languages can be used to create visual art and teach programming concepts.

💡Variables

In programming, a variable is a named storage location that holds some value. The video mentions variables as a fundamental part of programming languages, used to store and manipulate data, such as counting the number of sides a 'turtle' has drawn in Logo.

💡Operators

Operators in programming are symbols or keywords that perform operations on variables or values. The video uses the example of a conditional operator to change the program's behavior based on the value of a variable, such as repeating a drawing loop until a certain condition is met.

💡Loops

Loops are programming structures that allow code to be executed repeatedly. The video explains how loops can be used to repeat actions, such as the drawing of an octagon in Logo, until a specified condition is met.

💡Robolab

Robolab is a graphical programming interface used for programming LEGO Mindstorms robots. The video mentions Robolab as an example of a more accessible programming environment for creating robotic applications.

💡COBOL

COBOL, or Common Business-Oriented Language, is a programming language designed for business applications. The video notes COBOL as an example of a specialized language, highlighting the diversity of programming languages for different purposes.

💡BASIC

BASIC, or Beginner's All-purpose Symbolic Instruction Code, is a general-purpose programming language known for its ease of use. The video mentions BASIC as a language that popularized programming in the 1980s with its simple syntax and approachability.

💡C++

C++ is a high-performance programming language that extends the capabilities of C and adds features such as object-oriented programming. The video includes C++ as an example of a modern programming language that adds functionality to various applications, including web development.

💡Python

Python is a high-level, interpreted programming language known for its readability and ease of learning. The video mentions Python as one of the languages that have become popular for a wide range of applications, including web development and artificial intelligence.

💡SQL

SQL, or Structured Query Language, is a domain-specific language used in programming and designed for managing data held in a relational database management system. The video includes SQL as an example of a language that is essential for database operations.

💡PHP

PHP, or Hypertext Preprocessor, is a server-side scripting language designed for web development. The video mentions PHP as a language that adds functionality to web applications, allowing for dynamic content and interactions.

💡Artificial Intelligence

Artificial Intelligence (AI) refers to the simulation of human intelligence in machines that are programmed to think and act like humans. The video concludes by mentioning AI as a field where programming is applied to create intelligent systems and behaviors.

Highlights

Ancient mythologies imagined devices that obeyed human commands, like the golden woman in the Cullen tale or mechanical statues assisting the Greek god of invention.

We now have at our service not only industrial robots but also computers capable of complex tasks such as directing space rockets or offering us virtual worlds for entertainment.

An online learning platform offers nearly 200 courses, including a free programming course that teaches how to make machines obey us.

Heron of Alexandria, a Greek inventor from 60 AD, created a cart that could move and change direction at pre-defined distances using a weight and a system of ropes and nails.

The way the rope was wound constituted the program of the automaton, which could be considered the first programming language in history.

In 800 AD, the Banu Musa brothers described self-filling oil lamps and early music boxes in their book 'Book of Ingenious Devices', which used a system of pins to create melodies.

The Jacquard loom, invented in 1801, used punched cards to create patterns in fabrics, a system later adopted by the pianola for producing melodies.

Charles Babbage proposed a similar punched card system for his Analytical Engine, the first mechanical computer that was never built.

Ada Lovelace is considered the first computer programmer for writing a program for the hypothetical Analytical Engine to calculate Bernoulli numbers.

Herman Hollerith used punched cards for storing information during the 1890 New York census, which led to the creation of IBM.

The first electronic, programmable computers, known as Colossus, were used to decrypt secret codes during World War II.

The term 'bug' in programming originated from an incident where a moth was found interfering with a program in a computer.

Early computers were programmed in machine code, a low-level language consisting of sequences of zeros and ones.

Assembly language was invented to simplify programming by replacing machine code with mnemonic abbreviations.

As program complexity grew, higher-level languages like FORTRAN were created to make programming more comprehensible for humans.

LOGO is an educational programming language that uses commands to make a turtle draw shapes and patterns.

Programming languages use variables, operators, and control structures like loops to change program behavior based on conditions.

There are many programming languages, such as ROBOLAB for LEGO Mindstorms robots, COBOL for finance, and BASIC for ease of use.

Languages like C++, Python, SQL, and PHP have been developed to add functionality to the web and enable the creation of applications and games.

An online course is available for learning basic programming, JavaScript, HTML, algorithms, and logic behind programming games, projects, and even robots and electronics.

Transcripts

play00:00

desde la mitología antigua los seres

play00:02

humanos han imaginado aparatos que

play00:03

obedecen sus órdenes como la mujer hecha

play00:06

de oro que aparece en el cullen a la

play00:07

nórdica o las estatuas mecánicas que

play00:10

auxiliaban a efecto el dios griego de la

play00:12

invención ahora tenemos a nuestro

play00:14

servicio no solo robots industriales

play00:16

sino computadoras que pueden hacer

play00:18

tareas muy complejas como dirigir

play00:20

cohetes espaciales o ofrecernos mundos

play00:22

virtuales donde podemos jugar a nuestro

play00:24

gusto

play00:25

todas estas máquinas necesitan una serie

play00:27

de instrucciones un programa para hacer

play00:30

lo que necesitamos blacks y la

play00:33

plataforma online de aprendizaje que te

play00:35

ofrece casi 200 cursos entre ellos uno

play00:38

gratuito de programación presenta cómo

play00:41

hacemos que nos obedezcan las máquinas

play00:44

[Música]

play00:49

herón de alejandría conocido inventor

play00:51

griego del año 60 creó un carro que

play00:54

podía moverse en un escenario cambiando

play00:56

de dirección a distancias predefinidas

play00:58

su fuente de propulsión era una pesa que

play01:01

colgaba y jalaba un par de cuerdas

play01:03

enrolladas entre una serie de clavos

play01:05

incrustados en el eje de manera tal que

play01:07

mientras se desenrolla va el carro podía

play01:10

avanzar girar hacia ambos lados o ir en

play01:13

reversa la manera en la que se enrollaba

play01:15

la cuerda constituía el programa del

play01:18

autómata se podría decir que es el

play01:20

primer lenguaje de programación de la

play01:23

historia en el año 800 los hermanos

play01:25

bannu musa persas escribieron el libro

play01:28

de los mecanismos ingeniosos donde

play01:30

describen aparatos como una lámpara de

play01:32

aceite que se rellena sola o las

play01:35

primeras cajitas musicales éstas

play01:37

funcionan con cilindros cuyas

play01:39

protuberancias pulsan láminas metálicas

play01:41

que suenan con diferentes notas para

play01:43

crear melodías disponer el orden de las

play01:46

protuberancias constituye otro ejemplo

play01:48

de programación fue hasta 1801 cuando se

play01:52

inventó una máquina verdaderamente

play01:54

y programable el telar de yakarta usaba

play01:58

tarjetas perforadas para crear diseños

play02:00

en los tejidos la pianola usa un sistema

play02:02

similar para producir melodías ese mismo

play02:05

sistema de tarjetas perforadas fue el

play02:07

propuesto por charles babbage para dar

play02:09

instrucciones a su máquina analítica la

play02:12

primera computadora mecánica que nunca

play02:15

llegó a construirse eso no impidió que

play02:18

el doble se escribiera un programa para

play02:20

la computadora hipotética un algoritmo

play02:22

capaz de calcular una secuencia de los

play02:25

números de werniul y por eso lovelace es

play02:28

considerada la primera programadora de

play02:31

computadoras de la historia para finales

play02:33

del siglo 19 las tarjetas perforadas se

play02:36

usaban como medio para guardar

play02:37

información herman hollerith empresario

play02:40

especializado en estadísticas las usó

play02:42

para el censo de nueva york- de 1890

play02:45

thomas watson se apropió de la empresa

play02:48

de hollywood y le puso por nombre

play02:50

international business machines

play02:52

ibm las primeras computadoras

play02:55

electrónicas programables fueron las

play02:57

llamadas colossus se usaban para

play03:00

descifrar códigos secretos durante la

play03:02

segunda guerra mundial

play03:03

en 1947 mientras trabajaba en una

play03:06

computadora marc 2

play03:08

aiken la programadora gris marengo

play03:10

perdió algo que no funcionaba buscando

play03:14

entre los cables se encontró un

play03:16

una mariposa interfería con su programa

play03:19

dicho en inglés se dice box y desde

play03:22

entonces a los errores de programación

play03:24

se les llama así box en sus inicios las

play03:28

computadoras se debían programar en el

play03:30

lenguaje de interruptores apagados y

play03:32

encendidos secuencias de ceros y unos

play03:34

este lenguaje se llama código máquina y

play03:38

se clasifica como lenguaje de bajo nivel

play03:40

es tremendamente complicado de aprender

play03:43

para facilitar el trabajo y ya gracias

play03:46

al uso de teclados y monitores

play03:47

electrónicos se inventó el lenguaje

play03:50

ensamblador en el que se reemplazaban

play03:52

las instrucciones expresadas en

play03:54

secuencias de unos y ceros por

play03:56

abreviaturas en inglés era más o menos

play03:58

lo mismo

play03:59

con comandos más fáciles de recordar

play04:01

finalmente mientras más crecía la

play04:03

complejidad de los programas se hizo

play04:05

necesario crear lenguajes más

play04:07

comprensibles para los humanos se les

play04:09

llama lenguajes de tercera generación o

play04:12

lenguajes de alto nivel el primero de

play04:15

estos lenguajes se llamó fortran uno de

play04:18

los lenguajes de alto nivel más usados

play04:20

para enseñar programación se llama logo

play04:23

en él se escribe una serie de

play04:25

instrucciones que hacen que una

play04:26

tortuguita se mueva en cualquier

play04:28

dirección y haga dibujos le podemos

play04:30

decir que avance 100 unidades que rote

play04:33

45 grados y avance otras 100 unidades y

play04:36

que lo haga 8 veces dibujamos un

play04:38

octágono además de órdenes o comandos un

play04:42

lenguaje de programación usa variables

play04:44

espacios con nombre que almacenan algún

play04:47

valor por ejemplo podemos usar una

play04:49

variable para contar cuántos lados ha

play04:51

dibujado la tortuga

play04:53

otro elemento son los operadores como y

play04:56

que nos sirven para cambiar la conducta

play04:58

del programa dependiendo del valor de

play05:00

una variable por ejemplo este programa

play05:02

hace que la tortuga avance poco a poco y

play05:05

que se repita el ciclo

play05:06

hasta que el número de pasos sea igual a

play05:08

10 hay muchos elementos más operadores

play05:12

volea nos sus rutinas funciones bucles y

play05:16

hay muchos lenguajes de programación el

play05:18

que se usa para programar los robots que

play05:20

se hacen con lego mindstorms usa una

play05:23

interfaz gráfica y se llama robolab pero

play05:25

hay más serios como el cobol

play05:27

especializado en finanzas o el basic un

play05:30

lenguaje multipropósito con énfasis en

play05:32

la facilidad de uso que popularizó la

play05:34

programación en los años 80 más tarde

play05:37

surgiría el c plus plus python u otros

play05:40

que añaden funcionalidad a la web como

play05:42

sql y php con todos ellos es posible

play05:47

programar útiles aplicaciones y

play05:49

divertidos videojuegos y ahora hasta

play05:51

inteligencias artificiales y tú los

play05:54

puedes aprender curiosamente si quieres

play05:58

un curso de programación básica

play06:00

totalmente gratis

play06:01

vlad si lo tiene visita el link que te

play06:04

dejamos en la descripción programa desde

play06:06

cero domina javascript

play06:08

entiende html y aprende de algoritmos

play06:11

entenderás la lógica del

play06:13

como piensan los programadores y cómo

play06:15

programar juegos proyectos y hasta

play06:18

robots y electrónica

Rate This

5.0 / 5 (0 votes)

相关标签
Programming HistoryFree CourseAIRoboticsAncient InventionsCoding BasicsOnline LearningTechnologyWeb DevelopmentFor Beginners
您是否需要英文摘要?