PDF de programación - 11 - Computadoras & Computación

Imágen de pdf 11 - Computadoras & Computación

11 - Computadoras & Computacióngráfica de visualizaciones

Publicado el 29 de Octubre del 2019
387 visualizaciones desde el 29 de Octubre del 2019
288,1 KB
27 paginas
Creado hace 14a (04/02/2010)
Capítulo 11

11

Computadoras &
Computación

Las computadoras hogareñas están siendo convocadas para realizar muchas funciones nuevas,
incluyendo la realización de la tarea escolar previamente comida por el perro.
Doug Larson

La Ciencia de la Computación se trata tanto de computadoras como la astronomía de telescopios.
Edsger W. Dijkstra

¿Cuál es el centro de las ciencias de la computación? Mi respuesta es simple –es el arte de programar una
computadora.. Es el arte de diseñar métodos eficientes y elegantes para lograr que una computadora
resuelva problemas, teóricos o prácticos, pequeños o grandes, simples o complejos. Es el arte de traducir
este diseño en un programa de computación efectivo y preciso.
C.A.R. Hoare

Imagen: La computadora portátil XO
La foto es cortesía del proyecto OLPC (www.olpc.org)

188

Capítuo 10

Hoy hay más computadoras que gente en la mayoría de los campus de las
universidades en los Estados Unidos. La computadora portátil (laptop) que se
muestra en la página anterior es la laptop XO desarrollada por el Proyecto Una
Laptop Por Niño (OLPC). Es una computadora de bajo costo diseñada para niños. El
proyecto OLPC aspira a llegar a 2 billones de niños en todo el mundo. Buscan hacer
llegar las computadoras XO a sus manos para ayudar en la educación. Su misión es
lograr un cambio radical en el sistema de educación global a través de las
computadoras. Por supuesto que un proyecto con una misión tan grandilocuente no
puede aparecer sin controversias. Ha tenido sus escollos desde sus inicios. Las
cuestiones tecnológicas fueron el menor de sus problemas. Han tenido que
convencer a gobiernos (es decir, políticos) para que apoyen su misión. Varios países
han acordado su apoyo y luego se han echado atrás por todo tipo de razones. Las
laptops no estaban bajo venta libre dentro de los Estados Unidos, lo cual ha llevado
a otras controversias socio-políticas. De todas maneras, en el primer año de su
lanzamiento, el proyecto apunta a tener más de 1 millón de XOs en manos de niños
de muchos países en desarrollo. Algo que sucede con la tecnología que siempre ha
sido verdad es que una buena idea es inefectiva. Otros jugadores han emergido que
están desarrollando computadoras a bajísimo costo para niños. Pronto otros
productos competitivos estarán disponibles para todos. Las preguntas que aparecen
son: ¿Qué tipo de cambio traerá aparejado esto en el mundo? ¿Cómo serán usadas
estas computadoras para enseñar a los niños en las escuelas primarias y
secundarias? Etc. También se estarán preguntando si el robot Scribbler puede ser
controlado por la XO. Sí, puede.

Han estado escribiendo programas para controlar su robot a través de una
computadora. En el camino han visto muchas formas diferentes de controlar al
robot y también de organizar sus programas Python. Básicamente, han estado
comprometidos con la actividad generalmente entendida como programación de
computadoras o resolución de problemas basada en computadoras.
Deliberadamente hemos evitado usar esos términos porque la percepción general
de los mismos convoca imágenes de personajes con protectores de bolsillos y
ecuaciones matemáticas complejas que parecen ser evitables o fuera del alcance
para la mayoría de las personas. Ojalá que para este momento hayan descubierto
que la solución de problemas a través de una computadora puede ser bastante
excitante y atrapante. El robot puede haber sido el verdadero motivo que los
introdujo en esta actividad y eso fue pensado así. Les estamos confesando que
usamos a los robots para atraer un poco su atención hacia la computación. Deben
admitir, si están leyendo esto, ¡que el artilugio funcionó! Pero recuerden que el
motivo por el cual están sosteniendo un robot propio en sus manos se debe también
a las computadoras. El mismo robot es una computadora. Haya sido o no un
artilugio, han asimilado muchas ideas clave de computación y de ciencia de la
computación. En este capítulo haremos más explícitas estas ideas y también les
daremos un sabor de lo que realmente se trata la ciencia de la computación. Como
sostiene Dijkstra, la ciencia de la computación es tanto sobre computadoras como
la astronomía sobre telescopios.

189

Computadoras & Computación

Las computadoras son tontas
Supongamos que están alojando a una estudiante internacional de intercambio en
su casa. Al poco tiempo de su llegada, le dan a conocer las virtudes de los
sándwiches de PB&J (manteca de maní y jalea- quizás equiparable a un pan con
manteca y dulce de leche en Argentina). Luego de escucharlos con atención, su
boca se empieza a hacer agua y muy educadamente les piden si podrían compartir
la receta con ella. Ustedes la escriben en un pedazo de papel y se la dan.

Realizar la siguiente actividad: Adelante, escriban la receta para hacer un
sándwich de PB&J.

De verdad, traten de escribirla, ¡insistimos!

OK, ahora tienen una receta para hacer sándwiches de PB&J.

Realizar la siguiente actividad: Usen la receta de arriba para hacerse un
sándwich de PB&J. Intenten seguir las instrucciones lo más literalmente que puedan.
Si lograron realizarse con éxito el sándwich, ¡felicitaciones! ¡Disfrútenlo! ¿Creen que
su amiga podrá seguir la receta y también disfrutar de los sándwiches de PB&J?

Deben admitir que escribir una receta para sándwiches de PB&J al principio parecía
trivial, pero al sentarse a escribirlo no les queda otra opción que cuestionarse varias
cosas que se han dado por supuestas: ¿Sabe ella qué es la manteca de maní?
¿Debo recomendar una marca específica? ¿Mermelada Ditto? A todo esto, se
acordaron de mencionar que se trata de jalea de uva? ¿El tipo de pan a usar? ¿Será
pre-cortado? Si no, ¿necesitan un cuchillo para cortar la rodaja de pan?
¿Especificaron cuán gruesas deberían ser las rodajas de pan? ¿Debería usar el
mismo cuchillo para untar la manteca de maní y la jalea? Etc. La cuestión es que,
con tanto nivel de detalle, uno puede seguir y seguir… ¿Su amiga sabe cómo usar
un cuchillo para untar manteca o jalea en una rodaja de pan? De repente, una tarea
aparentemente trivial se transforma en un ejercicio desalentador. En realidad, al
escribir su receta, dan varias cosas por hecho: que ella sabe lo que es un sándwich,
que requiere rodajas de pan, untar cosas en rodajas, y juntarlas. ¡Listo, tienen un
sándwich!

Piensen en la cantidad de recetas que han sido publicadas en libros de cocina de
todo el mundo. La mayoría de los buenos autores de libros de cocina empiezan con
un plato, lo escriben en una receta, lo prueban varias veces y lo refinan de
diferentes maneras. Previo a la publicación, la receta es probada por otros. Después
de todo, la receta es para que otros la sigan y recreen un plato. La receta es
revisada y ajustada basándose en el feedback (la devolución) de los probadores (o
testeadores) de la receta. Lo que los autores de libros de cocina asumen es que
tendrán las suficientes competencias para seguir la receta y recrear el plato para su
satisfacción. Quizás nunca resulte el mismo plato que preparó el autor. Pero les
dará una base sobre la cual improvisar. ¿No sería lindo que hubiera una forma
exacta de seguir una receta para que terminaran con exactamente el mismo plato
que el del autor del libro de cocina cada vez que prepararan ese plato? ¿Sería
bueno? Eso depende de sus gustos y preferencias. Sólo por diversión, aquí hay una
receta de unos ricos Brochetas de pollo al Azafrán.

190

Capítuo 10

Brochetas de pollo al azafrán

Ingredientes

1lb de pechuga de pollo deshuesada, cortada en cubos de 1-2 pulgadas.
1 media cebolla en rodajas
1 cucharadita de hebras de azafrán
1 lima
1 cucharada de aceite de oliva
Sal y pimienta negra a gusto

Preparación

1. Mezclar el pollo y las cebollas en un bowl no-reactivo.

2. Apretar con los dedos y agregar las hebras de azafrán

3. Agreguen el jugo de lima, el aceite de oliva, la sal y la pimienta.

4. Dejar reposar en la heladera por lo menos por 30 minutos (o toda la noche).

5. Precalentar una parrilla o un horno a unos 200 grados.

6. Armar los pinchos, descartando las rodajas de cebolla. O poner todo en una

bandeja de hornear forrada si se usa el horno.

7. Cocinar a la parrilla o al horno por 12-15 min. hasta que estén listas.

En las recetas de cocina como la de arriba, pueden dar por hecho varias cosas:
serán usadas por personas (como ustedes y yo); serán capaces de seguirlas; quizás
hasta improvisen. Por ejemplo, en la receta de arriba, no especificamos que se
necesitará un cuchillo para cortar el pollo, las cebollas o la lima; o que se necesitará
una parrilla o un horno; etc. La mayoría de las recetas asume que serán capaces de
interpretar y seguir la receta así como está escrita.

Los programas de computadora son también como recetas, hasta cierto punto.
Piensen en el programa que escribieron para coreografiar una danza de robot, por
ejemplo. Hemos reproducido la versión del Capítulo 3 aquí:

# File: dance.py
# Purpose: A simple dance routine
# First import myro and connect to the robot

from myro import *
initialize("com5")

# Define the new functions...

def yoyo(speed, waitTime):
forward(speed, waitTime)
backward(speed, waitTime)
stop()

191

Computadoras & Computación

def wiggle(speed, waitTime):
motors(-speed, speed)
wait(waitTime)
motors(speed, -speed)
wait(waitTime)
stop()

# The main dance program
def main():
print "Running the dance routine..."
yoyo(0.5, 0.5)
wiggle(0.5, 0.5)
yoyo(1, 1)
wiggle(1, 1)
print "...Done"

main()

En muchos sentidos, el programa de arriba es como una receta:

Hacer una danza de robot

Ingredient


es

1 función yoyo para que el robot vaya hacia adelante y hacia atrás a una velocidad
dada
1 función wiggle que le permite al robot menearse a una velocidad determinada

Preparación

1. yoyo a velocidad 0.5, esperar 0.5

2. me
  • Links de descarga
http://lwp-l.com/pdf16801

Comentarios de: 11 - Computadoras & Computación (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad