Apis

5
APIs, el Nacimiento del Software Interconectado Actualmente vivimos la revolucion mas importante de los ultimos 30 años en la industria de la Tecnologia de Informacion, originada a partir de la maduracion del concepto de Cloud Computing o Computo en la Nube (ver el post sobre Cloud Computing Parte 1 y Parte 2 ). Dentro del Cloud Computing existe un componente tecnologico que tiene un impacto especialmente profundo en la arquitectura moderna de sistemas e incluso de manera mas relevante aun, en el incremento sustancial del potencial de dicho software de nueva generacion en el mundo de los negocios. Este nuevo componente es la API, que se refiere al concepto deApplication Programming Interface o Interfaz de Programacion de Aplicaciones en español, la cual esta definida como un conjunto de funciones y procedimientos (o metodos, en la programacion orientada a objetos) que ofrece cierta biblioteca para ser utilizada por otro software como una capa de abstracción. Explicado en términos sencillos, las APIs son conectores que un desarrollador construye para una aplicación informática, de manera que esta pueda interactuar con otras aplicaciones de terceros, bajo las reglas que el desarrollador de la API definió como permisibles. Las APIs son un cambio de paradigma del modelo de programación ya que lograron hacer practico lo que otros intentos anteriores y mas complejos como SOA (Service Oriented Architecture), nunca lograron

description

dd

Transcript of Apis

APIs, el Nacimiento del Software Interconectado

Actualmente vivimos la revolucion mas importante de los ultimos 30 aos en la industria de la Tecnologia de Informacion, originada a partir de la maduracion del concepto de Cloud Computing o Computo en la Nube (ver el post sobre Cloud ComputingParte 1yParte 2).Dentro del Cloud Computing existe un componente tecnologico que tiene un impacto especialmente profundo en la arquitectura moderna de sistemas e incluso de manera mas relevante aun, en el incremento sustancial del potencial de dicho software de nueva generacion en el mundo de los negocios.Este nuevo componente es la API, que se refiere al concepto deApplication Programming Interfaceo Interfaz de Programacion de Aplicacionesen espaol, la cual esta definida como unconjunto defunciones y procedimientos(ometodos, en laprogramacion orientada a objetos) que ofrece ciertabibliotecapara ser utilizada por otro software como una capa de abstraccin.Explicado en trminos sencillos, las APIs son conectores que un desarrollador construye para una aplicacin informtica, de manera que esta pueda interactuar con otras aplicaciones de terceros, bajo las reglas que el desarrollador de la API defini como permisibles.Las APIs son un cambio de paradigma del modelo de programacin ya que lograron hacer practico lo que otros intentos anteriores y mas complejos como SOA (Service Oriented Architecture), nunca lograron popularizar: que a travs de web services diferentes aplicaciones se hablaran entre ellas bajo un esquema de comunicacin predefinido, incluso tratndose de aplicaciones de desarrolladores diferentes.Si sumamos el fenmeno emergente deBig Data, donde se estn creando bases de datos interconectadas de una magnitud nunca antes vista, podemos prever una nueva generacin de aplicaciones donde el valor ya no resida en la funcionalidad tradicional sino en su capacidad de interconectarse en una especie de federacin con otras aplicaciones de terceros y bases de datos pblicas y privadas(a travs de estndares abiertos, basndose en niveles de servicio mutuamente acordados y con claras reglas de interoperabilidad que garanticen la seguridad), para entregar al usuario un beneficio mucho mayor que lo originalmente contemplado en aplicaciones tradicionales, aisladas y dedicadas a un solo cliente.Un ejemplo de estas aplicaciones informticas federadas (tambin llamadas mashups) que potenciaran su valor a travs de interconexiones mediante APIs, podra ser una desarrollada para controlar los gastos de viaje y representacin del personal de una empresa. Mas all de la funcionalidad bsica de registro y control de transacciones de los empleados, esta aplicacin podra: Mediante el API de Facebook (FB), hacer un registro y firma sencillo del empleado en la aplicacin, aprovechando la informacin de preferencias del empleado a travs de la social chart personalizada que proporciona Facebook; A travs del API de Google Maps ubicar anticipadamente en un mapa los diferentes destinos y rutas del empleado en el viaje de negocios; Mandarle a su celular un SMS cada vez que salga de un destino a otro, las rutas y recomendaciones que Google Maps gener, mediante una API como la de BlueVia de la empresa Telefonica Movistar; Agregar la informacin annima de gastos de viaje por rubro dentro de una base de datos publica accedida a travs de una API diseada para este efecto, y darle tanto al usuario como a la direccin de la firma una comparativo contra otras empresas, por tipo de gasto, por tipo de empleado, etc. Facilitar la agregacin automtica de demanda de la compaa para lograr descuentos por volumen en viajes, hospedaje, comidas, taxis, etc. a travs de una conexin tipo API con una empresa de comercio electronico que ofrezca un marketplace entre oferentes y compradores de este tipo de servicios.Este tipo de interaccion y nivel de informacion jamas se podria alcanzar con una aplicacion cerrada y dedicada solo a una empresa.Por esto consideramos que es inevitable que en un futuro la mayoria de las aplicaciones (incluyendo las empresariales) sean preferentemente consumidas en ambientes de nubes publicas, donde aumentaran drasticamente su valor (ver la Ley de Metcalfeque explica que el valor de una red es exponencialmente mayor conforme aumenta el numero de sus interconexiones) y solo algunas permaneceran encerradas en nubes privadas, por cuestiones de seguridad o de ser procesos aislados y especificos para una empresa.Para darse cuenta de la aceleracion en la creacion de nuevas APIs (y de las aplicaciones subyacentes que muchas veces son solo creadas con el proposito de volverse modulos constructivos de aplicaciones superiores), el sitioProgrammable Webse ha dedicado a registrar todas las APIs conocidas publicamente. A la fecha tiene casi 5,500 APIs en sus registros y diariamente registra decenas de nuevas APIs.Algunos ejemplos de estas son:Coface ICON API: Cofaces ICON API provides business-to-business services for purchasing and selling business credit reports. These credit reports are important, because they permit companies to assess the financial positions of their partners and their ability to fulfill commitments. Coface draws on its network of credit information subsidiaries and branches as well as its CreditAlliance partners to provide up-to-date information on millions of companies worldwide.

Twilio API:Twilio provides a simple hosted API and markup language for businesses to quickly build scalable, reliable and advanced voice and SMS communications applications. Twilio provides a telephony infrastructure web service in the cloud, enabling web programmers to integrate real-time phone calls into their applications.

Dark Sky API: Dark Sky is an app that predicts the weather using location to figure out when its going to precipitate in the immediate future. It is meant to forecast the weather for a given location up to an hour in advance.eLobbyist LegiScan API: The service provides nonpartisan monitoring for information about pending legislation. It tracks the progress of every bill introduced in the U.S. Congress and all 50 state legislatures through a single, uniform interface. It provides full-text search for legislative initiatives nationwide. Onuma WFS API: The Onuma Web Feature Service (WFS) provides access to Onumas geospatial data resources. This includes the locations and features of buildings, along with other Building Information Modeling (BIM) data. Users can query a specific geographic area determined either by input coordinates or by a drawn area that forms a bounding box.La arquitectura de computo basado en APIs har surgir modelos disruptivos de negocio y oportunidades muy significativas de inversin, al poner en entredicho los paradigmas que han prevalecido por dcadas. Algunos de estos posibles nuevos modelos de negocio son: Desarrollo de aplicaciones como servicio (AaaS) creadas para ser expuestas mediante APIs a desarrolladores externos, de manera que estos las usen como bloques constructivos de las suyas. Data as a Service (DaaS) donde grandes bases de datos publicas especializadas son consumidas a travs de APIs en un esquema de suscripcin o transaccin (API call). Uso de la API de una aplicacin de una empresa, como eje de un ecosistema o federacin de sus clientes o proveedores. Por ejemplo, una gran cadena de supermercados exponiendo su plataforma de Supply Chain para que sus proveedores de frutas y legumbres puedan ver sus necesidades en tiempo real, as como puedan ofertar con base en su produccin diaria. Desarrollo de App Campaigns que utilizando aplicaciones para telfonos mviles, ejecutan promociones especificas de marketing, recombinando diferentes APIs de terceros que atraigan y retengan a consumidores, generando valiosa informacin de mercado en el proceso.