Why Build Native Mac Apps?

I’ve seen a few threads recently commenting about the failings of Electron apps. I decided to think things through as a recovering software developer considering the economics of app development.

My logic is on basis of building software that is largely sold to consumer. With business oriented software, it is easier to charge large enough sums of money that the equation is less clear.

  • Looking at the installed base for computers worldwide, I see numbers like Windows 75-80%, Mac 10-15% and Linux 2-3%. So if I’m developing a new application from scratch, unless there is a compelling reason I will want to target Windows users.
  • Cross platform code - where possible I want all features to appear on all platforms at the same time with a minimum of extra effort.
  • Native MacOS development - Swift the programming language itself appears to be mature enough for regular use. SwiftUI for all the stories I hear is a couple of years away from being easy to develop in. (SwiftUI is going in the right direction as long as you want build a very narrow class of application that fits inside Apple’s ideas of what apps do.)
  • JavaScript and Electron run everywhere. There are also more JavaScript developers worldwide than Swift/ObjectiveC

The only reason I could imagine building a native MacOS app these days is if the functionality was either close the OS that I couldn’t avoid it (Hazel, PathFinder, Bartender, …) or so massively performance dependant (video editing, audio editing). Even with photo editing, my hobby (when not debating on MPU), modern chips are fast enough that I would test to see if I could build in JavaScript?

One more reason I can imagine, I’ve built an iPad app and port to the Mac with Catalyst. However again that limits me to smaller market share.

Where does this leave us? Pester the people who do build applications to make them look native, proper menus and support iOS/MacOS Shortcuts.

Even in the world of business applications, there would need to compelling reason to build a native application.

1 Like

Why make high end cars? High end audio equipment? High end photography gear?

High end anything?

Just pander to the mass market.

As long as there is a market for top quality items there will be a reason to make them, and money to be made.

19 Likes

The Question for me would be, is this telling the whole story!?
How many of those Windows Computers are running a contemporary OS, and how many of them are in an environment, where they even could be of interest for a independent software developer?
Also I would ask myself, what kind of software I want to develop? Do I have a certain target with the software, is it maybe something I need too, or is it just any random kind of software, with no specific target, than to develop and sell some software…!?

1 Like

@Ulli and @MevetS my point was only from an economic perspective you really have to love the Mac to want to build software for it this stage.

1 Like

I’m not really sure what you’re getting at here. This breakdown of market share has been largely the same for a long time.

Yes, Javascript inches forwards incrementally over the decades eating more of what was once exclusive to native applications.

But the failing on Apple’s side in recent years was never about technological capabilities or market share. The big companies were always using unholy messes of cross platform code for things like Photoshop and Microsoft Office. The problem is that there used to be an identity to Mac applications, an ethos to using it’s software which has slowly eroded as Apple’s eyes have shifted towards it’s other, more profitable, platforms.

I think John Gruber coined the term “Mac-Assed Mac Apps” as a name for these kinds of apps. They still exist and seem to be still profitable but I think there’s increasingly less appeal to become one. Also, the massive VC market of the last 15 years has exploded the “need” to grow and grow a lot. See About software funding and "organic software" for very interesting conversation about the influence of funding software on it’s creation

5 Likes

You have to love the software you want to build, to do a thorough job!
That is not dependent on the OS you are building for…
There are a lot of developers on the App Stores that are offering a two digit number of apps, but most of them are just some random kind of software, written without any love or heart, and therefore are more or less useless for their customer…

1 Like

Single Malt Whisky, for example, by price and taste is not for everyone. But for for those who appreciate it, there is nothing better. it’s a niche market but then so is Mac-only software.

9 Likes

I disagree. For that to be the case you would need to prove that there is not a market for native macOS software.

I think you are using some sound logic in your post, and almost wanted to reply with a gif of someone eating popcorn. Because this logic (as you can already begin to see in the replies) does not often land well in Mac-centric groups. Basically, what you just said is sacrilege because it’s Mac native or bust for many people.

I tend to think as Electron apps get better, we will see more Mac-native UI elements and improvements in performance (as in using fewer resources). I sometimes chuckle at the argument of Electron apps being resource hogs made by the same people who tout Apple Silicon as having so much power they can do anything.

I think in reality we will have a bit of both. Indie developers who are passionate about a platform are happy to develop toward that platform. Or if that is where the bulk of their users are. Or if they don’t want to deal with multi-platform. Or, or, or (there are many reasons). But there are just as many who will start working more toward cross-platform applications because they see that’s their best growth potential. Some of these cross-platform applications will be junk, while others will be great.

3 Likes

I think you are missing the point of my and others replies. The argument presented is that there is no reason to make macOS native apps. That has not be shown to be true by the argument presented.

The reason to develop macOS native apps is that there are people who will pay for such apps.

I’ve said nothing about worthiness of electron or any other non-native frameworks.

I agree that there will be different motivations for different developers. For the reasons you note. But the tired old simplistic bean counter argument is just that. I don’t recall the exact quote, but it was along the line that for any problem there is a solution the is obvious, simple, and wrong. This is one such.

The inter webs is my friend:

https://quoteinvestigator.com/2016/07/17/solution/

3 Likes

I never said in my post that everything will or should move toward multi-platform development. It wouldn’t surprise me if some continue down that path (like 1Password has done). Nor will it surprise me that developers will remain on their platform of choice (Marco Arment and Overcast, for example).

I think there are more reasons that what the OP listed as reasons to develop native Mac apps. But I do think there will be plenty who choose to develop cross-platform.

:popcorn: indeed (but a fun topic!) I would think that the skill and experience of your team would matter more than the theoretical market size. Lots of companies should just go wide because they don’t have the skill and taste to make a great Mac app. Likewise, with a strong Mac/iOS engineering background I probably wouldn’t start with something requiring complex and performant backend services. There is software positioned for all volumes of demand for multiple reasons, too.

Question: What is a “recovering” software developer? Just curious…. :thinking:

I never said you did. But you did imply the responses were knee jerk reactions to non-native apps.

Correct. Which is what folks were pointing out, that his analysis was simplistic and flawed.

@MevetS and @Ulli My point is that native MacOS development will die completely.

Background: I see people complaining about Electron apps in general and Evernote in particular. I put on my small business person’s hat and I consider what would I do build an app from scratch. (FWIW the first 20 yrs of my career was building applications).

I briefly considered building an app for a need my wife’s business clients wanted last year. Scan your receipts, match them against credit card and banking data. The goal make credit card reconciliation easy every month. Bonus goal: give you an easy way to track spending.

I considered: Native Mac development, JavaScript web, JavaScript Electron and a few others.

In surveying the potential audience:

  • a local app is key (I don’t want to host your financial data)
  • most users were on Windows

I didn’t build it because the there isn’t a standard interface in the credit card/banking world to request data. (Unlike the EU). Also I think being a consultant is more fun.

I started this thread with the hope that people might reflect on why frameworks like Electron are slowly taking over with newer apps.

2 Likes

I can’t control what you think I did or did not imply. I think I’ve added what I can to this conversation. Enjoy!

1 Like

Really?

And

…………………

Again, until you can show that there is not a market for native apps, your point is just an opinion.

You may be right. But market share numbers and anecdotal stories do not prove your point.

It is simplistic reasoning.

Haha, obviously in this example you would not build a macOS app for a mostly Windows base. But if those are your only bullet points about them, you can build anything you want. Either they’re desperate enough that they can’t express any preferences, or you don’t know what they would actually stick with and evangelize to other potential customers yet.

2 Likes

On the underlying question – why build native Mac apps? – it’s misleading to just look at installed base.

Consider Android vs. iOS. There are many more android devices out there…

But are you sure you’d rather write apps for Android than iOS?

chart showing Android accounts for 70% of app downloads but 34% of app spending

Why cater to iOS users? For the same reason Dillinger ostensibly robbed banks: It’s where the money is.

I don’t have the data, but I suspect for most categories of apps, Mac users spend more than Windows or Linux users.

From there, I’ll point to the arguments others have made about luxury markets.

(Of course, if you can get All the Users by writing your apps in Electron or equivalent, then that’s an even bigger value proposition, as the original post suggests. But my point isn’t that the original premise was entirely wrong, just that installed user base is a wildly imprecise way of considering the size of a market.)

7 Likes