Maestría en Simulación Racional
Jue, 07/24/2008 - 21:56 — edgar
Del 8 al 20 de Julio asistí a la 15 Escuela de Verano y Taller anuales de ACT-R. Fue una experiencia extraordinaria: aprendí bastante sobre ACT-R, modelado cognitivo, y lisp; conocí a John Anderson y muchos de sus colaboradores; conocí excelentes amigos; y también trabajé muy duro en las tareas diarias y el proyecto final de la escuela de verano. Todo estuvo magnífico, y para cerrar con broche de oro, John Anderson me otorgó (y a todos los estudiantes de la escuela) una Maestría en Simulación Racional.
- 2 comentarios
- English
Experimentos caracolentos
Mié, 07/23/2008 - 20:12 — edgar
He estado batallando con algunos experimentos de Selección de Atributos. Desafortunadamente mi base de datos es inmensa, mi computadora en el laboratorio es extremadamente lenta (incluso para correr un SO), y la computadora en casa es muy inestable. Así que, después de intentar varias veces esas opciones, termine usando una computadora en otro laboratorio. No es rápida, pero al menos es estable y no taaan lenta. Aún así, no espero terminar la primera parte de mi experimento hasta el final de este mes. Mientras tanto trataré de ponerme al corriente con el trabajo atrasado.
Intento frustrado
Lun, 06/23/2008 - 22:56 — edgar
He estado esperando a que un dominio estuviera disponible desde el 13 de abril (fecha en que expiró). El 15 de mayo fue marcado para ser borrado por el encargado original de su registro. Después de los 30 días en periodo de gracia su eliminación estuvo pendiente por otros 5 días. Así que se suponía que estaría disponible el 21 de Junio.
Mi error (al menos creo que fue mi peor error), fue confiar en el sition who.is. Lo hice porque parecía proporcional información más detallada sobre el estado de un dominio que otros sitios whois, pero la información estaba un poco retrasada.
Así que el 21 de este mes, el dominio objetivo seguía apareciendo en periodo de gracia, lo cual me pareció sospechoso. Al querer verificarlo en whois.net descubrí que un oportunista cyberokupó (que feo se ve) el dominio. De hecho el sitio eacosta.com (el enlace es incorrecto a propósito) fue publicado desde ese mismo día, mostrando publicidad de mal gusto y que no está relacionada conmigo, ni con ningún acrónimo mío. Por favor, no lo visites puesto que sus intenciones son dudosas.
Me decepcionó que esto pasara después de esperar tan largo tiempo, pero a lo mejor no había nada que pudiera haber hecho (ya que estos tipos son profesionales), así que no es algo de lo que me tenga que preocupar realmente. Lo que me molesta no es que alguien lo haya comprado antes que yo, sino que ese alguien no tiene un interés legítimo en el dominio.
Escribí este artículo con el único propósito de ayudar a crear consciencia sobre este tipo de prácticas.
Cómo seguir la pista de blogs y (algunos) sitios facilmente
Sáb, 06/21/2008 - 17:05 — edgar
Aunque mucha gente conoce las ventajas de las fuentes, creo que también hay mucha gente que aún no sabe de ellas.
Esta entrada es para aquellos que se han preguntado si es posible seguirle la pista a varios blogs sin tener que hacer una visita de rutina a todos ellos.
Imaginemos la siguiente situación. Supón que visitas algunos blogs y sitios web con frecuencia. Algunos son actualizados diariamente (como los sitios de noticias), pero la frecuencia de actualización de otros sitios es irregular(pudiendo ser varias veces al día, sólo algunos días, o de vez en cuando). En esta situación es común que al visitar un sitio descubramos
- que el sitio no ha sido actualizado, o
- que estamos atrasados de noticias por no haber visitado el sitio en algún tiempo, o porque no esperábamos actualizaciones.
Algunas veces también puede suceder que nos hemos perdido de muchas actualizaciones y nos va a llevar algún tiempo averiguar todo lo que no nos hemos enterado. Estos inconvenientes pueden pasar incluso si mantenemos una lista de sitios favoritos y tenemos el hábito de visitarlos con frecuencia.
Por un lado, hay veces en que visitamos un sitio en vano puesto que no fue actualizado. Por el otro lado, habrá casos en los que nos llevará algún tiempo actualizarnos.
Si algo de esto te ha pasado, entonces debería usar un lector de fuentes.
En su forma más básica, una fuente es un archivo que contiene las actualizaciones recientes de un sitio. Muchos sitios, en especial los que se actualizan con frecuencia, publican una o más fuentes a fin de hacer fácil la oportuna identificación de las actualizaciones.
Un *lector de fuentes* es un programa que observa las fuentes publicadas en sitios web, y presenta las actualizaciones al usuario. Hay muchísimos lectores de fuentes (también se conocen como lectores de noticias, o agregadores). Así que el problema no es encontrar uno, sino uno que te guste (aquí hay una lista para comenzar en inglés).
Lo único que necesitas para comenzar a usar un lector de fuentes es indicarle las fuentes que deseas observar. En algunos casos es suficiente indicar el sitio web y el lector descubre las fuentes publicadas por el sitio.
Una forma de ver esto es como si te estuvieras suscribiendo a las actualizaciones de un sitio, pero es mucho mejor que eso. Para empezar, no es una suscripción puesto que no te inscribes en el sitio, sino todo lo contrario, inscribes la fuente en tu lector. Lo cual tiene las ventajas de que no tienes que proporcionar ninguna información personal (como tu dirección de correo) para suscribirte, y que tu controlas tus suscripciones desde el lector (o sea que no tienes que pedirle al sitio web que te (de)suscriba).
Además, un lector te permite saber sobre todas las actualizaciones de tus sitios favoritos en un sólo lugar, en el momento que lo desees. Así que usar un lector significa que no te perderás de nada, ni tendrás que hacer un rondín por muchos sitios, mucho menos tendrás que visitar un sitio que no ha sido actualizado.
Si tu computadora tiene acceso a internet, el lector de noticias puede observar las fuentes sin molestarte. Y si usas un lector en línea, entonces ni siquiera tienes que instalar nada en tu computadora, ni permanecer conectado para que el lector pueda hacer su tarea.
Algunos lectores te permiten guardar, clasificar y compartir los artículos que lees, de manera que también son una herramienta para llevar un registro de lo que (te gusta de lo que) lees en la red.
Si un sitio no publica sus actualizaciones en una fuente, es posible crear una fuente externa al sitio (lo cual se conoce como recortar), y entonces suscribirte a la fuente con tu lector. Un lugar para practicar esto es feed43.com.
Las fuentes también se pueden usar de muchas otras maneras. Por ejemplo, Flickr publica una gran variedad de fuentes, calendarios y agendas en línea (por ejemplo recuerda la leche) generan fuentes que se pueden usar para notificar sobre eventos, fechas importantes, citas, juntas, etc. Las fuentes también se pueden usar para mantener a tus amigos al tanto de lo que estás haciendo (por ejemplo jaiku,) escuchando (e.g. last.fm,) estudiando (e.g. citeulike,) etc, etc.
Un conjunto de fuentes se puede combinar en una sola fuente, y en general, las fuentes pueden ser consumidas por muchos programas (no sólo lectores de fuentes), tales como galerías de fotos, calendarios, reproductores de medios (prueba miro), mapas, y muchos más. Por lo que las fuentes permiten compartir y combinar información que cambia con frecuencia. Puedes tratar tus propias combinaciones en Yahoo pipes.
Por cierto, si quieres seguirle la pista a este sitio, suscríbete su fuente en tu lector. También puedes estar al tanto de los comentarios.
Requisitos de mis sitios
Sáb, 06/14/2008 - 18:06 — edgar
Este es el segundo artículo de la serie sobre cómo preparé este sitio, y trata acerca de cómo drupal satisfizo los requisitos para mis sitios.
Estos fueron los requisitos principales:
- Quería que drupal me permitiera crear varios sitios bajo el mismo dominio (eacosta.org).
- Los sitios debían poder compartir información y quizás también contenido, pero cada uno debía tener contenido, menú, apariencia y características propias.
- Los sitios debían ser bilingües.
- Diferentes tipos de usuarios se debían poder crear, por ejemplo “amigos” o “familiares”.
- Los diferentes tipos de usuarios tendrían diferentes niveles de acceso a contenido que no es público.
- Cada sitio debe proveer fuentes RSS por lenguaje, tema, nivel de acceso, y sus combinaciones.
En el artículo anterior de esta serie expliqué que decidí usar la versión más reciente de drupal. Mi elección tuvo algunas desventajas temporales porque en ese entonces había muy pocos módulos y temas disponibles para drupal 6. Aún hay muy pocos para drupal 6 en comparación con los que hay para drupal 5, pero cada vez hay más, lo cual es bueno.
Lo que esto significó fue que casi no tuve alternativas para construir mi sitio y satisfacer mis requisitos. Sin embargo, encontré soluciones para los primeros 5 requisitos, de hecho, he intentado más de una solución para algunos de ellos.
El primer requisito, aislado de otros requisitos, puede resolverse con una configuración multi-sitios, que es una característica de drupal.
Sin embargo, satisfacer los requisitos 1 y 2 juntos es algo truculento. Se puede lograr con una configuración multi-sitios en la que todos los sitios comparten la base de datos, pero algunas tablas de la base de datos tienen que individualizarse usando prefijos en sus nombres a fin de que cada sitio pudiera tener sus características propias. Adicionalmente, se deben instalar módulos de control de acceso para controlar el contenido que se muestra en cada sitio. Si todo esto parece complicado, es más bien demasiado enredado. Intenté diferentes configuraciones y módulos, pero al final tuve suerte en que el módulo Domain access fue publicado. Este módulo no requiere una configuración multi-sitios y permite configurar todos los sitios y la base de datos desde las páginas de administración, que es mucho mejor que tener que configurar cada sitio con archivos y hacer cirugía a la base de datos.
Para el requisito 3 use el módulo Internationalization. Este módulo es un poco confuso al principio, especialmente porque tiene muchas secciones y opciones de configuración, pero es un excelente módulo que hace a drupal casi completamente multi-lenguaje. Este módulo permite definir y usar varios lenguajes. No traduce el contenido, pero agrupa todas las traducciones de cada contenido, lo cuál es muy práctico. Además, existen traducciones de la interfaz de drupal a muchos lenguajes, y si algo en una traducción no te gusta, lo puedes arreglar.
El requisito 4 es una característica estándard de drupal. Para ello sólo se tienen que definir tipos de usuarios, definir permisos para cada tipo de usuario, y luego crear los usuarios, o permitir que el público se pueda registrar al sitio.
Para el requisito 5, estoy usando el módulo Taxonomy access control, que permite definir permisos de acceso al contenido para tipos de usuario de acuerdo a la categoría del contenido. Así que hay que tener categorías de contenido para cada nivel de acceso (público, privado, restringido, etc.), y cada contenido debe pertenecer a al menos una de esas categorías, muy fácil. Aunque tuve que parchar drupal para que el módulo Taxonomy access control pudiera trabajar junto con el módulo Domain access, pero no fue difícil, el parche está incluido con el módulo Domain access.
Como dije antes, el requisito 6 todavía no está resuelto. Necesito algún otro módulo, pero por ahora mis sitios pueden sobrevivir sin esa función.
Entre otros módulos que estoy usando para hacer mi vida más fácil se encuentran los módulos views, five star, captcha, pathauto, y archive.
En el siguiente artículo de esta serie bocetaré el proceso que seguí para <strike>descomponer</strike> arreglar la apariencia de este sitio.
¿Porqué drupal?
Vie, 05/30/2008 - 21:15 — edgar
¡Muy bien! ya es justo que escriba algo en este blog. Estoy planeando una serie de artículos sobre cómo preparé este sitio. A lo mejor no parece útil o interesante, pero la verdad es que la pasé bien aprendiendo a hacerlo y creo que vale la pena compartirlo. Este es el primer artículo y trata sobre la plataforma que elegí para mis sitios.
Un poco de antecedentes. Soy un programador autodidacta. Aprendí a crear sitios web como hobby hace mucho tiempo, pero como quería hacer algo más entretenido, aprendí a modificar el estilo de los sitios y a añadir funcionalidad. Dediqué un buen de tiempo a aprender y a enseñar a crear sistemas en línea. Una vez, mientras trabajaba en un sitio de matemáticas, se me ocurrió crear un sistema que le facilitara a todo mundo el crear y modificar diferentes tipos de contenido en páginas web. Le dediqué algo de tiempo, pero no tenía el suficiente, ni la energía, así que ahí quedó.
Ahora hay cientos de sistemas como ese, son conocidos como Sistemas de Gestión de Contenidos (CMS por sus siglas en inglés), y cada vez son mejores. Así que era natural que usara un CMS para mis sitios. El problema era cuál usar.
Para hacer una buena elección comencé por definir las características que quería para mis sitios. Necesitaba un blog, pero como casi todos los CMS sirven para hacer un blog, ese no era un problema. Sin embargo, quería algo que me permitiera crear otros tipos de contenidos, así que el CMS tenía que ir más allá de un blog, y como fuí descubriendo, tenía que ser muy flexible, es decir, tenía que dejarme agregar funcionalidad y tipos de contenido facilmente. El número de opciones aún era grande, así que agregué más requisitos. tenía que ser un CMS de código abierto (es decir, modificable y gratuito), correr sobre Linux (mi sistema operativo favorito), de preferencia escrito en PHP, capaz de manejar varios sitios, y muy flexible.
Mis opciones se redujeron e intenté unos cuantos CMSs: drupal, typo3, mambo y joomla. La falta de organización y documentación de mambo y joomla me frustraron, así que no los usé mucho tiempo (nota: es probable que eso ya haya mejorado). Typo3 se veía fantástico, es el CMS más flexible que existe, está pulcramente documentado y la ayuda de usuarios también era genial. Sin embargo, después de varios meses leyendo y probando, no pude crear un sitio medianamente funcional. Al final me costó mucho trabajo recordar todos los detalles para hacer cualquier cosa en typo3, así que probé drupal.
La razón por la que dejé drupal hasta el final fue que sabía que era muy popular y quería probar otras cosas antes. No estaba seguro de que drupal fuera flexible, pero al compararlo con typo3 descubrí que son casi igual de flexibles. Así que estaba decidido.
Resultó que configurar un sitio básico, pero funcional, con drupal por primera vez no te lleva más de 30 minutos, y no es necesario leer páginas y páginas de documentación para hacerlo.
Primero hice unos sitios con drupal 5, me gustó. Entonces, cuando estaba a punto de comenzar mis sitios, salió drupal 6 y decidí usarlo (no sin complicaciones).
La interfaz de drupal es algo fea. La interfaz de wordpress me gusta más, pero eso no me importó puesto que lo importante era tener la mejor herramienta para mis propósitos. Además, como drupal es de código abierto, tarde o temprano su interfaz será mejor y más agradable.
Drupal proporciona un conjunto de funciones básicas, pero poderosas. No obstante, es muy fácil agregar otras características instalando módulos creados por los usuarios de drupal, los cuales están disponibles para una asombrosa cantidad de funciones. Cambiar la apariencia de un sitio también es muy fácil instalando temas creados por los usuarios de drupal.
Si no puedes encontrar la característica que necesitas, entonces es posible escribir un módulo o tema, siempre y cuando sepas cómo hacerlo. Incluso es posible conseguir que te paguen por hacerlo.
Drupal requiere un servidor de páginas web y una base de datos, pero no hay nada de qué asustarse. Drupal es en realidad muy fácil de instalar. Además, la mayoría de la gente tendría que contratar servicios de hospedaje de páginas web, y resulta que la mayoría de los proveedores de hospedaje ofrecen planes que incluyen la instalación de drupal.
Usar drupal también es muy sencillo, y no tienes que aprender todas las opciones del sistema para comenzar un sitio. De hecho se aprenden las opciones conforme vas creando tu sitio.
Entonces, ¿porqué me tomó 3 meses poner mis sitios? Esa es otra historia, y la dejaré para los siguientes artículos de esta serie.
¡Es hora de brillar!
Sáb, 05/24/2008 - 18:48 — edgar
Hace bastante tiempo que comencé a pensar en tener un sitio bilingüe. No fue sino hasta hace 3 meses, después de muchos más invertidos en investigar la mejor forma de lograr mi objetivo, que decidí poner manos a la obra (gracias a AZ por la motivación). Desde entonces he trabajado en este sitio en mis ratos libres.
¡Frecuentemente tardo demasiado tiempo en hacer algo! Pero este blog ya está casi listo, y no hay razones para seguir demorando la inauguración oficial.
Así que, ¡bienvenido a ¡es hora de brillar!!
Quienes me conocen saben lo mucho que deseo ser el mejor en todo lo que intento. Eso es bueno, pero me pone inecesariamente en una situación de continuo estrés y a menudo me hace extremadamente cuidadoso, al grado que me toma demasiado tiempo terminar las cosas. Todo lo cual me hace sentir lento, me entristece, y me distráe, provocando aún más retrasos.
Lo peor del caso es cuando lo que hago deja de ser divertido, y termino las cosas porque ya estoy enfadado, o porque ya lo tengo que entregar, o porque es un compromiso. Lo bueno es que generalmente nunca me rindo, de manera que no quedo completamente derrotado. De hecho, casi nunca fallo, y la mayor parte de mi trabajo es sobresaliente.
Se preguntarán ¿a qué viene todo eso al caso? ¿de qué trata este blog?
Nada en específico, es sólo mi bitácora personal, que viene a reemplazar a la anterior. Aquí estaré compartiendo sucesos, noticias, opiniones y pensamientos.
La razón por la que mis sitios son bilingües es que el español es mi lengua materna, mientras que durante los últimos 3 años he estado viviendo en un ambiente de habla inglésa. Por un lado, me mantengo vinculado a mi país de origen, lo cual espero se vea reflejado en my blog. Además me siento responsable de crear contenidos para internet en español, especialmente en temas en los que es dificil encontrar información en este idioma. Por el otro lado, necesito mejorar mi inglés, quiero ser una parte funcional de la comunidad en que vivo, y la comunicación es fundamental.
Así que este espacio es dónde estaré escribiendo por placer y para practicar.
El título del blog es un recordatorio personal de que un buen trabajo no necesita ser perfecto, y uno se siente mejor haciendo pequeños avances perfectibles a la vez, que intentado hacer todo el trabajo de manera perfecta de un sólo golpe. Más aún, es un recordatorio de que no hacen falta alas para alzar el vuelo, y cada pequeño paso es importante y valioso. Por lo que todo momento es bueno para agregar otro granito de arena y comenzar a brillar.
Edgar Raúl Acosta Villaseñor
Soy un estudiante de doctorado en el Instituto de Ciencias Cognitivas, en la Universidad Carleton, Canadá.
Conforme adquirimos experiencia en una actividad, nuestro desempeño mejora y se va haciendo más rápido. En mi investigación intento modelar la evolución y aparición de representaciones del conocimiento que soportan la adquisición de experiencia. En particular, estoy interesado en los procesos o estrategías que nos permiten descubrir las propiedades de objetos y contextos, y en la manera en que estos procesos influyen en las representaciones.
Este sitio está en construcción, poco a poco iré agregando contenido. Puedo ser contactado aquí.


