12 ms·
Just my two cents... The banning of Electron apps for using a non-public API just means it's consistent with any other application submitted to the app store..
by rubyn00bie 7y ago
Just my two cents...
The banning of Electron apps for using a non-public API just means it's consistent with any other application submitted to the app store... they cain't use them sweet private APIs neither. Users can totally still go and download a notarized application though and have no problems. It's something that'll very likely be remedied by the Electron team in its entirety if it hasn't already been...
As far as not giving a shit about Safari's ability to do WebRTC and PWAs properly; I don't really see that as Apple trying to kill web technology as much as them just not profiting off it. Apple doesn't make any money from the "web," they make it from their platforms which aren't HTML/JS/CSS. As a developer, that lack of focus does piss me off sometimes, but... as an end user I don't really notice. Safari is still the best mobile browser available, even if it is lagging behind the rest in terms of standards adoption.
...
And tangentially, in my opinion, the Electron apps being booted is a good thing, if even only temporary, as I really hate downloading an app from the Mac App Store only to find its a full blow fucking Chrome instance for something that would be literally be two NSViewControllers and a handful of "slightly" customized views. Like "Yo, player, your system tray app to show this red or green icon is using 400mb of ram and occasionally locks my CPU. WHY!?!"
- st3fan 7y agoNo app is being booted. New updates are being rejected because of private API usage. If Electron fixes their usage of private APIs then this whole storm blows over. Now if Apple introduces a rule that specifically says “non-AppKit apps are not welcome on the store” then let’s panic. But that is not happening here. (I’ll be the first in line to admit that private APIs and App Store rules are mostly limiting creativity and competition )
- rubyn00bie 7y ago+11 and thanks for the clarification, that even lessens the issue IMHO. ... my third and fourth cents. I don't think a lot of folks realize just how rich the ecosystem is for developing a MacOS or iOS application without writing ObjC or Swift. This is really one particular toolkit, that's doing something it's not supposed to, and that's it. You can write MacOS/iOS apps using C, C++, Java, JavaScript, .NET, Ruby, and I'm sure a bunch more each using something _not electron_ and are not having this problem right meow. The real pain I think for most people using Electron is that they're so far removed from the native SDKs it's scary to not know what the fuck really happened. That's fair, but that's also the price for using an abstraction like Electron. If you're not the one making the API calls, then you're opening yourself up to that potential issue and it's going to be scary until you understand it. Personally, I don't think I'm smart enough to understand that many layers of abstraction even if I wanted to; so, I don't use them and just write native code. Edit: Added MacOS or iOS for clarification since my point is the same for both.
- st3fan 7y agoThis whole thing is about macOS not iOS.
- stefan_ 7y agoInstead of raging at Apple, what all these people shipping Electron apps seem to not have realized yet and are about to learn is that 1) the private API use is not in Electron, its in Chromium 2) and Google won't fix it because they 3) do not distribute through the Mac App store and 4) use private APIs to be competitive with Safari on things like power consumption. Your app now hinges on the ability of developers-that-are-not-you that you are not paying to maintain a private API free fork of Chromium and in the process not break such essential things like display composition where these APIs are used.
- st3fan 7y agoThe right thing to do for the IOSurface or CALayer API is to file a radar and start a discussion with Apple to make it official. They do listen and this has happened plenty before. Rage tweets or Medium postings probably won’t help much though.
- DaiPlusPlus 7y agoApple will probably have to. * I understand the prviate API was about reducing power-consumption. * Apple sells itself on superior battery-life compared to Windows laptops. * Unfortunately, the Electron ecosystem is too big to dismiss - there's a lot of software using it that could potentially pull customers away from Apple's App Store if they weren't allowed back-in. * Despite the fact most of those apps are nominally free (Slack, Skype, etc), if they weren't available in the Mac App Store it would mean users would stop seeing the Mac App Store as the place to go for Mac software - thus damaging the brand. In short: if Apple doesn't document this power-management API and make it public then significantly fewer _important_ apps will be available in their Store which is bad for Apple's current long-term vision. If these apps do modify themseles to not use the battery-life API then they'll reduce the computer's battery life which then makes Apple look bad.
- dwaite 7y agoIt isn't a power management API. AFAIK Chrome is bridging in its cross-platform rendering at a late stage into CALayer, and the internal functions override CoreAnimation's handling of redrawing dirty layers. Similarly, it is using internal functions to map mach ports onto file descriptors because their cross-platform bits do not understand mach ports.
- neodymiumphish 7y ago> Safari is still the best mobile browser available... This is nonsense. Safari is the only mobile browser available on iOS, so if you're sorting by mobile available per platform, then of course it's the "best [of one]". If Chrome and Firefox had the opportunity to bring their platform fully to market on iOS, there would be some real competition there... They could still do what Android does with displaying any in-app web rendering like Android System WebView, while allowing users the option to use the same browser and experience they're used to on their desktops.
- ralmidani 7y agoAre you sure? I have Chrome on my iPad.
- sansnomme 7y agoThey run Safari/Webkit underneath. The core engine is not Chrome code. What you use is the value-added trinkets like bookmark sync, different UI design. The important bits are still controlled and locked down.
- IggleSniggle 7y agoIf Safari for iOS could just add "Find in Page" like exists in Chrome for iOS, I would switch today. Chrome shows it's possible. Why can't my mobile browser have Find in Page? It's far more valuable in mobile, because you can see so much less of the screen.
- briandear 7y agoIt does. Type into the address bar, scroll to the bottom of results.
- donarb 7y agoIt does offer Find in Page, you tap the address bar to bring up the keyboard, type the word you’re searching for, then scroll down to the bottom of the search results to see if the word was found. Tapping that line gives you a way to navigate through all found results.
- soperj 7y agoSafari is the worst mobile browser. It makes my life difficult every single day.
- saagarjha 7y agoI'm assuming you're a web developer? I feel like users may have a different opinion.
- ben_jones 7y ago> As far as not giving a shit about Safari's ability to do WebRTC and PWAs properly What's funny here is that many of Google's web initiatives such as PWA and AMP are at least partially constructed to increase Google's dominance and selling of ads. It's hard to fault any company that pushes against newer web standards and "progress" since it is so slanted in their competitors favor. If you're a Google employee working on some such project you can probably convince me that the majority of the reasoning for PWA/AMP/etc are good, and assessed in its totality it is probably for the greater good, but you'll never convince me the mangers/directors/executives at the budgeting level of these projects are too dumb to understand and latter extract immense value at the expense of users as a final result. All this stuff is too reminiscent of Facebook's Free basics project masquerading as Democratizing Internet "progress" with cool new features no user actually asked for.
- matt4077 7y agoI don't think they are even hiding their motivation. It's basically why Chrome exists, as well: Google needs the open web to stay competitive with native apps, because they only earn money on the web. There isn't really anything nefarious about that, and at the moment it has the benefit of aligning Google's incentives neatly with users'.
- lonelappde 7y agoAMP is about moving a huge portion of web hosting from other hosts to Google.com, while trying to hide that fact from users. Look at the antics Chrome does to hide the actual URL and the originally hosting site.
- Gigablah 7y agoBy that logic, Cloudflare is doing the same thing then, and on a larger scale.
- Andrex 7y agoYou're lumping in PWAs with AMP and I'm confused why, they are apples and oranges. PWAs are an outgrowth of web best practices and new consortium-ratified technologies. AMP is for Google search on mobile (and a couple other places.) To pull some examples from your comment: > What's funny here is that many of Google's web initiatives such as PWA and AMP are at least partially constructed to increase Google's dominance and selling of ads. It's hard to fault any company that pushes against newer web standards and "progress" since it is so slanted in their competitors favor. 1. PWAs are not a Google initiative. AMP is. 2. Migrating to a PWA doesn't advantage Google vs. its competitors, either in search or the browser world. AMP on the other hand is specifically designed to get sites that adopt it better placement in mobile search. 3. Neither PWAs nor AMP are web standards. PWAs are a set of standards adopted by browser vendors (not just Google.) Vendors implement parts in different orders from other vendors (see the various Apple examples in OP.) AMP is not a web standard -- it is an open-source project governed by Google. Please do not conflate PWAs and AMP.
- Wowfunhappy 7y agoI basically agree with the crux of your post. However: > Apple doesn't make any money from the "web," they make it from their platforms which aren't HTML/JS/CSS Apple makes their money from selling hardware, which is priced to provide a very healthy profit margin. Once upon a time, that seemed to be enough for them. Now it's not, and Apple products are broadly worse as a result. The App Store should not have an entire tab dedicated to Apple Arcade, and the Music app should not be a giant ad for Apple's streaming subscription service.
- projektfu 7y ago"Software Sells Systems" used to be their motto and it's apt for how they treat the Mac and iOS. If the platforms don't have platform-specific apps, they become a commodity and lose those margins.
- shawnz 7y agoSoftware sells systems, so therefore they should reduce the amount of software available on their platforms by making it harder for developers to create?
- Wowfunhappy 7y agoThe logical counterargument would be that good software sells system. It's an argument I would be much more open to if Apple wasn't also pushing terrible Catalyst apps for the Mac.
- austhrow743 7y agoYes, curation is an important service that provides great value to end users.
- projektfu 7y agoIf the software runs on the browser, you don’t need a Mac or an iPhone to get it.
- thesquib 7y ago
- doomlaser 7y agoGateKeeper is becoming onerous for Mac developers who maintain free applications, who don't want to pay a yearly fee to Apple. Telling users a program is damaged because this fee is not paid and moving it into the trash is now the default. This is a free prefpane that can hide the cursor anywhere via hotkey or idle timer. It's fairly popular. I've written and maintained it since 2007. Try running it in Catalina. http://doomlaser.com/cursorcerer http://doomlaser.com/cursorcerer
- st3fan 7y agoI thought all you needed for the macOS app notarizing was a free AppleID and free developer account?
- scarface74 7y agoYou don’t have to pay the fee to have signed apps.
- doomlaser 7y agoThank you. I was unaware of this and have updated the PrefPane and its invisible daemon as a result.
- scarface74 7y agoApple is doing a poor job of advertising that you can get your app signed for free. Most developers and hardly anyone not involved in the Apple ecosystem no that.
- doomlaser 7y agoHmm, my understanding now is that I've got development certificates, and those certificates are valid, in conjunction with a provisioning profile for my specific machine. They are not valid distribution certificates, and I must buy into the developer program to be able to generate distribution certificates. So it is 100/yr after all, even if I want to distribute my free software outside of the Mac App Store. Am I missing something?
- chapium 7y agoIts not a good thing. Like electron or not, apple needs to have very good reasons for blocking libraries.
- shams93 7y agoIt's not just electron it's the fact that a $30 prepaid Android phone with chrome can be more web capable than a $1200 iPhone
- deleted 7y ago[deleted]
- devy 7y ago> Apple doesn't make any money from the "web," Yep. Apple makes most money on $1k+ high end mobile devices, smart phones, tablets, watches, laptops. And now original contents, subscription services and financial services. Most Apple software are given out for FREE [1], macOS, iTunes, iWork, bundled Mail / News / Stock / Preview Safari apps, etc. That reason alone it making Owen William's claim of "Apple’s control over its app ecosystem is a new type of monopoly" a moot point. Apple smart devices is less than 10% of the total market share. And I agree with locking PWA and prefer native approach is a good thing for consumers - because if Apple didn't insist that, we'd be still running Adobe Flash on our smart phones these days. End user cares more about user experiences, battery life and seamless integration working across all apps and services. [1]: https://support.apple.com/downloads/ https://support.apple.com/downloads/
- onepointsixC 7y agoThe Apple App store dwarfs the Google Play store as far as revenue is concerned. So at least as far as mobile is concerned I would say Apple is in a pretty monopolistic position as Developers are forced to follow what Apple dictates less they basically give up a majority of the market. [1]: https://techcrunch.com/2018/07/16/apples-app-store-revenue-nearly-double-that-of-google-play-in-first-half-of-2018/ https://techcrunch.com/2018/07/16/apples-app-store-revenue-n...
- devy 7y agoYes Apple App Store earns much more than Google Play Store does, that's not a news and every mobile developer know. But as long as Android exists, I would argue that Apple is not a monopoly[1] (perhaps some would argue duopoly?[2]) Here are a few reasons that will make it hard to convince Anti-trust judges that Apple is a monopoly: - Apple doesn't control how much mobile apps would charge consumers. It simply provides a proprietary platform for you to reach out to 2 billion potential customers, for that they take 30% commission for distribution and access to their customer pool. - Apple's platform is proprietary, they invest / build / maintain / distribute for you. You are not obligated to publish your mobile apps on it. You have the freedom to do it on your own (yes, on iDevices that means sideloading, jailbreaking, a web app etc.) or publish on competitor's platform (Android / Samsung / Huawei / Xiaomi / Kindle etc.) It's just so happened that Apple's devices are popular (2 billions of them) and you have much better upshot to make money if you charge customer for your app on App Store, but again, nobody force you to publish on Apple. - There is no reason to believe that because Apple's devices are so popular (or in your words, dominant in terms of mobile app revenue) consumers are forced to pay higher price for mobile apps. Again, choices are there. There are tons of Android users out there, in fact, more than 3x of Android devices are there on the market.[3] Lastly, have you wonder why Apple earns double what Google makes in being mobile app platform? If you want a premium product, a more unified user experience, focus more on security (make money on hardware instead of harvesting personal data and sell it to advertisers), perhaps you could earn much more margins but selling much less units and still getting rich? That's exactly what Apple did. Granted, they got greedy by jacking up the price even more on iPhone X/XR, market responded negatively. So they corrected themselves a little bit (got rid off the lady who sell luxury goods rather than consumer electronics.) And they diversify. [1]: https://www.investopedia.com/terms/m/monopoly.asp https://www.investopedia.com/terms/m/monopoly.asp [2]: https://www.investopedia.com/terms/d/duopoly.asp https://www.investopedia.com/terms/d/duopoly.asp [3]: https://www.macworld.co.uk/feature/iphone/iphone-vs-android-market-share-3691861/ https://www.macworld.co.uk/feature/iphone/iphone-vs-android-...
- wang_li 7y agoIf the current version of safari on iOS and iPadOS is the best mobile browser available then the mobile browser landscape must be raging crap. On my iPhone XR and iPad mini 4, it has numerous rendering issues and frequently requires being terminate by the task manager and restarted in order to load and display pages properly.
- saagarjha 7y agoWhat kind of rendering issues?
- wang_li 7y agoBlank screens. The browser knows they layout of the page as the scroll bar indicator still functions, it’s just a white screen. Killing the browser and restarting will make the page load. It sometimes loses its idea of where the top of the page is and all page elements are rendered normally, just a few hundred pixels above where they should be and no amount of dragging of the screen will get the top of the page visible. On old reddit trying to touch a link sometimes results in text way up the page being rerendered with a different kerning, or font size, resulting in different line wrapping and making a bunch of page elements move and you get the wrong link.
- eppsilon 7y agoI've seen this bug too - also on an XR
- nickspag 7y agoI think you're giving the author too much credit. They recently chimed in on Twitter in a similar context- which I'm guessing is where the motivation for this blog post originates. And despite having a WebKit engineer publicly discuss design decisions and reasoning, they ignore them during that discussion and go on to write this article while making note of literally none of the context that was provided? https://twitter.com/johnwilander/status/1191185213012865025 https://twitter.com/johnwilander/status/1191185213012865025. It's bad faith commentary, to say the least. Look at the level of accusation they're making "Apple Is Trying to Kill Web Technology" ... "It wants its Mac App Store to be filled with apps that you can’t find anywhere else." Leaving aside the fact that there's no way Apple makes enough from some imaginary exclusivity to justify trying to "kill web technology," none of their moves can even rise to that level. So they were slow to implement WebRTC? Service Workers? Both have massive privacy issues- and partitioning service workers out of process is the crux of how WebKit enforce's privacy- which they're pushing even harder these days. And according to said engineer they even added a compile flag so Google didn't have to use partitioning (I wonder why they wanted that...)- how very anti competitive of Apple. And suddenly mandatory WebKit on iOS is a "monopoly?" It's their platform- they define the security and privacy baselines. Apple has had a walled garden since before the "Web Technology" the author is referring to existed and this is a piece of that. It's another valid consumer selling point- their stores aren't cluttered with trash and I know what those apps can access. But, according to this person, every single point here is fake marketing speak because... checks notes... they want to force people to develop apps only for the Mac Store? Really? We can be critical of Apple for a lot of web stuff, but it takes a delusional level of self-absorbance to think that Apple is bringing about the end of cross platform web tech because they put up a completely fair and valid barrier, that will probably be resolved shortly, as you said, on one's tech stack of choice.
- dannyw 7y agoReading the attached twitter thread, I do believe the author is engaged in a bad faith argument. WebKit engineers provided very reasonable arguments for why WebRTC and service workers took a while to build and diverges from the spec: privacy.
- w1nst0nsm1th 7y ago
- scosman 7y agoRandom note (fully aware this isn't your main point): Electron for background/system tray is actually not too bad. It was about 12MB for a minimal tray app last I checked. At this stage it's just Node.js with some system API hooks, not chromium. It's only when a window launches that you get the chromium bloat to 80MB+.
- burgerzzz 7y agoI’ve made electron apps with electron that are 30mb on disk, and 90mb in memory, so it’s possible.
- smnrchrds 7y ago> Safari is still the best mobile browser available How much of it is because Safari is good, and how much is because Safari is the only option? iPhone has a huge market share. It is not possible for web companies to ignore or deprioritize it. Safari is the only web browser available on iOS. So all website owners make damn sure their website works well on Safari. They may even omit features that Safari does not support for all browsers, because it is easier than graceful degradation. Back in IE6 days, for best web experience, you would want to use IE6. It's not that it was so awesome and so far ahead of Netscape. It's just that all websites were designed for and tested on (objectively terrible) IE6. You could use the (objectively superior) Opera or Netscape, and you would have a worse experience, because websites were created with IE6 in mind. Safari is not the best mobile browser. It is the browser everyone writes for and tests one. Chrome is not superior to Firefox. The reason so many web apps (e.g. Skype Web) do not work on Firefox or Google Maps is slow on it is not that Firefox is bad. It is that they only target Chrome when designing the website. Everything else is an afterthought, if even that.
- pilsetnieks 7y agoSafari is not the best browser. Neither is Chrome, and neither is Firefox. Each of them have their strengths and weaknesses. Safari is the best at low power consumption and integration in its environment. Firefox is the best at customizability and openness, and standards adherence. Chrome is the best at, well, popularity, I guess; innovating new web standards, maybe.
- JDiculous 7y agoI've never used mobile Safari, but where mobile Chrome shines vs. Firefox is 1. speed. 2. easier to navigate through your tabs when you have many open. If not for those, I'd just be using Firefox because the ability to add plugins (eg. Adblock) and have Youtube not stop playing when you minimize it are obviously huge advantages.
- pilsetnieks 7y agoI think you should specify which platform you're using (I suspect Android.) On iOS all the different browsers are just different UIs for the same engine.
- xg15 7y ago> I don't really see that as Apple trying to kill web technology as much as them just not profiting off it. Apple doesn't make any money from the "web," they make it from their platforms which aren't HTML/JS/CSS. While true, this was also the reasoning behind Microsoft's treatment of Internet Explorer which caused web tech to get stuck for a decade. I think we were all glad those times were over.