26

The “MacOS Feel” that Developers Love

 4 years ago
source link: https://dogsnog.blog/2019/11/15/the-macos-feel-that-developers-love/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

IMO, the “MacOS feel” that developers love comes down to:

  1. Control over the UI,
  2. Consistent user experience, and
  3. Dev-friendly choices.

Windowscontrols the desktop, but only has so-so consistency (many windowing toolkits in evidence in the OS). And the choices aren’t dev-friendly (more below).

Linuxhas nearly zero control over its own UI: The Chrome browser, for example, refuses to follow standard keyboard shortcut for Quit and other functions. Built-in apps like the Gnome Software store don’t support Page Up/Down correctly, and also have issues with Quit and Close Window (!). Various versions of KDE Linux gain, and then frustratingly lose, the ability to adjust the mouse scroll speed. Finally, Linux copies Windows’ anti-dev-friendly UX designs.

MacOS, on the other hand, stands out above these:

  1. Like Windows, MacOS has absolute control over the machine, in design and function. Chrome Browser responds to gestures and keyboard shortcuts just like Safari.
  2. 99.99% of apps behave in the same predictable ways. It’s rare (or impossible?) to find a user-level difference due to toolkit changes.
  3. MacOS provides an extremely friendly dev experience:
    • It’s the only OS that provides Bash(emacs)-style keyboard shortcuts in every text input field in every app. (A weaker, not as usable version of this can be enabled on Linux via Gnome Tweaks .)
    • It’s the only OS that provides Quit, Copy, Paste, etc. keyboard shortcuts across every app, including the terminal . It does this by smartly, in an opinionated manner, using e.g. Super-C for copy everywhere, instead of the Ctrl-C / Shift-Ctrl-C pair used by Windows and Linux. This frees up Ctrl key in terminal for dev and coding uses.
    • MacOS keeps your fingers close to the home position for the really common actions, next tab / previous tab : Super-} and Super-{ . I find this faster and much more comfortable than the Windows & Linux standard, Ctrl-PageUp and Ctrl-PageDown . Those always make me stop and hunt for the right keys. On a laptop, the difference is even more pronounced; MacOS stays the same, but the Windows/Linux combo is usually harder to reach.

Now, me personally? I’m typing this on a Dell XPS tower running Fedora, heavily modified to act like a Mac with AutoKey and a keyboard whose keys I’ve slightly re-arranged. I have global mappings for Super-C , etc., and a separate set of mappings for obnoxious apps like Chrome. Further, I use the imwheel hack to adjust the mouse wheel scroll speed. And Firefox because it implements scrolling inertia. (Gnome has this, but only for certain compliant apps.) It’s a fragile setup, but this is what fits my budget at the moment.


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK