Show HN: I built a tool to solve window management

14 atommachinist 23 7/8/2025, 2:01:42 PM aboveaverageuser.com ↗
Hello, my name is Andrew. I'm an indie developer and I'm excited to release Smart Switcher for Windows 10/11. I'm looking for feedback on the overall project and the application itself.

I built this because I couldn't find a window switching/management solution that worked for me. I tried all kinds of different solutions, virtual desktop extensions, obscure GUI window managers, you name it. Overtime I realized I wanted something that prioritizes one window at a time, is keyboard driven with has minimal if no GUI elements. I figured this part out, but knew something was missing. I had my eureka moment when I realized I could combine my switching method with a prediction algorithm. This led to the creation of Smart Switcher.

Smart Switcher is a data driven window switcher aimed at improving the overall window switching experience. It logs data on your windows switching, then a prediction algorithm analyzes this data and uses it to predict which window you would want to switch to next. When you need to switch windows, you press the switch shortcut to switch to the next predicted window. If this isn't the window you wanted, press the override shortcut to switch to the next most likely window. You can press the override shortcut as many times as needed until you arrive at your desired window.

It’s a paid app with a demo and trial version. There is a introductory discount and some additional discount tiers for early adopters.

Any feedback is appreciated! Thanks!

Comments (23)

deviation · 2h ago
Neat idea. I'm sure this will solve some friction for the neuroscientists/mathematicians out there with ~20+ windows open.

Personally (as someone with ADHD), this would just relentlessly grind my gears. My thoughts are unpredictable by nature and so I value the "reliability" of knowing my chrome is two alt+tabs away, etc.

If an algorithm started messing with this and changing throughout the day... Damn, I'd go crazy.

No comments yet

jerryjappinen · 1h ago
Without having tried this, I'd say the problem with a predictive algorithm is that it is (ironically) impossible for the user to predict what will happen.

So after switching, they will need a short moment to reorient: understand where they were taken, check if it matches where they wanted to go, and then either switch again or stop the switching process to resume work. In UX design, it's better if you can complete a longer process without having to halt and reorient many times in the process (like opening a menu that was hidden and wait for a loading animation to complete, until you can actually read the menu items are).

If it's impossible to keep a mental model of where you are in the system, and how you can move to another specific window, then actually EVERY window switch requires much more effort and conscious thought.

I think windowing systems, virtual desktops, spotlights, stage managers, exposés, mission controls, are all too complicated... I don't know what the solution is, and I think it's great that people are working on novel solutions. But I do know I want to easily switch between 2-4 windows without the order randomly changing.

thejohnconway · 1h ago
I have a very similar frustration with the complexity here, and found that scrolling tiled window managers (like PaperWM, Niri, etc.) might actually be the answer. All your windows are in a line, press the shortcut until you hit focus the one you want. Reorder with a shortcut or with a mouse.

The main problem with them is system support, they are buggy when tacked on top of a desktop OS (PaperWM), or require a pretty finicky custom setup (Niri).

medwards666 · 1h ago
This! I actually kinda miss the Win7 enhanced switcher (I actually kinda miss the whole Win7 Aero desktop, but I digress) ... Win-Tab bringing up a scrollable stack of the actual windows you have open and being able to either directly select the one you want or just keep Win-Tabbing through them. The Win10 tiled view is similar, but lacks the charm somehow...
observationist · 1h ago
Sometimes I want to switch between multiple windows quickly, or even toggle between them. Having two keys - alt+tab - allows me to enter the "window switching" state by pressing alt, while tab increments the selection, and shift+tab decrements (all while holding alt down). I leave switching state when I release alt.

Alt+tab is an optimal controller.

Maybe operating on the order of items in the queue, and use your prediction to sort windows, allowing faster selection? Even that disrupts sense of place - I know what applications I have open and where they are, and if I'm using alt+tab over 5 or more, I know the order in which I've opened them, and "where" I need to go to navigate to them.

There are second and third order impacts to changing interface behaviors, so the superficial benefit you might gain will be lost by creating friction at different levels.

A single key is insufficient for granular control, and no AI widget short of human level AI is going to capture the edge cases, which will create friction, at which point I will aggressively remove the offending piece of software.

I'd go back to the drawing board and work on a more complex model of window switching and all the ways in which people use alt+tab, and see if there's a use case for your idea at a different level. As it is, for me, it would interfere with a reliable and predictable interface, and I would be very unhappy.

craftkiller · 1h ago
> Alt+tab is an optimal controller.

Having to iterate through your windows is not optimal. I use sway, with windows divided across workspaces. So if I want to switch to my web browser I hit super+1. If I want to switch to my code editor I hit super+2. If I want to switch to my terminal(s) I hit super+3. I use 4 through 0 for other random windows (for example, I usually launch games or videos on 0. If I'm working in two code bases I generally put the editor and terminal for the 2nd code base on 4 and 5).

What takes you O(n) takes me only O(1).

jimbobimbo · 1h ago
Standard out-of-the-box Windows behavior: quick Alt-Tab press switches between last two windows; pinned apps on taskbar are switched with Win-1..9 shortcuts.
voidUpdate · 1h ago
press alt, tap tab, click the window you want
__MatrixMan__ · 1h ago
If you're going to go all the way to the mouse, you could just... click the window you want.
__MatrixMan__ · 1h ago
I don't understand why people like to navigate their windows temporally.

Super+h/j/k/l (left, down, up, right) to move focus spatially feels much more natural, given that you can know at a glance which window is to the left of yours but they typically give no indication about whether a window is the 6th most recently touched or the 7th...

jmercouris · 2h ago
Cool idea, what model does it use to predict my next window?
ethan_smith · 1h ago
Would be interesting to know if it's using a Markov chain, frequency analysis, or some more complex ML approach for the prediction.
atommachinist · 36m ago
The algorithm started off by using one of those more simple methods and has evolved a lot since then. I'm exploring a few different directions now. It's difficult to say what will be the best direction to take it in until I have some more data to see what's working. I want to make something that works well for a lot of different types of workflows.
thyristan · 2h ago
LRU i guess.
ivanjermakov · 2h ago
I know what window I want to switch to, I don't need "intelligence" to predict it.

One way to implement this is to use window manager with one workspace per window (or multiple related windows) and use a single hotkey to switch to it. Very muscle memory efficient and takes no confirmation delay.

quchen · 1h ago
That's pretty much what I do! 3x3 virtual desktops, Win+(qwe,asd,yxc) switches to one just like the keys are laid out on my (qwertz) keyboard.

Top middle is browser. Bottom left is everything chat and communication. Center left is the editor. Whatever is out of place is mercilessly closed or moved if I'm feeling generous.

atommachinist · 1h ago
That's a decent approach to window management as well. I still use virtual desktops for windows that I want to have open but don't need to switch to often. The reason I build Smart Switcher is I wanted something that works well for managing a single virtual desktop and only uses two keys for the shortcuts. By default it overrides Alt + Tab.
BeetleB · 1h ago
Indeed. When I read this, I thought: "Doesn't he know about virtual workspaces?"

I also use a tiling WM (awesomeWM). I tend to keep one window per workspace, and then merely select multiple workspaces if I need to see multiple windows in tandem.

For my work Windows laptop, I've installed a virtual workspace manager.

craftkiller · 2h ago
> I wanted something that prioritizes one window at a time, is keyboard driven with has minimal if no GUI elements.

Sounds like tiling window managers like sway or i3. Those don't have any sort of predictive switching but otherwise:

  - My window management is done via keybindings
  - The status bar is completely optional (personally I use it but there is no *need* to use it)
  - I set `hide_edge_borders smart_no_gaps` so if I only have 1 window open in a workspace, it doesn't have any border at all. No titlebar, no close/minimize/maximize buttons, just the window content.
atommachinist · 1h ago
Tiling window managers are great and I admit they gave me some inspiration for this project. I just don't find myself needing to have windows be split screen very often, at least not more then two. The one exception to this is terminals which I usually keep in a separate virtual desktop but besides that I would rather have the window I'm using be full screen.
IceDane · 1h ago
I think 90% of peoples issues with window management can be solved by using workspaces intelligently. I won't prescribe a specific method, but I personally keep certain things on certain workspaces. Browser on 1, dev on 2 and 3, chat on 4, music on 5, misc on others. I rarely need to use more than 5. And then I have bindings to go straight to these workspaces(mod-number keys).

My personal hot take is also that most people who think they really need another monitor are just addressing these symptoms because they're exhausted by alt-tabbing through 15 windows. They would be more productive on a single screen with a nice workspace configuration, though there are of course plenty of good reasons to want multiple monitors.

mook · 1h ago
It would be good to mention in the blurb here early on that it's for Windows. I kept trying to figure it out from the text here and failing…
dang · 5m ago
We've added a mention of that to the text above. Thanks!