jueves, 20 de diciembre de 2007

KBQuery: ejecución de consultas SQL en una KB GeneXus

KBQuery es un programa que hicimos con Ernesto Trelles hace algún tiempo (2004), que utiliza GXPublic para ejecutar consultas sobre una base de conocimiento GeneXus.

La funcionalidad principal es que permite ejecutar consultas escritas en el momento, lo que a veces es muy útil, y permite resolver cosas que no se puede hacer directamente desde GeneXus.

Además tiene un arbol con las tablas disponibles con sus campos que al hacer doble-click los agrega a la consulta, algunas consultas ya armadas, la posibilidad de distribuir, consolidar, etc.

A mi por lo menos me resulta muy útil, lo uso bastante.

El proyecto está disponible en GXOpen, los invito a probarlo...

Además hice un video con Jing, por si alguien quiere ver el tipo de funcionalidad que tiene. Se puede ver aquí.

En algún momento habría que integrarlo con el .Net data provider que hicimos para GeneXus Rocha, para que siga funcionando... Pero ese es otro tema.

viernes, 14 de diciembre de 2007

Se viene la "googlepedia"

En una nota publicada ayer en el blog oficial de Google, hablan de una nueva herramienta llamada Knol (por "unit of knowledge").

La idea es que Google va a brindar un conjunto de herramientas para que el público en general pueda generar contenido sobre un tema en particular. Los artículos los escribiría alguien que sea una autoridad en el tema (o por lo menos que se considere así) y Google no participaría de la edición.

Lo que Google pretende es que cada "knol" sea lo primero que alguien debería leer cuando está buscando información de un determinado tema.

Cualquier parecido con Wikipedia es pura coincidencia...

El contenido y la edición van a ser responsabilidad del autor del "knol", y Google va a compartir las ganancias de la publicidad que aparece en la página con el autor de la misma.

Además por lo que dice la nota, le van a dar importancia a los "knols", con lo que seguramente aparezcan en la primer página cuando se busca por un tema específico, capaz que hasta resaltándolo en el resultado de la búsqueda.

Lo que yo me pregunto es, ¿era necesario hacer algo así? ¿Wikipedia no es lo suficientemente bueno? Claro, Google no tiene el control de Wikipedia (aunque seguramente lo pudiera comprar, pero ese es otro tema), ¿será eso?

Más información:

Official Google Blog: Encouraging people to contribute knowledge

TechCrunch: Google Preparing To Launch Game Changing Wikipedia Meets Squidoo Project

TechCrunch: Google Knol: A Step Too Far?

miércoles, 21 de noviembre de 2007

Filtro de spam en Adinet

Desde hace tiempo, estaba recibiendo entre 15 y 20 correos spam en las cuentas de Adinet por día. Por suerte el filtro de spam de Outlook funciona bastante bien...

Pero ayer cuando bajé el correo, fui como siempre a la carpeta de "Junk e-mail" a vaciarla, y estaba vacía.

Ya me había llegado un correo avisando que iban a poner el filtro de spam, pero no esperaba que funcionara tan bien.

Hoy me fijé y todo lo que filtró como spam era spam, ningún falso positivo.

lunes, 19 de noviembre de 2007

Creando aplicaciones web con Zoho Creator

Zoho es una empresa que se dedica a desarrollar aplicaciones de oficina pero que corren en un navegador. Algo así como Google Docs, pero con más aplicaciones...

Tienen las aplicaciones clásicas: Writer para editar documentos, Sheet para planillas electrónicas, Show para presentaciones, etc. Además tiene aplicaciones no tan estándar, como por ejemplo CRM.

Estuve probando Zoho Creator, que es una aplicación que permite desarrollar aplicaciones web. Básicamente lo que tiene es una definición de formularios, y eso genera una pantalla (le llaman "View") donde se pueden ver los datos en una grilla y se puede agregar, modificar, eliminar, ordenar, filtrar, etc.

Los formularios consisten de varios campos, que se agregan arrastrándolos al formulario, y se puede elegir entre varias opciones: campo simple, multilínea, número, moneda, fecha, dirección de email, URL, claves foraneas (el control se llama lookup), listas de selección, checks, y varios tipos de campo más.

Si tuviera que compararlo con GeneXus, diría que los formularios son como las transacciones de un nivel, y los View son como los trabajar con, los que se generan con Patterns.

Claro que esa es una comparación muy gruesa, entrando un poco más en detalle:

  • Zoho Creator no parece normalizar las tablas como lo hace GeneXus, de hecho, no vi como llegar al nivel de tablas.
  • Por lo que vi, solo se pueden definir formularios de un nivel.
  • No maneja reglas de negocio, la programación se hace con un lenguaje de scripting que parece bastante potente. Se programa por evento, y en ese sentido puede ser que resulte más flexible que GeneXus.
  • No es necesario configurar nada, luego de crear el primer formulario ya se puede empezar a ingresar datos.
  • No tiene objetos como procedures, reports o web panels, pero creo que tiene una API para acceder a la información, por lo que se podrían hacer cosas en otro lenguaje.
  • Los datos y la aplicación quedan en el servidor de Zoho, no vi si se puede bajar la aplicación para instalarla local. De todas formas, las aplicaciones pueden ser privadas a pesar de estar "en la nube".

En resumen, creo que es una aplicación muy interesante. Permite generar aplicaciones para ingresar y mantener datos de forma muy fácil y muy rápida. Hice una aplicación de prueba con cuatro formularios en menos de una hora...

Además tienen la gran ventaja de que es gratis.

Creo que vale la pena probarlo para ver las cosas que se pueden hacer. Incluso, creo que puede estar bueno para hacer aplicaciones "de verdad" que consisten principalmente en ingreso de datos, y que no son demasiado complejas.

En la página principal hay dos videos que explican mucho mejor lo que se puede hacer con esta aplicación.

sábado, 17 de noviembre de 2007

Extensiones actualizadas

Hace unos días, la gente de Artech hizo un cambio en GeneXus Rocha para que solo se carguen las extensiones que son compatibles con la versión que se está ejecutando... Por lo tanto, todas las extensiones que ya habían, dejaron de funcionar.

El cambio que hicieron está explicado aquí, así también como la forma de indicar la versión compatible con la extensión.

Se pueden descargar las siguientes extensiones, compatibles con el build 8730 o superior:

  • Open command prompt
  • Open Windows Explorer
  • View related files
  • Remove files on delete
  • GX objects from tables
  • KBDoctor

Están probadas y funcionando con el build 8821.

Para instalarlas, alcanza con descomprimir el zip en la carpeta Packages debajo de la instalación de GeneXus Rocha, y ejecutar con la opción /Setup.

miércoles, 14 de noviembre de 2007

Nintendo Wii

Ayer finalmente pude probar el Nintendo Wii que ganamos con Diego y Enrique en el GXChallenge...

Me resulta brillante la idea de poder jugar moviendo el "control remoto". Los juegos no se de una calidad gráfica que se destaque, pero están muy bien hechos, y es realmente divertido.

Lástima que haya venido con un solo control remoto, porque debe estar mucho más bueno jugar de a dos o más.

lunes, 5 de noviembre de 2007

DARPA's Urban Challenge ends

Hace tres años, DARPA () había organizado una competencia en el que vehículos conducidos de forma automática sin intervención humana, debían realizar un recorrido por el desierto.

En esa oportunidad, ninguno de los vehículos había terminado.

El domingo pasado se hizo otra competencia donde 11 vehículos debían recorrer un circuito "urbano".

Hubieron seis que lograron llegar a la meta...

¿Donde vamos a estar dentro de 20 años? ¿Con vehículos conducidos de forma totalmente automática? Sería interesante de ver...

DARPA's Urban Challenge ends: six cars cross the line, CMU takes 1st place - Engadget

GPhone: ¿La oportunidad de Linux y Java?

Hace ya algún tiempo que se viene hablando del Google Phone. Hoy se hizo el anuncio, de lo que finalmente no es un teléfono mobil, sino una plataforma.

La plataforma se llama Android, y según el anuncio:

Android is the first truly open and comprehensive platform for mobile devices. It includes an operating system, user-interface and applications -- all of the software to run a mobile phone, but without the proprietary obstacles that have hindered mobile innovation.

Según la nota en Read/Write Web, la plataforma estaría basada en Linux y Java.

También dice algo en la cobertura en vivo de la conferencia de prensa en engadged.

Si tenemos en cuenta que hay unos 3.000 millones de teléfonos celulares, y que están participando empresas como Motorola, Qualcomm, HTC y T-Mobile, da para pensar el nivel de adopción que puede llegar a tener esta plataforma.

Además, lo más probable es que al ser una iniciativa abierta, vayan a haber unas cuantas empresas más que se sumen a la Open Handset Alliance...

Claro, los teléfonos celulares con Linux no son nuevos, pero todo parece indicar que Android va a generar mucho momento.

Se vienen tiempos interesantes, con otra movida inteligente de Google...

miércoles, 31 de octubre de 2007

Midiendo distancias en Google Maps

Hace un tiempo, Google Maps incorporó los mapas de algunas ciudades de Uruguay y las rutas.

Está bueno, sobre todo poder combinar la imagen satelital con el mapa, pero por ahora el problema que tiene es que no busca direcciones...

También le falta otra funcionalidad que hay disponible en otras partes del mundo, como las instrucciones para llegar de un punto a otro de la ciudad.

Igual lo que quería comentar en esta nota era sobre la herramienta para medir distancias (Distance Measurement Tool), que se puede usar junto con los mapas.

El uso es bien simple, simplemente haciendo click en los distintos puntos del mapa se va dibujando el recorrido y va marcando la distancia (claro que antes hay que elegir la opción para usar esta herramienta).

La precisión parece un poco exagerada, llega hasta centímetros. No creo que los mapas tengan tanta resolución...

miércoles, 24 de octubre de 2007

Servicios para compartir fotos en Internet

La tecnología para compartir fotos a través de una página web en internet, no es nueva. El que soy nuevo en el tema soy yo...

Estuve probando varios servicios, tal vez los más populares, pero no logro decidirme por ninguno.

Las tres características que busco son:

  • facilidad para publicar las fotos
  • poder verlas en un mapa
  • seguridad

Flickr

Flickr es sin duda el más popular.

Tiene una interfaz web bastante razonable para subir las fotos, y también hay una aplicación de escritorio que se puede instalar, pero eso ya es para usuarios que publican fotos con más frecuencia.

Las fotos se pueden ver en un mapa (Yahoo! Maps, por supuesto). La forma de asignarles una ubicación en el mapa es con una interfaz web con drag&drop bastante razonable, aunque para Uruguay el nivel de detalle que tienen las fotos satelitales no es el mejor.

Con respecto a la seguridad, me pregunta si quiero compartir las fotos con mi familia, mis amigos, o hacerlas públicas. Parece razonable.

Las fotos las pueden ver acá: http://www.flickr.com/photos/60591909@N00/

Picassa

Picassa es una aplicación de escritorio que permite organizar las fotos que haya en el disco duro, y tiene algunas funcionalidades básicas de edición. Además, desde hace no mucho, hay un servicio llamado Picassa Web Albums, donde se pueden publicar fotos, lo que se hace de forma muy fácil desde la aplicación siguiendo una secuencia de dos o tres pasos.

Lo raro, es que no parece haber una forma de ver las fotos en un mapa.

La seguridad es muy básica, se pueden hacer públicas o no. Si son públicas, cualquier persona las va a poder encontrar en una búsqueda. Si no son públicas, de todas formas cualquiera las va a poder ver, pero va a necesitar una URL de bastante complicada. Por ejemplo: http://picasaweb.google.co.uk/marcos.crispino/20071021PuebloSuizo/photo?authkey=6ijsQ2Zq34k#s5125000049165704082

La interfaz web es bastante interesante, creo que es la que más me gustó.

Panoramio

Panoramio tiene la gran ventaja que las fotos se pueden ver luego en Google Earth, con lo cual, creo que en este aspecto es el mejor de todos estos servicios.

La forma de subir las fotos es bastante pobre, ya que se puede subir solamente de a una por vez (o por lo menos no encontré como subir varias). La forma de ubicarlas en el mapa también es con drag&drop, igual que Flickr.

No encontré como configurar seguridad...

La interfaz web parece bastante simple, nada destacable. Por ejemplo: http://www.panoramio.com/user/1030795

Windows Live Spaces

Hace unos días me bajé el Windows Live Photo Gallery Beta, que es un producto bastante parecido a Picassa, pero de Microsoft.

La publicación es muy simple, igual que en Picassa, ya que solo tengo que elegir las fotos en la aplicación, apretar un botón y seguir los dos o tres pasos necesarios. Además de subirlo a Windows Live Spaces, se pueden subir también a Flickr.

No encontré como poner las fotos en un mapa...

La seguridad está interesante, se puede configurar a nivel de contactos de Messenger, por lo que tiene un muy buen nivel de granularidad.

De las interfases web creo que es la que menos me convence.

Se pueden ver las fotos en: http://mcrispino.spaces.live.com/photos/cns!566FEBD040E8ADA5!200/fakehandlerpage.aspx?_c=PhotoAlbum&_c01_photoalbum=showdefault&_c01_spaFolderID=cns!566FEBD040E8ADA5!200

Conclusión

Estos cuatro en realidad son algunos de los que existen. Para publicar fotos en formato album debe haber cientos de sitios.

Lo que queda claro es que es un tema en el que los grandes jugadores (Microsoft, Google yYahoo!) están poniendo bastante esfuerzo.

¿Cual es el mejor? Como todo, depende lo que se quiera hacer. Creo que los ganadores van a estar entre Flickr (tal vez usando Windows Live Photo Gallery para subir las fotos) y Picassa (cuando le agreguen la posibilidad de ubicar las fotos en Google Maps). Pienso que eventualmente Panoramio y Picassa van a terminar siendo uno solo.

Por ahora igual no me decido por ninguno. Habrá que seguir probando.

domingo, 7 de octubre de 2007

One Laptop Per Child en Uruguay

Lo que más me llama la atención de esta noticia no es la noticia en sí, si no que haya sido publicada en Engadget...

Uruguay reportedly set to buy 100,000 OLPC XO laptops - Engadget

Hay dos notas con tag "uruguay", y las dos son de OLPC. Una es esta, y la otra es de hace unos meses.

jueves, 27 de septiembre de 2007

Resumen del XVII Encuentro GeneXus

Las charlas

Creo que lo más fácil para definir este encuentro de usuarios, es usando una palabra: Rocha.

El foco de Artech estuvo puesto sin duda en la nueva versión de GeneXus que promenten liberar para marzo de 2008. Hubieron muchas charlas sobre este tema, lo cual es lógico por la proximidad de su liberación.

Para quienes venimos siguiendo la versión de GeneXus Rocha desde los primeros CTPs, no hubo mucha novedad. Presentaron las funcionalidades que va a tener: un nuevo y mejorado IDE, una arquitectura extensible (extensions, patterns y user controls), nuevos objetos (data selectors y data providers), busqueda por palabra o por propiedades en toda la KB, etc.

Lo que sí me resultó una novedad, y muy interesante, fue el tema de la charla de Gustavo Proto y Jorge Mastropietro "20-25 Todo en una única Knowledge Base con GeneXus Rocha": van a incorpoarar a la versión Rocha un manejo de versiones por KB. Es un tema para estar atentos en el futuro, porque no llegaron para la liberación de esta funcionalidad en la Beta 1.

Desenchufados

Este año se hizo por primera vez el GeneXus Community Unplugged.

Creo que fue una experiencia interesante, hubo muy buen ambiente.

GXChallenge

Al cierre del evento se entregaron los premios del GXChallenge, donde obtuvimos el premio por voto popular en la categoría de extensiones por el KBDoctor, junto con Enrique y Diego.

Además del premio, nos nombraron en varias charlas por el KBDoctor...

Varios

La cantidad de gente que había en el Radisson, sobre todo el primer día, fue impresionante. Todos los años dicen que queda chico, el problema es que cada vez queda más chico. Creo que eso demuestra como va creciendo la comunidad año a año.

Como siempre, el nivel de las charlas y de los expositores fue muy bueno.

Me tocó seguir alguna charla por internet (no se puede estar todo el día en el evento, en algún momento hay que trabajar...) y la calidad de sonido sobre todo, pero también de video, fue muy buena.

Conclusiones

Otro muy buen encuentro de usuarios... Esperando al próximo :)

jueves, 6 de septiembre de 2007

Mi biblioteca en Google Book Search

Una de las cosas que extraño cuando estoy con un libro de papel (un libro, digamos), es el Ctrl+F para buscar. Probablemente sea una deformación profesional...

Ahora Google Book Search agregó una nueva funcionalidad que permite agregar libros a mi biblioteca, y buscar por palabra en esos libros. No me dice en que página está lo que encuentra, solo me dice en que libros está, pero por algo se empieza.

Se pueden importar ingresando una lista de ISBNs (sin guiones ni espacios en blanco), o se puede buscar y al lado del resultado aparece un link que permite agregarlo a la biblioteca.

Probé con algunos libros, la mayoría en español, y los encontró todos.

Eclipse solar el próximo martes

El próximo martes 11 de Setiembre, habrá un eclipse parcial de Sol que será visible en América del Sur.

Es el último eclipse del año, y según Wikipedia, el último visible por estas latitudes hasta Julio de 2010.

Otro dato interesante, es que en Julio de 2009 se va a producir el eclipse solar de mayor duración del siglo XXI, pero lamentablemente solo se va a ver en Asia y el Pacífico.

En Wikipedia está el calendario de eclipses solares y lunares para los próximos años.

viernes, 31 de agosto de 2007

Proyector de imágenes en tres dimensiones

Encontré esta nota en engadget que me pareció muy interesante. Proyectan una imagen 3D de 360º en un espejo que gira, y obtienen imágenes de muy buena calidad.

Researchers develop a 360-degree holographic display - Engadget

jueves, 16 de agosto de 2007

.Net Data Provider for GeneXus Rocha

¡Ya está disponible la primer versión del .Net Data Provider for GeneXus Rocha! Se puede descargar desde el sitio de GXOpen.

Esta extensión permite consultar el contenido de una base de conocimiento GeneXus Rocha mediante el uso de sentencias SQL, con un esquema de datos compatible con lo que había disponible en GXPublic. La diferencia con esta herramienta es que para GeneXus Rocha decidimos implementar un .Net Data Provider en lugar de un OleDB Provider.

La documentación se puede consultar en el Wiki de la comunidad.

Además del data provider, se implementó una aplicación de ejemplo que permite realizar consultas utilizando una interfaz gráfica. La aplicación también se baja junto con el proyecto.

Y por último, recordar que ya se puede votar por el mejor proyecto para el GXChallenge. :D

viernes, 3 de agosto de 2007

User controls en GeneXus Rocha

Hace tiempo que quería hacer algunas pruebas con los User Controls en GeneXus Rocha, pero no había encontrado el momento.

Hoy estuve probando, y me resulta realmente espectacular. El código queda mucho más claro que programando lo mismo "a mano", y el uso es tal cual el de cualquier otro control.

Probé los controles de GXChart y el Tree View que ya vienen con GX, y además probé Tag Cloud de Marcos Canán. Me hubiera gustado probar el Map Control, pero no encontré como bajarlo.

No me cabe duda que los User controls nos van a faciliar la vida al momento de desarrollar las aplicaciones. Espero que aparezcan varios controles más :)

Ahora me queda probar crear un User control, pero eso queda para otro momento y otro post...

Una reflexión para terminar. Pienso que estaría bueno agregar en la barra de herramientas además de los User controls, los Web components que haya en la base de conocimiento, para poder agregarlos al form con drag&drop.

sábado, 28 de julio de 2007

Se viene el GeneXus Challenge...

... y en Concepto vamos a participar con dos proyectos.

Por más información, ver el Petroglifo.

martes, 17 de julio de 2007

Implementando una progress bar en un web panel GeneXus

Hoy me encontré con un problema, que con GeneXus no tiene una solución fácil. En una aplicación full web con GeneXus 9.0, tengo un proceso que puede demorar varios minutos, y mientras el proceso corre en el servidor, no hay forma de que el usuario se entere de lo que está haciendo.

La versión original

En la versión original, lo que tenía era un web panel, que hacía un call a un procedimiento, y cuando el procedimiento terminaba, llamaba a otro web panel. Algo así:

Event 'Accion'
call(PProcesa)
call(HMuestraResultado)
EndEvent

El problema con esta arquitectura es que por más que ponga mensajes en el evento, no se van a mostrar hasta que haya terminado de procesar.

Arquitectura de la solución

La solución fue llamar al procedimiento usando el comando submit, con lo que el procedimiento queda ejecutándose, pero el control vuelve de inmediato al web panel.

El código queda entonces así:

Event 'Accion'
submit(PProcesa, '')
call(HMuestraProgreso)
EndEvent

Además, se implementaron dos procedimientos, uno que devuelve la cantidad a procesar y otro que devuelve la cantidad que fueron procesados hasta el momento.

El web panel MuestraProgreso, invoca a estos dos procedimientos en el evento Start, de forma de saber el porcentaje de avance, y muestra un mensaje "Procesados n de N". Este web panel hace un refresh automático cada 3 segundos, de forma de ir mostrando el progreso. Veamos el código.

Event Start
&Total = udp(PCantidadTotal)
&Procesados = udp(PCantidadProcesados)

if &Procesados >= &Total
call(HMuestraResultado)
else
Form.MetaEquiv.AddItem('refresh', '3')
tbkMensaje.Caption = 'Procesados ' + trim(str(&Procesados, 9, 0)) + ' de ' + trim(str(&Total, 9, 0)) + '.'

do 'Progress bar'
endif
EndEvent // Start

El refresh automático se hace colocando un tag HMTL en el cabezal de la página, en el código es la línea con:

Form.MetaEquiv.AddItem('refresh', '3')

Mostrando una barra de progreso

Para mostrar la barra de progreso (progress bar) se necesita un poco más de código HTML. Hay muchas formas de hacerlo, en este caso elegí usar una tabla con varias celdas que se van pintando de algún color a medida que avanza.

Sub 'Progress bar'
&pbDivisiones = 100
&pbAvance = round(&Procesados * &pbDivisiones / &Total, 0)
tbkProgressBar.Caption = '<table id="ProgressBar" cellpadding="0" cellspacing="0" style="width:100%;" border="1" rules="none"><tr>'
for &i = 1 to &pbDivisiones
if &i <= &pbAvance
&style = ' style="BACKGROUND-COLOR: #005B5B"'
else
&style = ''
endif
tbkProgressBar.Caption += '<td' + &style + '>&nbps;</td>'
endfor
tbkProgressBar.Caption += '</tr></table>'
EndSub // 'Progress bar'

El control tbkProgressBar es un text block que se encuentra en el web form del web panel, y que tiene la propiedad Format = HTML.

El resto de la subrutina se debería poder usar tal cual, sin hacerle modificaciones.

jueves, 12 de julio de 2007

Integración entre FeedBurner y Blogger

Ahora que Google compró FeedBurner, hicieron más fácil la integración con Blogger: FeedBurner Integration for Blogspot Blogs

Antes se podía hacer, pero daba un poco más de trabajo. Había que editar el fuente de la plantilla del Blog. Ahora simplemente es poner el link al feed en un campo.

Determinación del índice usando clausulas where del for each

Estaba leyendo las release notes del preview del upgrade 4 del Development Environment de GeneXus 9.0, y me encontré con que implementaron esto:
SAC 20452- No se considera condiciones explícitas (where) para buscar el mejor Order/índice.
Hasta ahora GeneXus suponía que el DBMS elige el índice que usa para resolver la consulta solo tomando en cuenta la cláusula "order", cuando en realidad la mayoría de las veces se basa en el contenido de la clausula "where".

Con este cambio, probablemente el índice que reporte GX en la navegación sea más acertado, y van a dejar de aparecer algunos warnings.

¡Una muy buena noticia!

miércoles, 11 de julio de 2007

Flock 0.9

Hace un tiempo había escrito una nota sobre Flock. En ese momento la versión disponible era la 0.7 que estaba basado en Firefox 1.5 y era el browser que usaba. Después volví a Firefox 2.0, el principal motivo es una funcionalidad espectacular que no estaba en 1.5, que es poder abrir un tab que cerré hace poco...

Ahora, la semana pasada, se liberó la versión 0.9 de Flock que está basado en Firefox 2.0... Entonces se me plantea el dilema si volver a Flock o si quedarme en Firefox.

La interfaz de Flock 0.9 está muy buena, tiene una barra con accesos directos para:
  • My World: es una página que concentra una lista de los sitios favoritos, los feeds y "favorite media", que son imágenes y videos de gente a la cual me puedo suscribir.
  • Media bar: muestra fotos y videos en una barra entre la página web y la lista de tabs.
  • Favorite sites
  • Accounts and services: Flock permite configurar la integración con varios servicios: Flickr, Photobucket, YouTube, Blogger, Blogsome, LiveJournal, Typepad, Wordpress, Xanga, del.icio.us y Magnolia.
  • Feeds: el mejor lector de feeds que encontré...
  • Web clipboard: permite seleccionar imágenes y texto del web para usar en otras aplicaciones
  • Blog: permite crear notas y publicarlas en distintos blogs, ahora estoy escribiendo esta nota en el editor de Flock
  • Uploader: permite subir imágenes a Flickr o videos a YouTube (y a otros servicios...).
Es verdaderamente muy completo para quienes usan algunos de los sitios con los que tiene integración.

De estos servicios uso algunos, y he encontrado buenas extensiones para Firefox que suplantan bastante bien los servicios que tiene integrado Flock.

Bookmarks. Uso el servicio de del.icio.us, que tiene una extensión que permite administrar los links desde la interfaz misma de Firefox. Se puede agregar un nuevo link a la colección, y se puede buscar por categoría (tag) o por descripción. Con esta extensión, dejé de usar los bookmarks de Firefox (ya en Flock no los usaba, de hecho ni siquiera existen como tal...)

Feed reader. Como lector de feeds, tiene la gran ventaja que no es necesario abrir otra aplicación. Cuando abro el navegador ya se conecta a los sitios a los que me suscribí y baja lo que haya nuevo. Además está realmente bueno. En Firefox no encontré una extensión que me convenciera, pero estoy usando Google Reader, que también está muy bueno, y tiene la ventaja que puedo leer las noticias desde cualquier lado. Igual es como si fuera otra aplicación, en el sentido que tengo que ir a la página para enterarme si hay algo nuevo, pero una cosa compensa la otra...

Firefox tiene integrado un "lector de feeds" si es que se puede llamar así, porque deja mucho que desear. Lo que sí tiene, que está bueno, es que puedo decirle que cuando hago click en algún link para suscribirme, agrega el feed automáticamente a Google Reader.

Nota: no me gusta la palabra "feed", pero no conozco una palabra en español que represente lo mismo... si alguien la conoce que me avise.

Blogs. En Firefox estoy usando una extensión que me permite escribir las notas en Windows Live Writer (lo curioso es que es un producto de Microsoft, y tiene una extensión para Firefox). La integración es casi tan buena como la que tiene el editor de Flock, y además tiene la ventaja que la edición se hace usando el mismo tema que tiene el blog, por lo que ya voy viendo como va a quedar.

Conclusiones... Es muy bueno que Flock haya liberado una versión basado en Firefox 2.0. Me parece que es un excelente browser. Sin embargo, creo que he encontrado los equivalentes en funcionalidad en extensiones para Firefox, por lo que por ahora me quedo con este último. Sin embargo, cuando salga la versión 1.0 de Flock la voy a probar nuevamente.

lunes, 9 de julio de 2007

Distintas formas de visualizar Amazon

En 5 Alternative Ways to Browse Amazon, se muestran cinco aplicaciones que permiten navegar por Amazon con distintas formas de visualizar la información.

Me gustaron LivePlasma y Tuneglue, tienen buenas formas de ver los elementos relacionados.

sábado, 7 de julio de 2007

Comandos de texto en interfases gráficas

Estuve leyendo un artículo muy interesante de Alex Faaborg (Mozilla Labs) sobre The Graphical Keyboard User Interface, donde hace algunos comentarios interesantes sobre el uso de comandos de texto en interfases gráficas, en particular, algunas ideas que tiene para Firefox 3.

También hace referencia a un artículo que está muy interesante titulado Command Line for the Common Man: The Command Line Comeback.

Yo uso bastante la línea de comando de Windows para varias cosas (abrir archivos, copiar, mapear discos, etc). Obviamente no digo que hay que usar solo línea de comandos, pero hay cosas que son más rápidas o más fáciles de hacer con un comando que con una GUI. Sobre todo más rápido...

Hay otras aplicaciones que uso donde para realizar un acción se escribe un comando de texto.

Bookmarks en Firefox, con la extensión de del.icio.us. del.icio.us es un sitio que permite almacenar una lista de links, la extensión agrega mis links como una lista de favoritos en Firefox. En vez de usar una estructura de carpetas para almacenar los bookmarks, tengo una lista plana y un campo de texto, donde al digitar una letra se va filtrando. Digitando 4 o 5 letras, llego fácilmente al link que quiero.

Slickrun es una aplicación que agrega un campo de texto que flota sobre la pantalla, donde se pueden escribir comandos, por ejemplo, para buscar una palabra en el diccionario de la Real Academia Española (ojo, este comando no viene por defecto...). En lugar de abrir el navegador, buscar el link correspondiente, esperar que se cargue la página, ingresar la palabra en el cuadro de texto correspondiente, y presionar un botón, simplemente escribo "rae" en Slickrun, se abre otra ventana con un cuadro de texto, escribo la palabra, y doy Enter. Mucho más fácil :)

En GeneXus, por ejemplo para abrir un objeto. En una KB con más de 6.000 objetos como tenemos en Concepto, acordarse del folder de cada uno es imposible. El dialogo para abrir un objeto escribiendo una parte del nombre o de la descripción, es mucho más práctico.

Las aplicaciones generadas con GeneXus a partir de 9.0, tienen la posibilidad de ingresar valores mediante la descripción, y con una lista de opciones gracias al suggest. Hay que ver si los usuarios se acostumbran a esta forma de usar las aplicaciones, yo creo que hay casos en que es mucho más práctico que un prompt o un combo.

domingo, 1 de julio de 2007

GXOpen, versiones de los proyectos y KBManager

GXOpen es un muy buen sitio para compartir proyectos entre los miembros de la comunidad GeneXus, pero tiene una limitante que creo que es muy importante: el proyecto consiste de un solo archivo donde tiene que estar todo.

Sería muy bueno poder tener distintos archivos asociados a una versión de un determinado proyecto. Por ejemplo, deberían poder subirse los fuentes por un lado, los archivos binarios en el caso que haya, la documentación, screenshots, etc. Y todo debería forma parte de una determinada versión.

Además, si bajo un proyecto y quiero hacerle algún cambio, cuando lo vuelvo a publicar tengo que volver a subir todo el proyecto, sin importar el tamaño del cambio que haya hecho.

Para otros lenguajes de programación hay buenas herramientas para publicar distintas versiones de los fuentes, pero con GX es más difícil, porque los objetos de la KB no son archivos que se puedan subir a un repositorio.

KBManager es el proyecto de grado (de la Facultad de Ingeniería) de Federico Alvarez, Diego Crutas y Daniel Latorres, que entre otras cosas tiene la capacidad de almacenar en un repositorio centralizado las distintas versiones de los objetos de una KB. Es exactamente lo que le falta a GXOpen.

La solución es simple y efectiva: si yo parto de una determinada versión y hago un cambio en algún objeto, puedo subir mediante un XPZ los objetos modificados al repositorio centralizado, donde se procesa y almacena el XPZ de cada uno de los objetos. Del repositorio puedo obtener la última versión de un objeto o de toda la KB, y puedo fácilmente obtener también una versión anterior.

Creo que sería muy bueno contar con una funcionalidad similar a esta en GXOpen...

Además el KBManager permite hacer otras cosas, como por ejemplo comparar dos versiones de un objeto, crear consultas sobre los objetos, marcar objetos como que pertenecen al mismo "bug fix", etc., pero esto ya sería "funcionalidad avanzada" para lo que se necesita en GXOpen.

viernes, 29 de junio de 2007

La eficacia del PageRank

Recien estaba mirando las estadísticas del blog en Google Analytics (la versión nueva está muy buena), y veo que desde mediados de junio el sitio está recibiendo muchas más visitas desde Google.

La gráfica muestra el tráfico que llegó desde Google día a día durante casi todo junio.

Obviamente el PageRank de este blog sigue siendo negativo, pero desde que se llega del sitio de GXTexcnical a través de esta noticia, el tráfico que llega desde el motor de búsqueda es mucho más alto.

El sitio de GXTechnical tiene PageRank 5...

miércoles, 20 de junio de 2007

GXObjects from Tables, parte 3

En la primer nota sobre esta extensión, decía que iba a estar disponible el video de la charla.

Hoy quedó publicado para bajarlo desde el Download center del sitio de GX Technical. Se puede bajar desde esta dirección.

martes, 19 de junio de 2007

GXObjects from Tables, parte 2

En la nota anterior sobre esta extensión, comentaba que todavía faltaban algunas cosas para poder liberarla al público.

A partir de hoy estoy dejando en el wiki de GeneXus la extensión para quien la quiera instalar. También estoy subiendo una nueva versión del proyecto .net a GXOpen, que se puede obtener desde aquí.

Los cambios que tiene con respecto a la versión anterior son:

  • El archivo XSLT que se usa para armar el HTML con el resultado ahora está embebido en la dll, por lo que ya no es necesario copiarlo.
  • El código "heredado" del proyecto original, ya no tiene toda la parte de interfaz gráfica que en Rocha no se necesita...
  • Los warnings que aparecían al compilar ya no aparecen.
  • Y lo más interesante, en el resultado aparecen links en el nombre del objeto que al hacer click abre el objeto seleccionado.

Para instalarlo, hay que tener el build nocturno del viernes pasado o superior (build 5648). La instalación es como siempre, se copia el archivo .dll al directorio Packages y se inicia GeneXus con la opción /Setup.

¿Cómo se hace para disparar una acción desde la Start Page?

Poniendo un link de la forma gx://[KB]?Command=[PackageGUID;]<CommandId>[¶mName=pararmValue], donde KB es la ruta a la base de conocimiento y es opcional, PackageGUID es el identificador de la extensión, CommandId es un comando como los que se definen para agregar a los menues del ambiente de desarrollo. La lista de parametros se separa con &, y debe tener la forma paramName=pararmValue. Se puede incluir más de un parámetro.

En este caso, y como ejemplo, el link es gx://?Command=23ce0233-038d-42ce-b17f-681f5872fb86;OpenKBObject&objName=<nombre>.

Podría escribir en más detalle como hacer esto, pero pienso que si a alguien le interesa, lo mejor es ver el código, ya que está disponible.

¿Cómo se hace para abrir un objeto por código?

Esta es la otra pregunta que me parece que puede resultar de interés, y como respuesta publico el código...

KBObject obj = UIServices.KB.CurrentModel.Objects.Get("Objects", s);

IDocumentManagerService docManager = new DocumentManagerService();
docManager.OpenDocument(obj);

donde la variable "s" es un string que contiene el nombre del objeto.

Actualización (20-6-2007): como comentaba Gastón en los comentarios (valga la redundancia), no es necesario crear una instancia del IDocumentManagerService, se puede usar la propiedad UIServices.DocumentManager que ya es una instancia de esta interface que ya está creada...

domingo, 10 de junio de 2007

Un día sin Google

En Read/Write Web, se propone pasar un día, este martes, sin usar ninguno de los sitios de búsqueda más populares: Google, Yahoo!, MSN, AOL y Ask.

Usar Google es algo que tengo tan incorporado, que puede estar interesante hacer el experimento. A lo mejor descubro algun otro sitio de búsqueda que esté bueno...

Más información: This Tuesday: A Day Without Google

martes, 5 de junio de 2007

Algunos cambios al blog

En estos días estuve haciendo algunos cambios al blog:

  • Ahora es posible suscribirse por email, estoy usando un servicio de Feedburner.
  • El link de RSS que "descubre" automáticamente el navegador (tanto Firefox con IE7) ahora es el de Feedburner y no el de Google. La ventaja de esto es que puedo saber cuantos suscriptores tiene el blog, Google no tiene este servicio (o no lo conozco por lo menos).
  • En Firefox, ya no aparece el logo por defecto de Blogger (un logo anaranjado con una B blanca...), ahora aparece una imágen mia.
  • Cambié la lista de etiquetas por un tag cloud, como explica José Lamas en su blog. Para este tipo de contenido, sin duda la nube es mucho mejor que la lista.

Por ahora eso es todo. El próximo cambio es sacar la sección de Datos personales de Blogger y poner algo hecho con Microformats. Pero eso es para otro momento y otra nota...

miércoles, 30 de mayo de 2007

Microsoft Surface

Está muy buena esta tecnología, realmente sorprendente lo que hacen...

En Techcrunch tienen un video que está muy bueno.

El sitio oficial se puede ver acá.

lunes, 28 de mayo de 2007

GXObjects From Tables en Rocha

El proyecto de GXOpen GXObjects From Tables, procesa los archivos de especificación de una base de conocimiento (*.sp0) y construye un HTML con la lista de tablas y los objetos que usan cada tabla (identificando los objetos que solo la usan y los que además hacen insert, update o delete).

Es realmente una herramienta muy útil.

El sábado pasado, en la III Reunión de usuarios de la comunidad GeneXus en Montevideo, hice una presentación donde mostraba como integrar el proyeco antes mencionado a GeneXus Rocha, mediante las GeneXus Extensions.

El nuevo proyecto, también se puede obtener de GXOpen, desde aquí. En dicho proyecto se incluye la solución completa de Visual Studio, además del archivo paso a paso que indica como construir la aplicación desde cero.

También tenemos la grabación de la presentación, que va a estar disponible para bajar desde el sitio de ARTech (cuando esté, actualizo esta nota).

Todavía no dejo disponible esta extensión para instalar automáticamente, porque tiene algunos detalles que todavía hay que corregir:

  • Para mostrar el HTML, usa un archivo XSLT, que es necesario copiar al directorio de la KB. Esto no complica para una demo, pero no es usable para el público en general.
  • Al compilar la solución en VS, aparecen algunos mensajes de advertencia, que no llegué a revisar.
  • Sería bueno poner links en los nombres de los objetos, que al hacer click abra el objeto en la KB. Ese cambio justificaría tener la funcionalidad en Rocha, porque ahora como está no aporta demasiado.

De todas formas, si alguien quiere instalar la extensión, puede hacerlo bajando el proyecto de GXOpen.

sábado, 19 de mayo de 2007

Tercer reunión de la comunidad GX en Montevideo

El próximo sábado (26 de mayo) se va a hacer la tercer reunión de la comunidad de usuarios GeneXus en Montevideo.

La invitación la pueden ver aquí.

En esta oportunidad, me toca dar una charla donde voy a estar mostrando algo de como desarrollar extensiones para GeneXus Rocha.

viernes, 18 de mayo de 2007

martes, 15 de mayo de 2007

Astrónomos descubren anillo de materia oscura

La NASA hoy anunció el descubrimiento de una anillo de materia oscura, que se encuentra en el cúmula de galaxias CL0024+17, que se encuentra a unos 5.000 millones de años luz de distancia de la Tierra.

Aparentemente esta sería la primer evidencia directa de la existencia de materia oscura...

lunes, 30 de abril de 2007

Más extensiones para GeneXus Rocha CTP4

A partir de hoy hay tres nuevas extensiones disponibles para GeneXus Rocha CTP4, que se pueden instalar directamente desde la página inicial, como muestra la imagen.



Open Windows Explorer
La funcionalidad es similar al Open Command Prompt, permite abrir el directorio de la KB, del modelo o el directorio web, pero en este caso utilizando el Explorador de Windows. Es equivalente a la funcionalidad que tenían las versiones anteriores de GeneXus, que se accedía (se accede) desde Tools -> Explore Model Target Path.

View Related Files
Para utilizar esta extensión, es necesario ir a View -> Tool Windows View Related Files. Esto abre una nueva ventana (tool window) donde se muestran todos los archivos relacionados a los objetos seleccionados.

Remove Files On Delete
Cuando se elimina un objeto de la base de conocimiento, se pregunta si además se quieren eliminar los archivos relacionados (muestra cuales son los archivos a borrar).

jueves, 26 de abril de 2007

Encuentran planeta similar a la Tierra

Las noticias de ayer no son noticias, pero igual me pareció interesante...

El planeta es el tercero que se encuentra orbitando la estrella Gliese 581, y podría ser el planeta extra solar más parecido a la Tierra encontrado hasta el momento.

El radio del planeta podría ser una vez y media el radio de la Tierra, y su masa es unas cinco veces mayor. Se encuentra a una distancia de unos 20,5 años-luz.

Pero lo más interesante, es que la temperatura podría estar entre los 0º y los 40º Celsius, por lo que podría tener agua en estado líquido.

Más información:

lunes, 16 de abril de 2007

Open Command Prompt en Rocha CTP4

José Lamas publicó en su blog una nota sobre la Instalación automática de GXextensions en Rocha CTP4, donde muestra la página inicial de esta versión, con el link para bajar e instalar el Open Command Prompt :)

Enrique Almeida ya me había mandado una foto de la pantalla hace unos días, pero ahora parece ser oficial...

fotowoosh - modelos 3D a partir de una imagen

fotowoosh es una página que va a permitir crear modelos en tres dimensiones a partir de una foto (que es en dos dimensiones, como toda foto...)

Por ahora solo tienen un video con algunas fotos de ejemplo, pero dicen que van a liberar una versión beta dentro de poco. Habrá que probarlo. El video es bastante impresionante (hay que verlo hasta el final, porque la primer foto que es de un tren no dice mucho).

Sitio de fotowoosh

martes, 27 de marzo de 2007

Algunas tecnologías que uso... y otras que no

Ultimamente han aparecido un conjunto de tecnologías el internet que me resultan interesantes. Algunas de ellas las uso, otras me gustaría pero no he encontrado la forma, y otras las he probado pero no me convencen.

Ahí va la lista...

RSS

¿Cómo era el mundo antes de RSS? Para muchos que no lo usan, igual que ahora... Me resulta extraño la poca adopción que veo que tiene esta tecnología entre la gente que conozco, porque para mi es realmente imprescindible.

RSS es una sigla que en inglés significa Realy Simple Sindication, que no es otra cosa que un lenguaje basado en XML para publicar contenido.

La ventaja que tiene el uso de esta tecnología, es que puedo enterarme de los cambios en varios sitios de internet (tengo 65 suscripciones en este momento, pero van en aumento), sin tener que visitar cada una de las páginas. Cada vez que se agrega algo en uno de estos sitios, me entero, y puedo leer los cambios publicados.

del.icio.us (o social bookmarking)

El término general sería "social bookmarking" (no tengo una traducción que me convenza, tal vez "marcadores sociales"), pero es sin duda sinónimo de del.icio.us, que fue el primer sitio en brindar este servicio, y es el más popular (además de ser el que uso).

Básicamente lo que permite es mantener una colección de links a sitios web, poniéndoles etiquetas de forma que sean fáciles de buscar.

Actualmente mis bookmarks (marcadores, favoritos, o como sea...) están en del.icio.us, he dejado de usar los bookmarks locales desde hace ya bastante tiempo.

Además, existe una extensión para Firefox que permite manejar estos bookmarks directamente desde el navegador, de forma tan sencilla como los locales y con algo de funcionalidad agregada (etiquetas, búsqueda).

Microformats

Los microformats son un intento de generar contenido estandarizado para que sea entendible por las computadoras, una primer aproximación a lo que se conoce como Semantic Web.

Hay microformats que permiten describir información de contacto, calendarios, etc. Probablemente escriba más sobre este tema en otra nota.

Es una tecnología que me resulta sumamente interesante, creo que tiene muchísimo potencial, pero hasta que no se haga más popular su uso, es dificil encontrarle una utilidad práctica.

OpenID

OpenID es otra tecnología que tiene el potencial de cambiar la forma en que usamos internet, pero que aún le falta adopción para que resulte útil.

Básicamente es un mecanismo de autenticación que permite que con un mismo nombre de usuario, acceder a distintos sitios de internet. En el caso utópico, permitiría acceder a cualquier sitio con el mismo usuario, evitando tener que recordar un sinnúmero de contraseñas.

Aún tiene algunos problemas de seguridad, pero es algo en lo que se está trabajando de forma bastante intensa, por lo que estos problemas deberían quedar solucionados en el corto plazo.

Web Office

Hay varias herramientas tipo Office en Internet, la que más he usado es la de Google, aunque todavía no le encuentro mucho la utilidad. Sigue siendo mejor usar una aplicación de escritorio que las versiones web que tiene una funcionalidad mucho más reducida.

Por otra parte, la empresa Zimbra lanzó hace pocos días una versión de su aplicación que ejecuta dentro del navegador, pero desconectada. Sería un producto de tipo Web Office pero que se ejecuta como aplicación de escritorio. Habrá que probarla.

Widgets, gadgets, minis, etc.

Hay varias aplicaciones que permiten ejecutar un conjunto de pequeñas aplicaciones (llamadas widgets, gadgets, minis, etc. dependiendo de la plataforma). He probado la de Yahoo! y la de Google, y he visto funcionando la de Windows Vista, pero no logro encontrarle la utilidad.

Es decir, se que hay gente que la usa, pero no he encontrado ninguna aplicación que se pueda poner en una "sidebar" que compense el espacio que pierdo en la pantalla.

Páginas personalizadas

Hay varias, tanto Microsoft, como Yahoo! o Google tiene su versión. Hay otras empresas que se dedican solo a esto como Netvibes o Pageflakes. Son páginas donde uno puede agregar contenido: mail, feeds, pronóstico del tiempo, valor de las acciones, pequeñas aplicaciones como las de escritorio mencionadas antes, etc.

Tampoco me han resultado de utilidad. Tal vez porque siempre quiero agregar demasiado contenido y quedan muy pesadas y dificiles de usar...

Second life

Second life es un mundo virtual, donde uno interactua con otras personas (con el personaje en el mundo virtual manejado por otra persona).

Es una aplicación que ha crecido mucho, y que además mueve dinero de verdad (se puede comprar tierras virtuales, por ejemplo, que cuestan dinero virtual que se consigue con dinero real).

Lo probé, pero no me pareció nada espectacular. A lo mejor me estoy perdiendo de algo, pero por lo que vi, no encuentro un buen motivo para dedicarle tiempo.

jueves, 22 de febrero de 2007

GeneXus Extensions: Realizar una acción al eliminar un objeto

Está disponible para bajar del sitio de Available extensions (en el wiki de GeneXus), una extensión de nombre RemoveFilesOnDelete, que permite eliminar todos los archivos asociados a un determinado objeto de la KB, en el momento en que este se borra.

Pero, ¿cómo saber cuando un objeto se borra? Voy a explicar como desarrollar esta extensión.

Lo primero que debemos hacer es crear un nuevo proyecto de Visual Studio de tipo GeneXus Package (para que aparezca en la lista hay que tener instalado el SDK). Cuando se selecciona esta opción, se muestra un wizard, en el cual debemos desmarcar la opción para crear un nuevo tipo de objeto, que no es lo que queremos hacer en esta oportunidad.

Una vez creado el proyecto, tenemos un archivo de nombew Package.cs, que tiene la implementación básica. En ese archivo, dentro del método Initialize, debemos agregar la siguiente línea

EventsService.Events.Participate(this);

Lo que hace esto es suscribir al objeto Package (mediante la referencia "this") para que sea notificado cuando se produce algún evento. Es necesario incluir el namespace Artech.Architecture.Common.Events mediante la directiva using para poder utilizar la clase EventsService.

Ahora lo que debemos hacer es programar la lógica par capturar específicamente el evento que nos interesa, en este caso, va a ser AfterDeleteKBObject. Esto lo hacemos también en la clase Package, creando un método como sigue:

[EventSubscription(ArchitectureEvents.AfterDeleteKBObject)]
public void OnAfterDeleteKBObject(object sender, KBObjectEventArgs args)
{
}

La clase EventSubscriptionAttribute se encuentra dentro del namespace Microsoft.Practices.CompositeUI.EventBroker, por lo que también debemos agregarlo.

Dentro de este método, es donde debemos programar la acción que querramos realizar cuando se borra un objeto. La información del objeto borrado se encuentra en la variable args.

Este ejemplo sirve también para suscribirse a otra clase de eventos, ya que en la clase ArchitectureEvents tenemos eventos que se disparan luego de abrir o cerrar una KB, luego de un copy model, antes de después de guardar o borrar un objeto, etc.

Blogged with Flock

domingo, 18 de febrero de 2007

Ciencia ficción vs. realidad

Hace unos años (¿1998?) leí un libro de ciencia ficción llamado 3001: The final odyssey de Arthur C. Clarke. Es la continuación de 2001: A space odyssey, en realidad es el cuarto libro de la serie.

En esta novela, uno de los personajes de 2001: A space odyssey, que se había perdido en el espacio, es recuperado y revivido en el año 3001. En determinado momento, Poole (que es nombre del personaje) se encuentra con un dispositivo de almacenamiento óptico, aparentemente hecho de vidrio, y del tamaño de un diskette pero el doble de ancho. Cuanto pregunta por la capacidad, resulta ser de aproximadamente un terabyte, porque

It's enough to record everything any person can experience during one lifetime.

Me acuerdo que en su momento esta frase me impactó. Tanto es así, que hoy cuando encontré un artículo en Scientific American titulado A digital life, fui directo al libro a releer esta parte.

El artículo está escrito por gente de Microsoft Research, y habla sobre la posibilidad de almacenar toda la información de la vida de una persona en médios digitales. El artículo dice que:

The growth of digital storage capacity has been staggering: today a $600 hard drive can hold a terabyte (one trillion bytes) of data, which is enough to store everything you read (including e-mails, Web pages, papers and books), all the music you purchase, eight hours of speech and 10 pictures a day for the next 60 years.

Cuando se escribió el libro (tiene fecha de 1997) esto sin duda era ciencia ficción, aunque no pareciera tan lejano. Hoy, 10 años después, ya aparece como una posibilidad.

Blogged with Flock

miércoles, 14 de febrero de 2007

Nueva cara para el Blog

Estuve haciendo algunos cambios al blog.

Pasé a la nueva versión de Blogger, por lo que ahora el blog tiene etiquetas. Además esta versión permite definir el estilo del sitio de una forma bastante más amigable que la versión anterior, por lo que también hice algunos cambios estéticos.

Lo otro que agregué al panel lateral son los Shared items de Google Reader. Ahí deberían aparecer todos los artículos que marque como para compartir.

El origen de la vida

Ayer estuve leyendo un artículo muy interesante en Scientific American sobre el origen de la vida.

El artículo explica por qué el ADN no pudo haber sido el origen de la vida (el ADN necesita de las proteinas para replicarse, y la información para construir las proteinas está en el ADN). Sin embargo el ARN no tiene este problema, y podría haber sido el primer replicator, el origen de la vida. Pero el problema que tiene el ARN es que es una molécula demasiado compleja y que no se ha conseguido generar de forma espontanea en el laboratorio, en las condiciones que se supone había en la Tierra en los momentos que surgió la vida.

Entonces propone que fueron otros componentes los que originaron la vida, más simples que el ARN, de los cuales actualmente no quedan rastros.

Ojo, esta es una explicación de alguien que casi no tiene conocimientos de química orgánica. El artículo sí está bien explicado :)

Además del artículo en sí, hay dos cosas que me parecieron interesantes. La primera es la definición que usa para lo que es la vida. Hay dos definiciones, la primera es:

Life is a self-sustained chemical system capable of undergoing Darwinian evolution.

y la segunda es una definición termodinámica:

A localized region which increases in order (decreases in entropy) through cycles driven by an energy flow would be considered alive

Sin duda no es algo fácil de definir, pero es interesante ver a lo que se ha llegado...

Lo otro interesante del artículo es una reflexión. Si bien el ARN no es la primer forma de vida, sí es la más antigua que ha llegado hasta nuestros días. De hecho, el ARN de alguna forma logró combinarse para formar ADN y proteinas, luego células, organizmos multicelulares, en fin, todos los seres vivos que existen hoy en día.

Entonces, al final de cuentas, solo somos la forma que encontró el ARN de sobrevivir a la evolución, de perpetuarse. Somos, todos los seres vivos, un vehículo para lograr que el ARN sobreviva...

miércoles, 7 de febrero de 2007

Soporte de OpenID por parte de Microsoft

OpenID (Radar post) got a big boost today when it gained support from Microsoft.

O'Reilly Radar > OpenID Gets a Boost From Microsoft

OpenID es un sistema de autenticación descentralizado, que permite autenticarse una única vez contra cualquier servidor que soporte el protocolo, y luego acceder a cualquiera de los sitios que permiten autenticarse mediante esta tecnología.

Por el momento son pocos los sitios que utilizan este protocolo, pero si Microsoft comienza a soportarlo, podría convertirse en un estandar. Una buena noticia...

Más información sobre OpenID

martes, 9 de enero de 2007

La evolución de Microsoft (en palabras clave)

Me encontré con este sitio, que me pareció interesante: Microsoft's evolution, in keywords

Es interesante por dos motivos:

  1. El control que usa para mostrar la información está bueno, es una idea novedosa. Es una especie de "tag cloud" junto con una línea de tiempo, donde se ve como ha ido cambiando la importancia de cada una de las palabras clave con el tiempo.
  2. Por la información que muestra, que es un conjunto de documentos históricos de Microsoft, por lo que es una especie de "ranking" según la importancia que se le daba a cada tema en el tiempo.