jueves, 4 de diciembre de 2008

¿Puede la ciencia igualar a la naturaleza?

Este post no se trata de cuestiones científicas, matemáticas, ni siquiera técnicas. No, esta vez se trata de un tema mucho más humano, más sentido, y es acerca de la conciencia que estamos formando en las futuras generaciones acerca de nuestro entorno y las maravillas de que disfrutamos en nuestro humilde planeta.
Recientemente, en Brighton, Reino Unido, las personas han empezado a extrañar los avistamientos de bandadas de aves que cada tarde realizan una singular danza para encontrar a sus compañeros del siguiente día. El artículo (y un video relacionado pueden encontrarlos en este enlace. Lo que me parece muy importante es recalcar que aunque los esfuerzos en sistemas de simulación de bandadas (swarms) han sido impresionantes, como los swarmbots y sus aplicaciones cuya demostración puede encontrarse en YouTube, no pueden superar la belleza, la gracia o el sentimiento que producen los animales cuando realizan ciertas acciones. Espero les mueva un poco la conciencia ambiental el mirar este video, y les despierte también la curiosidad acerca de los algoritmos swarm para la producción de sistemas expertos. Ojalá alguien se anime a proponer un modelo de predicción que ayude a prevenir la extinción de las diferentes especies de seres vivos en el mundo.

miércoles, 26 de noviembre de 2008

Grid Computing

Un post de actualidad técnica que escribo con motivo de una tarea de Cliente/Servidor, con la que he tomado nota de muchos de los proyectos que actualmente existen sobre este tema (fascinante, por cierto).

Grid Computing

Desde hace algunos años, el poder de procesamiento de los equipos de cómputo ha superado con creces las necesidades de los usuarios comunes. En la mayoría de las empresas, los computadores son utilizados para tareas triviales de procesamiento de textos y cálculo numérico o financiero, con un ocasional uso de los recursos compartidos en la empresa: impresoras, bases de datos, conexiones a otras redes, etc... Sin embargo, cuando un usuario decide utilizar el poder de cómputo que tiene a disposición para una tarea realmente exigente se encuentra con una gran limitante: sólo puede utilizar lo que tiene disponible en una máquina. Surge entonces la duda de si sería posible aprovechar el poder de cómputo que otros no están utilizando para acelerar los procesos de carácter crítico y que requieran mayor poder de cómputo que el que ofrece una sola máquina de procesamiento.

Los estudiosos del tema han investigado durante años esta posibilidad y han logrado progresos suficientes, tanto teóricos como prácticos, como para decir que sí es posible, y que debe hacerse. Se estima que la cantidad de computadores en el mundo está creciendo exponencialmente de acuerdo con la capacidad de producción de las fábricas de chips [1], las cuales cada año abaratan sus costos y aumentan la potencia computacional de los procesadores con nuevas técnicas y diseños. Se estima que para el 2015 haya en el mundo 2000 millones de computadores en el mundo (2 billones estadounidenses = 2000 millones colombianos) [2], lo que hace que el poder de procesamiento total supere con creces los más alocados sueños de los ingenieros de software. ¿Qué se puede lograr con tanto poder de cómputo?

No mucho, dado que la mayor parte se desperdicia en tareas cotidianas como la edición de este texto en computadores que trabajan de manera aislada o independiente. Sin embargo esto puede cambiar. Gracias a la gran conectividad que ofrecen las redes es posible pasar trozos de información entre los diferentes equipos conectados a una red para ser procesados por cada uno de sus integrantes, en el tiempo de procesamiento que tengan disponible. Hay muchas técnicas desarrolladas, probadas y utilizadas en el mundo para lograr resultados que anteriormente parecían imposibles. Veamos algunos ejemplos.

Uno de los proyectos más conocidos es el SETI [3](Search for ExtraTerrestrial Intelligence, por sus siglas en inglés) que busca encontrar vida extraterrestre al monitorear ciertas bandas del espectro electromagnético que llega a la Tierra desde fuera del Sistema Solar. Anteriormente se utilizaban servidores dedicados para hacer el procesamiento y el análisis de los datos que se obtenían de los radiotelescopiios, pero desde 1995 surgió la idea de aprovechar el poder de cómputo disponible en la recientemente popularizada Internet para esa tarea. En 1999 el proyecto SETI@home hizo su aparición, interconectando tantos computadores como fuera posible mediante un software especial que recibía transmisiones desde Internet si el equipo no se estaba utilizando, procesaba los datos recibidos y devolvía los resultados al servidor principal del proyecto. El resultado fue una supercomputadora virtual compuesta de los equipos que voluntariamente aportaban sus dueños para contribuir al proyecto. Aunque la plataforma de procesamiento ha cambiado con los años, la idea sigue siendo la misma: aprovechar el poder de cómputo disponible no utilizado en tareas más complejas. Actualmente SETI@home está basado en BOINCS [4], un software de coordinación para tareas de computación paralela distribuida (PDC, por sus siglas en inglés) que también soporta otros proyectos, como CleanEnergy Project [5], que apunta a encontrar una solución alternativa al consumo de petróleo para la producción de energía, LHC@home [6] que intenta aumentar la capacidad de cómputo dedicada a los datos del LHC, PS3Grid para el estudio simulado de biomoléculas, y una larga lista de proyectos listados en la página oficial de BOINCs y en [8].

Otro ejemplo que aprovecha el concepto de grid computing es el de las granjas de renderizado (render farms), las cuales han sido utilizadas desde hace años por la industria del cine para producir efectos cada vez más deslumbrantes en las películas que vemos. A medida que el poder de los procesadores aumenta y las tarjetas gráficas mejoran sus prestaciones, el tiempo requerido para producir imágenes como las de los primeros gráficos de computador se ha reducido enormemente, mientras que una imagen de alto realismo, excelente calidad y alta resolución puede obtenerse en un tiempo relativamente prudente. Esa misma calidad es la que exigen los efectos gráficos del entretenimiento que vemos ahora, tanto visual como interactivo. Hollywood ha hecho uso extensivo de esta y otras tecnologías para capturar al público en escenas que, aunque sacadas de la imaginación, parecen tan reales como el computador en el que estoy escribiendo. Dreamworks Animation Studios es una de las más conocidas empresas de animación y ha dado mucho de qué hablar puesto que su granja de renderizado está basada en computadores que usan Linux como sistema operativo [9], y estaba compuesta (para la realización de "Shrek, the third") de más de 3000 CPUs independientes trabajando en cuadros individuales de la película, usando un software especial llamado LSF. Aunque DreamWorks ha desarrollado gran parte de su software de renderizado, el trabajo de coordinar tantas CPUs lo sigue realizando LSF. Luego unen cada cuadro renderizado (imágenes estáticas) usando otras aplicaciones, aplican los efectos de transición para las escenas y agregan el audio, de manera muy similar a como lo hacen los usuarios caseros con el software de sus cámaras. Finalmente el video es anunciado, presentado en el cine y comercializado. Las ventas de "Shrek the third" llegaron a los 179 millones de dólares [10]. Como nota interesante, para el 2009 DreamWorks piensa relanzar todos sus títulos en 3D estereoscópico nativo.

La animación usando granjas de renderizado se logra de manera más o menos sencilla, o al menos así lo anuncian en un tutorial publicado en ExtremeTech [11]. Allí recomiendan conseguir la mayor cantidad de CPUs posible y no tanto la mayor cantidad de GHz disponible. Esto significa que no es tan importante la capacidad de cada CPU dedicada al procesamiento como la cantidad de las mismas. Es por eso que cualquier computador conectado a la red de procesamiento hace una contribución importante sin importar su potencia. En el tutorial explican a grandes rasgos cómo construir una granja de renderizado (y posiblemente otros tipos de procesamiento) personal, pero si uno quiere puede acceder a soluciones comerciales que alquilan tiempo de procesamiento dedicado a tareas específicas. REBUSfarm [12] y RenderNOW [13] pueden ser buenas soluciones.

Otro proyecto que ha visto la luz gracias al grid computing es Electric Sheep [6]. Aunque no se trata de un proyecto científico y riguroso sí parece ser una curiosidad matemática y algorítmica. La meta del proyecto es producir un juego / algortimo genético de alcance global que muestre diferentes criaturas generadas matemáticamente que se cruzan entre sí para producir efectos visuales sorprendentes. Las criaturas más populares entre los usuarios son las que más sobreviven, de modo que sus genes son cruzados nuevamente para producir nuevas formas más (en teoría) agradables para los humanos. Es una idea interesante, pero no deja de ser un juguete comparado con las investigaciones llevadas a cabo por el proyecto Rosseta [14], que usa la plataforma de BOINCS para investigar posibles moléculas que sirvan de base para la cura de las enfermedades humanas.

Ahora, y con la explosión de la PDC, los sistemas operativos están cambiando su paradigma de trabajo. Ya no se trata de recursos locales, sino de recursos almacenados globalmente, en cualquier parte de la red. Google, una de las empresas informáticas con mayor crecimiento en la era de Internet, ha propuesto su plataforma Google Docs [15] para el almacenamiento y la edición simultánea de documentos ofimáticos, Google Code [16] para el almacenamiento y la administración de proyectos de software (de los cuales ellos también se benefician), entre otros, así como la organización del conocimiento colectivo en sitios especializados y confiables, Wikipedia [17] y Knol [18] son dos propuestas para ello. Las aplicaciones basadas en el servidor que además contratan tiempo de procesamiento externo (una propuesta de IBM [19]) y las aplicaciones en línea hacen prácticamente innecesaria la instalación de software en los computadores de los usuarios finales, por lo que para muchos es posible que estemos volviendo al sistema de terminales brutas, aunque en este caso sí hay poder de procesamiento del lado del usuario, pero utilizado en el despliegue de la interfaz gráfica de sus aplicaciones. Propuestas como Ajax13 [20] y Zoho [21] son bastante maduras y ofrecen excelentes prestaciones. Una reseña acerca de estas alternativas a las tradicionales suites ofimáticas está en [22].

Así que, ¿por qué no utilizar las aplicaciones ofimáticas desde la web y aprovechar el resto del tiempo de procesamiento para contribuir con un proyecto de PDC? La supercomputadora global podría estar a la vuelta de la esquina si realmente decidiéramos construirla. Sin embargo, en muchos ambientes académicos y comerciales no se ve como una alternativa viable, principalmente porque cambia completamente el paradigma con el que se viene trabajando desde hace años, y eso requiere tanto tiempo como inversión económica. Muchos investigadores prefieren trabajar en proyectos más tangibles y a más corto plazo. La preocupación ha sido expresada por integrantes de Microsoft, y citando a uno de ellos [23], es posible que primero veamos la Access Grid antes que la Computing Grid globales. Esto es, primero tendremos el acceso a la información desde cualquier dispositivo y desde cualquier parte del mundo antes que acceso al poder de procesamiento para nuestras tareas cotidianas.

En cualquier caso, el futuro a mediano y largo plazo se ve moteado de grid computing. Y más con las ideas y los nuevos modelos matemáticos que se proponen para explicar los fenómenos naturales [24] o para pronosticar las futuras interacciones sociopolíticas [25], o las capacidades de aprendizaje de los estudiantes de acuerdo al contenido [26].



[1] http://www.engvall.org/intelligentia/facts.html
[2] http://www.inc.com/news/articles/200707/computers.html
[3] http://setiathome.berkeley.edu/
[4] http://boinc.berkeley.edu/
[5] http://cleanenergy.harvard.edu/go/
[6] http://lhcathome.cern.ch/
[7] http://www.ps3grid.net/PS3GRID/
[8] http://boincs.com/
[9] http://www.linuxjournal.com/article/9653
[10] http://www.advfn.com/news_DreamWorks-Animation-SKG-4Q-revenue-tops-analyst-view-on-Shrek-the-Third-sales_24964774.html
[11] http://www.extremetech.com/article2/0,2845,1847365,00.asp
[12] http://www.rebusfarm.com/
[13] http://www.rendernow.com/
[14] http://boinc.bakerlab.org/rosetta/
[15] http://docs.google.com/
[16] http://code.google.com/
[17] http://www.wikipedia.org/
[18] http://knol.google.com/k
[19] http://www-935.ibm.com/services/us/index.wss/offering/its/a1025607
[20] http://us.ajax13.com/
[21] http://zoho.com/
[22] http://www.computerworld.com/action/article.do?command=viewArticleBasic&articleId=9007884
[23] http://research.microsoft.com/~Gray/papers/Microsoft_and_Grid_Computing.doc
[24] http://www.elcultural.es/version_papel/CIENCIA/22741/Matematicas_o_la_naturaleza
[25] http://elite-mexicana.blogspot.com/2007_10_01_archive.html
[26] http://weblogs.madrimasd.org/sistemas_inteligentes/archive/2008/11/13/106661.aspx

jueves, 28 de agosto de 2008

Madrazos por el trabajo

Disculpen todos mis lectores por la no publicación en tanto tiempo, pero la Universidad y el resto del trabajo como monitor me tienen del cuello. Por si fuera poco no he tenido oportunidad de organizar mis horarios de estudio, y los profesores siguen pidiendo programas todos los días, así, "¡Matanga monitor que te toca instalarme esto para YA!". No es justo.
Pero, aparte de eso, les tengo buenas noticias, He estado probando diferentes programas para la ejecución remota de procesos para acelerar las instalaciones de programas en múltiples equipos, así como automatizar el tedioso proceso de copia por red. Si no quieren esperar a un post más adecuado, dénle un vistazo a PStools, una buena suite de herramientas de administración remotas para Windows por línea de comandos, y la ayuda de los comandos for y xcopy. Estoy seguro de que a más de uno le serán útiles estas referencias. Próximamente, una completa reseña sobre su uso.

domingo, 17 de agosto de 2008

(Ir)responsabilidad informática

Según la fima investigadora de TI SOPHOS, la participación del SPAM en las comunicaciones electrónicas es ya del 96.5% en el mundo corporativo, y no es de extrañar, ya que la proliferación de nuevas tecnologías que permiten una mayor presencia en la red y una creciente falta de sensibilización y capacitación de los nuevos usuarios de Internet ha provocado que los spammers tengan cada vez más oportunidades de alcanzar su objetivo: enviar correos no solicitados al mayor número de personas con el menor esfuerzo posible.

El problema no es sólo con el correo corporativo, sino también en el personal, en las comunidades en línea y en los teléfonos celulares, por lo que la situación es cada vez más preocupante.

¿A qué viene todo esto? Como usuarios medianamente avanzados de TI somos un poco más responsables que el resto de las personas respecto a lo que sucede con la información en nuestros días. En nuestros hogares, nuestros negocios y nuestras comunidades somos responsables de educar a nuestros congéneres acerca del buen uso de las TI, y en ocasiones hasta del buen uso del sentido común.

Caso real: Hace poco me llamó una persona al celular preguntando por una lotería en España y qué opinión tenía yo de ese grupo. Nada más dos click en Google me di cuenta de que el supuesto sitio era parte de un sistema de estafas internacionales y estaba listado dentro de la lista de más conocidos scammers (similar al spammer, pero con estafas), por lo que le avidé a esa persona del fraude en el que había caido. No obstante me seguía insistiendo que el sitio era real y que según el correo que había recibido ya habían ganado muchas personas.Si esto no indica que cada vez hay menos sentido común en el uso de las TI espero que alguien me pueda indicar qué rayos está pasando.

Espero lean el informe en esta dirección
http://esp.sophos.com/pressoffice/news/articles/2008/07/dirtydozjul08.html
y que les oriente más sobre los peligros de la sociedad informatizada. *Ojo* que el informe también hace referencia a Facebook y LinkedIn, por lo que los usuarios de estos servicios también están en riesgo de ser afectados. Igualmente, los usuarios que no poseen una buena defensa antivirus y antispyware están ayudando a hacer más fácil el hobbie de los spammers.

Buena suerte y disculpen el post tan largo.

miércoles, 6 de agosto de 2008

Particiones, ser organizado ayuda

Después del accidente con mi gran disco duro y de haber hecho los trámites, las vueltas, las reclamaciones y las compras para uno nuevo, empecé a recuperar algo de los extensos listados de programas gratuitos que siempre mantengo descargando por colección. Pero como muchos de ustedes conocen, los discos duros nuevos no vienen listos para ser usados, deben ser configurados (como maestro o esclavo si se trata de IDE), agregados al computador, particionados, formateados y, finalmente, llenados con toda la información que nos gusta mantener. Así que aprovecharé este post para dedicarlo a un tema técnico: el proceso de instalación de un nuevo disco duro en el PC.

Empecemos con el disco duro, recién sacado de la bolsa antiestática. Se trata de un dispositivo no muy pesado, recubierto de partes metálicas y algunas tarjetas de circuitos. En la parte superior hay una etiqueta que, con suerte, muestra un diagrama de varios grupos de puntos (algo así como ::::) y una tabla que indica las posiciones del jumper para que el disco funcione como maestro o como esclavo. De esto hablaré más adelante. En la parte de atrás se encuentran los conectores para los cables de datos, ya sean SerialATA (rojo y poco grueso) o IDE (plano, ancho y gris, de 40 hilos), y de la energía, que en el caso de SerialATA es ancho y plano y en el de IDE tiene una terminación blanca.

También, en la parte de atrás de los discos IDE hay una serie de pines a los que no se conecta nada, pero que en la mayoría de los casos lleva un pequeño elemento (tan pequeño que cabe entre dos teclas) entre dos de ellos. En los computadores que soportan IDE sólo es posible utilizar un máximo de 4 dispositivos de estos: disco duro o unidad de CD, en cualquier combinación. Cada uno va conectado a un cable de datos plano de 40 hilos con una o dos ranuras para los dispositivos y una que va hacia la tarjeta madre. Verán, la tarjeta madre sólo tiene 2 canales (2 buses de datos, realmente), llamados canal primario y canal secundario, para conectar los dispositivos IDE. Así que, para evitar conflictos cuando se utilizan cuatro dispositivos, se diseñó el esquema de Maestro (Master) y Esclavo (Slave) para cada canal. Así, si dos dispositivos requieren enviar información por el mismo canal la tarjeta madre podrá atenderlos en orden y evitará un bloqueo del bus de datos. Además, los dispositivos IDE reciben una denominación que corresponde a su configuración y al canal de datos en el que se conectan: maestro primario, esclavo primario, maestro secundario y esclavo secundario, en ese orden. También ése será el orden que reciban cunado sean detectados por un sistema operativo y se asignen los controladores de dispositivo. Por ejemplo, en Linux y Unix en general estos serán hda, hdb, hdc y hdd, respectivamente.

Aclarado lo de maestro y esclavo procedemos a configurar el nuevo disco según sea necesario, con el equipo apagado, claro. En mi caso lo necesitaba como hdd, así que lo conecté como esclavo del canal secundario. NOTA: para los discos SerialATA no hay necesidad de configurar esto, ya que utilizan un canal dedicado para cada dispositivo. Además, los dispositivos SerialATA son reconocidos de la misma manera que los dispositivos USB, así que se denominarán sda, sdb, sdc ó sdd en Unix y similares. Conectamos el disco y encendemos el equipo. Algunos BIOS detectan automáticamente el nuevo dispositivo y configuran automáticamente la información necesaria. Otros puede que no. Averigüen bien el procedimiento para su BIOS antes de continuar. Si el disco IDE nos ha quedado mal configurado lo más seguro es que la pantalla se quede en negro pero tranquilos, no se ha dañado nada. Sólo apaguen, desconecten, configuren de nuevo el disco y vuelvan a conectar y encender. Una vez que el sistema operativo lo haya reconocido estaremos a tan solo unos minutos de tenerlo listo para ser llenado.

Ahora procedemos a crear las particiones del disco. Para ello, en Windows disponemos de la consola de administración, que se abre haciendo click secundario sobre Mi PC y seleccionando Administrar, luego Administración de discos y finalmente sobre el disco que parece estar vacío. En Linux es más fácil: como root abrimos QtParted o GParted y seleccionamos nuestro disco en el menú Dispositivo. Ahora debemos planear muy bien las particiones del disco, ya que es complicado, demorado y riesgoso cambiarlas una vez que estén hechas y llenas de información. Normalmente se sugiere, para un computador de un solo disco duro, una partición pequeña que albergue al sistema operativo y todas las aplicaciones que requieran ser instaladas, y otra partición para los datos. Otras personas utilizan un disco duro con varias particiones para todos los datos y otro disco para el sistema operativo. Sea lo que sea que elijan, creen las particiones según sus necesidades. Les daré una pequeña ayuda acerca de las particiones antes de que lo hagan.

Hay 3 tipos de particiones: primarias, extendidas y lógicas. Las particiones primarias son aquellas en las que se instalan los sistemas operativos de Microsoft anteriores a Windows 2000. Son las favoritas para almacenar datos, pero tienen un problema: sólo puede haber 4 de ellas en un disco duro. Las particiones extendidas se parecen a las primarias en que sólo puede haber 4 en un disco duro. De hecho, un disco duro sólo puede tener 4 particiones, ya sean primarias o extendidas o combinaciones de éstas. Pero algunas personas (como yo) requieren más particiones en un disco duro, como es el caso de los sistemas con varios sistemas operativos (Linux Debian, Linux Ubuntu, FreeBSD, Windows, Mac, etc...) instalados. Las particiones extendidas realmente no pueden guardar información, sino que guardan otras particiones, llamadas particiones lógicas, y pueden guardar cualquier número de ellas. Así, un disco duro puede tener particiones de la A a la Z (caso de Windows) o de 1 a... bueno, a lo que me canse de crearlas. Las particiones primarias y extendidas en Linux son marcadas con los números 1 a 4, y las extendidas de 5 en adelante. En Windows son llamadas con letras, según como aparescan en la tabla de particiones.

Finalmente, debemos formatear las particiones primarias y/o lógicas que hayamos creado y revisarlas en busca de errores. Esto ya se sale del tema de este post, pero es posible que luego explique cómo se hace.

Sencillo, pero el formateo en mi equipo de 3 particiones, dos NTFS y una FAT32 de Windows, se me llevó cerca de una hora, mientras que el de dos Ext3 (de Linux) se me llevó menos de 30 segundos más la comprobación de errores de 5 minutos... Una ventaja de usar Ext3 es la velocidad y que no hay necesidad de defragmentar, pero a veces llevo datos a equipos con Windows, así que es mejor estar preparados. Hasta la próxima.

viernes, 1 de agosto de 2008

Duelo por mi disco duro

¡Ay! ¡Qué cosas las que le pasan a uno! Estaba yo copiando información de un disco duro de un cliente por red y tuve que desconectar el mío (una de las desventajas de tener 3 discos duros y una unidad de DVD), y cuando ya sólo me faltaba reconectar el mío se me resbala de las manos y cae, estrepitosamente al piso, duro como roca. Ahora estoy en proceso de comprar un nuevo disco duro. Afortunadamente no he perdido gran cosa, excepto 100GB de datos que no son vitales pero tampoco fáciles de conseguir. Las ofertas abundan, aunque no la plata, así que seré bastante austero por los próximos días, y con un poco de ayuda de mi familia que siempre me apoya cuando tengo necesidad, es posible que no demore en tener uno nuevo.

Estoy de acuerdo con ser desprendido de las cosas, pero es muy diferente ser descuidado a ser desprendido. Y esta vez, admito, fui descuidado. El accidente ha sido mi culpa por no tener más cuidado maniobrando en el poco espacio entre mi computador y el borde del escritorio. Vamos a ver si la próxima vez no meto la pata.

A propósito, para los que tengan necesidades de este tipo, MercadoLibre.com es una buena opción para conseguir cosas en poco tiempo y hacer intercambio de artículos. Aunque sigo prefiriendo los medios tradicionales, la compra por medio de este servicio me llama bastante la atención. Espero sus comentarios sobre el servicio, y su pésame por mi disco duro. :'(

viernes, 25 de julio de 2008

Algunos motivos para no dormir

Estoy seguro de que, en algún momento, toda persona ha decidido pasar la noche sin dormir, ya sea por una celebración, un precepto religioso, el temor, el insomnio clínico, el trabajo, y hasta el estrés. Pero hay ciertas personas que se desvelan leyendo libros, artículos de noticias y hasta manuales de procedimientos. ¿Se ha desvelado alguno de ustedes leyendo su novela de misterio favorita? Espero que sí.


La lectura es una de las actividades más gratificantes que se pueden encontrar, pero a medida que avanza el masivo despliegue de entretenimiento interactivo se pierde un poco más de ese extraordinario mundo que nos ofrecen los libros, y de este inacabable mundo en el que vivimos. Lo que nos llega del exterior a través de las noticias son pequeños destellos que alcanzan a iluminar muy brevemente los sucesos de nuestro planeta que desconocemos por las sombras que extiende la ignorancia. De ahí la importancia no sólo de estar informado, sino de participar activamente en generar nueva información y compartirla con aquellos a quienes pueda interesar. Mucha gente cree que esa es tarea de los canales de noticias, pero como algunos televidentes con ojo crítico habrán notado, eso puede parcializar las opiniones acerca de los temas que se tratan e inclinar la balanza a favor o en contra de los sucesos.


Espero reflexionen acerca de este pensamiento que acabo de sacar del cajón, y si no quieren hacerlo entonces les recomiendo dar un vistazo a este sitio (en inglés) sobre invenciones que cambiarán al mundo: www.thefutureofthings.com. Recién lo descubrí anoche, pero el sitio ya lleva varios años en la red, y sus artículos son de interés para cualquier lector aficionado a la tecnología en todos sus campos, especialmente los relacionados con el mejoramiento de la sociedad.


P.D.: acabo de entrar y mi navegador ya tiene más de diez artículos abiertos esperando ser leidos. Espero no encontrarme más o no podré dormir hoy tampoco.

martes, 22 de julio de 2008

Aplicaciones de Linux que corren en Windows

Espero que me estén leyendo los linuxeros, ya que esto puede ser de importancia para ellos. Pero los que realmente disfrutarán esta entrada serán las personas que quieran aprender a utilizar las aplicaciones de Linux pero no quieren dejar aún su sistema operativo Windows tradicional.

Recientemente, la empresa Ulteo ha publicado, de manera gratuita y para todos aquellos que la deseen utilizar, una aplicación que permite utilizar aplicaciones de Linux en Windows sin tener que reiniciar. Las aplicaciones se integran completamente con el escritorio actual, y los usuarios avanzaos podrán hacer cambios para permitir el acceso total a los archivos almacenados en Windows y no sólo a la carpeta "Mis documentos". Eso sí, esta solución requiere bastante memoria RAM y un procesador medianamente potente, pero se trata de una aplicación que ayudará a muchos usuarios interesados a hacer la transición de uno a otro sistema operativo mucho más transparente.

He publicado una nota más completa en la página del grupo Pulpa

Decepción (pasajera) con el trabajo

Verán, desde hace tiempo vengo trabajando con un proyecto que me ha puesto a programar nuevamente, y he tenido además la oportunidad de aprender montones de cosas acerca de las tecnologías web. Pues bien, ayer nada más estaba mostrando el progreso del trabajo de la semana pasada a los clientes y aunque realmente les gustó cómo está trabajando mi pequeña aplicación, me pidieron que la adaptara a varios cambios que se han hecho en el modelo de negocio inicial que yo conocía. Pues bien, han pasado 3 semanas del cambio y ya me había reunido con ellos la semana pasada. ¿No podían haber avisado del cambio un poco antes? La verdad es que el cambio en el modelo había que hacerlo.

Era una sugerencia que llevaba demasiado tiempo en los buzones de sugerencias en la oficina, y gracias a que estoy programando de manera modular y estandarizada no me complicaré prácticamente nada para lograr el cambio en la aplicación (me senté hace 30 minutos y ya llevo la mitad), pero eso no deja de ponerme un poco triste al ver que no me toman en cuenta en las mejoras que el negocio recibe. Así es la vida laboral. Hay que estar encima de los jefes verificando que lo que lo afecte a uno sí llegue a nuestros oidos, correo electrónico o escritorio.

Espero tomen nota de esta experiencia, para que no los cojan desprevenidos: siempre programen de manera modular (y ojalá documenten el código que escriban), porque en cualquier momento puede hacerse necesario un cambio. Y por favor, muévanse en las esferas altas de la organización en la/con la que trabajen, para que la información importante esté a su disposición cuanto antes.

jueves, 17 de julio de 2008

SSL y Apache 2

Estaba buscando al configuración correcta de Apache para poder crear sitios web con conexiones seguras en mi propio equipo y resulté tomando más tiempo de la cuenta. Así que decidí hacer un pequeño tutorial para aquellos que quieran intentar esta singular configuración usando los programas disponibles en su Debian Etch.

Lo he publicado en la página de Pulpa, el grupo de usuarios Linux de Pereira, grupo al que pertenesco. Espero les sirva.

http://pulpa.utp.edu.co/documentacion/sitios-ssl-con-apache-2-y-debian-etch

domingo, 13 de julio de 2008

Demasiadas tecnologías, poca integración

Lectores, aquí lo primero que saco del cajón, una reflexión acerca de los diferentes servicios que abundan en Internet.

Parece que a los que controlan el avance de las tecnología no les importa dividir el mundo. Actualmente hay un notable esfuerzo por parte de las empresas más grandes en tecnología por producir mejores productos y aplastar a la competencia. Y esto puede ser bueno (para los usuarios), pero también puede volverse contraproducente si la competencia hace lo mismo.

En el mercado de la mensajería instantánea existen varios servicios muy buenos pero incompatibles entre sí. AOL, MSN, Yahoo!, ICQ, Jabber, Google Talk y otros no tan conocidos son tanto programas como protocolos de mensajería instantánea. Lo malo es que son incompatibles entre sí. Los servicios de correo electrónico web, como Yahoo, Hotmail y GMail también dividieron durante mucho tiempo los contactos que se podían tener, ya que al usar sus servicios se obtenía también el acceso a la mensajerís instantánea del mismo proveedor. Muchos usuarios (avanzados o temerarios) tomaron la salida rápida y se suscribieron a todos los servicios que pudieron y así conservaron a sus amigos de los otros servicios que no se sentían tan capaces de manejar 30 cuentas de correo diferentes. Ahora, con la aparición de servicios de video (Youtube, Google Videos, Yahoo! Video, y muchos más) parece que la historia se está repitiendo.

Las empresas están ofreciendo muchos servicios (calendarios, agendas, noticias, recordatorios, postales, videos, correo, mensajería, suscripciones, blogs, etc...) que son incompatibles entre sí y están haciendo que la comunidad global que era Internet se divida, y a ello contribuye la presión social sobre los individuos. Veamos por ejemplo a los usuarios de FaceBook, Hi5 y MySpace, que deben tener cuenta con el mismo proveedor que sus amigos para mantenerse en contacto, a pesar de no estar de acuerdo o de tener ya una cuenta con la competencia.

Y lo mismo sucede con las suites ofimáticas, ya que cada una comenzó utilizando su propio formato para almacenar los archivos. Con la aparición de los estándares (oficiales o 'de facto') las suites empezaron poco a poco a migrar hacia la compatibilidad. También es el caso de los formatos de audio y los de video. Parece que es muy difícil escoger uno de todos esos formatos que cumpla la necesidad básica de comunicar de manera eficiente, así que las empresas se enfrascan en peleas, a veces legales, por la superioridad.

Unas pocas empresas ofrecieron paños de agua tibia a este problema, como Trillian o Meebo, que permitían a los usuarios tener todas las cuentas de mensajería simultáneamente, en mi caso fue muy conveniente, pero no ofrecieron una verdadera solución al problema. La comunidad siguió dividida, con algunos enlaces entre sección y sección.

Y luego viene otro fenómeno, más bien reciente: la compatibilidad, o como se dice por ahí, "si no puedes con ellos, úneteles". Se trata de la compatibilidad entre servicios similares de diferentes empresas. Microsoft y Yahoo! tomaron la decisión de hacer esto (el segundo un tiempo antes que el primero) ya que no pudieron comprarse el uno al otro, e hicieron que sus programas de mensajería instantánea fueran compatibles entre sí. También Blogger ha permitido cierta flexibilidad al dejar a decisión de los lectores utilizar la identidad que prefieran para dejar comentarios. Ya no es necesario tener cuenta en un servicio determinado para participar en el de la competencia. Entonces, ¿Qué pasa con los usuarios que tenían cuenta en ambos servicios?

Como es mi caso describo el efecto: ahora aparezco 2 veces en el servicio de MSN para todos mis amigos, y mi propia cuenta de Yahoo! ha empezado a recibir peticiones de contactos de Hotmail, por lo que ahora si uso uno u otro los tengo a todos, 2 veces si los uso al mismo tiempo. Obviamente al menos una de las dos cuentas se ha hecho prescindible, pero hasta que todos mis contactos tengan la misma dirección y cuenta de mensajería que quiero mantener no puedo eliminar ninguna de las dos.

También sucederá un fenómeno similar con la sincronización de las agendas. Ahora que (curiosamente) los mismos tres competidores ofrecen calendarios y agendas para sus usuarios es posible que permitan sincronizarlos y compartirlos con los de los otros servicios. Para los usuarios comunes con una sola cuenta eso será muy benéfico, pero para los usuarios que, como yo, las tengan todas será un verdadero dolor de cabeza. Lo único que se podrá hacer será resguardar la información ya guardada descartarlas cuentas hasta que sólo quede una de ellas, y restaurar lo que sea necesario, avisarle a todos los contactos del cambio (cosa que quien se haya mudado de casa sabe muy bien no es fácil de hacer) y rogar porque todo siga funcionando como es debido y de la mejor manera posible. Personalmente creo que el cambio será bueno pero requerirá esfuerzos, tanto de todos nosotros como usuarios como de las empresas con las que tenemos nuestros servicios. Sin embargo, creo que hay otra solución que podríamos tener en cuenta, así no la apliquemos.

Hace relativamente poco tiempo, la empresa Akama Games decidió unificar las cuentas de los usuarios de sus foros, juegos en línea y sitios de compras. Definitivamente no fue una decisión fácil. Muchos usuarios tenían diferentes nombres para cada servicio, pero el mismo identificador, así que una vez realizado el proceso de unifcación el usuario podía seleccionar con cuál quedarse. Esa solución de unificación de cuentas me parece la más adecuada, ya que le ahorra trabajo tanto a las empresas como a los usuarios y ayuda a consolidar la identidad digital como la representación de la persona en el mundo de la información.

El futuro de los servicios digitales es incierto, pero el ejemplo ya lo están siguiendo también las empresas del mundo real. La unificación de identidades ya está siendo aplicada por los gobiernos para reducir los trámites, como es el caso de la Planilla Única de Pago para los trabajadores independientes en Colombia. La idea es muy buena, pero requiere mucho cuidado en su implementación y su implantación.

A manera de comentario final pongámonos a pensar: si contamos los usuarios de correo electrónico web de cada servicio de los que hacen competencia directa y los sumamos, seguramente el número será mucho mayor que el de las personas que realmente usan esos servicios. Hay multiplicidad de identidades y por lo tanto no se puede decir que en el mundo real hay X usuarios y que por tanto la tecnología llega a todo el mundo. Se tiene que decir que la tecnología llega a unos pocos muchas veces.

=======

En la Universidad los estudiantes tenemos una cuenta de correo electrónico y una cuenta para los servicios de matrícula. También una cuenta para los servicios que se ofrecen en cada facultad únicamente. Tal vez sería mejor que para todos esos servicios se usara una sola cuenta, que equivaldría a la identidad digital de la persona dentro de la U. Así, para acceder a un nuevo servicio sólo sería necesario dar los datos de esa identidad, en lugar de crear una nueva. Ustedes, ¿qué opinan?

Empecemos a sacar cosas

Verán, así como uno tiene un escritorio con cajones para guardar diferentes cosas, la memoria, la mente, el cerebro o lo que prefieran también se va llenando, y va guardando elementos que clasifica, ordena, modifica y olvida (cosa que a menudo me ocurre). Pero de lo que podemos estar seguros es que no todo se pierde. ¿Cuántos de ustedes podrán recordar las series de televisión que veían de niños, o el olor del pastel o la torta que preparaba la vecina, ya sea ahora o dentro de 50 años? Y también les aseguro que las cosas se clasifican. Por lo menos yo no soy capaz de recordar la reunión que tengo dentro de 15 minutos si estoy estudiando para un parcial, o las fechas de cumpleaños de las personas que me rodean si estoy distraido en alguno de los cientos de proyectos que se me presentan cada semestre en la universidad.

Es como si tuviéramos cajones en el cerebro para almacenar todos esos asuntos, y es que no es para menos. Si tenemos un escritorio y sacamos el contenido, y dejamos todos los cajones abiertos todo sería un desastre. Y cuando olvidamos algo es lo mismo que dejar un cajón cerrado demasiado tiempo: lo que guardamos empieza a deteriorarse por la humedad o los bichos que puedan entrar buscando refugio y quietud. Sí, es algo que ya me ha pasado y lamento haber dejado de convivir con ese huésped tan inesperado.

En casa tengo un escritorio de madera con 3 cajones, aparentemente insuficientes, en el que acomodo cada cosa que va llegando y que curiosamente no necesito todo el tiempo, pero que si muevo de ahí terminaré necesitando, aunque sea por compañía (aunque normalmente llega alguien pidiéndola y tengo que buscarla del lugar donde la haya guardado). Igual me pasa con los marcadores de mi navegador, una curiosa lista que poco a poco se me ha vuelto irreductible y siempre creciente. Es por eso que he decidido sacar algunas cosas de esos cajones de una buena vez y para Internet (es decir, por el tiempo que mi blog esté vivo en lugar de para siempre). A veces serán temas agradables, opiniones y recomendaciones de sitios web, entre otros. Otras veces serán los desmadres que tenga que pegar por la cantidad de trabajo o de estudio que me agobie. Y otras serán reflexiones que espero muevan el corazón de todos ustedes acerca de las ocurrencias de nuestros líderes políticos y del curso que lleva la vida en este interesante planeta. Ojalá no se aburran.

Espero que con el ejercicio de la escritura y la publicación constante mejoren mis propias habilidades, como ser puntual, escribir más rápido y con mejor estilo, y ofrecerles un contenido importante para sus propias vidas, ya sea para que sigan mi ejemplo o aprendan de mis err... experiencias (digamos mejor).

Algunos de los temas de primera prioridad esta semana deberán ser de los siguientes:
  • Hacer los posts más cortos.
  • Decidir el día y la hora en que debo seguir escribiendo (y poner el recordatorio en mi escritorio (IceWM, no en uno de los cajones) y el celular.
  • Escribir sobre las actividades que he realizado esta semana (parte de mi bitácora personal).
  • Reflexión sobre el diseño de páginas web (tema que me apasiona) y redacción de los tutoriales.
  • La creación de un tutorial para PULPA.
  • La publicación de una nota acerca del mundo de hoy.
  • La pesadilla de la noche y su relación con el fin del mundo (:?).
  • Si alguno de los lectores desea contribuir con sus ideas a que el blog vaya mejorando, bienvenido su post. Y si quiere que yo consulte de un tema y publique lo que encuentre (lo bueno, lo malo) también puede hacerlo. Otros comentarios son bienvenidos, pero me reservo el derecho de eliminar aquellos que ofendan a otros lectores, y posiblemente los que me ofendan a mí (cosa difícil de lograr). Recuerden que la web debe ser un espacio de mutuo respeto y que también aquí se muestran nuestros propios modales (nota mental: agregar a la lista la creación de una nota respecto a los modales en la red) y que los derechos de cada uno terminan donde comienzan los de los demás.

    Así pues, bienvenidos.

    Buscar entradas