nomtek's blog

Looking for something more specific?
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
stopwatch with a hand

How Time and Materials Contracts Work — Gain Control over Budget and Quality

by
Kasia Gruszka
Kasia Gruszka
,
October 7, 2021

Read about T&M contracts to learn how they work and how they give you control over product development.

Read more

When choosing a vendor for development work, you have to decide on the type of contract: fixed-price or time and materials (T&M). Whereas the mechanics of fixed-price contracts are rather obvious — you pay for the whole project upfront — the T&M model begs a more detailed explanation.

How T&M Model Works

Time and materials contracts are usually woven tightly with the agile approach to software development.

As such, the project follows agile rules of development. After each two-week sprint, a part of the application can be tested and analyzed for feedback. This feedback shapes further development, which means the product’s shape can be adapted based on the learning you get after every demo release.

The core of the T&M model is therefore agility and flexibility.

You’re not locked in the scope of a fixed-price project, where it’s difficult to introduce any changes after kickoff.

In T&M, you can swiftly adjust the scope based on your growing knowledge of the product. The decision-making process is also not sealed at the start of the development, as is the case with fixed-price contracts.

Possible scenarios where scope flexibility is handy in product development:

  • UI tests (e.g., UX Cam) revealed there are too many elements in the interface, but user feedback indicates the need for another feature. This feature can improve ROI because it influences the purchase decision among early adopters.
  • Something happens in the middle of the project, e.g., a global shift to remote work, and you need to pivot and change the direction a notch. It can be done with relative efficiency in T&M contracts.

Now let’s deconstruct how T&M give you control over budget and quality.

How T&M Contracts Help You Control Budget

Predictable monthly cost

When you know the team’s composition and hourly allocation for a month, planning for the development spending in the budget is easier.

Besides, in the T&M approach, you’re being charged only for hours devoted solely to your project. Internal duties like company workshops and meetings shouldn’t be included. That said, you should have access to timesheets and be able to regularly verify the invoice status.

Adjustable design

Once the development begins but the design isn’t yet finished, changes in the design can influence the cost. This can go both ways, either increase or decrease the final cost.

For example, the greater the number and complexity of screens in a mobile app, the longer it takes to code them. So, whenever possible, the team you’re working with should suggest ready-made libraries that take less time to implement.

Good designers consult the design with developers during development. This lets them find solutions that cut development time but retain user experience.

No buffer for the software agency

In fixed-price contracts, software agencies usually add a buffer to set off any losses caused by a variety of internal and external factors.

In T&M contracts, a software agency doesn’t have to add a buffer to the final cost to ensure all unexpected expenses are covered. By principle, you only pay for the actual effort the team does on your project.


people playing with a mobile phone

What Are Push Notifications and How Can They Help Your Mobile App?

by
Maja Nowak
Maja Nowak
,
September 28, 2021

Let’s look at how push notifications can help a modern mobile app.

Read more

We’re exposed to upward of 10,000 ads per day. While this might be surprising news for some, it only proves just how difficult it is to catch a user’s attention. An ever-growing competition doesn’t help, forcing companies to find new ways to interact with users.

In the age of permission-based marketing, carefully executed push notifications are an amazing alternative to engage with customers. Let’s look at how push notifications can help a modern mobile app.

What Is a Push Notification?

A push notification is a short message that nudges a user to act. Introduced by Apple in 2009, push notifications have become a powerful user engagement tactic in recent years. Push notifications help catch a user’s attention in a busy, distracted world with low attention spans.

Push notifications notify users about an update, remind them of something, or prompt them to return to an app.

Push notification by the Calendar app on iOS. Source: Apple

Websites, web apps, mobile apps, and even wearable apps can all send push notifications. With people spending between 5 to 6 hours on average on mobile devices, mobile app notifications are an exciting opportunity for developers, marketers, and app publishers to spur users to action.

Modern mobile marketers utilize different types of push notifications to nudge users and increase engagement:

  • Ecommerce shops use personalized push to increase sales
  • Social media apps send real-time updates to keep users up to date
  • Media companies send content to deliver time-sensitive information

Types of Push Notifications

Time-sensitive push notifications: These push notifications create a sense of urgency among users. Great for launching limited-time deals or announcing flash sales in the ecommerce industry.

Reminders: Reminders help users avoid forgetting something important, like meeting someone, completing a daily task, etc. Great for to-do apps, personal assistants and health and wellness apps.

Personalized notifications: Personalized notifications are used for sending relevant content to mobile devices. For example, a personalized special offer to convince a user to buy something.

Triggered push notifications: These push notifications are a result of the user’s actions. A daily mobile notification about a workout streak after you sign up for a health or fitness challenge is a great example.

Transactional push notifications: Transactional notifications update users about their recent purchases, subscription renewal, order status, etc. Banking apps, fintech platforms, and ecommerce apps all use transactional notifications.

Abandoned cart push notifications: These push notifications remind customers to complete their purchase. Ecommerce platforms also use these notifications to remind buyers of the time-limited nature of a deal.

Rich push notifications: Rich notifications include video, GIFs, emojis, or images for grabbing attention and maximizing engagement. Online food delivery players use food images linked to restaurant menus to make users crave and order directly.

Informational push notifications: Informational notifications deliver information and updates in real-time. Think of news apps sending instant updates with world news, or a weather app updating you about weather.

Promotional push notifications: Apps send promotional and marketing offers to segmented user lists via push notifications. Promotional notifications can increase website hits and conversion rates, and also serve as an affordable marketing medium compared to PPC, social media, and other channels.

Location-based notifications: Users receive location-based notifications when they visit a particular location. Think of Google Maps telling you about the nearest places of interest based on your recent travel history or a dating app reminding you to find your date in a new city.

remote assist app

Remote Assist App — Scalable Solution for Virtual Troubleshooting

by
Łukasz Kincel
Łukasz Kincel
,
September 21, 2021

Global skill gaps, pandemic-related border closures, and travel limitations stress the need for remote assistance solutions. Discover Remote Assist App.

Read more

For many of us, technology is a staple commodity. It permeates a growing number of households, and factories increasingly rely on highly specialized machinery. And while technology has catapulted the evolution of our civilization, it’s prone to breaking.

But technicians who can fix problems may not always be available, and on-site service is often costly. Pandemic-related border closures and travel restrictions also limit the availability of specialists. In this context, remote assist solutions emerge as reliable support across industries.

The State of Technology Adoption

In the last 30 years, the adoption of specific technologies in the US alone has skyrocketed.

technology adoption statistics in US households
Share of US households using various technologies (1860 to 2019). Source: Our World in Data

In the business world, technology has spurred production and manufacturing on a palpable scale. According to the World Economic Forum, OECD producers that adopted technology “have grown at a rate of 3.5%, compared with an anaemic 0.5% for the laggards.”

Even small manufacturing facilities have seen an increase in the diffusion of technological development, which led to a more productive workforce and output increases.

Developing countries have also observed an increase in technological innovation, albeit at a lower scale.

Output increase per worker
Output increase per worker correlated with technological innovation. Source: UNCTAD

The global technological advancement and the ubiquitous presence of technologies in many sectors call for engineers and technicians who can not only drive that innovation but also maintain it.

Yet there’s an alarming shortage of skilled engineers and technicians who can carry out innovative infrastructure projects. On the other hand, less qualified personnel can complete tasks with varying levels of complexity given professional assistance.

Remote assistance might therefore become an affordable and scalable solution that bridges the gap between the need for support and the lack of on-site skill.

How Remote Assist App Works

The app has two modes: consultant and user.

User

When a user connects, they choose a problem from a list of available topics.

The user then waits for a connection with a technician.

Consultant

After logging in, the technician sees a list with active user sessions awaiting help for a given topic.

Once connected with the user, the technician has access to the user’s rear camera.

The technician communicates with the user:

  • Through voice
  • By placing 3D objects on objects in the user’s environment
  • By marking objects in the user’s environment using a yellow marker
a person browsing a file with mobile apps

An Overview of Apps Made with React Native

by
Wojciech Czajkowski
Wojciech Czajkowski
,
September 16, 2021

React Native can be used to build mobile apps and websites from a single codebase. Learn which companies use React Native.

Read more

React Native has been around for five years now. When the framework was first released, small teams and startups used React Native to build MVPs. Now, tech giants and Fortune 500 companies use React Native for large-scale cross-platform app development. 

React Native can be used to build mobile apps and websites from a single codebase. As a result, the technology solves one of the biggest problems in app development — intuitive user experience across platforms. React Native also helps simplify development efforts, reduce development costs, and cut time-to-market.

Let’s look at React Native app examples and how major businesses have tackled various mobile app development challenges with this tech.

Popular React Native App Examples in 2022

According to Statista, React Native is the second most popular framework for mobile app development. 38% of the developers use React Native in 2022. 

market share of cross-platform mobile development frameworks
Popularity of cross-platform mobile frameworks among developers worldwide from 2019 to 2021. Source: Statista
percentage of apps built with React Native
Share of apps built in React Native in 2021. Source: AppBrain

React Native is now part of the tech stack at several Fortune 500 companies and tech startups. Here are some popular React Native apps: 

Khan Academy — EdTech

Khan Academy is one of the largest EdTech companies on the planet. The company provides short video lessons, learning material, and exercises on various subjects.

khan academy mobile app screens
Khan Academy mobile app screens. Source: Khan Academy Blog 

Before implementing React Native, Khan Academy had two different codebases for Android and iOS with lots of dependencies. In 2017, they decided to shift to React Native because:

  • The app design, features, and content on Android and iOS apps were nearly identical 
  • Maintaining two codebases became quite challenging 
  • Developing new features and keeping the two apps in sync got harder
  • Their website was already using React

Khan Academy completed the transition to React Native in 2020. Now, the same engineers take care of the Android app, iOS app, or website from a single codebase.

React Native gave developers the convenience and comfort to build better features, improve UI, and spearhead innovation. Plus, Khan Academy’s apps became smaller. The user experience on the app and the web grew similar. 

Find more details about Khan Academy’s migration to React Native.

Bloomberg — Media and Finance

Bloomberg is one of the world’s largest financial media companies that use React Native for mobile app development. 

bloomberg mobile app screens
Bloomberg’s consumer mobile app screens. Source: Tech At Bloomberg

Bloomberg offered an interactive experience for accessing personalized content across iOS and Android. The company was searching for a truly native mobile app experience that came without the overhead of having two separate codebases.

Bloomberg’s engineers used React Native to rebuild the apps for both platforms with a host of new features. A single codebase and automatic code refresh in React Native helped their team to speed up the development.

Also, conducting A/B tests and collecting beta user data to validate any experiment or workflow got faster.

React Native enabled quick app updates in sync with fast-moving markets, analysis data, news, and more.

Read more on how Bloomberg is using React Native.

Flipkart — eCommerce 

Flipkart is one of the largest eCommerce players in the world with more than 100 million downloads and 400 million weekly visits. Flipkart is using React Native for iOS and Android apps and also for its sub-brands such as Myntra.

Flipkart chose React Native to solve a few challenges with its iOS and Android development journey, such as:

  • The need for a large development team despite having a uniform design and user experience.
  • Time waste due to the maintenance of many codebases
  • Delay in executing A/B tests and tech experiments due to longer adoption times leading to a drop in sales

React Native helped Flipkart move faster without impacting the app’s performance. The team’s first goal was to implement infinite list displays on search pages, which React Native delivered successfully. 

flipkart transition to React Native
Search pages with an infinite product list on Flipkart. Source: Flipkart Tech Blog

React Native also helped Flipkart push frequent OTA updates. The teams got more data from end-users and closed A/B experiments in approximately three weeks instead of the previous six. Speed helped improve personalization, boost engagement metrics, and increase sales during flagship sale events like the Big Billion Days. 

Also, React Native helped the dev team adopt a modular approach with custom native components. The team was able to share 95% of the codebase between Android and iOS. 

Read about Flipkart’s React Native journey.

UberEats — Food Delivery

UberEats simplifies ordering food from restaurants in 6000 cities across 45 countries globally. The on-demand giant started UberEats to make ordering food as easy as booking a ride on Uber.

UberEats picked React Native to rebuild its restaurant partner dashboard. The original restaurant dashboard was designed for the web. It needed an upgrade as new insights came in on how restaurant partners operated.

Uber Eats tablet screen React Native
A screen from the UberEats Restaurant Dashboard. Source: Uber Engineering Blog

Uber had an existing team proficient in React. Thus, React Native became the natural choice for building the UberEats app for iOS and Android.

React Native provided the utensils to cook the app to near perfection, as per UberEats. UberEats expedited mobile app development in the “language of the web.” The UberEats team wrote features in JavaScript or natively.

With the help of React Native, UberEats shipped new features in days instead of weeks across all platforms. Updates now propagated faster (thanks to background downloads) and bugs were fixed quicker, reducing disruptions at partner restaurants. 

More about UberEats’ transition to React Native.

Coinbase — Cryptocurrency Exchange

Coinbase is a popular crypto exchange that offers trading and other financial services to over 56 million users. 


coinbase app screen built in React Native
Coinbase’s mobile app interface built in React Native. Source: Coinbase Blog

Till 2017, Coinbase had separate teams working on iOS and Android versions of its app. But challenges with scaling, performance, and feature roll-out encouraged the company to explore new avenues.

Coinbase decided to move ahead with React Native and planned a complete code rewrite. There were several reasons for this:

  • The team was looking for a dynamic sign-up experience for mobile users based on location, user preferences, profile, and regulations.
  • Making changes to the existing app would be costlier than building an app from scratch.
  • Native app redevelopment would lead to unnecessary duplication of code (and loss of development time).  
  • They were looking to reuse business logic and wanted consistency between apps across platforms. 

Component reusability and fast refresh capabilities of React Native made Coinbase convinced React Native was the right choice. Plus, onboarding the existing web dev team was easy, as React Native is JavaScript-based. 

Coinbase was able to migrate its massive codebase with substantial business logic easily. Also, Coinbase tackled its scalability challenges and enhanced app performance across platforms.

Impact of the migration to React Native on Coinbase’s key performance metrics. Source: Coinbase Blog

Impact of the migration to React Native on Coinbase’s key performance metrics. Source: Coinbase Blog

Read more about Coinbase’s React Native experience.

LendMN — Financial Services

LendMN by AND Global is a mobile app facilitating the disbursal of small loans. AND Global provides financial services to underserved populations. The company operates in one of the most underbanked regions in the world — Mongolia.

LendMN app screen React Native
LendMN mobile app built with React Native. Source: AND Global Blog

React Native has been one of the key enablers of AND Global’s achievements and helped the company tackle some burning challenges. The challenges included:

  • A lack of financial backing or the resources to hire a large/experienced workforce
  • A limited local pool of mobile app developers
  • Regulatory complexity of the financial services ecosystem
  • Catering to a user base in a country with expensive mobile internet data

React Native helped AND Global optimally utilize the budget and cater to local market needs.

React Native’s famous “learn once, write anywhere” mantra, helped AND Global use its existing web development team to develop and deploy the mobile app. The LendMN team used React Native to release an MVP and secure an investment.

The framework helped AND Global stay compliant with the dynamic financial ecosystem through continuous improvement and OTA updates. With React Native, LendMN quickly fixed bugs, improved app performance, and saved time on the app review process.

LendMN knew users wouldn’t trust an app that needs regular updates in a country with high mobile data prices. 1-2 Mb OTA updates for minor bug fixes helped increase the trust factor. React Native allowed the company to offer trustworthiness and convenience — LendMN gained popularity in a country with limited availability of financial services. 

Learn more about LendMN’s experience with React Native.

FAQs about React Native

Which famous apps use React Native?

Many apps you use every day are built with React Native. Walmart, Wix, Discord, Pinterest, Soundcloud Pulse, Facebook Ads Manager, and several other social networking platforms use React Native in 2021

Can you build native apps with React Native?

Apps built in React Native offer a native experience for both Android and iOS because React Native renders native UI elements. Under the hood, React Native apps behave just like Java- or Kotlin-based apps on Android or Swift- or Objective-C apps on iOS.

Are Facebook, Instagram, and WhatsApp built with React Native?

Yes. All three use the React Native framework for their iOS and Android Apps. React Native was created by Facebook to simplify cross-platform app development. So, all of Facebook's companies use React Native.

various icons with sensors working in the cloud

Exploring IoT and Cloud Computing

by
Mat Zaleski
Mat Zaleski
,
September 3, 2021

How should you integrate the cloud and IoT into your business strategy? Read on for answers.

Read more

Cloud computing has been the catalyst for achieving unimaginable goals for companies of all sizes. With the cloud, businesses can handle, manage, process, and analyze huge amounts of data. 

Cloud computing enables startups, early-stage companies, and large enterprises to draw valuable business insights. Integrated with IoT, the cloud gives modern enterprises the ability to become more efficient at data analytics. 

Enterprises use cloud computing services and IoT solutions to stay relevant and become more competitive. Jeff Weiner, the former CEO of Linkedin, said the cloud empowers modern companies to have access to the best innovation infrastructure. 

How should you integrate the cloud and IoT into your business strategy? How do these two technologies tie into a single thread to make sense for a modern business? Answers below.

Role of Cloud Computing in the Internet of Things (IoT)

Cloud computing and IoT complement each other. Cloud computing allows IoT devices to record, capture, process, analyze, and store data at a massive scale. 

Together, IoT and cloud computing services streamline cost-effective automation and data analytics. 

When we look at the ways IoT helps modern business, user analytics is one of the major drivers for IoT adoption. Businesses use the cloud and IoT to analyze big data to reveal patterns, trends, and associations.

cloud computing diagram
Cloud computing facilitates IoT analytics. Source: GeeksforGeeks

Relationship between IoT, Big Data, and Cloud Computing

Modern IoT solutions are built on a basic premise — helping businesses optimize operations. Cloud computing helps process all the data generated by the IoT. Big data analytics plays a large role in making IoT solutions efficient at automation and optimization. 

Cloud computing connects the source device with the power of analytics. Source: Big data, cloud, and IoT: an Assimilation

Cloud computing takes care of storage and security for an IoT-based app. At the same time, cloud computing acts as a bridge between the IoT platform and big data. 

As the world leans towards IoT, cloud computing acts as a powerful communication bridge. Source: IEEE

Cloud computing services enable IoT solutions to act intelligently by handling:   

Data storage and communication

Cloud computing paves the way for IoT devices to the internet for data storage and processing. The data can then be used by any other complementing technology, system, or solution remotely.

Think of it like this  —  you ask Alexa, a consumer IoT device to find you the nearest restaurant. Alexa connects to a cloud application like Google Maps and provides you the results. Data feed (your voice), the IoT device (Alexa), and the cloud application (Google Maps) interact to give you the right result here. 

Data security

Saving large data volumes generated from IoT devices can be a security nightmare. Cloud allows encrypting critical operational data while bringing down the costs of storage. 

Your business doesn’t have to invest in server infrastructure and security. Plus, you get high-end security measures embedded in the cloud. Using the cloud for IoT helps in reducing the chances of leaks and cyber attacks.

cartoon people experimenting in a laboratory

Introducing Nomtek Labs — Our Jab at Staying Disruptive

by
Łukasz Kincel
Łukasz Kincel
,
August 25, 2021

Nomtek Labs is our internal research and development department where we explore technologies and how they can benefit businesses and users.

Read more

The world we live in is far from being idle. Technologies and industries evolve rapidly, with maddening speed at times. When Nomtek was founded in 2010, Apple was selling the iPhone 3G. It was the company’s second iPhone and the first to use the 3G network.

old motorola phone with a physical keyboard
Anyone had one of those?

We hopped right in, to participate in the development of the mobile world.

3 megabits per second — that’s the dizzying speed 3G promised. Sounds bleak compared to 100 megabits per second possible with 5G. But that’s how fast mobile life was spinning back then.

The Android ecosystem itself was also in its early stages. In October 2009, Android Eclair (2.3) was released, with Motorola Droid reigning as the most popular mobile phone.

By today’s standards, it was a strange-looking smartphone, with a hidden keyboard at that.

So What Do We Have Now? The State of Technology

Much and more has changed since Motorola Droid’s reign over ten years ago. IT systems have become denser, more complex, and more accessible.

Take a Japanese farmer who, in 2016, created a system that uses AI to classify cucumbers. Sophisticated technology such as deep learning has become increasingly present in areas commonly associated with manual labor.

3G was soon replaced by 4G in developed countries, dramatically improving network connectivity and changing how people consume content. 4G helped Netflix conquer the world of streaming services, giving users access to favorite films and series at home or on the go.

Chasing the Bandwagon of the Future

All these new connectivity technologies, more efficient chips, and the evolution of augmented and virtual reality can cause a reverberating wave of changes for industries and people across the globe.

At nomtek, we always knew that investing in our development was the best thing we could make, hence the idea for nomtek labs — our answer to the rapidly evolving world.

As a company made of people who relish discovering innovation, we don’t intend to stand behind or rely solely on old technologies and methodologies.

We are tech enthusiasts who love exploring new sectors and playing with technology.

At nomtek, everyone can participate in a number of initiatives that boost knowledge and develop skills. We have internal weekly guild meetings, free time for self-development, and budget for workshops and conferences.

Nomtek labs is one of these initiatives.

hand on a mobie device

How to Use Artificial Intelligence in Mobile Apps?

by
Maja Nowak
Maja Nowak
,
August 19, 2021

Learn how you can use artificial intelligence in mobile apps.

Read more

Artificial intelligence is one of the most inspiring innovations of the last five decades. The technology has transformed the way we play music, shop, and work. Mobile apps have also enjoyed the features AI offers by boosting personalized recommendations, powering chatbots, and introducing automation. Learn how else you can use artificial intelligence in mobile apps.

What Is AI and How It Works? 

Artificial intelligence is exactly what you imagine it to be — machines mimicking human intelligence. AI uses machine learning (ML), natural language processing (NLP), and deep learning (DL) technologies to build algorithms that have reasoning and decision-making capabilities.

AI allows companies to process high volumes of data quickly and derive valuable insights. Companies use these data-backed insights to improve capabilities, get more productive, and grow faster.

In a study by Gartner, the number of companies that use AI grew by 270%. Another projection by Gartner predicts that the use of AI across businesses will create “$2.9 trillion of business value and 6.2 billion hours of worker productivity.”

Artificial intelligence can help increase mobile app retention, engagement, and conversion rates. Let’s look at how AI enhances mobile applications.

Mobile Apps and Artificial Intelligence

AI-powered apps are more intuitive, intelligent and can do more for the end-user. There are three major dimensions for implementing AI in mobile apps: 

Prediction

AI helps app algorithms solve complex problems and aids decision-making. Mobile apps can analyze and logically conclude what to do using AI.

Google Maps estimates accurate travel times. Uber finds the nearest cabs and optimizes the best routes. These companies track historical traffic patterns using AI to come up with the best solutions in real-time. 

a diagram with mobile artificial intelligence
How users interact and experience algorithms is a complex process. Source: ScienceDirect

AI makes mobile apps capable of making decisions and solving problems. User satisfaction improves when they get what they’re looking for, with AI helping in the background. Satisfied users lead to higher app retention rates and Net Promoter Score (NPS).

Recommendation

Companies use AI to build powerful recommendation engines within mobile apps. Recommendation engines analyze past user actions and offer relevant suggestions for the future.

Netflix uses AI to analyze what viewers like and suggest the next movie that matches their preferences. Amazon tracks shopping behavior and recommends more products customers are likely to buy.

AI can analyze data faster than a human and uncover prevailing trends. This helps apps know users better, provide contextual recommendations, and boost engagement rates. 

Behavioral Analytics

AI simplifies pattern analysis to create more personalized app sessions. Startups can use deep learning and sentiment analysis to enhance the user experience.

For example, AI can help understand why a user abandons an app. Google Analytics or CleverTap (an app analytics tool that uses AI to track user sessions) analyzes touch heatmaps and discovers navigation paths within mobile apps. AI-based analytics help adjust the app to user expectations.

people playing with symbols

What Is Code Refactoring, and When Should You Consider It?

by
Mat Zaleski
Mat Zaleski
,
August 10, 2021

Code refactoring ensures that the code remains clean and preserves the desired application performance. Learn what code refactoring is.

Read more

Every software application needs continuous updates according to customer requirements and user data that stream in. When developers fix a bug or add a new feature, the source code grows larger and more complex. Code refactoring ensures that the code remains clean and preserves the desired application performance. Learn what code refactoring is and when and how to do it in different mobile applications.

What Is Code Refactoring, and Why Is It Important?

Code refactoring is the procedure that improves the software code without changing its existing functionality or the external application behavior. It involves cleaning the code for better clarity, readability, and maintainability. This process ultimately improves the application’s performance, scalability, and security. Refactored code is easier to debug and, most importantly, has fewer errors and bugs, lowering the likelihood of technical costs in the future.

Why Do We Need to Refactor Code?

To avoid code rot

A typical software development team consists of developers with different coding styles. During development, they keep updating the existing code. Sometimes, they can introduce correct but ugly code hacks as part of a quick solution, for example, in situations like a high-priority production incident or when trying to meet a quick deadline. 

When there is no routine for refactoring such code, code rot can creep in. Code rot is when the code is getting cluttered and loses integrity. Examples of code rot include duplicated code, unnecessary dependencies, unused variables, or too many parameters. That’s why code refactoring should be introduced early to avoid bugs and errors in the application. 

To save development effort and costs in the future

When the code is clear, existing and future developers can understand the code easily. This means you do not have to spend time explaining the code to your team or provide special training before adding new features to the application. Easily readable code saves a lot of your time and money and is the key to streamlined mobile app development. 

To improve the application performance

Refactored code generally results in better performance of the product. If your application has third-party integrations, code refactoring helps keep well-maintained dependencies that don’t bloat the application. Code refactoring ensures that the desired levels of response times for application transactions and throughputs are met, which eventually improves customer experience.

cartoon man with a computer

How Does the Internet of Things (IoT) Help Businesses?

by
Maja Nowak
Maja Nowak
,
August 4, 2021

Discover how IoT helps businesses expand and streamline operations for a better bottom line.

Read more

The Internet of Things (IoT) is changing how businesses optimize processes and engage customers. Discover how IoT helps businesses expand and streamline operations for a better bottom line.

The Global IoT Business Opportunity

IoT facilitates tech interaction to promote digital transformation. In recent years, IoT adoption has skyrocketed in almost all industries.

The IoT market is expected to cross over $1300 bn by 2026. It’s projected to generate $4-11 trillion in economic value during the same period.

graph with projected IoT market growth
The growth potential of the worldwide IoT market (2019-2026). Source: Verified Market Research

The Internet of Things has opened up new avenues for growth and optimization. In fact, 83% of the organizations that implemented IoT technology have improved their efficiency.

Recognizing the numerous benefits of this technology, the business world is increasingly investing in IoT technology:

What Are the Benefits of the Internet of Things for Business?

You must have heard — data is the new oil. 

With IoT technology, your business can use every data point to achieve growth goals and optimize processes. Here are some of the ways IoT can benefit your business:

IoT helps businesses reduce costs

IoT solutions streamline existing processes across manufacturing, supply chain, production, and other industries. Streamlined operations minimize downtime and decrease costs.

The manufacturing industry is the best example of cost reduction via IoT technology.

IoT robotics packing books
Factories use autonomous robots connected to IoT to reduce costs by maximizing output.

Factories use predictive maintenance technology to reduce downtime by up to 20-50% and save 5-10% in maintenance costs.

IoT boosts productivity and profitability

IoT helps create optimized workflows through automation. It minimizes repetitive tasks and facilitates optimal utilization of available resources and machinery.

Optimization helps avoid wasted man-hours in organizations, making operations more efficient.

In fact, 83% of IoT-powered organizations claim to reduce expenditure and boost employee productivity. A study by Aruba revealed that 75% of companies adopting IoT increased their profitability.

IoT unearths new business opportunities

IoT connects hardware, software, and artificial intelligence for deeper analytics. Because of better insights, businesses can use IoT to catapult their operations toward the future.

36% of businesses discover new opportunities with IoT.

Businesses build new product lines and revenue models based on emerging patterns.

For example, insurers calculate premiums based on driving habits. Retailers plan their inventory levels and in-store display by recording consumer behavior. Marketers use IoT-based beacon tech to gather insights about consumers. Data analysis helps businesses adapt to change and create market-ready products.

IoT promotes optimal asset utilization and tracking

IoT can connect every unit, device, asset, machinery, or equipment to a single network. With smart sensors, businesses can then track assets and control equipment. Real-time insights and autonomous control reduces waste and optimizes the entire workflow. Asset-heavy industries like transportation use IoT to promote transparency through location tracking and updates.

IoT improves security levels and minimizes vulnerabilities

IoT reduces security risks and vulnerabilities through sensors designed for live surveillance in physical locations.

Connecting CCTV cameras to IoT networks creates a powerful surveillance network. This network can be further enhanced with automation, deep learning, and computer vision to create custom security solutions. For example, ALERTWildfire, a new AI detection network, is becoming increasingly accurate at predicting wildfires.

two people adjust a mobile app screen

How to Mitigate the Risks of Outsourcing Mobile App Development

by
Wojciech Czajkowski
Wojciech Czajkowski
,
July 22, 2021

Learn how to mitigate the risks of outsourcing development.

Read more

When you outsource mobile app development, you want to get the work done professionally at a reduced cost and with little overhead. And while this sounds enticing — in 2019, the global market size of outsourced services was $92.5 billion — outsourcing development doesn’t come without risks. But there are ways you can keep these at a minimum level. Learn how to mitigate outsourcing development risks.

The Truth About Software Outsourcing

If you're like many business owners, outsourcing mobile app development might seem like a good idea, especially from a financial perspective. The average business is strapped for cash, and even if you’re more financially stable at a bigger company, launching a mobile app can still be costly if you don’t have in-house resources experienced in mobile development.

But outsourcing mobile app development is not a one-size-fits-all solution, and it has its own set of advantages and disadvantages. Handing over a list of specs and expecting a service provider to come back with a great digital product isn’t necessarily how outsourcing looks like. The communication is critical, and it's the core of good cooperation with your business partner.

And while the overhead with outsourcing is significantly lower than if you were to build an in-house team, some questions also need to be answered — What is the cost? Will I lose access to my data? What about intellectual property rights and trade secrets? Who will be managing the project? 

These are all valid concerns that should be taken into account before choosing an IT outsourcing partner.

What Are the Major Risks of Outsourcing Software Development?

Adjusting to remote teams and time zones

The first major problem with having a remote app development team comes when you want to oversee how outside contractors handle their part of the job. The need to be in control is sometimes hard to let go, especially when you’re working with a partner with different processes.

If you’re in the trust-building stage, consider asking about the possibility of CI/CD (continuous integration and continuous delivery). In the CI/CD approach, you get to see the development of your app daily through a working demo.

CI/CD will help you oversee the progress and evaluate the quality of the deliverables. So when your outsourcing partner is underperforming, you’ll know it very early in the project and will be able to halt the work without risking losing money.

Knowing how the app’s development is progressing also helps to estimate whether you’re going according to the time frame or not. A delay is the last thing any project owner needs in their schedule. But keep in mind that delays are one of the trade-offs of lower costs per hour when you hire offshore developers.

Zoom meeting for remote teams
Time zone differences, language, and cultural barriers can all become outsourcing stumbling blocks.

Another issue might stem from different time zones and cultural differences.

Every time you work with a remote team, it’s important to remember that they’re on a different schedule than the one your business operates on. Take extra measures to avoid any miscommunications or mistakes by keeping communication channels open and setting clear goals. Most of all, be considerate of their time by meeting when it’s suitable for both parties.

Working with a partner that lacks business expertise

Assessing the expertise of a remote development team can be a difficult task. And if they’re unfamiliar with your business niche, there's a chance the team you're working with won't be able to navigate industry problems as well as they should. In that case, it will take longer for them to integrate your business vision or project idea into your mobile application.

Creating app interface and design
Hire an outsourcing company that knows its way around your niche and has developed similar products.

The solution? Look for an experienced outsourcing company that knows the ropes of your industry. Ask about their processes, project successes, case studies, and anything that will help you assess if they're qualified enough to do what you need them to. We recommend starting with a project discovery phase where intensive research allows teams to gain more understanding before jumping head first into implementation.

Inviting security breaches

Outsourcing app development means sharing portions of your data with another company. This can put your company at risk for security breaches, compliance violations, and financial scams. According to the Deloitte Global Outsourcing Survey, data security and loss of IP (intellectual property) are the leading concern among companies that outsource their operations.

To mitigate the risk of security breaches, outsourcing companies have to be vetted thoroughly (e.g., by checking their reviews on social media). Employees need to stay vigilant for possible misappropriations of trade secrets or loss of IP rights. There is also sensitive customer information that can leak through outsourcing — login credentials, medical records, credit card info — all can make their way to third-party hands depending on what type of solution you're developing.

a chart with data breaches cost
Data breaches cost a business $3.86 million on average. Source: Ponemon

To minimize those risks, ensure you sign an NDA (non-disclosure agreement) with an offshore company involved in your project before you share any data with them. This way, if any data leaks, they will have to pay penalty clauses. Furthermore, try to collaborate with a company that is legally bound by intellectual property laws (e.g., European intellectual property law). 

Experiencing hidden costs and quality issues

While it’s tempting to settle for the lowest bid, in the end, the development might cost more than you expected. Before falling for the cheapest, consider the possible consequences of choosing a partner that has never completed similar projects. Also, is the company you want to partner with big enough to meet the demands of your project timewise?

When new agencies enter the market, they often offer low bids that aren’t feasible. Ultimately, the development ends up costing organizations more because these newcomers can’t manage the scope of the project correctly.

When you're looking to outsource a project, ensure that your contract covers all of the services and deliverables needed. The contract should outline the timeline, estimated costs, and explicit details about what is expected from both parties.

Ask what is included in the per hour contract, so as not to fall into the trap of being charged extra.

Dealing with miscommunication

The key to success for any project is clear communication. You can avoid many costly and time-consuming problems with your projects if you make sure that both parties are on the same page. Without a clear understanding of what is required, delays will pile up and turn good outsourcing relationships sour quickly.

a meeting with four people discussing a whiteboard
Some projects might require face-to-face meetings to discuss project details.

When engaging a partner for outsourced work, make sure to consider and discuss all aspects, including deadlines for deliverables, milestones along the course of your project, software requirements, and expectations on quality.

Dismissing the role of your engagement

One of the risks you possibly haven’t considered but most outsourcing companies are familiar with, is your own engagement. If vendors don’t get timely responses from you regarding questions or requests, chances are you won't be satisfied with what's delivered in return.

a person using a laptop and a mobile phone
Outsourcing partnerships are successful to a degree to which partners can communicate well with each other.

When project managers and developers work closely with their clients, they're able to understand all of the nuances in your business and create a solution that fits exactly what you need. This means that there will be less miscommunication between team members on the project, and it will likely end up being completed faster. 

The more your outsourcing partner knows about what you want, the better their work will be for you in the long term.

two hands meeting over a mobile phone

Minimum Viable Product Template — Different Approaches to Building Digital Products

by
Mat Zaleski
Mat Zaleski
,
July 14, 2021

A minimum viable product (MVP) is a way to bring your product into the market as quickly as possible. Learn about different MVP types.

Read more

A minimum viable product (MVP) is a way to bring your product into the market quickly, without risking too much time or money on developing features that might be redundant. But building an MVP in its most commonly understood meaning (a working version of your mobile application) isn’t the only approach to validating your ideas and probing market demand.

Just like there are many factors to consider when creating the foundation for your digital product, there are many types of MVPs. Context, competition, offer, business model, business objectives, and many other elements determine the best types of MVPs for your project. That’s why there’s no single minimum viable product template that will be accurate for all mobile app projects.

One thing remains 100% sure, though: the necessity to validate your product ideas if you want to succeed. According to a Harvard professor, 65% of startups fail. And the reason for failure is simple — poor and untested product ideas.

What Are the Different Types of MVPs?

Building a minimum viable product is the first step when launching any new project, but there are many different ways to approach an MVP. 

Wizard of Oz 

Also known as the Flintstone MVP, a Wizard of Oz is a product that doesn’t yet exist but makes an illusion of being a completely functional product. Even though it seems complete on the outside — just like the Flintstone car — there actually isn’t any software present on the inside to do the work.

In fact, all work, e.g., in-app actions are done manually by a developer. Zappos, the online shoe retailer, was built with a Wizard of Oz strategy. In 1999, Nick Swinmurn, the founder of Zappos, searched for a pair of shoes but couldn’t find them in a nearby mall. He discovered that none of the major companies sold footwear online. Soon, he built a simple website and started taking pictures of shoes from stores all over and placing them on his website — no inventory system present whatsoever.

Yes, Nick Swinmurn was doing everything manually, which meant running to the store to fulfill an order that came through the website. Once the sales became significant, he knew it was the right time to invest more money, and that the business would take off.

A Wizard of Oz test can be time-consuming, but it's an excellent option for entrepreneurs looking to validate their product or service before investing large funds. 

zappos logo
Once he proved the product’s viability, the founder of Zappos started adding more features to his website and expanding his business. Source: Zappos

A single-feature product

When Spotify founders were thinking about setting up their business, they noticed that other media streaming companies often went for expensive websites and apps, without really testing the viability of their products.

So instead of burning through all their funds on a fancy website or complex software development process prior to launch, they created an MVP in the form of a desktop application with music streaming as their core functionality to test the market need. However, their biggest focus was to bring down latency as much as possible, giving the experience no lag. The result? Spotify became the most significant music streaming company in the world.

So when creating a single-feature product, you need to understand that one functionality must work exceptionally well. After confirming that your product is viable, you can add more features as you learn the behaviors and preferences of your users.



spotify logo
Spotify’s approach to creating an MVP built helped the company become an industry giant and set it apart from the competition. Source: Spotify

Piecemeal MVP

The piecemeal MVP development framework relies on existing solutions to deliver a new service. For example, instead of building an entirely new content management system, you use solutions such as Wordpress. You don’t have to invest a lot of time and money to build a prototype or build a whole product from scratch in one go — you can assemble an MVP with existing tools.

This is exactly how Groupon was created, as an asset initially built on Wordpress. If the founders had insisted on building their own CMS first, the company might not have survived.

This approach allowed Groupon to quickly test the business idea with pet adopters, leveraging other software without spending too much money on expensive designs or complex functionality. 


groupon logo
Groupon started as a simple MVP website but became a global marketplace.

Concierge MVP

Concierge minimum viable product is similar to the Wizard of Oz test. With a concierge MVP, you also manually go through every step of the process with each customer. This gives you the opportunity to get feedback on your product or service and make any necessary adjustments to your product roadmap.

In the book Lean Startup by Eric Ries, Food on the Table is used as an excellent example of the concierge MVP. Food on the Table is an app that figures out what you like to eat based on the recipes you submit. The app then creates a shopping list using coupons to help users save money. To test out the idea, the founder personally collected coupons and compiled lists for each customer without any automation or a big team.

No-code MVP

UPDATE, June 2022:

Hiring developers to build an MVP just so you can check if your idea will pick up on the market or inside your user base is justified only when you already have initial signs that there will be traction. While custom development gives you code ownership and flexible scalability options, the traditional approach takes time (roughly three months). Of course, you can use that time to put in the effort to build a following so that when your MVP is ready, there will be users signing up for it. But there's still a great deal of uncertainty whether your product will pick up or if you'll need to pivot or kill it.

You can use the above approaches such as concierge MVP to mitigate the risk of product failure, but these don't give your users a finished version of your product.

A quick and cost-effective way to try a product with your users is by building it using one of the no- or low-code tools. These tools let you import Figma designs and set up simpel logic behind them so that you have a ready-made product available for release in less than two weeks. A no-code MVP gives you plenty of time to test how the product fares among your target audience, letting you introduce all the necessary feature changes to meet user needs as you discover them.

How Do You Build a Minimum Viable Product That Is Immediately Valuable?

To determine whether an MVP concept solves a problem, and therefore is immediately valuable, test whether it does the job.

The JTBD Theory

Jobs-to-be-done (JTBD) is a theory based on the premise that customers “hire” products or services as tools with which to complete tasks. 

Even though an MVP can be very cheap, it’s not always free to make. Jobs-to-be-done is a powerful tool for measuring the potential of an idea before any investments whatsoever. It considers two things: what job customers would require your product to do and how well your new product satisfies unmet customer needs and pain points versus existing solutions. 

A great example is Clay Christensen’s research for McDonald’s. During customer interviews, Christensen realized that people were “hiring” milkshakes because they're easy to consume with easy-to-dispose packaging and appetite-quenching qualities — perfect for those with time restrictions in the mornings. By understanding what was a milkshake’s job-to-be-done, Christensen’s team created a better milkshake, one that addressed the specific needs and wants of the customers.

man looking through a telescope

A Simple Framework for Finding North Star Metrics in Digital Products

by
Tomasz Urbański
Tomasz Urbański
,
June 29, 2021

Make good product development decisions by picking a North Star metric and focusing on what helps your product mature.

Read more

You can measure hundreds of different metrics, but they will get you nowhere near making good product decisions. By picking a North Star metric, however, you can focus on what helps you build a foundation for data-based decisions that matter. A North Star (or master) metric will very quickly give you the answer to a basic question: is the product evolving according to your expectations, or not?

I’ll describe a simple framework that helps our clients find a master metric for building better products that reflect what users do and what decisions they make inside the app.

Organize a North Star Metric Meeting

Before the meeting

Invite stakeholders and at least one technically versed person. Mobile analytics requires experience and the terminology can sometimes overwhelm the stakeholders. Having someone who gets analytics and can translate complex terms into layman’s words is an asset.

Master metric meetings can be held remotely, so you can use Miro (or a similar tool) to organize thoughts.

During the meeting

#1. Set a goal

You start the meeting and set up a goal. In this case, it should be “looking for the master metric that currently matters.”

#2. Educate

To better explain the goal, describe what is a good metric and what is a North Star metric if it’s not obvious to all people at the meeting (e.g., not every developer has experience in defining metrics, hence I recommended inviting someone versed in analytics to the meeting).

Definition of good, great, and North Star metrics

A good metric lets you measure the usage of a specific feature with direct value to the user.

However, the definition of usage itself can get tricky and deceitful if you don’t understand it correctly. For example, metrics such as the number of sign-ups or the total number of registered users aren’t really going to help you build a better product because they give you neither valuable nor actionable insight.

If you make metrics more granular, say, the number of new users per week or how many times a day/week a user opens your app, you can correlate the results with some other action (e.g., change in design, reduction of the number of steps in a process). In other words, you can get a learning opportunity.

Now the even more granular “percentage of users who do the same thing inside your app X number of times a day/week” is a metric that influences decision-making the most.

With all that in mind, a definition of a North Star metric emerges: every other metric you measure means nothing until this master metric hits a predefined goal.

The most important persona

Now that everyone is on the same page as to the qualitative aspect of metrics, we’re going to focus on bringing to light everything we know about the most important user persona in the current state of the product. Master KPI will refer to this group of people.

#3. Establish a process

Freestyle ideation

Have your meeting attendees work together in a group to find a North Star metric. Set a time limit of ten minutes, for example. Every person works separately, without seeing the results until time runs up.

Use post-it notes in Miro for this step.

Tips:

  • Don’t brainstorm here — it’s easy for extroverts to dominate brainstorming sessions. Introverts, too, have great ideas, but they won’t share them if they can’t be heard.
  • A key piece of advice in this step is to not think about any limitations — just write down what’s the master metric according to you.

When time is up, talk over your results.

Business constraints

When the master metric exercise is complete, all stakeholders should think about the limitations that make a certain metric unsuitable to become a master metric. The constraint can also be that the metric is simply unmeasurable.

Sample limitations:

  • Data privacy
  • Difficulty accessing necessary data
Metric refinement

Once everyone has learned about the ideas of other team members and business constraints, we repeat the ideation process for the master metric.

The iteration should look like this:

  • come up with and share ideas
  • eliminate or modify all proposed metrics so that they don’t have business constraints and are technically plausible

The technical feasibility of a metric also justifies the presence of a technical person — a developer with the knowledge of analytics will be able to tell how difficult is the implementation of that idea or if it’s even possible.

This sifting process should be exhausted to the point of giving you a list of validated metrics.

Voting

There’s little room for democracy when voting for a master metric — one designated person has to be the decision-maker. Every stakeholder gets 2 to 3 dots to use for voting on the best master metric. Keep in mind that the number of dots a metric gets is only for the informational purpose of the decision-maker.

It will be up to that person to ultimately make the decision which metric becomes the master metric.

Sample Miro board with the whole process:

miro board with a framework for finding north star metrics
Our Miro board for finding North Star metrics.

After the meeting

Remember that a North Star metric isn’t set in stone

A North Star metric is a way to focus on many different measuring options, which is great for successful product development that’s guided by predefined goals. But you have to keep in mind that a North Star metric is valid for a set period of time — once you achieve the predefined metric goal, you should find a new North Star metric to avoid the problem of local optimization. The key with North Star metrics is to find a global optimum. So without working on at least a few North Star metrics, your product might not mature properly.

Having a North Star metric is important, but it doesn’t mean that the one you pick initially should guide your product’s journey forever — there’s a high likelihood that that first North Star metric will change.

Don’t get too caught up in an accuracy frenzy

Don’t get discouraged by the results with the first North Star metric you define. Choosing that first metric is the most difficult part of the process. The data environment isn’t yet saturated enough for you to make highly accurate decisions — don’t worry about that, just pick the first metric that seems good and iterate to set the baseline for further measurements.

Set a target level for every North Star metric

Choosing a North Star metric is only one part of the process — the other is to assume what’s the satisfactory target level of that metric.

You can think about it as a kind of business gambling — you assume that a metric changes by X when you do Y. This approach is the quintessential element of scientific research and the foundation for making hypotheses and experiments.

If you don’t define a target level for your North Star metric, there’s a chance that its role in your product’s success will be blurred (you won’t know if it was the North Star metric that had a direct impact). And in a scenario where your product fails, you’ll try hard to rationalize it. 

Thinking about how much you can squeeze out of a given metric before you actually start the implementation takes away the ability to rationalize post-factum.

Consider the Lean Analytics Cycle

You can use the Lean Analytics Cycle diagram to find and validate North Star metrics, plus transition from one metric to another:

a diagram with a process for finding metrics in a lean manner
The Lean Analytics Cycle can also help you find a North Star metric.


a handshake over a laptop computer and mobile app screens

Advantages and Disadvantages of Outsourcing Mobile App Development

by
Maja Nowak
Maja Nowak
,
June 21, 2021

Many business owners are hesitant about outsourcing development. Learn about the advantages and disadvantages of outsourcing mobile app development.

Read more

We live in a world where we can get anything on demand. Want to order takeout? Done. Looking for someone to fix your plumbing or paint your house? It's as easy as logging onto the internet and making one phone call.

But when it comes to developing an app, many business owners are hesitant about outsourcing their projects because they don't know where to start or how much it will cost them in the end.

This post unveils the advantages and disadvantages of outsourcing. We’ll show you what to keep in mind while navigating outsourced development to minimize risk and maximize value.

What Does Outsourcing Mean?

Outsourcing means bringing services from an outside vendor into one’s own organization. It is a great way for small businesses without much experience in IT to get their hands dirty with technology with the help of someone who knows how to take care of the technical stuff.

However, outsourcing development also means hiring on-demand developers who do pure development work while your in-house team focuses on more creative product-related tasks. For example, your in-house team can be heavily invested in creating and testing hypotheses while the outsourced team will be implementing features.

In other words, when you outsource mobile app development for your company, you bring someone else in who specializes in developing apps. According to Statista, software application development is the most outsourced IT function worldwide.

Many businesses outsource app development to minimize costs. Source: Statista


What Are the Benefits of Outsourcing?

Outsourcing development is a great way to get more work done, without the added pressure of hiring someone new and managing them. It's also an excellent alternative if you're just starting out and don't have enough cash flow for a full-time in-house team of developers. Take a look at other benefits of outsourcing mobile app development.

Cost-effective

For one, there are a number of cost-saving benefits that come with hiring an outsourced company for your IT needs. Outsourcing software development is less expensive than hiring several team members, such as designers, iOS and Android developers, business developers, UI/UX experts, or any other related positions. Outsourcing allows you to take advantage of someone else's expertise while saving money on overhead expenses like equipment and software costs.

Time-saving

When you're running a business, time is your most valuable asset. IT outsourcing can save you time and energy by reducing the resources spent on finding the right software developer. You can put this extra energy into your company's core business functions, e.g., improving customer relations or creating new features that will enhance customer experience.

High quality of full-cycle services

You can rely on experts to guide you through the whole process of mobile app development —  from ideation and conceptualization of your app, all the way up until deployment and updates. To get a development team that you can trust, look at reviews and testimonials, preferably from unaffiliated websites or services. Choose a company that specializes in your industry to guarantee a high quality of deliverables and a high level of expertise.

Access to experts

Hiring an outsourcing company can also help you increase productivity by giving you access to top talent and expert skill sets. Outsourcing software development — or parts of development — to senior professionals will help you fill talent gaps and get necessary insight wherever and whenever you need it. 

Flexibility in team management

Instead of having to manage a development team by yourself, outsourcing companies hire a project manager. That person is responsible for managing the entire project. Your sole job is to focus on the vision. However, when you hire experts with years of mobile development work behind their belts, you can also count on their expertise and consult if your app specification is realistic and viable in your business context.

Ideal balance between skills and rates

Outsourcing gives you a perfect balance between skills and rates. You’re able to find exactly what you’re looking for in a flexible contract within a reasonable price range.

coins on a mobile phone

App Revenue Models for a Mobile App

by
Mat Zaleski
Mat Zaleski
,
June 14, 2021

Choosing an app revenue model for a mobile app can be tricky. Learn about the pros and cons of the most popular app revenue models.

Read more

The mobile app market is booming. With approximately 247 billion global app downloads in 2020, it's no surprise that everyone wants to get their hands on a piece of this pie. 

Mobile apps are an investment and can take time to grow into something substantial. There are many different ways to generate revenue from an app — choosing one that best suits your needs can be difficult. Let's talk about the most popular models of app revenue generation, how they work, and which one to choose for your business.

What App Monetization Models Are There?

There are many app monetization models out there, but we’ll focus on the five most popular app monetization models available for developers: 

In-app advertising

In the in-app advertising revenue model, app developers display ads inside applications. The advertisers pay the developer every time an ad is displayed. The potential for this mobile app advertising revenue is essentially limitless. If your users spend enough time in your app, advertisers will want to buy the ad space.


For example, even though Instagram is a free social app, they generate revenue from advertising. By delivering highly personalized ads based on data acquired from its users, Instagram’s revenue has been growing rapidly. It’s projected to exceed $18 billion in ad revenue in 2021 in the US alone.

A smartphone with the Instagram app open
Instagram is an example of in-app advertising that yields great results. Source: Unsplash

Still, even Instagram can overdo its advertising endeavors. The algorithms are smart at firing highly (and sometimes eerily) accurate ads, but the growing number of ads sparked multiple debates on Reddit and in media outlets. So the key to doing Instagram right is to make the ads feel natural and unique — you want your users to stop and enjoy the storyline of the ad, just as they would the content of someone they follow. And yes, this advice applies to B2B selling as well, both on Instagram and in mobile ads.

table with pros and ons of in-app mobile advertising

In-app purchases

In-app purchases are a pricing strategy in which basic services or products are provided for free (or at lower cost) while more advanced services or products require additional payment. The idea behind this is that the company will make up losses by monetizing other features of its service. 

in-app purchase pop-up
An example of an app that unlocks additional features after a user purchases them. Source: App Store

Subscriptions

When it comes to long-term revenue streams, subscriptions are often the best choice. Oftentimes users are either given free access to a limited amount of features or access to all features for a trial period.

One of the most profitable non-gaming apps that utilizes this model is Tinder. It offers two paid tiers and the option to boost or sponsor your profile.

Tinder subscription tiers example
Tinder uses different subscription tiers to monetize its app. Source: Tinder

Freemium

Freemium is a type of app revenue model that offers an application for free and then generates revenue from in-app purchases. The freemium model has been widely adopted by app developers, as it allows them to distribute their applications for free while still generating significant revenues. 

Spotify is a great example of a freemium model. They have a free, ad-supported tier that is available to all app users. If people get tired of ads, the premium tier packs additional features and eliminates ads. Spotify also offers a free 3-month trial for a premium version, which builds a stronger relationship with the product and convinces many to continue paying for the app.

Spotify premium model example
Spotify’s freemium model offers a free and a premium tier. Source: Spotify

Paid apps

Paid apps, also known as premium apps, are the least used app monetization model. Developers charge users a one-time fee to download the app from the mobile app store. The upside is that it's easier to plan expenses in advance if you know how much revenue is going to be generated from the start of the project. There are rarely any surprises later once users start using the app. The biggest downside is estimating how many users will actually pay for the app. 

In a world where we’re bombarded with low-quality digital products, make sure that what you’re trying to sell has a laser-focused target audience, is tested, well designed, and delivers what it promises.

Currently, one of the most successful paid apps is Forest. For a one-time fee of $2,29, Forest gamifies productivity and focus. When users stay in the app for a set period of time, they get to plant a tree — both inside the app and in the real world.

Forest paid app example woman in the field planting a tree
By paying for the Forest app, you can plant real trees. Source: Forest

Sponsorships

Sponsorships are one of the least known app business models. While online banners or video ads improve brand awareness, they don’t necessarily give the customer anything. Sponsorships, on the other hand, operate on an app monetization model where users receive rewards by completing tasks in the app.

Sweatcoin is doing an amazing job when it comes to creating revenue and engagement through sponsorships. It’s a free step counter app that pays its users a made-up currency (sweat coins) for their steps. Users can use the digital currency on the app’s marketplace and grab discounts or even free products.

Sweatcoin app example with marketplace elements from app developers
Sponsorships generate revenue on the Sweatcoin app’s marketplace Source: Sweatcoin

How Do I Choose a Monetization Model?

To choose a revenue model, first consider why you’re developing an app at all. You also need to know who you're developing your mobile application for. In other words, what is your mobile app's ideal customer persona.

Given that over 90% of apps are free, you might be tempted to go that avenue. However, it all depends on the long-term strategy you have for your app.

For example, you might develop an app for controlling your IoT (internet of things) device with the app being a complementary addition to the paid device. As the app matures and gets more refined, and you’ve attracted enough loyal and invested users, you can start charging for your app. This is especially valid for businesses that want to grow and scale with enough stickiness and financial capacity.

But again, the app monetization advice highly depends on your app and target audience. So it’s best to always start with the customer in mind. Try to talk to a few of your customers about their experience with the app: how much would ads spoil their experience; would they be willing to support your app by paying for it.

More app developers are leaning towards the hybrid model by including several monetization strategies. For instance, your app could be free with ads and an option to remove them via an in-app purchase.

people playing with a mobile application

How to Boost Mobile App User Experience

by
Maja Nowak
Maja Nowak
,
June 4, 2021

Mobile apps are a great channel for reaching a larger audience. Here are the best practices that can help enhance your mobile app user experience (UX).

Read more

Mobile apps are a great channel for businesses wanting to reach a larger audience. But designing apps with a positive user experience can be a daunting task. From understanding your audience to building the right features, many factors go into the design process. Here are the best practices that can help enhance your mobile app user experience (UX).

What Makes a Mobile App Successful?

With a mobile app, businesses can reach more customers and incentivize them to make a purchase. But not all companies are successful in their efforts to develop a mobile app that becomes a reliable revenue stream. A staggering 99% of consumer apps fail.

A number of elements make a successful app — idea validation, user personas, mobile analytics, and comprehensive marketing strategy, are just a few of the necessary building blocks that increase a mobile app’s chance on the market.

For many businesses, it can be difficult to maintain consistent customer experience during the mobile journey. This article outlines some of the best UX practices that'll improve user retention and satisfaction.

What Is UX in Mobile Apps?

Mobile UX describes how the design and performance of an app impact the user’s perception of a mobile application.

Mobile UX designers focus on:

  • improving how users move through the interface
  • analyzing how the services provided are delivered
  • determining whether the content is easy to read
  • checking if an app performs well speed-wise
cartoon people writing on digital boards

How to Create User Personas for a Mobile Application

by
Wojciech Czajkowski
Wojciech Czajkowski
,
May 24, 2021

To deliver high-quality experiences to your users, guide your designs with user personas in mind. Check out how to create user personas for a mobile app.

Read more

User personas are a fundamental part of the user experience (UX) design process. To ensure you’re delivering the best experience for your target audience, you should create user personas before developing a mobile app. One of the most common mistakes business owners make when building an app is they often assume they know what their customers want.

But the only way to learn what are the motivations and goals of your customers is through user research and the development of comprehensive user personas. Once you know who your target audience is, you’ll have enough validated data to guide your UX design decisions.

What Is a User Persona?

A user persona (or buyer or marketing persona) is a fictional, yet realistic, portrayal of the most important user group. Designers use them during the design and development process to implement solutions based on the understanding of what your customers want.

Step into the shoes of your target customers to understand user needs, motivations, and expectations. A solid understanding of your main user groups is the cornerstone to designing an efficient and useful app.

Why Do You Need a User Persona?

You need to know who your end user is and how they interact with your product to be able to create a relevant and engaging product. If you don't have an established target audience and know little about your consumers, chances are that much of your time and money spent on app development will go to waste.

When you build your app with personas in mind, you’re able to create personalized experiences that resonate with target users.

According to a 2019 Econsultancy report, delivering personalized customer journeys has:

  • Improved retention rates (cited by 51% of respondents)
  • Increased lifetime value, due to repeat visits, personalized marketing, and the trust of the individual (cited by 45%)
  • Increased sales (cited by 41%)

Marketing personas are invaluable during the product design process. They are an inherent part of your mobile app marketing strategy, helping you communicate your vision and ensure that you deliver a consistent message across all of your communication channels.

cartoon hand playing with an app with charts in the background

Guide to Marketing Your Mobile App

by
Maja Nowak
Maja Nowak
,
May 17, 2021

Marketing a mobile application involves a combination of tactics and strategies. Learn how to market your mobile app.

Read more

With over five billion unique users on mobile devices, creating an app opens up a whole new channel through which you can interact with your current and potential customers. But a large audience means even greater competition. 

Here's everything you need to know about marketing your mobile app and becoming visible in the crowded world of mobile apps.

What Is Mobile App Marketing?

Mobile app marketing is creating a strategy where your main goal is to attract targeted users to your app at every stage of the marketing funnel — from the moment they hear about your app to the time they become users and turn into loyal customers.

To do this well and effectively, your marketing content must be personalized and highly strategic.

How Do You Market an App?

Marketing a mobile application is a complex process that entails many steps and covers multiple angles from which you generate demand for your application.

We’ll delve into more details in later sections, so for now familiarize yourself with the basic setup for how to market an app:

Define your target audience 

Having an idea of who your app is for is the best place to start. If you can't describe your target audience aka the user persona, it’ll be tough marketing your app to them. When you know your target audience, you can be precise and effective in your marketing efforts.

A user persona should paint a picture of your ideal target customer. This will help you craft the app marketing strategy so that it resonates best with your prospects.

The key characteristic of every user persona is the pain point and challenge the customer is facing. These two should be top of mind when creating your user persona.

Besides these two, try to answer these questions:

  • What platforms do your target customers use (Android, iOS, or both)?
  • What kind of content does your user persona consume and engage with online?
  • Can you leverage any influencers that are popular among your target app users?
  • Is your user persona likely to make in-app purchases for premium content/features? Or maybe your monetization will be more ads-based?
  • Which channels are most effective for marketing purposes? Consider both paid and organic (e.g., Facebook, Instagram, Linkedin).
  • How should you communicate with your audience? What is their preferred tone of voice and style?

Remember, a lot of answers to these questions will initially be assumptions. As you experiment with your marketing strategy, these hypotheses will be verified.

Research your competitors 

App marketing is not just about knowing your audience. It's also about knowing what your competitors have been doing. Market research and competitor research will help you discover successful strategies and avoid costly failures.

Watching your competitors closely will give you plenty of insight about which channels to use and the type of messaging to draw inspiration from. Watch your competitors, make notes, and use this data to make your mobile app marketing efforts even more successful. 

The most successful apps in the stores are those that address the most common user needs. For example, Zoom or Google Meet — aka the most downloaded apps in 2020 during the pandemic — fulfilled the need for convenient remote communication for personal and professional purposes.

So you could orient your marketing message around a specific and current problem. Raise awareness through marketing content and then drive demand.

Colorful boards with apps icons sorted by worldwide downloads in 2020
Top non-game apps by downloads for 2020. Source: Sensor Tower 

Create a landing page

A landing page allows users to learn more about your app on mobile web and desktop. Use SEO and search intent keywords to attract your users and show them how the app solves their problem.

Landing pages are also a great way for initial app onboarding — you can create a video to let your prospects know what they can expect when they install your app. you can include screenshots on top of demo videos.

Use call-to-action buttons with links to your app in the App Store and Google Play Store.

Start a blog

This is another way to reach your target audience and use SEO to drive traffic to your app. Keep your blog updated and share valuable and unique content on your social media channels. Consider guest blogging to further increase reach.

A good practice is to start blogging and generating organic traffic long before app release. This will increase your app’s traction significantly once you launch.

You might wonder what content to publish. The best content is one that drives awareness about a problem — the problem your target audience is facing. These can be whitepapers, reports, videos, case studies, articles. Cover all verticals of the problem.

Optimize your mobile app’s product page

Optimizing your mobile app’s product page is a fundamental step in every app marketing strategy. Think about the title, design a catchy icon, and use screenshots that convey the app's selling points and benefits.

You never know what will trigger the customer to install your app, but doing the groundwork will give you extra points.

We’ll dive into a little bit more detail about product page optimization on app stores later.

Promote on social media

Social media marketing can have a huge impact on the popularity of your app. When you're thoughtful about what content you share on social media and distribute it to qualified prospects via both organic and a bit of targeted advertising, you can increase your traffic significantly.

Don’t go for all social media channels available, though. Start with three major ones (Facebook, Instagram, and Linkedin) and verify which generate the most users for your app over time.

Contact influencers

Look for influencers that your target audience follows. Contact them for a possible partnership (e.g., by sponsoring their podcasts). An honest review from an influencer on their social media channels can give your app lots of traction.

person playing with shapes

Getting Started with Kotlin Multiplatform Mobile

by
Kamil Halko
Kamil Halko
,
April 27, 2021

Kotlin Multiplatform Mobile (KMM) is a cross-platform mobile framework that lets developers share business logic across platforms. Discover more about KMM.

Read more

Commercial mobile development projects usually leave little time and space for experimentation. Finding tools and technologies that bring tangible value to the product and let you evolve as a developer can be a challenge. That’s why a small library that enables code sharing between platforms is a nice first step you can make to learn a new technology that directly benefits a project. Kotlin Multiplatform Mobile (KMM) is that sweet spot between play and gain.

What Is Kotlin Multiplatform Mobile?

Kotlin Multiplatform Mobile is a cross-platform mobile framework for sharing business logic across platforms.

Sharing business logic across platforms brings along a host of benefits:

  • Reduced development time
  • Easier code maintenance
  • Flexibility 
  • Native performance
  • Flawless access to the platform code
  • Tests written once

Currently, Kotlin can be run in JavaScript, iOS, Android, and even desktop applications.

It’s important to understand that Kotlin Multiplatform Mobile (KMM) is just a subset of tools included in Kotlin Multiplatform (KMP). Mobile in the name indicates that this part of the technology is mobile-oriented.

The main focus of Kotlin Multiplatform Mobile is Android and iOS platforms — KMM provides a KMM plugin you can install in Android Studio and, for example, run and debug iOS code straight from there. At the same time, nothing prevents you from sharing your code between other platforms like JavaScript, desktop (Windows, Linux, Mac), JVM, and other targets.

What Can Kotlin Multiplatform Mobile Do?

Even though Kotlin Multiplatform Mobile is in the alpha stage a lot of components are stable. KMM gives developers access to many well-tested and well-tried libraries that let us:

  • Perform HTTP requests
  • Build a database
  • Access local files and app settings

Kotlin Multiplatform’s libraries let us implement a data access layer. You write everything once, test it once, and then you can distribute it across the platforms you need.

But not only that. If you structure your code properly, you can share up to 85% of the code between platforms. You can share everything from the data access layer by Interactors/UseCases to the data presentation layer (ViewModel). 

If you are already using Clean Architecture with one of the MV* presentation patterns you’re good to go with KMM.

Kotlin Multiplatform Mobile used in production:

Some time ago one of our clients asked us to create a library that would be distributed on both Android and iOS. The library would make it easier to access the client’s API and provide a handy way to detect a decent number of events that are essential to the client’s business point of view. 

This was the perfect use case for KMM. The only risk was that there were no examples of the distribution of the iOS framework built in the KMM. But if we found out that it wasn’t possible, we would still have an Android library already built. 

Thanks to the ready-made libraries and the community around KMM (especially Kotlin Slack), the process of implementing this library went really well. Kotlin’s community actively helps to get a job done. 

The greatest advantage of using KMM in a business setting was that we could write the code once, test it once, and distribute it on both mobile platforms.

Support is now very easy — it can be handled by only one person with just a little knowledge of the iOS platform.

The library is open source, so feel free to take a look at AudioburstMobileLibrary.

AudioburstMobileLibrary (available on Android and iOS) lets developers add the Audioburst Player and content to their app.

AudioburstMobileLibrary offers easy access to the Audioburst’s Content APIs, letting developers add playlists, get information about playlists, and handle sending required events to the API without any effort. Integration is convenient and simple to increase engagement.

Check out how we helped Audioburst build their mobile apps.

project planning premortem

Premortem — Why It Should Be a Core Part of Your Digital Product

by
Mateusz Płatek
Mateusz Płatek
,
April 7, 2021

A premortem helps teams predict and mitigate problems before they happen during product development. Learn how to perform a premortem.

Read more

Failures are a natural event in the life cycle of a product, but they’re especially painful when a whole project ends up unsuccessful.

When a digital product fails, the team usually performs an inspection called a postmortem. The team gathers, analyzes what went wrong, tries to draw conclusions, and creates a note. The learnings from that failure help the company adjust the processes so as not to repeat the same mistake.

But what if we could look into the future before the project failed? At nomtek, we use a premortem — an attempt to predict and mitigate problems before they happen.

What Is a Postmortem?

Before explaining what a premortem is, let’s take a closer look at a postmortem.

In medical language, a postmortem describes the procedure after the patient's death, where doctors and pathologists try to understand the cause of demise. The detailed analysis of why something as complex as a human body has failed can be applied to multiple contexts.

For example, when you need to understand what exactly went wrong to be able to avoid it in the future.

Software development loves postmortems because they’re a great learning tool.

What Is a Premortem?

The main purpose of a premortem is to simulate failure before it happens.

More specifically, a premortem is a meeting that takes place before the first line of code is written. All team members involved in a project attend it:

  • account manager
  • development team
  • moderator

Depending on the size of the project and the team, a premortem meeting lasts one to two hours.

three people talking about a project
A premortem meeting starts before well ahead of development work.

We follow these steps:

#1. The scope of the project is explained so that each participant has a full picture of the situation and potential threats.

At nomtek, we do a premortem after the kick-off meeting, when the team already had a chance to familiarize themselves with the current state and plans for the future.

#2. The moderator announces that the project has failed — this is important. We are talking in the past tense: the project has ended. Participants must feel that the action has already happened.

#3. By using sticky notes or an agile retrospective tool, participants list the reasons why the project failed.

These reasons can be the obvious ones like exceeding the budget, the less obvious ones that all fell ill with COVID and the timeline crumbled, or the totally abstract ones like a falling meteorite. 

We throw out all ideas until we can move on to the next stages.

#4. Then we proceed as in a typical agile retro. We group similar cards and vote for the most important problems.

A good criterion is to vote on things that have the best chance of occurrence, and ones that we have an influence on. Sorry, we won't upvote the meteorite scenario ;)

#5. Here we discuss and come up with solutions. There are different techniques for how to carry out this step.

We simply give participants a moment to come up with specific actions and then post them simultaneously on the Slack channel where we can review the available solutions.

Experience tells us that sometimes the most unconventional ideas end up on the action point list, so it's important not to reveal solutions too early, so as not to disturb the creative phase.

The selected solutions must be actionable, precise, and measurable. We can select more than one way of mitigating the risk of a single problem.

#6. The developed action points are assigned to the appropriate people, and then we set a regular checkpoint to check the progress, e.g., in two weeks or at the beginning of a regular retrospective if it’s a repetitive activity.

people putting together a mobile application

How to Build a Minimum Viable Product

by
Wojciech Czajkowski
Wojciech Czajkowski
,
March 25, 2021

Learn what is an MVP and how to build a minimum viable product that will help you validate your hypothesis.

Read more

Most legendary products out there start with a minimum viable product (MVP) that expands and blooms into a feature-rich solution. But not all companies get the MVP stage right. Learn what a minimum viable product is and how to build it the right way.

What Is an MVP?

An MVP is a release of your product with a minimum set of features enough to validate your main hypothesis.

In other words, an MVP is a product that solves your users’ core problems.

Eric Ries says a minimum viable product “allows a team to collect the maximum amount of validated learning about customers with the least effort.”

An MVP is a low-risk way to answer the below questions:

  • Do people need that product?
  • Can I generate a following and a returning audience with it?
  • Is my idea of solving a problem something that people really need? And are willing to pay for?

To do that, you don’t need fireworks and dozens of sparkling features — you need the core functionality that gives you answers to the above questions. Glitter and complexity will come later, in the next iterations.

It’s worth keeping in mind that you don’t need an MVP at all to confirm a hypothesis or check if your idea is viable. You can first look into building a proof of concept (POC) or a prototype.

For a detailed discussion of the differences between a proof of concept (POC), prototype, and MVP read our article.

What Is the Purpose of Building MVPs?

In short, the purpose of building MVPs is to validate your assumptions quickly and improve the product, pivot, or abandon the project before losing any more resources.

Sign up to our newsletter
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.