How do OS updates impact apps?

6 months ago
How do OS updates impact apps? Image

Operating system (OS) updates are a regular part of the computing world, but they often have implications for the software that rides on top of them. New releases bring excitement, but they can also raise some questions.

Many of our clients rightly ask whether an update will impact the functionality of an app they built on a previous OS. The answer is, generally, “It might!”

With a new OS release, it’s always wise to review existing code to ensure it’ll work as well as it did when it was first written. Our Android and iOS developers share a few challenges a new OS version creates.

Implications of an OS Update

There are a few different ways an OS update can affect current code:

  • Changes to SDKs
  • Changes to UI conventions
  • Changes to compatibility

Changes to SDKs

Software development kits (SDKs) are the underlying frameworks that make an OS what it is. As an OS matures, each release will naturally include changes to SDKs an app relies on to work. Those changes can cause the app code to break.

For example, some recoding is required when deprecated methods are justifiably removed from an SDK but are still used in the app. Or, if the semantics of existing methods change to accommodate long-term OS strategies, it may negatively affect a part of the app, again requiring recoding and recompiling.

Changes to UI Conventions

OS changes can also bring about new user interface (UI) conventions affecting existing apps. While the code might still work, these changes may negatively impact an old app’s visual appearance and usability.

For example, the default size and presence of navigation bars can change with a new OS, making the app look awkward if not recoded. Similarly, for Android apps, many icons and design cards can feel stale if they’re not updated with each new OS release.

Changes to Compatibility

Updates also impact developers (and thus apps) in areas like forward and backward compatibility. Development tools are interconnected, and maintaining compatibility may require code changes.

Forward compatibility refers to a design characteristic that allows a system to accept input intended for a later version. Backward compatibility is a property that allows for interoperability with an older version. When developing for both forward and backward compatibility and using several tools, developers may be forced to upgrade an app, even when they don’t want to.

For example, our developers often work with Xcode, a suite of software development tools created by Apple. If they update Xcode to build apps with the latest technologies like iMessage Apps, they may be required to also update their Swift code for other apps for those apps to compile in the updated XCode. One of our developers stated, “I felt betrayed by my tools,” when he was required to make a change he did not desire to make.

Managing an OS Update

Fortunately, the time between the beta release and the public release of a new OS is long enough for developers to start using the new features before users are typically affected. Developers are generally given 3 to 5 months to install the beta version of the OS and begin tinkering on it before that release is publicly available. The beta provides an opportunity to understand where the new OS has the potential to cause a current app to break.

All of our developers spoke about the need to do testing, testing, and more testing to ensure the apps are functioning superbly on the new OS. One of our Android developers stated, “Ideally, I would build a test platform that pulls code from all of our projects and runs it on different virtual devices at different OS levels, taking screenshots and notifying us of any failed tests.”

When time does not allow for that ideal scenario, we rely on regression tests to test all the code in the app. Apple and Google provide release notes detailing the changes in the new OS so that we can focus our tests on the areas with the most change. With a whole new OS, though, the list of changes is so long that it makes more sense to run a complete regression test.

The Bright Side

Transitioning to the new OS and overcoming the abovementioned challenges takes some forethought. However, the changes can also provide opportunities for clients to upgrade the functionality of their apps, incorporating new features that weren’t previously possible. 

For example, Apple just released a powerful weather framework. Such new functionality could be a perfect enhancement to fitness, travel, real estate, or even mental health apps. On the Google front, ultra-wideband antennas for third-party Android apps appear to be in our future. Android phones could be used as a key fob, serving as an ID for building system entry and other potential new features.

If you want to talk more about possibilities for changes to your app or concerns you have about how it functions now, please contact us. We’d be happy to take a look.

Let’s build something together

Have an idea? We help clients bring ideas to life through custom apps for phones, tablets, wearables, and other smart devices.
Recent Posts

InspiringApps News

InspiringApps Shares Advice for Women Managing Tech Teams

Boulder, CO—In the latest article from Built In Colorado, InspiringApps’ Director of Operations, Stacy Griffin, joins other leaders in sharing their career journeys, the lessons they’ve learned, and their advice for other women. Describe your career journey and current role. My career journey spans over 20 years in technology, project management, and people management. I started out as a developer at IBM and then moved into a developer lead role, which is when I began managing projects. From there, I pivoted to a formal project management role, which involved interacting with the business, gathering requirements, and managing technical project delivery. I eventually joined InspiringApps as a project manager, applying those same skills. Recently, I was promoted to director of operations, a new strategic role. I manage people and projects as a member of the leadership team. I’m also involved more on the sales side. My job requires managing a team of developers and overseeing client engagements and project lifecycle and delivery. It requires a lot of communication with clients and developers, both of whom have distinct working styles. To set expectations, I draw from years of experience in listening and applying empathy. I also have a master’s in computer science, which gives me aptitude and credibility with technical audiences. What advice do you have for other women who manage tech teams or aspire to? I have two pieces of advice for women who aspire to manage tech teams. First, find a role model. Look for mentors, ask questions and try to learn from the people around you. Secondly, avoid imposter syndrome. You should feel comfortable in your own skin. Remember that you’ve earned your seat at the table. What’s one important lesson you’ve learned in your time as a leader, and how has that made you a better manager? I’ve learned that there’s no single right way to manage people. Having the courage to manage in a way that’s comfortable and authentic to my personality allows me to lean into my strengths and improve in areas where I need to grow.  It’s also important to know that treating people with autonomy and respect builds trust. People appreciate it when you’re honest and open. I’m not a micromanager, and I naturally take the role of supporting people. I’ve learned to combine open dialog with frequent check-ins. Bringing my authentic self to work makes me a better manager.

4 days ago

InspiringApps News

Creating a Great Company Culture

Culture is what we share; it’s the values, goals, attitudes, and practices that make us who we are as an organization. A strong culture can give your company an advantage by fostering loyalty, creativity, and motivation. But what are the ingredients of positive company culture? Each company has its own unique culture and way of crafting it. The best cultures dovetail perfectly: employees and leaders focus on the same mission and encourage rewards. Discovering the perfect combination, however, doesn’t happen overnight.  This article shares our approach and recommendations to create an intentional company culture, offering insights and strategies that any company can apply to nurture a positive environment that leads to success. What is intentional company culture? Every company has a culture. While culture may form organically, consistent and intentional cultivation will result in greater success. Intentional company culture combines organizational values and mission with the rewards of employment that come in four main styles:  Loyalty-based Performance-based Opportunity-based Lifestyle-based No style is better than the other; it’s dependent on the company and the employees hired. For instance, if your staff prefers lifestyle-based culture (flexible work or other perks) over performance-based culture (raises and promotions for a job well done), the employees may stay dissatisfied and leave to find a company culture that suits their preference. In InspiringApps’ infancy, the personalities of the relatively few people involved drove our culture. But as the company grew, we were careful to emphasize the characteristics that fostered a positive work environment and eliminated any contrary to what we’ve come to value—empathy, inclusion, and personal growth for our employees.  Why do your employees need an intentional company culture? A recent survey found that 79% of employees who left their jobs did so because of a lack of appreciation, and 50% said they were more motivated by appreciation than money. This sounds like a job for company culture! In an ideal world, company culture and performance should work in tandem. Employees who are happy with their jobs have higher satisfaction rates. However, lousy work culture can hurt employees, bringing high turnover rates, burnout, and subpar work. Creating an intentional company culture requires consistency and time. There is no shortcut.  Intentional company culture benefits from open minds. Influential leaders seek to:  Understand what employees appreciate and what causes them pain. Hear employees’ suggestions for improvement. Follow through with promised changes. Repeat the above frequently. Intentional company culture requires commitment from everyone—especially the leadership team. InspiringApps understands this fundamental truth. An InspiringApps employee explains it best:  How To Develop & Maintain a Great Company Culture  Engaged employees are critical for business success. Experience is the best teacher, and we’ve learned plenty of lessons regarding things that keep our employees a happy part of the team. We built our culture slowly and methodically, and we’re proud to celebrate strong retention, with over 40% of our staff staying with us for more than five years. Among all the lessons we’ve learned, the following best practices stand apart from the rest: Promote from within. Offer excellent benefits. Be inclusive. Communicate consistently. In the following sections, we discuss each best practice in detail and share our experiences to help every company develop and maintain a great culture. Promote From Within Today’s employees are looking for a company with opportunities for career advancement and appreciate roles with a clear path to growth and promotions, as they give them personal goals to work towards. Along the employee journey, InspiringApps offers professional development opportunities that help our team members stay on top of their skills, expand their capabilities, and incorporate new and developing interests. By doing so, our employees can have long tenures at InspiringApps, while remaining competitive. At the same time, we can hire the best candidates for our growing positions right from our own team. As the InspiringApps client roster scaled, so did our team. We promoted long-time employees into our development team lead roles, recognizing their wisdom and honoring their commitment to our team through their tenure. Offer Excellent Benefits Many startups, including InspiringApps, may be resource-constrained in the early days. Health and retirement benefits are expensive, so we focused first on benefits that didn’t require a direct cash outlay. Establishing a two-day-per-week remote work policy over a decade ago, accommodating part-time employees, and offering flexible work hours were all low-cost ways to treat our team with respect. As InspiringApps matured, we also added more traditional benefits. In addition to a 401(k) plan with match, profit sharing, and a generous and flexible PTO policy, we recently increased the company’s health premium contribution from 50% to 100% and added company-paid vision, dental, disability, and employee assistance (EAP). Be Inclusive Inclusivity is a mandate kept top-of-mind in the projects and clients we take on and the staff we hire and promote. In a historically homogenous industry like tech, inclusivity can be a challenge. Through intentional recruiting and a focus on providing opportunities for traditionally underrepresented groups to join the field, InspiringApps is working to build a more diverse team that better reflects the communities we serve. Promoting women in tech is one way we’ve made strides in our company. At InspiringApps, women make up 40% of our leadership team and more than a third of our employees, which is 20% more than the US average. Promoting diversity and inclusion provides various perspectives, which is essential for the challenges we’re addressing in our consumer apps. We consider it a competitive advantage as we continue to innovate for our clients. Additionally, we’ve made a concentrated effort over time to welcome new employees. Years ago, that welcome included a team lunch on Pearl Street. Since our team has grown, that lunch is now digital—and the efforts to be inclusive extend much further than that. Communication and connection are ingrained into the way we set up projects, make progress on initiatives, and more. Communicate Consistently Secrecy and unexplained decision-making from leaders lead to unengaged employees. Transparency is the answer. About 85% of employees are most motivated when they know what’s happening and why. Open and frequent communication, including standups and all-hands meetings, project or team demos, company newsletters, and social media, encourages employees to gain trust in leadership. When you share company goals regularly, your employees will feel confident in knowing the direction they’re working. The more your employees see open communication from leaders and are encouraged to participate in decision-making, the better communicators they’ll be with your clients, modeling positive communication behaviors in everything they do. Technology is your ally when it comes to employee engagement. Offering a Slack channel or other internal chat features, an employee app, or an intranet site where employees can share and talk directly to leaders can inspire a transparent culture. The Value of Culture InspiringApps nurtures a culture of respect, empathy, and inclusivity. Our commitment to culture is exemplified by an official Great Places to Work ® Certification™. But that recognition is only a small window into the little things that our team is doing every day to reinforce the culture we’ve been nurturing for years. Our culture is one of our most valuable assets. It defines our expectations for the way we treat one another. Beyond making InspiringApps a pleasant place to work, our culture is evident in our client relationships and in the apps we create. Building award-winning apps starts with a language that’s foreign to many of us: code. For more than 15 years, our app development team has built easy-to-use iOS, Android, and web applications serving over 100 companies in a dozen industries. See our work.

1 month ago

Blog Categories
App Design
App Development
Business & Strategy
Client Projects
Events
InspiringApps News
Mobile Industry
Technology