Posts filed under ‘Serie PC’

Un proyecto analizado con Dr. Scratch.

Se describe la herramienta Dr. Scratch para el análisis de proyectos en scratch 2.0 utlizando un ejemplo concreto.

Continue Reading 30/10/2016 at 5:39 pm Deja un comentario

Pensamiento Computacional: Secuencias.

PCSecuenciasEsta publicación la realicé originalmente en el blog Experiencias de Progragramación, la estoy re editando aquí con la finalidad de mantener el sentido de completitud en el blog.

Se trata de uno de los elementos más básicos del Pensamiento Computacional y se enmarca en la noción de programación, que en las Ciencias de la Computación podría definirse como la capacidad que tienen los computadores de definir sus tareas y/o funciones mediante listas de instrucciones denominadas programas. Estas instrucciones se colocan en un orden, normalmente lineal, que determina el “paso a paso” de la tarea o función a programar en función de esas instrucciones que el computador entiende y ejecuta.

Frecuentemente, en los programas puede observarse secuencias de instrucciones que se repiten, y los lenguajes de programación disponen de estructuras de programación que simplifican el programa, si se logra identificar el patron de repeticion.

De manera que Secuencias consiste en tener conciencia de que cada instrucción realiza una acción determinada y que el conjunto de instrucciones ordenadas de una forma específica  conduce a un resultado. Incluye además la noción de que el alterar la secuencia, puede alterar el resultado.

Identificación de Patrones.

La identificación de patrones o ciclos es un indicador que pertenece a la dimensión de Conceptos, según el esquema de operacionalización del MIT y consiste, en términos de los lenguajes de Programación Educativos (LPE), de identificar  instrucciones que se repiten en una determinada secuencia de programación.Esta habilidad es fundamental para programar de forma efectiva y eficiente, además entrena la mente para el análisis y la minería de datos.

En la imagen anterior puede observarse dos programas realizados en Scratch los cuales tienen el mismo resultado (dibujan un pentágono), el de la izquierda repite secuencias de instrucciones, el de la derecha resume esa cantidad de bloques en una estructura REPETIR.

Estrategia.

He tenido excelentes resultados desarrollando esta habilidad con el trazado de figuras geométricas desde mis inicios con el Krell Logo, una vez consolidada, los chicos explotan en creatividad realizando dibujos increibles.

 

En principio se les explican los conceptos básicos para construir las figuras: Bloque de mover, girar, subir lápiz, bajar lápiz y la regla del 360 y se les pide dibujar un cuadrado, luego un triángulo, luego un pentágono, pronto descubren que se repiten bloques (la conducta observable es cuando los chicos utilizan la copia de bloque para completar el ejercicio)

Un buen recurso es tener un programa para inicializar el escenario como este. Dado a que los estudiantes estarán ejecutando sus programas varias veces hasta obtener el resultado deseado.

La secuencia de los ejercicios es importante para lograr una consolidación completa de la habilidad por lo que recomiendo lo siguiente:

No FIGURA OBSERVACIONES
1 CUADRADO  Dibujarla en ambos sentidos
2 TRIANGULO Explicación de la Regla del 360
3 PENTÁGONO Dibujarla en ambos sentidos
4 HEXÁGONO Dibujarla en ambos sentidos
5 RECTÁNGULO Secuencia de 4 Bloques
6 PUNTA Secuencia de 4 Bloques
7 ESTRELLA Refuerzo

 

Esta imagen ayuda mucho si se deja en el escritorio para que puedan experimentar:

También resulta muy estimulante dejarlos jugar, verán como comienzan a dibujar diferentes figuras, luego añaden colores, hasta que cambian el código para obtener dibujos impresionantes.

Finalmente, es importante identificar cuando están listos para introducirlos al manejo del ciclo repetir, el comportamiento observable típico es cuando comienzan a copiar los bloques (botón derecho –> duplicar) y crean esos programas largos.

Después de la explicación, puede solicitarle cambiar todos sus programas utilizando el bloque repetir.

Les dejo este proyecto, que contiene algunos programas relacionados con este tema y puede además utilizarse para explicar la regla del 360:

figuras

NOTA:

La regla del 360 se utiliza para determinar cuanto es el ángulo a cruzar cuando se realizan figuras geométricas regulares cerradas (cuadrado, triángulo, pentágono, etc) y consiste en dividir 360 entre la cantidad de lados de la figura. Por ejemplo, un octágono tiene 8 lados luego el ángulo será 360/8 = 45 grados. El siguiente programa construye un octágono de 50 pasos de lado presionando la “O”:

Si decides a aplicar esta estrategia, cuéntanos como resultó todo, qué mejoras lograste, qué otras conductas observables identificaste…!

12/10/2014 at 8:40 am Deja un comentario

Pensamiento Computacional – Condicionales

condicionales     Sin duda, los condicionales son el concepto más fundamental de la noción de programación pues permite construir la inteligencia de los programas. Cuando una aplicación toma decisiones sobre la base de los datos que maneja, solemos decir que es inteligente.

     Por otro lado, mientras más estructuradas sean las decisiones son más fáciles de programar (para quienes teorizan sobre las decisiones y las clasifican en estructuradas y no estructuradas, las primeras son aquellas cuya solución se conoce de antemano y simplemente dependen de algún evento que las dispare).

     Los condicionales son entonces estructuras de programación que permiten ejecutar un grupo de instrucciones dependiendo de una decisión que se toma en un entorno de programación, entendiendo que estas decisiones se toman sobre la base de una o varias comparaciones que se realizan en el entorno de programación. Brennan y Resnik (2012) los definen como “..la habilidad de tomar decisiones con base en ciertas condiciones, que apoyan la expresión de múltiples resultados.”, donde las condiciones se materializan a través de comparaciones.

     En Scratch existen bloques que hacen esta función donde la comparación queda implícita, dos ejemplos son el bloque REPETIR y el bloque REBOTAR SI ESTA TOCANDO UN BORDE:

comparaciones

     El programa de la izquierda, mantiene un contador invisible con la cantidad de veces que repite los bloques internos y cuando supera el número 4, continúa con los siguientes bloques. El programa de la derecha verifica si se está tocando un borde y en tal caso, modifica la dirección del objeto convenientemente.

     Los bloques, por excelencia utilizado para tomar decisiones en Scratch son SI y SI SINO. Ellos cuentan con un espacio en forma de hexágono alargado para colocar las condiciones, esto es las comparaciones, las cuales podemos encontrar en los bloques de OPERADORES a y en SENSORES y tienen la misma forma (hexágono alargado) continuación como se muestra a continuación:

comparaciones1

     El manejo de todos los bloques que tienen que ver con condicionales puede llegar a ser complejo, de manera que la estrategia debe ser incremental de forma tal que se sugiere comenzar con bloques SI con condiciones TOCANDO COLOR como se muestra en el programa anterior, el cual es parte de un juego de laberintos con que se presta para iniciar a los más pequeños con el concepto de condicionales.

laberinto     Este proyecto además permite reforzar la práctica incrementos e interacción, consiste en partir de una idea original e ir modificándola de acuerdo a las iniciativas que los estudiantes van planteando. En mis prácticas yo planteo la idea original, con un laberinto y un jugador además doy libertad para utilizar colores y objetos, eso da pié a errores que, normalmente los estudiantes resuelven por si solos.

     Luego se agrega otro jugador o los obstáculos móviles, después puede agregarse niveles, puntuación, entre otras cosas. Esto puede ser un punto de partida tal vez en 3er grado, 4to  grado. En todo caso es importante que los estudiantes tengan un buen dominio de los conceptos anteriores (secuencias, ciclos, paralelismo y eventos) para puedan concentrar todo su esfuerzo en asimilar los condicionales.

     Pero esto no termina aquí, es importante seguir acomodando este concepto, así por ejemplo cuando se lleva a trabajar con variables puede introducirse el uso de otras condiciones (decision igual decision mayor que decision menor que decision no) al tener esto consolidado entonces comenzar a utilizar operadores booleanos  ( decision y decision o) ya que esto implica manejo de condiciones múltiples.

31/08/2014 at 11:02 am Deja un comentario

Pensamiento Computacional: Eventos.

eventosEn el mundo computacional actual, es inevitable desligarse de este concepto, prácticamente desde que los programas dejaron de ser absolutamente secuenciales. Claro que en aquella época algún “evento” iniciaba el programa, un “RUN” por ejemplo digitado desde algún interfaz de texto. Ahora las cosas son muy diferentes, los teléfonos pueden estar grabando un video mientras reciben un mensaje de texto, las PC y tabletas pueden desplegar un video, mientras se digita en un documento. Esta sensación de estar haciendo varias cosas a la vez es solo posible si los distintos programas que se ejecutan, están asociados a determinados “eventos”. En síntesis todos los dispositivos electrónicos programables actuales “Dispositivos Procesadores de Información” como los llamara J. Wing (2010) poseen esta capacidad por lo tanto manejan “Eventos”. Los lenguajes de programación actuales han evolucionado asimilando estas características y el primer lenguaje de programación en ponerlo al alcance cognitivo de de los más jóvenes es sin duda Scratch. En síntesis un evento es un acontecimiento que ocurre en un momento determinado: si cae un rayo,  comienza a llover o simplemente sale el sol, eso es  un evento. Por su puesto que para el computador es algo que pasa en su teclado, mouse, red, micrófono o inclusive algo que pasa entre los elementos de software mismo, por ejemplo cuando dos objetos en movimiento se tocan. Hay varias formas de introducir este concepto, sin embargo es importante destacar que los chicos están familiarizados con él: Constantemente están tecleando o tacteando (uso de los dedos para interactuar con diferentes dispositivos con pantallas táctiles como ipods, game boys, entre otros).

En el entorno de Scratch el eventos “al presionar bandera verde” y “parar” se utiliza desde el primer momento, así que en pueden utilizar esto como anclaje cognositivo para comenzar.

navegar

Y el ejercicio más apropiado es el que yo denomino “navegar” el cual consiste básicamente en manipular un objeto utilizando el teclado, parecerá trivial sin embargo déjeme sustentar su importancia:

  1. Es sumamente sencillo, en menos de 15 minutos los chicos comienzan a jugar con los diferentes scripts.
  2. Naturalmente es asociado con juegos de video ya que todos han, de una u otra forma, jugado alguno cuya interacción depende de teclas. Esto despierta automáticamente el interés por “hacer juegos”.
  3. Tiene muchísimas formas de aplicación.

Cuando enseñaba Krell Logo en los 90´s esto se dejaba para los niveles medios ya que no se disponía de código que representara la idea de manera tan concreta como en la actualidad.

En una segunda etapa pueden introducirse otro evento  como por ejemplo, “Al presionar Objeto”

NOTA: En el Scratch 2.0 hay una categoría de bloques exclusiva para los “eventos” donde se han incorporado bloques como “al cambiar al fondo…” y “cuando el cronómetros sea mayor que….”, que te invito a explorar.

Finalmente, este tema bien puede ser la transición al uso de condicionales, que es otro de los conceptos manejados en la operacionalización del pensamiento computacional realizada por el MIT.

Antes de concluir esta publicación me gustaría adelantar algo respecto a las Practicas y a las Perspectivas, las otras dimensiones de la variable Pensamiento Computacional y es que sus indicadores deben considerarse en paralelo con los Conceptos y si bien deben desarrollarse instrumentos separados para medirlos, estos pueden ser medidos mientras se desarrollan los conceptos.  Llegado el momento estaré disertando sobre esto.

 

23/07/2013 at 6:52 am Deja un comentario

Pensamiento Computacional: Paralelismo.

Introducción.

En una publicación anterior, se presentó la fundamentación teórica del pensamiento computacional, haciendo referencia a uno de sus indicadores : la identificación de patrones (ciclos). En esta, se presenta otro de los indicadores denominado “paralelismo”,  perteneciente a la dimensión Conceptos de la variable  (para mayores detalles sobre la operacionalización, puede consultar el final del post Pensamiento Computacional de este blog )

En este orden de ideas, el paralelismo se define como la capacidad que tiene los artefactos programables de realizar tareas o acciones de manera simultánea, Brenan y Resnik (2012) lo definen como “… secuencias de instrucciones que se suceden simultáneamente”. Visto como una competencia, es la capacidad de utilizar este recurso computacional de manera eficiente y oportuna. Más concretamente, consiste en la capacidad para programar tareas en un dispositivo inteligente de manera tal que puedan trabajar de manera simultánea y coordinada para el logro de un objetivo específico.

Muchos de los dispositivos inteligentes modernos tienen esta capacidad, es posible escribir un mensaje de texto mientras se monitorea el estado de recepción de la señal, o se recibe una llamada, por ejemplo. El entendimiento de esta capacidad es vital para comprender hasta donde es posible llegar con un dispositivo programable determinado y por ende cómo obtener el mejor provecho de él. Además en tanto siga evolucionando la tecnología, habrá dispositivos con mayor poder de procesamiento y mejores características.

Para el programador, es una competencia básica para la elaboración de programas que además reviste un nivel de dificultad mayor relacionado por ejemplo con la identificación de patrones.

Para desarrollar esta habilidad con Scratch, se propone entonces utilizar los diálogos como elemento para la introducción de este indicador, por tratarse de un recurso literario bien conocido por los niños y sumamente fácil de implementar en este entorno. En concordancia con esta situación es posible mencionar el documento “Computación Creativa. Una Introducción al Pensamiento Computacional orientado al diseño, este documento presenta una serie de actividades para el desarrollo del PC. La Sesión 3, específicamente utiliza los diálogos para la introducción al paralelismo.

La Estrategia.

Paso 1. Para iniciar, los estudiantes deben dominar  los bloques decir … por, decir, pensar…por y pensar. De los bloques de control, es necesario saber utilizar los bloques al presionar bandera verde, y esperar … segundos.Pueden explicarse antes de la actividad de forma magistral apoyándose en el entorno un videobeam es ideal o una pizarra digital para esto.

Paso 2. Seguidamente solicite a los chicos que seleccionen dos personajes (objetos) cualesquiera los coloquen sobre algún escenario y programen una conversación corta como un intercambio de saludos. Lo primero que preguntarán es cómo hacer para que no “hablen al mismo tiempo”, con esta observación concientizan la esencia del paralelismo, pero ven la necesidad de coordinar los programas. Si no descubren el uso del esperar … segundos, puede ayudárseles pero dejar que descubran cómo utilizarlo. Usualmente a alguno se le ocurre y se encarga de mostrar su hallazgo a los demás. Estas interacciones sociales resultan ser fijadores increíblemente efectivos del aprendizaje (cabe mencionar aquí  Vigosky ).

Paso 3. El siguiente paso puede ser ampliar la conversación entre los personajes, puede solicitarse que cada personaje “hable” al menos cinco veces.

Paso 4. Después de esta experiencia, puede introducirse el uso de los diagramas de tiempo, como herramienta para el diseño de diálogos. Con una hoja de cálculo (Excel por ejemplo) se puede hacer fácilmente ya que tiene la retícula incluida y se pueden importar objetos como las cajas de diálogos en la sección de insertar à formas:

DiagramadeTiempo

En este caso, cada fila representa un (1) segundo, las cajas de dialogo se estiran hasta ocupar la cantidad de segundos (filas) que estará visible el texto y los espacios en blanco representan el tiempo que ha de esperar el objeto antes de presentar el siguiente texto:

Es muy fácil también realizar esta plantilla en papel o crearla en la hoja de cálculo e imprimirla.

Paso 5. Una vez que los estudiantes han dominado esta técnica, pueden abordar proyectos más ambiciosos, donde se combine el diálogo con el movimiento, en estos casos es recomendable realizar un programa para el diálogo y otro para el movimiento en cada objeto.

Les dejo el siguiente proyecto, con su respectiva hoja de tiempo como un ejemplo de lo planteado.

dialogo

Les recomiendo que lo descarguen, ejecutado desde la web, hay  distorsiones en los tiempos.

Hoja de Tiempo en Excel: DT Dialogo

24/11/2012 at 9:37 pm Deja un comentario

Pensamiento Computacional

Estoy dejando para su lectura mi traducción de la conferencia denominada “Pensamiento Computacional y Pensando en Computación” ofrecida por la Dra Jeannette M Wing a finales del 2009 para el Instituto para la cognición Hombre/Máquina de Florida,  considerando que hay muy poco material en español sobre esta variable.

Traduccion Jeannette M Wing Computational Thinking and Thinking About Computing

 Debo aclarar que no soy traductor de profesión, por lo que la traducción tiene sus detalles los cuales agradecería si me ayudan a mejorar con sus participación, si es posible, además contiene texto resaltado, identificando lo que yo considero son ideas principales, dimensiones, o indicadores. También son la guía para el resumen que hago a continuación.

El resumen de la Ponencia.

La Dra. Wing asegura que el Pensamiento Computacional (PC) será una habilidad básica para mediados del siglo 21 y para definirlo comienza teorizando sobre las Ciencias de la Computación en términos de dos ejes: Abstracción y Automatización. Define la abstracción como la representación del mundo físico en términos de un modelo matemático. Esta abstracción es manipulada para automatizarla.

La automatización, por otro lado debe ser considerada como una combinación de hombres y máquinas compartiendo de manera armónica las habilidades que mejor maneja cada quien.

Define PC como todo lo que tiene que ver con abstracción la cual puede tener varios niveles, considerando que la abstracción puede definirse como un subconjunto de propiedades de un fenómeno cada nivel puede tener diferentes propiedades del mismo subconjunto.

La eficiencia de una abstracción se mide en términos de espacio y tiempo, que tan rápida es la abstracción automatizada (tiempo) y cuanto ocupa (espacio), menciona además, que el entorno está llevando a considerar otra dimensión: energía, esto es cuánta energía consume la aplicación de la abstracción.

Otros factores a considerar, como la exactitud, modificabilidad, costo, usabilidad también son importantes.

PC también es producto de la convergencia de la matemática y la ingeniería aplicando las matemáticas para formular modelos los cuales están restringidos por factores físicos, como memoria, velocidad de procesamiento y las mismas limitaciones del ser humano como parte del un autómata. Sin embargo las soluciones pueden ir más allá de la física, como ocurre en los mundos virtuales (Second Life).

Quiero hacer un paréntesis para comentar lo siguiente: Hasta aquí es posible concluir que el PC es en primera instancia una competencia que requiere conocimientos, habilidades y propósito de quien la posee o desarrolla. El PC permite abordar situaciones complejas utilizando el modelado restringido por realidades físicas además de métodos y técnicas propias de las ciencias de la computación para interpretarlas e implementar aplicaciones prácticas.

En otro documento, se define PC como “Proceso del pensamiento a través del cual los problemas y sus soluciones se representan de forma tal que puedan ser llevados a cabo de manera efectiva por un agente de procesamiento de información.” (traducido del original http://www.cs.cmu.edu/~CompThink/ )

Prefiero pensar en término de una competencia con la intención de poder abordar de manera estructurada métodos, estrategias o modelos aplicables.

En apariencia este es un asunto que concierne a ingenieros en computación y profesionales afines, pero no. La doctora Wing abunda en ejemplos de diferentes disciplinas donde el PC está influenciando la forma de pensar de profesionales de esas áreas. Continúo con el resumen:

Comienza con la biología: una disciplina donde muchos métodos de las ciencias de la computación están siendo utilizados para generar avances importantes, el algoritmo shotgun utilizado para descifrar el genoma humano, es solo un ejemplo. Actualmente hay equipos de biólogos y científicos de computación trabajando juntos, al punto de que se está preparando una nueva generación de “Biólogos Computacionales”.

Seguidamente la Dra Wing pasa a explicar detalladamente la aplicación de uno de estos métodos en biología, el Modelo de Chequeo, específicamente en el caso de procesamiento de proteínas.

El siguiente ejemplo tiene que ver con un método de las ciencias de computación que está influenciando muchas disciplinas, se trata de Aprendizaje de Máquinas o Aprendizaje automático el cual consiste fundamentalmente en algoritmos que aplicados sobre grandes cantidades de datos, permiten identificar patrones, grupos de patrones o clusters menciona brevemente cómo se está utilizando este método en astronomía, medicina, meteorología, neurociencias, economía, deportes, entretenimiento, química, física, geociencias, en la sociedad, ingeniería.

Le da especial importancia a las implicaciones que tiene esta situación en la educación, especialmente en los que ellos denominan K-12 (Kinder to 12th grade, preescolar a diversificado en el caso que estoy presentándoles actualmente, en Latinoamérica tiene varias denominaciones, sin embargo, todas coinciden en la etapa de educación formal que precede a la universidad) y reta a la comunidad científica a buscar las maneras distribuir los conceptos de las ciencias de la computación a lo largo de estas etapas de manera de adaptar dichos conocimientos a la madurez del estudiante.

Divide la pregunta en dos partes, una es precisamente esta desagregación de los contenidos a lo largo del las etapas de la Educación Básica General (así es como se le conoce ahora en Venezuela) y la otra el uso del computador como herramienta siendo muy enfática en el hecho de cómo utilizar herramienta y hace la analogía de la calculadora: no porque sepa utilizar una calculadora, significa que sabe cómo sumar, restar, etc.

Yo creo que en Latinoamérica estamos avanzando en ese sentido y pongo como ejemplo el caso del INSA, el cual invito a revisar, también en Argentina, Chile, Uruguay, Costa Rica, existen experiencias que bien valdría la pena contrastar con los planteamiento de la Dra. Wing.

 Continuando con el resumen, la Dra Wing le da un fresco giro a su ponencia para explicar un caso de PC en la cotidianidad, el caso de la cafetería del NSF que invito a disfrutar en el extenso de la traducción.

Seguidamente presenta el programa CDI (Cyber-Enabled Descovey and Innovation, Descubrimiento Ciber – Activado en cual ha extendido por todas sus dependencias y pretende premiar a las organizaciones que tengan aportes significativos que involucren PC en investigaciones colaborativas y transformacionales.

Para finalizar, la conferencista define los conductores o direccionadores de las ciencias de la computación, identificando los direccionadores tecnológicos, como aquellos relacionados con los avances en las tecnologías que apoyan las ciencias de la computación esto es redes, semiconductores, telecomunicaciones, procesadores; Los sociales definidos por las expectativas de la sociedad, 100% disponibilidad, 100% confiabilidad, grandes espacios de almacenamiento y finalmente los conductores científicos definidos por la producción de conocimiento en ciencias de la computación donde destaca las cinco preguntas profundas del área.

Qué es computable? No en término de una máquina o un grupo de ellas, sino en términos del autómata formado por máquinas e individuos complementando sus capacidades para resolver un problema.

P=NP? Esta es una pregunta muy teórica, propia de las ciencias de la computación y que tiene que ver con la manera en que se clasifican los problemas de acuerdo a su complejidad, vistos desde la perspectiva computacional que define las técnicas y métodos a aplicar. Esta pregunta no ha sido contestada y tiene muchas implicaciones en esta área.

Qué es inteligencia? Esta pregunta, también muy debatida, sobre todo a la luz de los avances en lo relacionado a inteligencia artificial y aprendizaje automatizado.

Qué es información?. Hace la analogía de la teoría de la información de Shannon y la inexistencia de planteamientos similares que se puedan explicar otros fenómenos como por ejemplo los procesos biológicos vistos como un proceso de información.

Cómo construir sistemas complejos de forma simple? Hasta ahora han sido construidos sistemas complejos pero de manera compleja también.

Estas son las preguntas más importantes que dirigen la investigación en las ciencias de computación. Los avances en las investigaciones en ésta área naturalmente traerán consecuencias en la forma como se viene formando a los profesionales de esta área y por supuesto, las aportaciones que se puedan brindar en otras disciplinas, es por ello que las engloba como direccionadores científicos en las ciencias de la computación.

Finalmente quisiera esquematizar pensamiento computacional conceptualmente basándome un poco en las conferencias web ofrecidas por el Dr. Mitch Resnick y la Dra Karen Brennan del MIT que reflejan la manera en que ellos están operacionalizando la variable:

Pensamiento Computacional

Conceptos

Secuencias

Ciclos

Paralelismos

Eventos

Condicionales

Operadores

Variables

Listas

Prácticas

Incrementos / Interacción

Pruebas / Depuración

Reuso / Remezclas.

Abstracciones / Modularización

Perspectivas

Expresión

Conexión

Entendimiento

Más adelante estaré ahondando sobre estos tópicos sobre la base de las conferencias y mis propias experiencias.

Conferencias Web:

http://scratched.media.mit.edu/resources/computational-thinking-practices-april-2011-webinar

http://scratched.media.mit.edu/resources/computational-thinking-practices-may-2011-webinar

http://scratched.media.mit.edu/resources/scratched-resources-july-2011-webinar

http://scratched.media.mit.edu/resources/scratch-curriculum-guide-overview-august-2011-webinar

26/08/2011 at 9:06 am Deja un comentario


LICENCIA

Licencia de Creative Commons
Blog Competencias Estudiantiles del Tercer Milenio by Ing. Julio Cubillan Msc, is licensed under a Creative Commons Reconocimiento-NoComercial-CompartirIgual 4.0 Internacional License

Publicaciones por mes

Categorías

abril 2017
L M X J V S D
« Nov    
 12
3456789
10111213141516
17181920212223
24252627282930

Estadísticas

  • 34,424 Visitas

Ingresa tu e-mail para recibir notificaciones.

Únete a otros 376 seguidores

Mis enlaces en la Web