Saturday, June 30, 2007

Monodevelop Class Pad Improvements

He aqui algunos improvements que he enviado a Monodevelop.
  • Generics
  • Metodos con parametros
  • Indexers

Moonlight y Desklets en Ubuntu

(an english version available) Es impresionante lo rapido que va el equipo de Mono con el Proyecto Moonlight, ya lo he instalado y ejecutado los Desklets que es un proyecto inciado por Everaldo Canuto, aqui les dejo un video de mi escritorio. Esta es la guia oficial para instalar Moonlight, sin embargo yo he recopilado unos pequeños pasos claves para instalar en Ubuntu. Recuerdo a los lectores que no me me hago responsable por los daños que les pueda causar estas instrucciones: Comenzemos: Necesitamos Mono 1.2.4 y los fuentes de ffmepg,Moonlight y Olive. 1. Mono 1.2.4: Debido a que yo uso Ubuntu Feisty y no hay paquetes oficiales de Mono 1.2.4, estoy usando bajo mi responsabilidad y concentimiento los paquetes de Viraptor. 2. Descargar el ffmpeg desde SVN: $svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg 3. Compilar ffmpeg: $cd ffmpeg && ./configure --prefix=/usr/local && make && sudo make install 4. Instalar XPCOM de Mozilla: Usando aptitude o synaptic, instale los siguientes paquetes con sus dependencias:
  • libnspr-dev
  • libnss-dev
  • firefox-dev
5. Descargar Olive: $svn co svn://anonsvn.mono-project.com/source/trunk/olive olive $cd olive && ./configure --prefix=/usr && make && sudo make install 6. Descargar Moonlight: $svn co svn://anonsvn.mono-project.com/source/trunk/moon moon $cd moon && ./configure --prefix=/usr && make && sudo make install Para probar la instalacion, abra una terminal y ejecute: $mopen Deberia ejecutarse Moonligh dando la siguiente informacion: Usage is: mopen [args] [file.xaml|dirname] Arguments are: --fixed Disable window resizing --geometry WxH Overrides the geometry to be W x H pixels --host NAME Specifies that this file should be loaded in host NAME --transparent Transparent toplevel --desklet Remove window decoration for desklets use Aunque esta salida es correcta, aun no se puede saber si esta instalado correctamente el Moonlight hasta que no se ejecute un desklet. Ejemplo: $cd desklet/glassyclock && mopen --desklet default.xaml Si puedes ver el reloj, te felicito, has instalado correctamente Moonlight! Si tienes algun problema escribeme tu comentario o unete a los siguientes canales IRC: #desklets(en ingles), #mono(en ingles), #monodev(en ingles) #mono-hispano( en español y aqui es donde siempre estoy yo) en el servidor irc.gimp.org. En #mono-hispano siempre estamos atentos a nuevos participantes y bienvenida siempre son sus consultas acerca del Proyecto Mono.

Friday, June 29, 2007

Acropolis CTP1

Excelente proyecto de Microsoft, ya se me hacia mucho trabajo usar su System.AddIn o reflextion para cargar los Parts y crear interfaces aunque con los Elements de XAML es un placer, Acropolis automatiza todo ese proceso en un solo Framework y con el diseñador integrado mas todavia. Lo que desconozco aun es si va a venir con VS 2008 ya que le vienen quitando cosas al "Orcas" al igual que al vista(Entity Framework por ejemplo) para traerlo con SQL Server 2008. Bueno, hay cosas que desaparecen de los proyectos y no vuelven.. como el ObjectSpaces o el WINFS que por cierto ZFS de Sun ha logrado lo que ellos querian jejeje.

Exposing a Workflow as a WCF Service in Visual Studio 2008 beta 1 (Step by step)

Impresionante demostracion.

Sunday, June 17, 2007

Windows Genuine en Ubuntu

Windows Genuine Validation funciona a la perfeccion en Linux. Me pregunto si la gente de Wine lo hace a proposito... hasta el momento es la cosa mas insolita de Microsoft que he visto despues Ballmer decir grocerias a Google y Microsoft amenazar a usuarios de Linux .

Temple of the Sun Contest Final

No hay porque juzgar al pequeño Johan Verdad? No, no tengo idea de que resultado da la compilacion porque no teng o Sun One Studio 11. Aun lo estoy bajando, pero lo averiguare.

Cambiar nombre proceso Mono en Linux

Me parece bastante desagradable que cualquier aplicacion mono tenga siempre el mismo nombre y solo lo puedas diferenciar por cuanta memoria consume(xD), encontre en el codigo fuente de banshee algo que resuelve el problema. El codigo fue originalmente creado por Aron Backover solo que yo lo modifique y lo coloque en una clase sencilla. Ejemplo: ProcessNaming.SetProcessName("MyApp"); [ProcessNaming.cs]

Thursday, June 7, 2007

Microsoft vs MVP

Que divertido articulo: Abogados de Microsoft Dicen: "Hmmm... This software would look good as a module in our app, but we can't use it without paying this guy for the rights. Lets intimidate him into giving it up, but not until we make him feel special first..." Microsoft son of a bitch!

Manejo de API's Obsoletas para .NET Framework 2.0

Aqui se encuentra un resumen de las API's obsoletas para .NET Framework 2.0, aunque el compilador te arroja los Warning al momento de compilacion es bueno explorar el indice completo para conocer un poco mas acerca de otros namespaces. En el caso de que se haya expuesto una de estos miembros o clases en nuestro codigo tal vez necesitemos desactivar la adevertencia del compilador para resolverlo mas tarde. Esto se hace usando la directiva #pragma warning. Por ejemplo,System.Configuration.ConfigurationSettings.GetConfig esta en C# 2.0 Obsoleto, si lo utilizamos en nuestro codigo nos arrojara el siguiente error: 'System.Configuration.ConfigurationSettings.GetConfig(string)' is obsolete: 'This method is obsolete, it has been replaced by System.Configuration!System.Configuration.ConfigurationManager.GetSection' Para solucionarlo colocamos el siguiente codigo: #pragma warning disable 0618 System.Configuration.ConfigurationSettings.GetConfig("myConfig"); #pragma warning restore 0618 Nota: Es importante usar #pragma warning restore al finalizar del bloque de codigo en el que necesitamos que se ignore la advertencia para poder observar otroas secciones de codigo en el mismo archivo donde se presenta la advertencia.

Wednesday, June 6, 2007

Record Visitas de mi Blog

Este blog tiene un nuevo record, 1144 Visitas en 1 mes. Aqui tengo la prueba de que la gente lee pistoladas:).

Empresas Software Propietario y Software Libre.

Estuve varios dias ocupado con algunos prototipos de proyectos y pensando en la licencia que utilizare para esos proyectos finales y este es un resumen de mi analisis personal. Se daran cuenta en mis conclusiones que soy una persona capitalista y NO Socialista. Que es una Empresa? "Una empresa es el ejercicio profesional de una actividad económica planificada, con la finalidad o el objetivo de intermediar en el mercado de bienes o servicios, y con una unidad económica organizada en la cual ejerce su actividad profesional el empresario por sí mismo o por medio de sus representantes." Empresas basadas en Software Propietario: Vender todo lo que generalmente es el producto, el soporte y entrenamiento.
  • Microsoft: Ofrecer el software mas facil de usar(no necesariamente mas seguro) sin dependencia de hardware.
  • Apple: Ofrecer Tecnologia con altisima calidad y muy segura incluyendo Software y Hardware.
Empresas Relacionadas al OpenSource: Vender Soporte y Modificaciones para usos especificos y entrenamiento. Al contrario del Software Propietario no pueden vender el software porque esta basado en las constribuciones de toda "la comunidad"(incluyendo otras empresas) y por lo tanto empresas usando esta forma de trabajo tendran que realizar movimientos rapidos para conseguir mas y mas clientes a los cuales dar soporte mientras compiten al mismo tiempo con otras empresas que practicamente hacen lo mismo. Variaciones:
  • Redhat: Por un tiempo uso Software Libre+Codigo Abierto usando la estrategia inicial pero despues se dio cuenta que la Venta le seria mas rentable. Recientemente Compro JBoss para competir con los Servidores J2EE de IBM y Sun.
  • Novell: Despues de unos malos movimientos, hace lo mismo que Redhat. Recientemente esta aprovechando los clientes de Microsoft que quieren entrar al campo otras plataformas No-Windows con el Projecto Mono, a largo plazo al parecer dara resultado si antes Microsoft no Expande su software a Linux lo cual es bastante dificil.
  • MySQL: Empresa que vende un producto con el Mismo Nombre que cada vez mas tiene penetracion en el mercado de las bases de datos. Su software es OpenSource y mayormente su ganancia viene del Soporte y Entrenamiento. Venden algunas erramientas de integracion con su producto.
  • Canonical: El Linux de Moda, Ubuntu causa furor. Sin embargo los 10 Millones que costo lanzar el proyecto hace 3 años y la inversion en años siguientes tengo entendido por alguien cercano al proyecto que aun no recuperan la inversion, sin embargo la estrategia es esperar unos años mas que solo queden dos sistemas operativos: Windows y Ubuntu. Asi ellos daran el mayor Soporte a Ubuntu.
  • IBM: El gran señor de los sistemas, Manufactura de Hardware para Servidores(los famosos Blade), Servidores J2EE y Bases de Datos.
  • Sun Microsystems: Creador de JE22, Java, Solaris(el OS de Servidor mas Avanzado del Planeta) y Manufactura de Hardware. Recientemente ha hecho Java y Solaris OpenSource en busca de aceptacion por parte de la comunidad OpenSource y ganar mas clientes.
Estas empresas aportan a la comunidad OpenSource mayormente de Linux para sacar provecho del mismo. Ganar dinero es bueno, pero "ser de los buenos de la pelicula" tambien es importante. Aun no tengo conclusion de que hare esto es basicamente lo que he pensado.