-
Hola. Bienvenidos a
Python para informática.
-
Hoy veremos el capítulo I.
-
Soy Charles Severance
de la Universidad de Michigan.
-
Soy el autor, y también...
-
su conferencista en línea
para este 1er capítulo del libro.
-
Esta conferencia, como las
diapositivas y el libro, de hecho,
-
son contenido libre,
materiales libres.
-
Tienen licencia de atribución de
Creative Commons,
-
lo mismo que este video.
-
Es importante aclarar
los derechos de autor,
-
por eso los menciono desde el principio.
-
Así que...
si no lo han hecho todavía,
-
por favor, instalen Python.
-
Es necesario, y mejor hacerlo
antes de la conferencia.
-
Podrían verla sin tener Python,
-
pero si lo instalan podrán
probar algunas cosas,
-
e incluso programar algo
en este capítulo.
-
Y así pueden seguirme
teniendo Python en otra ventana.
-
Está en pythonlearn.com/install.php
-
Tiene instrucciones para
MS Windows y Macintosh.
-
Y no está en esta diapositiva,
pero recién cargué...
-
instrucciones en una Raspberry Pie,
-
la nueva y genial computadora
de 25 dólares.
-
Son instrucciones muy sencillas
-
con imágenes de pantalla
-
paso a paso.
-
Diez a quince minutos como máximo.
-
Pueden detenerlas, iniciarlas,
-
bajarlas a su disco duro,
-
los acompańarán en la instalación
de Python, si es necesario,
-
instalar el editor de texto,
si es necesario,
-
y luego correr su primer
programa en Python.
-
Y tendrán que correr
un programa en Python.
-
Así que...
es el mejor momento...
-
para detenerse, hacerlo,
-
luego regresar, ¿les parece?
-
Bueno, regresando a la introducción:
-
las computadoras quieren ser útiles.
-
Están programadas
-
De hecho este es un microprocesador.
-
Es sólo una pieza electrónica.
-
Tiene circuitos y alambres dentro.
-
Y alguien dedicó mucho tiempo de
ingeniería
-
para crearlo
-
de manera que estas
patas de la parte de atrás
-
reciban instrucciones de nosotros,
-
de sistemas operativos,
del disco duro,
-
de la memoria.
-
Las instrucciones entran por aquí
-
y luego salen los resultados.
-
Es como una calculadora
muy programable
-
y nuestro trabajo es
meterle instrucciones.
-
Esta cosa, en cierto sentido,
está diseńada para
-
ser curiosa sobre lo que sigue;
-
Es como si dijera: «Dime: ¿qué
voy a hacer ahora?»
-
«¿Qué quieres hacer ahora?»
-
¿Qué quieres hacer?» Y después otra
vez: ¿qué quieres hacer?»
-
Luego lo hace unas mil
millones de veces por segundo.
-
Eso es la pieza base,
-
pero también pueden pensar,
si tienen una PDA,
-
algo como esto:
-
todos estos botones
-
dicen: ¿qué sigue?
-
Cada uno de ellos es algo
que mendiga mi atención.
-
Algún diseńador de aplicaciones
-
ha creado una aplicación genial
-
que dice: «¡Por favor, úsame!
-
Haz clic en mí.
-
Soy prácticamente nada sin ti
-
Los humanos somos quienes
causamos que
-
las computadoras hagan cosas.
-
Y esta estarĂĄ ahĂ feliz
-
hasta que yo le pida hacer algo
-
Bien... ÂĄEy!
-
Espero que esté bien.
-
Sí, parece estar bien.
-
xxx
-
Entonces, cualquiera puede
usar uno de estos, żno?
-
Dicen que incluso los animales
pueden usar un
-
teléfono inteligente Macintosh.
-
Así que no necesitas ser programador,
-
pero para lograr que este
-
haga lo que tú quieres,
-
necesitas aprender un nuevo lenguaje:
-
el lenguaje de las instrucciones
-
para decirle qué hacer.
-
Eso haremos:
aprender a hablarle a esto.
-
Oye.
-
Porque nos estĂĄ haciendo
una pregunta.
-
Y tenemos que contestarle.
-
Bueno, ÂżquĂŠ es un programador?
-
Un programador es alguien que
-
escribe un programa,
-
es decir un script
o juego de instrucciones
-
que le dicen a uno de estos
-
quĂŠ se supone que debe hacer.
-
Y algunas veces se corre un programa
-
como Moodle, un sistema libre de
gestiĂłn de aprendizaje
-
o Sakai otro sistema libre
de gestiĂłn de aprendizaje.
-
Y algunas veces incluso
te pagan por hacerlo.
-
Algunas veces lo haces gratis.
-
Otras veces te pagan.
-
Otras mĂĄs lo haces para ti.
-
Pero si lo piensas, por
todas estas aplicaciones
-
de mi iPhone,
-
alguien estĂĄ ganando
dinero.
-
QuizĂĄ no tanto para renunciar
a su empleo, pero muchos
-
han podido renunciar
para iniciar compaĂąĂas pequeĂąas.
-
QuizĂĄ no compaĂąĂas gigantes,
sino compaĂąĂas pequeĂąas.
-
Entonces estas personas
que pueden poner aplicaciones
-
dentro de nuestras computadoras
-
son programadores
-
porque ellos entienden
-
la forma de hablar
-
a estas computadoras.
-
Y en parte lo que trato
de hacer es
-
lograr que vayan del modo de pensar
del usuario final,
-
que piensa que esto
es sĂłlo algo en quĂŠ hacer clic
-
al modo de pensar del programador
-
que estĂĄ en el interior
-
que estĂĄ en el interior
-
tratando de salir hacia ustedes.
-
Eso es ir del usuario al programador,
-
ir de afuera hacia adentro.
-
Si pensamos en el mundo
de afuera decimos
-
ÂżQuĂŠ botĂłn van a presionar?
-
Esta es una imagen de eso.
-
Por fuera somos usuarios,
-
presionamos botones,
-
hacemos clic en vĂnculos,
-
presionamos botones
en nuestros telĂŠfonos,
-
etcĂŠtera, etcĂŠtera.
-
Pero lo que en realidad sucede,
-
es que hay una computadora
-
con un montĂłn de software dentro.
-
Tiene dentro datos,
-
redes, otra informaciĂłn.
-
Y el software...
-
es lo que da sentido
a todo eso.
-
AsĂ que en parte lo que
quiero que hagan
-
es dejar de pensar cĂłmo usar
estas cosas desde el exterior
-
y empezar a convertirse
en programadores.
-
Somos alguien por dentro.
-
Estamos con la CPU,
con la memoria,
-
con la conexiĂłn de red.
-
Hacemos cosas pensando
en el usuario,
-
y se las presentamos.
-
ÂżPor quĂŠ ser un programador?
-
Bien, esta clase no es para
convertirlos en programadores,
-
aunque me sentirĂa orgulloso
-
si despuĂŠs de cinco Ăł diez clases
-
se convirtieran en
programadores profesionales.
-
Pero no es el propĂłsito
de esta clase.
-
A veces desean hacer algo.
-
Tienen una hoja de
Excel en el trabajo
-
y los datos no estĂĄn bien.
-
La obtuvieron de alguien mĂĄs
-
y tiene espacios extra
donde no deberĂa tenerlos,
-
o le faltan campos,
-
o deben hacerle algo
que Excel no puede hacer.
-
EstĂĄn estancados y piensan:
-
quiero modificar estos datos
para hacer mi trabajo,
-
pero hacerlo es como
una espina en el zapato.
-
TendrĂa que pasarlos a
un editor de texto,
-
como Microsoft Word,
-
e ir lĂnea por lĂnea
-
para limpiar los datos.
-
Pueden escribir un programa
que haga eso.
-
Ese es el tipo de programas
que haremos.
-
Los programas satisfacen
nuestras necesidades.
-
EstĂĄn dentro de la computadora
para satisfacer nuestras necesidades.
-
Los programadores profesionales
-
tienden a construir cosas
-
para que otras personas las usen.
-
Tienden a crear para
lo que todos los demĂĄs hacen.
-
Pero nosotros haremos
cosas para nosotros.
-
Bien, ÂżquĂŠ es el cĂłdigo?
-
ÂżQuĂŠ es el software?
-
Usamos estas palabras
indistintamente.
-
Un programa
-
En realidad es una secuencia
de instrucciones guardadas.
-
Aprendemos el lenguaje
hablado por esto
-
luego introducimos las
instrucciones
-
una por una.
-
Toma una instrucciĂłn, nos da un resultado
-
y le damos la siguiente.
-
Entonces es una secuencia
de instrucciones guardadas.
-
Pero tambiĂŠn es mĂĄs que eso;
-
es como nuestra creatividad.
-
Si han usado algo de mi software,
-
como mi software de xxx,
-
dediquĂŠ algo asĂ como
-
un mes a escribirlo todo.
-
Y es como si fuera yo.
-
Es mi visiĂłn de cĂłmo
debe funcionar algo genial.
-
Entonces es mĂĄs que lograr
que se hagan las cosas.
-
Implica un sentimiento de
orgullo y logro,
-
especialmente si hacen algo
que otros puedan usar.
-
En realidad creo que
es algo muy creativo.
-
Y es lo que me atrajo
a la programaciĂłn;
-
podĂa apoyarme en las
capacidades de esto
-
y hacer cosas geniales
en beneficio del usuario.
-
Entonces...
-
cĂłdigo,
-
software,
-
un programa.
-
Veamos un ejemplo
no tan tĂŠcnico de eso.
-
Les he puesto un vĂnculo
a YouTube para esto.
-
Es... la Macarena.
-
La Macarena es una canciĂłn
-
que va acompaĂąada
de un baile muy conocido
-
que todos parecen saber
-
o que se aprende rĂĄpido.
-
Entonces voy a parar
-
para que vean la Macarena.
Luego regreso.
-
Bienvenidos otra vez.
-
Espero que lo hayan disfrutado.
-
En cierto sentido lo
que vimos es...
-
un programa.
-
Un programa para seres humanos.
-
QuizĂĄ lo aprendieron en un club
donde les dijeron quĂŠ hacer.
-
Bien, yo puedo enseĂąarles
a bailar la Macarena
-
escribiendo un programa sencillo.
-
Ahora mismo.
-
AquĂ esta mi Macarena:
-
Mientras la mĂşsica suena
-
significa que lo harĂĄn
una y otra vez con el ritmo.
-
Es como las computadoras:
hacen las cosas a un ritmo.
-
A un ritmo de 3 mil millones
de pulsos por segundo.
-
Entonces, haremos esto
varias veces.
-
Y tenemos todo este grupo
de instrucciones
-
que vamos a seguir, ÂżsĂ?
-
Extender la mano izquierda
en alto.
-
Extender la mano derecha
en alto.
-
Voltear la mano izquierda.
-
Voltear la mano derecha.
-
Mano izquierda al hombro derecho.
-
Mano derecha al hombro izquierdo.
-
EtcĂŠtera, etcĂŠtera.
-
Ahora, este pequeĂąo programa
en particular
-
De hecho varios.
-
Quiero que traten de
-
encontrar los errores
-
del programa.
-
Bueno, estos son los
lugares donde hay error.
-
El error es:
-
ÂŤJamĂłnÂť derecho a la nuca,
-
y Mano izquierda ÂŤgolpeÂť
a la derecha,
-
en lugar de ÂŤcaderaÂť.
-
Bueno, si estĂĄn en un bar,
-
toman un jamĂłn,
y golpean a alguien
-
en la parte derecha de la nuca,
-
no es agradable.
-
Bailando al ritmo de la canciĂłn.
-
A estos los llamamos
ÂŤerrores lĂłgicosÂť.
-
Bien, un humano que lea esto
-
dirĂĄ: ÂŤCreo que quisieron
decir âmanoâÂť.
-
Pero una computadora es
mucho mĂĄs literal que la gente.
-
Haremos un par de ejercicios donde
veremos que la gente puede
-
corregir pequeĂąos errores
como este.
-
Pero las computadoras...
no pueden.
-
Entonces tenemos que corregir
estos errores.
-
Debemos decir: ÂŤmano derechaÂť
y ÂŤcaderaÂť en lugar de golpe.
-
Debemos ser explĂcitos.
-
Las computadoras hacen
exactamente lo que les decimos,
-
no lo que queremos decir.
-
Entonces, limpiemos eso.
-
AquĂ hay otro ejemplo:
-
veamos como sale.
-
Deben contar el nĂşmero de veces
que la palabra ÂŤtheÂť
-
aparece en esta oraciĂłn.
-
CuĂŠntenla.
-
La palabra ÂŤtheÂť,
-
ÂżCuĂĄntas veces?
-
Bien. Es su turno.
-
Bueno, aquĂ...
-
Esto no es algo para lo que
los humanos seamos buenos.
-
Les movĂ la oraciĂłn,
toquĂŠ una melodĂa,
-
los confundĂ,
-
les puse una tarjeta
con un payaso
-
en la esquina superior derecha.
-
EtcĂŠtera, etcĂŠtera, etcĂŠtera.
-
Pues resulta que...
-
las computadoras...
-
una vez que les decimos
quĂŠ hacer...
-
son muy buenas para concentrarse.
-
FĂĄcilmente pueden ir de 30 palabras
-
y encontrar la mĂĄs comĂşn,
-
a 3 millones de palabras
-
y encontrar la mĂĄs comĂşn,
-
sin nunca cometer un error.
-
Pero antes debemos darle
un grupo de instrucciones.
-
Entonces, no quiero
que aprendan esto ahora mismo.
-
Pero esto es un programa en Python.
-
Digamos que quiero que
cuenten palabras en archivos.
-
Les digo: ÂŤÂĄHey! SĂŠ programar
en Python.
-
Te enviarĂŠ un correo
-
con un programa
-
SĂłlo mĂŠtelo en Python
-
y contarĂĄ las palabras por ti.
-
ÂżSĂ? Tienes un millĂłn de palabras
-
un millĂłn de lĂneas en un archivo
-
y quieres encontrar la palabra mĂĄs comĂşn.
-
AsĂ que ahĂ va.
-
Te enviarĂŠ este archivo
llamado ÂŤpython words.pyÂť
-
al que dediquĂŠ algĂşn tiempo,
-
es un regalo para tiÂť.
-
Y esto es lo que escribĂ.
-
Les darĂŠ una especie de
resumen de lo que hace:
-
Primero abrirĂĄ y leerĂĄ un archivo.
-
Luego dividirĂĄ las lĂneas en palabras
-
basĂĄndose en los espacios.
-
Luego acumularĂĄ cifras:
-
esta palabra es 1, la siguiente es 2.
-
Eso hace esto, es un bucle
que corre una y otra vez,
-
una para cada palabra.
-
Luego lo que haremos.
-
Luego escribimos otro bucle
-
que va a descubrir
-
cuĂĄl es la palabra mĂĄs comĂşn
-
viendo todos esos pequeĂąos histogramas
-
que acabamos de construir
-
e imprimirĂĄ el resultado al final.
-
Y es lo que puede hacer python words.py
-
LeyĂł clown.txt
-
y nos dice que la palabra ÂŤtheÂť
aparece siete veces.
-
Puede leer otras cosas
-
y descubrir que en otro archivo
-
la palabra ÂŤtoÂť aparece 16 veces.
-
Es algo muy rĂĄpido.
-
Y sĂ, tienen que aprender el lenguaje
-
y decirle quĂŠ hacer,
-
pero una vez que lo hagan,
-
lo harĂĄ con un millĂłn o
mil millones de palabras
-
sin ningĂşn esfuerzo.
-
AsĂ ustedes no tienen que hacer
-
trabajo repetitivo,
-
una vez que aprendan a decirle
a la computadora cĂłmo hacerlo.
-
Siempre empezamos nuestras clases
de programaciĂłn con
-
architectura de hardware.
-
No creo que sea esencial,
-
asĂ que no se emocionen mucho con el tema.
-
Es bueno como terminologĂa,
-
para tener algunas palabras
-
y si alguien dice ÂŤCPUÂť
-
no entren en pĂĄnico.
-
y no entren en pĂĄnico.
-
No quiero convertirlos en
expertos en hardware.
-
SĂłlo que aprendan unas cuantas palabras
-
para que puedan hablar
de lo que sucede dentro.
-
Porque en cierto sentido
vamos a escribir programas
-
para hacer cosas
-
con datos, instrucciones, etc.
-
Entonces,
-
esto es algo de hardware
-
que comprĂŠ apenas
hace un par de semanas
-
y me encanta: es la Raspberry Pi
-
Es una computadora con una sola placa.
-
Tiene almacenamiento en una tarjeta SD.
-
Justo ahĂ.
-
Es el sistema operativo y los datos.
-
Y tiene tanto el microprocesador
como la memoria aquĂ dentro tambiĂŠn.
-
Y se conecta por USB
y HDMI a varias cosas.
-
Y si quieren, en este curso
-
probablemente puedan hacer
-
toda la tarea
-
en una Raspberry Pi.
-
Entonces asĂ se ve el hardware.
-
Es el interior de algo.
-
Normalmente viene en algĂşn tipo de estuche
-
para que no se vea.
-
Y asĂ se ve: con ese color verde,
-
plateado y dorado.
-
Creo que es hermoso.
-
Se necesita mucha ingenierĂa
-
para hacer estas cosas.
-
Entonces podemos hacer un diagrama negro
-
de lo que sucede aquĂ.
-
Y hay alguna terminologĂa:
-
el cerebro de todo...
-
Bueno, dibujamos este diagrama
en parte porque...
-
y esto es de...
ÂĄah!, se desprendiĂł una pieza.
-
Ya sĂŠ que fue.
-
EstĂĄ bien, no sirve de todos modos.
-
Si tienen una computadora de escritorio
-
asĂ se ve por dentro.
-
A esta pieza se le llama tarjeta madre.
-
Y es lo que conecta todas las piezas.
-
Tiene muchos alambres. Cada una de esas
pequeĂąas lĂneas es un alambre.
-
EstĂĄ cubierta con cierta laca.
-
Y hay cosas que la penetran
y conectan los diversos ÂŤchipsÂť.
-
Y toda esta cosa estĂĄ
representada por esta imagen.
-
Pero en realidad conecta
muchos componentes.
-
La unidad de procesamiento central
-
de la que hablamos antes
-
es lo mĂĄs cercano que la computadora tiene
-
a un cerebro, pero se parece muy poco.
-
Es mĂĄs bien una calculadora
programable y sĂşper rĂĄpida.
-
Le damos flexibilidad mediante
nuestra creatividad al escribir programas.
-
Nosotros hacemos que parezca inteligente.
-
La gente la hace inteligente
-
al tomar sus conocimientos
-
y ponerlos dentro.
-
Esto no es inteligente por sĂ mismo.
-
No hay que tenerle miedo.
-
No es tan inteligente.
-
Entonces esto es lo que se programa
-
para preguntar ÂżquĂŠ sigue?
-
Y debemos tener un grupo de instrucciones
-
que la alimenten muy rĂĄpido,
-
miles de millones de veces por segundo.
-
Y eso es esto:
la memoria de acceso aleatorio.
-
Tiene chips de memoria
-
que van todos conectados
-
a la tarjeta madre.
-
Entonces tenemos la memoria principal
-
y la unidad de procesamiento central.
-
Y de aquĂ provienen nuestras
-
instrucciones a alta velocidad,
-
donde se almacenan los datos,
-
y esto es lo que pregunta ÂżquĂŠ sigue?
-
y lee las instrucciones de acĂĄ.
-
Ahora no estĂĄn conectados,
-
pero van conectados.
-
No se preocupen por este hardware;
-
es viejo y estĂĄ descompuesto.
-
No pasa nada.
-
Entonces, seguimos con los
dispositivos de entrada/salida.
-
AsĂ que regreso a mi Raspberry Pi.
-
La Raspberry Pi tiene USB
-
donde se puede conectar
-
un ratĂłn o un teclado.
-
Tiene HDMI para conectar
un monitor tambiĂŠn.
-
Tiene conexiĂłn ethernet.
-
Todos estos son ejemplos
-
de dispositivos de entrada/salida.
-
Y lo Ăşltimo en pantalla
-
es la memoria secundaria.
-
Entonces, en la Raspberry Pi la CPU,
o unidad de procesamiento central
-
y la RAM estĂĄn en este chip
que se encuentra en el centro.
-
Se llama SOC o ÂŤsistema en un chipÂť
-
donde ponen mĂĄs partes.
-
AsĂ que en cierto sentido
-
redujeron esto...
-
y esto...
-
y mucho de esto...
-
en la Raspberry Pi...
-
a un sĂłlo chip.
-
Pero sigue siendo lo mismo:
una unidad de procesamiento central,
-
memoria principal,
-
tarjetas de grĂĄficos,
-
etcĂŠtera.
-
Entonces, dispositivos de entrada/salida
ÂĄOh! Esto tiene dispositivos de
-
entrada/salida tambiĂŠn,
-
como USB, teclado y monitor, etc.
-
AsĂ que son muy similares,
sĂłlo que este es nuevo
-
y este es viejo.
-
Todo es mĂĄs pequeĂąo
-
entre mĂĄs nuevo sea.
-
Muy bien... lo Ăşltimo de lo que hablaremos
-
es la memoria secundaria.
-
Oh... cuando se corta la corriente
-
esto se borra.
-
Los datos de esta RAM
-
desaparecen. EstĂĄ diseĂąada
para ser muy rĂĄpida,
-
pero no permanente.
-
AsĂ que necesitamos un lugar permanente,
-
eso es la memoria secundaria.
-
Para eso es la memoria secundaria.
-
Es permanente.
-
Esta es rĂĄpida.
-
Zas, zas, zas, es muy rĂĄpida.
-
Pero esta es permanente, y mĂĄs lenta.
-
Entonces hay dos tipos
de memoria secundaria.
-
Oh, Dios, estĂĄn en el suelo.
-
Dos tipos de memoria secundaria:
-
empezarĂŠ con la Raspberry Pi.
-
La memoria secundaria de la Raspberry Pi
-
es esta tarjeta SD.
-
Es como un disco duro.
-
Es permanente, no necesita energĂa
para conservar los datos.
-
Los datos son permanentes.
-
AsĂ que en el futuro veremos
-
mĂĄs de estas memorias flash o SD.
-
Entonces la Raspberry Pi apunta al futuro.
-
Hay una unidad de disco aquĂ que
no es un disco, sino una tarjeta.
-
Pero en los viejos tiempos...
-
en los buenos tiempos,
cuando yo era niĂąo,
-
nuestra memoria secundaria
-
era... una unidad de disco
-
que tenĂa placas, giraba y hacĂa
un ruido muy ÂŤsatisfactorioÂť.
-
Y esto se movĂa hacia dentro
y hacia afuera para leer los datos.
-
Les mostrarĂŠ un video
sobre eso en unos minutos.
-
AsĂ que esto registraba los datos
-
en una placa magnĂŠtica
-
y cuando se cortaba la energĂa
seguĂa magnetizada.
-
Esto se movĂa a un lugar preciso
-
entre giros para leer los datos.
-
Repito: este estĂĄ arruinado
totalmente.
-
Entonces, ahĂ estĂĄ.
-
Unidad de Procesamiento Central,
-
el cerebro de la operaciĂłn,
-
memoria principal, rĂĄpida,
pero se borra al cortar la energĂa.
-
Dispositivos de entrada/salida:
teclados, etc.
-
Y almacenamiento que mantiene
-
sus datos despuĂŠs de desconectar.
-
Bueno y, ya dije todo esto...
-
Entonces la pregunta es...
-
ÂżA dĂłnde perteneces respecto a esto?
-
ÂżDĂłnde viven los programas?
ÂżDĂłnde se escriben?
-
Y la respuesta es: Viven,
por decirlo asĂ, en la memoria.
-
Lo que se hace es poner...
-
los programas en la memoria,
-
luego la CPU los saca de la memoria.
-
Entonces tenemos que escribir
nuestros programas
-
y ponerlos en la memoria.
-
Cuando los corremos en realidad
los estamos cargando
-
en la memoria para que sean alimentados
rĂĄpidamente a la CPU.
-
Y las computadoras en realidad
no entienden Python,
-
como la instrucciĂłn if x< 3:print
-
AsĂ tendemos a escribir,
-
pero lo que las computadoras
en realidad entienden
-
es algo llamado ÂŤlenguaje de mĂĄquinaÂť
-
que es una serie de ceros y unos
-
traducidos directamente
-
en lo que entra por estas patas:
-
voltajes que suben y bajan.
-
Ese es el lenguaje de mĂĄquina.
-
El cĂłdigo fuente, como el de Python,
-
se escribe en una forma mĂĄs conveniente.
-
El lenguaje de mĂĄquina es mĂĄs fĂĄcil
-
para el hardware.
-
AsĂ que tenemos que traducir
-
cĂłdigo fuente a lenguaje de mĂĄquina.
-
Y eso es lo que Python
hace por nosotros.
-
Escribimos en Python
-
y Python traduce a lenguaje de mĂĄquina.
-
Entonces, tengo un par de videos
que dan una idea...
-
de cĂłmo funciona todo esto.
-
Empezaremos con el de la CPU,
-
que les mostrarĂĄ la intensidad
de tanta electricidad...
-
lo que se calienta dentro
de sus computadoras
-
es este pequeĂąito.
-
Y en este video veremos
-
cuĂĄnto puede calentarse.
-
Bueno, bienvenidos de nuevo.
-
En el siguiente videoâ
-
Ya les mostrĂŠ un disco duro inservible
-
y ahora les mostrarĂŠ un pequeĂąo video
-
sobre el funcionamiento los discos.
-
Alguien le quitĂł la tapa a uno
y le aplicĂł energĂa.
-
No lo vayan a hacer
si tienen un disco duro.
-
He leĂdo, y algunas personas dicen,
-
que se puede hacer por unos minutos
luego la unidad se destruye
-
si la encienden sin la tapa puesta.
-
Veamos el video.
-
Bueno, ahora hablaremos un poco
acerca de Python.
-
Python es un lenguaje de programaciĂłn.
-
Python es una manera de comunicarnos.
-
Y Python no fue inventado
por computadoras.
-
Los humanos inventamos Python
como una forma de encapsular
-
nuestras instrucciones.
-
Hay muchos lenguajes diferentes:
-
Python, Java script,
-
C++, toneladas de ellos.
-
Python es sĂłlo uno que
enseĂąo en esta clase.
-
EmpezarĂŠ con una cita de Harry Potter:
-
PĂĄrsel es el lenguaje
de las serpientes
-
y quienes conversan con ellas.
-
A quien puede hablar pĂĄrsel
se le conoce como pĂĄrsel-hablante.
-
Es una habilidad muy rara,
y puede ser hereditaria.
-
Casi todos los hablantes de pĂĄrsel
-
descienden de Salzar Slytherin.
-
Esa es la cita de Harry Potter.
-
Python es el lenguaje del
intĂŠrprete de Python, y quienes pueden
-
conversar con ĂŠl.
-
Vamos a conversar con el interior
de la computadora muy pronto.
-
A quien puede hablar Python
se le conoce como pythonista.
-
Es una habilidad muy rara
y puede ser hereditaria.
-
TambiĂŠn puede no ser hereditaria.
-
Casi todos los pythonistas conocidos
usan software diseĂąado originalmente
-
por Guido van Rossum.
-
Guido van Rossum, este amigo
de aquĂ...
-
Hey, Guido, ÂżquĂŠ hay?
-
PongĂĄmosle un bigote.
-
Hey, Guido.
-
Lo siento. DeberĂa ser amable con ĂŠl.
-
Es el inventor de Python.
-
Python tiene mĂĄs de 20 aĂąos.
-
Ăl lo inventĂł como un lenguaje sencillo,
-
pero resultĂł igualmente poderoso.
-
Por eso es un gran lenguaje
para iniciar su aprendizaje.
-
Es un lenguaje poderoso, pero
diseĂąado para ser fĂĄcil de usar.
-
ÂżPuede alguien adivinar... por quĂŠ
se llama lenguaje Python?
-
Bueno, veamos.
-
Python se nombrĂł asĂ por un
famoso programa de comedia inglĂŠs
-
âes de los sesenta o setenta, creoâ
-
llamado Monty Python,
-
El circo volador de Monty Python.
-
Creo que tratĂł de capturar
el aspecto lĂşdico,
-
bobo y divertido de Python.
-
Y asĂ es.
-
Basta de eso,
Âżya acabamos?
-
SĂ, la mĂşsica ya terminĂł,
-
gracias a Dios.
-
Entonces repito: este es un lenguaje
-
y este Guido lo inventĂł para nosotros.
-
Ăl tomĂł decisiones.
-
Dijo: Pongamos un punto y coma aquĂ,
-
y aumentemos la sangrĂa aquĂ.
-
AsĂ que tomĂł decisiones.
-
Y la gente prefiere algunos lenguajes
en lugar de otros.
-
Es como una elecciĂłn de arte.
-
Y me gusta comparar esto con
-
el aprendizaje de un idioma para hablar
-
con gente, con humanos.
-
Cuando somos bebĂŠs no sabemos hablar
-
y empezamos con un balbuceo:
-
bla, bla, bla, bla...
-
QuizĂĄ lo primero que hacemos es llorar.
-
Estamos como en un planeta extraĂąo.
-
Tenemos que hablar con esta cosa.
-
AsĂ que debemos aprender su lenguaje.
-
Y no lo aprenderemos inmediatamente.
-
No basta estudiar toda la noche y ya.
-
No funciona asĂ.
-
Aunque xxx puede ser una buena manera
de enseĂąar un lenguaje de programaciĂłn.
-
QuizĂĄ tome algunas de sus ideas.
-
La diferencia entre
aprender un idioma humano
-
y aprender un lenguaje de programaciĂłn
-
es que... cuando aprendemos un idioma
humano es para hablar con humanos
-
que nos pueden a corregir.
-
Si digo mal una palabra como...
-
mamaggghhh...
-
No sĂŠ, eso sonĂł muy tonto.
-
Algunos oyentes dirĂĄn:
Ah, ya sĂŠ quĂŠ quizo decir.
-
Pero Python y las computadoras
-
en realidad no escuchan.
-
Son un poco tontas.
-
No pueden corregir nuestros errores
-
porque no saben quĂŠ tratamos de decir.
-
Son realmente tontas.
-
Son muy literales.
-
AsĂ que es bastante comĂşn,
-
al principio...
-
enojarse
-
porque decimos algo que creemos simpĂĄtico
-
y nos contesta: ÂŤError de sintĂĄxisÂť.
-
Y pensamos: Muy bien, probemos esto,
-
y contesta: ÂŤError de sintĂĄxisÂť.
-
Y nos parece que....
-
yo tuve este problema cuando
empecĂŠ a programar,
-
Le decĂa: ÂŤTengo este programa.
-
ÂżTe gusta?Âť
-
Y me contestaba: Error de sintaxis.
-
El problema es... prodrĂan re-escribir
los mensajes para ser mĂĄs amables, quizĂĄ,
-
pero el error de sintaxis no es un
juicio sobre ustedes que diga:
-
eres un fracaso.
-
El error de sintaxis realmente significa:
-
ÂŤNo sĂŠ quĂŠ estĂĄs diciendo.
Estoy confundido.
-
SĂłlo sĂŠ unas cuantas cosas y...
-
lo que acabas de decir...
-
no es algo que pueda entenderÂť.
-
AsĂ que en lugar de pensar
-
que Python es algĂşn tipo de
-
monstruo malvado y demonĂaco
-
que los odia y no deja de decir
ÂŤError de sintaxisÂť,
-
piensen en Python mĂĄs como
-
un perro, ÂżsĂ?
-
A un perro no le pueden decir:
-
ÂĄQuĂŠ bonito atardecer!
-
Porque los perros no entienden eso.
-
Los perros entienden algunas cosas
-
como comida, baĂąo, paseo,
-
pero no entienden
las obras de Shakespeare.
-
AsĂ que al hablar con un perro
-
deben tener cuidado
-
de usar el vocabulario
que el perro conoce.
-
Y esa es la clave
-
cuando empiecen a aprender.
-
Python sĂłlo entiende cierto vocabulario.
-
Resulta que es mĂĄs fĂĄcil
-
enseĂąarles a ustedes Python,
-
que enseĂąar a Python a escuchar
lo que ustedes le quieran decir.
-
Cosas como Google hacen
que parezca inteligente.
-
Ni siquiera tienen que
escribir nada en Google, Âżverdad?
-
Bueno, con miles de millones,
-
al menos en cosas sencillas,
-
Google parece saber de quĂŠ le hablan.
-
En tĂŠrminos de programaciĂłn,
-
es mucho mĂĄs fĂĄcil que ustedes descifren
la forma mĂĄs precisa de decir algo
-
que hacerlo gastando mil millones
-
en algo de Python para descifrar
-
quĂŠ quieren decir en sus programas.
-
Empecemos a hablarle a Python.
-
Le hablamos a Python.
-
Si instalaron bien Python,
-
ya sea en una Mac, una Windows
o en una Raspberry Pi,
-
en algĂşn punto se encontrarĂĄn
en una terminal
-
y escribirĂĄn Python
-
para que Python corra en modo interactivo.
-
QuizĂĄ tengan que escribir
ÂŤC:\algo\algo\pythonÂť en Windows,
-
pero en algĂşn punto estarĂĄn
corriendo Python.
-
Python mismo es un programa,
-
un programa que les pide
escribir en lenguaje Python.
-
Lo interesante es que este indicador
que parece de la Chevron
-
es como otra versiĂłn de ÂżquĂŠ sigue?
-
Dijimos que este hardware estĂĄ diseĂąado
-
para esperar siempre
la siguiente instrucciĂłn.
-
Bueno, al arrancar Python
-
ĂŠste no tiene idea de quĂŠ hacer.
-
Espera que ustedes le digan quĂŠ hacer.
-
DĂŠjenme ver si puedo poner algo aquĂ.
-
AhĂ estĂĄ.
-
Y ahora voy a escribir...
-
Acerco esto.
-
Voy a iniciar Python.
-
Entonces el sistema operativo
me estĂĄ preguntando ÂżquĂŠ sigue?
-
Y le digo: Ah, lo que quiero
hacer a continuaciĂłn es...
-
correr Python.
-
AsĂ que, aquĂ estamos,
-
sentados ante el intĂŠrprete de Python.
-
Y nos pregunta: ÂŤÂżQuĂŠ sigue?Âť
-
Es como si acabaran de aterrizar
en otro planeta...
-
y le dijeran:
ÂŤLlĂŠvame con tu lĂderÂť.
-
ÂŤLlĂŠvame con tu lĂderÂť.
Eso se dice al llegar a otro planeta
-
y se encontraran con un robot.
-
Y les dice: ÂŤError de sintaxisÂť
-
Recuerden: es como un perro.
-
Acaba de decir: ÂŤArfffÂť.
-
âLlĂŠvame con tu lĂder.
âGuauu.
-
ÂżEres amistoso?
-
No sĂŠ si lo escribĂ bien.
-
ÂŤError de sintaxisÂť
-
ÂżEres estĂşpido?
-
ÂŤError de sintaxisÂť
-
Muy estĂşpido.
-
ÂĄOdio las computadoras!
-
ÂŤError de sintaxisÂť
-
No parece tener sentido del humor.
-
Intenten esto:
Toc, toc.
-
No tiene sentido del humor.
-
Y ese es el problema.
-
No nos odia.
-
SĂłlo quiere saber quĂŠ queremos que haga.
-
Entonces, necesitamos conocer
el lenguaje Python.
-
Por suerte sĂŠ un poco de Python.
-
AsĂ que voy a decir:
ÂŤOye, PythonÂť.
-
Voy a escribir algunos datos.
-
Quiero crear una variable ÂŤXÂť,
-
sĂłlo un lugar en tu memoria,
anda a buscarlo.
-
Busca un lugar vacĂo en tu memoria.
-
Y quiero que pongas un cien ahĂ.
-
Hazlo. Ahora... ÂĄSĂŠ feliz!
-
Porque conozco el lenguaje.
-
ÂĄBuenos dĂas!
-
Conocemos el lenguaje.
-
Pero me dice: ÂŤY ahora, ÂżquĂŠ?
-
AsĂ que debemos meter un programa.
-
Entonces, voy a decir: