Anotaciones de diversos temas relacionados con código abierto, metodologías de desarrollo y programación con Ruby on Rails
miércoles, noviembre 29, 2006
No soy el único
No importa todo el festival que preparen, no importa lo bonito del empaque, no importa que lo acompañen de Office 2007 (este si mejoró bastante). Es un fiasco y lo van a maquillar con grandes anuncios de ventas (como si fueran a recibir discos de oro y de platino) y reportajes en todos los medios de lo mucho que ha mejorado el mundo con Vista.
Pero no es ni será cierto. Es más, hay gente del medio que no tiene urgencia de cambiar a Vista.
La única manera en que Microsoft lograría innovar en realidad sería desarrollar un totalmente nuevo sistema operativo. Sin mantener compatibilidad, sin reutilizar código, sin prometer las perlas de la virgen, sin pretender ser itasca.
Ya anteriormente hablé de como el desarrollo de Vista ha caído víctima del corporativismo. Y pa'muestra aquí hay otro botón.
Finito.
Jarro Negro en InnovaTec
Lo que es ser joven.... :D
Finito.
Y nos dieron las 9, las 10 y las 11
Iver fue quién proporcionó la mayor parte de la audiencia acompañándose de Luis Enrique Olascoaga y Erick Sánchez además de la curiosamente agradable visita de Akin0. Digo curiosa ya que lo conocí hace algún tiempo y me dejó una impresión tan buena que incluso hice un post acerca de su él y su trabajo. La parte agradable fue volverlo a encontrar y descubrir más puntos en común: el interés por Mono y por formar comunidades.
Para efecto de tener un espacio para platicar, nos adentramos en conocida cadena de cafeterías donde nos acomodamos como pudimos (el lugar estaba retacado) e inicié con lo traía preparado para la exposición de introducción al proyecto Mono. Una novedad que incluí en este demo fue el Mono Migration Analyzer o MoMA pa'los cuates.
MoMA es un programa que examina una lista de ensamblados (assemblies) y busca llamadas a métodos de la BCL que no se encuentren implementadas, estén marcadas con el atributo [MonoTodo] o que no tengan una implementación completa además de reportar las llamadas P/Invoke. Todo esto lo consigue haciendo uso de Cecil y al final se puede enviar el resultado a la gente del proyecto Mono, de hecho Miguel de Icaza se vé bastante animado con los informes que han llegado y ha publicado varios posts para dar a conocer los resultados acumulados.
En lo particular me parece una herramienta super importante ya que nos permite dos cosas:
- Identificar los puntos específicos a modificar en nuestras aplicaciones para conseguir una distribución multiplataforma y
- Identificar que métodos de la BCL se están usando y crear la implementación, es decir, desaparecer los [MonoTodo] y las excepciones NotImplementedException.
Raúl nos hizo el demo y ¡voilà! funciona! pero no lo dejo allí. Mostró una alternativa en la que el objeto que se va a compartir lo serializa y lo inyecta en el ViewState ¡cool!. Akin0 hizo la observación que al ir aumentando la complejidad de la clase proporcionalmente iba a crecer el tamaño de la serialización y por ende el ViewState. Como comentaron él y Raúl, y yo también creo, habrá que revisar cada escenario.
Cuando se acercaron a nosotros para avisarnos que ya estaban por cerrar el estacionamiento nos dimos cuenta que era hora de partir.
Por mi parte me quedó una satisfacción enorme de encontrarme con todos y de ver el nivel de conocimientos y habilidades que no se están quedando en una persona, por que el fondo de estas reuniones es compartir y ayer se repartió a manos llenas.
Finito.
jueves, noviembre 23, 2006
Saliendo al quite
Aunque había estado participando, realmente no tengo todo el material (ni el expertise) para impartir el taller pero como los muchachos ya estaban aqui no se podía dejar que fuera en balde la visita. Así que a sugerencia de mi jefe, les platiqué de Mono :D
Retomé la presentación que impartí en CITEKNA.06 y partí de ahí. Realmente fue rápido, uno de los chavos tenía conocimientos de .NET y Mono. Ejecutamos algunos ejemplos del SDK de .NET con Mono, ejecutamos los ejemplos del SDK en Linux con Mono (1.2 y 1.1.17) y el cierre fue ejecutar Mono en Solaris :O
Hasta ayer solo era una idea vaga lo de ejecutar Mono sobre SPARC y fue más simple de lo que esperaba. Si bien no hice (ni se ha hecho) una prueba exhaustiva, es un buen inicio para tratar de incorporar Mono y por ende .NET en el ambiente "empresarial".
Hoy la lista de Mono Hispano preguntaba alguien como argumentar a detractores de Mono. Creo que no hay una forma contundente. .NET no se ha integrado como una plataforma "empresarial" (a comparación de J2EE), mucho menos Mono. ¿Está listo para este tipos de retos? Desgraciadamente tampoco lo puedo afirmar. Lo que sí se puede decir es que no es cosa de tecnología. Somos nosotros.
Nos gusta presumir Mono por aquí y por allá, pero no hemos conseguido espacios para foguearlo y ver realmente hasta donde llega. Es un lindo juguete pero para muchos es solo eso.
En el sitio de Mono, existe una sección con proyectos reales. Pero nada se compara con la experiencia propia. Asi que: propongamos. Veamos que retos existen y hagamos el compromiso con Mono para usarlo.
Como cierre, el próximo martes 28 de noviembre se realizará la reunión Mensual de la Comunidad .NET de la Cd. de México. La reunión anterior pedí la oportunidad de exponer acerca de Mono y hasta la fecha si bien no me han confirmado tampoco me han dado una negativa así que estamos listos para hacer la presentación.
Entonces, los espero en el WTC, piso 35 en las oficinas de Intersoftware a partir de las 19.00. La idea es que asista toda la gente interesada en Mono para empezar a formar una comunidad y empujar el proyecto.
Los espero.
Finito.
viernes, noviembre 17, 2006
Ahora si.... ya se los cargó el payaso,....
Estoy que me lleva la ()/&%&#&/W"!!!!
Acabo de hacer la migración a Blogger Beta y me encuentro con varios... varios... decenas de comentarios que nunca había visto antes...... en serio.... Otra más y me cambio de blog engine.
Finito.
martes, noviembre 14, 2006
¿Terminaré algún día?
Pues bien, mi cerebro si lo recordó y heme aquí actualizando código de nuevo.
Más bien surgió de que instalé .NET 3.0/WinFx y pues me salió la duda: ¿cómo accederé el API de salesforce.com? No lo intenté (todavía) pero lo bueno es que retomé PartnerApi.
De hecho, se me ocurre intentar de nuevo la migración a Mono :P
Pa'más referencia y un meme, visiten mi BackPackIt
Finito.
jueves, noviembre 09, 2006
Es oficial: Mono 1.2
Esto ya se había anunciado desde el Mono Meeting, sin embargo me da una impresión de acelere/rush.
Desde la mañana se había anunciado la liberación, incluso en la lista de correos se vió con sorpresa la nota.
Bueno, es oficial. Mono 1.2
Finito.
martes, noviembre 07, 2006
Más noticias del acuerdo y un detalle curioso
Habrá preguntas que nos hemos hecho, habrá otras que no. Creo que vale la pena visitarlo y si es necesario plantear nuevas dudas.
En otro orden de ideas, ya descargué e instale Mono 1.2 RC para Windows. Un detalle que me pareció curioso y práctico a la vez es que agregaron una opción a los menús contextuales para arrancar XSP/XSP2 en un directorio en particular. Una imagen dice más que mil palabras.
Y ya nomás pa'terminar, en Port 25 hay una entrevista harto interesante sobre la representación gráfica de actividad mediatica colectiva :S (mi libre traducción). Pa'que de'veras vean de que se trata, visiten este post en Port 25.
Finito.
.NET 3.0 liberado
Entonces, ahora ya estamos en posibilidad de descargarlo e instalarlos para probar esta entrega. Lo que de inicio es deconcertante (para los que no veníamos siguiendo al detalle estas entregas) es que no existe la habitual combinación redistrubtable/SDK. Recordemos que .NET Fx 3.0 únicamente agrega API's a .NET Fx 2.0, realmente al fondo (muy en el fondo) seguiremos usando la versión 2.0.
Entonces, para más referencia, detalles y links para descargar, aqui están:
- Microsoft .NET Framework 3.0 Redistributable Package
- Visual Studio 2005 extensions for .NET Framework 3.0 (WCF & WPF), November 2006 CTP
- Visual Studio 2005 extensions for .NET Framework 3.0 (Windows Workflow Foundation)
Y de paso chequen la nueva aparienca del home de Visual Studio 2005.
¡Ah! Y para aquellos morts que no escuchan el Podcast de Pozo Técnico, ahi les va Atlas
Finito.
lunes, noviembre 06, 2006
Liberan instaladores para Mono 1.2 RC
Han anunciado la liberación de varios instaladores de la versión 1.2 RC de Mono entre los que se encuentran disponibles
- Windows
- Mac OSx
- Linux genérico
- Fedora
- Suse
- Red Hat
- Novell Linux Desktop
Me parece que la idea es tener el máximo de retroalimentación en vista al probable anuncio de la versión final durante el Tech Ed que se estará realizando en Barcelona en esta semana. Sin embargo, se me hace muy apurado el tiempo, a menos que únicamente se anuncie la fecha de liberación definitiva.
De cualquier manera, hay que probar esta entrega, reportar los errores y lo más importante: corregirlos.
Finito.
Y tú ¿quién eres?
En estos tiempos de internet, e-commerce, e-gov, e-celebrities y demás, la identificación (¿quién soy?/¿quién eres?) se vuelve cada vez más indispensable. Antes teníamos la seguridad que un simple usuario y contraseña era todo lo necesario para hacernos reconocer. Sin embargo, hay quienes se han encargado de echar a perder esa simplicidad. Ahora se buscan nuevos mecanismos para establecer nuevas relaciones de confianza entre los usuarios y los proveedores de servicios.
Pero, ¿acaso no suena todo esto a gran censo para el Gran Hermano? El hecho de que se me asigne una etiqueta para identiricarme, poder comprar en línea, leer mi correo, revisar mis cuentas bancarias, visitar mis sitios favoritos ¿no es invadir mi privacidad?. Resulta entonces que hay alguien que puede ver los sitios que visito, las cosas que compro, las cosas que leo y las que escribo. Estoy de acuerdo en mantener mi seguridad pero también demando mantener mi privacidad.
Entre tanto, la seguridad se lleva la delantera.
En su programa semanal Scott Hanselman hace una entrega bastante interesante acerca de la Identidad tratando especificamente el tema de InfoCard. En un post anterior, también hace referencia al tema e incluye varios de los links que menciona en su podcast.
Si bien, todavía nadie me asegura mi privacidad, el menos se ve que la seguridad va en buen camino.
Finito.
viernes, noviembre 03, 2006
Habilitando peticiones remotas para el servidor X
Generalmente lo que haces es permitir peticiones mediante xhost de manera que simplemente llegan y las atiendes. Pero en Ubuntu no fue así de fácil.
Empecé con el procedimiento común: xhost, me conecto al servidor vía telnet, exporto la variable DISPLAY y.... nada... no gráficos, no ventana solo mensajes de error.
¿Qué pasó? Lo primero que me recomendaron es que viera si estaba activo el puerto tcp 6000. Y pus no estaba. ¿Entonces?. Encontré un xserverrc que traía un parámetro -nolisten tcp y resulta que cancelaba el tráfico en el protocolo especificado. Pero tampoco fue la solución.
Recurrí al todo poderoso Google, pero no conseguí formular una pregunta sensata y no encontré respuesta. Y como era urgente (¡para hoy! ¡para hoy!) simplemente me conecté vía XDCMP y a disfrutar el "adorable" entorno gráfico de Solaris. Waaa!
Hoy me he levantado y al darme la vuelta me he ido rodando (algo de sobrepeso). Y encontré una nueva manera de formular mi pregunta. Y el todo poderoso Google me dió respuesta:
Ubuntu Enabling remote X windows
En resumen de lo que se trata es de reactivar las conexiones TCP mediante lo siguiente:
- Ir al menú Sistema, Administración, Ventana de Entrada
- En la pestaña Seguridad, desactivar el check box con el titulo Denegar las conexiones TCP al servidor XServer.
- Reiniciar tu equipo
- Presto!
Finito.
jueves, noviembre 02, 2006
Acuerdo de entre Novell y Microsoft sobre patentes
La verdad es que ni idea tengo del alcance real de este acuerdo, de inicio se dice que el acuerdo una vigencia de al menos cinco años y se mencionan específicamente varios productos Open Source que promociona Novell, entre ellos:
- OpenOffice
- Samba
- SUSE Linux Enterprise
- y obviamente.... Mono
- El anuncio de prensa en Novell y Microsoft
- FAQ
- Transcripción del evento.
- Webcast con el CEO de Novell
- Carta Abierta a la comunidad Open Source
- Compromisos con la comunidad
- La demanda de consumidores de integrar software libre y propietario (privativo en otros españoles)
- Previsión por parte de Microsoft en relación a un escenario donde no le sea posible seguir inundando el mercado de SO.
- Replantamiento de la estrategia de Microsoft en relación a la construcción y liberación de nuevas versiones de sus SO's (Recuérdenme: En cinco o diez años se recordara Vista como el mayor fiasco de Microsoft).
- Influenciar (al final: controlar) el mercado mediante estándares y pseudo-estándares: Open XML, máquinas virtuales, ambientes de desarrollo.
Ya se verá.
Finito.
Actualización a Ubuntu 6.10 Edgy Eft
En la PC de escritorio, fue donde realmente fueron los intentos iniciales de actualización y como tal, es un verdadero desmadre. Arranca con una pantalla splash bien cucha, tengo que regresarme a una versión anterior del kernel, sigue sin funcionar ACPI, pero fuera de eso funciona exactamente igual que antes.
No me gustó el proceso, creo que pudo ser más limpio.
En cambio, en la laptop, fue borrón y cuenta nueva. Respaldo mis archivos y ¡órales! a formatear e instalar todo. Rápido y fácil.
Algo que encontré, y que si bien existía desde la versión anterior, es la opción Añadir y Quitar del menú Aplicaciones. Es un símil del instalador que se encuentra en el Panel de Control de Windows, la diferencia es que nos despliega un de aplicaciones disponibles para instalarse y se puede especificar desde cuál repositorio se obtiene la lista de programas.
La selección de repositorio es importante ya que están clasificados por el tipo de licencia que manejan y el tipo de mantenimiento o soporte que reciben. Esto es, hay repositorios que únicamente alojan software libre y otros que alojan software bajo copyright. Existen repositorios con paquetes que reciben mantenimiento directamente del equipo de Ubuntu o Canonical y otros donde la comunidad Open Source se encarga de su mantenimiento.
En estas diferencias es donde hay que fijarse para conseguir los paquetes que se requieren. Por ejemplo, para reproducir archivos .mp3, los paquetes los consigues en el repositorio que maneja copyright y que es mantenido por la comunidad.
En fin, la actualización, puede ser buena. La reinstalación definitivamente es buena. La opción de Añadir y Quitar es excelente.
Finito.
Pensamientos sueltos acerca de Windows Vista
- Tal vez Windows Vista no sea el mejor OS del mundo, pero estos K's saben como encajartelo. Chequen el packaging
- En la pasada reunión de la Comunidad .NET, Héctor Obregón hizo algunas demos de Vista. Entre las que me parecieron interesantes estuvo lo de User Access Control o lo que es lo mismo "Te voy a estar molestando para que estés seguro".
- Una de las cosas que hay que reconocerles a estos K's (aparte del merchandising) es que son fieles a su API original. Dibujar íconos en botones o nuevos controles es simplemente un mensaje más en las tradicionales llamadas a SendMessage. Si hoy en día compiláramos un programa de Windows 1.0/2.0/3.0, funcionaría exactamente igual.