A Mac app deep dive

Jamf takes you on a deep dive into the in's and out's of Mac applications, discussing the differences and similarities between the various app types, and also explaining how this information is essential for MacAdmins charged with device management, maintaining the device security posture of Macs in their fleet and how Jamf blends best practices with automated tooling to make patch management is a breeze.

May 3 2023 by

Braden Newell

Silhouette of an iPhone user in front of the Apple logo

Without question, our window into the wider world is the internet. Yet, for most of us, our windows of choice are native apps over web browsers. There's just something about these individual sandboxes, custom designed to their specific purpose, that is attractive to us.

Maybe it’s the ease of a little box just sitting in our Mac’s Dock?

As an Apple admin, it is a constant balancing act of preventing access to apps that pose a security risk while empowering users with a wide app selection, helping them do their best work. In some cases, preventing app access may break an employee’s workflow or make them less productive. After all, our responsibility as IT professionals is to empower users to do their best work by leveraging their technology while ensuring the organization’s security posture. Therefore, it is our job to ensure that users have the best possible hardware and apps to help them be successful and secure.

Different types of Mac Apps

Yet, apps are surprisingly more diverse than how they appear. The architecture upon which an app is built can impact Mac's performance and, thus, a user's experience. Let's dive into the different app architectures, some examples and when each type is appropriate to deploy to your users.

Native Mac Apps

Native apps are software designed specifically for the platform they're intended to run. Native apps aren’t web apps nor do they run through a translation process like Rosetta 2. So, why does a native app matter? Native apps can leverage specific hardware capabilities, programming architectures and software features to create a performant experience. A native Mac app built with either SwiftUI or AppKit can optimize its operations for macOS, preserving battery life and reducing CPU, memory and GPU demand.

A great example of a native app using an Apple-built architecture is when a game leverages Metal, Apple's native graphics engine. A game, perhaps ported over from Windows, will likely cause a massive drain on system resources compared to other games written with the Mac in mind. By leveraging Metal developers can take advantage of hyper-performant graphics available to Apple Silicon without heavily taxing the Mac.

There are three main types of native Mac apps: Apple Silicon, Intel and Universal. On the surface, all three apps appear the same, sporting identical features and user interfaces. However, as the names suggest, the difference is for which CPU each app type supports. Apple Silicon apps can only run on M-series processes and cannot run on older Intel machines.

In contrast, Intel apps can run on Macs with Intel processors or on Apple Silicon Macs with Rosetta 2 installed as a translation layer. Finally, Universal apps provide native support for both CPU architectures without compromise. Most modern Mac apps will be Universal, while some developers may design two separate binaries for Intel and Apple Silicon users. While Intel apps can run on Apple Silicon, running a Universal or Apple Silicon app provides better performance and battery life.

Web Apps

Unlike a native app, a web app is only accessible through a web browser meaning the service can only be accessed while connected to the internet and is limited to the capabilities of a specific browser. This means that instead of launching the app via the dock or spotlight search, a user has to launch their web browser and visit the service's website—often prompting a login. This creates a lot of friction for the user.

For comparison, Google Docs is a web app, while Apple Pages is native. Web apps have the benefits of being updatable on the spot and easily accessible on any device. However, native apps can often continue to be used even when not connected to the internet. Additionally, they provide much better performance and response time overall. Talk to your software vendor if you are unsure about using their native app versus web app.

Hybrid Apps

Hybrid apps are unique because they are essentially web apps running inside a native app wrapper. Slack is an excellent example of this. Slack is built using Electron, an app development technology that is used to efficiently create cross-platform apps. Microsoft Teams and 1Password also use this technology. Opponents of hybrid apps like those made with Electron often complain about high-performance draws. While supporters say, it allows developers to create native app experiences for multiple platforms efficiently.

Identifying App Architectures

Information on whether an app uses SwiftUI, AppKit, Electron or another development technology is not readily available within macOS. This information is typically left to developers to disclose. However, macOS makes it easy to determine if an installed app is Apple Silicon, Intel or Universal.

To do this, launch System Information on your Mac and navigate to Software > Applications. There you'll be presented with a list of all the apps installed on your Mac, including their name, version number, source (App Store, known developer, or other), and, of course, the type of app architecture.

Another option is to download Silicon Info from the App Store. This little utility lives in your Mac's Menubar and tells you what architecture an app is built for: Apple Silicon, Universal or Intel, by looking at whether an app is being translated by Rosetta 2.

App Deployment and Jamf App Catalog

As an IT administrator, you want to provide your users with the best apps to optimize their experience with their technology. While users have to use web apps in situations where native app experiences don't exist — such as with Jira and Google Workspace — native apps are always the preferred choice.

As an Apple administrator leveraging Jamf solutions, you need to know which architecture is right for your users. Perhaps an Electron-based app like Slack sourced from the App Store is the right choice, or maybe your organization uses Zoom, and you need to make sure your Intel users get the Intel version package while your Apple Silicon users get the Apple Silicon version package.

Regardless of the app you need to deploy, Jamf has got you covered. Jamf Pro, Jamf School and Jamf Now offer administrators multiple, convenient ways to deploy apps. All three services allow administrators to deploy apps by uploading and deploying packages and by sourcing them from the Mac App Store as a flexible approach to app lifecycle management.

Jamf Pro goes one step further by offering our latest way to deploy apps, App Installers, from the Jamf App Catalog. The Jamf App Catalog features hundreds of third-party macOS software titles that are sourced directly from developers and can be scoped, deployed and updated automatically through the powers of Jamf Pro. Regardless of whether the app(s) you need exist in the Apple App Store or not — there’s no need to spend extra administrative time manually crafting and uploading a package. Instead, utilize IT’s time more efficiently and leverage Jamf App Installers to optimize and automate app deployment — and updates — for your organization's macOS fleet!

Whether your app is an internal piece of software, sourced from a vendor or obtained from the App Store, Jamf enables you to deploy the right apps for your organization to succeed with Apple at work.

Don't waste precious time on the rest and settle for nothing except the best - with Jamf Pro!

The best-of-breed MDM solution for device management that's security-first and Apple-best for your entire Mac fleet.

Subscribe to the Jamf Blog

Have market trends, Apple updates and Jamf news delivered directly to your inbox.

To learn more about how we collect, use, disclose, transfer, and store your information, please visit our Privacy Policy.