There are a lot of “first” approaches circulating in the development and design space at the moment, but what does all this jargon mean? In this episode of the Polyglot Developer Podcast, guest speaker William Hoang and I are going to explore some of the common practices such as mobile first, offline first, and API first. I’ve broken Episode #4: What is All This Mobile First, Offline, First, and API First Jargon? into the following parts:
At the end of the podcast William and I bring everything together and explain how all of them are necessary in modern application development.
This podcast episode can be found for free on iTunes and Pocket Casts, but in case you’d prefer to listen to it from your browser instead, it can be heard below.
For those of you who’d rather read than listen, I’m going to explain some of this podcast here.
Mobile first can best be described as the process of designing for a mobile screen size before designing for larger screens like laptops and desktop computers. Don’t confuse this with the MobileFirst platform from IBM as we are talking about a practice, not a product.
Let’s say I was designing an application that looked fantastic on my 27″ Apple iMac. Awesome, but what are the odds that it looks good on my 5″ Nexus 5X phone?
I like to think of mobile first design as building and displaying only what you need. Do you absolutely need 100x links and images on your website? When you start stripping out what you don’t need to make it look good on a mobile app, your desktop version can become potentially cleaner as well.
Often to make mobile first possible, responsive designs are used. This will rearrange items on the screen according to the space available.
Having worked at BlackBerry, one of the original mobile manufacturers, William shares his opinions on the matter.
API first can best be described as the process of designing an API before you define the channels that it will be available / consumed on.
Offline first can best be described as the process of designing an application as if there is no such thing as the internet and then adding network features for when the device is online.
This approach to development is something that William has been working on a lot lately. This is something that Couchbase Mobile does for mobile applications and something that William has been working on for a while.
In my opinion, this is incredibly important for mobile application developers to follow. Many app developers will use data services like Firebase or even random online APIs. These work great when you have internet, but when you don’t have internet, these services stop working. By designing your application as if the internet doesn’t exist, you’re developing with a local database rather than remote data.
At the end of the podcast William brings it all together and explains how you should choose to develop modern applications. My personal opinion is to go with the API first approach as I feel it will cover the most ground. I like to disregard the platforms that data will be used on and just assume it will be available on anything and everything.
At the end of the day you should choose what best meets your needs.
If you’ve heard these “first” approaches, but never really got into the details, hopefully this podcast episode cleared up a lot of the jargon on the subject. My goal is to make everyone more knowledgeable.
If you have questions regarding this podcast episode, you can reach out on Twitter. If you’re listening to this podcast via a service or application and it allows you to leave a rating or review, please give it a positive rating.