Populariteten hos applikationsprogrammeringsgränssnitt (API) är nu sådan att de betraktas som enbart en annan del av en webbutvecklareens arsenal.

Anledningarna till API-användningen är många, men beror främst på tillgänglighet, i den meningen att du får tillgång till massor av data och funktionalitet som du inte skulle kunna ha råd till eller utveckla på egen hand.

Developer Tantek Çelik liknar API: er till byggstenar, vilket gör att kunniga utvecklare snabbt kan använda rikare applikationer, webbplatser, verktyg och tjänster. Webbredaktören Patrick H Lauke håller med om att tillägga att en viktig fördel med API: er är att utnyttja tjänster som ger smal funktionalitet mycket bra.

"Det finns Flickr för bildhantering, Amazon S3 för lagring, Twitter för mikrobloggtjänst", säger han. "I många fall är det kostnadseffektivt att använda dessa snarare än att bygga skräddarsydda eller separata ekvivalenta funktionaliteter." Med andra ord, som utvecklare Shaun Inman säger: "Du avlastar din innehållshantering och relaterat underhåll, men sedan sammanfattar innehållet på dina egna webbplatser."

Gammeldags sätt att inbädda "utländskt" innehåll, som ramar, blir sällsynt när API: er används och, förutom att API: er ändras, kommer innehållet på ett förutsägbart och ofta stiligt sätt, så att du kan omorganisera innehåll som du ser.

En annan fördel, säger Yahoo-utvecklaren evangelisten Christian Heilmann, är i API-användningen, vilket möjliggör att dina data kan spridas utöver de webbplatser som den aggregeras på: "Om jag laddar upp foton till Flickr för att inkludera på min webbplats, är alla konverteringar gjorda för mig gratis . Dessutom knyter jag till en grupp människor som är intresserade av taggning och kommenterar mina data. Det här kan dras tillbaka för att lägga till nyckelord och göra mina uppgifter mer sökbara av sökmotorer. Och om min server går ner kommer informationen fortfarande vara tillgänglig. "

I CHARTS: Twitter plus Google Chart API aktiverade Christian Heilmann för att skapa "Twitter typ" diagram

Få kreativitet

Självklart, med API: s popularitet och deras relativa användarvänlighet är det naturligtvis en fara att gå "API-galen" - med så många som möjligt. "Du vet att du inte använder API: er korrekt när du, istället för att tänka på något du vill uppnå och söka efter ett API för att hjälpa dig, hitta i stället coola API och undra var du kan använda dem", varnar utvecklaren David Dixon.

Det är också uppenbart att även om "typiskt" API-genomförande är bra för vissa webbplatser, bör bättre designers gå vidare. "Kreativitet kontra" listor med data "är min favorit sak att rant om," hävdar gränssnittsutvecklare Amy Hoy. "Generiska designers lider av" det ligger bara där "syndrom, för det är det som uppgifterna gör: ligger där, halka, livlösa och obehagliga."

Hoy konstaterar att ingen slösar bort tid varför de skulle bry sig om din "sak", så du måste engagera dem och hålla fast: API-användningen måste vara relevant, erbjuda visuell intresse och ge en anledning till att någon bryr sig om dina data.

"Information talar inte för sig själv" fortsätter Hoy. "Vi måste ge det en röst. För att göra det måste vi förstå data men också mänsklig natur - data är inte information utan hjärna och personlighet för att tolka det."

Det betyder inte att användningen av API bör vara förknippad med konst och bort från det praktiska, bara att mer tanke behöver gå in på varför API: er används och relevant visuell design. Lauke talar om webbplatser som "integrerar olika datasätt för att avslöja framträdande beteenden, oväntade korrelationer eller serendipity, eller ge en erfarenhet till slutanvändaren som är rikare och mer engagerande" och citerar Dopplrs visning av användarens tidigare resor.

Detta blandar Dopplr-tripdata med Flickr-fotografier som användaren tog under en reses tidsram, korshänvisnings kalenderhändelser och relevanta stadsguider. Varje komponent kan likna Hoys livlösa data, men kombinationen är övertygande.

Naturligtvis handlar API inte bara om mash-ups och datavisualisering. "De kan användas på subtila sätt som skapar bättre användarupplevelser," förklarar Çelik.

Som exempel påminner Brendan Dawes om att en klient av hans tidigare måste logga in i Brightcove, ladda upp en video, kopiera URL-adressen, flytta till deras CMS och lägga till innehållet. "Genom att använda Brightcove API, integrerade vi videoöverföringsdelen av arbetsflödet inom CMS. Genom att använda ett API var arbetsflödet förenklat och användarvänligare, säger han.

Dawes tar också "subtil" ytterligare, med färgade trådar på brendandawes.com skapad från hittade paletter med hjälp av colorlovers.com API. "Varför? Eftersom paletterna skapas av människor, så kan jag vara säker på att användandet av översta paletter från en sökning efter ordet" kärlek "kommer att återge färger som nästan alltid fungerar", förklarar han.

"Integreringen av API lägger så mycket till estetiken, och paletterna växer över tid, tillverkade av mänskliga händer, så jag blir ständigt överraskad av färger som visas på min egen sida."

Explorerar API-utvecklaren Andrew 'Spode' Miller säger att erfarenheten av API-er har lärt honom att de för det mesta har en underliggande likhet: du begär information, får XML tillbaka och bearbetar den. Men även de mest använda API: er skiljer sig enormt när det gäller funktionalitet.

Så populärt att det är nästan allestädes närvarande, arbetar med Google Maps knappast som om du använder ett API. "Men glöm inte Google Maps var ansvarig för web APIs popularitet," säger Cameron Adams. "Innan visste vi knappast hur viktigt det var att få tillgång till geoinformation. Nu kan vi inte leva utan det."

Även om verktyg finns som betyder att du sällan behöver gå nära API, är det fortfarande praktiskt för att dynamiskt lägga till data på en karta: i Adams workshops tar han de senaste CNN-nyhetsberättelserna, konverterade från RSS till JSON via Yahoo Pipes, geokoderar deras plats ( med kartor) och drar dem på en karta.

Engage Interactive developer Neil Charlton anser att Google Maps är det perfekta exemplet på hur användarna kan dra nytta av användningen av API: er: "Det ger enkla kartor, komplexa ruteplanering och en realtids geokodad dataskärm, med satelliter, otaliga kameror och en massiv index över platser och namn. Om det inte fanns, skulle få användare kunna skriva något liknande. "

SMART CMS: Engage Interactive CMS erbjuder rubriken "e-marketing" -kampanjstatistik och webbstatistik på instrumentpanelsidan

Google Maps är fortfarande inte felfritt, men API-typernas karaktär är att de är utdragbara. Irked av bristen på tangentbordstillgänglighet som standard som Google Maps-kontroller, använde Lauke API-metoder för att tillverka sin egen uppsättning som hakar i standardmetoderna. "Ett API kan hantera situationer där en webbplats eller tjänst inte som standard ger ett tillgängligt gränssnitt," tillägger han.

På samma sätt bidrog tillgängligheten till att Heilmann skapade Easy YouTube, en YouTube-spelare för personer med inlärningssvårigheter: "En konferenshögtalare klagade över bristen på en videospelare för personer med inlärningssvårigheter. Eftersom YouTube tidigare släppt sitt" chromeless "spelare API månad, ansåg jag det som ett perfekt tillfälle att ta en tur. "

Efter att ha anmält sig till en nyckel arbetade Heilmann med demosidan, som gav externa kontroller för "play", "stop" och ladda en film. API: n fick runt Flash-tillgänglighetsproblemet av endast IE, vilket möjliggjorde att komma in i en film med ett tangentbord. Med återkoppling från e-postlistor gick spelaren igenom flera iterationer, och den slutliga versionen vann pengar för Scripting Enabled-konferensen.

Heilmann noterar att trots att han ursprungligen bara ville ha en YouTube-spelare med större kontroller skapade han oavsiktligt en tillgänglig spelare som fick honom tack från blinda användare - och allt började med ett API.

ÅTERFÖRA EN BEHOV: Tillgänglighetsproblem inspirerade Christian Heilmanns Easy YouTube, en spelare för personer med inlärningssvårigheter