martes, julio 05, 2005

Cambio de blog

El día de hoy me he cambiado a otro blog, la nueva dirección esta aquí. El motivo del cambio obedece simplemente a que tengo un mayor control sobre el sitio que contiene mi blog, y que además me permite personalizar 100% gracias al Portal Kit Framework que utilizo para el sitio.

He migrado todos mis posts al nuevo sitio, pero aun no le he hecho con los comentarios, espero en los siguientes días tenerlos en el nuevo sitios también.

jueves, junio 16, 2005

Centro Open Source de IBM en Baja California

El día de hoy me encuentro con la noticia de que IBM en conjunto con el gobierno de Baja California, la Secretaria de Economía y el Cetys Universidad (Campus Mexicali), planean abrir un centro tecnológico enfocado a Open Source; con la finalidad de apoyar a empresas que trabajen junto con firmas internacionales en la creación de soluciones para el gobierno y algunos mercados específicos.

La noticia esta Linux Insider.

martes, junio 14, 2005

Opensolaris y Realbasic

Sun con sus sistema operativo Solaris – posiblemente una de las versiones de Unix mas populares -, desde hace ya varios años ha apoyado al open source, aunque en veces parece que se retracta y dice que el open source no es viable, el apoyo que brindan al movimiento esta latente.

Hace algunos meses Sun había anunciado la liberación en open source del sistema Solaris, pero con el acuerdo que logro con Microsoft – después de una batalla legal de monopolio en relación Java y Windows- se especulo sobre la no realización del proyecto OpenSolaris, otro punto de especulación fue la amenaza de la compañía SCO – propietaria de los derechos de Unix – acerca de que Sun no podía liberar Solaris en open source, debido a que la licencia de Sun para explotar Unix no le permitía realizar tal acción.

Pues finalmente la fecha se cumplió, el día de hoy Sun hizo publico el proyecto OpenSolaris.

En otro orden de ideas como ustedes recordaran el 31 de Marzo Microsoft finalizo el soporte de VB Clásico (VB6 y hacia atrás), durante esas fechas se realizo una petición por parte de los MVPS para que Microsoft extendiera el soporte, a lo cual Microsoft dio sus motivos del porque no extender este periodo.

La verdad es que actualmente existen millones de lineas de código escritas en VB Clásico, que van a seguir funcionando mientras esos programa sigan cumpliendo con su cometido, ante este mercado que de alguna forma queda “desprotegido” una compañía llamada Real Software lanzo una herramienta llamada Realbasic, la cual ofrece un cierto nivel de compatibilidad con VB Clásico, pero además como un “plus”, la compañía ofrece hacer que ese código sea posible ejecutarlo en Windows, Macintosh y Linux. Como ayuda en la sitio de Real Software existe un documento que explica el proceso de migración de VB6 a Realbasic con la ayuda de una herramienta de migración que incluye Realbasic.

domingo, junio 12, 2005

64 bits e inyección de SQL

Finalmente me decidí a aprovechar el poder de mi notebook la cual compre ya hace algunos meses con un procesador AMD64; en el tiempo en que la compre no existía buen soporte tanto para Windows ni Linux en 64 bits, principalmente por la falta de los drivers necesarios para la notebook.

Con la liberación de Windows XP 64 y la liberación de los drivers para mi tarjeta inalámbrica en Linux, finalmente mi pc corre a 64 bits !!!

En el caso de Linux si existía el soporte ya desde hace bastante tiempo, pero mi tarjeta inalámbrica de red Broadcom no funcionaba en Linux, y aunque aun no existen drivers nativos para Linux, con el soporte para 64 bits del paquete Ndiswrapper y los drivers de Windows, finalmente me puedo conectar con Linux a mi red.

Por el lado de Windows, el soporte es muy reciente – hace apenas unas semanas que se libero el Windows XP64, hay una versión de evaluación en sitio de Microsoft por 180 días - el único problema que encontré es que los drivers de la tarjeta de vídeo ATI Radeon – aun en beta – no se podían instalar, fallaban con un error muy raro, y obviamente no encontré soporte por parte de ATI, así que buscando en Internet me encontré con los drivers “modificados” que alguien hizo, probé con ellos y ya puedo disfrutar de mi monitor wide-screen en Windows XP64.

En lo referente a las aplicaciones disponibles Linux le lleva una buena ventaja a Windows, ya que una gran cantidad de estas han sido modificadas/compiladas para funcionar en 64 bits, mientras que en Windows las aplicaciones son prácticamente inexistentes.

Realmente el comentar si veo alguna diferencia de rendimiento entre un SO de 32 y 64 en mi pc, seria un tanto subjetivo, ya que no ejecuto ninguna aplicación que me permita probarlo de momento; pero en base a experiencias previas – migración de aplicaciones de Unix 32 a Unix 64 -, puedo comentar que en aplicaciones que usan el CPU de forma intensiva el rendimiento puede incrementarse hasta en un 400%.

Cambiando de tema hoy tuve que conectarme a una aplicación web del Tecnologico de Tijuana para realizar una actividad, pero se me olvido que no tengo aun mi clave de acceso para mi usuario, estaba a punto de cerrar el navegador cuando se me ocurrió hacer un muy simple intento de inyectarle SQL, y funciono !!!!, pude entrar a mi cuenta, probé con la cuenta de otros usuarios y de la misma forma pude entrar !!!.

El “ataque” que realice es de lo mas sencillo, me parece un tanto increíble que el Tec haya hecho disponible esta aplicación en Internet con una vulnerabilidad tan grande; mañana lo voy a reportar para ver si lo arreglan. Lo mas triste del caso es que seguramente la realizo un alumno de Ing. en Sistemas Computacionales ya de los últimos semestres, por cierto note que la hicieron en VB.NET; pero el tremendo error hubiese existido en Java, PHP o algún otro lenguaje/tecnología, ya que el problema que presenta de inyección de SQL es un problema de mala programación y no del lenguaje.

lunes, mayo 30, 2005

El código Da Vinci

Parece que últimamente “posteo”, en pares, pero bueno acabo de encontrar el sitio de la película del libro El código Da Vinci – de Dan Brown -, y como en lo personal me gusto mucho el libro, pues aquí voy:

El sitio ya tiene un “teaser” de la película, la cual esta proyectada para salir el 19 de Mayo del 2006; el libro estuvo muy bueno en cuanto a la trama y como se fue todo conectando, entrelazando ficción y realidad.

El reparto de la película me parece que es muy bueno, y hasta cierto punto coincidente con los personajes del libro y los reales en relación con la nacionalidad, ya que principalmente intervienen:

  • Robert Langdon quien es de US, y es interpretado por Tom Hanks

  • Sophie Neveu, francesa y es interpretada por Audrey Tautou – la chica de la película Amelie -

  • Bezu Fache, francés y es interpretado por Jean Reno

  • Sir Leight Teabing ingles y es interpretado por Ian McKeller

  • Arzobispo Aringarosa, hispano radicado en US y es interpretado por Alfred Molina

Solo resta ver si la iglesia – principalmente la católica - va a lanzar su ofensiva contra esta película tal y como lo hizo con el libro; y bueno esperar que la peicula sea realmente buena.

Virtualización

La virtualización de hardware es un principio que ha estado presente entre nosotros desde hace ya algunos años; en un principio consistía en tener una “caja” con suficientes procesadores, memoria y espacio en disco, recursos que podíamos acomodar de forma lógica (no física) de diferentes maneras, formando particiones lógicas, las cuales realmente se veían como máquinas independientes entre si, pudiendo cada una ejecutar su propio sistema operativo, aplicaciones, etc.; pero además podíamos reorganizar los recursos de hardware para darle mayor potencia a alguna de estas particiones en un abrir y cerrar de ojos. Este tipo de virtualizacion es muy común en Mainframes y equipos denominados LPAR; ambos por el costo son prohibitivos para muchas empresas.

Otra forma de virtualización, es mediante el uso de software, la cual en un principio se utilizaba para emular una plataforma especifica en otra (por ejemplo emular un PPC en una máquina x86). últimamente con los costos tan bajos de hardware la virtualizacion mediante software se ha puesto muy de moda, ya no para emular otras arquitecturas, sino para “dividir” los recursos de nuestra pc física en varias pcs virtuales que ejecuten diferentes sistemas operativos y/o aplicaciones.

Las ventajas de la virtualización por medio de software, es que es relativamente barato el tener varias pcs virtuales compartiendo el mismo hardware, mediante esta virtualizacion es posible para las empresas de desarrollo de software probar diferentes configuraciones y reproducir problemas de nuestros clientes. Para las áreas de sistemas la ventaja es que pueden crear máquinas virtuales para probar migraciones, o bien reducir los costos de administración manteniendo un servidor físico muy potente corriendo varias pc virtuales para cada diferente aplicación, sin que una afecte a otra; reduciendo así el numero de cajas físicas que hay que administrar y soportar.

Dentro de la lista de aplicaciones que permiten virtualizar nuestra PC se encuentran:
QEMU - El cual es open source y funciona en Linux y Windows.
PEARPC - Es open source y permite emular un CPU PowerPC en una pc X86, y funciona en Linux y Windows
Virtual PC – Es un programa de Microsoft y funciona en Windows y MacOS
VMWare Workstation - Es de la compañía VMWARE y funciona en Linux y Windows

Para la tarea de tener servidores virtuales encontramos el siguiente software:
Virtual Server - Es un programa de Microsoft y funciona en Windows
VMWare Server - Es de la compañía VMWARE y funciona en Linux y Windows
XEN – Es open source y funciona en Linux.

En lo particular encontré la virtualizacion por medio de software muy interesante, ya que puedo crear una máquina virtual, respaldarla, realizar todas las pruebas que necesito sin preocuparme de nada y finalmente reemplazarla con mi respaldo previo, y listo ya tengo otra vez una máquina virtual “limpia” para cuando la necesite.

martes, mayo 24, 2005

Más de integración de aplicaciones

Hablando de integración de aplicaciones, me encuentro que Microsoft va a participar en la conferencia JavaOne de Sun, precisamente en como Java y NET pueden inter-operar mediante el uso de los servicios Web.

Integración de aplicaciones y otras cosas.

En esta ocasión quiero platicar sobre varios temas diversos.

Integración de aplicaciones
Hace un par de semanas se llevo a cabo el InnovaTec en el Instituto Tecnológico de Tijuana, en este evento participe con la platica de “Aplicaciones Distribuidas”, la cual mas bien estuvo enfocada a la “Integración de Aplicaciones”, donde comente algunos aspectos, así como ventajas y desventajas entre el uso de protocolos de comunicación como DCOM y Corba, el uso de FTP y archivos de texto, el uso de EDI y sus estándares, y finalmente el uso de los Servicios Web y los estándares de la WS-I; pues bien hace unos días en el sitio Channel9, se publico un vídeo acerca de la integración de aplicaciones, como demo se muestra como conectar una aplicación ASP.NET a un Mainframe para consultar datos, además de como integrar una aplicación que corre en Linux con el application server de BEA. No cabe duda que la integración de aplicaciones y procesos tanto internos como externos (clientes y/o proveedores), es una pieza fundamental, ya no solo en la grandes empresas, si no también en las medianas y quizás hasta para las pequeñas empresas; buscando como objetivo ser competitivos y ofrecer de un mejor servicio.

Por cierto a este respecto, resulta ser que la organización detrás del estándar X12 de EDI, ya esta trabajando en la versión X12 XML del mismo.

ASP.NET, ¿Corriendo en Java?
Mainsoft el día de hoy lanzo su producto Grasshopper, el cual permite ejecutar aplicaciones de ASP.NET dentro de un application server de Java. Grasshopper, básicamente toma el MSIL generado para la aplicación .NET y lo convierte a Java Bytecode, pudiendo ejecutar la aplicación ASP.NET en cualquier plataforma que soporte la combinación de Apache/Tomcat. Grasshopper incluye un addin que permite utilizar el Visual Studio para desarrollar la aplicación y de ahí mismo generar el código Java de la misma. Grasshopper es gratuito y además existe una versión enterprise con mayor funcionalidad, pero que tiene costo.

¿Oracle y MS SQL genéricos?
EnterpriseDB recientemente anuncio la versión beta la base de datos Postgresql, pero con compatibilidad para Oracle, es decir que se puede tomar un esquema de Oracle (Tablas, procedimientos, etc.), y sin realizarle cambios pasarlos a la base de datos Postgresql y correr la aplicación que use la base datos de Oracle apuntando a Postgresql, sin ningún problema, pero además anuncia que dentro de pronto se agregara la compatibilidad con MS SQL, obteniendo el mismo resultado que con la base de datos Oracle. EnterpriseDB le llama a estas compatibilidades “Redwood” y “Redmond” - mmm curioso, ¿alguna idea de porqué estos nombres ;) -; de esta forma se obtiene una base de datos genérica.

Curiosidades Matemáticas de Futurama.
Recientemente me encontré con este sitio dedicado a la serie Futurama de FOX – no el presidente, la cadena de televisión -; donde explica que algunos elementos de la serie que pudiesen aparentar ser puestos al azar, tienen una explicación y razonamiento matemático; esta interesante.

PD. Yo también ya vi episodio III de Starwars ;)

miércoles, mayo 11, 2005

¿Es México una amenaza para la India?

En la Cofradia me encontré un un articulo del India Times, donde señala algunas de la ventajas que tiene México con respecto a la India para atraer inversión en el área de las TI, hace algunas comparaciones en cuanto a nuestra fuerza laboral, el salario, nuestra legislación, etc.; termina el articulo señalando cual puede ser el futuro de México dentro de la industria.

El articulo de alguna forma me recuerda lo que escribí y que se publico en el periódico El Mexicano ya hace algunos meses.

Con la reciente formación del cluster TI@Baja, existe la posibilidad de poder aprovechar las ventajas competitivas que mencione en mi articulo y las que se reconocen en el articulo del India Times, ojala se pueda llegar a cristalizar en un futuro próximo alguna oportunidad de negocios importante para la región.


viernes, mayo 06, 2005

Publicidad de Visual Studio

Realmente me encanta la publicidad que Microsoft hace al Visual Studio en la revistas, un póster de 2 paginas que muestra a un grupo de desarrolladores realizando un inmenso diagrama de un proyecto que puede abarcar varias paredes de oficinas o grandes espacios públicos.




Cualquier parecido con la vida real es "mera" coincidencia ;)

Artículo sobre Mono

El día de hoy se publico en Mentores.Net un articulo sobre Mono que escribí, coincidentemente el día de ayer se libero una nueva versión de Mono (1.1.7), de forma adicional aquí hay un documento que escribí de como compilar Mono desde el código fuente en Linux.

miércoles, mayo 04, 2005

Prodigy y la actualización de ancho de banda

En días pasados había visto en varios sitios/foros de México acerca de la posibilidad de Telmex/Telnor duplicara el ancho de banda en los servicios Prodigy; y pues aparentemente ya sucedió - por lo menos en mi caso -, hoy al descargar un archivo de 3 MB, note que lo realizo bastente rápido, en comparación a días anteriores, así que procedí a revisar la velocidad de mi conexión con la pagina bandwithtest.com y definitivamente la velocidad de mi conexión se incremento de 256kbps a 425kbps, según lo que reporto la prueba, lo que me sugiere que ahora mi conexión es de 512 kbps.
Espero que este incremento solo se vea reflejado en el ancho de banda y no en el recibo también ;).


Actualización... Aquí esta el comunicado de prensa de Telmex a este respecto.

miércoles, abril 27, 2005

Mas de software libre

Para seguir un poco con los comentarios de Alfredo Pinto con respecto al software libre; el día de hoy vi una nota en el universal, en donde el Vicepresidente de Microsoft para América Latina indica que el software de código abierto daña a la economía de la región y en la nota aparecen sus puntos de vista, ese comentario aparece con motivo del "Foro Microsoft para las Américas de Líderes Gubernamentales" que se lleva a cabo el día de hoy, en donde el mismo Bill Gates fijara la posición de Microsoft en la región y las formas en como Microsoft atacara este mercado, buscando evitar que los gobiernos de la región promulguen leyes que limiten las operaciones gubernamentales a solo mediante el uso de software libre, dentro de estas iniciativas esta la liberación de una versión de Windows reducida - actualmente solo disponible en Brasil -, con la finalidad de abaratar costos.

Definitivamente Microsoft esta ya enfrentando una batalla comercial - espero que dentro de los terrenos éticos en ambas partes - con el software libre, ya que son varios los gobiernos alrededor del mundo que coquetean con el software libre.
Por cierto buscando en nuestro México, que relación hay con el software libre, pues fue muy sencillo saber que los sitios del gobierno federal utilizan software libre para trabajar, solo basta con mirar el sitio de la Presidencia, y buscando un poco mas nos encontramos con el sitio del Sistema de Internet de la Presidencia, donde hay una lista de los sitios desarrollados por ellos; inclusive encontré un sitio especifico de software libre patrocinado por el Gobierno de México.

lunes, abril 18, 2005

Visual Studio Beta 2

Hace tiempo que no posteo nada, el blog, pero el día de hoy me decidí a hacerlo principalmente, por el anuncio de la salida de Visual Studio 2005 Beta2.
Ya desde el fin de semana había visto algunos posts de que ya estaba disponible a los subscriptores del MSDN, pero hoy parece que se hizo oficial.
Lo mas importante de el beta 2 es que incluye la licencia "Go-Live", lo que significa que se pueden empezar a realizar aplicaciones y hacerlas publicas; de hecho el hosting del ASP.NET que tengo, me envió un email informándome que me dan una cuenta gratuita, igual a la que pago actualmente, con el beta 2 hasta que Microsoft libere la versión final.

El Visual Studio 2005 Beta2, como mencione esta disponible para los subscriptores del MSDN, aunque también se pueden descargar la versiones express, o solicitar un DVD libre de costo - esto solo es disponible para Estados Unidos y Canadá -.

Junto con la versión beta Microsoft libero los ya famosos "Starter Kits", con 3 ejemplos ASP.NET y uno WinForms - ojala publicaran mas Starters kits orientados a WinForms -, ejemplos de código y los "Quickstarts"; además de una serie de vídeos de como utilizar las versiones express.

Así que no hay pretexto para no brincar al tren del Beta 2, en lo personal tengo proyectos para .Net Framework 1 y no creo que vaya a ser necesarios migrarlos, pero estoy evaluando la posibilidad de iniciar algún proyecto nuevo con .Net Framework 2.

Cambiando un poco el giro, en la escuela, inicialmente se iban a dar las materias de programación - a partir de este semestre - en C#, pero debido a que no todos los maestros lo conocen/dominan, y que el tiempo se les fue encima, decidieron continuar dando las clases con C++. Ya había programado en C y C# pero no en C++; debo de admitir que fue relativamente sencillo el interpretar/codificar C++, teniendo como base los lenguajes que mencione, aunque si encuentro todavía medio extraño el tener que escribir cout<<"Mensaje"; para desplegar algo en la consola, en lugar de un elegante Console.WriteLine("Mensaje");

lunes, marzo 07, 2005

Montar una partición a una carpeta en Windows

Hace poco descubrí en Windows algo que yo pensaba que solo existia en Unix/Linux; la forma de crear una nueva partición y montarla en Windows como una carpeta, no como un nuevo drive, es decir:
C:\ -> particion 1 (20GB)
C:\Mi Carpeta -> particion 2 (30GB)

Como se hace esto?
Hay que abrir la Consola de "Disk management", que se encuentra en "Control Panel" > "Performace and maintenance" > "Administrative tools" > "Computer Management". Ahí es necesario crear una nueva partición, si es que no la tenemos lista, después es necesario hacer "click" con el botón derecho del mouse y seleccionar "Properties" > "Change Drive Letters and paths" ; en la siguiente ventana hacemos "click" en "Add", seleccionamos "Mount in the following empty NTFS folder" y seleccionamos la carpeta deseada; finalmente hacemos click en todos los botones de "Ok" y listo!

Esta funcionalidad es muy util cuando se nos acaba el espacio en el disco principal y agregamos uno adicional, pero necesitamos poner en el nuevo drive una carpeta que no podemos mover simplemente con un copy, ya que hay muchas referencias a ella el registry (como por ejemplo "Program Files"), por ende moverla a un nuevo drive - o partición - nos puede causar mas problemas que beneficios. Aqui es donde entra esta funcionalidad de montar una nueva partición por ejemplo como "Program Files" y solo copiamos nuestros archivos originales a la carpeta-drive, y listo ya le agregamos mas espacio en disco a nuestra pc de forma transparente.

Hasta aquí todo se ve bien, hasta que el día hoy quize borrar una carpeta de una partición montada como carpeta, y me salió el error de: "Cannot delete Foldername: Access is denied. The source file may be in use", el cual me parecio muy extraño, ya que no tenia ningún programa abierto que estuviese usando la carpeta que deseaba eliminar, reinicie mi equipo y me aparecia exactamente el mismo mensaje, me puse a buscar por el sitio de soporte de Microsoft y me encontré con la siguiente nota:"Access Denied" When You Delete Folders from a Mounted Drive"; la cual explicaba exáctamente mi problema.

La nota explica que el Recycle Bin no sabe como manejar particiones montadas a carpetas, y por tal motivo despliega el error. El problema no tiene solución y solo proporcionan el "work-around" mediante el "shift+delete", lo cual no es aceptable ya que las carpetas eliminadas no se van al recycle bin, perdiendo toda posibilidad de rescatarlas en caso de ser necesario.

La nota tiene fecha del 21 de Noviembre del 2003, seria bueno que Microsoft liberara algún parche que haga más inteligente al recycle bin, mientras tanto, voy a tener que pensar mas de una vez cada siempre que quiera eliminar una carpeta de una partición montada.

domingo, marzo 06, 2005

Humano2, proyecto opensource

Durante los dias pasados he estado trabajando en un modulo del proyecto opensource Humano2, el cual patrocina la compañia Humano2 de Chile. La parte en la que estoy trabajando requeria de un componente que mostrara una grafica de área, pero por ser un proyecto opensource bajo la licencia GPL, obviamente no podia utilizar un componente de terceros, búsque entre varios proyectos para ver si habia algo que puediese utilizar, y encontré algunas opciones, pero eran algo complicadas de utilizar, así que empezé a codificar un componente de gráfica, y éste fue el primer resultado después de un par de horas:

Bueno no se ve muy agradable que digamos, pero era el comienzo, después de documentarme más sobre GDI+, poco a poco empezó a verse más agradable y funcional. Actualente soporta a un Dataset como datasource, además de ser completamente flexible para cambiar cualquier elemento visual.

Se ve mejor no?
El código fuente ya se encuentra en el repositorio SVN de Humano2, en caso de que alguien quiera acceder al código.

lunes, febrero 28, 2005

Taller de Introducción a C#; El artículo UML y Mentores.NET

El pasado 26 de Febrero se llevo a cabo el Taller de Introducción a C#, como parte de los eventos que organiza la comunidad TjNet, y del cual tuve la oportunidad de impartir.

Para este taller la Universidad Iberoamericana, tuvo la gentileza de prestarnos un laboratorio con equipo de cómputo, e instalar el software requerido en cada pc, para que pudiesemos trabajar sin ningun contratiempo.

La verdad que la pase muy bien, y espero que haya sido de igual forma para los asistentes, además de mi deseo de que se llevaran algún beneficio de los temas que ahí vimos. Para ser sinceros la cantidad de gente que acudio (35), superó mi expectativa, la cual era de no más de 20.

Con eventos como éste, el curso de ASP.NET y el DevDays, se demuestra la convocatoria que tiene la comunidad, ojalá que también se pudiese demostrar con un poco de más actividad en los foros.

Con respecto al artículo de UML y POO, recibí un comentario de Mentores.NET, específicamente de Anthony Alvarado donde me explica el motivo de porque el artículo fué rechazado; ya lo ajuste a los requerimientos y finalmente fue publicado aquí.

Por otro lado en la escuela, salí bien librado del primer embate de exámenes, especialmente de las materiaa relacionadas con la carrrera - Ing. en Sistemas -, Que extraña coincidencia? ;)

domingo, febrero 20, 2005

Artículo UML

Artículo UML
Comente en mi post anterior acerca de un articulo sobre Programación orientada a objetos y UML, el cual envié a Mentores.NET, pues al parecer, algo del artículo no les gustó - no se que en el email solo decia que habia sido rechazado -; así que aquí esta el artículo completo, espero que a alguien le sea útil.

Decisiones Inteligentes
Este fin de semana le dí una arreglada a mi sitio, aún no esta funcional, pero espero en los siguientes dias configurar el Community Starter Kit para terminar la parte funcional del mismo, y después poder enfocarme al contenido.

Desarrollador 5 estrellas
Al día siguiente de mi comentario del programa desarrollador 5 estrellas recibi el correo indicandome que por fin se inicia el curso este 21 de Febrero para la 3er estrella. Ahora mi pregunta es: Concidencia o casualidad? ;)

Instalación de MSDE
El día de hoy me pasó algo curioso; recientemente compré una nootebook, a la cual le instalé el SP2, el día de hoy quise instalar el MSDE en esa máquina, pero se quedaba conlgado el instalador; revise los logs de instalación y me dí cuenta que no respondia al llegar al punto de instalar el sqlredis.exe, el cual instala los componentes del MDAC. Busqué en varios lugares en Internet por una solución pero nada, habia más personas con el mismo problema; supuse que el problema podria venir de algún conflicto con el XP SP2, así que lo desinstalé, pero el instalador seguia "colgandose" en el mismo punto, después de un rato sin saber que hacer, me decidí a bajar el MDAC más reciente del sitio de Microsoft, e instalarlo manualmente, pensé que si el instalador del MSDE encontraba una versión más reciente no iba a intentar instalarlo, pero nada, seguia "colgandose" en el mismo paso, así que reemplaze el archivo sqlredis.exe con uno que no hacia nada, y la instalación finalizó correctamente. Ya funciona el MSDE en mi máquina!
Si alguen sabe de alguna solución menos radical, le agraderé que le me la haga saber.

Por cierto no se si ya se dieron cuenta o no, pero algunos archivos de descarga desde el sitio de Microsoft, ya piden que se realize una verficación para saber si el Windows de la pc es genuino o no. La forma como funciona es que se instala un programa en la pc, la cual genera un número - no se en base a que - y despues ese numero se tiene que teclear en la página para que se autorize la descarga. Este sistema aún esta en prueba y parece que por ahí de Septiembre se hará oficial.

Mono
La semana pasada Miguel de Icaza y su pandilla, liberó otra versión más de Mono, lo interesante es que la versión en desarrollo (1.1.4), incluye soporte para System.Windows.Forms y ASP.NET 2.0, además de incluir mejoras en el performance y en el consumo de memoria; como dato curioso se invita a los usuarios a dejar la versión estable (1.0.6), por la de desarrollo, dada la cantidad de mejoras que esta incluye.

martes, febrero 15, 2005

Desarrollador 5 estrellas y otras cosas

Ya ha pasado mas de mes y medio desde que presente la primera y segunda estrella del programa desarrollador 5 estrellas, y aun el curso de la tercera no esta disponible, bueno seguire esperando...

Curso: Introducción a C#
Fecha De Registro:
Thursday, December 30, 2004
Curso Asignado el dia:
Examen habilitado:
No Disponible

Por otro lado en la escuela nos encargaron un trabajo que explique que es UML y como se usa para modelar programas orientados a objetos. Envie el trabajo a Mentores.NET, si aceptan publicarlo, les pongo la liga, si no, lo publicare aqui en varias partes.

Por cierto hay un CD que hizo disponible Microsoft, acerca de ASP.NET 2.0 y Visual C# 2005, el disco mide 289MB y esta aqui.

Y en otro orden de ideas, desde hace tiempo he tenido la necesidad de utilizar algunos programas open source para distintas necesidades, aunque todos estos programas se originaron en Linux - a excepcion de firefox -, ahora estan disponibles en Windows, y definitivamente representan una buena alternativa contra programas que pueden ser costosos, y que se originaron en windows o mac. Asi que a continuacion les paso una lista de esos programas, espero que alguno sea util para ustedes.
- Navegador: Firefox
- Editor de images: Gimp
- Editor HTML: Nvu
- Editor de dibujos vectoriales: Inkscape
- Programa de oficina: Openoffice, y aqui esta version 2 en beta, pero que se ve muy bien

martes, febrero 08, 2005

Generador de passwords

Hace unos dias pense en escribir un pequeño programa que me permitiera generar passwords seguros de forma aleatoria, pero me decidi a buscar primero en el google para ver si habia algo disponible en algun lenguaje, para despues yo portarlo a C#, y me encontre con esta liga.
El codigo aqui esta con algunas modificaciones que sugieren en los comentarios:

public static string CreateRandomPassword(int PasswordLength)
{
string _allowedChars = "abcdefghijkmnpqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ23456789!@$?";
Byte[] randomBytes = new Byte[PasswordLength];
char[] chars = new char[PasswordLength];
int allowedCharCount = _allowedChars.Length;

for(int i = 0;i<PasswordLength;i++)
{
Random randomObj = new Random();
randomObj.NextBytes(randomBytes);
chars[i] = _allowedChars[(int)randomBytes[i] % allowedCharCount];
}

return new string(chars);
}

Basicamente el codigo entra en un ciclo determinado por la longitud que deseemos que el password tenga, tomando un digito aleatorio de la cadena definida como _allowedChars.
Asi que si pasamos como parametro un valor de 10, otendremos algo similar a: EMPyhDHA7f.

Creo que es importante el que nos procupemos por tener passwords seguros, de esa forma nos hace menos vulnerables a ataques de diccionario y/o furza bruta, ya que desafortunadamente la mayoria de nosotros elegimos como passwords nombres de personas que conocemos (padres, hermanos, novias, hijos, etc), fecha de algun aniversario importante, nombre de mascotas, grupos de musica, canciones, etc.; situacion que pone en grave peligro nuestra informacion.

Por medio de esta simple rutina, es posible generar passwords de la longitud deseada, asegurandonos de que sea algo sin sentido, dificil de violar. Se que algunos diran, pero, me es mas dificil recordar una cadena sin sentido que algo que tenga significado para mi; tienen razon, pero si se trata de proteger informacion confidencial, creo que vale la pena esforzarse un poco.

Es posts posteriores voy a comentar como guardar los passwords de forma segura en una base de datos, guardando unicamente el hash del password, con lo cual nos haceguramos de que se vuelve indesifrable.

Por cierto en la escuela hay una clase llamada fundamentos de programacion, la cual realmente es programacion orientada a objetos, en la cual se usa el lenguaje C# como oficial para la clase.