From: dajoy at openworldlearning.org
Date: Tue, 22 May 2001 14:04:55 -0500
Vamos a hablar de cómo conversar con la Computadora, no sólo programar con la computadora, sino decirle cosas y escuchar lo que tiene que decir al respecto. Al decir esto no quiero ser retórico sino quiero plantear un enfoque filosófico hacia la programación.
Los lenguajes de programación son utilizados para enviar y recibir información de las computadoras. Son una colección de vocabulario y gramática usada para comunicarnos, tal como los lenguajes humanos.
Usando un lenguaje de programación le decimos a la computadora qué hacer o le pedimos información. Ella escucha, trata de realizar las acciones requeridas y da respuestas. Así que, aunque tú creas que estas leyendo esto para aprender a programar en realidad estará s aprendiendo a comunicarte con Logo.
Pero, por supuesto, la computadora no habla español, inglés, francés, alemán o cantonés. El lenguaje de la Computadora es Logo y tú vas a aprender a hablarlo. Aprender a hablar un lenguaje de computadora es, a veces, considerado equivalente a aprender a programar. Pero hay más en programación que aprender las palabras de un lenguaje.
Qué pasaría si la computadora pudiese hablar en español, si nosotros no tuviésemos que aprender Logo para poder comunicarnos con ella. Qué pasaría si nosotros pudiésemos decir: "Computadora, haz que una pelota rebote por la pantalla"?
La computadora no cumpliría nuestro pedido porque no sabe qué significa "pelota". Está bien, está bien, es solamente un problema de significados. Lo que la computadora espera es que nosotros describamos los objetos en el mundo que él conoce: tortugas, figuras, sonidos, botones, etc. Así que, replanteemos nuestro pedido en términos que la computadora pueda reconocer y veamos qué pasa. "Computadora, haz que la tortuga llamada pelota rebote por la pantalla".
La computadora no puede todavía completar nuestro pedido sin más información. Cuán grande debe ser la pelota? Dónde debe ser colocada? En qué dirección debe empezar a moverse? A qué velocidad debe ir? En dónde debe rebotar? Por cuánto tiempo? Hmmmm... No esperá bamos todas estas preguntas.
En realidad la computadora no nos hace todas estas preguntas. En lugar de eso simplemente no hace lo que nosotros queremos que haga, o produce un mensaje de error. Por ahora, pretendamos que la computadora nos pide instrucciones más precisas y nosotros reformulamos nuestro pedido en una serie de pasos:
Aun cuando dimos nuestras instrucciones en español, de todas maneras tuvimos que detallar toda la lógica que gobierna nuestra pelota que rebota para que la computadora nos entienda. Por supuesto, programación es más que saber las palabras del lenguaje de programación. Tal como en español, el saber muchas palabras no necesariamente significa que eres un gran comunicador.
Nuestro ejemplo de la computadora que habla en español expone cuatro aspectos importantes de la programación:
La mayor parte de lo que es programación no tiene mucho que ver con escribir código. Antes de escribir una sola línea en Logo, planifica exactamente lo que deseas hacer y, si necesitas, haz un esquema de lo que deseas que pase. Una vez que tu programa ha sido descrito suficientemente en un nivel conceptual entonces podrás traducirlo a Logo.
En la programación, como en el amor, la política y los negocios, una comunicaciones efectiva es la clave para el éxito. Para que la computadora entienda tus programas en Logo tú debes tener una ortografía excelente hasta en el uso de comillas o dos puntos. Y para asegurar que la computadora sepa de qué estas hablando sólo puedes referirte al mundo que ella conoce en términos que ella reconozca. Lo que es obvio para ti no es obvio para la computadora. Piensa que programar una computadora es como hablar con un niño pequeño: no presupongas nada, sé explícito hasta el último detalle, y lista cada paso que sea necesario para completar la tarea. Pero recuerda, que a diferencia de un niño, La computadora hará exactamente e instantáneamente lo que le digas que haga y nada que tú no le digas.