Distribuir contenido Desarrollo

La era de las plataformas como servicio

Google App Engine es el movimiento más importante en tecnologías de la información en lo que llevamos de año. Y lo es no porque se haya inventado un modelo ni porque haya sido Google (aunque esto pese), sino porque plantea las plataformas como servicio de una forma pasmosamente sencilla y entra en dicho mercado insinuando una reducción considerable de precios. Las plataformas como servicio vienen a suponer que el desarrollador de aplicaciones web se olvida de almacenaje de ficheros, de gestión de la base de datos, de balanceo entre máquinas, de ancho de banda, de escalabilidad, de picos de demanda, de estabilidad, de tocar una máquina servidor... en definitiva, la plataforma sobre la que construyes tu aplicación web ya no es cosa tuya, es del servicio que contratas y que pagas religiosamente.

Concentrarte en tu aplicación y ahorrar costes, son las dos ventajas inmediatas de las plataformas como servicio. No sólo porque vendan almacenamiento y ancho de banda más barato que un pequeño proveedor, sino porque también adquirir el conocimiento para montar arquitecturas que escalen cuesta mucho dinero (o muchos años de esfuerzo, aunque el rol de administrador de sistemas va a cambiar mucho si se impone como tendencia). Por supuesto tienen sus peros, como comentamos en "tu aplicación sobre web services": depender de un único proveedor (algo con lo que tener mucho cuidado, diseñando la aplicación para tener poco acoplamiento y probándola también siempre en un servidor de toda la vida) y comerte también sus caídas, aunque se antoja improbable que por uno mismo se consiga la disponibildiad de Amazon o Google.

El movimiento de estos dos gigantes de la web (en el mercado de las aplicaciones como servicio también está Salesforce con Force.com o Joyent) es una lucha por el rol por el que siempre ha apostado Microsoft con todas sus fuerzas: ser la plataforma sobre la que otros construyen sus aplicaciones, tanto en el escritorio como en el lado del servidor. De hecho, aunque la estructura de costes suponga un ahorro considerable respecto a mantener tu propia infraestructura y administradores, el modelo se asemeja, en lugar de pagar licencias y/o mantenimiento, se cobrará por recursos consumidos mensualmente. ¿Significa esto que Redmon está fuera de juego? Probablemente no, siempre han hecho por llegar a los mercados más tarde que sus competidores y aprovechar su capacidad de integración con el resto de su universo (que en el caso del mundo de los desarrolladores es brutal). Algo sacarán y competirán también en el cloud computing, aunque la batalla se juega en el terreno rival y me da que esta vez es Google quien asemeja cada vez más a los gigantes que han dominado épocas de la tecnología de la información como han sido IBM y la propia Microsoft.

Sobre Google App Engine y las plataformas como servicio se ha escrito ya bastante e interesante. Muy recomendable el post de Víctor, "El futuro es distribuido" y la aproximación más técnica de Gallir. En inglés, me quedo con las reflexiones de Dan Faber, a quien he robado el título del post.

Visual Studio 2008 gratis... para estudiantes

Visual Studio 2008Visual Studio 2008 pro gratis para estudiantes, junto a un buen montón de herramientas de desarrollo, entre las que están Expression, XNA Game Studio 2.0 y los servidores Windows Server 2003 Standard y Microsoft SQL Server 2005 Express. La descarga se debería poder hacer desde Channel8, pero el "sistema de verificación de que eres universitario" no funciona, al menos en el caso de alumnos de la UNED.

Esto supone una política todavía más agresiva por parte de Microsoft para incentivar el uso de sus herramientas por estudiantes, ya ofrecía la gama de productos "Express", pero ahora la apuesta es por dar gratis las herramientas profesionales completas. De hecho Visual Studio siempre me ha parecido un IDE de lo mejorcito del mercado y aunque todavía no he jugado con Visual Studio 2008, es poco probable que Microsoft haya resbalado con él.

Partiendo de que los ingresos en este mercado están en el mercado corporativo, se entiende que el interés de Microsoft esté en que el máximo número de estudiantes aprendan con su tecnología, potenciando la adopción de ".NET" al máximo. En mi época de estudiante el debate acerca de prácticas que obligaban a utilizar software propietario de pago ya estaba candente y Microsoft quiere eliminar el tema económico de la ecuación: la elección ya es entre apostar por herramientas y tecnologías libres o propietarias, no de pago o gratuitas. Un debate con muchas aristas y en el que hay que hilar muy fino para que no caer ni en la trampa de que el debate es sólo el coste de adquisición ni en la limitación que supone a día de hoy el establecer la universidad sólo puede usar herramientas libres.

También lo comenta César.

Relacionado: Office 2007 Ultimate de rebajas para estudiantes.

El día que Amazon S3 estuvo caído

Amazon Web ServicesAyer estuvo caído durante más de tres horas Amazon S3, el sistema de almacenamiento vía web service que utilizan muchos servicios de internet (Smugmug, Twitter) y del que hemos hablado por aquí bastante (Tu aplicación sobre los Amazon Web Services (EC2, S3...), Amazon S3 y el ahorro de costes).

Esta caída del web service de Amazon ejemplifica uno de los riesgos de basar tu página en web services o APIs de terceros, irremediablemente un elemento clave de tu servicio queda en manos de otra empresa y tanto la disponibilidad como el tiempo de respuesta quedan en sus manos. Por eso es clave, siempre que nos planteemos una aplicación sobre APIs de terceros tener por escrito y pactado un nivel de servicio. En el caso de Amazon tienen un un SLA que garantiza un 99'9% de disponibilidad, lo que supone un máximo de 9 horas de caída al año y contempla indemnizaciones en caso de no cumplirse.

Más información en el blog de Nick Carr.

Los Web Services de Amazon consumen más ancho de banda que la tienda

Amazon Web ServicesLos Web Services de Amazon consumen más ancho de banda que la tienda online y, a falta de tener datos concretos sobre el margen de beneficios que supone cada área para Amazon, es un dato que muestra a las claras que la estrategia de Amazon con los mismos está siendo todo un éxito y la base de un nuevo paradigma para la creación de servicios online. La suma de todos aquellos que utilizan su infraestructura, genera un tráfico mayor que la tienda online más grande del planeta. De hecho, ya han llegado a los 330.000 desarrolladores registrados para los web services

Junto a este dato - destacado por R/W - Amazon ha anunciado unas cifras excelentes del último cuarto del año, con un aumento del 42% en los ingresos. Análisis detallado en NYT.

Más sobre los Web Services de Amazon:

Tomatime, código libre para crear redes sociales

tomatimeTomatime es una red social cuyo código ha sido liberado y está disponible para descarga. El resultado es que cualquiera puede cogerlo, modificarlo, instalarlo y utilizarlo para crear una red social en su propio servidor, aunque por su tipo de licencia no es adecuado para usos profesionales. Sus creadores, Flowers In Space (apunten su nombre porque este año creo que van a dar que hablar), han elegido para Tomatime lo que llaman una licencia "Web Retrosocial": puedes hacer lo que quieras con el código, pero si obtienes un beneficio de él debes destinarlo a ayuda infantil mediante un sistema de votación de los usuarios que tengas (lo que no deja de ser una limitación importante de la libertad de uso).

¿Para qué se puede utilizar entonces Tomatime? Bueno, hay muchas organizaciones a las que les puede venir muy bien, una red social puede articularse como un complemento de la experiencia en un sitio web con más elementos y, en todo caso, la licencia apunta a los beneficios, no a los ingresos. A esto hay que sumar que Tomatime está construido sobre Ruby on Rails, por lo que también es un proyecto interesante de cara a aprender sobre este framework.

Una propuesta muy muy interesante la de Tomatime. Ahora mismo las opciones más populares de CMS para crear una red social sin tener que empezar de 0 son Dolphin (que no me acaba de convencer), Drupal (requiere bastante trabajo adicional, pero es la que más me gusta), Movable Type Community Solution de Six Apart (lo conozco muy poco, lo confieso) y también tenemos a Ning, que me resulta muy rígido. Tomatime puede ser una opción más a considerar si la red social que quieres montar no tiene ánimo de lucro y te gusta la idea de destinar los beneficios a ayuda infantil.

Para ver la implementación, puedes hacerlo en Tomatime. Descarga de código en el proyecto en Google Code.

Amazon SimpleDB

Amazon Web ServicesAmazon SimpleDB es el nuevo web service que se une a S3, Ec2 y Payments. Definen a SimpleDB como un "web service para ejecutar consultas sobre datos estructurados en tiempo real, fácil de utilizar sin la complejidad de las bases de datos relacionales" (Amazon).

Amazon SimpleDB puede chocar a quienes estamos acostumbrados a trabajar con base de datos relaciones, las bases de de datos de SimpleDB no tendrán esquema que defina su estructura, cuando cambiemos algo de la misma no habrá que modificarlo por tanto, sino que el sistema hará todo el trabajo por nosotros (algo que lleva haciendo mucho tiempo Velneo, por ejemplo, y similar a como trabaja Rails). Todas las acciones las ejecutaremos vía la API y todos los datos estarán en la "nube" de Amazon, en el que se depositan los problemas de escalabilidad, disponibilidad y eficiencia.

Una base de datos bajo demanda en la que se paga según consumo. El paso dado frente a S3 es que no sólo podemos almacenar ficheros sino que podemos hacer consultas complejas ante datos estructurados. A falta de ver análisis y ver que tal ejecutan (aunque creo que a estas alturas se puede dar un voto de confianza), podríamos afirmar que de nuevo Amazon ha dado un paso genial en su infraestructura de web services, a la que todo que que se esté planteando montar un servicio online debería echar un vistazo.

Más información R/W, GigaOm.

Relacionado: Tu aplicación sobre los Amazon Web Services (EC2, S3...).

SourceForge MarketPlace para vender servicios y soporte de software libre

sourceforge-marketplace

Hacer negocio con el software libre ofreciendo soporte y servicios, desde instalación hasta consultoría pasando por desarrollos a medida sobre un proyecto, formación o simplemente resolviendo incidencias que se vayan presentando. La típica respuesta que se da desde el software libre cuando el escéptico de turno pregunta acerca del negocio que puede haber cuando no se paga una licencia, plasmada en SourceForge MarketPlace. El funcionamiento se podría catalogar de un "eBay para el soporte y servicios sobre software libre" pero sin pujas, nos podemos posicionar como expertos en un determinado proyecto (estipulando el precio) y ofrecer nuestro trabajo o demandar un determinado servicio y escuchar ofertas (aunque esto se hace aparte, en un foro). Aparecer es gratis, pero SourceForge MarketPlace se lleva un pellizco de cada transacción (un diez por ciento).

Claro que ya hay un montón de directorios donde podemos contratar a un freelance, pero Sourceforge parte de entrada con ser el mayor repositorio de software libre de la red, con lo que el potencial para congregar un ecosistema como este alrededor suya es bestial. Podemos ver, como ejemplo, los que ofrecen servicios sobre OpenBravo o Drupal. Por supuesto, incluye un sistema de evaluación del proveedor para introducir la reputación dentro de la comunidad.

El giro en el modelo de negocio que está introduciendo el software libre de un pago por licencia a cobrar más por servicios y soporte favorece a priori a los proveedores locales. Como toda consultoría, tener cerca al proveedor para poder reunirte y llamarlo en cualquier momento es un valor añadido frente a externalizar con uno remoto (nada distinto de lo que ha sucedido siempre, sólo que en este caso no se paga una licencia al fabricante y el dinero se queda en donde se provee el servicio). SourceForge MarketPlace es, de alguna manera, un ejemplo de como la globalización llega también a este tipo de servicios informáticos: a buen seguro que los demandantes de los mismos van a querer seguir viendo una cara local en cada momento, pero eso no significa que quien implemente las soluciones no se encuentre en la otra punta del planeta. Y eso, para los proveedores locales, supone un fabuloso problema... y una oportunidad.

Más información en Linux Watch.

Ojo a Silverlight 2.0

silverlightEra sabido que la batalla por ser la tecnología preponderante en las RIA (Rich Internet Applications) con Flash no iba a ser cosa de un día y Microsoft va a insistir en Silverlight. En el blog de Scott Gu se anuncia que habrá beta de Silverlight 2.0 en el primer trimestre de 2008. En realidad se trata de renombrar lo que iba a ser la versión 1.1, pero la apuesta de Microsoft está clara: más soporte a protocolos de comunicaciones (REST entre otros), un montón de nuevos controles y, sobre todo, permitir a los desarrolladores que utilicen gran parte del framework para interfaces de las WPF (Windows Presentation Foundation). ¿Qué consiguen con esto? Pues básicamente permiten a sus desarrolladores de escritorio crear aplicaciones web con Silverlight 2.0 empleando los mismos elementos que ya utilizan.

Es justo el camino contrario que está recorriendo Adobe con Air, permitir a los desarrolladores web hacer aplicaciones para el escritorio. En un mercado en el que "captar programadores" para una plataforma se está convirtiendo en toda una guerra entre plataformas (Facebook Vs OpenSocial, las distintas tecnologías de widgets, las APIs...), permitir a los que ya tienes extender su "radio de acción" parece ser la estrategia elegida. Curioso enfrentamiento de dos compañías empeñadas en imponer sus tecnologías y extenderlas al "terreno de juego" natural del contrario: Microsoft a la web, Adobe al escritorio.

De entrada es Adobe quien parte de una mejor posición. El mercado con más futuro es la web y la base de usuarios con plug-in Flash en el navegador es una baza con la que es difícil competir, aunque el nivel de Silverlight es alto y en todo caso, uno prefiera una web libre de runtimes propietarios como son los de ambas compañías.

Microsoft Sync Framework en la era de la sincronización

Sincronización

Ya está disponible para descarga la primera versión de prueba del Microsoft Sync Framework, una tecnología que permitirá "acceso offline a aplicaciones, servicios y dispositivos". Aunque inmediatamente se piense en Google Gears como referencia, Microsoft Sync Framework es muy diferente: no se trata de un plug-in para el navegador que permite uso sin conexión de algunas aplicaciones web, es un framework para desarrolladores que en principio permite construir aplicaciones sincronizadas mucho más potentes (vía ZdNet).

Un ejemplo de lo que podría hacer una aplicación basada en Microsoft Sync Framework sería una que permitiese tener sincronizados la cámara de fotos, el teléfono móvil, el ordenador portátil, el ordenador personal y el servicio online para almacenar imágenes. Funcionaría de manera que, de forma transparente para el usuario, cada vez que enchufara la cámara a uno de los equipos se transmitieran las imágenes y cuando hubiese conexión en ellos se sincronizasen con el servicio online, al igual que el teléfono. La clave de la propuesta está en ese "transparente para el usuario", que no necesitaría ordenar, más allá de la configuración de la aplicación, transmisión de datos alguna. Eso sí, Microsoft Sync Framework parece a priori sólo válido para el universo Microsoft (descarga), más información), algo que en un entorno tan heterogéneo convertiría en directamente inútil el esfuerzo: a día de hoy no se puede plantear una solución de sincronización esperando que el usuario tenga windows en todos sus dispositivos.

La sincronización vuelve (recuerdo que era un problema popular en mis tiempos de la carrera de informática) en un escenario en el que cada vez tenemos más ordenadores y dispositivos susceptibles de crear, almacenar y ejecutar. Si bien muchos dibujan un futuro "siempre conectados", lo cierto es que mientras eso llega nos quedan muchos años de portátiles sin conexión y teléfonos sin cobertura (o con un precio de conexión escandaloso) .

Oauth, identificación abierta

OauthPara valorar en su justa medida OpenSocial, creo que hace falta echar un vistazo a Oauth, un estándar abierto cuyo último borrador fue lanzada hace apenas un mes. Oauth define un mecanismo para que una aplicación web (cliente) pueda acceder a la información de un usuario en otra (proveedor) sin tener que informar a la primera del usuario y contraseña.

Imaginemos que queremos programar una aplicación tipo "página de inicio para el usuario", en la que este pueda añadir sus fotos de Flickr. Para ello utilizaremos el API de Flickr, le pediremos el nombre de usuario y contraseña al usuario y armaremos dicha página. En este tipo de situaciones es en el que Oauth tiene sentido, comunicaciones entre aplicaciones web en la que hay acceso a datos de usuario. La idea es que la aplicación cliente (en este ejemplo nuestra página de inicio) no tenga acceso al nombre de usuario y contraseña del usuario. Dicho de otro modo, Oauth es una metodología para identificación mediante APIs genérica y de implementación gratuita. Si estas cansado de servicios que te piden el usuario de Gmail o Hotmail para proveerte de tal o cual funcionalidad, ya puedes ir viendo por donde puede estar la utilidad de un protocolo como Oauth.

Por supuesto ya hay un montón de estándares cerrados que hacen esto, por ejemplo Google AuthSub o las APIs de Flickr y Facebook, pero la idea tras Oauth es unificar en un estándar abierto de forma que este tipo de comunicaciones entre aplicaciones web (bueno, el cliente puede ser web o de escritorio) no se articulen mediante protocolos propietarios.

Inmediatamente uno piensa en OpenId, pero Oauth no sustituye este estándar para identificación de usuarios, sino que lo complementa. De hecho, los usuarios nunca "ven" nada relacionado con Oauth, situado en el nivel de comunicación entre aplicaciones. De hecho, gran parte de la gracia de Oauth es que el usuario controle a qué datos acceden terceras aplicaciones. Siguiendo con el ejemplo de Flickr, se podría establecer qué tipo de fotos sí y cuáles no desde el servicio proveedor y los clientes no podría obtener nada más.

Como dato curioso, detrás de Oauth están Pownce, Twitter, SixApart, Jaiku, Flickr, Ma.gnolia y Google entre otros, aunque este último parece que no lo soporta en OpenSocial de entrada. Entiendo que el motivo es que no hay una versión final del estándar todavía.

Más información en su sitio oficial, que tiene blog. En español hay referencias en eConectados y La cofa.


Suscripción

Introduce tu dirección de correo:

Ofrecido por FeedBurner

Feed rss Lectores con feedburner

Créditos