Add new comment
by Geoff Bock
Mobile apps should empower me to solve problems and take action. How does this happen? And when it comes to powering mobile apps, how does Drupal make a difference?
Let me continue the conversation that I started in my recent blog post, “Making Mobile Know About Me,” and identify some next steps for making content smart and useful.
Grocery Shopping. Let’s begin with an example about one of those familiar chores of everyday life: grocery shopping. Here in the Boston area, Whole Foods is my local grocer I’ve downloaded the branded mobile app to my smartphone. The app includes a store locator, a menu planner, and a shopping list where I can type in what I need. (It’s likely your favorite supermarket may have its own mobile app with many of these same features.)
But finding the nearest Whole Foods and saving a shopping list on my smartphone are only a few steps related to my real task – knowing what to buy in the first place. When it comes to my overall experience, I still have to remember what items I have in the house and find where the products are located in the store.
Imagine my delight if my grocery app can tell me what I need -- based on the menus I plan, what I already have at home, and the daily deals -- all organized by the aisles at one particular store or another. Perhaps the app can even personalize the specials. For instance, if I am known as a health-conscious shopper who only buys unsweetened products, I might automatically receive a digital coupon about a new line of kale chips when I walk into the store.
Empowering Task-Centric Mobility. Fantasy? Hardly. Yet notice how the content on my mobile app supports my particular tasks. There’s a menu planning and inventory system in the background, helping me keep track of what I have at home and what I need to buy. There are web-wide mashups for personalization, location-based advertising, and content management that combine information from disparate sources and direct the results to the app on my smartphone.
When it comes to task-centric mobility, it’s important to not only mobilize the dots but also connect them. My grocery app needs to access content from the various brands that I like and trust. While I am on the go, my mobile app is powered by all of the information sources within my content eco-system.
Content Chunks. Now what is the role for Drupal within this eco-system? Drupal is a platform for managing content, organized not around web pages or documents, but rather around ‘content chunks.’ As Karen McGrane described in her engaging DrupalCon 2013 keynote, these content chunks are useful for developing mobile applications.
Content chunks are the elemental bits of information together with the predefined tags (or metadata) that describe what they are about. For example, the recipe at my favorite foodie site is not simply a self-contained web page (replicating the experience of a hard copy cookbook) but rather a set of semantically interrelated content chunks that comprise it. There is the “title,” the “description,” the “ingredients list,” the “cooking instructions,” and the “serving size.” Each chunk has its own metadata; taken together all of them describe a “recipe.”
From an application design perspective, content chunks blend human- and machine-readable information, and make it easily accessible for mashups designed to support one task or another. Thus an application can automatically transform the ingredients from my selected recipes into a shopping list. Moreover applications can easily repurpose the content chunks and incorporate them into various processes by accessing relevant web services across the web eco-system.
Mobile Mashups. As a result, I can select a few recipes for a dinner party on the web one night, walk into my local supermarket the next day, and find the list of ingredients I need already accessible on my mobile grocery app, organized by the store’s floor plan. There are applications and web services that restructure the content around my immediate tasks at hand, and mobilize it for my grocery shopping experience.
I don’t want to underestimate the application design challenges for task-centric mobility. Mobile mashups are going to require access to disparate data sources and web services. But a critical first step is the ability to manage content as content chunks. As a platform designed around content and its related metadata, Drupal has been managing content chunks since its inception. It provides the content infrastructure for powering task-centric mobility.