TECH SENSE: What is an SDK?
Lately we’ve seen digital marketers throwing around the term “SDK,”even though traditionally that acronym only comes up in super geeky tech circles. So, what exactly is an SDK and why is everyone talking about it?
SDK stands for “Software Development Kit.” An SDK functions as a way for a programmer to hook into a device or software package and bring together different elements and functions that may already be established elsewhere, allowing access to additional functionality. It’s sort of like a common language that allows a programmer to access the guts of whatever he or she may be working with.
The concept of an SDK can be tricky because SDK’s are everywhere and used in many different ways. One way to look at an SDK is to compare it to a language: it communicates various ideas and functionalities from different sources to make something new. For example, the English language on a basic level is comprised of grammar, punctuation, letters and words. If you bundled those sets of rules together, that would be your “English” SDK. Now, if you wanted to build something, say, a poem, you’d start stacking those different layers and levels of intricacy using the elements and rules of your “English SDK” to create this poem, just like an SDK is used to build an app.
Almost every operating system has its own SDK, meaning its own language or set of functions that can expand functionality to applications. To maintain the visual and functional branding of each operating system, all of the design elements native to that platform are bundled into that operating system’s SDK, so that the programmer doesn’t have to reinvent those basic elements before moving forward to build something new. For example, Apple’s SDK is called X-Code. X-Code already contains all of the visual elements that make up Apple’s brand, such as fonts, colors, buttons, etc. But the SDK additionally allows access to the accelerometer, camera, screen settings, GPS controller, downloadable content, in-app payable content and so on—features that you may want to use in an app—preventing the need to “reinvent the wheel.” Windows has its own SDK, and so does Android, Linux, etc.
So, why are marketers starting to talk about SDKs? Since so many downloadable apps are free, some developers implement various advertising features into their application to earn money for their work. The developers use advertising SDKs to focus on building the application without having to worry about compatibility with the various ad servers, publishers and advertisers.
PointRoll, for example, can work with many different advertising SDK’s to serve rich media advertisements in these custom apps. These companies include AdMob, AdMarvel and Freewheel, just to name a few. Using a mobile advertising company’s SDK sometimes allows advertisers to hook into apps as well, so that a user’s high score or record-scoring slam dunk can be integrated within the advertisement, similar to the cool things rich media can do on the desktop.
In its simplest form, mobile advertising doesn’t require an SDK, but for marketers looking to get into more immersive and engaging mobile advertising, an SDK is generally required. Fortunately, the geeky specifics of the SDK shouldn’t be a huge concern for marketers; the programmer using the SDK will make the mobile magic happen. However, knowing about SDKs can benefit any marketers re-imagining the possibilities of mobile rich media advertising.