Hace un par de meses cambie el notebook el cual trajo instalado Vista Home Premium 32 bits. Dado que dicha versión de Vista no me veía todo el ram (un sistema 32 bits no puede ver 4gb de ram debido a limitantes en el direccionamiento de memoria), la decisión fue instalar Vista 64bit Ultimate. La razón principal por la cual elegí Vista 64 y no XP 64 fue debido a que era más fácil conseguir drivers para vista que para xp.

Dos meses dps puedo decir que Vista se ha comportado muy bien. El sistema es estable y sumamente rápido (literalmente vuela). Me quedaré siempre con la duda de qué hubiese pasado con xp64 pero dado que Vista anda muy bien, no tengo intención de hacer ninguna prueba con xp64. Inmediamente la primera conclusión que saco es que esa inmensa bola de nieve de comentarios negativos respecto de vista no era del todo cierta. Seguramente una gran cantidad de las personas que argumentan en contra de Vista no lo han ni siquiera probado sino que simplemente se sumaron a esa corriente de decir “vista es malo”. Ni que hablar además que otra gran parte critica Vista por temas religiosos.

Con esto no quiero decir que Vista es el mejor sistema operativo ni muchos menos, sino que simplemente en una máquina potente anda muy bien. Por ahí leí alguna vez que Vista en máquina potentes andaba mejor que XP, y que en máquina más lentas XP era el que andaba mejor. No recuerdo bien las razones pero básicamente era porque hacía un mejor uso de los recursos, delegando por ejemplo cosas que normalmente correría la cpu a la gpu etc .

¿A uds. cómo les ha ido con vista?

Aprovecho para comentar algunas otras cosas que pueden ser de interés.
En primer lugar, apagué el UAC para evitar controles de seguridad que a la larga se vuelven molestos (esto es básico). Por otro lado, el tener un os 64bits no me ha significado ningún tipo de problema. Los programas corren todos bien pero si en muchos casos me he visto obligado a instalar software especial para 64 bits, sobre todo en aquellos casos en lo que se trata de software de “bajo nivel” como por ejemplo daemon-tools, software que crea conexiones de red virtuales, virtual-pc/vmware etc (además de drivers obviamente). Estos programas se consiguen todos sin problemas.

Hace unas semanas Enrique nos contaba acerca de la Google Visualization API en su blog. Fue a raíz de eso que por aca me preguntaron qué tan difícil sería hacer un User Control para incluir dichas visualizaciones. El resultado lo pueden ver AQUÍ.

Incluir una visualización de Google cómo user control se hace fácil en primer lugar gracias al apropiado esquema que ofrecen los User Controls de GeneXus para incluir “third party” controls. En segundo lugar las gracias son para Google ya que dado que hablamos de una API, la manera de incluir las distintas visualizaciones es la misma independientemente de la visualización (control). En criollo, esto significa que una vez hecho un user control para una cierta visualización, se puede reutilizar esa base para hacer otros controles.

A todo esto, la buena noticia es que ya hemos creado 2 ejemplos que se pueden descargar y tomar como base para el resto de las visualizaciones que se listan aquí y que por cierto son muuuchass.

Annotated Time Line (descargar aquí)
Este control es el utilizado por Google Finance y es el que ahora utiliza el wiki.

Annotated time line

Organizational Chart (descargar aquí)
Este es un lindo control para representar jerarquías al cual se le puede dar múltiples usos.

Organizational chart

UPDATE (10/6/08)

Gastón se la jugó y desarrolló el Motion Chart el cual quedó espectacular!. Más info en su blog.

Organizational chart

Subimos en GXOpen un buscador de escritorio basado en GXSearch (Lucene) que puede resultar múy util para buscar dentro de archivos txt, html, pdf, doc, ppt y xls.

El funcionamiento del buscador es muy sencillo: basicamente hay que especificar una series de directorios donde se desea buscar y para cada uno de éstos los tipos de archivos que se desean indexar.

Sources

Una vez agregado los directorios a indexar (se pueden agregar más en cualquier momento) hay que correr un “Reindex all” y listo. Luego de eso ya se pueden buscar y al dar doble click (o Enter) sobre un elemento de la grilla, se abrirá nuestro documento.

Sources

¿Por qué otro buscador si ya tenemos el de Google o Microsoft? Lo positivo del mismo es que brinda control total sobre los directorios a indexar permitiendo acotar los resultados. Por otro lado nos permite correr la indexación a demanda para asegurarnos de estar buscando sobre el total de nuestros documentos. Será particularmente útil por ejemplo para buscar sobre la documentación offlline de GeneXus X.

Las características son:

Dell Inspiron 9400
  • Procesador Intel Core 2 Duo processor T7200 (4MB/2.00GHz/667MHz)
  • Memoria RAM de 2GB, DDR2, 667MHz
  • Pantalla de 17 pulgadas UltraSharp TrueLife Wide-screen WUXGA (1920×1200)
  • 256MB NVIDIA GeForce Go 7900 GS (256 Bit/GDDR3).
  • Disco duro de 160GB 5400RPM
  • 8X DVD+/-RW Drive
  • Integrated High Definition Audio (con subwoofer)
  • Intel PRO/Wireless 3945 802.11a/g Mini Card
  • 6 puertos usb
  • Puerto Firewire
  • Salida DVI
  • Lector de memorias
  • Botón Dell media Directory para ver videos y escuchar música sin bootear windows.
  • 2 baterías de 9 celdas, una ha sido usado y la otra es totalmente nueva
  • Maletín DELL Extra-Large Nylon Deluxe Carrying Case que es especial para este notebook.
  • 6 meses de garantía.

Cualquier duda contactarme a gonzalo.cuinas@gmail.com

Si sabés javascript y eventualmente conocés alguna tecnología como podría ser flash o silverlight estás en condiciones de hacer un GeneXus user control. Así por ejemplo, Marcos Crispino se animó y creó su primer user control el cual ya está disponible para bajar en este link. Para ver ejemplos de uso en :

Video 1
Video 2

Por otro lado Javier hizo un user control para poder embeber Google Gadgets que promete ser muy útil.

Para los que quieran hacer algún user control ahí van algunas ideas de posibles controles. El que se anima cuenta con mi ayuda para realizar el control.

Obviamente hay miles de controles interesantes en la vuelta…cualquier idea es bienvenida!

…es sinónimo de multa. Y si…eso es lo que me pasó ayer de mañana en Camino Maldonado cuando venía feliz y contento trabajar y como es de esperarse ahora no estoy muy contento que digamos. Aviso que lo siguiente viene de “descarga”, seguramente no voy a descubrir nada bueno pero siempre es bueno descargarse.

Primero lo primero: bien multado. Si el cartel dice 60km/h y si voy a 85 estoy en falta. Sin embargo, es inevitable que en estos casos uno se ponga más “sensible” y haga ciertas reflexiones. Primero que nada, es claro que los inspectores están principalmente para multar y no para ordenar el tránsito. Al menos nunca vi a un inspector un día cualquiera de semana a las 19hs en Ricaldoni y Soca/Ponce ordenando el tránsito, sin embargo, sí están bien escondiditos en Camino Maldonado repartiendo multas.

Segundo, la ley debe ser pareja para todos, es decir, si me multan por ir a 85 me gustaría que multen también a los Tala-Pando que también vienen a mas de 60km/h. Ojo, 85 no me parece mucha velocidad, en realidad pienso que el límite debería ser superior pero si no lo es, todos los que van a mas de 60 deberían ser multados, no me importa si es un camión, un ómnibus, una moto o un tipo en patines.

Tercero, y esto seguramente es muy personal, me gustaría que el que va por la izquierda a menos de X velocidad sea también multado, es decir, me parece tan peligroso ese auto a baja velocidad por la izquierda como un auto a alta velocidad.

Cuarto (y último aunque podría llegar hasta el 10 sin problemas), partiendo de la base que la ley está para cumplirse, me gustaría también que todos los camiones que circulan y no están en condiciones de hacerlo porque no superarían un autoTest, no circulen. Ver camiones de este tipo en Camino Maldonado es moneda corriente y repito, es tan peligroso o más que andar rápido.

En fin, como dije antes, nada novedoso y tampoco quiero polemizar. Calculo que me sirvió para descargarme un poco…y para envenenarme otro tanto…

It´s about collaboration

Subí en GXOpen un par de user controls más que tenía guardados hace un tiempito pero no los había podido publicar.

El primero es un Menu del estilo FishEye hecho en Silverlight. Basicamente el control recibe una colección de opciones a mostrar en el menú donde cada item está compuesto por un id, una imagen y texto a mostrar. Al hacer click en un item se dispara un evento ItemClicked asociado.

Download

Este otro es un calendario que permite desplegar tantos calendarios (tantos meses) como uno quiera ya sea en forma vertical o horizontal. De esta manera, si por ejemplo cargo el control con una fecha de abril y pongo que se muestre 1 calendario adicional, se mostrán entonces un calendario correspondiente a Marzo, otro a Abril y otro a Mayo. Si se selecciona que se muestren 2 calendarios adicionales se mostarían 2 meses antes de abril (febrero, marzo) y 2 después (mayo, junio).

Download

Por otro lado, hay algunos controles que me gustaría tener pero lamentablemente el tiempo no me permite hacerlos. ¿Quién se anima a hacerlos!? Quien tenga conocimientos de javascript y se anime a hacerlos cuenta con mi ayuda. En particular algunos controles que quisiera tener son:

- stars para rating (algo como esto http://www.nickstakenburg.com/projects/starbox/)
- player de video
- componentes “draggable”. La idea sería un user control Container que nos permita mover componentes en runtime
- password strenghter: sería un control que me evalúe que tan “seguro” es un cierto password.

Bueno están todos invitados! Pueden encontrar otros user controls en GXopen y documentación en el wiki.

AndroidEstuve probando Android (jugueteando digamos) y la verdad que me encantó. A ver, en realidad mi experiencia en aplicaciones para dispositivos móviles es poca así que soy facilmente impresionable en ese sentido pero de todas maneras se nota que el framework está muy bien logrado. En youtube hay varios videos de la arquitectura que muestran algunos detalles interesantes de cómo se maneja por ejemplo el ciclo de vida de una aplicación teniendo en cuenta optimizaciones de memoria las cuales son más que importantes ya que la memoria de un dispositivo digamos que no es mucha (o al menos no es comparable con la de un pc).

Lo otro que me encantó el emulador, super prolijo y fácil de usar. El sdk dispone de varios ejemplos que se pueden correr en el emulador y que muestran la potencia que tiene en cuanto a gráficos y la facilidad de desarrollar aplicaciones que intercambian datos entre sí entre otras cosas. En fin, sin dudas es una apuesta interesante de Google.

La cantidad importante de nuevas features que presenta GX Rocha a veces provoca que solo nos quedemos en mente con aquellas realmente “revolucionarias”. Sin embargo, existen un conjunto de features que si bien pueden pasar desapercibidas ofrecen un valor fundamental a la hora de resolver ciertas problemáticas de nuestra aplicación.

En particular una de ellas es la introducción del nuevo tipo de objetos “ExternalObject” (EO). Como el nombre lo sugiere, el EO es un representante en la kb GX de un objeto exterior. La idea como siempre es que el programador GX utilizará el EO al igual que utiliza cualquier otro objeto sin importar el objeto exterior en sí mismo. Ahora la pregunta es, ¿a quién representa?. De momento un EO puede representar:

• Stored procedures
• Clases java externas
• Clases .net externas
• Web services
• Enterprise java beans de tipo “session”

Creo que el verdadero valor del EO es el objeto en sí mismo, es decir, el poder encapsular llamadas a entidades externas en un objeto nos permite hacer un mejor modelado de la aplicación, facilitando y promoviendo el reuso. Es importante destacar también que el EO ofrece como novedad la posibilidad de interactuar con EJBs cosa muy importante para quienes quieren reutilizar funciones de negocio que ya tengan desarrolladas en EJBs.