×

Nous utilisons des cookies pour rendre LingQ meilleur. En visitant le site vous acceptez nos Politique des cookies.

image

CuriosaMente - Videos Interessantes, ¿Cómo hacemos que las máquinas nos obedezcan?

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

Desde la mitología antigua los seres humanos han imaginado aparatos que obedecen sus órdenes.

Como la mujer hecha de oro que aparece en el Kalevala nórdico, o las estatuas mecánicas

que auxiliaban a Hefesto, el dios griego de la invención. Ahora tenemos a nuestro servicio

no sólo robots industriales, sino computadoras que pueden hacer tareas muy complejas como

dirigir cohetes espaciales u ofrecernos mundos virtuales donde podemos jugar a nuestro gusto.

Todas estas máquinas necesitan una serie de instrucciones, un “programa” para hacer

lo que necesitamos. Platzi, la plataforma online de aprendizaje

que te ofrece casi 200 cursos, entre ellos uno gratuito de programación, presenta…

¿Cómo hacemos que nos obedezcan las máquinas? Herón de Alejandría, conocido inventor griego

del año 60, creó un carro que podía moverse en un escenario, cambiando de dirección a

distancias predefinidas. Su fuente de propulsión era una pesa que colgaba y jalaba un par de

cuerdas enrolladas entre una serie de clavos incrustados en el eje de manera tal que, mientras

se desenrollaba, el carro podía avanzar, girar hacia ambos lados o ir en reversa. La

manera en la que se enrollaba la cuerda constituía el programa del autómata: se podría decir

que es el primer lenguaje de programación de la historia.

En el año 800, los hermanos Banu Musa, persas, escribieron el “Libro de los mecanismos

ingeniosos” donde describen aparatos como una lámpara de aceite que se rellena sola,

¡o las primeras cajitas musicales! Éstas funcionan con cilindros cuyas protuberancias

pulsan láminas metálicas que suenan con diferentes notas para crear melodías. Disponer

el orden de las protuberancias constituye otro ejemplo de programación.

Fue hasta 1801 cuando se inventó una máquina verdaderamente útil y programable: el “Telar

de Jacquard” usaba tarjetas perforadas para crear diseños en los tejidos. La pianola

usa un sistema similar para producir melodías. Ese mismo sistema de tarjetas perforadas fue

el propuesto por Charles Babbage para dar instrucciones a su Máquina Analítica, la

primera computadora mecánica… que nunca llegó a construirse. Eso no impidió que

Ada Lovelace escribiera un programa para la computadora hipotética: un algoritmo capaz

de calcular una secuencia de los números de Bernoulli. Por eso Lovelace es considerada

la primera programadora de computadoras de la historia.

Para finales del siglo XIX, las tarjetas perforadas se usaban como medio para guardar información.

Herman Hollerith, empresario especializado en estadísticas, las usó para el censo de

Nueva York de 1890. Thomas Watson se apropió de la empresa de Hollerith y le puso por nombre

International Business Machines, o IBM… Las primeras computadoras electrónicas programables

fueron las llamadas Colossus: se usaban para descifrar códigos secretos durante la Segunda

Guerra Mundial. En 1947, mientras trabajaba en una computadora Mark II Aiken, la programadora

Grace Murray Hopper, vio algo que no funcionaba. Buscando entre los cables se encontró un

bicho: una mariposa interfería con su programa. “Bicho” en inglés se dice “bug”,

y desde entonces, a los errores de programación se les llama así. “Bugs”.

En sus inicios, las computadoras se debían programar en el lenguaje de interruptores

“apagados y encendidos”: secuencias de ceros y unos. Este lenguaje se llama “código

máquina”, y se clasifica como lenguaje de bajo nivel ¡es tremendamente complicado

de aprender! Para facilitar el trabajo, y ya gracias al uso de teclados y monitores

electrónicos, se inventó el “lenguaje ensamblador”, en el que se reemplazaban

las instrucciones expresadas en secuencias de unos y ceros por abreviaturas en inglés.

Era más o menos lo mismo, pero con comandos más fáciles de recordar. Finalmente, mientras

más crecía la complejidad de los programas, se hizo necesario crear lenguajes más comprensibles

para los humanos: se les llama lenguajes de tercera generación o “lenguajes de alto

nivel”. El primero de estos lenguajes se llamó FORTRAN.

Uno de los lenguajes de alto nivel más usados para enseñar programación se llama LOGO.

En él, se escribe una serie de instrucciones que hacen que una tortuguita se mueva en cualquier

dirección y haga dibujos. Le podemos decir que avance 100 unidades… que rote 45 grados

y avance otras 100 unidades… y que lo haga 8 veces ¡dibujamos un octágono!

Además de órdenes o “comandos”, un lenguaje de programación usa variables: espacios con

nombre que almacenan algún valor. Por ejemplo, podemos usar una variable para contar cuántos

lados ha dibujado la tortuga. Otro elemento son los operadores, como “if”,

que nos sirven para cambiar la conducta del programa dependiendo del valor de una variable.

Por ejemplo, este programa hace que la tortuga avance poco a poco, y que se repita el ciclo

hasta que el número de pasos sea igual a 10.

Hay muchos elementos más: operadores booleanos, subrutinas, funciones, bucles… y hay muchos

lenguajes de programación. El que se usa para programar los robots que se hacen con

Lego Mindstorms usa una interfaz gráfica y se llama RoboLab. Pero hay más serios,

como el COBOL, especializado en finanzas… o el BASIC, un lenguaje multipropósito con

énfasis en la facilidad de uso que popularizó la programación en los años 80. Más tarde

surgirían C++ (Ce plus plus) Python, u otros que añaden funcionalidad a la web como SQL

y PHP. Con todos ellos es posible programar útiles aplicaciones y divertidos videojuegos,

y ahora, hasta Inteligencias Artificiales. ¡Y tú los puedes aprender!

¡Curiosamente! Si quieres un curso de programación básica

totalmente gratis ¡Platzi lo tiene! Visita el link que te dejamos en la descripción.

Programa desde cero, domina Javascript, entiende HTML y aprende de algoritmos. Entenderás

la lógica del código, cómo piensan los programadores y cómo programar juegos, proyectos

y hasta robots y electrónica.

Learn languages from TV shows, movies, news, articles and more! Try LingQ for FREE

¿Cómo hacemos que las máquinas nos obedezcan? ||||||подчиняются нам ||||||obey Wie können wir Maschinen dazu bringen, uns zu gehorchen? How do we make machines obey us? Comment faire pour que les machines nous obéissent ? Come possiamo fare in modo che le macchine ci obbediscano? Как заставить машины подчиняться нам?

Desde la mitología antigua los seres humanos han imaginado aparatos que obedecen sus órdenes. ||mythology|ancient|||||imagined|||||

Como la mujer hecha de oro que aparece en el Kalevala nórdico, o las estatuas mecánicas |||||золото|||||||||| |||||gold|||||Kalevala|Nordic|||statues|mechanical Like the woman made of gold who appears in the Nordic Kalevala, or the mechanical statues

que auxiliaban a Hefesto, el dios griego de la invención. Ahora tenemos a nuestro servicio |помогали||||||||||||| |helped||Hephaestus||||||invention||||| that aided Hephaestus, the Greek god of invention. Now we have at our service

no sólo robots industriales, sino computadoras que pueden hacer tareas muy complejas como |||industrial||||||||| not only industrial robots but computers that can perform very complex tasks like

dirigir cohetes espaciales u ofrecernos mundos virtuales donde podemos jugar a nuestro gusto. |ракеты|||предложить нам|||||||| |rockets|||offer us|||||||our| direct space rockets or offer us virtual worlds where we can play to our liking.

Todas estas máquinas necesitan una serie de instrucciones, un “programa” para hacer All these machines need a set of instructions, a 'program' to do

lo que necesitamos. Platzi, la plataforma online de aprendizaje what we need. Platzi, the online learning platform

que te ofrece casi 200 cursos, entre ellos uno gratuito de programación, presenta… ||||||||free||| that offers you almost 200 courses, including a free programming course, presents...

¿Cómo hacemos que nos obedezcan las máquinas? Herón de Alejandría, conocido inventor griego |||||||Герон Александрий||||| |||||||Hero||||| How do we make machines obey us? Heron of Alexandria, well-known Greek inventor

del año 60, creó un carro que podía moverse en un escenario, cambiando de dirección a ||||машина|||||||||| ||||car|||||||||| From the year 60, he created a cart that could move on a stage, changing direction at

distancias predefinidas. Su fuente de propulsión era una pesa que colgaba y jalaba un par de |предустановленные||источник||привод|||||висела||тянула||| |predefined||||propulsion|||||was hanging||pulled||| predefined distances. Its propulsion source was a weight that hung and pulled a pair of

cuerdas enrolladas entre una serie de clavos incrustados en el eje de manera tal que, mientras ||||||гвозди||||||||| ||||||nails|||||of|||| ropes rolled between a series of nails embedded in the axle in such a way that, while

se desenrollaba, el carro podía avanzar, girar hacia ambos lados o ir en reversa. La |||||||||||||задний ход| |unrolled||||||||||||reverse| unrolled, the cart could move forward, turn to both sides, or go in reverse. The

manera en la que se enrollaba la cuerda constituía el programa del autómata: se podría decir |||||наматывалась|||||||||| |||||rolled|||constituted||||||| way in which the rope was wound constituted the program of the automaton: it could be said

que es el primer lenguaje de programación de la historia. that it is the first programming language in history.

En el año 800, los hermanos Banu Musa, persas, escribieron el “Libro de los mecanismos |||||Musa|Musa|||||||

ingeniosos” donde describen aparatos como una lámpara de aceite que se rellena sola, |||||||||||заполняется| ingenious|||||||||||fills| ingenious" where they describe devices such as an oil lamp that refills itself,

¡o las primeras cajitas musicales! Éstas funcionan con cilindros cuyas protuberancias |||коробочки|||||цилиндры|| |||little boxes|||||cylinders||protrusions or the first musical boxes! These work with cylinders whose protuberances

pulsan láminas metálicas que suenan con diferentes notas para crear melodías. Disponer |||||||||||располагать they pulse|sheets|metallic||||||||melodies|Arrange They press metal plates that sound different notes to create melodies. Available at

el orden de las protuberancias constituye otro ejemplo de programación. ||||выступы||||| ||||bumps||||| the order of the bumps is another example of programming.

Fue hasta 1801 cuando se inventó una máquina verdaderamente útil y programable: el “Telar |||||||truly|||programmable||Loom It was not until 1801 that a truly useful and programmable machine was invented: the "Loom".

de Jacquard” usaba tarjetas perforadas para crear diseños en los tejidos. La pianola |||||||узоры|||тканях||пьянола |Jacquard|||||||||fabrics||player piano Jacquard" used punched cards to create designs on fabrics. The pianola Жаккард" использовал перфокарты для создания рисунков на тканях. Пианола

usa un sistema similar para producir melodías. Ese mismo sistema de tarjetas perforadas fue uses a similar system to produce melodies. That same punch card system was

el propuesto por Charles Babbage para dar instrucciones a su Máquina Analítica, la |proposed||||||||||| the one proposed by Charles Babbage to give instructions to his Analytical Engine, the

primera computadora mecánica… que nunca llegó a construirse. Eso no impidió que first|||||||to be built|||| first mechanical computer... which was never built. That didn't stop

Ada Lovelace escribiera un programa para la computadora hipotética: un algoritmo capaz ||would write|||for the|||||| Ada Lovelace wrote a program for the hypothetical computer: an algorithm capable of

de calcular una secuencia de los números de Bernoulli. Por eso Lovelace es considerada |||||||||||||considered of calculating a sequence of Bernoulli numbers. That is why Lovelace is considered

la primera programadora de computadoras de la historia. ||programmer|||||

Para finales del siglo XIX, las tarjetas perforadas se usaban como medio para guardar información. |||||||punched||||||| By the end of the 19th century, punched cards were being used as a means of storing information.

Herman Hollerith, empresario especializado en estadísticas, las usó para el censo de ||||||||||перепись населения| Herman|Hollerith||specialized|||||||census| Herman Hollerith, a businessman who specialized in statistics, used them for the census of

Nueva York de 1890. Thomas Watson se apropió de la empresa de Hollerith y le puso por nombre ||||||присвоил|||||||||| ||||||took over|||||Hollerith Corporation||||| New York in 1890. Thomas Watson took over Hollerith's company and renamed it

International Business Machines, o IBM… Las primeras computadoras electrónicas programables ||||International Business Machines||||| International Business Machines, or IBM… The first programmable electronic computers

fueron las llamadas Colossus: se usaban para descifrar códigos secretos durante la Segunda |||Colossus|||||codes|||| were the so-called Colossus: they were used to decipher secret codes during World

Guerra Mundial. En 1947, mientras trabajaba en una computadora Mark II Aiken, la programadora ||||||||||Aiken|| War II. In 1947, while working on a Mark II Aiken computer, the programmer

Grace Murray Hopper, vio algo que no funcionaba. Buscando entre los cables se encontró un |Murray|Hopper|||||||||||| Grace Murray Hopper, saw something that wasn't working. Searching through the wires, she found a Грейс Мюррей Хоппер увидела, что что-то не работает. Порывшись в проводах, она нашла

bicho: una mariposa interfería con su programa. “Bicho” en inglés se dice “bug”, баг||бабочка|вмешивалась||||жук||||| bug||butterfly|was interfering|||||||||bug bug: a butterfly was interfering with his program. “Bicho” in English is called “bug”,

y desde entonces, a los errores de programación se les llama así. “Bugs”. and since then, programming errors have been called that. “Bugs”.

En sus inicios, las computadoras se debían programar en el lenguaje de interruptores ||||||||||||переключатели ||beginnings|||one|they had to||||||switches In its early days, computers had to be programmed in switch language.

“apagados y encendidos”: secuencias de ceros y unos. Este lenguaje se llama “código выключенные||включенные|||||||||| off||on|||||||||| "off and on": sequences of zeros and ones. This language is called "code

máquina”, y se clasifica como lenguaje de bajo nivel ¡es tremendamente complicado |||||language|||||| "machine", and it is classified as a low-level language. It is tremendously complicated

de aprender! Para facilitar el trabajo, y ya gracias al uso de teclados y monitores ||||||||||||клавиатуры||мониторы ||||||||||||keyboards|| to learn! To facilitate the work, and thanks to the use of keyboards and monitors

electrónicos, se inventó el “lenguaje ensamblador”, en el que se reemplazaban |||||ассемблера||||| |||||assembler|||||were replaced electronic, "assembly language" was invented, in which they replaced

las instrucciones expresadas en secuencias de unos y ceros por abreviaturas en inglés. ||||||||||аббревиатуры|| ||expressed||||||||abbreviations|| the instructions expressed in sequences of ones and zeros by abbreviations in English.

Era más o menos lo mismo, pero con comandos más fáciles de recordar. Finalmente, mientras ||||||||команды|||||| ||||||||commands|||||| It was more or less the same, but with commands that were easier to remember. Finally, as

más crecía la complejidad de los programas, se hizo necesario crear lenguajes más comprensibles more|||||||||||languages||understandable the complexity of programs grew, it became necessary to create more comprehensible languages. Чем сложнее становились программы, тем более необходимым становилось создание более понятных языков.

para los humanos: se les llama lenguajes de tercera generación o “lenguajes de alto ||||||languages|||||||

nivel”. El primero de estos lenguajes se llamó FORTRAN. ||||||||FORTRAN

Uno de los lenguajes de alto nivel más usados para enseñar programación se llama LOGO. ||||||||||to teach||||LOGO

En él, se escribe una serie de instrucciones que hacen que una tortuguita se mueva en cualquier ||||||||||||черепашка|||| ||||||||||||little turtle|||| In it, a series of instructions is written that make a little turtle move in any

dirección y haga dibujos. Le podemos decir que avance 100 unidades… que rote 45 grados |||чертежи||||||единиц||поверните| |||||||||||rotate| direction and make drawings. We can tell it to advance 100 units... to rotate 45 degrees. направление и сделать чертежи. Мы можем сказать ему двигаться вперед на 100 единиц... повернуть на 45 градусов.

y avance otras 100 unidades… y que lo haga 8 veces ¡dibujamos un octágono! |||единицы|||||||| |||||||||||octagon and advance another 100 units... and do it 8 times, we draw an octagon!

Además de órdenes o “comandos”, un lenguaje de programación usa variables: espacios con In addition to commands or "commands," a programming language uses variables: spaces with

nombre que almacenan algún valor. Por ejemplo, podemos usar una variable para contar cuántos ||store|some|||||||||| name that stores some value. For example, we can use a variable to count how many

lados ha dibujado la tortuga. Otro elemento son los operadores, como “if”, |||||||||operators|| sides the turtle has drawn. Another element is the operators, like 'if',

que nos sirven para cambiar la conducta del programa dependiendo del valor de una variable. which help us change the behavior of the program depending on the value of a variable.

Por ejemplo, este programa hace que la tortuga avance poco a poco, y que se repita el ciclo |||||||||||||||repeat||

hasta que el número de pasos sea igual a 10. until the number of steps equals 10.

Hay muchos elementos más: operadores booleanos, subrutinas, funciones, bucles… y hay muchos |||||boolean operators|subroutines||loops|||many There are many more elements: boolean operators, subroutines, functions, loops... and there are many

lenguajes de programación. El que se usa para programar los robots que se hacen con programming languages. The one used to program the robots that are made with

Lego Mindstorms usa una interfaz gráfica y se llama RoboLab. Pero hay más serios, Lego|Mindstorms|||interface|||||RoboLab|||| Lego Mindstorms uses a graphical interface and is called RoboLab. But there are more serious ones,

como el COBOL, especializado en finanzas… o el BASIC, un lenguaje multipropósito con ||COBOL|||finances|||BASIC|||multi-purpose|

énfasis en la facilidad de uso que popularizó la programación en los años 80. Más tarde |||||||popularized||||||| emphasis on the ease of use that popularized programming in the 80s. Later

surgirían C++ (Ce plus plus) Python, u otros que añaden funcionalidad a la web como SQL would arise|||||Python||||add|functionality|||||SQL C++ (Ce plus plus), Python, or others that add functionality to the web like SQL

y PHP. Con todos ellos es posible programar útiles aplicaciones y divertidos videojuegos, |PHP||||||||||| and PHP would emerge. With all of them, it is possible to program useful applications and fun video games,

y ahora, hasta Inteligencias Artificiales. ¡Y tú los puedes aprender!

¡Curiosamente! Si quieres un curso de programación básica

totalmente gratis ¡Platzi lo tiene! Visita el link que te dejamos en la descripción. completely free! Platzi has it! Visit the link we left in the description.

Programa desde cero, domina Javascript, entiende HTML y aprende de algoritmos. Entenderás ||||JavaScript|||||||You will understand Program from scratch, master Javascript, understand HTML, and learn about algorithms. You will understand

la lógica del código, cómo piensan los programadores y cómo programar juegos, proyectos the logic of code, how programmers think, and how to program games and projects.

y hasta robots y electrónica. and even robots and electronics.