miércoles, 31 de octubre de 2012





Shimon Schocken cuenta la historia de su familia, de cómo sus abuelos y sus padres a pesar de no tener un nivel alto de estudios pudieron salir adelante con sus familias, hasta el punto de poseer sus propios negocios, esto con ayuda de personas estudiadas a las cuales tenia que pagarles por su ayuda.

Con este ejemplo nos da a entender que no es necesario asistir a un aula de clases para aprender, y se enfoca en una forma de aprendizaje que está ganando mucho campo en estos tiempos, hablo de ser auto didacta. De esta forma Shimon llega a la conclusión de que los profesores no necesariamente tienen que enseñar, solo tienen que brindar un entorno y los recursos para que el estudiante se desenvuelva y así poder visualizar sus fortalezas y debilidades. Esto impulso la creación de NAND2Tetrix, lo que refiere a cursos auto-organizados espontáneamente orientado al aprendizaje de software que se le dificulta tanto a las personas (me incluyo). El querer aprender sobre un tema siempre lleva al éxito, el exigirse e interesarse por aprender asegura que lo que haces te gusta.

En estos momentos Shimon desarrollo una aplicación para tablets con el fin de enseñar a niños de primaria matemáticas, otra área que se nos dificulta a muchos, esto hace que las limitaciones de la gente desde el punto de vista cognitivo disminuyan y en un futuro estas personas sean desarrolladores y personas que aporten en todos los campos del saber.

Este tipo de trabajos orientado al beneficio de las personas es el que todos deberían realizar, el buscar un bien común muchas veces es más gratificante que el dinero.

lunes, 29 de octubre de 2012


¿POR QUÉ TODOS TIENEN TANTO AFAN?



Es algo impresionante como al utilizar un motor de busca para encontrar cursos ‘’cursos rapidos’’ aparezcan cientos de resultados que ofrecen enseñar desde lenguajes de programación hasta como tocar un instrumento, esto en pocas horas.
En un artículo publicado en internet se realizo una búsqueda avanzada en Amazon.com con los siguientes resultados:
y obtuve 248 ítems de resultado. Los primeros 78 fueron libros de computación (el número 79 era Aprende Bengali en 30 días -- Learn Bengali in 30 days ). Remplacé "days" (días) por "hours" (horas) y obtuve, sorprendentemente, resultados similares: 253 libros más, con 77 libros de computación seguidos de Aprende Gramática y Estilo en 24 horas (Teach Yourself Grammar and Style in 24 Hours) en el número 78. Del total de los primeros 200, 96% fueron libros de computación.

Se llega a dos conclusiones,  que la gente tiene una gran necesidad de aprender sobre computadoras o que este tema es demasiado genial y muy apasionante. Las dos tienen mucho de cierto, pero basado en mi opinión las personas no se apasionan mucho por este tema debido a que el método educativo es demasiado rígido y obsoleto. No se puede aspirar que cualquier persona cree un código de programación en el mismo tiempo y con la misma calidad, lo cual desmotiva a muchos estudiantes de la computación. “no se puede juzgar a un pez, un perro y un gato por su habilidad para escalar un árbol”.
El arte de la programación no es complejo del todo, aunque hablando desde mi punto de vista personal, no soy el mejor en ello. Pero creo que es algo que se puede aprender  arraigando los conceptos que se deben tener en cuenta para crear cualquier programa. (además de aprender bien ingles)
Otro punto interesante mencionado en este articulo es que no se puede aprender un lenguaje de programación en 3 días, ya que para aprender a hacer algo se requiere de la experiencia (aprender haciendo), lo cual puede tardarse un par de años. Lo cual nos lleva a pensar que no es mucho lo que puede aprenderse en 3 días.
Aprende a programar en diez años
Como habíamos descrito anteriormente no se puede ser un buen programador en 3 dias, la experticia en cualquier arte tarda por lo menos 10 años. He aquí la receta para el éxito en programación según el autor del artículo:


  • Interésate en la programación, y haz programación porque es divertida. Asegúrate que se mantiene tan divertida que estarás en disposición de invertir diez años.
  • Habla con otros programadores. Lee otros programas. Esto es más importante que cualquier libro o curso.
  • Programa. El mejor tipo de aprendizaje es aprender haciendo (learning by doing) . Para decirlo más técnicamente, "El máximo nivel de desempeño de los individuos en un dominio dado, no se logra automáticamente como función de experiencia extendida, sino que el nivel de desempeño puede incrementarse incluso en individuos altamente experimentados como resultado de esfuerzos deliberados por mejorar." (p. 366) y "el aprendizaje más efectivo requiere una tarea bien definida con un apropiado nivel de dificultad acorde con el individuo, retroalimentación informativa, y oportunidades de repetición y corrección de errores." (p. 20-21) El libro Cognition in Practice: Mind, Mathematics, and Culture in Everyday Life es una interesante referencia sobre este punto de vista.
  • Si quieres, dedica cuatro o cinco años en una universidad (o más en una escuela de graduados). Esto te dará acceso a algunos posiciones que requieren credenciales, y te dará un entendimiento más profundo del campo, pero si no disfrutas la escuela, puedes (con algo de dedicación) obtener una experiencia similar trabajando. Como sea, la lectura de libros por sí sola no será suficiente. "La educación en computación no puede hacer a nadie un expero programador más que el estudio de pinceles y pigmentos puede hacer a alguien un pintor experto" dice Eric Raymond, autor de The New Hacker's Dictionary. Unos de los mejores programadores que yo haya contratado alguna vez tenía sólamente un grado de bachiller (High School); pero ha producido una gran cantidad de excelentes programas , tiene su propio grupo de noticias (news group) , y sin duda es mucho más rico de lo que yo llegue a ser.
  • Trabaja en proyectos con otros programadores. Sé el mejor programador en algunos proyectos; sé el peor en otros. Cuando eres el mejor, tienes que poner a prueba tus habilidades para liderar un proyecto y para inspirar a otros con tu visión. Cuando eres el peor, aprendes lo que los maestros hacen, y aprendes lo que a ellos no les gusta hacer (pues te ponen a hacerlo por ellos).
  • Trabaja en proyectos después que otros programadores. Proponte entender un programa escrito por otra persona. Mira cuánto toma entenderlo y hazle correcciones cuando los programadores originales no están allí. Piensa en cómo diseñar tus programas para facilitarles el trabajo a aquellos que le harán mantenimiento después de tí.
  • Aprende por lo menos una media docena de lenguajes de programación. Incluye uno con soporte para abstracciones de clases (como Java o C++), uno que dé soporte a la abstracción functional (como Lisp o ML), uno que dé soporte a la abstracción sintáctica (como Lisp), uno que dé soporte a especificationes declarativas (como Prolog o plantillas C++), uno que dé soporte a corutinas (como Icon o Scheme), y uno que dé soporte al paralelismo (como Sisal).
  • Recuerda que hay "computadoras" en la "ciencia de la computación". Conoce cuánto le toma a tu computadora ejecutar una instrucción, alcanzar una palabra de la memoria (con y sin cache), leer palabras consecutivas de disco, y ubicar una nueva localización en disco.
  • Involúcrate en un plan de estandarización de algún lenguaje. Podría ser en el mismo comité ANSI C++, o podría ser simplemente decidir si tu estilo de codificación tendrá niveles de identación de 2 ó 4 espacios. Como sea, averigua lo que les gusta a otras personas en un lenguaje, cómo lo perciben, y quizá incluso un poco de por qué lo perciben como lo hacen.
  • Ten el buen juicio para lanzar el plan de estandarización del lenguaje tan pronto como sea posible.

Reconocimiento de imágenes que lleva a realidad aumentada TED 2012


Matt Mills: Reconocimiento de imágenes que

lleva a realidad aumentada TED 2012



En este video Matt Mills y Tamara Roukaerts demuestran Aurasma, una nueva herramienta de realidad aumentada que puede animar perfectamente el mundo tal como se ve en el anterior video.

Esta es una aplicación para SmartPhones, que a partir del reconocimiento de una imagen muestra un video o un avatar realizando alguna actividad. Esta es muy parecida a las técnicas de realidad aumentada que se utilizan comúnmente,  creo en mi opinión personal que lo que varia es que los llamados marcadores en donde aparecían las imágenes y avatares en 3D ahora fueron reemplazados por imágenes o fotos que la aplicación procesa y reconoce.

marcador de uso común para aplicaciones con realidad aumentada


marcador utilizado por la aplicación Aurasma, imagen que Matt Mills sostiene con su mano.


 Más allá de la anterior realidad aumentada, sus «auras» pueden hacer de todo, desde hacer que una pintura hable hasta la superposición de noticias en vivo en un periódico impreso. Sin duda es una tecnología que tiene mucha aplicabilidad en el uso cotidiano. 


lunes, 8 de octubre de 2012


Ramesh Raskar: Captura de un trillón de imágenes por segundo






La femto-camara desarrollada por un grupo de científicos del MIT, es un adelanto importante en el desarrollo del procesamiento digital de imágenes  la cual se ha vuelto muy popular por la gran cantidad de aplicaciones que se pueden alcanzar con la misma. este fabuloso invento surge de la curiosidad del ser humano de descubrir el comportamiento físico de las cosas.

Esta cámara que permite capturar un trillón de cuadros por segundo, es capaz de capturar los fenómenos mas rápidos de la naturaleza, como por ejemplo un haz de luz. el hecho de que esta cámara sea capaz de filmar un haz de luz puede, puede convertirse en una herramienta importante para los físicos, astrónomos y demás ramas que estudian la luz desde el punto de vista de partículas (fotón).

No imagino que hubiera sentido el gran científico Albert Einstein de haber visto este gran invento, el mundo de teorías que se hubieran formulado con solo ver las imágenes de este vídeo.  Lo que me lleva a realizarme una serie de preguntas, si existe una cámara lo suficientemente rápida como para captar un haz de luz ¿esta podrá capturar partículas mas rápidas que la luz? ¿que nuevas teorías físicas se crearan al realizar estudios con este tipo tecnología?  ¿que tanto avanzaran las industrias del cine y el arte?



El llamado efecto bullet es el que nos ha mostrado la industria del cine la ultima década, en películas como Matrix o Wanted, en las que se muestra la trayectoria de la bala en cámara lenta, este mismo efecto se puede crear con la Femto-camara, pero en vez de una simple bala podemos visualizar un haz de luz en cámara lenta, es esto lo que hace tan importante el aporte; la rapidez y sensibilidad que posee esta cámara a los fotones permite ver la física en todo su esplendor, y por medio de técnicas de refracción y reflexión de la luz se pueden ver objetos ocultos por esquinas lo que da al usuario una clase de super vision, capaz de ver tras las paredes. Todo lo anteriormente descrito no seria posible sin el procesamiento digital de imágenes.





(imágenes de efecto bullet)



(ver imágenes detrás de las esquinas)