jueves, agosto 31, 2006

3108 - Día del blog

Lo que es la ignorancia.... Pués resulta que hoy, 31 de Agosto o 31-08, es el día internacional del blog. De acuerdo a la nota publicada en BBC Mundo

Por segundo año consecutivo, los bloggers en todo el mundo celebran su propio día internacional. (La) idea era que, durante el 31 de agosto, todas las bitácoras digitales en el mundo se animaran a recomendar cinco blogs "preferentemente diferentes a su propia cultura, punto de vista y posición".


Ok, me uno a la celebración y he aquí mis cinco blogs de referencia:
  • Scott Hanselman's Computer Zen - Este fue uno de los primeros blogs que empecé a leer desde un feed.
  • Firedancer.Unleashed! - Interesante blog de una chica geek en Malasia
  • La famosa X - Me encanta leer las espontáneas y profundas introspecciones al lado de cuentos y anécdotas personales.
  • Less is better - John Lam encuentra el balance perfecto entre ser un total geek, esposo y padre de familia.
  • Pozo Técnico - Todo un vómito cerebral sin tanta formalidad y escrito en “mexicano”. Desmadre, humor y desarrollo de software.

Ahora, ¿cuándo se va celebrar el día del podcast?

Finito.

miércoles, agosto 30, 2006

Easy but not easier

Desde hace un par de semanas he estado jugueteando (thinkering around) con Virtual PC 2004 SP1 aplicando la ironia natural que me caracteriza: Estoy creando máquinas virtuales de distribuciones Linux.

Como comenté anteriormente, había venido usando VM Ware para esto de la virtualización, pero ya se me acabaron las cuentas de correo para solicitar trials y eso de andar consiguiendo números de serie no se me da mucho que digamos.

Entonces al conocer la oferta cero costo de VPC, pues doblé mis manitas y a empezar a usarlo. Hasta ahora ha sido al menos interesante. Me voy a retractar de lo dicho y ya estoy viendo que VPC es más portable que VM Ware. Si bien te hacen creer que solo puedes virtualizar instalaciones de Windows, no es cierto, si miras bien encontrarás una opción que dice bien clarito Otros y que obviamente es la que dió pie a estos ejercicios.

Después de asistir a CONSOL 2006 quedó rebotando en mi cabeza Ubuntu, que por decirlo de algún modo es la distro de moda. Así que por ahí empecé. Siendo una derivación de Debian esperaba que fuera harta difícil de instalar, más no fue así. Estos monitos de Ubuntu vaya que se han aplicado. Es la clásica instalación de next, next, next... digo siguiente, siguiente, siguiente.... por que hasta eso: desde la instalación la distro funciona en español.


Pues bien, funcionó y ya.

Después me lancé por una distro que todos en CONSOL tacharon como dura: Gentoo. El clásico motto de Gento dice:
Si John Wayne hubiera sido usuario Linux, Gentoo sería su distribución.

Después de mi experiencia con Linux from Scratch me creí listo para esta experiencia. ¡Y vaya que si es experiencia! Cuatro días (no consecutivos) para llegar al mugroso prompt. La idea detrás de Gentoo es ir controlando cada detalle del proceso de instalación y compilando cada paquete que instalas. Incluso el mismo kernel. Es rudo.



Uno de los detalles padres que le encontré a VPC fue que durante la instalación de Gentoo solo estuve guardando el estado de la máquina virtual y continuar donde me quedé al día siguiente.

El punto para mí es: Ubuntu es buena, es fácil de instalar, pero es demasiado fácil para el usuario final pero no para el experto. Gentoo te da control absoluto pero es demasida complicada para instalar, aún para un experto. A mí me gustaría una distro que se instalé en un par de horas con un perfil (laptop, desktop, server, appliance) y que después de diera chance de hacer una puesta a punto, punto por punto.

Ahora que tenga chance y me lleguen los CD's, voy a instalar Ubuntu en la PC de casa. Lo único que me preocupa es como le voy hacer para poder jugar mis juegos de PC. Dicen que existe Wine...

Finito.

Reunión de Amigos

Ayer se llevó a cabo la reunión mensual de la Comunidad .NET del D.F., la cual tuvo de inicio la participación de Raúl Guerrero con el tema Probando nuestros desarrollos con NUnit, la cual me agradó particularmente ya que creo que fue una buena introducción al tema sin caer en una presentación del manual y tocando puntos que tienen que ver más con la práctica, con el uso diario de esta herramienta.

Complementando un comentario que hizo Raúl, que se refirió a la capacidad que tiene VSTS de realizar pruebas de cobertura de código, también existe una aplicación Open Source para tal efecto: NCover. Esta herramienta provee estadísticas acerca del código, señalando cuantas veces se ejecuta cada línea de código. El uso más común del análisis de la cobertura de código es medir que tan detalladamente las pruebas unitarias ejercitan el código. También quiero hacer referencia a un libro del cual ya comenté anteriormente pero me parece tan bueno que no puedo dejar de recomendarlo: Pragmatic Unit Testing in C# with NUnit de la serie Pragmatic Starter Kit. Es un libro muy práctico (el título lo indica) fácil de leer, lo aplicas desde el primer día.. en fin. Corran, no caminen para comprarlo.

La siguiente plática de la comunidad estuvó a cargo de Octavio Télis que generalmente tiene la costumbre de hablarnos de temas muy avanzados de .NET, en esta ocasión habló de LINQ. Y finalmente Héctor Obregón hizo una demo muy curiosa del reconocimiento de voz incluido en Windows Vista.

Realmente es sorprendente que ahora en un sistema operativo venga integrada esta funcionalidad. Para aquellos fanáticos o ya añejos, Star Trek seguramente les suena familiar. Era clásico en esa serie ver como Mr. Spock o el Capitán Kirk pedían información a la computadora simplemente preguntando y ésta respondía de la misma manera.

Sin embargo, al igual que la vez anterior, lo mejor estaba por venir. Al estar recogiendo Raúl las encuestas, hubo una persona que de hecho estaba sentada a mi lado, que espontáneamente se presentó como Iver. ¿Tú eres Iver? - si... ¡Hola! Soy ChilliCoder... Una vez más los ciberespacios se rompieron y me encontré con la persona detrás del blog.

También se anunció que a finales de Octubre o principios de Noviembre se va a realizar el Community Day, tentativamente en el Campus Cd. de México del Tec de Monterrey. El Community Day es el evento para las comunidades o grupos de usuario. A diferencia de la reunión mensual, el Community Day es un evento de todo el día (o al menos de 9.00 a 17.00) con varios ponentes y patrocinado enteramente por Microsoft. Igual, ya se les avisó, no falten.

Finalmente, a modo de agradecimiento a nuestro patrocinador, Intersoftware nos facilita el espacio y los medios para realizar estas reuniones mensuales.

Finito.

jueves, agosto 24, 2006

Tarde de lluvia, noche de podcasts

Después de la impresionante tromba que azotó gran parte de la otrora Magnífica Ciudad de México, se desató el caos en el tráfico y en los medios de transporte. El metro estaba parado en la estación, así que se me hizo fácil salirme a caminar a la siguiente parada para tomar el metrobus que de igual manera no se daba abasto ante la demanda desmedida por parte de los usuarios. Regresar al metro fue mi mejor opción en ese momento, idea que deseché inmediatamente al ver los ríos humanos que entraban y salían de la estación, desesperados por ver al convoy naranja varado en el andén.

Sin más consuelo que salir con luz de día del trabajo, recordé que había grabado los últimos podcasts de mis subscripciones en mi reproductor mp3 taiwanes de reciente adquisición (¡cómprelo! ¡bara, bara!).

Entre las actualizaciones estaba el esperado 9° episodio del Podcast de Superneurona, de Raúl Guerrero que estreno producción, intro y hasta rola para el cierre del programa. Estupendo trabajo.

También traía dos entregas de un podcast nuevo que encontré navegando por ahí: Roso - Café Podcast. Entretenido, ágil y ameno. Me falta escuchar el más reciente y espero que pronto haya más.

Y como todo un geek, escuché también la entrega de esta semana en los podcasts de Dr. Dobb's Portal, en el cual vienen publicando una serie de entrevistas con Peter Provost, del equipo de Patterns & Practices. Los temas a la fecha han sido harto interesantes y creo que sería una buena ayuda para todo aquel que esté interesado en CAB.

No soy english native speaker y mi listening se está oxidando, así que tengo que reducir la velocidad del reproductor para entender lo que se está diciendo.

Finito.

miércoles, agosto 23, 2006

Which Programming Language Are You?

You are Java.  You are very strong and sturdy, but this makes you a bit sluggish.
Which Programming Language are You?



Por más que lo repetí tres veces salió lo mismo.

:(

Finito.

martes, agosto 22, 2006

Ejemplos reales

Todos los vendedores de software llegan ofreciéndote Pruebas de Concepto para que te convenzas de lo bueno que es su producto, pocos son los que te demuestran que ellos mismos lo usan.

En el blog de Brian Harry, el último post muestra como Team Foundation Server está siendo usado por varios equipos de Microsoft.

Y pensar que andamos batallando con una sola instalación dual server.

Finito.

CONSOL 2006: Presentaciones

Encontré un sitio donde están varias de las presentaciones que se dieron en el CONSOL 2006. Como se puede ver varias son en formato .pdf, otras para OpenOffice y las menos quién sabe con que programa se puedan presentar. Pero bueno, alguien les ha de encontrar el modo.

Finito.

domingo, agosto 20, 2006

Nueva apariencia de los blogs de Carlos Madrigal

El buen Carlos Madrigal, harto conocido en el medio podcastero y de desarrollo, ha tenido la ocurrencia mover sus populares sitios Pózo Técnico y Podcast del Pózo Técnico. Lo bueno es que seguimos teniendo acceso mediante las ya conocidas url's.

Desde la presentación es obvio el cambio y Carlos tuvo el excelente detalle de llevarse todo el historial de posts y comentarios.

Así que si de repente se llena su RSS reader de posts de Carlos, no sé espanten.

Finito.

No sé por que pero sabía que iba a pasar...

Leyendo los posts del fin de semana encontré éste de Héctor Obregón mediante el cual me enteré de que Microsoft anunció la disponibilidad de XNA Game Studio Express, herramientas de desarrollo para Xbox.

Ya sabía que que esto iba a pasar.

Para más detalle acerca de esta nueva entrega chequen el FAQ de XNA.

Finito.

sábado, agosto 19, 2006

CONSOL 2006: Jarro Negro y más

Una de las principales razones para asistir a CONSOL 2006 fue la ponencia Jarro Negro: una distribución Linux creada en el CCH Naucalpan. Siendo ex-alumno del CCH Oriente sentí una enorme curiosidad y nostalgia por esos años cecehacheros.

La presentación giró en torno a las características de la distro, al cluster que armaron (alumnos y profesor) e incluso a un ejercicio de streaming que hicieron en la escuela. Lo interesante es que armaron la distribución, cosa nada sencilla, que armaron un cluster reciclando equipos viejos, cosa que tampoco es sencilla y que solo son alumnos de bachillerato (generalmente entre 17 y 19 años). Si bien son escandalosos los casos de niños hackers de 14-15 años, este caso también debería serlo y aún más por que tiene varias aportaciones a la sociedad.

Un abrazo y felicitación enorme para este equipo.

Como un tema relacionado, presentaron la revista Software Libre para Ti, una iniciativa emprendedora de un grupo de jóvenes involucrados con la distro Jarro Negro. Es una revista en línea, descargable en formato pdf para leerla en la PC con varios artículos introductorios al ambiente Linux y Free Software en general.

Pues bien, como muestra es interesante y emocionante, así que en su oportunidad, prueben la distro, lean la revista, colaboremos en ambos proyectos y adelante.

Finito.

Bonche de noticias Microsoft

Esta mañana me he levantado y al darme la vuelta me he ido rodando de la sorpresa de encontrar tantas y tan variadas noticias alrededor del mundo Microsoft. Lo primero que encontré es que después de casi tres años de lanzamiento aparece el Visual Studio 2003 .NET SP1. ¿Qué tiene esto de relevante? Anteriormente se decía que no podías usar una aplicación o sistema operativo de Microsoft sino hasta que apareciera el primer Service Pack.


Los Service Packs son actualizaciones que corrigen errores de programación que generalmente abren brechas de seguridad y que al ser varios, mejor se empaquetan en una gran entrega. Así que cada vez que se publica uno, se está reconociendo implicitamente que se entregó software con algunas fallas, mayores o menores pero fallas.Si aplicáramos la anterior regla a Visual Studio .NET 2003 estaríamos jodidos. Viéndolo del lado amable, significa que:

  1. El equipo que desarrolló Visual Studio .NET 2003 es menos imperfecto.
  2. La tecnología asociada (.NET Framework) también es menos imperfecta.

Ahora en otras nuevas, gracias a Neki, me encontré con una lista de recursos adicionales para esto del ADO.NET vNext:

Y por mi cuenta me he encontrado este:

Algo que me ha llamada la atención es la constante aparición del término vNext. De hecho en una simple búsqueda me ha dado unos resultados harto interesantes entre los que se incluyen referencias a:

  • SharePoint
  • Team Foundation Server
  • Biztalk
  • Virtual Server
  • DB2 (¿¡¿¡?!?!)
  • y obviamente ADO.NET....

¿Será que ya no habrá codenames (Cirrus, Longhorn, Whidbey, etc.) sino simplemente la etiqueta vNext para las nuevas versiones?

Búscando como resolver esta duda (que por cierto no resolví) encontré un sitio excelente de noticias relacionadas con Microsoft: Bink.nu: watching Microsoft like a hawk. Y aquí encontré otras bellezas como la siguiente: Vista solo puede ejecutar SQL Server 2005. Adiós a MSDE y SQL Server 2000.

Finito.

jueves, agosto 17, 2006

Reunión Mensual de la Comunidad .NET

Ya salió el anunció de la Reunión Mensual correspondiente al mes de agosto. Está programada para el próximo 29 de agosto en las oficinas de Intersoftware en el WTC, en ésta ocasión la reunión iniciará a las 7:00pm de manera que no hay el pretexto de que "no pude salir temprano".

No se vale decir que no sabían. Ya están avisados.

Finito.

Nuevo CTP: ADO.NET vNext

Como si no fuera suficiente la aparición de WinFx/.NET 3.0, ya está disponible un nuevo CTP (Community Technology Preview), ahora de una nueva generación de ADO.NET: vNext. Esta entrega incluye algo que les ha dado por llamar ADO.NET Entity Framework que a primera vista es un ORM, obviamente amarrado de algún modo con LINQ. Entre las características que se incluyen en este CTP se encuentran:
  • Administración de Estado
  • Resolución de Identidad (¿cómo diferencias a un objeto de otro dentro de una BD?)
  • Seguimiento de cambios
  • Manejo de entidades definidas en tablas separadas.
  • Mapeo de tablas con jerarquías, tablas con clases y tablas por tipos (¿acaso no es lo mismo?)
  • Mapeos condicionales
  • y más...

En el blog del equipo de ADO.NET se encuentran ya varios posts al respecto de esta entrega.

Finito.

CONSOL 2006

Hoy ha sido un día estupendo. Me la he pasado super en el Congreso Nacional de Software Libre 2006 que tiene lugar en el Instituto Politécnico Nacional del 15 al 18 de Agosto. Tal como su nombre lo indica se trata de ponencias y talleres de temas relacionados con el Software Libre en México.

También se cuenta con varios invitados internacionales que se han encargado de impartir ponencias y participar en talleres así como de las conferencias magistrales a la par de varias participaciones de conocidos personajes locales.

Solamente del día de hoy salen un buen número de temas que se han de estar publicando en los posts siguientes. No se desconecten.

Finito.

viernes, agosto 11, 2006

Port 25 entrevista a Miguel de Icaza

¿Recuerdan el post acerca de Port 25, el Laboratorio Open Source de Microsoft? Pues bien, hoy publican una entrevista con Miguel de Icaza, líder de los proyectos GNOME y Mono. Pueden descargar la entrevista en video y en formato mp3.

Finito.

Nueva Herramienta: Sandcastle

Sandcastle es una herramienta que produce documentación del tipo MSDN al ir aplicando técnicas de reflexión en los assemblies y opcionalmente integra comentarios XML.

Para más información, visiten el blog de Sandcastle

Finito.

Hands On Labs para Web Service Software Factory

A casi una semana de la entrega de la Web Service Software Factory, Don Smith anuncia la disponibilidad de los correspondientes Hands On Labs. Siguiendo el concepto de entregas anteriores, los HOL's son ejercicios paso a paso para aplicar el producto en un escenario casi real. En este caso, se trata de un servicio de catador de vinos (¿¿¿???)

Es una práctica obligada para cualquier persona interesada en el tema de software factories.

En el mismo post, Don hace una observación acerca de las relaciones de herencia en las clases parciales, una nueva característica de C# que nos permite definir una misma clase en más de un archivo de código fuente cuyo uso más notorio ha sido en los formularios en los que tenemos en dos archivos distintos la misma definición del formulario: en uno la parte que crea Visual Studio y en otro la que nosotros vamos completando con el código de los eventos y definiciones locales. Para más referencia pueden consultar los siguientes artículos:


Finito.

jueves, agosto 10, 2006

Todo cambia... ¿para bien?

Primero fue que Apple cambiaba a procesadores Intel, luego que Java se licenciaba como Open Source, ahora es que Microsoft tiene un laboratorio de Open Source. Se va a acabar el mundo.

La semana pasada tuvo lugar el evento Lang.NET Symposium 2006. Un foro auspiciado por Microsoft para conocer acerca de diseño de lenguajes, implementación de compiladores y construcción de herramientas enfocadas a la plataforma de código administrado (léase .NET).

Obviamente hubo participación de gente de Microsoft: Anders Hejlsberg, Paul Vick y Mike Barnett entre otros. Obviamente estuvo Miguel de Icaza y curiosamente los tres personajes más influyentes en la integración de .NET y Ruby: Wilco Bauwer, John Lam y John Gough.

De esta mezcolanza de filosofías, implementaciones y lenguajes, John Lam fue entrevistado por Sam Ramji quién participa en el Laboratorio de Open Source que incluso tiene su portal propio: Port 25. Ahí encontrarán la serie de entrevistas que hicieron a John Lam y John Gough. Interesante lugar éste de Portal 25. Incluso tiene una sección de podcasts y se ve que la comunidad está creciendo rapidamente.

En lo particular me da gusto ver esta apertura por parte Microsoft si bien seguramente tiene un trasfondo más comercial que colaborativo, este enfoque es mucho mejor y más pasable que aquellos infames documentos Halloween.

Finito.

domingo, agosto 06, 2006

Más acerca de las iluminaciones...

En continuación al comentario de Miguel de Icaza relacionado con WPF/Avalon, en su blog aparecen referencias a un par de blogs, ambos de ex-empleados de Microsoft en el que comentan acerca de esta relación odio-amor.

De inicio encontramos el blog de Wesner Moise, que trabajaba en el equipo de desarrollo de Excel y ahora dedica su tiempo a su start-up en Inteligencia Artificial. En este post Wesner transcribe una charla con Miguel en relación al tema e introduce el comentario acerca de los lectores de blogs. Por otra parte encontramos a Joe Beda, actual empleado de Google y ex-empleado de Microsoft donde trabajaba directamente en el equipo de Avalon. De su post, dos frases me impactan de sobremanera (otra vez traducción libre asistida por WordLingo):

  • Un ciclo de entrega de más de cinco años no puede verse más que como la señal de que algo está horriblemente mal.

  • Cuando estaba en [el equipo de] Avalon hablábamos acerca de construir el API por los siguientes 10 años.



¿Por qué mi insistencia acerca de ser más críticos con la oferta de Microsoft? La primera vez que escribí sobre esto fue en Febrero de 2005, tienen la liga para una lectura más detallada pero incluyo lo que creó que es el punto más importante:
Estamos a meses de que se libere una nueva versión del .NET Framework, hasta donde he visto, vienen algunos cambios radicales. Lo importante es que seamos capaces de tener una actitud crítica y objetiva acerca de esta nueva oferta de herramientas de trabajo. ¿Realmente nos hace más productivos? ¿La manera como nos guían nos lleva a mejores resultados? ¿Ganan ellos y ganamos nosotros? ¿o se trata de otra relación histórica del ganador y el perdedor?


Si bien suena muy agresivo, no debemos de bajar el nivel de cuestionamiento. A la fecha ya se han detallado más las nuevas API's y hasta donde conozco las otras (Windows Communication Foundation/Indigo y Windows Workflow Foundation) me parece que han hecho un esfuerzo real, valioso, productivo para incluir lo que realmente se está necesitando en el ámbito de interoperabilidad y colaboración. Sin embargo en lo relacionado a presentación, WPF/Avalon no es lo que necesitamos.

¿Qué necesitamos entonces? Herramientas que nos hagan más productivos y que estén al alcance de la mayoría de los desarrolladores, económicamente y conceptualmente. No más gurús y sabihondos de "manual" o privilegiados comerciales. No más sesiones específicas de capacitación. No más .....

Hace varios años aparecía en DDJ un anunció de un producto "X" que decía más o menos lo siguiente:
Me pagan por desarrollar aplicaciones, ahora con [Producto X] gano el doble.

El fondo del anuncio era que el Producto X conseguía duplicar la productividad del desarrollador, de ahí el aumento en su ingreso. Me gusta mi trabajo y de igual manera busco como aumentar mis ingresos o el tiempo que paso con mi familia o alguno de mis intereses. ¿WPF/Avalon conseguirá aumentar mi productividad?

Finito.

jueves, agosto 03, 2006

Acerca de iluminaciones...

Miguel de Icaza publicó hace unos días en su blog este pensamiento acerca de Avalon, ahora Windows Presentation Foundation. Estas son sus palabras en una libre traducción asistido por WordLingo:

Acabo de tener una realización hoy.
Avalon de Microsoft es el J2EE de GUI APIs.
Es la manera de Dios de castigarnos por substituir los diez mandamientos por el capricho del patrón del diseño.
Tendremos que esperar un par de los años por herramientas “Rails”. Los programadores mientras tanto pagarán sus pecados.
Avalon marca el final del sueño americano.



Si bien WPF no es mi interés ni mi fuerte, hace un par de semanas leí el libro Professional WinFX Beta y desde antes, al revisar los primeras entregas de Avalon siempre pensé que no parece ni remotamente sencillo. ¿Dónde quedó el clásico Hola Mundo? Esa introducción sobre simplificada a un lenguaje de programación.

Miguel hace una equivalencia directa con J2EE, la especificación "empresarial" de tecnologías Java. J2EE es una bestia inmensa que puso fuera del alcance de la gente la programación Java. Solo unos cuantos iniciados y gurús fueron capaces de entender los intrincados hilos, tejes y manejes de toda la parafernalia de acrónimos que se crearon con J2EE. Tal es el tamaño de la bestia que la comunidad Open Source se embarcó en una guerra no declarada para crear herramientas que cumplieran con el principio KISS y devolvieran el control a los buenos desarrolladores.

¿Pasará lo mismo con las nuevas API's de Microsoft? ¿Será el llamado a la comunidad de desarrolladores para concientizarnos y ser críticos de las nuevas ofertas de Microsoft? No podemos ser simples consumidores. Debemos esforzarnos en reconocer lo bueno de ésta oferta, por que sí lo hay, pero también ser críticos y levantar la mano donde realmente no estén facilitándonos la vida.

En la comunidad Open Source nacen pocas, pero significativas innovaciones. Sin embargo la tecnología se refina de una manera inimaginable gracias a la participación de varios individuos de todas latitudes. Mientras más se comparte, mejores resultados se obtienen.

Finito.