Our Approach to mobile development

Computers are windows into the digital world, and mobile devices are windows into your own private digital world. Mobile is significant because it never leaves your side — it wakes you up from the nightstand, and before you even have breakfast, you’re caught up on work, family, and friends. From then on, your mobile device is in your hands throughout the day until you set the alarm and place it back on the nightstand at bedtime. That’s the power of mobile, and as a creator, I’m lucky to be part of that magic.

1.

Show us your idea

Nearly everyone has a idea for an app, just ask people at random, and they will probably tell you that they do have an idea for at least one app. That’s the great thing about mobile. The platform is so pervasive that those of us who use it see where the platform is lacking when we experience our own pain points. The power lies not only in coming up with an idea, but also in executing the idea. While it may seem mystical at times, just like any other project, it just involves a well-worn routine to get the job done.

2.

Defining the functionality

Functionality is key. Togther scope what your app is going to do before we can begin to design or program it. Immediately upon settling on an idea, we get straight to work figuring out the core functionality of an app. Our goal is not to define 100% of the functionality, but rather to know what things we want to do with an app.

We typically brake the app down into common screens such as a login screen, a settings screen, or a form to collect a batch of information. Often, we start by defining these screens to make sure everyone has the same understanding of what the idea means. Sometimes designers and programmers will have a different approach to a project, so agreeing to a plan can save a lot of time by preventing someone from going down the wrong path. None of us likes to throw away work, but we are generally more open to changing our approach to a solution before any real work is done.

3.

Designing the application

Adobe’s creative tools have been a staple in the design industry for a long time. Among the plethora of tools to diagram mock-ups for a web, mobile, or desktop project, we prefer Adobe Illustrator CC. Illustrator is liberating because it gives us complete control over defining curves, edges, lines, and placements down to a pixel. We tend to be a bit obsessive about submitting the cleanest blueprints for our application design. Design matters, and it starts in the development phase of defining the user interface and user experience. Illustrator is the primary tool we use to streamline the design process for creating vector artwork before we switch over to Adobe Photoshop CC.

4.

Implementing the solution

Once the screenshots are defined, we translate the screenshots into code. Each of the apps highlighted in this article are native iOS apps — two made for iPhone and one made for iPad or Andorid. We used Xcode as our integrated development environment because it is made for creating iOS apps. First, we translate the screenshots into what Xcode calls “storyboards” (see Figures 10–12). The storyboards provide the views of the application to which we then bind code and properties. We use the Xcode source editor to write the native code (Objective-C) that provides the logic of the applications.

5.

GROW

The job of growing users for your app does not stop after the launch. It really starts with that moment. When the visitors start to arrive, we need to understand and measure how do they use the app. It is very common that they act differently then the creators wanted. Therefore, with the launch of new website, we are entering into discovery mode again. After new insights, we need to plan new actions, design and develop them. Then over again, continuously improving process, making the site more easy to use and the customer more happy and willing to buy. This is the everlasting process, but also the only approach if you want to grow.