
What to Expect from Marzipan - scarface74
https://blog.iconfactory.com/2019/05/what-to-expect-from-marzipan/
======
zoul
I expect a lot of franken apps not fitting into the system. As a developer, I
would be happy to write a new interface for each platform. If only we had not
bottom-raced software prices to levels that make it hard to create an app, let
alone with custom interfaces for different platforms… So are we really solving
the most important problem with Marzipan?

~~~
olliej
According to the unending stream of devs saying that they just want to ship
iOS apps on macos, this is the most important thing.

I agree with you entirely: I expect a huge flood of awful software.

Marzipan for games seems more reasonable, but only because most games are
"create a single window, and go fullscreen".

~~~
saagarjha
Marzipan doesn't seem all that useful for games, since they'd be targeting
OpenGL or Metal for their UI anyways (plus I think a lot of games use Unity
anyways, which does a lot of the hard work from what I hear).

~~~
olliej
plenty of games come to iOS before macOS now.

Marzipan means (I think?) you get a lot of the the basics: get a window, setup
a gl/metal context, start drawing. That's more or less the entirety of a
game's output.

Input then means adding a mouse/keyboard path in addition to touch events and
it seems like that's something that should be easy :D

Honestly the effort to setup a GL (and I assume metal) view is kind of
annoying on macOS.

~~~
valleyer
> Marzipan means (I think?) you get a lot of the the basics: get a window,
> setup a gl/metal context, start drawing. That's more or less the entirety of
> a game's output.

There's a template in Xcode to set all of this up for Metal. It takes about
five clicks.

For OpenGL, it's as simple as adding an NSOpenGLView to a nib.

~~~
olliej
But compare to just recompiling your IOS app to marzipan - you no longer need
to have separate paths to initialize the gl context - all you need is the
different event handlers. I like to imagine that a point+click name wouldn’t
even need that.

~~~
w0utert
You're really grossly overstating the effort to port a typical full-screen
OpenGL/Metal application over from iOS to macOS or vice versa. It's literally
a 1-hour job at most to get a drawing context initialized and up and running
even when starting from scratch. Any experencied dev who has done it before
just re-uses what's already there and will be done in 10 minutes tops.

Obviously you're not even 1% of the way of 'porting your iOS game to macOS'
after that, the remaining 99% will be in re-implementing a mouse-based UI, and
dealing with the fact that your running on hardware with completely different
capabilities and performance profiles. Marzipan will not be able to help with
any of that.

------
blauditore
So Apple is trying what Microsoft did years ago: Platform convergence.

It's quite ironic because as far as I remember, Apple used to have a strong
stance against that, showing e.g. by the fact that Macbooks never come with
touch screens.

Also, there was a loud opposition at least by power users who didn't like that
change (sometimes just for the sake of hating change or hating MS IMO). Let's
see if it will be different in this case.

~~~
hrktb
I don't know how Marzipan will turn out, but Microsoft has a history of trying
good ideas way before they are viable and make the whole concept look
unhealthy.

For instance PDAs and 'smartphones' where tried and got mild commercial
viability way ahead of time with Windows Pocket, but they couldn't push it to
the point it could be mainstream. Tablets were also tried first. Netbooks.
Motion tracking in games. ARM base laptops (we're not there yet, but that
should be coming ?)

I almost prefer Google's attitude of just launching and roughlessly killing
new products, the stigma left is smaller.

~~~
Marazan
Microsoft (+ Intel) murdered the netbook in one of the most insane self
sabotaging plays I have ever seen.

Combine that with the launch of the ipad and the future of ARM based laptops
was delayed over a decade. Netbook makers were poised to release Arm netbooks
only to get scared when the ipad was announced.

~~~
scarface74
ARM netbooks running _what_ in 2010?

~~~
Marazan
Linux although some were going to go with android

------
pcr910303
I’m really curious how Apple is going to solve the HIG problem. Surely Apple
won’t lower the bar for macOS apps, right? (I plead so... or why use a mac
when WSL2 is out and Linux desktops are getting traction?) My naive thought is
that Apple’s Marzipan will add a layer to display UIKit components as AppKit
components that follow the HIG; Currently all kind of differences are present
like textbox radius, modal views(!), etc... Maybe some UIKit components will
be mapped to AppKit ones, and some others (that are only in UIKit) will also
be added to AppKit?

~~~
inapis
> why use a mac when WSL2 is out and Linux desktops are getting traction?

This is applicable only for devs. Mac is not going anywhere for people in a
lot of industries - writers, photographers, business, smb etc. WSL changes
nothing for them and Linux was not in consideration anyways.

Even for devs, I can argue that Mac/Windows are preferable over Linux. Don't
get me wrong, I love Linux but only on the server. Using Mac/Windows adds
significant QoL improvements which are just not there on Linux.

~~~
feanaro
> Even for devs, I can argue that Mac/Windows are preferable over Linux. Don't
> get me wrong, I love Linux but only on the server. Using Mac/Windows adds
> significant QoL improvements which are just not there on Linux.

Please, not this same old tired argument. I could say the exact same thing but
in reverse, it would still be true for some definition of truth and we'd be
none the wiser.

If you're absolutely bent on talking about this tired old topic, concrete
points are what you should be aiming for instead of vague value judgements.

~~~
hellofunk
Maybe you could say that, personally, but quite a lot of developers don’t. I
follow a lot of high-profile researchers at places like Nvidia, and they often
discuss the desire to replace their Mac for dev purposes but have not found a
quality alternative.

An optimistic hope is that the Windows subsystem for Linux will evolve and
mature beautifully. But it’s not there yet, and even then you’re often stuck
dealing with significantly inferior hardware. So Mac tends to be the standard
that a significant portion of the world’s developers compare against.

~~~
zeveb
> I follow a lot of high-profile researchers at places like Nvidia, and they
> often discuss the desire to replace their Mac for dev purposes but have not
> found a quality alternative.

How ironic: Linux would be a lot more well-positioned for desktop use if
Nvidia would open-source its proprietary drivers.

Frankly, though, I find Linux eminently usable and preferable to macOS or
Windows.

~~~
simonh
That's absolutely fine and good for you, but the plain fact is for the vast
majority of people, including most developers, that's not the case.

Having a single consistent desktop with a ton of financial resources behind
it, and a commercial desktop software market also built using huge financial
resources, makes a big difference. Financing is also why Linux kills it on the
server. Redhat, IBM and many more have sunk $billion(s) into Linux as a server
OS and it shows, but that level of investment has never happened for the Linux
desktop.

~~~
addicted
I think the closest equivalent is Canonical. Canonical spent a lot of money on
Desktop Linux, and to be honest, you can see the impact. Desktop Linux today
is far more usable than it ever was, and the millions spent by Canonical are a
large part of that.

Unfortunately, Canonical appears to have scaled back their desktop spending,
so it remains to be seen if someone else will step in. Maybe the System76 or
Purism folks, or maybe Canonical will focus on Ubuntu desktop again,
especially with Shuttleworth’s recent comments that he has been surprised with
the number of large organizations requesrion Linux laptops, esp for their data
science teams, etc.

------
threeseed
If you're interested recommend following Steve Throughton-Smith:

[https://twitter.com/stroughtonsmith/](https://twitter.com/stroughtonsmith/)

Helped a number of teams with Marzipan and has interesting thoughts on where
Apple is at and where they are going with it.

~~~
saagarjha
I'd follow him for the technical discussion, not for his analysis of where
Apple is taking this. He seems to take a quite extreme view on macOS basically
being old and busted and it being time to throw it out, and I feel he either
ignores or misrepresents arguments that don't quite agree with him. As one
example, he has a post where he makes a "Good Mac Citizen" except it's really
not one at all: [https://www.highcaffeinecontent.com/blog/20190302-Making-
Mar...](https://www.highcaffeinecontent.com/blog/20190302-Making-Marzipan-
Apps-Sing). I think someone must have mentioned this to him, because he
recently felt the need to talk about his years of experience with macOS and
how he's great at making good Mac apps…

~~~
ptx
Could you expand on how it's not a good Mac app?

~~~
saagarjha
He basically made the Marzipan apps we have today. They are at best passable
apps, but hoisting a couple of buttons into the title bar and using the same
bland "large sidebar tableview" style does not make an app into a good Mac
app. Apple has not yet provided the APIs to make these apps good Mac apps.
Calling these apps "good" is quite a stretch.

(Before someone mentions it: yes, I know he has improved his apps since his
blog post, but it's mostly just been in response to people saying that he's
missing something that AppKit provides for free, and he will go in and monkey
patch the thing in hackish way and call it a day. I have a feeling that he
actually personally thinks that these are good apps and is annoyed that people
are calling him out for believing this.)

~~~
tinus_hn
I think that is all we are going to get from this, hastily ported small apps
where the fact you even have the app on your Mac outweighs the bad UI. I don’t
think it is useful to port large apps because the iOS kit just doesn’t support
everything you need for a good large Mac app.

~~~
zapzupnz
That's precisely what Marzipan proposes: additional APIs that allow iOS apps
to be good Mac apps without needing to port to AppKit. Looking at how it
behaves now, it seems to either bridge some UIKit concepts to AppKit directly
or replicate AppKit functionality within this macOS-specific version of UIKit.

------
whywhywhywhy
Keep hearing people talk about how this technology is about porting iPad apps
to the Mac, personally I don't see that as why they're doing this at all.

Today the Mac has a very healthy ecosystem of professional apps, however the
same can't be said for the Pro iPad range, which despite a handful of
admittedly very good outliers (Procreate, etc) it's very lacking in apps for
all professional workflows.

I don't see Marzipan existing to bring those few iPad apps to the Mac, it
exists to remove the excuses for Mac developers to only build for OS X.

~~~
Pulcinella
Except Marzipan is about UIKit on the Mac so it will definitely be easier to
port an iPad app to the Mac that it would be to port a Mac Appkit app to the
iPad.

~~~
bobbylarrybobby
That said, a developer now has fewer hurdles in developing an iOS version of
their app because if they rewrite it in Marzipan, they can continue to develop
their macOS and iOS apps in parallel, and they can just drop support for the
pre-Marzipan macOS version of the app.

------
saagarjha
> simple and familiar on the Mac, like the pop-up button, might be implemented
> for both iOS and macOS. That simple control doesn’t have any analog on iOS

UIPickerView, maybe?

~~~
pilif
The home app currently shipping with Mojave did this[1] much to everybody's
amusement.

Of all the iOS controls, this is the one that handles the worst on the mac.

[1]: [https://i.imgur.com/B8TWtTg.png](https://i.imgur.com/B8TWtTg.png)

~~~
saagarjha
The Home app is using UIPickerView on Mac when it should really be using
NSPopUpButton. Likewise, Mac apps using NSPopUpButton should use UIPickerView
on iOS. At least, that's my view of things.

~~~
grey-area
The whole point of any merge is that one entire UI framework goes away. There
is no way Apple will keep two entire APIs available after a transition period.

It looks to me like iOS will win, this has been obvious for some time based on
the revenue and new API work:

[https://news.ycombinator.com/item?id=4776859#4777354](https://news.ycombinator.com/item?id=4776859#4777354)

~~~
saagarjha
iOS may "win" in the sense that UIKit on the Mac gets the blessing of being
the preferred way to develop apps, but I would eat my hat if Apple decided
that UIPickerView's stupid spinny wheel was the "new" way of doing list
selection on macOS. I think it is significantly more likely that UIPickerView
ends up being "themed" on macOS to look like NSPopUpButton.

~~~
grey-area
Sure, they'll present some controls differently, and some controls for Mac OS
will need to be added (for menus for example). I'd expect them to attempt to
keep differences in presentation to a minimum though.

------
Carpetsmoker
I read a few paragraphs and I still have no idea what "Marzipan" is supposed
to be.

~~~
saagarjha
This article is aimed at macOS developers, who generally have a decent idea of
what Apple is working on. I have a comment downthread which has a short
explanation of it for those who don't follow this closely, since someone else
has a similar complaint:
[https://news.ycombinator.com/item?id=19875612](https://news.ycombinator.com/item?id=19875612)

------
aaronbrethorst
I originally learned Objective-C and Cocoa in 2001, and released my first Mac
OS X app in 2003. When the iPhone OS SDK came out in 2008, it had been a while
since I had written software for an Apple device.

Nowadays, I probably spend between 10-40 hours each week writing Obj-C and
Swift against UIKit, but never the long-in-tooth AppKit.

I’m excited to get back to building Mac apps, and porting OneBusAway to the
Mac this summer. It’ll be nice to not have to pull my phone out of my pocket
or launch a simulator to be able to tell my wife about when she needs to leave
for the bus.

There will be a lot of garbage apps, but this is no different from what
already exists on iOS. And when was the last time you looked at the Mac App
Store anyway? I only ever use it to install Xcode updates.

~~~
mpweiher
> long-in-tooth AppKit.

What, specifically, is "long-in-tooth" about AppKit?

------
Crontab
Does anyone know if Marzipan applications can be distributed outside of the
Apple store?

------
jillesvangurp
MS and Google are committing big time to supporting developers with excellent
support for all things linux in ChromeOS and Windows. This is an area where
Apple used to be strong (through shipping a BSD OS with decent inherent
compatibility) but has made life harder in recent years by basically
neglecting that side of their product portfolio.

The lack of servicability of mac book pros and the many hardware issues with
screens, keyboards, etc. paired with a less than stellar hw. performance means
that it just no longer is what it used to be: a best in class hardware
platform with a no nonsense OS that just works. The hardware is increasingly
meh, and the OS feels stale and limiting. Actually, it's been a while since
Apple launched a product that I really wanted rather than grudgingly upgraded
to (like my current MBP).

IMHO Apple is increasingly fighting itself into a corner by insisting on
exclusivity to their hardware platforms through walled garden style software
platforms. Inevitably some developers and users are ending up on the wrong
side of that wall. E.g. Metal vs. Vulkan, Chromium vs Safari, Swift/objectiveC
vs. just about anything else. It's all so pointless. They do the same things,
more or less, without doing something better in a clear way. They're basically
just obstacles for users and developers, not key enablers.

MS just threw in the towel with Edge and is together with Google creating an
ecosystem outside of Apple where a lot of interesting things are happening in
the next few years. I'm no longer sure a mac is the best platform to
experience that. IMHO this is the biggest challenge against Apple's dominance
in two decades. MS is back and moving very aggressively.

Apple is locking themselves out of important markets through their choices in
software platforms. E.g. the gaming market (aside from casual stuff for IOS)
is a multi billion dollar market where Apple is an after thought. I have some
games on my mac but most of the big titles don't ship for mac. The mac
platform is just too different for them to bother and when things like opengl
get deprecated, things don't get any easier.

This is a failure on Apple's part to accommodate developmers and anticipate
where the market is going. On paper, Apple is an ideal platform for games:
homogeneous hardware platform and a user base that is spending liberally in
the Apple store. Why would you not want to target that as a game developer.
Apple ought to be making billions from this and they just aren't. This "our
way or the highway" attitude is locking them out. VR is a great example of
something that is happening almost completely outside the Apple platform.
Countless wealthy people spending way too much money on games, PC hardware and
VR goggles and Apple gave us Metal, broken Nvidia drivers, and tumbleweeds
when it comes to any kind of meaniningful VR/AR on Apple hardware.

Apple needs a new strategy. Marzipan is not it. It does not appeal to
developers outside their bubble and that's where the action is these days.
They need a new strategy that reverses the trend of developers working around
them. More of the same is not going to make that happen.

~~~
scarface74
The desktop gaming market is minuscule compared to mobile. There was just an
article on HN yesterday saying that most money in games are spent on mobile.

A few rich people using VR is not a mass market.

~~~
jillesvangurp
Minuscule as in about 32 billion $.
[https://newzoo.com/insights/articles/global-games-market-
rea...](https://newzoo.com/insights/articles/global-games-market-
reaches-137-9-billion-in-2018-mobile-games-take-half/)

And that's in a market that is basically ignoring Apple users and their money.
And you are forgetting that people need hardware to run those games as well.
Apple sells expensive hardware but not to gamers .... who spend many billions
on getting the best FPS. Apple is doing very little to tap into any of that.
It would drive hardware sales and if they play their cards right also app
store sales. Particularly VR is causing people to spend thousands of dollars
on non Apple hardware.

You are right that mobile is currently bigger and Apple probably makes quite a
bit out of IOS related sales of that market. But Desktop gaming is not
nothing. Even for Apple.

~~~
scarface74
Apple is a hardware company. How well are the hardware companies doing?

Dell lost money last year and they are one of the largest PC manufacturers.

[https://www.prnewswire.com/news-releases/dell-
technologies-r...](https://www.prnewswire.com/news-releases/dell-technologies-
reports-fiscal-year-2018-fourth-quarter-and-full-year-financial-
results-300610278.html)

Apple’s Mac revenue was $32 billion last year.

[https://www.statista.com/statistics/263428/apples-revenue-
fr...](https://www.statista.com/statistics/263428/apples-revenue-from-
macintosh-computers-since-first-quarter-2006/)

Let’s say they made a big push and grew revenue of the Mac unit by 20% -
that’s less than $7 billion.

------
rich-tea
I've read two pages of the article and I've still no idea what it's talking
about. They're clearly going for the "shrouded in mystery" marketing approach,
but I haven't got time for that.

Can the title be updated to describe what this is actually about rather than
just having the name of an almond-based confectionery item?

~~~
saagarjha
Marzipan is an internal framework for running apps written for iPhone on
macOS, set to be publicly released to developers this June at WWDC. Since the
UI paradigms for the platform differ, it's an open question what will happen
in these cases and whether the resultant apps will be of high quality. Many
developers predict this as being an opportunity for Apple to adopt a new UI
paradigm for macOS apps that matches that of iOS more closely.

------
devereaux
I expect first a delicious crunchy chocolate, then a soft tasty almond paste.

Oh, wrong marzipan - oops!

~~~
taneq
Same. I know that "naming is hard" but it seems like these days software
people take a perverse delight in giving things completely unrelated names. At
least back in the day we used impenetrable acronyms which kind of made sense
when explained.

~~~
saagarjha
This is an internal code name for something that has not been publicly
released.

~~~
kkarakk
remember windows metro? marzipan is going the same route, whatever apple calls
it later, marzipan is going to stick

~~~
toasterlovin
Marzipan is not something that is public facing. It is an API for software
developers. It will get a name at WWDC in a few weeks and then it will have
about as much public awareness at UIKit.

------
dmitriid
I have little hope for Marzipan. Apple’s own Marzipan apps are meh at best.

And then on iOS... iOS’ own dashboard no longer works in landscape mode.
Apple’s own Books app’s interface only has portrait mode. And this from a
company which expects other devs to be able to create _universal_ apps that
target different screens and interaction modes.

