I grew up with this animation so I didn't consider it annoying until I bought a new Macbook a couple years ago.
I noticed sometimes I would press keyboard shortcuts before my system's focus had switched. Just little stumbles here and there, some inoffensive, some annoying, but who knows maybe I didn't catch enough sleep.
Over time it happened often enough that I decided to google it, and it turns out my muscle memory wasn't failing me; the animation speed did change ever so slightly and was slower in new Macs with 120Hz displays [1][2] (newer MacBooks, 2021+). If you switch your screen to 60Hz it goes back to the faster animation.
Why is this animation slower now, and why does it depend on screen refresh rate? I have some technical theories but can't think of an organizational reason it happened and hasn't been fixed 5 years later at a 3.82 trillion market cap company. If you Google it there's plenty of discussions online about this. It's noticeable and annoying to people who have used the feature often enough.
Wow I never realized I had this problem until now! I never even considered the reason keys would dispatch to the wrong window was because of the animation. I just knew that sometimes when switching workspaces I'd have to wait until whatever window I'm switching to has focus before typing.
Fun aside, I'm pretty sure that my mention of a system issue that I read about that morning on MacOSXHints.com was a helper in landing a job in an interview that afternoon. What I mean is, I said, oh are you talking about "whatever thing on that site today…?" and it demonstrated that I was familiar with whatever internals.
I think Apple's self-image of being the epitome of design actually acts against them. Leads to monstrosities like Liquid Glass kinda vandalizing random parts of the UI in small ways that I intuitively read as "they are anti-anti-aliasing" not "they added cool refraction effects." It used to be you'd see something in a well-chosen color, now it is just a muddy kind of greyish brownish whatever.
I'd like to see them make some costly signalling to indicate that they are going to turn it around like maybe buy two Superbowl ads in a row and let the CEO make a personal apology.
Isn't going to happen because the competition is Microsoft and Intel and Dell who won't hold them accountable and it is just too easy to turn reject iPhone chips into netbooks in 2026.
I… think that actually Liquid Glass was put on the iPhones to make sure that older iPhones that still have relatively fast chips can show up finally slower than the brand new ones, and that with this stress there’s again a much larger slope in difference between an older iPhone and a newer one which causes enough nagging in users to upgrade = buy a new one.
> I think Apple's self-image of being the epitome of design actually acts against them. Leads to monstrosities like Liquid Glass kinda vandalizing random parts of the UI
I'm pretty confident many Apple employees have eyes, and thus are aware of how absurd Liquid Glass is (wtf, my iPhone capitalizes that but not a standalone i?!?!)
So assuming everyone at Apple isn't deaf (it's all over public discourse), blind (it looks bad), and dumb (no genius needed), then how does it get through? I can only see a few scenarios, none of which are good.
Maybe Apple engineers are afraid to push back on management?
Maybe management isn't receptive to their employees who voiced concerns?
Maybe key decision makers have pushed themselves into an echo chamber where it's difficult to hear concerns.
One of these has to be true, or some combination. But none of these are good, they are incredibly destructive to companies. Though also unfortunately common across monopolies. Iron Law of Bureaucracy hard at work...
I often think of that scene in Pantheon where they basically say they don't know what to do after Steve died. You can only laptops so small... and they're so small that anyone that puts on lotion is going to have an imprint of their keyboard on their screens... Steve wouldn't have accepted that
This isn’t unique to Apple. The Windows developers were very vocal about a full screen start menu in Windows 8 being a bad change. We were told that we weren’t allowed to talk about it anymore on the large mailing list about the product. The decision had been made and complaints would no longer be read or responded to.
It gets through because Cook has no eye for design or usability (he's a supply chain guy) and Alan Dye, who Cook put in charge of software design, wanted it that way. I'm sure there are designers who hated it, but they don't have the final say.
> Maybe Apple engineers are afraid to push back on management?
I can tell you with confidence that this isn't the issue. HIG (Human Interface Guidelines: a design spec that became a department / org) overrides them.
> too easy to turn reject iPhone chips into netbooks in 2026.
You mean the flagship chip from their former pro phones? I was with you until you said this. Makes you sound out of touch or ideological.
I think they've been on the worst design tear since they went to OSX for the past eight-ish years. At no point does their awful software design intrude on their awesome chip designs.
My partner's first Mac is a MacBook Neo and she loves it. Pink. Looks pretty good. Does what she needs. Not right for me, probably not right for you, but what I'd tell my mother to buy if it existed when I told her to buy a regular MacBook Air.
It's not meant to be an insult, I have a phone in my pocket with one of those chips. back when I was using Android I was like "why do people get so excited about apps?" but the iPhone experience is all different. They are "rejects" because a lot of them have a busted core which can be fused off.
If there's a problem w/ the Neo in it's current incarnation is that are going to run out of those chips and find something else. It takes an advantage of the opportunity and might be the beginning of a new market segment for Mac which will hold PC and Chromebooks accountable.
(Funny a pink netbook served me really well back in the day! I remember using one to log ham radio contacts from a mountaintop near San Luis Obispo into a sqlite database and then using it as the best ever car computer in the passenger seat of a car with Microsoft Streets & Trips and a music player)
My pet opinion is that Steve Jobs was an asshole but an asshole that used his own products and used his powers of complaining to steer the whole ship to fix major "this annoys me everyday" bugs.
From my experience, "annoying but not blockers" bugs are often very neglected compared to (1) bugs that actually break things and (2) feature work. Neglecting quality of life issues leads to the "do you even use your product??" kinds of experiences.
Soo many things either work buggy, laggy, inconsistent, or don’t work at all
Filling bugs doesn’t help. And I don’t think anyone is inventive to fix bugs. Resolving sure. But closing WONTFIX or NEEDSINFO is also a resolution.
Most of what I do is chrome +Linux terminals and vscode anyway
And the only reason I’m on Mac is because of hardware, encryption, and ease of backup/restore/wipe, and the power struggle of Linux distros. freeBSD is not really an option
There's a windowing bug that was introduced in 2009 that I'm confident will persist until MacOS has another MacOSX-style transition to something entirely new. They need someone who cares about fit&finish more than features driving the ship. That's not what gets promoted to the top, unfortunately.
Steve Jobs knew what he wanted and was willing to put his foot down in order to get it. Yea, I’m sure he was difficult to work with and drove people insane, but he was the plumb line that kept Apple driving in (mostly) the right direction. Now, it seems like they have bored designers trying to make a name for themselves with a “new” and “revolutionary” interface in Liquid Glass, which nobody likes and is less usable than its predecessor. But nobody ever got promoted for maintaining the status quo, so they are going to push forward. Steve’s advantage was that he never needed to be promoted.
Well, the UI leader behind Liquid Glass is no longer with the company, replaced by a long time Apple employee known for his eye for detail.
I do t think Liquid Glass is going to go away soon, Apple doesn’t seem to reverse itself ever, but I do expect Liquid Glass to become better over time. We’ll see what WWDC brings on that front I guess.
My take on it is that in my own work I really like transparency effects but it is always a chore to tune up the foregrounds, backgrounds and alpha blending to keep everything legible. If you control all the content it is one thing, but for a general-purpose OS where the content is supplied by the user and applications you have to dial the intensity way back.
When I first saw the prototype images I thought they were really cool and it was a bold idea though people on this site were complaining about it already for the predictable reasons.
When it came out I was thinking that they dealt with the legibility of the content by dialing down the legibility of the design -- like it looks like "anti-anti-aliasing" more than it looks like "bold transparent vision"
One reason I don't think I read it as "refraction" is that one of my tells for refraction is chromatic aberration and without that it doesn't seem real to me. I think it would triple the texture lookup rate (at least) and make content legibility worse and I think you would see a lot of people say it is was an ugly gimmick.
Technically, I’m awed by it. Very cool visually. It’s just when you go to use it that it all falls apart. As you say, they can’t control the content it’s flying over, and thus sometimes it does bad things. But also they rearranged navigation and some other things. I try to keep from rejecting new things just because they are new, but there were some serious usability gaffes in both iOS and iPadOS. Interestingly, macOS doesn’t have the same issues and I’m actually somewhat ambivalent about it.
I agree, but also they broke that rule very recently when they lowered the price of a display and issued refunds one month after intro. The VESA price dropped $400. I learned about it from Accidental Tech Podcast.
The thing / issue at this point is though: how much is Jobs still responsible for Apple's ongoing success? He died 15 years ago, two years after Apple introduced "flat design" (to much criticism at the time but people got used to it). But after his passing, Apple's market value went from ~500 billion to ~4 trillion today, more than an 8-fold multiplication.
I find it hard to believe that his influence was so strong that it had an inertia that lasted for 15 years. Ive left his mark on it for longer.
Apple had a few near death experiences and might not have survived.
One of those early near death experiences might have been Jobs fault (going at the Apple /// and the Mac when, in retrospect, the Apple ][ could have been evolved more aggressively) but he helped bring it back from the brink later on.
Android deserves a lot of credit for the success of iOS in that a zombie mobile OS that doesn't have to be profitable has displaced a competitive mobile OS. A similar kind of fragmentation has bedeviled the Windows (and Linux) PC as well as (from the viewpoint of Windows) distractions such as Azure (good business) and XBOX (bad business.)
Intel deserves a lot of credit for the success of Apple too because for 15 years Intel has had no strategy to translate architectural improvements to experienced performance for client PCs. The way they've gone about SIMD is an absolute disaster, like by the time we can use AVX-512 in mainstream software everybody will have moved on to ARM. Charlie Demerjian would talk your ear off about how the tech press has been uncritical about their hyperscaler/HPC patter, never reminding you that client PCs are still the bread and butter of their business -- pander to the likes of Amazon and they will use any cost savings they get to invest in ARM. It's suicide.
I guess that depends on what you put into the word "success". I dont believe that great design work or great products and high market cap has ever been that related to each other.
With that said I dont think Steve built Apple alone either. And i think they have done some great things after his death as well.
Interesting. I have worked with a CEO that did exactly that.
The product quality was just insane.
I have also worked with people in power who believed they were doing the same, but actually just had weird taste in interfaces and ended up screwing up the product.
I have not been impressed with Cook in the slightest. He came from Compaq, if I am not mistaken, and in many ways, I feel like Apple has become more Compaq-like during his tenure.
I mean, their damn phone keyboards are so bad I'm 100% confident that Tim only does voice to text on his phone. There's no way that the CEO of a company could use a keyboard that horrible and not want to fix it.
It’s SO bad. It makes me not want to use my phone anymore and physically go get my laptop if I’m chatting/messaging someone.
It’s probably the worst typing experience I’ve had since resistive-touch screens on PDAs. At least with them you could still type what you intended to though, just slowly.
I've heard this advice before and I've tried it, and I really didn't notice a difference. I also, unfortunately, use swipe to type a lot. If I'm typing one handed I'm pretty much always using swipe. Sure it barely works, but that's the same as if I was typing normally so feels like a wash.
Keyboard works fine. Always has. iPhone just has so many users that there's going to be a plethora of passionate unpleasable nerds for every single facet of it. Even in your ideal virtual keyboard version, there was an army of people complaining that it wasn't a hardware keyboard.
Nice strawman, and unnecessary attack. I'm using iPhones since the 3GS, and from time to time type on an Android and the keyboard on iOS _sucks_. As someone else wrote, I am loathing to chat with someone on the phone and rather switch to my laptop.
I’ve never really disliked the keyboard. I’m not entirely sure what they’re talking about. That being said I’ve never used swipe to text so maybe that factors in, or never having had a smartphone other than an iPhone.
If you had ever used Swype on Android (it was only briefly on iOS, and wasn't as good as the Android version yet), you would understand how good keyboards could be 10-12 years ago. Perfect precise cursor placement. Cut, copy, paste, and select shortcuts. It was not perfect, but it was rapidly getting there.
Microsoft bought and killed it without, apparently, learning from it. Maybe there was a good reason why, but I've never seen one.
I'm on 26.4 on a brand new 17 Pro Max, recently upgraded from a 13 Pro Max, and I have noticed absolutely no difference in the keyboard. It's still awful.
I noticed this immediately when I first used a 120Hz macbook in 2021. As a vanilla MacOS UI feature that I'm sure many people use, I can't believe it hasn't been fixed yet.
Don't know about customizability on MacOS but I've always been very accustomed to animations and recently I just turned them off on Android and Linux and I... Don't miss anything. Turned out they don't add anything other than an initial wow factor.
Personally, I think some animations can help add context to what is happening. For example, when using QuickLook, there is an animation when opening/closing QuickLook that zooms out from, and then back to the file location. If doing something with that file after the QL, that little visual clue helps find it faster and know where it opened from.
The closest thing you can do on macOS is to turn on "reduced motion". This doesn't remove any animations, it just replaces them all with fade animations which take the same amount of time.
I also have a 120Hz Mac, and the animation is indeed slower in 120Hz mode. In my opinion, the animation crossed the line from "too slow but bearable" to "unbearable" with 120Hz. It is as you say; it's not really the animation itself that's the problem, but the delay from when I tell my machine "switch to this other workspace" until the focus switches to a window on that other workspace. The animation has this horrible ease-out effect where the last few centimeters take what feels like forever.
Getting a 120Hz Mac actually completely changed my whole macOS philosophy. I used to use spaces extremely heavily. I now almost don't use them at all, preferring window switching with cmd+tab instead.
The infuriating thing is that almost all discussion on this on the web just says "turn on reduced motion". Not only should that be unnecessary; it doesn't even fix the problem! Sure, there's no longer a sliding animation, but there's now a fade animation instead which takes just as long.
It's completely incomprehensible that Apple hasn't fixed this.
Sadly, solutions like BetterTouchTool and InstantSpaceSwitcher won't work for me because I prefer to use my trackpad to switch spaces.
> Sadly, solutions like BetterTouchTool and InstantSpaceSwitcher won't work for me because I prefer to use my trackpad to switch spaces.
One of BetterTouchTool's first features ~17 years ago was trackpad gesture customization, it is still one of the most important things you can do with BTT! ;-) You'd just need to assign the "Move Right a Space (without animation)" and "Move Left a Space (without animation)" actions to trackpad gestures in BTT.
I don't want it "without animation", I like that the animation tracks my fingers and that the response is instant and doesn't wait until a "gesture" is "triggered". I just want it to wait a second after I let go until the target workspace starts receiving input.
I have noticed this bug years before Apple started selling 120hz displays. I thought for sure they would fix it after that, but to my surprise it has persisted...
I think it must go back to High Sierra or Mojave at least.
I've been having the same problem, entering keystrokes in the wrong windows when changing spaces. I'm so glad to know it's not just me, it's the fact that I just a couple months ago bought a new MBP. Thank you!
I would assume it’s something based around whatever deacceleration animation it is calculating? So in the inverse of what you would see in games that don’t support uncapped framerates. It would at least explain why the refresh rate has an inverted relationship
I think Apple is making a really fatal flaw. Tbh Microsoft is doing it too.
Design good interfaces, with sane defaults but do not handcuff power users!!!
I often hear people say no one should care because there aren't many power users. They're a small portion, but that's absurd framing. They matter a lot because they're the ones that push your design language, develop new ideas, influence the general community, build new programs, find your bugs, and all of that. Apple and Microsoft are closing the ecosystems to get more control not only to exploit the users more (scrape their data) but to reduce bugs and things. But more and more people are trying these random programs because they can't figure out how to do things the right way. It's exactly why people are getting more frustrated with computers. The general public still doesn't care about data harvesting but they do care that the restrictions are handcuffing them now.
Funny enough this is also why Linux is becoming more popular. You've always had complete control but in the last 5 years the barrier to entry has plummeted. It's still not right for the average joe but it's on its way and a few more specialty distros are already there (e.g. steamos). The irony is Apple had the right idea before, even if not as modifiable as Linux, it used to be easier. But now it's more like a power trip. Consolidating control because they don't know what else to do
> I often hear people say no one should care because there aren't many power users.
You also have to consider that not all power users are the same. I’ve been using macOS since the G4 PB days, and would consider myself a power user. I get around in the os just fine and have for years. I also have never felt handcuffed. Some of the macOS 26 visual decisions are/were (some were already changed) questionable, but overall it was a solid upgrade IMO.
Sure, I tried to make it apparent that power users are different. Not one person does all those things I listed.
But as an example, here's an example of how Apple has broken my ssh configs SEVERAL times. The solution in this thread no longer works. I am not sure why Apple is so insistent that you cannot find the SSID from the CLI. It is ridiculous. Even more so that the answers have changed over and over. And btw, I am still on Sequoia and this command was patched out in a minor version... It feels hostile how often stuff like this happens
They're not doing that either.
And unfortunately bad designs are rarely fatal, so can linger for decades.
And animation time waste has little to do with power use, everyone suffers
Yeah it's really unfortunate. It doesn't take a genius to figure out transparent windows are not (usually) user friendly. Really it just requires eyes.
To be honest I think it's revealing of a bigger problem: yes men. People are too afraid of telling the emperor about his (lack of) new clothes. I see this a lot. Not just with CEOs but even engineers being afraid of pushing back on their managers. It's your job you voice your opinions, but it is also true that the manager is the ultimate decision maker. There's a healthy balance here and if employees are afraid to tell the emperor about his new clothes then many just end up resenting and talking behind their backs. You can't have a healthy team if people aren't allowed or even willing to voice their concerns.
Is it fear or just a checked out mentality? I can easily see devs at corps just doing whatever is asked by management to the minimum standard and calling it a day.
Particularly if there is a corporate push for efficiency (tautologically true) or the dev is an offshore worker who stands to gain nothing from being prideful in their work.
> They matter a lot because they're the ones that push your design language, develop new ideas, influence the general community, build new programs, find your bugs, and all of that
they used to care, but they don't now, because these corps have sufficient monopolistic control to not require "outsiders" to push their design language, develop new ideas, influence or programs.
In fact, it seems to me that these big corps want power users out, as they disrupt the agenda, find workarounds for "features" being pushed out that should have been mandatory for pleb users!
> [Linux is] still not right for the average joe but it's on its way and a few more specialty distros are already there (e.g. steamos).
i hope that is the future, because it's the only road to freedom for general computation. Unfortunately, the hard part is not the end user's acceptance of it, but the hardware manufacturers, who are being gripped by the balls one way or another. Unless they're willing to sacrifice any microsoft certification etc, they will be somehow beholden to them (may be not now, but certainly in the future when linux truly threatens window's dominance).
I mean this could be solved really easily if the team that works on this exposed some settings to tweak the animation speed. They don't even need UI, people would find them anyway. The problem is the people who work on this do all the animations for windows etc. and I have no idea how they develop this stuff but presumably HI just comes down to them with some number they hardcode into their software so nobody can ever change it.
I see yabai mentioned, definitely check out Aerospace. Ive tried multiple WMs after years of i3 on Linux and this is the best one I found (for me) with quite a margin. It just works (tm)
I love aerospace, but you can definitely feel that it's a hack on top of the macos window manager. If a window starts misbehaving (like, app is frozen or sometimes even just has a top dialog) then aerospace can't move it and you lose its immersive aspects. I also keep getting floating windows lost in the outer limits of the outside wotld, and have to use the native "move to center" in this situation. Oh and that issue with tabs in ghostty or item is annoying - but once again not something aerospace is really responsible for.
With all that said, short of being able to use i3, this is a fantastic WM, couldn't imagine not having it. Use it in combination with karabiner to remap your caps lock key, and suddenly caps lock becomes how you move in macos.
Aerospace makes my Mac usable, but it is a looooong way from what i3 offers in my experience. i3 is way snappier, super stable, with good features out-of-the-box (including a status bar) - you forget it exists. Aerospace is slow, has to use that "windows in the corner" hack, it constantly resets whenever I resume the mac from sleep, needs additional tool for a status bar and more.
Much of it is not a fault of Aerospace, it's just what you get using Apple products in a non-sactioned way.
I was a heavy macOS Spaces user. Upon a recommendation to use Aerospace from somewhere else here a few months ago, I switched and love it. I considered Yabai, but some features required disabling SIP (System Integrity Protection).
The main reason I use Aerospace (after a thorough testing of most macOS third party window managers) is for the space management and instant space switching.
Another happy aerospace here! IMO it does a great job with barely any configuration required (the default config works great, I have barely tweaked it over years of use), that said I’m not exactly power user of tiling WMs, I have one app per workspace 90% of the time
When you want to quickly use apps without navigating away from your tiled workspace.
Especially transient dialogs, e.g. wifi/file picker. I would create rules in sway/i3 for those to keep them floating.
I've written at length about this topic on HN in the last month, so I'd hate for it to seem like my lil hobby horse, but something I've come to appreciate about the conventional "stacking" window solution of Windows/macOS is that it has a good answer for apps you briefly use.
> Pay for a license for BetterTouchTool. Enable “Move Right Space (Without Animation)” and “Move Left Space (Without Animation)”.
> I managed to find [another solution] with none of the aforementioned drawbacks.
I don’t consider paying for quality software a drawback!
I’ve been using BetterTouchTool ever since the 2016 Macbook Pro with Touch Bar, so I guess that’s a decade now. It turned the Touch Bar into the best productivity enhancement I’ve ever experienced from a laptop, and evolved to suit even more use cases beyond the Touch Bar.
I consider it completely indispensable, and I doubt it would still be in (very) active development today if fans like me weren’t paying for it.
Just wait until you notice that it’s inexplicably slower on 120hz monitors and that your input devices remain focused on the previous space until the animation fully completes!
That's entirely app-level issue; the frameworks and the system itself is perfectly capable of handling this. [1]
It's just that for _most_ cases it's perfectly fine to make the users wait until the animations is finished, and handling users tapping multiple things in a quick succession can get annoying and unwieldy.
There are some apps when it's infuriating though, especially when they're quadruply badly engineered and _tie the internal logic state_ to the UI state.
As someone living in a country where I don't speak the local language, I swear at Google Translate engineers daily because I do a "swap the active pair of languages and then quickly launch the camera mode" combo _very_ frequently, and the selected pair of languages isn't actually updated _until the animation finishes_.
It's maddening. [2]
[1]: A quick demo: tap an app on a Springboard to open it, and very quickly swipe up from the bottom to hide it. You'll absolutely be able to interrupt the animation of it launching.
[2]: I'm actually sorta guessing that this is a workaround for a different bug they had; when if you tapped this quickly enough a couple of times you could end up in a situation where the UI displayed a different pair of languages than the internal logic had, so they added that delay, but who knows, maybe I'm theorycrafting too much.
3 people from my team recently switched to macOS and they never owned a mac before and they are all complaining about window management.
Do you know how dumb it makes me feel to have to tell them they need to install third party apps just to make their system somewhat usable? it's insane.
Complaining about the distinction between apps and windows isn't a "stupid reason" to complain though.
Say I use Slack, Teams and Outlook. If I use their Electron versions, I switch between them with cmd+tab. If I use them in separate browser windows, I switch between them by using cmd+tab to switch to Firefox, then cmd+` to cycle through windows until I find the one I want. That's weird; how you switch between these three apps depend on the technical details on how you opened them? Why?
Say I have neovim, the mutt email client, and a shell open. These are three separate apps, but because they happen to run in a terminal emulator, I still have to cmd+tab to the terminal emulator, then cmd+` to cycle between them. They're semantically different applications in dedicated windows, but technical implementation details mean they belong to what macOS considers "the same app", just like the "apps in Firefox windows" example above.
It wouldn't be so bad if the cmd+` "cycle between windows in the app" feature worked well. But it doesn't. Unlike cmd+tab, it doesn't show a bar which you get to select from, it just instantly re-orders your windows; and it's impossible to select a window in another workspace. That means, if I have Slack open in Firefox in workspace 1 and Outlook open in Chrome in workspace 2, I can switch between Slack and Outlook with cmd+tab, but if I Slack open in Firefox in workspace 1 and Outlook open in Firefox in workspace 2, there is no way to switch between Slack and Outlook. That's pretty bad.
The (shift+)cmd+` order also resets to match the window z-order whenever you switch apps. So if the order is windows A, B, C, then you select window B, cmd+tab away, then cmd+tab back, the order will now be B, A, C.
I've developed an intuitive understanding of this, but I had to experiment just now to describe the behavior precisely. And my intuition is still wrong sometimes (like if the app has windows on multiple monitors, it's hard to predict the z-order).
> if I Slack open in Firefox in workspace 1 and Outlook open in Firefox in workspace 2, there is no way to switch between Slack and Outlook
My local maximum is to never use workspaces – just cmd+tab, cmd+`, and sometimes cmd+h to reduce screen clutter.
I would also add to this that in order to open two instances of an app the app explicitly needs to support this. For example, you can't open 2 instances of Calculator.app side by side.
Have your teammates also discovered how macOS handles copy/pasting a folder when the destination folder already exists? How macOS just deletes the entire contents of the destination folder, instead of merging? I remember discovering that for the first time :(
I switched to Fedora Asahi Remix[1] after being affected by this bug[2] after 5 releases of MacOS Tahoe. I am enjoying Asahi Remix with Gnome and it has sensicle window management.
I also switched, but to https://asahi-alarm.org/ (the arch variant) with Sway, right after Software Update ignored my choice to NOT upgrade to Slophoe.
Same same. I'd been a die hard mac user since System 6 in the early 90s, but last year I switched to Asahi Linux and my next hardware may or may not be from Apple.
After a restart, and after Finder has opened multi-tab windows I have open before, clicking on a tab can suddenly move my view and the window to another space.
Apparently different tabs in the same window can think they belong to different spaces.
Something (I perceive as) common to a lot of the (perceived) increase in Apple software glitches recently, is I cannot fathom the logic for which the bug makes any sense. It does not feel like I am seeing corner case bugs, but instead major "bad-model" code, revealing its poor design.
Clever hack. Now if there were some way to bring back the OS X 10.5/10.6 2D spaces grid… the linear design in place since 10.7 has always felt overly simplistic.
That is indeed the biggest thing I missed so much. When I finally moved from macOS to KDE I got the grid desktops back and I love them so much.
I have 9 virtual desktops and a 3x3 grid is so much easier to navigate than a row of 9. Also, Apple makes them dynamic now. I have each desktop assigned to a specific purpose. It's like having 9 computers at my fingertips.
Almost every release of macOS after 10.6 or so dropped something I used and the replacement if any was rarely good enough. So it started rubbing me the wrong way, more and more with every release. I'm so glad I'm no longer on an opinionated OS but that I have a desktop environment that cherishes configurability and options.
In keeping with this, for the transition animation you can choose several options like a fade and a slide, you can turn them off completely (as this hack does for macOS). You can even set the speed of some transitions. I have it set to slide but faster than normal. So the sliding gives me a little spatial awareness of where I move within the grid, but it still feels snappy. All just by ticking some options. I love KDE <3
I've tried KDE but unfortunately too much of it clashes with my preferences, even after spending quite a lot of time tinkering with its many config options. It's a nice project but I don't think it'll ever be for me, despite carrying features from older versions of macOS.
It is very good even though it's in early development. Issues are getting fixed almost as fast as I can find them. I have to use macOS sometimes for work and OmniWM made it bearable.
As someone who never uses spaces or any window manager, what am I actually missing? What’s wrong with cmd tab and just switching between apps?
Is this going to be some
Kind of major epiphany?!
Spaces is what used to known in Linux as virtual desktops (maybe it still is), and that is how I think of it. Or as virtual monitors. Right now I have desktop one for local system iTerm2 and Firefox, desktop two for client 1 (terminals, IntelliJ IDEA), desktop three for client 2 (VirtualBox, terminals), desktop four for incidental stuff that needs a mostly empty desktop, and desktop five for Chrome (for things that need it), and GIMP and Inkscape (as needed). This way everything stays where I put it, including which windows over which other ones. So I can switch to D1 to look up some documentation on a function, then back to D2 to use that knowledge. Or on my personal laptop I can keep my coding project up one desktop and do the daily web surfing on another, and just switch desktops to have the coding project right where I left it.
(You do use a window manager, btw, it's the thing that puts the title bars on your windows and lets you move them around. On macOS it's integrated in, but on Linux you have to choose one. There are many, all of which have some failing. Except for sawfish, whose failing is that it is no longer maintained.)
> What’s wrong with cmd tab and just switching between apps?
Open 3 terminal windows. Try to switch back & forth between just two of them with a keyboard shortcut (without mentally tracking whether or not to press Shift). You can't.
Open a browser and two terminal windows. Try to switch between one terminal (your editor) and the browser window (your reference docs), without also bringing the other terminal above the browser window, covering up your docs. You can't.
> Is this going to be some Kind of major epiphany?!
If you don't use several windows per app, probably not. But, I do, and macOS's window manager is awful for it.
I recently had to switch to macos for work and Jesus Christ is this not the pinnacle of engineering. Sure, I'm accustomed to my self configured Linux desktop but boy is Mac OS slow to use and hard to configure.
And so keyboard unfriendly.
I did an exhaustive comparison of window managers and settled on using Raycast for simple resizing (full screen, center, mid-size centered, 1/2, 1/3, 2/3 left/right) + FlashSpace[1], which implements simple virtual spaces with instant switching.
You can also use Rectangle or Spectacle or others in place of Raycast.
+1 for FlashSpace. I used to be an i3 user and MacOS workspace management drove me mad. For years we had TotalSpaces, but that is no longer being maintained. With FlashSpace I finally have a great setup.
My solution has been binding a key Hyper+[a-z] for my applications. When used in conjuction with FlashSpace I get a usable setup. I also heavily rely on native MacOS binding Cmd+` (backtick) to cycle the currently focused application, and mission control for the current workspace.
Let me know if this is interesting; I've been considering creating a YouTube-video about this setup.
Wonderful, that leaves 2 things on the top of my list for spaces: having to hover your mouse over the top left corner of a space and waiting until it shows the closing icon. And Safari deciding its better to switch to a space and open a window that was minimised there instead of just opening a new window in the space i'm currently in (even with the "switch to a space" setting turned off!) when 1 want to open a new tab.
If you hold command while you restore the window from the dock it will restore into the current space. I wish i knew how to make this the default. Getting whisked away to a random space is one of the most irritating issues. Like when you want a finder window for downloads and instead of a new window in the current space you get taken cross country to on thats already open.
Thanks! Now I'm curious of all the places where there are still hidden Options key features that I haven't discovered yet. It's just everywhere, but so undiscoverable.
At least the setting does work in reducing the switching when you cmd-tab to an application with no open windows in the current space. But I think some of this annoying switching behaviour is application specific logic and they just didn't get it right with Safari, some other applications do get it right though.
Hey! I built InstantSpaces (which you had linked in the footnotes) and am well aware of issues with the injection & patching. It works 90% of the time for me and was good enough for me to share. But there are cases where it bugs. And yes, Tahoe is a to-do.
I will hopefully soon have the time to try to make it more robust. Feel free to take a shot at it if you want!
Hey, author here, and cool project! I spent some time comparing Yabai's scripting addition to InstantSpaces' scripting addition. They seem to be doing the exact same thing, but Yabai works while InstantSpaces doesn't, and I eventually gave up trying to figure out why.
Regardless, I still prefer InstantSpaceSwitcher because its implementation is simpler and it doesn't require disabling SIP. If you can get it working, however, I can edit my blog post to say so!
This is nice. Sounds like it wouldn't solve the slow animation when entering or leaving full screen mode though. I'm fed up enough with macOS's poor window management (among many other things) that I'm looking for MacBook alternatives.
The M5 chip is way ahead of Intel's latest, even Panther Lake. But the Snapdragon X2 Elite looks like a viable alternative. It's the only competitor with comparable single core performance, and it comes with 48 GB of extremely fast RAM for a reasonable price with great battery life. Unfortunately Linux support isn't really there yet, but hey M5 MacBooks don't support Linux well either.
if youre using a firefox based browser, slow fullscreen for media can be fixed by setting the full-screen-api.macos-native-full-screen flag to false in about:config
I'm still incredibly frustrated by Apple's Mission Control and Full Screen features. The old Expose and Spaces and windows-style maximise would be so much better.
I agree that I miss when spaces could be on a grid in Snow Leopard instead of only in a straight line, but what is wrong with Exposé? From my POV it works the same as it always has.
IIRC Expose is now called Mission Control (four finger swipe up on my system).
My problem with it is that it's useless if you got more than few windows open - the preview is just too small to actually see which window you are after (it's all padded for the looks). IMO if they actually used tiles, potentially grouped by app - it would be so much useful.
Yabai looks cool tho, but requires so much permissions and potentially disabling system integrity protection that IDK if it's a go for me.
I don't have a Snow Leopard Mac in front of me to compare, but as far as I can tell, four finger swipe works the same way it always has. It's hard to find targets if you have dozens of windows open, yes, but I don't remember old Exposé being any better in that regard. I think one or two macOS releases had some kind of "Mission Control UI" in the bottom half of the screen when you did the swipe, but that's gone now and the entire screen is used for the tiles.
Can you explain more about what regressed since the old Exposé? I'm just not seeing it.
just sharing for sh*ts n' giggles... inspired by this post and a previous annoyance i had around spaces in general... i just 'vibe coded' (don't start) this using codex this morning (built upon InstantSpaceSwitcher's UI)
- it has a visual indicator in menubar (active/vs inactive in case you use mission control)
- you can show a nice grid overlay (to click or arrow-nav to a space)
- it has unified shortcut/name management via UI (rather than needing a seperate util)
names are retained on restarts, spaces are synced if mission control creates any (as best as you can with mac's private apis).
for personal utilities like this, it works quite well and sometimes its good to just have 'fun'
oh and the 'jank' relates to how spaces works (i think), but can be removed/avoided by enabling 'reduce motion' which i think the original post mentions.
Then in System Settings set "swipe between full-screen applications" to "off" in Trackpad settings under "more gestures" so that BTT's shortcut applies instead of the system-level one.
Works well. No extra software needed if you already have BTT, which is worth the money for me purely for "alt+drag a window from anywhere" style window movement. That setting is buried deep under BetterTouchTool Settings → Window Snapping & Moving → Moving & Resizing Modifier Keys: https://cleanshot.com/share/mnF9xBkW
Also great from the same developer BetterSnapTool. This is always the first software that I install on my Mac as it allows me to move windows around with keyboard shortcuts. There's many others doing that but I have a license already and only use these 5 key mappings.
I tried both. BetterTouchTool does support the no-animation left/right space actions, but on my machine InstantSpaceSwitcher felt a bit snappier for actually moving between spaces, so I kept that for my keyboard shortcuts for previous/next space and direct jumps to a specific desktop. I still use BTT for Mission Control / spaces preview. So for me the final setup is: InstantSpaceSwitcher for fast space switching, BTT only where it still adds something.
I like that BTT lets you tune the swipe gesture sensitivity too (Settings → Trackpad → Swipes). I made it more sensitive (0.15) and swiping between Spaces feels very snappy.
that is weird, BTT's space switching should really be instant when used via keyboard shortcuts. (Developer of BTT here)
One advantage of BTT's current implementation is that it still allows you to move windows to the next/previous space while dragging them and simultaneously executing the "Move Left / Right a space" action. In that case there will be an animation but it will at least work.
Stop using MacOS spaces. Never full screen anything. Throw everything around with hotkeys using OSS rectangle. Use shortcat to automatically bring your cursor to anything on your screen and use enter to click and type.
Spaces are not for fullscreen but for basically virtual desktops i3 linux style
Here is superior user experience:
1. Install moom. Its keyboard windows arrangement is second to none. Its two-step tiling is a killer. Ie caps-a to show a popup with all the shortcuts, then “a” letter for vertical 1/3 of the screen. Or s for middle 2/3. Or q for top left third — you can assign any letter for any portion of the screen.
2. Use option1-6 to switch between desktops
3. For example alt-4 is a desktop where you have all on one screen (suppose you have 6k xdr like i do): safari, mail, messages, telegram, hey email, reeder
alt-3 is your productivity desktop where you have things, calendar, basecamp, notes, ia writer
alt-1 and 2 is for your main work like rider ide or what have you
Alt-5 for your remote stuff like remote desktop, servers, what have you
—
So with this you have a mental model of where everything is always and instant switching to it. Want to see your todos and notes? Alt-3. Want to see your browser and messaging? Alt-4. You get it.
Moom is better than tiling manager for screens like 6k 32” xdr.
Otherwise tiling managers are perfectly fine. For instance on windows I use komorebi
This is similar to how I use Spaces. I haven't hotkeyed desktops, but each one is designated for a particular task or theme. The concept extends further with a secondary display, with the primary monitors' spaces being assigned "main task" duty while the secondary displays' spaces get "aux task" duty — so e.g. IDEs and browser windows immediately relevant to the task at hand go on a main monitor desktop while secondary display desktops are used for things like chat, music, and documentation.
This is a core part of my workflow and is one of the reasons why I would have a difficult time using Windows as my primary OS: its virtual desktop support is far too weak in comparison. It can't even switch desktops independently per-display.
Or if you want the animation, switching is built-in on macos
What you need to do:
1. Create 6 spaces. This is a crucial first step.
2. Go to system settings — keyboard — keyboard shortcuts… — mission control — expand mission control — manually set “switch to desktop 1” to alt-1; rinse-repeat till 6.
3. Go to system settings — desktop and dock — disable “automatically rearrange spaces based on most recent use”
I tried to live like this for a while but found I could not separate applications into spaces
I would try setting up a space for, eg, all my communication stuff. But suddenly I’d need to drag-and-drop an image from my image editor into Slack. Or I’d want to drag a graphic from Safari into Final Cut Pro. Or any number of cross-workspace operations
How do you handle this with spaces? Do you initiate the drag, tap the space hot key, then drop?
You don't need to full screen anything to use macOS spaces for O(1) app-switching, instead of O(N) by pressing Cmd+Tab repeatedly to linearly scan your list of applications.
The rule is simple: one app per space, and Ctrl+{1,2,3…} switches to the corresponding space in O(1). For me space 1 is an IDE + terminal, 2 browser, 3 messaging, 4 bug tracker, 5–6 AI agents etc. It was fast to learn: get a DM, press ^3; to file a bug, press ^4 etc. I use this with the Rectangle app for window tiling, and this combination works great for me; I rarely ever use Cmd+Tab.
I also have a personal menubar app that's very similar to SpaceName, to quickly get the current ID when multiple spaces have a similar layout (e.g. terminal takes the left half, a browser the right half).
Similar I just use RayCast Hotkeys to bring mostly full-sized apps of my choice to the forefront and not worry about much. I'm also just optimizing around a small single screen setup these days for focusing on stuff.
No animations for quickly switching to displaying apps in the foreground
I do use alt-tab, to switch between the multiple windows of the same app. (Something's happened with my AltTab config, not sure if it's due to corp
background system software or a Tahoe update, but I no longer see the mini screen shots of the different window states.)
Is there a tool which eliminates the animation, also when switching between apps with cmd+tab? I almost never use ctrl+→, I just know what application I want to switch to.
All these apps that I tried only fix the ctrl+→, but not application switching
I've been using option 1 (reduced motion) since I got my first MacBook years ago. Trying to fix the browser issue you mentioned is how I discovered Chrome flags. I now `open` chrome with the `--force-prefers-no-reduced-motion` flag.
I love using (tiling) window managers, and one of the most important requirements for me is having a key binding for switching to the last active workspace. The proposed solution in the blog doesn't achieve this. I use Aerospace on macOS right now and think it's the best solution available.
I generally have fixed workspaces for different things: first for a browser, second for a code editor, third for a terminal, and so on. If I want to switch between the browser and code editor, I can do that with a single key binding, usually Alt+Tab. The same binding lets me switch between the code editor and terminal just as easily.
When you have something like 10 different workspaces, not having this key binding becomes annoying. If you need to alternate between windows on workspace one and workspace eight, you're stuck using both hands to press Control+1 and then Control+8. But with a last-active-workspace key binding, you can just Alt+Tab between them. This is the killer feature I always need.
You can use yabai without any of the tiling functionality (set the default mode to "float"), I have actually been using it with BTT to fix this exact problem. Thanks for letting me know that a fix has been added directly to BTT though!
Awesome! Is there a working way to do the same for Windows virtual desktops? I remember I used to do it with ViVeTool [0], but Microsoft removed the feature flag at some point.
Specific extension I use that became unusable (black text on black). However, if you look closely, you’ll see a lot of differences in look and feel that don’t seem “animation” related.
This is one of those classic examples of software feeling ‘heavy’ for reasons that have nothing to do with hardware limits. People often talk about performance in terms of benchmarks, but interface latency on routine actions probably matters more to happiness than a lot of headline metrics. Nice work.
I'm new to MacOS, is the thing they're refering to when you swipe left/right with three fingers to switch between different fullscreen apps / desktops? I kinda like the animation, after decades of windows I'm still impressed when switching between programs isn't stuttery.
Yes, and the app they're recommending emulates that swipe, but really really fast, so it looks instant. And you don't have to swipe 8 times to go from #1 to #9.
It get annoying after a while, especially if you're swiping a lot, such as having an IDE and test app / Simulator in one space and a browser in another.
The animation has bugged me for years! Thanks to the blog post, I found out that BetterTouchTool - which I am already using - has this feature since a couple of versions and now I could enable it. Wasn't aware of that, sometimes the solution is so easy.
This looks interesting and I will give it a try. I agree that the space-switching animation is painful.
I don't however think that this will solve spaces on MacOS, for the simple reason that opening new instances of apps is inconsistent and often doesn't behave how you'd expect it to once one more than one space is involved (in my experience, anecdotal).
I've come to peace with the fact that I will never be able to simultaneously experience the productivity of i3 and the necessary evil of MS Office/Illustrator on the same OS. The most important factor in my work is who I work with (rather than what I work with) so I'll remain on the latter train for now.
> There are only two problems: for one, yabai does this by binary patching a part of the operating system. This is only possible by disabling System Integrity Protection at your own discretion. For the second, installing yabai forces you to learn and use it as your tiling window manager1. I personally use PaperWM.spoon as my window manager. Both of which are incompatible when installed together.
I was referring to their last line ("I will never be able to simultaneously experience the productivity of i3 and the necessary evil of MS Office/Illustrator on the same OS") not the linked article because the parent doesn't "think that this will solve spaces on MacOS" therefore I gave a suggestion that would.
Secondly I don't find anything that bad about why the article's author doesn't want to use yabai, I generally disable SIP anyway (because I want to install anything I want without restriction, even edit system files because that's necessary in some cases, as yabai does); and they just don't want to learn a new WM which is fine for them but isn't a valid reason for everyone to not use yabai.
> for the simple reason that opening new instances of apps is inconsistent and often doesn't behave how you'd expect it to once one more than one space is involved
System Settings > Desktop & Dock "Automatically rearrange Spaces based on most recent use". This is the critical part.
And then right click App on the Dock, Assign to this Dock.
With these two things, Spaces becomes predictable and repeatable.
I struggled with the same annoyances for years. Then I installed TotalSpaces... but I think that stopped working. Liquid Ass destroyed my iphone and apple watch and I was able, thank god, to stop it from infecting my MacBook. At the cost of the newest updates.
I'm not a big space-switcher on OSX, mostly because each of my applications come with spaces (browser, IDE, etc), but unskippable UI animations are an instant roadblock.
Looks like HN hug of death killed your comments section though:
> An error occurred: API rate limit already exceeded for installation ID 65180581.
Nice. I wrote a little menubar app and Space switching has been a thorn in my side, including going down the "Yabai integration" route. Will have to take a look at this and see if I can borrow some ideas!
I didn't check if it makes any difference, but I see hardly any animation with “Reduce motion” enabled.
The article mentions this has the unfortunate side effect of also setting prefers-reduced-motion in browsers, but that can be mitigated by changing the browser settings (Firefox: about:config: ui.prefersReducedMotion. 0 (enable) or 1 (disable)).
Apple being completely oblivious to what normal people actually need or want is like bad weather- can’t do anything about it (Apple is so big and unregulated), just try not to forget to take an umbrella.
Interesting. It doesn't bother me at all, but the animation on Windows 11 to switch spaces feels very unsmooth to me and drives me crazy. Here I was wishing it was like the one on macOS.
The thing that most bothers me is that there seems to not exist a good solution for spaces that allows a grid set of spaces, like the one you can configure on Linux Gnome DE. That thing was so useful...
Honestly, this animation in one of the best things about spaces in macOS. I use the four finger gesture to switch spaces all the time and it make the spaces feature so much more natural than all other window managers I’ve used before
Agreed, that’s one of the things I miss most when using a Windows machine at work. Something about the animation makes my workspace feel bigger in a way that the Windows multiple desktop feature is just missing.
Technically Windows does have an animation when switching desktops with the trackpad, but it’s so jittery that it’s annoying. And the desktop image takes seconds to update, and only updates after completing the animation. To me this is one of those “death by 1000 missing bits of attention to detail” problems that plagues Microsoft/Windows.
Can you use this with the trackpad gesture though? That's the only thing that has me locked in, the muscle memory of trackpad is hard to beat for me and unfortunately I rather suffer through the animation then move to the keyboard
I'm in the same boat. The thing is that I like the first half of the animation when it matches the speed to the keyboard gesture. The second half of the animation after you let go, the speed suddenly slows. It feels like an attempt to skeumorphically adapt those drawers you can't slam, that have an air cushion that blunts the momentum and have magnets to draw it the last few millimeters shut.
If I could just "slam" back and forth with the three finger gesture I would be happy. Nothing is going to break from slamming my workspace side to side, I don't need to be protected. Those last milliseconds of the animation, when keypresses still don't point to the target space, are really annoying. I would like to just remove the "air cushion"/modify the bezier defining it. I get how it's supposed to feel 'high end' but it's nonsensical in context and just gets in my way, even if it's in a tiny way.
Thank you so much. This is finally the perfect tool. I am using a 160hz monitor and the switching times were driving me crazy. (The higher the refresh rate, the longer the animation takes...)
The giga brain move is to stop using MacOS spaces. Never full screen anything. Use an OSS window management tool like `rectangle` (similar to deprecated `spectacles`).
Use shortcat to bring your cursor to any element with just typing.
does Aerospace still require disabling SIP? kind of needed as my mac is a work laptop.
I would appreciate if anyone has i3/sway keybindings that work alongside this, otherwise I might just vibecode something in Swift. I know that there is some window management keybinds within System Settings, maybe I need to look into that also, but I don't think they'll behave the way I want them to
No it does not require disbaling SIP and it is inspired by i3 though I have never used i3 and it has customizable keybindings , you can also use karabiner to bind keys for it.
I don't use Spaces at all, probably in part because of the speed. I can't bring myself to run an application all the time to solve this, when it should just be a variable somewhere that needs to change.
I think it was iOS 9 that had some glitch where the animations were completely disabled and it was a really awesome experience to click an app and have it instantly open with zero animations.
I can organize related windows by task, so if I have two things going on which both involve say a Finder window, a Safari window, and some other assorted things, I can switch between tasks as a group with one gesture instead of cmd-tab which will pull up both Safari windows or both Finder windows, and then maybe needing to cmd=` to switch to the correct one.
When I'm in the appropriate space with only those related windows, the exposé gestures are also much more usable than when everything is jumbled together.
Because it makes you have to think before moving. If I am on Chrome and want to go to my code editor, I have to press CMD+Tab, see what position the code editor is in and press CMD+Tab x times to go there.
If I uses spaces, I know exactly where my editor is, where my browser is, it is one key press away and it is always there. I use aerospace and I divide my spaces using Alt+ the qwerty keys. Q=chrome W=code editor E&R=programs open for what I am working aka Postman or Obsidian and T=MS Teams.
My dock on MacOS is always hidden because I don't need it and now I have more screen realestate.
For me, I use spaces constantly to help me organise/compartmentalise what I’m doing. It lets you group related windows, where command tab only brings you one window at a time.
One example would be if I’m working on a document that draws on others I have written. Put all three in a space and that piece of work is nicely organised.
When I have all my windows in one space I find it messy and stressful and it’s harder to find what I want.
Overall spaces are more compatible with the way I think than command tab.
I personally don't, even when I'm doing heavy multitasking on a 13" laptop. Only exception is if something needs to be full-screen.
It can make sense if you're keeping a lot of non-full-size windows on a larger screen and working on separate tasks that are in the same application, meaning cmd-tab won't help.
I'm a little afraid of the failure modes, frankly. Clever, but that seems like it would b likely to exercise some under-tested timing situations. I'm not familiar with that API, so take the hunch with a grain of salt.
Rectangle with Alt-Tab (both open source), the latter is especially useful as I hate macOS' application- rather than window-level switching, Alt-Tab returns it to Windows-like behavior.
I'm a bit reluctant to draw attention to my solution since it was written to scratch my own itch and I have only had a handful of users other than myself. Last year I was seriously thinking about making linux my dev choice because coming back to a machine that had slept left me with several minutes of reorganizing the windows that had jumped to various spaces as the multiple monitors were recognized. Aerospace could put them consistently somewhere but it couldn't distinguish windows of same app. I built WinPin for that use case but then kept going to solve other things that have made using a Mac with multiple screens and dozens of windows that need to be organized around my workflows easier. I built in support for workspaces but really haven't used that myself since spaces were more of a necessary evil to organize windows rather than useful in themselves. Interestingly to make WinPin truly useful you have to turn off spaces because I can't figure out a way using what Apple gives me to determine which space a window is in.
If anyone would like to try the app out (https://winpin.app) I'm pretty confident that downloads and update flow are working and it has been running without issue for me on multiple macs for the last 4 months. There are a lot of edge cases I'm sure I haven't seen yet, but it has truly changed my workflow and I'm interested to see what others think. Please don't try to purchase a key, it is fully functional without one. I'm still working on that with Polar.sh and want to make sure my t's are crossed and i's are dotted. Gotta be one of the weirder posts to HN since I actively do not want to sell you something right now.
I use https://rectangleapp.com/ and enjoy it. I have shortcuts to move windows to the left/right half of the screen, and cycle between monitors. This, combined with native cmd+tab and cmd+` is enough for me.
This doesn't answer your question, but Aerospace (tiling WM) has been good for me to not use spaces. I don't mind spaces in theory, but the slow animation, for whatever reason, just really irks me.
My Cmd-TAB frustration is I'm usually moving the mouse while I press it, causing the mouse to select some unwanted app. It doesn't help that the row of apps forms a solid bar across the center of my display.
Wish I could ignore mouse movement when the app switcher is displayed.
Aerospace with opt+key to go to that space, cmd+opt+key to send a window to that space, then just make a mental map of where everything is. I use mnemonics like always putting discord on workspace "D" so it becomes quite fast
I was never bothered by the animations, but was livid when they redid the desktop thumbnails, and offered no way to always show the preview by default. You have to mouse up to them to get the previews.
It didn’t seem to bother the rest of the Mac world, but I used to organize my desktops in a chaotic way that worked great for me, and the ability to see the preview thumbnails as soon as I popped into mission control or whatever they call it enabled me to quickly go where I wanted to after a quick glance. I used to rename entire desktops, too.
The whole thing instantly became worse for me when they took away my ability to name your own virtual desktops, and added the extra speed bump of making me mouse up to trigger the previews. I’m still bitter about it.
I thought I was the only one that noticed this and it was driving me insane. Can’t believe the experience is so sluggish, makes me miss KDE so much which is ridiculous.
I have a vestibular disorder that makes this animation extremely disorienting and it's been so discouraging that apple won't do anything about it. I just stopped using the feature all together! Honestly it's an accessibility issue and apple should be ashamed... Maybe even liable for not doing anything.
Worth it! Easily one of the first things I install on a new mac. I have three finger swipe left/right to switch between tabs, three finger swipe down to close tabs (chrome, vs code, xcode, finder, anything that has tabs), and four finger swipe to go between spaces without animation.
And it's for me an absolutely indispensable app which I'd happily pay more for. The UI is a bit weird, but it's fantastic how many little tweaks it enables. A Mac without it feels clunky to me.
I've seen this sentiment often. For example, in a discussion about slow nvm load times: "Does adding 0.5s delay to opening your terminal really affect your productivity?"
I agree that these small things are not bottlenecks to my productivity. I can work just fine despite them. However there is some intangible effect they have on my mindset when I'm working. The more "snappy" my computer feels, the easier it is to enter a sort of flow state. Small bits of friction here and there add up.
Single monitor workflows — which are more ergonomic — make switching spaces a necessity. It might not impact productivity but it is annoying as hell switching around spaces a lot
You know Apple lost it and have become what Jobs most hated when the instructions to suppress an obvious UX flaw in macOS read like a registry tweaking hack for some atrocious UX in Windows, ca 2005.
I eventually became so frustrated with spaces in OSX, that I essentially try to avoid using them in macOS these days. Seriously, all I want is a way to move windows from one space to another via keybindings. I am not asking for much. In fact, IIRC, I think Snow Leopard had this feature. I know there were various solutions that cropped up, and even currently there are a few hacks. It just... such bullshit that it's not built in.
If one has a disability that hinders his or her ability to use a mouse/trackpad, then I strongly suspect there is no way for such a person to use spaces on macOS well. Though, it seems Apple could not care less.
I installed Debian stable + i3 + x11 on a desktop today - what a breath of fresh air (not that I'm new to Linux) compared to MacOS. No bloat. No animations. No lag. A perfect tiling WM.
No Secure Boot, no TPM, no SIP, no phoning home to the mothership to check if I'm allowed to launch an app, no spyware, no telemetry, no update nags, no trying to trick me into upgrading to the next major version.
I tried Sway & Wayland but IntelliJ freaked out so I went to x11
Also Nouveau seems pretty damn good these days.
KeepassXC works much better on Linux which is nice.
I'm keeping my M4 Macbook Air around for a while to play with local LLMs but it's not exactly the best for that, so I'll think it'll be on eBay not before long, because MacOS is getting more and more annoying...
I use spaces constantly, and I’ve never thought about the animation - I don’t think I’d ever noticed it to be honest. So it’s really interesting to read all the comments here about how frustrated people are with it. This is not a defence of it just genuine interest - I bet there are totally different parts of the OS that bother me that don’t bother others also.
Try it on an ultrawide monitor. For me it's literally nauseating to leave it turned on, as in, it actively triggers motion sickness with a monitor that width.
Imagine being so intelligent to do so many things with a skill set, yet choosing to spend so much time on an animation that can be measured in microseconds. The proportions are staggering. Truly bizarre to me how something I’ve never even noticed while using the feature could drive a person to this level of obsession.
I had a similar stance on this until I went through macOS -> linux with i3 -> back to macOS transition. i3 window and workspace operations on a maxed-out Dell XPS were truly instantaneous, and after moving back to macOS, there is no way to unsee the slugishness of the native window operations.
I'm using Aerospace at the moment, and it gets pretty close, but still isn't as nice as i3.
I grew up with this animation so I didn't consider it annoying until I bought a new Macbook a couple years ago.
I noticed sometimes I would press keyboard shortcuts before my system's focus had switched. Just little stumbles here and there, some inoffensive, some annoying, but who knows maybe I didn't catch enough sleep.
Over time it happened often enough that I decided to google it, and it turns out my muscle memory wasn't failing me; the animation speed did change ever so slightly and was slower in new Macs with 120Hz displays [1][2] (newer MacBooks, 2021+). If you switch your screen to 60Hz it goes back to the faster animation.
Why is this animation slower now, and why does it depend on screen refresh rate? I have some technical theories but can't think of an organizational reason it happened and hasn't been fixed 5 years later at a 3.82 trillion market cap company. If you Google it there's plenty of discussions online about this. It's noticeable and annoying to people who have used the feature often enough.
[1]: https://discussions.apple.com/thread/256124324?sortBy=rank
[2]: https://www.youtube.com/watch?v=gNBWt4NvqHg
Wow I never realized I had this problem until now! I never even considered the reason keys would dispatch to the wrong window was because of the animation. I just knew that sometimes when switching workspaces I'd have to wait until whatever window I'm switching to has focus before typing.
I believe I first learned to shorten animations on MacOSXHints.com (gone now). Regardless, I learned a lot of great "enhancements" here:
https://github.com/mathiasbynens/dotfiles
And here's the blog of the person who ran MacOSXHints.com:
https://robservatory.com/make-your-macos-dock-suck/
Fun aside, I'm pretty sure that my mention of a system issue that I read about that morning on MacOSXHints.com was a helper in landing a job in an interview that afternoon. What I mean is, I said, oh are you talking about "whatever thing on that site today…?" and it demonstrated that I was familiar with whatever internals.
Nice resources! I've use MacOS for over ten years and I never really modified anything other than my zshrc. I'll check then out!
This is such an insane bug to still have around all these years.
Are apple engineers not using macOS?
I think Apple's self-image of being the epitome of design actually acts against them. Leads to monstrosities like Liquid Glass kinda vandalizing random parts of the UI in small ways that I intuitively read as "they are anti-anti-aliasing" not "they added cool refraction effects." It used to be you'd see something in a well-chosen color, now it is just a muddy kind of greyish brownish whatever.
I'd like to see them make some costly signalling to indicate that they are going to turn it around like maybe buy two Superbowl ads in a row and let the CEO make a personal apology.
Isn't going to happen because the competition is Microsoft and Intel and Dell who won't hold them accountable and it is just too easy to turn reject iPhone chips into netbooks in 2026.
I… think that actually Liquid Glass was put on the iPhones to make sure that older iPhones that still have relatively fast chips can show up finally slower than the brand new ones, and that with this stress there’s again a much larger slope in difference between an older iPhone and a newer one which causes enough nagging in users to upgrade = buy a new one.
So assuming everyone at Apple isn't deaf (it's all over public discourse), blind (it looks bad), and dumb (no genius needed), then how does it get through? I can only see a few scenarios, none of which are good.
Maybe Apple engineers are afraid to push back on management?
Maybe management isn't receptive to their employees who voiced concerns?
Maybe key decision makers have pushed themselves into an echo chamber where it's difficult to hear concerns.
One of these has to be true, or some combination. But none of these are good, they are incredibly destructive to companies. Though also unfortunately common across monopolies. Iron Law of Bureaucracy hard at work...
I often think of that scene in Pantheon where they basically say they don't know what to do after Steve died. You can only laptops so small... and they're so small that anyone that puts on lotion is going to have an imprint of their keyboard on their screens... Steve wouldn't have accepted that
This isn’t unique to Apple. The Windows developers were very vocal about a full screen start menu in Windows 8 being a bad change. We were told that we weren’t allowed to talk about it anymore on the large mailing list about the product. The decision had been made and complaints would no longer be read or responded to.
It gets through because Cook has no eye for design or usability (he's a supply chain guy) and Alan Dye, who Cook put in charge of software design, wanted it that way. I'm sure there are designers who hated it, but they don't have the final say.
> Maybe Apple engineers are afraid to push back on management?
I can tell you with confidence that this isn't the issue. HIG (Human Interface Guidelines: a design spec that became a department / org) overrides them.
> too easy to turn reject iPhone chips into netbooks in 2026.
You mean the flagship chip from their former pro phones? I was with you until you said this. Makes you sound out of touch or ideological.
I think they've been on the worst design tear since they went to OSX for the past eight-ish years. At no point does their awful software design intrude on their awesome chip designs.
My partner's first Mac is a MacBook Neo and she loves it. Pink. Looks pretty good. Does what she needs. Not right for me, probably not right for you, but what I'd tell my mother to buy if it existed when I told her to buy a regular MacBook Air.
It's not meant to be an insult, I have a phone in my pocket with one of those chips. back when I was using Android I was like "why do people get so excited about apps?" but the iPhone experience is all different. They are "rejects" because a lot of them have a busted core which can be fused off.
If there's a problem w/ the Neo in it's current incarnation is that are going to run out of those chips and find something else. It takes an advantage of the opportunity and might be the beginning of a new market segment for Mac which will hold PC and Chromebooks accountable.
(Funny a pink netbook served me really well back in the day! I remember using one to log ham radio contacts from a mountaintop near San Luis Obispo into a sqlite database and then using it as the best ever car computer in the passenger seat of a car with Microsoft Streets & Trips and a music player)
My pet opinion is that Steve Jobs was an asshole but an asshole that used his own products and used his powers of complaining to steer the whole ship to fix major "this annoys me everyday" bugs.
From my experience, "annoying but not blockers" bugs are often very neglected compared to (1) bugs that actually break things and (2) feature work. Neglecting quality of life issues leads to the "do you even use your product??" kinds of experiences.
This is exactly my thought as well.
Soo many things either work buggy, laggy, inconsistent, or don’t work at all
Filling bugs doesn’t help. And I don’t think anyone is inventive to fix bugs. Resolving sure. But closing WONTFIX or NEEDSINFO is also a resolution.
Most of what I do is chrome +Linux terminals and vscode anyway
And the only reason I’m on Mac is because of hardware, encryption, and ease of backup/restore/wipe, and the power struggle of Linux distros. freeBSD is not really an option
There's a windowing bug that was introduced in 2009 that I'm confident will persist until MacOS has another MacOSX-style transition to something entirely new. They need someone who cares about fit&finish more than features driving the ship. That's not what gets promoted to the top, unfortunately.
Steve Jobs knew what he wanted and was willing to put his foot down in order to get it. Yea, I’m sure he was difficult to work with and drove people insane, but he was the plumb line that kept Apple driving in (mostly) the right direction. Now, it seems like they have bored designers trying to make a name for themselves with a “new” and “revolutionary” interface in Liquid Glass, which nobody likes and is less usable than its predecessor. But nobody ever got promoted for maintaining the status quo, so they are going to push forward. Steve’s advantage was that he never needed to be promoted.
Well, the UI leader behind Liquid Glass is no longer with the company, replaced by a long time Apple employee known for his eye for detail.
I do t think Liquid Glass is going to go away soon, Apple doesn’t seem to reverse itself ever, but I do expect Liquid Glass to become better over time. We’ll see what WWDC brings on that front I guess.
My take on it is that in my own work I really like transparency effects but it is always a chore to tune up the foregrounds, backgrounds and alpha blending to keep everything legible. If you control all the content it is one thing, but for a general-purpose OS where the content is supplied by the user and applications you have to dial the intensity way back.
When I first saw the prototype images I thought they were really cool and it was a bold idea though people on this site were complaining about it already for the predictable reasons.
When it came out I was thinking that they dealt with the legibility of the content by dialing down the legibility of the design -- like it looks like "anti-anti-aliasing" more than it looks like "bold transparent vision"
One reason I don't think I read it as "refraction" is that one of my tells for refraction is chromatic aberration and without that it doesn't seem real to me. I think it would triple the texture lookup rate (at least) and make content legibility worse and I think you would see a lot of people say it is was an ugly gimmick.
Technically, I’m awed by it. Very cool visually. It’s just when you go to use it that it all falls apart. As you say, they can’t control the content it’s flying over, and thus sometimes it does bad things. But also they rearranged navigation and some other things. I try to keep from rejecting new things just because they are new, but there were some serious usability gaffes in both iOS and iPadOS. Interestingly, macOS doesn’t have the same issues and I’m actually somewhat ambivalent about it.
> Apple doesn’t seem to reverse itself ever
I agree, but also they broke that rule very recently when they lowered the price of a display and issued refunds one month after intro. The VESA price dropped $400. I learned about it from Accidental Tech Podcast.
https://www.apple.com/us-edu/shop/buy-mac/studio-display-xdr
And they did give up on the butterfly keyboard and the touch bar. So, there’s hope.
The thing / issue at this point is though: how much is Jobs still responsible for Apple's ongoing success? He died 15 years ago, two years after Apple introduced "flat design" (to much criticism at the time but people got used to it). But after his passing, Apple's market value went from ~500 billion to ~4 trillion today, more than an 8-fold multiplication.
I find it hard to believe that his influence was so strong that it had an inertia that lasted for 15 years. Ive left his mark on it for longer.
Apple had a few near death experiences and might not have survived.
One of those early near death experiences might have been Jobs fault (going at the Apple /// and the Mac when, in retrospect, the Apple ][ could have been evolved more aggressively) but he helped bring it back from the brink later on.
Android deserves a lot of credit for the success of iOS in that a zombie mobile OS that doesn't have to be profitable has displaced a competitive mobile OS. A similar kind of fragmentation has bedeviled the Windows (and Linux) PC as well as (from the viewpoint of Windows) distractions such as Azure (good business) and XBOX (bad business.)
Intel deserves a lot of credit for the success of Apple too because for 15 years Intel has had no strategy to translate architectural improvements to experienced performance for client PCs. The way they've gone about SIMD is an absolute disaster, like by the time we can use AVX-512 in mainstream software everybody will have moved on to ARM. Charlie Demerjian would talk your ear off about how the tech press has been uncritical about their hyperscaler/HPC patter, never reminding you that client PCs are still the bread and butter of their business -- pander to the likes of Amazon and they will use any cost savings they get to invest in ARM. It's suicide.
I guess that depends on what you put into the word "success". I dont believe that great design work or great products and high market cap has ever been that related to each other.
With that said I dont think Steve built Apple alone either. And i think they have done some great things after his death as well.
Interesting. I have worked with a CEO that did exactly that.
The product quality was just insane.
I have also worked with people in power who believed they were doing the same, but actually just had weird taste in interfaces and ended up screwing up the product.
So YMMV.
I’ve learned over the years that most people have poor taste in UX. Even some UX designers and supposed “experts.”
I have not been impressed with Cook in the slightest. He came from Compaq, if I am not mistaken, and in many ways, I feel like Apple has become more Compaq-like during his tenure.
I mean, their damn phone keyboards are so bad I'm 100% confident that Tim only does voice to text on his phone. There's no way that the CEO of a company could use a keyboard that horrible and not want to fix it.
The behavior of the iOS keyboard also showcases how there must not be many decision-making people who communicate in multiple languages.
It’s SO bad. It makes me not want to use my phone anymore and physically go get my laptop if I’m chatting/messaging someone.
It’s probably the worst typing experience I’ve had since resistive-touch screens on PDAs. At least with them you could still type what you intended to though, just slowly.
If Tim used speech to text we’d be at least testing SotA local voice models in the iOS betas
Starting to wonder what he DOES use. I guess just the cameras since they seem to be the only things that change.
He's a gazillionaire, he has people to interact with phones for him
This, along with circle to search (for translating, mainly) are the current main things pushing me to stay on Android.
Most of my issues were fixed when I disabled swipe to type. Not all, but most.
I've heard this advice before and I've tried it, and I really didn't notice a difference. I also, unfortunately, use swipe to type a lot. If I'm typing one handed I'm pretty much always using swipe. Sure it barely works, but that's the same as if I was typing normally so feels like a wash.
Keyboard works fine. Always has. iPhone just has so many users that there's going to be a plethora of passionate unpleasable nerds for every single facet of it. Even in your ideal virtual keyboard version, there was an army of people complaining that it wasn't a hardware keyboard.
No it doesn’t.
It did work fine before. But I had to swipe 3 times to get “fine” instead of “going” just now
This is misinformation, please provide sources to your claims. The iOS keyboard degraded in the latest versiond.
https://www.macworld.com/article/2952872/heres-proof-that-th...
Nice strawman, and unnecessary attack. I'm using iPhones since the 3GS, and from time to time type on an Android and the keyboard on iOS _sucks_. As someone else wrote, I am loathing to chat with someone on the phone and rather switch to my laptop.
I’ve never really disliked the keyboard. I’m not entirely sure what they’re talking about. That being said I’ve never used swipe to text so maybe that factors in, or never having had a smartphone other than an iPhone.
If you had ever used Swype on Android (it was only briefly on iOS, and wasn't as good as the Android version yet), you would understand how good keyboards could be 10-12 years ago. Perfect precise cursor placement. Cut, copy, paste, and select shortcuts. It was not perfect, but it was rapidly getting there.
Microsoft bought and killed it without, apparently, learning from it. Maybe there was a good reason why, but I've never seen one.
okay.
In case anyone else is going crazy trying to find this setting, it’s called slide to type
In my experience iOS 26.4 did largely fix it btw. Update if you haven’t already.
I'm on 26.4 on a brand new 17 Pro Max, recently upgraded from a 13 Pro Max, and I have noticed absolutely no difference in the keyboard. It's still awful.
But then you'd have to upgrade past 18, meaning the liquid glass abomination.
Why are you paying money for something that you find so terrible when there is a perfectly good alternative.
Life is too short to waste is using junk you don’t enjoy.
Whats the alternative? Android not, because it's absolutely not perfectly good
Stockholm syndrome. Moving between spaces is fine! What are you talking about?
You get used to it and then it's not a big. Stop holding it wrong!!!
Even if they did, what are they going to do? File a bug report that will sit at the bottom of the priority pile forever?
Devs don't set priorities. Software "Engineers" largely don't get to engineer at all.
I wouldn't be surprised. Their 3D solid modeling is done on Windows, so why not their electronics.
I noticed this immediately when I first used a 120Hz macbook in 2021. As a vanilla MacOS UI feature that I'm sure many people use, I can't believe it hasn't been fixed yet.
Don't know about customizability on MacOS but I've always been very accustomed to animations and recently I just turned them off on Android and Linux and I... Don't miss anything. Turned out they don't add anything other than an initial wow factor.
Personally, I think some animations can help add context to what is happening. For example, when using QuickLook, there is an animation when opening/closing QuickLook that zooms out from, and then back to the file location. If doing something with that file after the QL, that little visual clue helps find it faster and know where it opened from.
The closest thing you can do on macOS is to turn on "reduced motion". This doesn't remove any animations, it just replaces them all with fade animations which take the same amount of time.
and set it to 60hz instead of 120. And install the tool that the article links to.
I also have a 120Hz Mac, and the animation is indeed slower in 120Hz mode. In my opinion, the animation crossed the line from "too slow but bearable" to "unbearable" with 120Hz. It is as you say; it's not really the animation itself that's the problem, but the delay from when I tell my machine "switch to this other workspace" until the focus switches to a window on that other workspace. The animation has this horrible ease-out effect where the last few centimeters take what feels like forever.
Getting a 120Hz Mac actually completely changed my whole macOS philosophy. I used to use spaces extremely heavily. I now almost don't use them at all, preferring window switching with cmd+tab instead.
The infuriating thing is that almost all discussion on this on the web just says "turn on reduced motion". Not only should that be unnecessary; it doesn't even fix the problem! Sure, there's no longer a sliding animation, but there's now a fade animation instead which takes just as long.
It's completely incomprehensible that Apple hasn't fixed this.
Sadly, solutions like BetterTouchTool and InstantSpaceSwitcher won't work for me because I prefer to use my trackpad to switch spaces.
EDIT: I actually recorded and compared the switching speeds a while ago: https://old.reddit.com/r/MacOS/comments/rfmg4e/workspace_swi.... Apologies for the choppy recording, QuickTime screen recording is not very good; but it gets the point across.
> Sadly, solutions like BetterTouchTool and InstantSpaceSwitcher won't work for me because I prefer to use my trackpad to switch spaces.
One of BetterTouchTool's first features ~17 years ago was trackpad gesture customization, it is still one of the most important things you can do with BTT! ;-) You'd just need to assign the "Move Right a Space (without animation)" and "Move Left a Space (without animation)" actions to trackpad gestures in BTT.
I don't want it "without animation", I like that the animation tracks my fingers and that the response is instant and doesn't wait until a "gesture" is "triggered". I just want it to wait a second after I let go until the target workspace starts receiving input.
I have noticed this bug years before Apple started selling 120hz displays. I thought for sure they would fix it after that, but to my surprise it has persisted...
I think it must go back to High Sierra or Mojave at least.
I've been having the same problem, entering keystrokes in the wrong windows when changing spaces. I'm so glad to know it's not just me, it's the fact that I just a couple months ago bought a new MBP. Thank you!
I would assume it’s something based around whatever deacceleration animation it is calculating? So in the inverse of what you would see in games that don’t support uncapped framerates. It would at least explain why the refresh rate has an inverted relationship
we are a certain type of people here, aren't we?
I think Apple is making a really fatal flaw. Tbh Microsoft is doing it too.
Design good interfaces, with sane defaults but do not handcuff power users!!!
I often hear people say no one should care because there aren't many power users. They're a small portion, but that's absurd framing. They matter a lot because they're the ones that push your design language, develop new ideas, influence the general community, build new programs, find your bugs, and all of that. Apple and Microsoft are closing the ecosystems to get more control not only to exploit the users more (scrape their data) but to reduce bugs and things. But more and more people are trying these random programs because they can't figure out how to do things the right way. It's exactly why people are getting more frustrated with computers. The general public still doesn't care about data harvesting but they do care that the restrictions are handcuffing them now.
Funny enough this is also why Linux is becoming more popular. You've always had complete control but in the last 5 years the barrier to entry has plummeted. It's still not right for the average joe but it's on its way and a few more specialty distros are already there (e.g. steamos). The irony is Apple had the right idea before, even if not as modifiable as Linux, it used to be easier. But now it's more like a power trip. Consolidating control because they don't know what else to do
> I often hear people say no one should care because there aren't many power users.
You also have to consider that not all power users are the same. I’ve been using macOS since the G4 PB days, and would consider myself a power user. I get around in the os just fine and have for years. I also have never felt handcuffed. Some of the macOS 26 visual decisions are/were (some were already changed) questionable, but overall it was a solid upgrade IMO.
Sure, I tried to make it apparent that power users are different. Not one person does all those things I listed.
But as an example, here's an example of how Apple has broken my ssh configs SEVERAL times. The solution in this thread no longer works. I am not sure why Apple is so insistent that you cannot find the SSID from the CLI. It is ridiculous. Even more so that the answers have changed over and over. And btw, I am still on Sequoia and this command was patched out in a minor version... It feels hostile how often stuff like this happens
https://news.ycombinator.com/item?id=41633547
> Design good interfaces, with sane defaults
They're not doing that either. And unfortunately bad designs are rarely fatal, so can linger for decades. And animation time waste has little to do with power use, everyone suffers
To be honest I think it's revealing of a bigger problem: yes men. People are too afraid of telling the emperor about his (lack of) new clothes. I see this a lot. Not just with CEOs but even engineers being afraid of pushing back on their managers. It's your job you voice your opinions, but it is also true that the manager is the ultimate decision maker. There's a healthy balance here and if employees are afraid to tell the emperor about his new clothes then many just end up resenting and talking behind their backs. You can't have a healthy team if people aren't allowed or even willing to voice their concerns.
Is it fear or just a checked out mentality? I can easily see devs at corps just doing whatever is asked by management to the minimum standard and calling it a day.
Particularly if there is a corporate push for efficiency (tautologically true) or the dev is an offshore worker who stands to gain nothing from being prideful in their work.
> They matter a lot because they're the ones that push your design language, develop new ideas, influence the general community, build new programs, find your bugs, and all of that
they used to care, but they don't now, because these corps have sufficient monopolistic control to not require "outsiders" to push their design language, develop new ideas, influence or programs.
In fact, it seems to me that these big corps want power users out, as they disrupt the agenda, find workarounds for "features" being pushed out that should have been mandatory for pleb users!
> [Linux is] still not right for the average joe but it's on its way and a few more specialty distros are already there (e.g. steamos).
i hope that is the future, because it's the only road to freedom for general computation. Unfortunately, the hard part is not the end user's acceptance of it, but the hardware manufacturers, who are being gripped by the balls one way or another. Unless they're willing to sacrifice any microsoft certification etc, they will be somehow beholden to them (may be not now, but certainly in the future when linux truly threatens window's dominance).
I mean this could be solved really easily if the team that works on this exposed some settings to tweak the animation speed. They don't even need UI, people would find them anyway. The problem is the people who work on this do all the animations for windows etc. and I have no idea how they develop this stuff but presumably HI just comes down to them with some number they hardcode into their software so nobody can ever change it.
I see yabai mentioned, definitely check out Aerospace. Ive tried multiple WMs after years of i3 on Linux and this is the best one I found (for me) with quite a margin. It just works (tm)
https://github.com/nikitabobko/AeroSpace
I love aerospace, but you can definitely feel that it's a hack on top of the macos window manager. If a window starts misbehaving (like, app is frozen or sometimes even just has a top dialog) then aerospace can't move it and you lose its immersive aspects. I also keep getting floating windows lost in the outer limits of the outside wotld, and have to use the native "move to center" in this situation. Oh and that issue with tabs in ghostty or item is annoying - but once again not something aerospace is really responsible for.
With all that said, short of being able to use i3, this is a fantastic WM, couldn't imagine not having it. Use it in combination with karabiner to remap your caps lock key, and suddenly caps lock becomes how you move in macos.
Aerospace makes my Mac usable, but it is a looooong way from what i3 offers in my experience. i3 is way snappier, super stable, with good features out-of-the-box (including a status bar) - you forget it exists. Aerospace is slow, has to use that "windows in the corner" hack, it constantly resets whenever I resume the mac from sleep, needs additional tool for a status bar and more.
Much of it is not a fault of Aerospace, it's just what you get using Apple products in a non-sactioned way.
I was a heavy macOS Spaces user. Upon a recommendation to use Aerospace from somewhere else here a few months ago, I switched and love it. I considered Yabai, but some features required disabling SIP (System Integrity Protection).
The main reason I use Aerospace (after a thorough testing of most macOS third party window managers) is for the space management and instant space switching.
Another happy aerospace here! IMO it does a great job with barely any configuration required (the default config works great, I have barely tweaked it over years of use), that said I’m not exactly power user of tiling WMs, I have one app per workspace 90% of the time
Same here. My only complaint is I wish there was a way to make apps floating by default and then you would specify which ones you want tiled.
IME a lot of apps are easier to use in their default state. I really only use my web browser, text editor, and terminal in tiled mode.
You got me thinking, and this seems to work for me. I didn't test if the order of these blocks matters.
When exactly do you need floating windows?
- a happy ion2/i3 user since forever -
When you want to quickly use apps without navigating away from your tiled workspace.
Especially transient dialogs, e.g. wifi/file picker. I would create rules in sway/i3 for those to keep them floating.
I've written at length about this topic on HN in the last month, so I'd hate for it to seem like my lil hobby horse, but something I've come to appreciate about the conventional "stacking" window solution of Windows/macOS is that it has a good answer for apps you briefly use.
for ghostty users check out https://ghostty.org/docs/help/macos-tiling-wms
Aerospace is incredible.
Another happy Aerospace user here!
Also paired it with sketchybar!
It worked great when I switched from yabai some time ago but now it seems to be constantly losing windows and I have to keep resetting it :S
> Pay for a license for BetterTouchTool. Enable “Move Right Space (Without Animation)” and “Move Left Space (Without Animation)”. > I managed to find [another solution] with none of the aforementioned drawbacks.
I don’t consider paying for quality software a drawback!
I’ve been using BetterTouchTool ever since the 2016 Macbook Pro with Touch Bar, so I guess that’s a decade now. It turned the Touch Bar into the best productivity enhancement I’ve ever experienced from a laptop, and evolved to suit even more use cases beyond the Touch Bar.
I consider it completely indispensable, and I doubt it would still be in (very) active development today if fans like me weren’t paying for it.
God damnit I didn't know until 15 seconds ago that the Space-switching animation in macOS was annoying. Thanks a lot!
Just wait until you notice that it’s inexplicably slower on 120hz monitors and that your input devices remain focused on the previous space until the animation fully completes!
> our input devices remain focused on the previous space until the animation fully completes
This strikes me as the fuckup more than anything else.
This is true in iOS, too. Taps are ignored until any animation completes. Must be deep in the code!
That's entirely app-level issue; the frameworks and the system itself is perfectly capable of handling this. [1]
It's just that for _most_ cases it's perfectly fine to make the users wait until the animations is finished, and handling users tapping multiple things in a quick succession can get annoying and unwieldy.
There are some apps when it's infuriating though, especially when they're quadruply badly engineered and _tie the internal logic state_ to the UI state.
As someone living in a country where I don't speak the local language, I swear at Google Translate engineers daily because I do a "swap the active pair of languages and then quickly launch the camera mode" combo _very_ frequently, and the selected pair of languages isn't actually updated _until the animation finishes_.
It's maddening. [2]
[1]: A quick demo: tap an app on a Springboard to open it, and very quickly swipe up from the bottom to hide it. You'll absolutely be able to interrupt the animation of it launching.
[2]: I'm actually sorta guessing that this is a workaround for a different bug they had; when if you tapped this quickly enough a couple of times you could end up in a situation where the UI displayed a different pair of languages than the internal logic had, so they added that delay, but who knows, maybe I'm theorycrafting too much.
I have noticed this bug since... I want to say High Sierra? It was the inspiration behind this project.
It’s insane and the worst part about Mac OS
Window management on macOS is just trash.
3 people from my team recently switched to macOS and they never owned a mac before and they are all complaining about window management.
Do you know how dumb it makes me feel to have to tell them they need to install third party apps just to make their system somewhat usable? it's insane.
>3 people from my team recently switched to macOS and they never owned a mac before and they are all complaining about window management.
For legit reasons? Because many switchers complain for stupid reasons, like the macOS distinction between apps and windows.
Complaining about the distinction between apps and windows isn't a "stupid reason" to complain though.
Say I use Slack, Teams and Outlook. If I use their Electron versions, I switch between them with cmd+tab. If I use them in separate browser windows, I switch between them by using cmd+tab to switch to Firefox, then cmd+` to cycle through windows until I find the one I want. That's weird; how you switch between these three apps depend on the technical details on how you opened them? Why?
Say I have neovim, the mutt email client, and a shell open. These are three separate apps, but because they happen to run in a terminal emulator, I still have to cmd+tab to the terminal emulator, then cmd+` to cycle between them. They're semantically different applications in dedicated windows, but technical implementation details mean they belong to what macOS considers "the same app", just like the "apps in Firefox windows" example above.
It wouldn't be so bad if the cmd+` "cycle between windows in the app" feature worked well. But it doesn't. Unlike cmd+tab, it doesn't show a bar which you get to select from, it just instantly re-orders your windows; and it's impossible to select a window in another workspace. That means, if I have Slack open in Firefox in workspace 1 and Outlook open in Chrome in workspace 2, I can switch between Slack and Outlook with cmd+tab, but if I Slack open in Firefox in workspace 1 and Outlook open in Firefox in workspace 2, there is no way to switch between Slack and Outlook. That's pretty bad.
The (shift+)cmd+` order also resets to match the window z-order whenever you switch apps. So if the order is windows A, B, C, then you select window B, cmd+tab away, then cmd+tab back, the order will now be B, A, C.
I've developed an intuitive understanding of this, but I had to experiment just now to describe the behavior precisely. And my intuition is still wrong sometimes (like if the app has windows on multiple monitors, it's hard to predict the z-order).
> if I Slack open in Firefox in workspace 1 and Outlook open in Firefox in workspace 2, there is no way to switch between Slack and Outlook
My local maximum is to never use workspaces – just cmd+tab, cmd+`, and sometimes cmd+h to reduce screen clutter.
I would also add to this that in order to open two instances of an app the app explicitly needs to support this. For example, you can't open 2 instances of Calculator.app side by side.
This is really annoying.
Yeah, I always want 2 calculator apps when I'm speed calculating... what?
You may want to see the result of one calculation while doing another calculation?
Mac power user 25+ years.
Yes, it’s complete shit
Have your teammates also discovered how macOS handles copy/pasting a folder when the destination folder already exists? How macOS just deletes the entire contents of the destination folder, instead of merging? I remember discovering that for the first time :(
My favorite MacOS update was when the removed the need for Rectangle, Mos, and Unnatural ScrollWheels.
/s
If you don't want to go insane try to forget before you notice everything else. Might be too late already once you first do though
I switched to Fedora Asahi Remix[1] after being affected by this bug[2] after 5 releases of MacOS Tahoe. I am enjoying Asahi Remix with Gnome and it has sensicle window management.
[1] https://asahilinux.org/fedora/ [2] https://youtube.com/watch?v=JjptYWKGVc4
Oh yes, I've also suddenly had my workspace switcher turn black! Never happened before but it has started happening lately.
macOS has never been bug free, but it feels like they've really been working hard to introduce new bugs lately.
I also switched, but to https://asahi-alarm.org/ (the arch variant) with Sway, right after Software Update ignored my choice to NOT upgrade to Slophoe.
Same same. I'd been a die hard mac user since System 6 in the early 90s, but last year I switched to Asahi Linux and my next hardware may or may not be from Apple.
Tangentially related.
After a restart, and after Finder has opened multi-tab windows I have open before, clicking on a tab can suddenly move my view and the window to another space.
Apparently different tabs in the same window can think they belong to different spaces.
Something (I perceive as) common to a lot of the (perceived) increase in Apple software glitches recently, is I cannot fathom the logic for which the bug makes any sense. It does not feel like I am seeing corner case bugs, but instead major "bad-model" code, revealing its poor design.
Clever hack. Now if there were some way to bring back the OS X 10.5/10.6 2D spaces grid… the linear design in place since 10.7 has always felt overly simplistic.
That is indeed the biggest thing I missed so much. When I finally moved from macOS to KDE I got the grid desktops back and I love them so much.
I have 9 virtual desktops and a 3x3 grid is so much easier to navigate than a row of 9. Also, Apple makes them dynamic now. I have each desktop assigned to a specific purpose. It's like having 9 computers at my fingertips.
Almost every release of macOS after 10.6 or so dropped something I used and the replacement if any was rarely good enough. So it started rubbing me the wrong way, more and more with every release. I'm so glad I'm no longer on an opinionated OS but that I have a desktop environment that cherishes configurability and options.
In keeping with this, for the transition animation you can choose several options like a fade and a slide, you can turn them off completely (as this hack does for macOS). You can even set the speed of some transitions. I have it set to slide but faster than normal. So the sliding gives me a little spatial awareness of where I move within the grid, but it still feels snappy. All just by ticking some options. I love KDE <3
I've tried KDE but unfortunately too much of it clashes with my preferences, even after spending quite a lot of time tinkering with its many config options. It's a nice project but I don't think it'll ever be for me, despite carrying features from older versions of macOS.
> Also, Apple makes them dynamic now.
I don't understand why they do this at all; but at least it's still a single checkbox you can toggle off, FWIW.
(Desktop & Dock -> Mission Control -> "Automatically rearrange Spaces based on most recent use".)
Having been ruined by Linux options like Hyperland and Niri, I’m digging my early foray into OmniWM - https://github.com/BarutSRB/OmniWM
It is very good even though it's in early development. Issues are getting fixed almost as fast as I can find them. I have to use macOS sometimes for work and OmniWM made it bearable.
As someone who never uses spaces or any window manager, what am I actually missing? What’s wrong with cmd tab and just switching between apps? Is this going to be some Kind of major epiphany?!
Spaces is what used to known in Linux as virtual desktops (maybe it still is), and that is how I think of it. Or as virtual monitors. Right now I have desktop one for local system iTerm2 and Firefox, desktop two for client 1 (terminals, IntelliJ IDEA), desktop three for client 2 (VirtualBox, terminals), desktop four for incidental stuff that needs a mostly empty desktop, and desktop five for Chrome (for things that need it), and GIMP and Inkscape (as needed). This way everything stays where I put it, including which windows over which other ones. So I can switch to D1 to look up some documentation on a function, then back to D2 to use that knowledge. Or on my personal laptop I can keep my coding project up one desktop and do the daily web surfing on another, and just switch desktops to have the coding project right where I left it.
(You do use a window manager, btw, it's the thing that puts the title bars on your windows and lets you move them around. On macOS it's integrated in, but on Linux you have to choose one. There are many, all of which have some failing. Except for sawfish, whose failing is that it is no longer maintained.)
> What’s wrong with cmd tab and just switching between apps?
Open 3 terminal windows. Try to switch back & forth between just two of them with a keyboard shortcut (without mentally tracking whether or not to press Shift). You can't.
Open a browser and two terminal windows. Try to switch between one terminal (your editor) and the browser window (your reference docs), without also bringing the other terminal above the browser window, covering up your docs. You can't.
> Is this going to be some Kind of major epiphany?!
If you don't use several windows per app, probably not. But, I do, and macOS's window manager is awful for it.
Using built-in tooling (settings) could anyone share your ways to get to app + switch to correct window.
Just simpler to navigate and less cognitive load, pressing a key and going where you want to go. Here's a video from ThePrimeagen with some examples.
https://www.youtube.com/watch?v=bdumjiHabhQ
Sort of. With proper workspaces you land directly on the full screen program with a single hotkey. No cmd-tab switching needed.
You don't technically need workspaces for this with app/window hotkey assignments via raycast or hammerspoon, for example.
Same boat and whoa this looks nice! Will give it a try thank you!
I recently had to switch to macos for work and Jesus Christ is this not the pinnacle of engineering. Sure, I'm accustomed to my self configured Linux desktop but boy is Mac OS slow to use and hard to configure. And so keyboard unfriendly.
I did an exhaustive comparison of window managers and settled on using Raycast for simple resizing (full screen, center, mid-size centered, 1/2, 1/3, 2/3 left/right) + FlashSpace[1], which implements simple virtual spaces with instant switching.
You can also use Rectangle or Spectacle or others in place of Raycast.
Foolproof with zero magic.
[1] https://github.com/wojciech-kulik/FlashSpace
+1 for FlashSpace. I used to be an i3 user and MacOS workspace management drove me mad. For years we had TotalSpaces, but that is no longer being maintained. With FlashSpace I finally have a great setup.
My solution has been binding a key Hyper+[a-z] for my applications. When used in conjuction with FlashSpace I get a usable setup. I also heavily rely on native MacOS binding Cmd+` (backtick) to cycle the currently focused application, and mission control for the current workspace.
Let me know if this is interesting; I've been considering creating a YouTube-video about this setup.
I would love that video.
Wonderful, that leaves 2 things on the top of my list for spaces: having to hover your mouse over the top left corner of a space and waiting until it shows the closing icon. And Safari deciding its better to switch to a space and open a window that was minimised there instead of just opening a new window in the space i'm currently in (even with the "switch to a space" setting turned off!) when 1 want to open a new tab.
If you hold command while you restore the window from the dock it will restore into the current space. I wish i knew how to make this the default. Getting whisked away to a random space is one of the most irritating issues. Like when you want a finder window for downloads and instead of a new window in the current space you get taken cross country to on thats already open.
Press Option to immediately show the close button
Thanks! Now I'm curious of all the places where there are still hidden Options key features that I haven't discovered yet. It's just everywhere, but so undiscoverable.
I have been dealing with the same issue and thought I was going crazy that the setting which purports to fix this exact behavior simply doesn’t work?
At least the setting does work in reducing the switching when you cmd-tab to an application with no open windows in the current space. But I think some of this annoying switching behaviour is application specific logic and they just didn't get it right with Safari, some other applications do get it right though.
For #1, holding the option key makes the x immediately appear on all of the spaces.
Hey! I built InstantSpaces (which you had linked in the footnotes) and am well aware of issues with the injection & patching. It works 90% of the time for me and was good enough for me to share. But there are cases where it bugs. And yes, Tahoe is a to-do.
I will hopefully soon have the time to try to make it more robust. Feel free to take a shot at it if you want!
Hey, author here, and cool project! I spent some time comparing Yabai's scripting addition to InstantSpaces' scripting addition. They seem to be doing the exact same thing, but Yabai works while InstantSpaces doesn't, and I eventually gave up trying to figure out why.
Regardless, I still prefer InstantSpaceSwitcher because its implementation is simpler and it doesn't require disabling SIP. If you can get it working, however, I can edit my blog post to say so!
Here's a script to install and configure, in case it's helpful for anyone's dotfiles: https://github.com/bfirsh/dotfiles/blob/48eff70daa754216eff9...
This is nice. Sounds like it wouldn't solve the slow animation when entering or leaving full screen mode though. I'm fed up enough with macOS's poor window management (among many other things) that I'm looking for MacBook alternatives.
The M5 chip is way ahead of Intel's latest, even Panther Lake. But the Snapdragon X2 Elite looks like a viable alternative. It's the only competitor with comparable single core performance, and it comes with 48 GB of extremely fast RAM for a reasonable price with great battery life. Unfortunately Linux support isn't really there yet, but hey M5 MacBooks don't support Linux well either.
if youre using a firefox based browser, slow fullscreen for media can be fixed by setting the full-screen-api.macos-native-full-screen flag to false in about:config
I'm still incredibly frustrated by Apple's Mission Control and Full Screen features. The old Expose and Spaces and windows-style maximise would be so much better.
I agree that I miss when spaces could be on a grid in Snow Leopard instead of only in a straight line, but what is wrong with Exposé? From my POV it works the same as it always has.
IIRC Expose is now called Mission Control (four finger swipe up on my system).
My problem with it is that it's useless if you got more than few windows open - the preview is just too small to actually see which window you are after (it's all padded for the looks). IMO if they actually used tiles, potentially grouped by app - it would be so much useful.
Yabai looks cool tho, but requires so much permissions and potentially disabling system integrity protection that IDK if it's a go for me.
I don't have a Snow Leopard Mac in front of me to compare, but as far as I can tell, four finger swipe works the same way it always has. It's hard to find targets if you have dozens of windows open, yes, but I don't remember old Exposé being any better in that regard. I think one or two macOS releases had some kind of "Mission Control UI" in the bottom half of the screen when you did the swipe, but that's gone now and the entire screen is used for the tiles.
Can you explain more about what regressed since the old Exposé? I'm just not seeing it.
[video]
just sharing for sh*ts n' giggles... inspired by this post and a previous annoyance i had around spaces in general... i just 'vibe coded' (don't start) this using codex this morning (built upon InstantSpaceSwitcher's UI)
https://www.jjcosgrove.com/assets/videos/spaced.mp4
basically:
- you can set custom names per space
- you can hotkey-navigate to each space/any space
- it has a visual indicator in menubar (active/vs inactive in case you use mission control)
- you can show a nice grid overlay (to click or arrow-nav to a space)
- it has unified shortcut/name management via UI (rather than needing a seperate util)
names are retained on restarts, spaces are synced if mission control creates any (as best as you can with mac's private apis).
for personal utilities like this, it works quite well and sometimes its good to just have 'fun'
oh and the 'jank' relates to how spaces works (i think), but can be removed/avoided by enabling 'reduce motion' which i think the original post mentions.
> Pay for a license for BetterTouchTool. Enable “Move Right Space (Without Animation)” and “Move Left Space (Without Animation)”.
I did not know BTT supported this until today!
You can just set up the trackpad 4-finger swipe actions globally: https://cleanshot.com/share/P0K1PGC1
Then in System Settings set "swipe between full-screen applications" to "off" in Trackpad settings under "more gestures" so that BTT's shortcut applies instead of the system-level one.
Works well. No extra software needed if you already have BTT, which is worth the money for me purely for "alt+drag a window from anywhere" style window movement. That setting is buried deep under BetterTouchTool Settings → Window Snapping & Moving → Moving & Resizing Modifier Keys: https://cleanshot.com/share/mnF9xBkW
Also great from the same developer BetterSnapTool. This is always the first software that I install on my Mac as it allows me to move windows around with keyboard shortcuts. There's many others doing that but I have a license already and only use these 5 key mappings.
I've set it up the following way: https://img.notmyhostna.me/8tck91QCL7DB9N8l3d3q
Nice, I use Raycast for this (with global shortcuts from Raycast settings): https://www.raycast.com/core-features/window-management
I tried both. BetterTouchTool does support the no-animation left/right space actions, but on my machine InstantSpaceSwitcher felt a bit snappier for actually moving between spaces, so I kept that for my keyboard shortcuts for previous/next space and direct jumps to a specific desktop. I still use BTT for Mission Control / spaces preview. So for me the final setup is: InstantSpaceSwitcher for fast space switching, BTT only where it still adds something.
Your blended setup makes sense.
I like that BTT lets you tune the swipe gesture sensitivity too (Settings → Trackpad → Swipes). I made it more sensitive (0.15) and swiping between Spaces feels very snappy.
that is weird, BTT's space switching should really be instant when used via keyboard shortcuts. (Developer of BTT here)
One advantage of BTT's current implementation is that it still allows you to move windows to the next/previous space while dragging them and simultaneously executing the "Move Left / Right a space" action. In that case there will be an animation but it will at least work.
Stop using MacOS spaces. Never full screen anything. Throw everything around with hotkeys using OSS rectangle. Use shortcat to automatically bring your cursor to anything on your screen and use enter to click and type.
You don’t get it
Spaces are not for fullscreen but for basically virtual desktops i3 linux style
Here is superior user experience:
1. Install moom. Its keyboard windows arrangement is second to none. Its two-step tiling is a killer. Ie caps-a to show a popup with all the shortcuts, then “a” letter for vertical 1/3 of the screen. Or s for middle 2/3. Or q for top left third — you can assign any letter for any portion of the screen.
2. Use option1-6 to switch between desktops
3. For example alt-4 is a desktop where you have all on one screen (suppose you have 6k xdr like i do): safari, mail, messages, telegram, hey email, reeder
alt-3 is your productivity desktop where you have things, calendar, basecamp, notes, ia writer
alt-1 and 2 is for your main work like rider ide or what have you
Alt-5 for your remote stuff like remote desktop, servers, what have you
—
So with this you have a mental model of where everything is always and instant switching to it. Want to see your todos and notes? Alt-3. Want to see your browser and messaging? Alt-4. You get it.
Moom is better than tiling manager for screens like 6k 32” xdr.
Otherwise tiling managers are perfectly fine. For instance on windows I use komorebi
This is similar to how I use Spaces. I haven't hotkeyed desktops, but each one is designated for a particular task or theme. The concept extends further with a secondary display, with the primary monitors' spaces being assigned "main task" duty while the secondary displays' spaces get "aux task" duty — so e.g. IDEs and browser windows immediately relevant to the task at hand go on a main monitor desktop while secondary display desktops are used for things like chat, music, and documentation.
This is a core part of my workflow and is one of the reasons why I would have a difficult time using Windows as my primary OS: its virtual desktop support is far too weak in comparison. It can't even switch desktops independently per-display.
Like I’ve said, on windows you have komorebi that does exactly that
This is exactly what I do -- but I have space split up by persona (Personal, work 1, work 2, Play), and then each space is managed with Moom. Love it.
You will still run into shit when one application instance is used in two spaces
Finder, chromes, etc. it will cause automatic switching.
Also, cmd-tab doesn’t have a filtered mode for the active space
Cmd-~ actually works better when using stage manager, because it goed through all active windows across all apps
In system settings for desktop and dock you may want to experiment with:
1. When switch into an application switch to a space with open Windows for the application.
2. Automatically rearrange space is based on most recent use.
I'm really confused - I downloaded Moom because of this comment, but can't find a feature to switch Spaces. Am I missing something?
Moom is not for switching spaces.
You can use the app in in this post for that.
—
Or if you want the animation, switching is built-in on macos
What you need to do:
1. Create 6 spaces. This is a crucial first step.
2. Go to system settings — keyboard — keyboard shortcuts… — mission control — expand mission control — manually set “switch to desktop 1” to alt-1; rinse-repeat till 6.
3. Go to system settings — desktop and dock — disable “automatically rearrange spaces based on most recent use”
I tried to live like this for a while but found I could not separate applications into spaces
I would try setting up a space for, eg, all my communication stuff. But suddenly I’d need to drag-and-drop an image from my image editor into Slack. Or I’d want to drag a graphic from Safari into Final Cut Pro. Or any number of cross-workspace operations
How do you handle this with spaces? Do you initiate the drag, tap the space hot key, then drop?
> Do you initiate the drag, tap the space hot key, then drop?
Yes.
That’s why with trackpads I enable three fingers for dragging, so I don’t need to press anything
—
Also if you drag your file and hold on app’s icon in dock, it will show that app
You don't need to full screen anything to use macOS spaces for O(1) app-switching, instead of O(N) by pressing Cmd+Tab repeatedly to linearly scan your list of applications.
The rule is simple: one app per space, and Ctrl+{1,2,3…} switches to the corresponding space in O(1). For me space 1 is an IDE + terminal, 2 browser, 3 messaging, 4 bug tracker, 5–6 AI agents etc. It was fast to learn: get a DM, press ^3; to file a bug, press ^4 etc. I use this with the Rectangle app for window tiling, and this combination works great for me; I rarely ever use Cmd+Tab.
I also have a personal menubar app that's very similar to SpaceName, to quickly get the current ID when multiple spaces have a similar layout (e.g. terminal takes the left half, a browser the right half).
Similar I just use RayCast Hotkeys to bring mostly full-sized apps of my choice to the forefront and not worry about much. I'm also just optimizing around a small single screen setup these days for focusing on stuff.
option-cmd-o BOOM, outlook opt-cmd-g Bang, Ghostty opt-cmd-v POW, VSCode opt-cmd-s Boff, Slack etc etc...
ALSO: I learned this from some prior thread on something similar.
How does that compare to using Alt Tab? And I forget if you have to suffer through any animation at all when you do it that way
No animations for quickly switching to displaying apps in the foreground
I do use alt-tab, to switch between the multiple windows of the same app. (Something's happened with my AltTab config, not sure if it's due to corp background system software or a Tahoe update, but I no longer see the mini screen shots of the different window states.)
Yeah well, I'd like to see your face when you find out that each time you fire shortcat it makes one HTTP request, yikes.
By way of experience report: I've been using this app for a week or so on my daily driver and it's been great.
Is there a tool which eliminates the animation, also when switching between apps with cmd+tab? I almost never use ctrl+→, I just know what application I want to switch to.
All these apps that I tried only fix the ctrl+→, but not application switching
I've been using option 1 (reduced motion) since I got my first MacBook years ago. Trying to fix the browser issue you mentioned is how I discovered Chrome flags. I now `open` chrome with the `--force-prefers-no-reduced-motion` flag.
This looks great though, will give it a go!
Slightly off topic, how does one learn to start customizing their mac like this - 1 simple example for any customizing. Thanks!
I love using (tiling) window managers, and one of the most important requirements for me is having a key binding for switching to the last active workspace. The proposed solution in the blog doesn't achieve this. I use Aerospace on macOS right now and think it's the best solution available.
I generally have fixed workspaces for different things: first for a browser, second for a code editor, third for a terminal, and so on. If I want to switch between the browser and code editor, I can do that with a single key binding, usually Alt+Tab. The same binding lets me switch between the code editor and terminal just as easily.
When you have something like 10 different workspaces, not having this key binding becomes annoying. If you need to alternate between windows on workspace one and workspace eight, you're stuck using both hands to press Control+1 and then Control+8. But with a last-active-workspace key binding, you can just Alt+Tab between them. This is the killer feature I always need.
Actually, that was just recently merged into InstantSpaceSwitcher!
You can use yabai without any of the tiling functionality (set the default mode to "float"), I have actually been using it with BTT to fix this exact problem. Thanks for letting me know that a fix has been added directly to BTT though!
Amazing how much effort is needed from a billion dollar company to make a feature present in my 1kLOC window manager.
Awesome! Is there a working way to do the same for Windows virtual desktops? I remember I used to do it with ViVeTool [0], but Microsoft removed the feature flag at some point.
[0] https://github.com/thebookisclosed/ViVe
Turn off "Animation Effects" in Settings and it will be instantaneous.
And VsCode will not display dark mode correctly.
Oh that's a surprising interaction. I use dark mode themes, is there something I haven't noticed?
Specific extension I use that became unusable (black text on black). However, if you look closely, you’ll see a lot of differences in look and feel that don’t seem “animation” related.
Pretty sure that's from another setting in the same panel
⬆ Huge upvote for this find as I've been looking for a way to do this recently.
I tried the yabai + skhd recently, but I didn't like that I had to disable System Integrity Protection.
This is one of those classic examples of software feeling ‘heavy’ for reasons that have nothing to do with hardware limits. People often talk about performance in terms of benchmarks, but interface latency on routine actions probably matters more to happiness than a lot of headline metrics. Nice work.
I'm new to MacOS, is the thing they're refering to when you swipe left/right with three fingers to switch between different fullscreen apps / desktops? I kinda like the animation, after decades of windows I'm still impressed when switching between programs isn't stuttery.
Yes, and the app they're recommending emulates that swipe, but really really fast, so it looks instant. And you don't have to swipe 8 times to go from #1 to #9.
Now do it 100x every day and see if it gets old :)
> I'm still impressed when switching between programs isn't stuttery
It is stuttery when you use the magic touchpad via Bluetooth, same applies to the cursor. It's very noticeable with slow movements.
It get annoying after a while, especially if you're swiping a lot, such as having an IDE and test app / Simulator in one space and a browser in another.
it just blends into the background for me personally, i found it annoying a little when i swapped from multiple monitors to one
The animation has bugged me for years! Thanks to the blog post, I found out that BetterTouchTool - which I am already using - has this feature since a couple of versions and now I could enable it. Wasn't aware of that, sometimes the solution is so easy.
This looks interesting and I will give it a try. I agree that the space-switching animation is painful.
I don't however think that this will solve spaces on MacOS, for the simple reason that opening new instances of apps is inconsistent and often doesn't behave how you'd expect it to once one more than one space is involved (in my experience, anecdotal).
I've come to peace with the fact that I will never be able to simultaneously experience the productivity of i3 and the necessary evil of MS Office/Illustrator on the same OS. The most important factor in my work is who I work with (rather than what I work with) so I'll remain on the latter train for now.
Why not use a macOS i3-like window manager like yabai or komorebi (paid)?
This is addressed in the post.
> There are only two problems: for one, yabai does this by binary patching a part of the operating system. This is only possible by disabling System Integrity Protection at your own discretion. For the second, installing yabai forces you to learn and use it as your tiling window manager1. I personally use PaperWM.spoon as my window manager. Both of which are incompatible when installed together.
I was referring to their last line ("I will never be able to simultaneously experience the productivity of i3 and the necessary evil of MS Office/Illustrator on the same OS") not the linked article because the parent doesn't "think that this will solve spaces on MacOS" therefore I gave a suggestion that would.
Secondly I don't find anything that bad about why the article's author doesn't want to use yabai, I generally disable SIP anyway (because I want to install anything I want without restriction, even edit system files because that's necessary in some cases, as yabai does); and they just don't want to learn a new WM which is fine for them but isn't a valid reason for everyone to not use yabai.
You can turn tiling off
`yabai -m rule --add app=".*" manage=off`
> for the simple reason that opening new instances of apps is inconsistent and often doesn't behave how you'd expect it to once one more than one space is involved
System Settings > Desktop & Dock "Automatically rearrange Spaces based on most recent use". This is the critical part.
And then right click App on the Dock, Assign to this Dock.
With these two things, Spaces becomes predictable and repeatable.
I struggled with the same annoyances for years. Then I installed TotalSpaces... but I think that stopped working. Liquid Ass destroyed my iphone and apple watch and I was able, thank god, to stop it from infecting my MacBook. At the cost of the newest updates.
Apple. You suck.
I much prefer gnome for multiple desktop switching and app switching in general. Seeing this article I know there are many on macos who agree!
I'm not a big space-switcher on OSX, mostly because each of my applications come with spaces (browser, IDE, etc), but unskippable UI animations are an instant roadblock.
Looks like HN hug of death killed your comments section though:
> An error occurred: API rate limit already exceeded for installation ID 65180581.
Synthesizing a really fast swipe to remove the transition is absolutely genius.
Nice. I wrote a little menubar app and Space switching has been a thorn in my side, including going down the "Yabai integration" route. Will have to take a look at this and see if I can borrow some ideas!
Shameless plug: https://github.com/gechr/WhichSpace
I didn't check if it makes any difference, but I see hardly any animation with “Reduce motion” enabled.
The article mentions this has the unfortunate side effect of also setting prefers-reduced-motion in browsers, but that can be mitigated by changing the browser settings (Firefox: about:config: ui.prefersReducedMotion. 0 (enable) or 1 (disable)).
Kudos for the crazy hack (fast swipe). I'm in the aerospace crowd...
> Apple has continuously ignored requests
Apple being completely oblivious to what normal people actually need or want is like bad weather- can’t do anything about it (Apple is so big and unregulated), just try not to forget to take an umbrella.
They use a clean work Mac for just work.
It’s like having a dedicated space for a few apps and folders. No wonder they don’t care
Interesting. It doesn't bother me at all, but the animation on Windows 11 to switch spaces feels very unsmooth to me and drives me crazy. Here I was wishing it was like the one on macOS.
You can get instant switching in Windows 11 natively. I forget the exact setting but mine is instant. ctrl+super+right is just a few milliseconds.
The thing that most bothers me is that there seems to not exist a good solution for spaces that allows a grid set of spaces, like the one you can configure on Linux Gnome DE. That thing was so useful...
I still miss the grid spaces that got removed in Lion.
I can't figure out how to install this. After doing ./build.sh what do I do next??
They just released a binary so no more source compilation is needed
https://github.com/jurplel/InstantSpaceSwitcher/releases/lat...
Honestly, this animation in one of the best things about spaces in macOS. I use the four finger gesture to switch spaces all the time and it make the spaces feature so much more natural than all other window managers I’ve used before
Agreed, that’s one of the things I miss most when using a Windows machine at work. Something about the animation makes my workspace feel bigger in a way that the Windows multiple desktop feature is just missing.
Technically Windows does have an animation when switching desktops with the trackpad, but it’s so jittery that it’s annoying. And the desktop image takes seconds to update, and only updates after completing the animation. To me this is one of those “death by 1000 missing bits of attention to detail” problems that plagues Microsoft/Windows.
Same but it’s certainly too slow.
Can you use this with the trackpad gesture though? That's the only thing that has me locked in, the muscle memory of trackpad is hard to beat for me and unfortunately I rather suffer through the animation then move to the keyboard
I'm in the same boat. The thing is that I like the first half of the animation when it matches the speed to the keyboard gesture. The second half of the animation after you let go, the speed suddenly slows. It feels like an attempt to skeumorphically adapt those drawers you can't slam, that have an air cushion that blunts the momentum and have magnets to draw it the last few millimeters shut.
If I could just "slam" back and forth with the three finger gesture I would be happy. Nothing is going to break from slamming my workspace side to side, I don't need to be protected. Those last milliseconds of the animation, when keypresses still don't point to the target space, are really annoying. I would like to just remove the "air cushion"/modify the bezier defining it. I get how it's supposed to feel 'high end' but it's nonsensical in context and just gets in my way, even if it's in a tiny way.
Check out https://github.com/joshuarli/iss !
Thank you so much. This is finally the perfect tool. I am using a 160hz monitor and the switching times were driving me crazy. (The higher the refresh rate, the longer the animation takes...)
The giga brain move is to stop using MacOS spaces. Never full screen anything. Use an OSS window management tool like `rectangle` (similar to deprecated `spectacles`).
Use shortcat to bring your cursor to any element with just typing.
does Aerospace still require disabling SIP? kind of needed as my mac is a work laptop.
I would appreciate if anyone has i3/sway keybindings that work alongside this, otherwise I might just vibecode something in Swift. I know that there is some window management keybinds within System Settings, maybe I need to look into that also, but I don't think they'll behave the way I want them to
No it does not require disbaling SIP and it is inspired by i3 though I have never used i3 and it has customizable keybindings , you can also use karabiner to bind keys for it.
I use it without sip disabled + kanata. I think aerospace has an i3 preset config
I don't use Spaces at all, probably in part because of the speed. I can't bring myself to run an application all the time to solve this, when it should just be a variable somewhere that needs to change.
This is the kind of thing that looks simple until you're three layers deep in edge cases.
I think it was iOS 9 that had some glitch where the animations were completely disabled and it was a really awesome experience to click an app and have it instantly open with zero animations.
There used to be a commanline switch that if you used command left/right to switch it was almost instant. I'm not sure if thats still a thing
Genuine question - why do people even use spaces? Why is it better than just CMD+Tab or CMD+Tilde until you arrive at the window you want?
I can organize related windows by task, so if I have two things going on which both involve say a Finder window, a Safari window, and some other assorted things, I can switch between tasks as a group with one gesture instead of cmd-tab which will pull up both Safari windows or both Finder windows, and then maybe needing to cmd=` to switch to the correct one.
When I'm in the appropriate space with only those related windows, the exposé gestures are also much more usable than when everything is jumbled together.
Because it makes you have to think before moving. If I am on Chrome and want to go to my code editor, I have to press CMD+Tab, see what position the code editor is in and press CMD+Tab x times to go there.
If I uses spaces, I know exactly where my editor is, where my browser is, it is one key press away and it is always there. I use aerospace and I divide my spaces using Alt+ the qwerty keys. Q=chrome W=code editor E&R=programs open for what I am working aka Postman or Obsidian and T=MS Teams.
My dock on MacOS is always hidden because I don't need it and now I have more screen realestate.
For me, I use spaces constantly to help me organise/compartmentalise what I’m doing. It lets you group related windows, where command tab only brings you one window at a time.
One example would be if I’m working on a document that draws on others I have written. Put all three in a space and that piece of work is nicely organised.
When I have all my windows in one space I find it messy and stressful and it’s harder to find what I want.
Overall spaces are more compatible with the way I think than command tab.
I personally don't, even when I'm doing heavy multitasking on a 13" laptop. Only exception is if something needs to be full-screen.
It can make sense if you're keeping a lot of non-full-size windows on a larger screen and working on separate tasks that are in the same application, meaning cmd-tab won't help.
Awesome. Thank you!
Thank you so much for sharing!!
This has bothered me ever since I switched to a mac from i3wm.
I wish you and your loved ones all the best <3
Just installed and I have to say, works exactly as promised. This is a huge quality of life upgrade, thank you for sharing it Paul.
Apparently the "natural scrolling" option also reverses the swipe gestures for space switching, haha
It doesn't work macbook pro(Intel Sonoma 14.4.1), any thoughts? app icon is a forbidden icon.
Works on my Intel mac running Sonoma 14.8.2. I use Omakub on my Linux machine and missed this when on my mac.
I wonder how this compares to Aerospace, which I use daily but ultimately has felt a bit janky and slow
Nice hack! Tldr: ‘instant’ space switching is achieved by simulating a trackpad swipe with insane velocity. Lol!
> it works by simulating a trackpad swipe with a large amount of velocity
Damn, that's rather clever.
I'm a little afraid of the failure modes, frankly. Clever, but that seems like it would b likely to exercise some under-tested timing situations. I'm not familiar with that API, so take the hunch with a grain of salt.
It's also hilarious that it works this way
I'm surprised others didn't pick it up sooner https://news.ycombinator.com/item?id=36938663
Not a space user, command+tab solve most of my problem. But will give it a try.
always the same, no features, no freedom and stealing the best ideas from small developers -apple
I never run more than one space and instead switch between windows with the app Alt Tab
I do both, Alt-Tab works well for spaces as well since it can discriminate which window is in which space.
Yes. Alt-tab makes MacOS actually usable
What do people use for Windows-like window management on macos? I tried a bunch of them and I'm not a fan of any of them.
I actively dislike the notion of spaces.
Rectangle with Alt-Tab (both open source), the latter is especially useful as I hate macOS' application- rather than window-level switching, Alt-Tab returns it to Windows-like behavior.
I'm a bit reluctant to draw attention to my solution since it was written to scratch my own itch and I have only had a handful of users other than myself. Last year I was seriously thinking about making linux my dev choice because coming back to a machine that had slept left me with several minutes of reorganizing the windows that had jumped to various spaces as the multiple monitors were recognized. Aerospace could put them consistently somewhere but it couldn't distinguish windows of same app. I built WinPin for that use case but then kept going to solve other things that have made using a Mac with multiple screens and dozens of windows that need to be organized around my workflows easier. I built in support for workspaces but really haven't used that myself since spaces were more of a necessary evil to organize windows rather than useful in themselves. Interestingly to make WinPin truly useful you have to turn off spaces because I can't figure out a way using what Apple gives me to determine which space a window is in.
If anyone would like to try the app out (https://winpin.app) I'm pretty confident that downloads and update flow are working and it has been running without issue for me on multiple macs for the last 4 months. There are a lot of edge cases I'm sure I haven't seen yet, but it has truly changed my workflow and I'm interested to see what others think. Please don't try to purchase a key, it is fully functional without one. I'm still working on that with Polar.sh and want to make sure my t's are crossed and i's are dotted. Gotta be one of the weirder posts to HN since I actively do not want to sell you something right now.
I use https://rectangleapp.com/ and enjoy it. I have shortcuts to move windows to the left/right half of the screen, and cycle between monitors. This, combined with native cmd+tab and cmd+` is enough for me.
This doesn't answer your question, but Aerospace (tiling WM) has been good for me to not use spaces. I don't mind spaces in theory, but the slow animation, for whatever reason, just really irks me.
Contexts app is perfect for win-like alt-tabbing https://contexts.co/
My Cmd-TAB frustration is I'm usually moving the mouse while I press it, causing the mouse to select some unwanted app. It doesn't help that the row of apps forms a solid bar across the center of my display.
Wish I could ignore mouse movement when the app switcher is displayed.
Aerospace with opt+key to go to that space, cmd+opt+key to send a window to that space, then just make a mental map of where everything is. I use mnemonics like always putting discord on workspace "D" so it becomes quite fast
What do people use for Windows-like window management on macos? I tried a bunch of them and I'm not a fan of any of them.
I actively dislike the notion of spaces.
What do people assume Spaces is a Windows thing? It was on Unix systems decades ago.
I use the r+cmd app for deterministic app switching.
Caps mapped to right command.
Karabiner to map dual-cmd+jkl; to mapped vertical slice so j is left quarter, j+k is left side, etc.
dual-cmd+i moves windows between screens and dual-cmd+u rotates current window through full, top half, bottom half.
The whole thing is deterministic and super fast and gives me more permutations than I'll ever need.
Every [*] macOS user uses Rectangle.app — https://rectangleapp.com
The ones who don't use it is because they don’t know it exists.
Or they are still using the (deprecated) Spectacle.app — https://github.com/eczarny/spectacle
[*] if you wonder why I say “every user” even though it’s obviously not true is because everyone loves hyperbole in this website.
I can prove everyone doesn't love hyberbole because I have found a counterexample, but I cannot prove everyone doesn't use Rectangle.app.
I was never bothered by the animations, but was livid when they redid the desktop thumbnails, and offered no way to always show the preview by default. You have to mouse up to them to get the previews.
It didn’t seem to bother the rest of the Mac world, but I used to organize my desktops in a chaotic way that worked great for me, and the ability to see the preview thumbnails as soon as I popped into mission control or whatever they call it enabled me to quickly go where I wanted to after a quick glance. I used to rename entire desktops, too.
The whole thing instantly became worse for me when they took away my ability to name your own virtual desktops, and added the extra speed bump of making me mouse up to trigger the previews. I’m still bitter about it.
I thought I was the only one that noticed this and it was driving me insane. Can’t believe the experience is so sluggish, makes me miss KDE so much which is ridiculous.
Christmas has come early! Thank you for sharing this
This changed my life
Great one. Thank you for sharing this.
I have a vestibular disorder that makes this animation extremely disorienting and it's been so discouraging that apple won't do anything about it. I just stopped using the feature all together! Honestly it's an accessibility issue and apple should be ashamed... Maybe even liable for not doing anything.
BetterTouchTool is $25 for a lifetime license with upgrades.
Worth it! Easily one of the first things I install on a new mac. I have three finger swipe left/right to switch between tabs, three finger swipe down to close tabs (chrome, vs code, xcode, finder, anything that has tabs), and four finger swipe to go between spaces without animation.
And it's for me an absolutely indispensable app which I'd happily pay more for. The UI is a bit weird, but it's fantastic how many little tweaks it enables. A Mac without it feels clunky to me.
how can I do this with it?
It says it in the post: there’s an action you can map to keys for “move right a space (no animation)”.
this was SO annoying. thank you.
Truly baffling how apple haven't done this before
THANK YOU!!!!
Can’t say that the sliding animation has ever been the bottleneck to my productivity.
I've seen this sentiment often. For example, in a discussion about slow nvm load times: "Does adding 0.5s delay to opening your terminal really affect your productivity?"
I agree that these small things are not bottlenecks to my productivity. I can work just fine despite them. However there is some intangible effect they have on my mindset when I'm working. The more "snappy" my computer feels, the easier it is to enter a sort of flow state. Small bits of friction here and there add up.
Single monitor workflows — which are more ergonomic — make switching spaces a necessity. It might not impact productivity but it is annoying as hell switching around spaces a lot
why would you ever suggest disabling sip to "power users" seems bananas in this day and age.
why would you post anything that has to disable sip... seems silly in this day and age.
Wobbly Windows in KDE is the only acceptable animation.
You know Apple lost it and have become what Jobs most hated when the instructions to suppress an obvious UX flaw in macOS read like a registry tweaking hack for some atrocious UX in Windows, ca 2005.
I eventually became so frustrated with spaces in OSX, that I essentially try to avoid using them in macOS these days. Seriously, all I want is a way to move windows from one space to another via keybindings. I am not asking for much. In fact, IIRC, I think Snow Leopard had this feature. I know there were various solutions that cropped up, and even currently there are a few hacks. It just... such bullshit that it's not built in.
If one has a disability that hinders his or her ability to use a mouse/trackpad, then I strongly suspect there is no way for such a person to use spaces on macOS well. Though, it seems Apple could not care less.
Outstanding!
I installed Debian stable + i3 + x11 on a desktop today - what a breath of fresh air (not that I'm new to Linux) compared to MacOS. No bloat. No animations. No lag. A perfect tiling WM.
No Secure Boot, no TPM, no SIP, no phoning home to the mothership to check if I'm allowed to launch an app, no spyware, no telemetry, no update nags, no trying to trick me into upgrading to the next major version.
I tried Sway & Wayland but IntelliJ freaked out so I went to x11
Also Nouveau seems pretty damn good these days.
KeepassXC works much better on Linux which is nice.
I'm keeping my M4 Macbook Air around for a while to play with local LLMs but it's not exactly the best for that, so I'll think it'll be on eBay not before long, because MacOS is getting more and more annoying...
This is beyond stupid for macbook using trackpad gestures.
I can understand for mouse/kbd input though.
Wow, works great.
I used to use yabai for this but I can't disable SIP anymore on a work laptop.
Also, stuff like this is why I really hate macOS sometimes.
meh, i like the animation. I normally use it with the trackpad so the swiping back and forth makes it feel more natural if there's animation.
A lifetime license for BetterTouchTool with ALL its features is $25. The time the author spent on this is well over that amount.
I’ve used TotalSpaces for this in the past, though Apple has essentially ruined the ability to make these tools successful with their SIP bullshit
Curious — what was the hardest part to get right here? Was it performance or handling edge cases?
I use spaces constantly, and I’ve never thought about the animation - I don’t think I’d ever noticed it to be honest. So it’s really interesting to read all the comments here about how frustrated people are with it. This is not a defence of it just genuine interest - I bet there are totally different parts of the OS that bother me that don’t bother others also.
Try it on an ultrawide monitor. For me it's literally nauseating to leave it turned on, as in, it actively triggers motion sickness with a monitor that width.
Imagine being so intelligent to do so many things with a skill set, yet choosing to spend so much time on an animation that can be measured in microseconds. The proportions are staggering. Truly bizarre to me how something I’ve never even noticed while using the feature could drive a person to this level of obsession.
I had a similar stance on this until I went through macOS -> linux with i3 -> back to macOS transition. i3 window and workspace operations on a maxed-out Dell XPS were truly instantaneous, and after moving back to macOS, there is no way to unsee the slugishness of the native window operations.
I'm using Aerospace at the moment, and it gets pretty close, but still isn't as nice as i3.