Habilidades de programación: Interactividad con el usuario

Si la depuración es el proceso de eliminar errores, entonces la programación debe ser el proceso de introducirlos. Edsger Dijkstra

Uno de los aspectos que nos ayudan a crear programas más divertidos y entretenidos, es la interactividad con el usuario, ya que le permite sentirse parte del videojuego, historia o proyecto que estemos creando. Así podrá participar en que el videojuego funcione de un modo u otro e incluso escribir la historia.

Pero como todos sabemos, programar no es fácil y anticiparse a lo que el usuario hará, tampoco lo es, por lo que hay que pensar previamente qué cosas queremos dejar elegir a la persona que vaya a interactuar con nuestro programa y evitar así que se produzcan errores.

Al final verás que el esfuerzo merece la pena. ¡Ver a  alguien utilizar tu programa y que interactua con él es una de las mejores sensaciones que puede tener un programador! Así que vamos a empezar a ver bloques de Scratch que te permitan desarrollar este aspecto.

  • En primer lugar, el bloque más sencillo que puedes utilizar es “Al presionar la bandera verde”.

Interactivity1

Cuando el usuario que quiere ejecutar tu proyecto Scratch pinche en la bandera verde, comenzarán a ejecutarse todos los bloques que se hayan colocado bajo el bloque “al presionar la bandera verde”. Puedes tener tantos programas como necesites que comiencen con este bloque.

  • Para complicarlo un poco, puedes utilizar un montón de bloques sencillos, algunos son los siguientes:

Interactivity2

Como ves, es posible permitir a los usuarios interactuar con tus personajes, por ejemplo, presionando teclas para que estos se muevan, escribiendo respuestas a preguntas y que tus personajes usen las respuestas del usuario para crear historias interactivas, mover a los personajes con el ratón, o realizar acciones cuando el usuario pincha sobre un objeto.

  • Una de las posibilidades más divertidas de Scratch en cuanto a la interactividad con el usuario es la posibilidad de que el usuario pueda utilizar su webcam o el micrófono para interactuar con los personajes de Scratch o el sonido para provocar ciertas acciones. ¿Cómo podemos hacer esto? Observa los siguientes ejemplos:

Interactivity3

¿Has visto? Podemos hacer que ciertos conjuntos de bloques se ejecuten cuando el sonido ambiente capturado por el micrófono sea mayor que un determinado umbral, o cuando se produce movimiento del vídeo encima de un objeto o del fondo. Las posibilidades de estos bloques son muy grandes y permitirán que tus creaciones Scratch sean totalmente interactivas con los usuarios.

Cuando tengas tu programa puedes compartir la url aquí, estaremos encantados de verlo y darte nuestra opinión. ¡Manos a la obra!

Anuncios

Habilidades de programación: Pensamiento lógico

El pensamiento lógico es indispensable a la hora de programar, ya que nos permite reconocer el problema que queremos solucionar, buscar una solución que podamos programar y analizar las salidas que obtengamos para formarnos conclusiones.

Un programa no siempre se comportará del mismo modo en todas las situaciones, sino que mostrará unas salidas diferentes según las entradas o la interacción que realice en ese instante con el entorno (si es que utiliza sensores). Por ello, es muy importante poder anticiparnos y programar un código que tenga en cuenta todas estas situaciones. Aquí es donde entra en juego el pensamiento lógico. Cuanto más desarrollada tengas esta capacidad, tu programa hará más a menudo lo que pensabas que haría.

Algunos de los bloques de Scratch que puedes utilizar para ayudarte a desarrollar esta habilidad son los siguientes:

  • Si estás empezando, comienza con:

Logic1

El bloque “si” <condición> “entonces” permite indicar al flujo del programa si deben ejecutarse ciertos bloques de código o no. Es decir, si se cumple la condición entonces se ejecutarán los bloques que están dentro del si. En el ejemplo, si el personaje está tocando el color azul dirá “Llegué a la meta”.

  • Una vez superado el bloque anterior puedes atreverte con el siguiente:

Logic2

Aquí además de tener bloques si  se cumple la condición, también tenemos bloques si esta no se cumple. Es decir, dentro del “si” irán los bloques que queramos que se ejecuten si la condición se cumple y dentro del “si no” indicaremos qué bloques deben ejecutarse si no se cumple la condición.

En el ejemplo, si el personaje está tocando el color azul dirá “Llegué a la meta”, pero mientras no lo esté tocando dirá “Aún no he llegado a la meta”.

  • Para alumnos muy avanzados se propone entender y poner en práctica los siguientes bloques:

Logic3

Prácticamente todos los bloques los conoces, excepto a lo mejor los de color verde, ya que son los más avanzados. Hay tres que vamos a explicar por separado:

  1. La operación Y: esta condición se cumplirá si ocurren las dos cosas simultáneamente. Si nuestro personaje está tocando al enemigo “y además” el número de vidas es 0 será el “Fin de la partida” y todo se detendrá.
  2. La operación O: la condición será verdadera cuando alguna de las dos que la forman se cumplen. En este caso, si nuestro personaje está tocando el borde “o” tocando al enemigo se le quitará una vida.
  3. La operación NO: lo que hace es evaluar la condición y devolver lo contrario, si la condición se cumple devolverá que no se cumple y viceversa. Ahora veremos si hemos llegado al final del juego o no viendo en qué nivel estamos, si el nivel en el que estemos es diferente de 5, la condición igual será falsa, pero “no” se encarga de hacerla verdadera y así podremos ver el mensaje “Aún te quedan niveles por descubrir”.

Estos bloques son los más importantes que hemos visto ya que son los que aportan la lógica a tu programa.Te animamos a que los pruebes y si tienes dudas nos las indiques, estaremos encantados de ayudarte.

¡Utilízalos de la forma más inteligente posible para desarrollar tu pensamiento lógico al máximo!

Habilidades de programación: Sincronización

Los ordenadores son inútiles, solo pueden darte respuestas.

-Pablo Picasso

A veces queremos que nuestro programa siga un orden determinado. Por ejemplo, que tal personaje realice una acción cuando otro ha acabado, y así formando una cadena ordenada de acciones.

¿Qué bloques podemos usar para controlar esto?

Tenemos varios bloques que nos permiten controlar la sincronización. El más básico es el bloque “esperar x segundos”, que nos permite que dos personajes establezcan una conversación. Es importante que el número de segundos en el que tarda uno en hablar sea el mismo que el que el otro espera escuchando.

Captura de pantalla 2015-05-02 a las 20.56.24

Si probamos a analizar este mini-proyecto en Dr.Scratch, vemos que sacamos en la parte de Sincronización la puntuación 1/3. ¿Te parece poco? ¡Pues a mejorar!

¿Y qué mas bloques podemos usar?

Podemos usar el envío de mensajes. Se encuentra en el apartado “Eventos” de color naranja. Este bloque funciona de la siguiente manera: cuando se ejecuta el bloque “enviar [mensaje]” el [mensaje] lo reciben el resto de personajes:

Captura de pantalla 2015-05-02 a las 21.02.33

En el ejemplo de arriba, el personaje del gato envía el mensaje [Pillado] cuando el puntero del ratón le toca, y la mariposa recibe ese mensaje mediante el bloque “al recibir[mensaje]”. Cuando la mariposa reciba el mensaje “pillado” se ejecutará el resto de bloques que tiene debajo.

Vamos a analizar este proyecto…

Captura de pantalla 2015-05-02 a las 21.11.13

¡Ahora tenemos 2/3! ¡Vamos avanzando! ¿Quieres tener la puntuación perfecta? Sigue leyendo…

Espera… ¿pero existen más bloques para controlar la sincronización?

¡Pues sí! Por ejemplo los bloques “esperar hasta que…” (bloques de color amarillo) o “cuando el fondo cambie a…” (bloques de color naranja). Un ejemplo de uso puede ser el siguiente:

Captura de pantalla 2015-05-02 a las 21.15.27

En el primer ejemplo, cuando la ejecución del programa llegue a ese punto se detendrá hasta que se cumpla la condición, en este caso hasta que vidas sea igual a 0. Cuando vidas valga 0, entonces continuará la ejecución del resto de bloques, en este caso “decir Game Over” y“detener todos”, lo que finalizará la ejecución del proyecto. En el segundo ejemplo, en el momento en el que el escenario cambie al fondo con el nombre “Primavera”, el personaje ejecutará los bloques colocados a continuación de la instrucción “cuando el fondo cambia a Primavera”, es decir, que se mostrará y dirá “¡Ha llegado la primavera!”

¿Se te ocurre algún bloque más? ¡Cuéntanoslo!

Saludos,

El equipo de Dr.Scratch.

(Dr.)Scratch Day 2015

scratchday

¡Se acerca el día!

El próximo 9 de mayo se celebrará, a nivel global y como cada año, el Scratch Day, una serie de eventos en los que niños y adultos se reúnen y comparten sus proyectos en Scratch. Es una manera estupenda para hacer proyectos en Scratch en grupo, compartir ideas, mejorar tus proyectos ya realizados  y aprender de los demás.

Desde éste enlace podemos ver los eventos que se celebrarán en España, pero si ninguno te pilla cerca, desde Dr.Scratch proponemos las siguientes actividades que podéis realizar en grupo:

Desde Dr.Scratch proponemos:

  • ¿ Tienes un evento de Scratch Day cerca? Averígualo aquí. Si eres de Sevilla recomendamos el evento que organizarán nuestros compañeros de Programamos.

Captura de pantalla 2015-04-19 a las 14.21.40

  • ¿No te pilla cerca ningún evento? Organiza un concurso con tu familia (padres contra hijos, por ejemplo) y pensad en un videojuego en Scratch. Programadlo juntos y analizadlo en Dr.Scratch. Gana el proyecto con más puntuación y con la idea más chula.

¡Cuéntanos tu experiencia! Déjanos un comentario, una foto o un enlace al proyecto que habéis realizado.

El equipo de Dr.Scratch.

Habilidades de programación: Control de flujo

El ordenador no es una máquina inteligente que ayuda a gente estúpida, de hecho, es una estúpida máquina que funciona sólo en manos de gente inteligente. Umberto Eco

Todo programa o proyecto de Scratch sigue un flujo de ejecución.

¿Qué es un flujo de ejecución?

Si te lo has preguntado al leerlo, el flujo de ejecución de tu programa es el orden en el que tus personajes realizan las distintas acciones, por ejemplo, moverse en una dirección primero, decir hola después y para acabar cambiando de disfraz.

Y es muy importante que nosotros controlemos el flujo del programa para saber perfectamente qué esta haciendo en cada momento y así nuestros personajes no empiecen a comportarse de forma “rara” debido a que realmente no estamos programando bien.

¿Cómo puedo controlar el flujo de mi programa en Scratch?

  • Nivel básico: El flujo de ejecución más sencillo será aquel en el que primero se realizará una acción (en lenguaje de programación, instrucción), más tarde se ejecutará otra instrucción y después otra… así hasta llegar al final de nuestro programa. A continuación tenemos un ejemplo:

Flow1

Podemos ver que cuando el usuario presione sobre la bandera verde se ejecutarán un bloque detrás de otro y así todos los bloques que se han incluido en el programa. Comenzará por el primero y dirá “Soy un gato que baila” durante 2 segundos, luego ejecutará “mover 10 pasos”, a continuación “girar 15 grados a la derecha”, y así hasta llegar al último bloque del programa.

  • Nivel medio: Algo más avanzado es utilizar lo que en programación se llaman estructuras de control, que en Scratch son los bloques de control de color ámbar. Si los observas uno a uno, todos ellos hacen que el flujo de tu programa cambie de algún modo.

Algunos de estos bloques de control nos ayudan si queremos que otros bloques se repitan varias veces. Intenta adivinar en los siguientes ejemplos, cuál se repetirá 3 veces y cuál para siempre.

Flow3Flow2

¡EXACTO! El programa de la izquierda estará ejecutando dos bloques por siempre, mientras que el bloque de la derecha ejecutará varias instrucciones 3 veces y entre algunos bloques esperará 0.5 segundos. Trata de buscar código que se repite en tu programa y utilizar este tipo de bloques.

  • Nivel alto: Si tu programa es más complicado, te encontrarás con el problema de no saber exactamente qué número de veces se deben repetir algunos bloques, sino que querrás que se repitan hasta que ocurra algo. Aquí te mostramos un ejemplo que puede resultarte de ayuda.

Flow4

Con esto conseguimos que el personaje diga “No me pillas…” hasta que toque al personaje llamado Enemigo, entonces dejará de repetir y dirá “Me pillaste!”.

Estos bloques pueden ser los más difíciles de entender, así que trata de avanzar poco a poco y con paciencia. Pero realmente aquí se encuentra gran parte de la lógica de la programación, entonces es muy importante que aprendas a utilizarlos. Y ya sabes, si tienes alguna duda o problema, no dudes en dejar un comentario y trataremos de ayudarte.

El equipo de Dr.Scratch

Habilidades de programación: Paralelismo

Divide y vencerás. Julio Cesar

Los ordenadores siempre hacen lo que nosotros les decimos que hagan, aunque muchas veces parezca que no. Además, son capaces de realizar muchas acciones en poco tiempo, incluso pueden realizar varias a la misma vez. Lo difícil viene cuando tenemos que solucionar un problema muy complicado, aquí es cuando es una buena práctica utilizar el “divide y vencerás”. Hacemos que nuestro gran problema se divida en otros más pequeños. Pero esto ya lo vimos en la entrada de Abstracción.

Entonces… ¿qué es el paralelismo? 

Es tener la posibilidad de hacer que nuestro programa realice varias acciones a la vez.

Para entendernos, un ejemplo puede ser que dos personajes se muevan al mismo tiempo. Esto se resolvería en primer lugar, dividiendo el problema inicial en dos problemas separados:

  1.  Consigo que el primer personaje haga un movimiento.
  2.  Programo al segundo personaje para que haga otro movimiento.

Y ahora viene la parte del paralelismo, hacemos que ambos hagan sus movimientos a la vez.

¿Cómo puedo conseguir esto en Scratch?

  • Nivel básico: la forma más fácil de hacer que dos acciones ocurran a la vez, es que cuando pulsamos la bandera verde (que es cuando comienza el programa a ejecutarse), ocurran dichas acciones.

En nuestro ejemplo, que los dos personajes se muevan cuando pulso la bandera verde. Por lo tanto, tendremos dos personajes y cada uno tendrá el bloque de evento siguiente:

Paral1

Y por debajo los bloques de movimiento que queramos que hagan nuestros dos personajes.

  •    Nivel medio: sabemos que en Scratch hay muchos bloques de eventos. Así que otra forma de conseguir paralelismo puede ser que ocurran cosas cuando presionamos una tecla, consiguiendo que nuestros personajes realicen acciones de forma paralela (aplicando el concepto de paralelismo).

Un ejemplo puede ser que nuestros dos personajes digan “A” al mismo tiempo durante 2 segundos al presionar la tecla a, lo cual se consigue con los siguientes bloques:

Paral2       Paral3

  • Nivel alto: hay muchos más bloques de eventos que nos ayudan a conseguir que en nuestro programa ocurran acciones de forma paralela. Entre ellos tenemos:

Paral5

Pero la idea es básicamente la misma, colocar alguno de estos bloques en los dos personajes que queramos que hagan acciones a la vez y por debajo de ellos poner los bloques que describan las acciones de dichos personajes.

Lo más divertido de Scratch es que puedes conseguir que los objetos (tus personajes) que incluyes en tu proyecto hagan tantas acciones como quieras, muchas de ellas a la vez aplicando paralelismo. Lo que hemos mostrado aquí son simples ejemplos. Así que, te animamos a que intentes realizar todas las ideas que se te ocurran y si en algún momento no sabes llevarla a cabo en Scratch no dudes en dejar tu comentario y trataremos de ayudarte.

El equipo de Dr.Scratch

Habilidades de programación: Representación de la información

Cada proyecto Scratch necesita un conjunto de información sobre los personajes para poder ejecutarse correctamente. Por ejemplo, necesitamos conocer la posición de cada personaje, la dirección a la que está apuntando, su tamaño, etc. Además, podemos guardar otro tipo de datos, como el nivel en el que nos encontramos, el tiempo transcurrido, la puntuación, las vidas, las recompensas recogidas…

Cada personaje tiene una serie de características o atributos, que en cada momento de ejecución del proyecto tienen un valor, y que pueden ser modificadas por los programas. Por ejemplo, un personaje tiene un tamaño determinado que puede ser modificado por el bloque “cambiar tamaño por 10”, haciendo que el personaje aparezca un poco más grande. A continuación mostramos la lista de atributos que tiene cada personaje y los bloques que pueden utilizarse para modificarlos:

  • Posición:

DataRep1

  • Tamaño:

DataRep2

  • Orientación:

DataRep3

  • Disfraz:

DataRep4

  • Visibilidad:

DataRep5

Otra manera de representar información es creando nuestras propias variables. Las variables pueden almacenar datos como la puntuación, las vidas que nos quedan o el nombre del usuario. Para crear una variable simplemente tenemos que acceder a la categoría Datos, pulsar “Crear una variable” y darle un nombre:

DataRep6

El programa de la izquierda fija la variable “Puntos” a 0 (lo que en programación se llama inicializar variables) mientras que el programa de la derecha cambia el valor de “Puntos” cuando se toca el color azul.

Otra opción más avanzada que nos permite la categoría Datos es el uso de listas. Las listas almacenan varios valores a la vez.

Para crear una lista vamos a la categoría Datos y pulsamos “Crear una lista”, le asignamos un nombre y vemos que nos aparecen las siguientes opciones para manejar la lista:


opciones-lista

El primer bloque “añade [thing] a [lista]” es bastante intuitivo y lo que hace es poner el elemento “thing” al final de la lista.

El bloque “borrar (1) de [lista]” nos permite borrar el primer elemento de la lista, pero si cambiamos (1) por (último) o por (todo), borraremos el último elemento o todos los elementos de la lista.

El bloque “insertar [thing] en (1) de [lista]” coloca en la posición (1) de la lista el elemento [thing] (moviendo los demás elementos una posición más atrás) pero si cambiamos (1) por (último) o (azar) lo insertaremos al final o en una posición al azar.

El bloque “reemplazar elemento (1) de [lista]” borra el elemento que haya en la posición (1) y coloca en su lugar un elemento [thing].

El bloque “elemento (1) de [lista]” nos devuelve qué hay en dicha posición.

El bloque “longitud de [lista]” nos dice cuántos elementos hay en la lista.

El bloque “[lista] contiene [thing]?” comprueba si en la lista existe ese elemento y nos devuelve “sí” o “no”.

Y finalmente, los bloques “mostrar lista” y “esconder lista” simplemente nos muestra o esconde la lista en la pantalla.

Una vez repasadas todas las cosas que podemos hacer con la lista, podemos aplicarlas a nuestro programa y hacer un proyecto como el siguiente:

DataRep8

Se trata de un proyecto que saca voluntarios a la pizarra. Primero vamos a borrar toda la lista de Estudiantes por si hubiera algún elemento en ella. Después vamos a querer recopilar los nombres de los estudiantes así que vamos a pedir tres veces (por ejemplo) el nombre del estudiante y lo vamos a insertar en la lista. Finalmente anunciaremos el nombre del voluntario que será elegido al azar. La ejecución del proyecto en Scratch nos da lo siguiente:

Captura de pantalla 2015-04-24 a las 12.14.25Captura de pantalla 2015-04-24 a las 12.14.47Captura de pantalla 2015-04-24 a las 12.15.56

Analizamos este proyecto en Dr.Scratch y observamos qué puntuación hemos tenido en la parte de “Representación de la información”:

Captura de pantalla 2015-04-24 a las 12.22.21

¡¡¡Enhorabuena!!! Hemos conseguido la puntuación completa en “Representación de la información”. ¿Se te ocurren más proyectos en los que usar listas? ¡Cuéntanoslo!

Podéis probarlo vosotros mismos aquí.

Saludos,

El equipo de Dr.Scratch.

Habilidades de programación: Abstracción

Una de las habilidades más complicadas a la hora de programar es la de la abstracción.

Pero, ¿qué significa abstraer? Abstraer consiste en dividir un problema(o reto, o desafío) grande, en problemas pequeños y de fácil solución. Por ejemplo, imaginemos que nos piden que construyamos un coche. En un primer momento podemos llevarnos las manos a la cabeza y pensar “¿Cómo voy a construir yo un coche?”, pero si aplicamos la habilidad de abstracción podemos dividir el problema grande (construir un coche) en problemas pequeños(buscar un motor, montar el volante, montar los asientos, la carrocería, etc). Si lo vemos de ésta manera, el problema grande se ha convertido en un conjunto de metas más alcanzables.

¿Es la abstracción una habilidad utilizada sólo en la programación?

¡¡¡No!!! Podemos utilizarlo en cualquier aspecto de nuestra vida. Es bastante útil cuando, por ejemplo, necesitamos prepararnos para algún examen. En nuestra agenda anotaríamos “Estudiar mates”, pero si en vez de anotar eso apuntamos “Hacer problemas de mates del 1 al 10”, “Hacer esquema”, “Hacer resumen”… Una tarea costosa se ha convertido ahora en un número de tareas que se pueden hacer en una hora cada día.

¿Y en qué me ayuda a mi la abstracción?

La abstracción nos ayuda sobre todo a percibir los desafíos como metas alcanzables. Puede ayudarnos también a avanzar poco a poco en el desarrollo de un proyecto en Scratch y además puede servir para que reutilicemos código que ya hemos hecho.

A continuación vamos a exponer tres maneras de usar la abstracción en Scratch. Trataremos de mejorar el siguiente programa usando la abstracción.

Abs1Abs2

1. Nivel básico:

Abs3

2. Nivel medio: creando funciones propias.

    Abs6      Abs7

3. Nivel avanzado: utilizando clones(cuando queremos repetir personajes).

Abs8

Y hasta aquí todo por hoy, y como siempre, podéis comunicarnos dudas y sugerencias.

Un saludo,

El equipo de Dr.Scratch.

Taller de Dr.Scratch en CEIP Lope de Vega

El jueves 9 de abril, se realizó en el colegio CEIP Lope de Vega un taller con 25 alumnos de 5º de primaria. El objetivo de dicho taller era presentarles la herramienta Dr.Scratch y observar cuál era el uso que realizaban de ella.

Los alumnos dirigidos por Jorge Lobo están muy familiarizados con Scratch, por lo que fue un grupo estupendo para realizar el taller. Jesús Moreno procedió a explicarles la finalidad de la herramienta y les indicó que les entregaríamos unas encuestas que tenían que contestar lo más sinceramente posible, las cuales eran anónimas.

17080954486_af5698c33f_o16484467424_05b8638009_o

Sin más rodeos, todos ellos se pusieron manos a la obra, algunos incluso habían accedido a la página de Dr.Scratch antes de indicárselo (las nuevas generaciones vienen pisando fuerte). La aceptación de la página principal de Dr.Scratch fue generalizada y empezaron a analizar uno de sus videojuegos programados por ellos mismos con anterioridad.

En cuanto los resultados de los análisis se fueron mostrando en pantalla, empezaron los primeros comentarios entre ellos, preguntándose qué nota habían sacado, qué iban a contestar en la siguiente pregunta de la encuesta, qué iba a hacer su compañero ahora… Los compañeros que entendían cuál era el siguiente paso ayudaban a los que tenían más cerca instintivamente y poco a poco fueron avanzando y conociendo la herramienta.

17105389452_cb5ce9fbaa_o16919345680_ca4a82bb9f_o

Lo más gratificante del taller y que queremos compartir, fue conseguir que algunos de los alumnos tratasen de mejorar sus habilidades programando, por el  hecho de querer sacar una mayor puntuación. Al principio, la nota generalizada era de nivel medio y prácticamente todos tenían su nivel alto al finalizar el taller. Mencionar el caso de una niña que empezó con un 10 y terminó con un 18, además de ver en su forma de expresarse que le había encantado la experiencia.

IMG_20150409_110626969_HDR

Cuando conseguían mejorar su nota en el proyecto de Scratch se les entregaba un certificado de asistencia al taller y unas pegatinas de la herramienta para agradecer su ayuda al desarrollo de Dr.Scratch con sus opiniones y permitiéndonos tomar nota de sus necesidades.

16919128128_de6bfd2054_o17105381772_52468671dc_o

Durante todo el proceso el equipo de Dr.Scratch estuvimos de soporte a sus dudas y así  hemos podido observar qué dificultades se encontraban al utilizar la web y con su ayuda poder seguir mejorando. La experiencia ha sido muy enriquecedora y desde aquí queremos dar de nuevo las GRACIAS al profesor Jorge Lobo y a todo el claustro del colegio por su agradable acogida y por tratar de acercar a los alumnos a la programación y la robótica con ideas tan originales. Además de agradecer su colaboración al FECYT, la cual nos permite realizar estas actividades.

Errores comunes al empezar a programar

Cada acto de aprendizaje consciente requiere la voluntad de sufrir una lesión en la propia autoestima. Es por ello que los niños pequeños, antes de ser conscientes de su autoestima, aprenden más fácilmente. Thomas Szasz

Cuando empezamos a realizar cualquier actividad, del tipo que sea, siempre cometemos errores, lo difícil es asumir este hecho para más tarde ponerle solución.

Dr.Scratch nos ayuda en la tarea del aprendizaje de los lenguajes de programación y para ello nos indica algunos de los errores más comunes que varios docentes han observado en sus alumnos a lo largo de sus años de enseñanza en la materia.

errores

Estos errores pueden ser difíciles de entender para personas que están comenzando, somos conscientes de ello y estamos trabajando para tratar de mejorar la herramienta y que sean fácilmente entendibles. Pero mientras tanto os facilitamos unas transparencias realizadas por Jesús Moreno que os ayudarán a entender la finalidad de Dr.Scratch y estos errores tan comunes.

Como siempre podéis hacer cualquier comentario y preguntar toda duda que os surja, estaremos muy contentos de recibirlos.

El equipo de Dr.Scratch