Microsoft tiene ideas propias sobre el "código abierto", y una forma propia de aprovecharlo. El último ejemplo es algo de lo que Apple podría aprender.

Modelos de negocio diferentes

De entrada, nadie diría que Microsoft haya destacado por apoyar el código abierto tal como generalmente se le conoce. Más bien se les identifica con la lucha permanente por desacreditar Linux y cualquier modelo de desarrollo no tradicional. Pero las cosas están cambiando un poco, y el modo en que evolucionan es interesante. O más bien, debería ser interesante para otras empresas.

De entrada, dejemos claro que Microsoft sigue sin aceptar o adoptar el open source puro. Ha creado su propia versión del GPL, en torno a la idea de "Shared Source", que a los efectos es muy similar pero más cerrado. Y dejemos claro que Microsoft sigue pensando que su modelo de negocio es el software propietario y de pago, y éso es incompatible con un apoyo completo al código abierto.

¿Una vela a Dios y otra al diablo?

Por éso puede llamar la atención no sólo la existencia de Port25 (un laboratorio dedicado al software libre dentro de Microsoft) sino la recién anunciada apertura de Codeplex, un clon de SourceForge y sus hermanos dedicado a alojar proyectos "Shared Source" para Windows.

Codeplex ha empezado por alojar los cinco o seis proyectos Shared Source de Microsoft que corrían por distintos lugares de MSN y de la propia SourceForge, y ahora está admitiendo proyectos para alojamiento. Con calma. Y ni los proyectos de Microsoft ni los de los desarrolladores son poca cosa: hay aplicaciones serias, frameworks interesantes, y componentes para complementar aplicaciones de Microsoft que (lo admito) voy a explorar con interés.

Microsoft está jugando a los dos juegos, pero controlando muy de cerca las apuestas. Está manteniendo un control tan fuerte como puede (y de momento puede mucho) sobre el código de sus aplicaciones principales; apenas enseña parte de él a sus principales partners. Pero a la vez está liberando código en aquellas zonas en las que puede hacer crecer el ecosistema Windows sin invertir más, zonas bastante fundamentales o que podrían serlo (¿IronPython?). Y sobre todo se está intentando convertir en una parte legítima del movimiento de código abierto.

No cuela, del todo

Desde luego, estos movimientos no van a convencer a los portavoces del Open Source de que Microsoft ha dejado de ser el enemigo. Pero están atrayendo a cientos de desarrolladores en busca de un medio acogedor y apoyo comercial para sus proyectos. Recordemos que porque el código sea gratuito, no significa que quien lo produce no pueda beneficiarse de ello.

Por su parte Apple tiene una parte muy seria de su estructura software en código verdaderamente abierto… o al menos, mucho más cerca del código verdaderamente abierto. Además, colabora con distintos proyectos externos, e incorpora muchos componentes desarrollados por ellos. Acepta estándares abiertos en casi todas partes.

Pero lo que no está haciendo es cuidar activamente de la comunidad de desarrolladores Mac que elige trabajar en código abierto, sea estrictamente Mac o en multiplataforma. No les está arropando, no les está alojando, no les está implicando. Sí, hay documentación y sí, hay comunicación; pero no es lo mismo que ofrecer un soporte claro, útil, visible a esos desarrolladores. Pensemos en todos los que están ocupados en portar software abierto al Mac usando los distintos frameworks… todos ellos alojados fuera de Apple.

Developers, developers, developers

Lo hemos dicho muchas veces, y no es como si hiciera falta: ya lo dice Ballmer con mucha más contundencia.

Donde Apple perdió la batalla frente a Microsoft no fue en el hardware, fue en el software… y no en el sistema operativo, sino en las aplicaciones. Perdió a los desarrolladores porque Microsoft les dió un entorno de desarrollo bien hecho, barato y eficaz; porque les mimó; porque les compra cada día con un trato y unas condiciones que compensan cualquier deficiencia de Windows.

No es una broma. Symbian pierde desarrolladores cada vez que Microsoft saca la cartera y "apoya un desarrollo" exclusivo para Windows Mobile. Grandísimos desarrolladores lanzan la solución sobre Solaris o Linux meses (y a veces años) después que sobre Windows, y coincide con los que son sus partners. Y casi ninguno de ellos, aunque puedan, se molestan en certificar compatibilidad de sus aplicaciones Java con Mac.

Apple tiene aún mucho que aprender. Sí, ha lanzado un entorno de desarrollo muy bueno. Sí, se ha plegado a los estándares de la industria y facilita el trabajo todo lo que puede. Sí, documenta las cosas casi bien. Pero su nivel de implicación con los desarrolladores e integradores, a todos los niveles, tiene mucho que mejorar. Y es ésa implicación (al final, ese buen trato) lo que mantiene a un desarrollador tecleando con la sonrisa puesta.

Hay muchísimas empresas y desarrolladores de software corporativo que cumplen los estándares J2EE, cuyas aplicaciones corren sobre Mac, y no están ni certificados ni verificados ni incluídos en ninguna lista; no porque no quieran (no todos son socios de Microsoft) sino porque Apple no se preocupa de ello.

Hay muchísimos esfuerzos Open Source multiplataforma de calidad que deberían contar con la sensación agradable de que Apple sea consciente de ellos, los haga visible y los apoye… más allá de lo simbólico.

Señores de Apple: sigan aprendiendo de Microsoft. Técnicamente serán malos, pero son mucho mejores haciéndose indispensables para los usuarios. Y éso es lo que Apple necesita ser.

Developers, developers, developers.

Comenta este artículo en los foros.