Why Build Native Mac Apps?

This is the key, of course. If you pick any native platform, you’re limiting your audience.

I think the better answer for the original question is that people have different goals when the set out to build software, and that can lead to different places: reach the broadest audience, maximize profits, create a thing of beauty, become Internet famous(?), scratch a personal itch that others might also have…

It’s a beautiful world out there.

Of course! There’s nothing wrong with Java whatsoever; and nothing particularly good about Python – except that it’s the language I know best (at the moment; it used to be PHP). The best language for any given task is usually the one you know.

2 Likes

I think we have a very nice convenience sample going here :slightly_smiling_face:

Other possibilities:

  • People buy the computer (and operating system) that will allow them to do what they want to do.
    People may buy a Mac to run some particular piece of software, likewise with Linux, Windows, et al.

  • Frameworks influence the way software works.
    Generally, Windows applications work like Windows programmers think. In order to use Windows software, it requires the user to learn and being able to predict how Windows programmers think. This isn’t the way people normally think. macOS is somewhat better.
    You could write a Windows application that looks and works like a Mac app, but this be “going against the grain” and have to do a lot of low-level work yourself, the operating system wouldn’t cooperate, and most importantly, it would be alien to Windows users.
    This isn’t completely bad though. Some of you may remember DOS (or earlier) software where everyone had their own ideas about shortcut keys, how a text interface should work, etc.

IMO, “they work” is the bottom line.

1 Like

True but some Java developers can turn you off to the language. I had to support a Java application that the original developer tried to show how clever he was. Really turned me off the language.

Don’t look at any of my code It’s ugly, but it works. Sometimes I duplicate a lot of stuff rather than do proper OOP because I needed to get it working fast.

That doesn’t mean people are paying to use them. Most have a freemium model. I tried using several of them, but they do not integrate with macOS.

The main reason to create a native app is that some users like myself detest non-native apps. This is because there is a need for keyboard shortcuts to work or spellcheck or move snippets of data to other apps or import them. This is not possible with non-native apps. They create their own siloed ecosystem.

1 Like

I find it a bit sad that a forum for Mac Power Users has such a large contingent of folks who defend cross-platform apps and Windows PCs. Sure, Apple needs competition, and cross-platform is easier to develop… but this is the Mac Power Users.

Ah well, that’s how it goes I guess.

4 Likes

hominem unius libri timeo” (‘I fear the man of a single book’) ~ Thomas Aquinas

If Jobs and Gates hadn’t had their companies copy the Xerox Alto, (I.e. cross platform) things would be much different now.

2 Likes

You’re not alone, I also hate using non-native apps.

I’m down to Jetbrains dev tools, Zoom and Teams - otherwise I don’t use any non-native.

The main reason is I use AppleScript a lot and love that keyboard shortcuts are consistent. In addition, I like multi-window apps, and more than anything I find most Electron apps still feel like web pages. I also like that apps like Grammarly work without issues; I found the experience in Electron apps to be really inconsistent and buggy, but Grammarly Desktop works perfectly in all my native apps.

2 Likes

“Why Build Native Mac Apps?”

My answer:

Because if you are able to build a well-designed native Mac app for a big audience (ideally all Mac users) with a nice UI, you will be rewarded with a loyal user base that values your effort and rewards you with paying for your app for many years (personal examples: Keyboard Maestro, Hazel, Reeder, BBEdit, Cyberduck, Transmit, Affinity Suite, Pixelmator and many more). Your app will be chosen. Not the non-native one. And that is not only sustainable, but an economic success.

But… if your app is not able to attract a huge audience (personal example: a niche app like Folge.me; Clarify was cancelled for a reason: not sustainable at this price point just with the Mac audience) or if your app has to work on multiple platforms (for example password managers like Bitwarden, 1Password …), I am absolutely fine to use a non-native app because I totally get why it makes sense going down this route for apps with a potentially not so big customer base or if it only makes sense being on “all” platforms, especially as a frontend for a web-based service.

P.S. I prefer a non-native app over not having any app at all…

1 Like

I like Macs and convinced our founder to try a Macbook back in '08. A year later he asked me if the people in a new department he was planning could use a Mac. Ten years later around 65% of the company had them.

But something like 75% of the desktop world runs on Windows and 70% of smartphones run Android. We were able to switch to Macs because they can operate in a Windows world. They probably would not have become as popular as they are today if Microsoft had stopped making MS Office for Mac. Or if Apple wasn’t able to get the Mac to work reliably with Active Directory and Exchange.

IMO cross platform and cloud based solutions can help the Mac.

2 Likes

I think this is central to this issue: If you work in a way that integration with a Mac is the most important thing (usually (but not always) because you’re working on your own, with other Mac users, or because a specific workflow falls into those categories) then a native app can offer compelling advantages.

On the other hand, if integration with a diverse team is important then the advantages of non-native can override the rough edges, assuming that a native version isn’t available.

I use native when I can and non-native when the choice is between that or not using a Mac.

2 Likes

And we are the “convenience sample”!!!

Edit: I favor the native experience, but only if the app is covering the functions I need to get the job done. I am currently running News Explorer, Mimestream, Citrix Desktop (yes, that’s a Windows VDI), Arc Browser, Safari, Strongbox, Notebooks, Forklift, Excel, Word, TickTick on my machine. That’s 3 non-native out of 11 apps!

1 Like

True, but I don’t have to like it. :slightly_smiling_face:

2 Likes

+1

That’s about the best we can do!

3 Likes

For at least some of us, being Mac power user necessarily means being power users who use Macs. I’ve found this forum to be a great resource to help me when I’m stuck trying to figure out how to make my Mac(s) work with work. Discussing things like the the merits and demerits of native vs non helps silly ol’ folks like me who develop very, very niche apps/software systems that have to work across a variety of devices and operating systems. I’m sorry that it makes you a bit sad but I’m happy to have a community of Mac users with diverse experiences and needs :slight_smile:

2 Likes

Just a bit, not a lot :slight_smile: I’m happy this community exists as well.

4 Likes

I’m confused. Being a power user doesn’t mean I use only Native applications. For me it means I use tools that are appropriate for the task, do a good job and keep out of my way.

I use Obsidian, Craft and 1Password. I use Keyboard Maestro and DevonThink. Honestly, I think the UI of Craft looks for attractive than either of KM or DT. (FWIW I like both apps).

There are many reasons to choose tools. Mostly I focus on ones that do the job well and make it easy for me.

5 Likes

But…once they’ve warped their brain around how Windows programmers think, and they try to apply that knowledge to a different OS, it doesn’t work.

This is why my dad hates iPhones. It’s not because iPhones are inherently bad - it’s because he spent his early smartphone years on Android and built his mental paradigms around that. :slight_smile:

I remember WordPerfect keyboard overlays. :smiley:

See, I think that’s one of the fallacies in play here.

OP’s point seems to be that if you’re going to make the Next Big App, you’d want to cover all platforms by availing yourself of cross-platform frameworks.

And, um…granted. Duh.

But statements about needing to get all the users of a given platform, or wanting all features to deploy to all platforms at the same time are built on the assumption that you’ve identified a concrete market for your particular app (hint: it’s not “all computer users” - it’s not even close), that the market for your particular app has as a design requirement that the app be cross-platform with feature parity (how was this requirement identified?), etc.

It’s putting the cart way, way before the horse.

Let’s say I can ID a market for a utility app. Let’s further say that I can make that utility app, and sell it for a paltry $5/year. I really only need about 20,000-30,000 users to make a decent living for myself - and that’s at $5/year.

In 2018 it was estimated that there were over 100 million Macs in use. I would only need a tiny fraction of a percentage point of the total Mac market.

It’s clearly possible to make money with Mac-only apps. It just requires what making money has always required - identifying a need, filling the need, and serving a group of people that wants what you can give them.

2 Likes

And half the potential users will lose their minds because it’s a subscription, and 30% of those left will complain that it’s not 99 cents.

3 Likes