martes, noviembre 20, 2007

Cambie de Mac!!

Bien decía mi mama que "Dios sabe por que hace las cosas...". Resultó que por un error en el número de la tarjeta, la compra de la MacBook no procedió.

Este contratiempo coincidió con una visita inesperada al MacStore del Sambil Maracaibo, en donde me quedé asombrado por dos cosas:

a) Lo PEQUEÑA que era realmente la MacBook. Hasta ese momento, nunca había visto una MB en persona y siempre me había guiado por las imágenes y videos que se consiguen en la red, y no me había parecido tan pequeña... pero si lo es... la pantalla es MINUSCULA.

b) Lo ESPECTACULAR que es el iMac de 20".... es una cosa de OTRO MUNDO... me quede simplemente ESTUPEFACTO... Carla me dijo: si no te compras esa estas LOCO!

Asi que cancelé mi orden original y ahora soy el feliz dueño de una flamante iMac 20" aluminio, Intel C2D 2.0 Ghz, 2 GB RAM y 250 GB en DD.

Como una imagen vale mas que mil palabras, échenle un vistazo aquí:
Apple iMac 20"

miércoles, noviembre 14, 2007

AL FIN!!! COMPRE MI PRIMERA MAC!!!

Hoy, POR FIN, pude comprar mi primera Mac en linea, desde la tienda de Amazon.

Mi flamante MacBook 2.2 Ghz Santa Rosa con 2 GB de RAM, 120 GB en DD y unidad Superdrive DVD-RW debe estar llegando a mis manos para finales de este mes.

Asi que, a partir de diciembre seré oficialmente un switcher, habré pasado al "lado oscuro" y los virus, guindes, reiniciadas, caídas, reinstaladas de SO y demas hierbas comunes a los desdichados usuarios de Windows pasarán a ser no mas que un mal recuerdo.

Para los que nunca han visto una Mac, pueden ver esta belleza aqui:
MacBook en el AppleStore

O si la quieren ver en vivo y directo:
MacBook en YouTube

jueves, noviembre 08, 2007

Apple: Leopard tras las huellas de Vista?

Esta semana se ha hecho mucho ruido con respecto a las decenas de problemas que se han descubierto en el recientemente liberado OS X 10.5 Leopard.

Cosas desde "freezes" causados por problemas con la tarjeta de video en las iMac hasta la odiadada "Blue Screen of Death", que hasta ahora era propiedad exclusiva de Windows, pasando por reportes de potenciales pérdidas de datos al mover archivos a un volumen remoto, estan causando malestar en la base de usuarios de Apple.

Es cierto que lanzar una revisión completa de un sistema operativo como OSX siempre tendrá errores que hay que detectar y corregir, pero luego de lo mucho que Apple ha explotado el desastre que ha sido Vista, cae muy mal que Leopard vaya por el mismo camino.

En un post de ZDNet un usuario hizo la siguiente parodia, que me pareció genial:

MAC: Hi, I am a Mac
PC: Hi, I am a PC
PC: Mac, what are you doing?
MAC: I'm logging in... I'm logging in... I'm logging in... I'm logging in... I'm logging in...

Esto aludiendo a un nuevo fallo al actualizar de Tiger a Leopard que puede causar que el sistema se quede en un loop infinito tratando de procesar el inicio de sesión.

Esperemos que todos estos fallos sean corregidos a la brevedad posible con un System Update.

Bumtop 3D: Maneje su escritorio en "VR"

Hoy me encontré con este link, que muestra una demostración de un software llamado BumTop 3D, el cual plantea una nueva forma de manejar su escritorio en una computadora, en un ambiente de realidad virtual.

El video es bastante impresionante, aunque lamentablemente el software aun no está disponible para el público. Mas allá de lo práctico que resulte ser en el día a día, son estas innovaciones las que abren nuevos caminos en los paradigmas de interfaces de usuario.

Pueden ver el video aqui.

lunes, octubre 15, 2007

Pablo Roca y los MVP

La semana pasada M$ anunció la lista de los nuevos MVPs y donde no apareció incluido mi buen amigo Pablo Roca.

Por si a estas alturas aun queda algún programador de VFP que no sepa quien es Pablo Roca, es nada mas y nada menos que el fundador de PortalFox, el mayor portal de habla hispana sobre VFP, que ya tiene mas de 28.000 usuarios en todo el mundo.

Obviamente las razones de porque M$ excluyó a Pablo luego de varios años de otorgarle merecidamente el premio, nunca las sabremos. Pero en nuestra opinión, se trata de una represalia por la campaña MasFoxPro, que TAMBIEN fué ideada y liderizada por Pablo, dado que los méritos por los cuales M$ le venía otorgando ese premio a Pablo año tras año SIGUEN siendo válidos hoy en dia... la unica "diferencia" entre esta entrega y las otras es, justamente, la campaña MasFoxPro.

Lo que M$ no ve y nunca entenderá es que Pablo ni nadie en la comunidad Fox necesita sus "piches" premios para ser reconocido; el mejor reconocimiento es el que le damos todos nosotros cuando aplicamos tantas cosas aprendidas de él y otros que, como él, dedican algunos minutos TODOS LOS DIAS a ayudar a otros programadores Fox.

Animo Pablo! PortalFox seguirá incluso cuando nadie en M$ se acuerde que ellos vendian algo llamado "FoxPro".

jueves, octubre 04, 2007

Como instalar el SP4 de MSDE 2000

Hoy me tocó instalar el SP4 para MSDE 2000 y, como es costumbre en M$, las cosas no resultaron ser tan sencillas como esperaba.

No se Uds, pero yo cuando voy a hacer una actualización como esta espero que las cosas funcionen mas o menos asi:

a) Descargo el instalador de la actualización
b) Ejecuto el instalador
c) Sigo las instrucciones en pantalla
d) Selecciono las opciones que se acomoden a mi instalación particular
e) Ejecuto el proceso

Pues resulta que con este SP4 solo pude llegar a la opción b)... luego de mucho investigar los múltiples mensajes que me salían, me encontré con que el instalador había que ejecutarlo DESDE LA LINEA DE COMANDOS... imagínense nada mas... en pleno siglo XXI y aun teniendo que ejecutar cosas en la linea de comandos.

En fin, por si algun otro desgraciado le toca vivir esto, aqui esta mi granito de arena para aliviar la carga.

a) Abre una ventana de comandos
b) Haga CD hasta la carpeta donde instalo los archivos del SP4, en mi caso era C:\SQL2KSP4\MSDE
c) Ejecute el comando: SETUP /upgradesp sqlrun -L*v c:\MSDELog.log

IMPORTANTE:
Esto es partiendo del punto que su instalación MSDE usa la instancia por defecto. Si su instalación incluye una instancia con nombre, debe incluir el parametro INSTANCENAME=instancia luego de "sqlrun".

lunes, septiembre 24, 2007

VFP: Ejecutar un script SQL por código

Hoy me encontré con una pregunta en foro de programadores de VFP, sobre como hacer para ejecutar un script SQL desde VFP.

Me topé con este problema hace ya unos cuantos años, y recuerdo que fue muy frustrante darme cuenta que el comando SQLEXEC() no estaba diseñado para ejecutar varias instrucciones sino mas bien una sola.

En aquel tiempo se me ocurrió que dado que en un script SQL todas las instrucciones se terminan con un comando GO, se podría utilizar este comando como un "separador", a fin de aplicar un "parsing" al script SQL y usar SQLEXEC() para ejecutar cada instrucción individualmente.

El código pueden copiarlo desde el artículo original en mi website:
Como ejecutar un script SQL desde VFP

martes, septiembre 11, 2007

ASP.NET 2.0: Encontrar un control en el HeaderTemplate de un WizardControl

Bueno, AL FIN encontré algo de tiempo para desempolvar este blog y ver si ahora si (por enésima vez) me propongo actualizarlo frecuentemente.

Hoy descubrí la maravilla del Wizard Control del ASP.NET 2.0, y como con todas las cosas que tienen que ver en particular con ASP.NET y en general con MS, la alegría no tardo en dar paso a la frustación.

RESULTA que el WizardControl permite configurar un encabezado usando el tag HeaderTemplate, en donde se puede colocar lo que uno quiera, incluyendo casi cualquier tipo de control.

En mi caso, tenia un panel con un table adentro que queria mostrar bajo ciertas condiciones. Por lo tanto, intente obtener una referencia al panel usando el consabido FindControl:
Dim myPanel As Panel
myPanel = CType(Me.Wizard1.FindControl("pnlError"),pnlError)

Según la documentación de MS, esto debería funcionar sin problemas... la clave aqui esta en "DEBERIA". Resulta que NO funciona. Investigando en San Google, y luego de mucho buscar, me encontré con la maravilla de el método FindControl no recorre todos los objetos en su búsqueda por el objeto cuyo ID se le indicó.

La siguiente función (originalmente hecha en C# por JS Greenwood) soluciona este "problemita", buscando un control en TODOS los controles contenidos en el contenedor indicado:
Public Function MyFindControl(ByVal parent As Control, _
                              ByVal id As String) As Control
     If parent.ID = id Then
         Return parent
     End If
     Dim child As Control
     For Each child In parent.Controls
         Dim recurse As Control = MyFindControl(child, id)
         If Not recurse Is Nothing Then
             Return recurse
         End If
     Next
     Return Nothing
End Function

Entonces, ahora en lugar de usar el FindControl del WizardControl usamos la funcion MyFindControl:

Dim myPanel As Panel
myPanel = CType(MyFindControl(Me.Wizard1,"pnlError"),pnlError)


El link original del artículo de JS Greenwood lo pueden encontrar aqui:
http://www.asptoday.com/Content.aspx?id=2359


Victor Espina

martes, abril 03, 2007

VFP: MS Respondio a MasFoxPro

El blog de Mary Jo Foley acaba de incluir un comunicado de Alan Giver, un group manager del equipo de Visual Studio, referente a la campana MasFoxPro.
El comunicado dice lo siguiente:
"Estamos muy al tanto de la comunidad de FoxPro y esto tuvo mucho que ver con lo que anunciamos el 13 de Marzo. Nunca es sencillo anunciar que no liberaríamos una nueva versión de un producto, y este (VFP) es uno que consideramos muy cuidadosamente.
No estamos anunciando el fin de FoxPro: obviamente, las aplicaciones hechas en FoxPro continuaran funcionando. Según algunos estimados internos, hay mas aplicaciones ejecutando en FoxPro 2.6 que las que ejecutan actualmente en VFP y FoxPro 2.6 no ha sido soportado en muchos anos. Visual FoxPro 9 sera soportado por Microsoft hasta el 2015.
Para que Microsoft continuara el desarrollo de la base de FoxPro, tendríamos que considerar el crear un ambiente de desarrollo de 64 bits y esto implicaría una reprogramación casi completa del núcleo del producto. También hemos hecho inversiones en crear bases de datos escalables con SQL Server, incluyendo SQL Server Express Edition que esta disponible gratuitamente. Con relación a formar una alianza con un tercero, muchos grandes clientes de FoxPro nos han dicho que esto les haría casi imposible continuar usando FoxPro debido a que ya no estaría respaldado por un proveedor renombrado. Sentimos que haber colocado el ambiente como código abierto en CodePlex, que equilibra las necesidades de la comunidad y los grandes clientes, fue la mejor ruta a seguir."
Personalmente me parece una patética respuesta, que no dice nada nuevo sobre las razones de MS para cerrar VFP. Sobre todo eso de que "grandes clientes dicen que si VFP no es MS no pueden justificar su uso" es una patraña.

VFP: MasFoxPro la pego al techo!!

La campana de www.masfoxpro.com ha logrado su primer éxito contundente. La columnista Mary Jo Foley acaba de publicar una entrada en su blog sobre MasFoxpro, que de seguro va hacer pensar a mas de uno en MS.

Para mas información, ver:
http://blogs.zdnet.com/microsoft/?p=361

viernes, marzo 16, 2007

VFP: Un toque de nostalgia

A proposito de la gran tristeza que embarga desde hace unos dias a la gran comunidad de programadores de VFP, aqui les traigo un link hacia una pagina que contiene informacion sobre la historia de nuestro querido zorro.

Para los que como yo han usado el Fox desde los tiempos de FoxBase, de seguro esta pagina les traera muchos recuerdos agradables.

http://www.foxprohistory.org/home.htm

miércoles, marzo 14, 2007

VFP: Ha muerto el Rey

Hoy es un dia triste en verdad. Luego de mantenerse por casi 20 anos como una de las mejores herramientas para desarrollo de BD (cuidado si no la mejor), Microsoft ha decidido poner fin a la saga de FoxPro.

En un mensaje publicado en el sitio oficial de FoxPro en MS, el VFP Team ha anuciado que no habra una version 10 de VFP, aunque MS seguira dando soporte oficial a VFP9 hasta el 2015.

El SP2 de VFP9 se espera para mediados de este ano y pronto estara tambien disponible en forma gratuita el proyecto Sedna, que ampliara considerablemente las capacidades de VFP9.

Aun cuando todo esto significa que tecnicamente VFP aun sera una herramienta competitiva para crear nuevos desarrollos por unos cuantos anos mas, en la practica la realidad es otra: las empresas no querran hacer grandes inversiones en una plataforma que ya esta sentenciada, por lo que para todos los efectos VFP esta muerto desde ya.

Esto tambien sera un duro golpe para las empresas cuyos productos principales estan hechos en VFP, pues los nuevos clientes no querran comprar una aplicacion basada en una tecnologia que se quedara obsoleta en 5 o 6 anos. Estas empresas no tendran otra salida ahora que la de empezar a pensar en migrar sus aplicaciones a otras plataformas como .NET o Java, con todo el costo y las limitaciones que esto implica.

La unica esperanza que queda es que MS decida liberar el codigo fuente de VFP de modo que la comunidad OpenSource pueda "tomar el testigo" y seguir desarrollando esta magnifica herramienta.

Este es el enlace al mensaje original mostrado en el sitio web de VFP:
http://msdn2.microsoft.com/en-us/vfoxpro/bb308952.aspx