What to Expect from Marzipan
blog.iconfactory.com
blog.iconfactory.com
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".
Speculation is that it’s part of the Marzipan effort.
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.
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.
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.
Output is only a very small subset of a game. You need stuff like UI layout or Scene graph with transitions, tweening, texture atlases handling, animation, etc. A good game engine like Unity or libGDX provides all that without a game programmer having to reinvent the wheel.
See for example a list of classes the libGDX API provides:
But for games I’m not super concerned as they’re not generally heavy on the OS UI.
But I feel it's quite close
I have never used a single Electron app that was nearly as bad. In fact all Electron apps I have used are pretty good (VS Code, Spotify, Exodus). Yes they do use more memory, but not nearly enough to pose a problem for my 2012 Mac mini with 8GB RAM.
I agree. We do not have much to judge off of yet, so I'm holding out hope these are not final examples. Apple knew people would find out what was being worked on so went ahead and gave a small early preview. What we see at this years WWDC will be telling.
But yeah, we're not talking about high bars here :(
And then the developers gained experience and now the quality is overall pretty decent.
To them, not necessarily to Apple nor their customers.
The most important problem to solve is envisioning the UI of your app in a world of mouse/keyboard input, arbitrarily resizable windows, context menus, and how to properly move from iOS UI conventions to Mac UI conventions. This is critical in order for the app to look like it belongs on the platform.
My beef with Marzipan is they're basically saying, "LOL don't bother with that," so yea, I agree the most likely scenario is my future Mac desktop full of Marzipan apps is going to look like a desktop full of little phone windows with neanderthal phone-oriented interfaces because developers can't be bothered to re-think their UI a little.
The problem with AppKit vs UIKit is that most of the things seem to be the same until they are not. At that point, you try to hack AppKit to behave like UIKit (probably cause you have some code already written for UIKit) which generally turns out to be a fools errand.
For example, I hate the usage of the Flyweight pattern in AppKit. UIKit doesn't suffer from this.
Developers can already make bad apps, Marzipan doesn't change that. You don't have to use them.
>If only we had not bottom-raced software prices to levels that make it hard to create an app
Are there any product or services sold in an open market where its price is not bottom raced? Even Apple products are many times cheaper than they were in the 90s.
Compared to that, consumer software has become priced around 5-10 USD. At $5 and 1000 customers, you get $5k in revenue. After Apple/Google's commission, you get $3500. Factor in other stuff for marketing, customer support etc. you barely are left with profit. At 200 hours of work, that is $17.5 per hour. And getting to even the first 1000 users can take a long long time. Another option is to make it free, supported by ads, but then you have to have a much bigger user base or you'll be making pennies. On top of that, people get angry when you charge for upgrade or subscriptions. Checkout twitter threads for Reeder 4 and Tweetbot 4. Plenty of people complained - "why do we have to pay again"
Consumer software is currently a terrible space profit/revenue wise. B2B is a much better space to operate in.
I'm currently building a pocket/instapaper alternative but all my investigation around revenue/pricing/profitability left me with much less optimism than I expected. I'll complete this project but I'm probably not going to get into B2C again.
... World hunger?
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.
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.
I think it also had to do with their sheer size. Researching stuff is fine, but in many cases they were pushing out half-baked solution with the force of the herd of elephants that Microsoft is. Had a company 1/100th their size tried the same thing, no big deal, just ignore it.
But when a company worth $1tn these days does the same thing, whatever they're promoting is seen everywhere.
They really needed something in-between Microsoft Research (research almost nobody sees) and full blown Microsoft. Maybe a Microsoft Skunkworks Startup? :)
The iPod, Zune, and Creative Nomad existed for something like 7 or more years before smartphones came around.
It's great that you could subscribe to a music service and sync with whatever songs you wanted, but that doesn't seem terribly useful compared to purchasing albums if you have no ability to queue up any song on demand.
Spotify feels more like unlimited access than those subscription services ever did.
As for Jobs' opinion, I think he mostly just held very personal feelings toward albums as a dude who grew up in the classic rock era. Plus, at the time, subscription services existed and just weren't very popular (see above).
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.
PDAs and 'smartphones' didn't become mainstream pre-Apple, but their design was also more productive. Were it to catch on, we'd have better tools. Microsoft still makes superior tablets, and the only OS for tablets that's usable for productive work.
I only wish they didn't rush to market with Windows phones. Their UI language was a breath of fresh air, and they had a chance to make good smartphones for pro users and professionals. People usually blame the app store, but based on my brother's experience with an early Windows Phone, IMO they released the OS with way too little built-in features compared to contemporary Android systems. It could have survived longer were it more functional out of the box.
More productive than your current iPhone or Android phone?
That's some seriously rose colored glasses.
And I had $800 "smartphones" pre iPhone, and they were all crap...
I know a sizeable number of people were extremely productive on their PDAs. Yet I think there was heavy downsides that were only overcome by sheer dedication from super users:
- laughable battery time, difficult to extend compared to other portable devices
- cell connectivity was just not a thing, or it would half the already thin battery time (tried with a compact flash modem)
- carrier support was super limited where I was, I had to get a new contract from a geeky carrier just for the device.
- downloading and running software from the device itself was possible yet there was very few stuff that could be downloaded, making the device mostly a side companion to a computer
I used a Toshiba PDA on and off for a year, tried a Compaq one as there seem to be more enthusiast on it, it still felt like it wasn't going anywhere with really little to no engagement from Microsoft from a standard user perspective.
Disclaimer: it was in Japan, but comparing PDAs to feature phones, phones had:
- a workable camera very early on
- a decent ecosystem of Java apps downloadable from the phone without any computer reliance (and they were fairly easy to code)
- decent battery life, easy to extend
- fast and efficient mailers (though lack of attachment support and alternative accounts was a pain)
- very good connectivity, of course
- decent calendar/reminder/contacts features (not auto synced though, which was a PITA)
Genuinely, in a lot of aspects, feature phones were more 'professional' and productive than PDAs for anyone in the go or heavily relying on a mobile device. Just like the iPhone is now, really.
The windows CE phones were a step in the right direction, but they still didn't get major carrier buyin, and battery life was still way lower than their generation's feature phone who were starting to get GPS, MP3 players, payment apps etc.
Pieces of a perfect productivity tool are, or were, all there, scattered across time and devices. PDAs, feature phones, modern smartphones. For some reason, they were not put in a single package so far.
I personally think it's because they just weren't worth it for the general public (including pros). Keyboards on android devices didn't convince, interestingly stylus and heavy multitasking are kicking and alive on the Samsung Note series, but only on the iPad for iOS.
'PDA's for specific, dedicated use cases are still a ton in the wild, just as custom android devices also flourish in the manufacture, retail or goods management world (basically "true" productivity-oriented worlds). They found their niche in that respect, the same way Google Glass also went to the business world in face of customer resistance. I see it as a natural evolution in that respect.
I'm not so sure about netbooks though: I remember that being something the played "catchup or kill" on. Any links to refresh my history?
Interestingly Apple said they had no interest in the Netbook market. They released the MacBook Air which had a roughly equivolent form factor but at a wildly different price point.
Not just that: they effectively had to extend its life as there was no way Vista was going to run well on those small devices and 7 wasn't ready for roll-out.
Mostly API convergence. Which they have been doing for years now (adding UIKit parity to OS X), Marzipan is just the latest and more encompassing version.
>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.
And they still consider those two as different use cases, better served with different UIs.
Marzipan is not about sharing the UI paradigms -- its about making it easier to port common code.
Making platforms more similar so it easier to target that platform is very nice for developers. If you can do it without losing what makes users want the different devices then there's no downside.
How well they can pull that off is a different question altogether.
Mac users feel neglected anyway, so I’m very willing to let them try.
To get an idea, the developer has been playing with a tool he wrote that lets him take an x86 build of an iOS app - when you run any iOS app in the simulator it creates an x86 build - and “marzanipies” it.
For instance he took a binary build of Marco’s Overcast app (with permission) and turned it into a Mac app.
I wouldn't read too much else into the project otherwise. Running iOS apps on a Mac may be useful for apps that are not much more than a glorified webpage (so... hmm, most apps?), but it won't be the way to "unify" the mobile and desktop worlds (which still doesn't make sense anyway).
What other platforms did Microsoft have? I can only remember windows phone, but that never seemed that popular.
I've always been a Windows dev, and I've never seen a compelling reason to take up UWP.
In addition, UWP and Fluent Design System had a hard time coming back from "these are the constraints in all situations" to "here's how you flex when these are the constraints of the current system versus when they are merely guidelines that you can break if your user accepts it". That became a focus in Fluent Design System 2.0, but it certainly does feel like it may have been too late avoid the "worst common denominator" branding that Fluent and UWP got painted with early on.
UWP/Fluent did a lot of things right technically that Apple should apply to efforts like Marzipan, they just might not realize it based on the tarnished brand.
And all their 5 users?
It's a comment to put into perspective the relative insignificance of the platform -- and thus that the statement of the parent that it supported that too doesn't amount to much.
It also shows how MS effort was either badly thought out from the start, or at least failed -- and all those cross-platform touch-first changes of Windows UI where later toned down.
UIKit may be more modern in some specific aspects, but it’s also far more limited. Here’s a good post highlighting some of the most obvious differences: https://pilky.me/appreciating-appkit-part-1/
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.
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.
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.
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.
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.
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.
~18 million Macs were sold last year, surely not all of them to developers. Mac sales declined slightly compared to previous year, but market share increased as also fewer PCs were sold.
Of course 'non-professionals' buy Macs as well, but many developers by Macs.
For those not familiar, iOS generally sizes UI elements at a larger number of points than macOS to account for reduced accuracy of touch vs a mouse pointer. The solution in the existing Marzipan apps is to simply scale the output down by about a third so things seem more “Mac sized”. It’s very obvious in text-heavy apps like News, and looks awful.
They already did: see the current Marzipan apps. The hope is that this is not representative of how they will release Marzipan in June.
Preferably Apple can open the private framework that the new MAS uses or one that the Photos app uses (actually Photos have similar problems; like drag&drop not working) but it is much better than Marzipan, which is similar to the situation of Electron :-(
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.
(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.)
It's more like he worked hard on Twitter to become "the Marzipan guy", so now he has stake in this game. If he were to express the slightest concern, his consulting/Patreon revenue would suffer, so he has to believe™ in Marzipan.
Always look for the incentives!
The only shipping Marzipan apps today are the ones that Apple released last year. He didn’t have anything to do with those.
He just played around with the library and made some tools as a hobby. None of those apps are in user’s hands.
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.
UIPickerView, maybe?
Of all the iOS controls, this is the one that handles the worst on the mac.
It looks to me like iOS will win, this has been obvious for some time based on the revenue and new API work:
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.
What, specifically, is "long-in-tooth" about AppKit?
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.
Apple follows what was standard practices across the 8 and 16 bit industry computer platforms, the PC was the outlier thanks to Compaq's clean room reverse engineering and IBM's failure to retake the PC back home with the PS architecture.
If anything, the current smartphone, tablet and 2-1 convertibles show that regular consumers prefer that model, not plugging PC Legos.
A few rich people using VR is not a mass market.
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.
Dell lost money last year and they are one of the largest PC manufacturers.
https://www.prnewswire.com/news-releases/dell-technologies-r...
Apple’s Mac revenue was $32 billion last year.
https://www.statista.com/statistics/263428/apples-revenue-fr...
Let’s say they made a big push and grew revenue of the Mac unit by 20% - that’s less than $7 billion.
Really, this is not something that we should be encouraging.
Can the title be updated to describe what this is actually about rather than just having the name of an almond-based confectionery item?
Oh, wrong marzipan - oops!
Marzipan, if the name does stick, could be "the icing on the cake" that brings iOS developers to the Mac. It seems as though Apple has been spending the past twenty or so years preparing a small bakery.
We patiently await for an updated version of discoveryd to be reintroduced into macOS, codename Tea-and-Biscuits.
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.