Sitio Web del poderoso ChicoDotNet

Sitio Web del poderoso ChicoDotNet es el lugar donde puedes aprender todo lo nuevo sobre desarrollo de aplicaciones para Windows, ASP .NET, SmartClient y adquirir los súper poderes que te da la mejor plataforma de creación de programas: Microsoft .NET

20070819

Microsoft Open Source

Microsoft Open Source

El año pasado Microsoft iniciaba trabajos con Mozilla para ayudar a que Firefox y Thunderbird se pudieran ejecutar sin problemas en Windows Vista, como resultado hay ahora por ejemplo un plug-in para Windows Media Player compatible con Firefox disponible, en diciembre de 2006 se publicaba en ECMA el estándar ECMA 376 que define Office Open XML (OO-XML), además de esto desde la aparición de .NET 1.1 estamos viendo cada vez más la transcisión de cada vez más software de código abierto apoyado por Microsoft.

La discusión esta desde diciembre en la red. ¿Está Microsoft realmente convirtiéndose en una compañía que apoya el Open Source? En esta entrada de blog pretendo poner todas las cartas sobre la mesa, mi opinión sobre que plataforma es la mejor está en la descripción de la presente bitácora pero pretendo que esta entrada sea completamente un trabajo de investigación científica. El verdadero fin es que puedas conocer las opciones que Microsoft está ofreciendo y si te sirven las aproveches y si no pues busques otras opciones que te parezcan mejores pero con toda la información junta. Arrancamos.

Primeramente hay que hacer algunas definiciones importantes para evitar ambiguedades.

Open source

El término Open Source surge como desambiguación de la definición de software libre, que en inglés sería free software, lo cual daba lugar a entenderlo como software gratuito o libre dependiendo quien lo leyera. El software Open Source permite a los usuarios ver y modificar el código fuente. Su filosofía se rige por 10 principios básicos:

  1. Libre redistribución: el software debe poder ser regalado o vendido libremente.
  2. Código fuente: el código fuente debe estar incluido u obtenerse libremente.
  3. Trabajos derivados: la redistribución de modificaciones debe estar permitida.
  4. Integridad del código fuente del autor: las licencias pueden requerir que las modificaciones sean redistribuidas solo como parches.
  5. Sin discriminación de personas o grupos: nadie puede dejarse fuera.
  6. Sin discriminación de áreas de iniciativa: los usuarios comerciales no pueden ser excluidos.
  7. Distribución de la licencia: deben aplicarse los mismos derechos a todo el que reciba el programa.
  8. La licencia no debe ser específica de un producto: el programa no puede licenciarse solo como parte de una distribución mayor.
  9. La licencia no debe restringir otro software: la licencia no puede obligar a que algún otro software que sea distribuido con el software abierto deba también ser de código abierto.
  10. La licencia debe ser tecnológicamente neutral: no debe requerirse la aceptación de la licencia por medio de un acceso por clic de ratón o de otra forma específica del medio de soporte del software.

Para que la licencia pueda ser considerada Open Source debe cumplir además cinco criterios que están definidos por la Open Source Initiative:

  1. No mantener secretos intencionales: El estándar no debe ocultar ningún detalle necesario para una implementación interoperable. Como los errores son inevitables, el estándar debe definir un proceso para reparar erores durante la implementación y pruebas de interoperabilidad e incorporar dichos cambios en una versión revisada o subsecuente del estándar bajo términos que no violen el deecho Open Source.
  2. Disponibilidad: El estándar debe estar disponible libremente y públicamente (por ejemplo en un sitio Web estable) bajo términos libres de derechos y a un costo razonable y no discriminatorio.
  3. Patentes: Todos los patentes esenciales para la implementación del estándar deben ser licenciados bajo derechos libres para uso irrestricto o ser cubiertos por una promesa de no afirmación cuando sean utlizados como software open source.
  4. Sin acuerdos: No debe haber ningún requisito para la ejecución de un acuerdo de licencia, de no revelación, de concesión, aceso de clic por ratón, o de ninguna otra forma de papeleo para desplegar las puestas en práctica que conforman el estándar.
  5. Ninguna dependencia incompatible con los derechos Open Source: La puesta en práctica del estándar no debe requerir ninguna otra tecnología que no pueda resolver los criterios de este requisito.

Algunos ejemplos de licencias Open Source son las siguientes:

  • Academic Free License
  • Adaptive Public License
  • Apache Software License
  • Apache License, 2.0
  • Apple Public Source License
  • Artistic license
  • Attribution Assurance Licenses
  • New BSD license
  • Computer Associates Trusted Open Source License 1.1
  • Common Development and Distribution License
  • Common Public Attribution License 1.0 (CPAL)
  • Common Public License 1.0
  • CUA Office Public License Version 1.0
  • EU DataGrid Software License
  • Eclipse Public License
  • Educational Community License
  • Eiffel Forum License
  • Eiffel Forum License V2.0
  • Entessa Public License
  • Fair License
  • Frameworx License
  • GNU General Public License (GPL)
  • GNU Library o "Lesser" General Public License (LGPL)
  • Historical Permission Notice and Disclaimer
  • IBM Public License
  • Intel Open Source License
  • Jabber Open Source License
  • Lucent Public License (Plan9)
  • Lucent Public License Version 1.02
  • MIT license
  • MITRE Collaborative Virtual Workspace License (CVW License)
  • Motosoto License Mozilla Public License 1.0 (MPL)
  • Mozilla Public License 1.1 (MPL)
  • NASA Open Source Agreement 1.3
  • Naumen Public License
  • Nethack General Public License
  • Nokia Open Source License
  • OCLC Research Public License 2.0
  • Open Group Test Suite License
  • Open Software License
  • PHP License
  • Python license (CNRI Python License)
  • Python Software Foundation License
  • Qt Public License (QPL)
  • RealNetworks Public Source License V1.0
  • Reciprocal Public License
  • Ricoh Source Code Public License
  • Sleepycat License
  • Sun Industry Standards Source License (SISSL)
  • Sun Public License
  • Sybase Open
  • Watcom Public License 1.0
  • University of Illinois/NCSA Open Source License
  • Vovida Software License v. 1.0
  • W3C License
  • wxWindows Library License
  • X.Net License
  • Zope Public License
  • zlib/libpng license

En el caso de Microsoft la licencia que está en proceso de validación es la Microsoft Open Specification Promise, que estalece desde el 16 de octubre de 2006 la apertura como software de código abierto en cumplimiento con los criterios de Open Source Initiative los alcances que Microsoft tenga en los esfuerzos realizados sobre las siguientes especificaciones:

Servicios Web

  • Identity Selector Interoperability Profile v1.0
  • WS-I Basic Profile
  • Remote Shell Web Services Protocol
  • WS-Management
  • SOAP
  • WS-Management Catalog
  • SOAP 1.1 Binding for MTOM 1.0
  • WS-MetadataExchange
  • SOAP MTOM / XOP
  • WS-Policy
  • SOAP-over-UDP
  • WS-PolicyAttachment
  • Web Single Sign-On Interoperability Profile
  • WS-ReliableMessaging
  • Web Single Sign-On Metadata Exchange Protocol
  • WS-RM Policy
  • WS-Addressing
  • WS-SecureConversation
  • WS-AtomicTransaction
  • WS-Security: Kerberos Binding
  • WS-BusinessActivity
  • WS-Security: Kerberos Token Profile
  • WS-Coordination
  • WS-Security: Rights Expression Language (REL) Token Profile
  • WS-Discovery
  • WS-Security: SAML Token profile
  • WSDL
  • WS-Security: SOAP Message Security
  • WSDL 1.1 Binding Extension for SOAP 1.2
  • WS-Security: UsernameToken Profile
  • WS-Enumeration
  • WS-Security: X.509 Certificate Token Profile
  • WS-Eventing
  • WS-SecurityPolicy
  • WS-Federation
  • WS-Transfer
  • WS-Federation Active Requestor Profile
  • WS-Trust
  • WS-Federation Passive Requestor Profile

Especificaciones de virtualización

Seguridad

Formatos Office XML

Robótica

Algunas de las características de la promesa son que estas especificaciones pueden ser utilizadas libremente y fácilmente desde ahora en adelante; no es necesario ni siquiera informar a Microsoft acerca de uso de la licencia open para la implementación de aplicativos o soluciones pero obviamente el uso de las especificaciones implícitamente indica su aceptación; la licencia es viral; existe el compromiso de mantener los estándares abiertos y darles soporte (no es una licencia "AS-IS", que sería como: no nos hacemos responsables si decides salir a producción con nosotros); permite la creación de obras libres o comerciales a partir del uso de las especificaciones sin restringir las tecnologías que deban implementarse con ellas.

La razón de la apertura de Microsoft al licenciamiento Open Source es simple: la comunidad de desarrolladores ha creado más de 79000 aplicaciones Open Source utilizando tecnologías Microsoft, además los clientes comunes de la compañía con empresas que utilizan tecnologías Open Source tales como SugarCRM, MySQL, Novell, JBoss, Zend, XenSource, Sun Microsystems, Mozilla, Aras, SpikeSource, y Xorp han generado un nicho de colaboración de negocios cada vez más grande para entregar valor a partir de la colaboración en el ámbito del código abierto.

Una gran gama y variedad de aplicaciones de código abierto basadas en tecnología Microsoft pueden encontrarse en sourceforge.net, CodePlex y Google Code. Se apoya bastante el trabajo de la comunidad de desarrollo a partir de sitios de la compañía tales como Coding4Fun.

Además algunos ejemplos importantes de código abierto de la compañía se pueden encontrar en los ejemplos de la librería MSDN, y en TechNet. Existen ya incluso implementaciones de aplicaciones de código abierto tales como:

  • IronPhyton. -Lenguaje Phyton para implementación de lenguajes ágiles bajo .NET
  • ASP.NET AJAX. - Implementación de código abierto de JavaScript para comunicación con objetos del lado del servidor.
  • SharePoint Learning Kit. - Un kit de código abierto que permit la colaboración de grupos académicos utilizando SharePoint Server.
  • WiX. - Instalador de aplicaciones de código abierto basado en XML.

Y bueno, el principal debate en la red es respecto a la estandarización ISO de Office Open XML, que es un estándar compuesto de 27 espacios de nombres y 89 módulos de esquema, todos abiertos, la especificación se divide en los lenguajes de marcado ennumerados a continuación:

  • WordprocessingML - Utilizado para procesamiento de textos.
  • SpreadsheetML - Utilizado para procesamiento de hojas de cálculo
  • PresentationML - Utilizado para definir presentaciones
  • DrawingML - Para dibujo
  • VML (en discusión) - Para dibujo con vectores
  • Office Math ML - Para notaciones matemáticas, distinto del estándar MathML de la W3C pero convertible fácilmente por XSLT

La especificación está dividida entro de ECMA en documentos que tratan acerca de tratamiento de documentos docx y pdf y su fin último es entregar a la comunidad un estándar de la industria que permita la interoperabilidad de Office con cualquier desarrollo libre.

Otro estándar abierto es XAML, que es el lenguaje de marcado utilizado en Windows Presentation Foundation, del cuál he escrito recientemente en varias entradas.

Si bien se puede discutir largamente en la red el tema lo importante, lejos de ser un tema de "estar a favor o en contra de Microsoft", la discusión es acerca de lo positivo que puede ser contar con un formato unificado para los documentos apoyado por toda la industria, algo que produciría sin duda un efecto tan positivo como el que experimentó anteriormente, por ejemplo, el HTML a partir de contar con un estándar ISO perfectamente documentado y aprobado en torno al cual construir, evitando un mundo con innecesarias incompatibilidades.

Etiquetas: , , , , , ,

Microsoft Open Source

Escrito por Alfonso Lara Ramos @ 12:55

Busca Microsoft Open Source en Technorati | Guarda Microsoft Open Source en Yahoo | Guarda Microsoft Open Source en Google Bookmarks | Envía Microsoft Open Source a Furl | Envía Microsoft Open Source a Newsvine | Guarda Microsoft Open Source en Ma.gnolia.com | Envía Microsoft Open Source a Reddit | Envía Microsoft Open Source a BarraPunto | Envía Microsoft Open Source a Digg | Envía un Meme sobre Microsoft Open Source | Guarda Microsoft Open Source en del.icio.us | Envía Microsoft Open Source a Fresqui | Menea Microsoft Open Source en Menéame

Contenidos relacionados: Google, Live Search, Tafiti, Yahoo

Lecturas recomendadas


Suscripciones

Impulsado por FeedBurner
Impulsado por Feedburner
Suscríbete a ChicoDotNet utilizando Google Suscríbete a ChicoDotNet utilizando netomat Hub Suscríbete a ChicoDotNet utilizando Plusmo Suscríbete a ChicoDotNet utilizando Newsburst Suscríbete a ChicoDotNet utilizando Attensa Suscríbete a ChicoDotNet utilizando My Yahoo Suscríbete a ChicoDotNet utilizando NewsGator Suscríbete a ChicoDotNet utilizando netvibes Suscríbete a ChicoDotNet utilizando The Free Dictionary Suscríbete a ChicoDotNet utilizando Bitty Suscríbete a ChicoDotNet utilizando Excite MIX Suscríbete a ChicoDotNet utilizando Pluck Suscríbete a ChicoDotNet utilizando Webwag Suscríbete a ChicoDotNet utilizando podnova Suscríbete a ChicoDotNet utilizando ZapTXT Suscríbete a ChicoDotNet utilizando NewsAlloy Suscríbete a ChicoDotNet utilizando flurry Suscríbete a ChicoDotNet utilizando Pageflakes Suscríbete a ChicoDotNet utilizando ODEO Suscríbete a ChicoDotNet utilizando PodcastReady Suscríbete a ChicoDotNet utilizando Bloglines Suscríbete a ChicoDotNet utilizando My AOL Suscríbete a ChicoDotNet utilizando Rojo

Portal de contenidos impulsado por Blogger | Ejemplos de código impulsados por ASP .NET 2.0 | Sindicación Atom válida | Sindicación RSS 2.0 válida | ChicoDotNet es un portal impulsado por Aynkia Desarrollo: Aplicaciones Web, Windows y Smart Client | ©© Algunos derechos reservados 2006 Aynkia Systems Consultores. El contenido de este sitio Web está regulado por una licencia Creative Commons Attribution 2.5 License

Ranking de ChicoDotNet en Blogalaxia

Obtén vistas previas utilizando Snap.com