All posts by marble

MonoDevelop 0.1

Este viernes salió la versión 0.1 de MonoDevelop después de esperar toda una semana inexplicablemente, según Todd Berman el código fuente ya estaba listo y solo faltaban binarios para algunas distribuciones. No entiendo porque no puso al alcance de todos el código en cuanto lo tuvo.

Hoy lo he probado y me ha decepcionado mucho, no es que no hayan trabajado, todo lo contrario… han invertido mucho en el editor. Pero antes de hacer la 0.1 Todd comentó en la lista de que informasemos de los bugs que encontrasemos de última hora, yo informé de unos cuantos. Según Todd todos los que reporté estaban ya solucionados, por supuesto yo no tenia acceso a esa version con los bugs arreglados y me basaba en un snapshot viejo. Ahi ya empezamos mal, como puedes pedir a la gente que te reporten bugs si no ofreces la última versión? Pero lo que me decepciona es que alguno de los bugs que reporté y que el me dijo que estaba resuelto sigue ocurriendo en la versión 0.1. Me hace pensar si es cosa de mi sistema 😕 Pero la verdad es que me entristece que ocurra esto 🙁

Por lo que he podido experimentar aún no es usable el editor, una pena.

BloggerAPI XML RPC.NET desde Mono

Bueno, voy a reescribir el post perdido. Comentaba que esta noche he estado jugando casi de casualidad con XML RPC.NET para acceder a mi blog usando la BloggerAPI, es decir, sin usar el navegador y desde un programa escrito en C#.

Después de buscar información sobre BloggerAPI he encontrado MetaWeblog, un futuro estándar para este tipo de aplicaciones. Por desgracia wordpress no parece entenderlo correctamente a pesar de estar soportado, asi que decidí decantarme por intentar usar BloggerAPI.

Las librerias XML RPC.NET no me compilaron a la primera y tuve que hacer una pequeña modificación del archivo “src/XmlRpcAsyncResult.cs”, la linea 163 cambié “userCallback.Invoke(this);” por “userCallback(this);” y a continuación compile ejecutando desde el directorio “src/”: mcs /target:library /out:CookComputing.XmlRpc.dll *.cs -r System.Web.dll -r System.Web.Services. Esto genera el archivo CookComputing.XmlRpc.dll el cual lo copié a otro directorio donde crearia las clases C# para poder hacer las pruebas.

A continuación miré como hacer un cliente usando XML RPC e implementé una clase que permite acceder a blogs usando BloggerAPI desde C#. Es bastante sencillo ya que me funciono la primera llamada (newPost) a la primera. La clase en cuestión la tengo en el fichero BloggerApi.cs (sólo estan testeadas las funciones newPost y getRecentPosts):

Actualización Corregido pequeño error en el código test producido al copiar/pegar y añadida la sentencia de como compilar el código.

Continue reading BloggerAPI XML RPC.NET desde Mono

Un par de hacks para gnome-blog

Acabo de implementar un par de hacks que me permiten postear desde gnome-blog a mi blog basado en wordpress.

El primer problema que tenia era que gnome-blog utiliza XMLRPC para realizar el post en wordpress y tanto la entrada de datos como la comunicación se realiza con la codificación UTF-8 (según he leido parece ser que XMLRPC usa siempre UTF-8). Esto hacia que los acentos no se mostrasen bien en mi blog ya que ni el servidor apache ni mi página web usa UTF-8, utilizo iso-8859-15.

Después de pelearme un buen rato con el código de gnome-blog, consigo enviar los datos en iso-8859-15, pero el servidor no es capaz de entender mi petición y la rechaza. Así que opto por ver como esta implementado el xmlrpc.php de wordpress. Observo que lo trata todo como UTF-8 asi que aqui llega el primer hack 😉 Decido añadir una pequeña función que me convierta de UTF-8 a iso-8859-15 justo antes de que la función introduzca los datos en la BD de wordpress. Y bingo! Funciona 😀

A continuación observo el segundo problema, gnome-blog tiene 2 campos de entrada: el titulo y el cuerpo del post. Por algun motivo que desconocia, a la hora de hacer el post, wordpress no cogía el titulo y lo ponia todo como texto normal con título vacio. Asi que me pongo a dar alguna vuelta por xmlrpc.php de nuevo y veo que el titulo solo lo coge si viene rodeado de , pero es una solución demasiado engorrosa y es posible que se me ovlidase. Más cómodo así.

Si alguien quiere que le facilite los parches no tiene más que decirmelo. Es genial poder tener acceso al código fuente para adaptarlo a tus necesidades, me encanta el software libre 😀

mldonkey

Acabo de descubrir mldonkey como programa P2P. No es que no lo conociese antes, pero ayer lo instalé y configuré en mi máquina vista la incapacidad de bajarme nada con Apollon (usa gift para conectarse a redes FastTrack/Kazaa).

Me ha fascinado la idea esa de poder tener tu server ahi descargando y acceder a su estado por telnet, web o aplicación gráfica. Es genial, lástima que no tenga una buena conexión 🙁

Warnings de Mono

Acabo de descubrir que los warnings que me daba el compilador de Mono versión CVS también me los da el de la última release (0.30):

** (../../mcs/mcs.exe:9624): WARNING **: Shared memory sanity check failed.
 
** (../../mcs/mcs.exe:9624): WARNING **: Failed to attach shared memory! Falling back to non-shared handles

La solución era sencilla “rm ~/.wapi/*” (la he encontrado en mails viejos de la misma lista de correo de mono). Ya que estoy mantendré la decisión de utilizar las releases en lugar de CVS para gentoo gplurv.

Primer post

Este es el primer post en mi blog, no se si lo utilizaré muy a menudo pero bueno… ya he conseguido mi capricho 🙂 Me lo tomaré como un regalo por acabar los exámenes (por fin!) Despues de 3 semanas con 7 exámenes y mucho stress… un poco de calma, ahora ya a acabar de preparar los cursos de Software Libre que impartiré junto con Joni en mi uni.