29 agosto 2012

Mis lecturas recientes: innovación y videojuegos

Esto de andar de vacaciones y luego incapacitado por una cirugía tiene varias cosas positivas.  Por lo pronto, leí 5 libros (y tengo otros 2 en la mira), pero quiero compartirles algunas de mis lectura que he hecho en este tiempo (principalmente los que creo que les interesarán a algunos amigos).

El primer libro que leí fue Women and Gaming: The Sims and 21st Century Learning escrito por James Paul Gee y Elisabeth Hayes. Los autores se están concentrando, no tanto en las mujeres que juegan los Sims, sino lo que sucede alrededor del juego. Junto con teoría sobre aprendizaje y videojuegos (recordemos que, como dijo Kurt Lewin, “no hay nada más práctico que una buena teoría), los autores narran la experiencia de varias mujeres y sus experiencias que van más allá del videojuego. Analizan la formación de comunidades que giran en torno al juego y que son lugares propicios para que los expertos ayuden a los novatos. Comparan la escuela con este tipo de comunidades y dan algunas líneas a seguir para que los alumnos/videojugadores alcancen aprendizaje significativo.
Eligieron historias de diferentes tipos de mujeres (desde una adolescentes hasta una señora enferma de 65 años) donde cada historia resalta un aspecto importante sobre aprendizaje que se da más allá del videojuego.
En mi propia investigación me había concentrado en ver el aprendizaje a la hora de jugar, pero este libro me abrió un nuevo horizonte: el ver cómo los jugadores se convierten en diseñadores y adquieren las habilidades para manejar de herramientas tecnológicas que le permiten aprender fuera del juego para crear artefactos y/o productos culturales fuera del juego fue novedoso. También permite ver el rol, o el “estilo” por llamarlo de algún modo, que tienen muchas mujeres al jugar.

El segundo libro que leí fue Where Good Ideas Come From: The Natural History of Innovation de Steven Johnson. Como se puede observar en el video que viene abajo, hace un análisis de los descubrimientos e invenciones más importantes de los últimos 100 años para descubrir los ambientes en los cuales se daban.
Es interesante el análisis, pero lo que disfruté de sobremanera fueron las narraciones sobre diferentes personajes, desde Charles Darwin hasta Tim Berners-Lee. Además hace un análisis de estas tendencias “creativas” o “innovadoras” desde el punto de vista biológico, encuentra especies que se comportan igual que como lo hacemos nosotros cuando queremos ser creativos.
Si estás de acuerdo con sus principios de innovación (personalmente me gustó su análisis y creo que anda en el camino correcto) excelente. Pero si no, de todos modos puedes disfrutar de las historias de diferentes inventos e inventores.  Algunas partes del libro me recordaban a mis clases de Producción Científica Contemporánea con el Dr. Alfonso Islas y de Comunicación Pública de la Ciencia con Carlos Enrique Orozco.



Otro libro que les quiero compartir es la diseñadora de videojuegos y académica Jane McGonigall llamado Reality Is Broken: Why Games Make Us Better and How They Can Change the World.
Mi primer acercamiento al trabajo de Jane McGonigall fue en el video que está abajo. Me areció un poco exagerado, pero en el libro fundamenta sus propuestas (me parece que de lo hace de manera bastante sólida, aunque no soy experto en psicología y algunas otras áreas de las que se fundamenta).
Su idea, básicamente, es que los videojuegos le proporcionan al jugador satisfacciones que no puede lograr en su vida “real” (para más de esto, pero desde un enfoque educativo, les recomiendo el libro Why Video Games are good for your soul de James Paul Gee) y esto lo estimula mucho, incluso para “aguantar” lo que tiene que vivir en su “realidad”. Su reto es el de llevar los elementos que hacen que el videojuegos sea “mejor” que la realidad a la vida cotidiana para que las personas sean más felices y plenas.
Sé que suena raro y loco pero el libro lo aborda bastante bien. Comienza analizando diversos videojuegos encontrando los motivos por lo que nos hacen sentir más felices o plenos al jugar, luego procede a describir su experiencia con algunos juegos (no todos son digitales) que se juegan en la vida cotidiana y que intentan hacernos sentir tan contentos y plenos en nuestra vida “real” como lo somos cuando estamos jugando. Y termina hablando de 10 juegos diseñados para ayudar a tener un mejor mundo (si, juegos para ayudar a curar cáncer, ayudar a frenar el calentamiento global, sembrar paz, terminar con la pobreza, etc.).
Hasta lo que he leído hasta ahora (me falta 1/3 parte del libro) lo que más me ha sorprendido son las diferentes maneras en que un videojuego te hace sentir más pleno y feliz, y es interesante ver como se pueden aplicar estas mismas reglas en la vida cotidiana, diseñando experiencias en el mundo “real” que tomen estos aspectos y hagan que nos sintamos mejor.



Aquí termino este post.  También leí una novela de C. S. Lewis (si, el mismo que escribió las Crónicas de Narnia) con su versión de la Divina Comedia, una novela sobre el cielo e infierno muy interesante con muchas verdades (llamado The Great Divorce) y un par de libros de Jorge Bucay, pero digamos que mi “yo” académico quería compartirles estos 3 títulos.  ¡Saludos!

26 agosto 2012

Visual Basic .net desde cero: creando una aplicación

He escrito (y grabado videos) sobre muchas cosas respecto a Visual Basic .net (versión 2005, 2008 y 2010, que es casi lo mismo).  Alguna vez hice un pequeño video mostrando como crear una aplicación desde cero (llamado “Un programa sencillo… para ir calentando” que adivina un número al azar entre 1 y 10), sin embargo creo que con el puro video no queda claro para muchos, así que en esta ocasión voy a mostrar, paso a paso, como crear un programa sencillo en Visual Basic 2010.

Paso 1. Instalar Visual Studio 2010 en tu computadora

Para este paso, lo único que necesitas es el DVD y mucha paciencia.  Ponlo a instalar, sal por un café, platica con los cuates, juega Xbox, etc.  Como en 5 horas termina.

Paso 2. Arrancar Visual Studio por primera vez

La primera vez que arrancas Visual Studio 2010, te va a preguntar el lenguaje en el que generalmente vas a trabajar.  En nuestro caso, vamos a decirle que generalmente programaremos en Visual Basic.  Si eliges otro lenguaje, no te preocupes: de todos modos puedes escribir programas en Visual Basic.

Paso 3. Crear un nuevo proyecto

Al arrancar Visual Studio, debería aparecerte una ventana como ésta:

00_-_Visual_Studio
0. Ventana principal de Visual Studio

Ahora haz clic sobre el botón de nuevo proyecto.  Recuerda que un proyecto para Visual Studio es toda la bola de archivos necesarios para crear un programa (o sea que es una carpeta con muchas archivos y subcarpetas).  Este es el botón:

01_-_Botón_nuevo_proyecto
1. Botón "Nuevo proyecto"

Y al presionarlo aparece esta ventana (o una muy parecida):

02_-_Proyecto_nuevo 2. Ventana "Nuevo proyecto"

Hay que elegir el lenguaje de la barra izquierda (Visual Basic), vamos a elegir Windows Forms Application (que hace un programa como los que estamos acostumbrados a ver en Windows) y le ponemos un nombre a la aplicación.  En el ejemplo que voy a hacer, solo cambio el nombre (lo demás está seleccionado como lo necesito: si el tuyo aparece un poco diferente, solo selecciona lo que aquí indiqué).  Mi aplicación se va a llamar 00-Ejemplo.  Nota: en algunas versiones te pregunta la carpeta donde lo vas a guardar.

Paso 5. Dibujar la interfaz gráfica para el usuario (GUI)

Aquí viene la parte divertida.  Después de escribir el nombre de mi proyecto (y en algunos casos la carpeta donde lo voy a guardar) aparece el ambiente de desarrollo como se ve en esta imagen (obviamente los cuadros y flechas no aparecen):

03_-_Ambiente_de_desarrollo
3. Ambiente de programación. Nota: la flecha que no tiene texto apunta hacia la ventana como la verá el usuario.

Antes de hablar de los pasos siguientes, quiero que te familiarices con el entorno de trabajo.  Aunque las cosas pueden cambiar (Visual Studio te da la oportunidad de configurar tu entorno de trabajo como quieras), generalmente a la izquierda está un panel con los diferentes controles que puedes dibujar en la ventana: botones, cajas de texto, etc.  Arriba está la barra de menú y algunos botones de funciones (como el de Nuevo Proyecto que presionamos antes).  De lado derecho, tenemos el explorador de soluciones (que muestra todos los archivos que componen el proyecto) y abajo una ventana que tiene las propiedades del objeto seleccionado (colores, etc.).  En la parte inferior hay una ventana donde me pueden aparecer mensajes (sobre todo a la hora de compilar y correr un programa) y en la parte central es el área de trabajo.

Para este ejemplo, solo voy a dibujar 3 controles: una etiqueta (conocidos como Label), una caja de texto (Textbox) y un botón (Button).  Pero antes que nada, voy a modificar la ventana principal al cambiar sus propiedades.  Para empezar, arriba de la ventana le va a aparecer el texto que dice “Form1” (como se ve en la figura).  Yo quiero cambiarlo para que diga “Saludos”.

04_-_Texto_Form1 4. Parte superior de la ventana que dice "Form1".

Para hacer esto hago clic sobre la ventana en la vista diseño y cambia la ventana de propiedades para mostrar las que se relacionan a la ventana (o Form).  Ahora busco la propiedad que se llama Text y le modifico el valor para que diga “Saludos”.

05_-_Propiedades_Text
5. Panel de propiedades con la propiedad Text seleccionado.

Una vez que escribo “Saludos” en lugar de “Form1”, mi ventana se ve así (en la vista diseño):

06_-_Texto_Form1
6. La ventana Form1 con el nuevo texto.

Ahora voy a cambiar propiedades de la ventana (Form1) para que ya no tenga botón de minimizar ni de maximizar.  Esto lo hago modificando las propiedades MinimizeBox y MaximizeBox respectivamente.  Al cambiar True (verdadero, o sea que sí tiene esa “caja”) por false (falso, que lo oculte) resuelvo la situación.  Aquí está la ventana con estas dos propiedades señaladas y abajo está la ventana ya sin cajas de minimizar ni maximizar.

07_-_Minimize_y_maximize
7. Panel de propiedades con MinimizeBox y MaximizeBox señaladas.

08_-_Form1_sin_min_ni_max
8. Ventana (Form1) sin los botones de minimizar ni maximizar.

Ahora voy a dejar la ventana por la paz y voy a dibujar la etiqueta.  Voy al panel de los controles (lado izquierdo) y selecciono la que dice Label como se muestra en la imagen:

09_-_Label_tool
9. Herramienta Label.

Luego hago clic sobre la ventana en el lugar donde quiero que quede…

10_-_Form1_con_Label
10. Form1 con una etiqueta (Label1).

Y en este momento ya tengo un control en mi ventana, llamado Label1, que contiene un texto.  Ahora, aprovechando que está seleccionado (y si no, solo haz clic sobre la etiqueta), voy a modificar su propiedad Text para que diga “Nombre” en lugar de “Label1”…

 11_-_Propiedad_Text_de_Label1
11. Form1 con una etiqueta (Label1) que dice "Nombre:".

De la misma manera voy a dibujar una caja de texto.  Selecciono la caja de texto del panel de controles (o herramientas) y lo dibujo sobre la ventana.  Generalmente a los controles que voy a programar me gusta cambiarles el nombre para no hacerme bolas, así que a este le cambio la propiedad (Name) para que diga txtNombre.  La parte txt me dice que es una caja de texto… si quieres profundizar en esto, busca la notación húngara.  Aquí hay imágenes con todo el proceso:

12_-_Form1_con_Label1_que_dice_Nombre 
12. Form1 con una etiqueta (Label1) que dice "Nombre:".

 13_-_Herramienta_Textbox
13. Herramienta TextBox.

 14_-_Form1_con_la_Textbox1
14. Form1 con Textbox.

 15_-_Textbox_propiedad_name
15. Propiedad (Name) de la Textbox.

De la misma manera dibujo un botón abajo de la caja de texto.  Aquí están las imágenes que describen paso por paso:

16_-_Herramienta_button
16. Herramienta Button.

17_-_Form1_con_botón_1
17. Form1 con el botón dibujado.

18_-_Name_es_btnSalir
18. Cambié la propiedad (Name) por btnSalir (antes decía Button1).

19_-_Propiedad_Text_del_button
19. Propiedad Text del botón.

20_-_Ventana_terminada
20. Form1 “terminada”.

Paso 6. Escribir el código (pa’ que haga algo)

Una vez que está todo “bonito”, es hora de que haga algo.  Vamos a programar los eventos de la ventana.  Un evento es algo que pasa: el mouse que hace clic sobre el botón, algo que se teclea en la caja de texto, etc.

Este programa va a dejar que el usuario escriba su nombre (o cualquier otro texto) en la caja de texto y al presionar el botón Salir, se despedirá.  Por lo tanto, el único evento que tengo que programar es el que se ejecuta cuando el usuario da clic sobre el botón Salir.  Así que le doy doble clic sobre el botón y el área de trabajo cambia para escribir código.  En este caso, al dar doble clic sobre el botón aparece una nueva pestaña en el área de trabajo:

21_-_Pestaña_código
21. Pestaña para escribir código del evento del botón.

Por lo pronto no le hagas caso al código que aparece, ya luego lo iremos hablando (o lo puedes ver en varios de mis posts sobre Visual Basic .net).  Por lo pronto, aparece el código listo para escribir lo que queremos que haga cuando el usuario haga clic sobre el botón.  Este es el código que escribí:

 22_-_Código
22. Pestaña para escribir código del evento del botón.

No te preocupes si no entendiste todas las instrucciones (esto es un primer acercamiento y poco a poco podrás ir profundizando en lo que hace cada cosa).  La instrucción MsgBox se encarga de abrir una ventana y mostrar un texto (bueno, puede hacer un poco más que eso, pero para empezar hace esto).  En medio escribo lo que quiero que diga, en este caso el texto “Adiós, “ seguido por el nombre que teclearon en la caja de texto (¿recuerdas que le cambiamos el nombre por txtNombre?).  El ampersand (&) sirve para unir dos textos: en este caso, el texto “Adiós, “ y el nombre tecleado.  Después de hacer esto, se encuentra la instrucción End que termina la ejecución del programa.

Paso 7. Guardar todo

Esto es sumamente importante.  Y no debí dejarlo hasta ahora: es algo que hay que hacer cada vez que se hace algún cambio.  Presiona el botón de guardar todo (Save All, también está disponible en el menú File):

23_-_Save_All
23. Botón Guardar todo.

Y aparece esta ventana:

24_-_Guardar
24. Ventana para guardar el proyecto.

Selecciona una carpeta (botón Browse) y, si es necesario, cambia el nombre.  Luego haz clic sobre el botón Save.  En las próximas ocasiones que presiones Save All ya no aparece esta ventana.

Paso 8. La ejecución

No, esta ejecución no tiene que ver con violencia, sino con ver si el programa hace lo que queremos que haga.  Para esto, presiona el botón para comenzar la depuración (Start debugging):

25_-_Start_debug
25. Botón Start debugging....

Y aparece nuestra aplicación:

26_-_Ejecutándose
26. Ejecución de la aplicación.

Escribo mi nombre y al presionar el botón Salir, aparece esta ventana:

27_-_Ejecución_2
27. Ventana de saludo.

Al presionar el botón Aceptar (o presionar la tecla Enter), se termina la ejecución y regreso a Visual Studio.

Sé que esto ha sido muy introductorio, pero espero que haya sido útil.  Si tienen dudas, dejen un comentario.  ¡Saludos!

El Tony y sus ondas...

Related Posts Plugin for WordPress, Blogger...