I find the UX quirky and akward to use. I hate how the window management works. I hate how annoying it is to get two windows to show side by side. I hate how there end up so many icons in the menu bar which are entirely unhelpful. I hate how space inefficient the dock is, but when you auto hide it, you can no longer see the notification counts at a glance.
I would honest to God rate macOS UX a 2/5 for design and a 5/5 for QA.
It just feels like a toy to use, and too distracting. Its developers took too many liberties with focus stealing too.
For many of us it isn't classical UNIX CLI and daemons, stuck on 1970's programming model.
MacOS as a user interface is an abomination with pretty bows on it.
I remember when they removed HiDPI support for <4K monitors. Such a ridiculous move by Apple...
But Apple should generally fix this. Having a system wide limit of 256 files open is almost as outdated and idiotic as having a filesystem that doesnt support case or more than 256 characters (NTFS)
I assume you don't do mobile app development?
I've never had to use anything worse than xcode yet. I'm almost sure that they have some kind of secret stuff in house to develop their own software other than that.
How can you say this? They don't have CUDA. Right now M$ + Nvidia have the market completely cornered :'(
Linux + Nvidia suck btw. The only option is M$.
That's a pretty strong statement. I use both and it's been very smooth sailing for me, switching to Windows is something that comes with so many headaches that I couldn't make the case for it, besides I wouldn't know what to improve compared to how it is today. Using multiple GPUs under linux while also using them to drive a display is perfectly normal.
Was there anything specific that you would like to see improved on a Linux/NVidia combo that I may simply never have run into?
I agree on the general sentiment that nvidia is expletive expletive expletive.
AMD on Linux is also making at least some waves recently. Still catching up, but it seems like I've seen 100% increase in ROCm posts compared to last year...
If you’re a developer, you live in the Terminal, you obviously need full control over your OS.
edit: I appreciate the irony of being downvoted for suggesting having control over your OS on Hacker News, so keep it coming please. Mo’ downvotes mo’ irony.
People probably don't believe they should have to do that to perform regular development work.
The change in limits doesn't persist across restarts anymore like it used to in the past.
Are you perhaps thinking of single user mode instead?
All programs that don't use select() should raise the limit to the hard limit on startup. Then drop it back down before exec()ing another program. It is a silly dance but that is the cost of legacy. I'm surprised that these programs that are affected can't add this dance in.
ulimits are quotas that disallow excessive resource consumption by an application, not bug shields.
It would be interesting to do something like avoid defining that symbol by default, require `-DENABLE_OBSOLETE_SELECT_API` to make it available. It would cause trouble for compiling old software but it is easy to remedy and at least makes new users extra aware that they shouldn't start using this function.
Kqueue/kevent/epoll are good options if you have very particular needs, such as a huge number of file descriptors, but I'd argue poll() should be the go-to.
I guess the real solution would be updating `FD_SET()` and `FD_CLR()` to abort if `fd > FD_SETSIZE`. IDK if writing to the fd set outside of these two functions is officially supported.
While much was gained in the NeXT merger, the biggest thing that was lost was developer support and documentation. They were gutted in March 1997 and were never restored. Avie Tevanian had no respect for documentation and his attitude infected the rest of the organization. One dude did so much irreparable damage.
http://preserve.mactech.com/articles/mactech/Vol.16/16.06/Ju...
The default soft-limit should match FD_SETSIZE and should not be raised globally by the user. I don't know why the default hard limit is 256 and not 1024. Perhaps FD_SETSIZE was lower than 1024 historically?
.... and if SIP is turned off?
$ sudo launchctl limit maxfiles
maxfiles 256 unlimited
$ sudo launchctl limit maxfiles 65536 200000
$ sudo launchctl limit maxfiles
maxfiles 65536 200000You lose Touch ID & Apple Pay
The most frustrating thing with SIP was that I’d always butt up against it at the most inopportune moments: deep in a rabbithole of diagnosing some unusual issue, I’d finally have everything running and set up just right to reproduce it, realize I needed to trace a specific process or something, only to have the system tell me I wasn’t allowed to.
Perfect timing to have to restart the computer and wait while it slowly boots into recovery, then remember where I left off and recreate my environment.
The continuing iOS-ification of MacOS really drove me away from using it as my main computer, despite having been a lifelong Mac user. I still have a Macbook Air, but for any real work it’s just a thin client to my Linux desktop.
Its high time for the FTC to start busting fraudulent rentals misrepresented as a "sale".
(And anybody viewing the Apple ecosystem KNEW this anti-owner lockdown phone shit would eventually hit their laptop and desktop computers as well. But for some reason, the Apple fanatics are OK with this stuff. )
Intellectual property rights (copyright, trademark, patent) should NOT dilute or devalue or remove inherent ownership from property rights.
And "license" presented after the purchase fact should make that the equivalent of toilet paper. It's a "license" after they have your money and over a barrel. There's no agreeing to that. At at least the Europeans with the GDPR realize that farcical situation and illegalized it appropriately.
"Agree or turn your $X000 device you paid for into a paperweight" is no agreement.
https://www.google.com/search?q=ulimit+mac+site%3Astackoverf...
vs
https://www.google.com/search?q=%22launchctl+limit+maxfiles%...
1. exec should reduce the hard-limit to FD_SETSIZE unless it's passed a flag
2. When a process calls `select` while having a hard-limit > FD_SETSIZE, it gets terminated. (Strictly speaking this doesn't prevent the memory corruption, since it happens in select's support macros, not select itself. But I'd expect it to be good enough in practice)
A modern application which doesn't use `select` should raise its own hard-limit during startup, option into the select-termination in exchange for the ability to open many files.
https://www.mothersruin.com/software/SuspiciousPackage/faq.h...
basically no experienced Mac user would ever open a .PKG package with the Installer, but rather open it with a safe inspection app (Suspicious Package, Pacifist) first, either for security inspection of the pre- & post-install scripts, or to do a manual install outright to prevent the security nightmare that actually installing a package is.
while inspecting and/or manually installing packages is much safer than installing packages with the installer, it is now effectively outlawed by Apple. continuing to do things in the safe way now takes a lot more time...