We’ll continuously test and review the best apps for the year of 2023, and update in this post.

Stage Manager

Stage Manager is the official built-in feature newly added in the latest macOS 13.

As a full-fledged technologist, I spend 90% of my time at work with computers. Of course, like most people, I often need to advance multiple projects or tasks in parallel. Although I do a good job of file management – my computer desktop is not filled with all kinds of files – I still can’t escape the situation where I have a lot of windows open at work; I need to jump between them repeatedly when using them until I finally get lost in them.

When iPadOS announced the Stage Manager feature at WWDC this year, many people were excited about this feature on iPadOS, although it was not well received in the official version. But when this feature appeared on macOS, more people expressed their dismay, not only because there are many better solutions on the desktop, but also because Stage Manager seems to be customized for iPad multitasking, and it looks particularly incongruous on macOS.

However, I’m not going to do much analysis or discussion of the idea of human-computer interaction beyond Stage Manager on macOS in this article. This article is just a summary and sharing of my personal experience in using Stage Manager on macOS in the last two months.

More and more windows are often a normal thing, because desktop systems naturally allow for a very large number of windows to be opened and for users to interact with them, and both macOS and Windows themselves have a very long history of development, and human-computer interaction is something that is constantly evolving and developing.

In the case of the software window, a mundane system component, it is actually about three separate but interdependent concepts in the operating system system:

  • Program
  • Window
  • Text

A program can open multiple windows, each of which can open one or more copies of a document. The most typical is the browser in everyday life, which can open any number of windows, each of which can open a different web page tab, working independently without interference.

But in the last century, when computer processor performance was relatively weak, it was not easy to do this. We can simply take an example, a program program open N windows does not mean that the program needs to be loaded N times? If so, the first Macintosh only had 128KB of memory, so if it was loaded 10 times, would there be enough memory left for the system or other programs?

The answer is no. In those days, even if each program was loaded only once, there was not enough memory and computing power to allow multiple “visible” foreground programs at the same time.

The first is that each program will only be opened once, and only the foreground program can interact with it. The most typical place is the global menu bar that clearly tells the user the current working status; the second is that the user can open multiple windows of a program to try to stay in one application, thus reducing the time needed to reopen and switch programs.

With the improvement of processor and memory, the above “regulations” part has a better solution, such as: even if not in the foreground program windows can still scroll, Dock will show through the indicator that the current a program has been in the open state, but the underlying logic remains the same.

However, as early as the late 1980s, macOS already had enough memory to open multiple programs, but for backward compatibility, the previously established “global menu bar explicitly tells the user the current state of work” could not be changed, which naturally led to closing all windows of a program and leaving it open. This led to the multi-window logic of modern macOS: windows are tied to documents, and all windows are opened by only one application. This logic is often referred to as the Multi-Document Interface (MDI).

In the 1990s Windows pioneered the allocation and scheduling of system resources by the system, so that Windows could actively shift resources from more resource-hungry programs to more resource-intensive ones. The most significant difference between SDI and MDI is that each window can be opened once for the program itself, and a window often corresponds to only one document, in short each window is a program and a corresponding document. The most typical SDI software is the Office family.

Of course, macOS and Windows are not as big as they were in the early days of managing programs, windows, and documents, and the entire Adobe family, for example, follows the same logic as SDI, both on macOS and Windows. MDI and SDI are not inherently superior or inferior, but rather the most important thing is to use them in a way that fits the scenario and logic of the application itself.

However, it is undeniable that the design philosophy behind the GUI still influences the underlying logic of the system, such as multi-window management and window tabbing.

But as I’m sure you’ve noticed, both MDI and SDI can’t avoid the need to open a lot of windows when working in a complicated way. There are two ways to solve the problem of a large number of windows when working, one is to tab the windows like a browser, which is often called Tabbed Document Interface (TDI); the other way is to do window management.

It’s impossible to expect all programs to support TDI, and naturally we can’t continue to expect TDI-like window management mechanisms to be introduced at the system level, otherwise Windows’ Sets feature wouldn’t have been cut, but the work needs to continue to move forward.

But from what I’ve found, the cluttered interface can essentially be attributed to the lack of screen display area, the lack of screen that causes the open windows to not be fully tiled – windows will cascade over each other, and thus you need to repeatedly find specific windows and then switch over when using them. The “find-locate-switch” process is the main reason for our headache and discomfort.

To solve this problem there are actually two ideas, one is the ability to pay: the larger the screen display on the basis of the ability to see the content or the more screens the better; the other is to use window management software on the basis of not adding additional screens.

As early as Windows 7, Microsoft built in a leaning split-screen mechanism, and in the subsequent Windows 11, it provided a more detailed split-screen mechanism, and even the FancyZones feature in Microsoft’s PowerToys allows users to manually divide and adjust the block window management mechanism; and on macOS, in addition to the system’s built-in simple left and right split-screen mechanism, excellent third-party split-screen software is also active on many Power Users’ Macs, such as BetterSnapTool and Mosaic. Excellent third-party split-screen software is also active on many Power User Macs, such as BetterSnapTool and Mosaic.

But I generally don’t like to use these tools, or I use them most often for left/right split screen and full screen. This is because I have been using a 16:10 size external monitor, so except for the left/right split screen which can display all the information in both windows, other layouts will more or less affect the display of the software UI or content. The horizontal top and bottom type of split screen except for the system does not have a shortcut feature support, most of the software in this case will either leave a large block of wasted space, or the distance to move horizontally when reading the line of sight is too long, not in line with the principle of full use of the screen, certainly not a good solution.

Of course, if it is a “fish screen” like a wide display, you can also consider adding one more horizontally arranged window – that is, the left center right structure, parallel browsing and use of three windows should be a better experience. However, I did not buy a wide monitor because I disliked the low PPI and uneven backlighting of the fish screen.

The UI layout of the software is another thing that drives me crazy in split-screen software. Taking the most common browser as an example, the middle of the web page is usually the content, and the left and right space can be compressed, while the top and bottom space is naturally as long as possible, so putting the browser in a “vertical length over horizontal length” block seems to be a better choice. length than horizontal length” block also means that I can’t use “vertical tabs” to solve the problem of reduced recognition caused by too many tabs.

Of course there are many other examples of UI layouts that make block split screens difficult to handle, and another example that comes to mind is chat software. The UI design of modern chat software desktops is pretty much the same with the leftmost column of function tabs, the middle left side is the list of chat sessions, and the right side is the specific chat window. At least for me, the leftmost function tab is not effective at work, followed by the session list, which is often ineffective. Most of the things in the department are basically handled in the department group, and many times a glance is enough to know whether there is information and whether I need to handle it. But if you use the split screen software, the left-hand side of the function bar will still occupy a certain area in the split screen, resulting in the right-hand side needs to really show the content area is crowded.

However, I have also tried to manage windows with the help of virtual desktops with the help of split-screen software, but there are still many problems. First of all, the presentation of the virtual desktop itself is a problem. When switching between virtual desktops, it is easy to lose the connection between the “previous virtual desktop” and the “next virtual desktop” like the “context”. Therefore, after opening too many virtual windows, there is a high probability that I will forget “which virtual desktop the specific window is on” when switching, which leads to the situation that I need to repeatedly switch between multiple virtual desktops, which occasionally makes me very annoyed. Another thing that seriously affects the experience of virtual desktops is that Safari-like software can be opened on multiple virtual desktops, so if you click on a link on a virtual desktop without Safari, you never know which Safari you’ll use to open it.

In addition to the problems with virtual desktops, there are also a lot of problems with split-screen software – as long as I have access to an external monitor, basically no split-screen software can handle the logic between different virtual desktops, and I’m not surprised to see all kinds of problems when using them to move windows across virtual desktops. So instead of “managing windows”, I would say “windows are managing me”.

So I’ve been using the built-in Stage Manager and App Exposé for multitasking on macOS. The biggest advantage for me is that it’s “intuitive”, because I’m more used to using the touchpad under macOS, and Stage Manager and App Exposé are a set of four finger swipes with opposite movements, which is very logical for my use. However, this solution is not perfect. Although the Stage Manager looks good, the layout of the Stage Manager will change as soon as one more application is opened, and in most cases, you need to look at all of them to find a specific application.

Why I’m using Stage Manager
I’ve been using Stage Manager since October when macOS 13 was rolled out, initially for fun, but I’ve grown to love it over time.

Stage Manager divides a virtual desktop into 2 parts, a “Stage” and a “Stage Left”. The stage is easy to understand, the stage is where various applications display their windows, and different applications and windows of different applications can be combined to form one window group after another, which is where we mainly interact while working. After a specific setting is opened, even the desktop files are temporarily hidden and need to be clicked once on the desktop, asking the applications on the stage to go down first before the desktop files are displayed.

The downstage area is a concept from the traditional stage, the actors will leave the stage through the channel on the left side of the stage; after opening the Stage Manager, when switching from one group of windows to another, the previous group of windows will automatically shrink to the left side of the screen, similar to the exit logic of the traditional stage. But the difference with the traditional stage is that we, as users, can always observe the open status of the current windows and invite them back at any time; the App in the downstage area can also be refreshed at any time and the real-time status can be refreshed in the thumbnail.

In addition to the basic watch and click interactions, there are some special interactions in the downfield area. One is drag and drop, where we can.

Drag and drop windows to merge into a new window group.
Drag and drop specific windows from the window group to form a new window group on the stage.
Transfer files, images, text, etc. to the application located in the lower field by dragging and dropping.

The other is to click on the application icon next to the thumbnail, which will show all the windows that are currently open (on this virtual desktop) for the application, making it easy for the user to find all the windows of this application in time.

After introducing the basic interactions, it’s time to talk about why I like Stage Manager. In my opinion, Stage Manager solves many of the problems mentioned above, the most important one being that it solves the problem that all windows on the virtual desktop cannot be completely tiled.

When I turn on Stage Manager, although the windows are still not completely tiled, I can get a tiled experience by using the “stage” and “lower field” – I can get a clear picture of the general situation and location of each window, and I can also click on the application icon to show the application’s windows when I am looking for them. I can also click on the icon of the app to show all the windows of the app, and pinpoint the specific window of an app.

In addition to being able to have accurate information about the location and information of each window, it is also very useful to combine windows into groups that match the actual work requirements, because then we don’t have to switch between them repeatedly while using them. While both Stage Manager and third-party split-screen tools can do this, Stage Manager is a bit more flexible. As long as the user can combine different types of windows, resize them and put them in the right place, the cross-virtual desktop and cross-monitor scheduling compatibility is also very good. screen space.

I usually put Ulysses and Safari in the same window group, so macOS will remember the size and position of each window after multiple uses.

During my use, I also noticed that each window or group of windows in the “downstage area” is like a “sub-desktop in a virtual desktop”, and I can switch to a specific “sub-desktop” directly by clicking on it; at the same time, with real-time browsing, the utilization of the same virtual desktop is much higher, and the problem of repeated switching is also reduced; with the whole. In addition, the front stage scheduler is also half “focus mode”, when the window covers the “lower field” on the left, the “lower field” will be temporarily hidden, so I can focus more on those windows in front of me on the stage.

Of course, macOS pre-stage scheduling is not working as expected. The most typical problem is that when dragging a window on stage to form a new window (or group of windows) in the downstage area, you never know when it will work or how it will fail.

Secondly, it lacks the necessary shortcut keys for “switch to previous group/next group”. On iPad, you can use Globe/Fn – ← and Globe/Fn – → to achieve this, but on macOS, these shortcut keys have been mapped to Home and End.

In addition, Apple’s usual “elegant model” will be based on the size of the screen to limit the number of application groups can be displayed in the lower field, in the 27-inch screen will only show up to 6 application groups, the screen on the 14-inch will only show 4, although there is still a certain gap between the upper and lower but will not give you to show more application groups. But this is a relatively good solution, a new virtual desktop on the good, to be honest with the Stage Manager, I own the number of new virtual desktop is a lot less.

Finally, there are some strange little problems, such as the application icons disappearing from the lower field, and the original position of the application being out of place when switching to a certain group, which needs to be manually repositioned. Some windows will be hidden in the lower area by the Stage Manager, such as the software update window, the authentication window of smb connection, etc.. And you still don’t know which browser window will be dispatched to when you click on a link in another application after opening many browser windows.

But the flaw is that I still love this feature. The above is my experience of using Stage Manager on macOS, hope it can give you a little inspiration, and welcome you to share your own way of using Stage Manager in the comment section.

Microsoft Edge for Mac

As a product that Microsoft has spared no effort to promote violently, some of the features of Edge browser are obvious to all, but in some aspects, it also brings out the family’s bad nature to the extreme, including the promotion implantation that “should be added”, and the data collection that digs into the ground. In this section, we’ll introduce skills to make Edge browser more “clean”. Though Microsoft has the official documentation for the Edge for macOS configuration instructions, if you click on this document, you might be disappointed. According to it, the advanced configuration of Edge for macOS seems to be a feature reserved for enterprise users. The succession of incomprehensible words, such as “MDM solution” and “deployment”, will make you laugh out loud and fill the air with happiness on and off the screen.

We know that when Microsoft says a feature is an enterprise feature, there’s about a 1% chance that it’s because it’s really only used by the enterprise. The remaining 99% are either (i) it really doesn’t know how to explain the feature in human terms, (ii) it really doesn’t want to let everyone use it for nothing, or (iii) both.

The advanced configuration of Edge for macOS falls into the 99% category. According to the method described by Microsoft, you need to find the options you want to tweak from the Edge policy list, save them in XML syntax as a .plist (a property list or attribute list, the file format used by Apple to record preferences), and then install them on the managed devices (the term is “deploy”) via the Mobile Device Management (MDM) tool.

What Microsoft doesn’t tell you is that managing advanced configurations doesn’t rely on any MDM tools. Just write the configuration in plist format as described in the official documentation, add a little extra information and save it as .mobileconfig, and the resulting configuration file can be double-clicked and installed to “manage itself”.

(If you’re into tinkering with iOS devices, you won’t be familiar with the .mobileconfig format. Yes, the “test system configuration file” that many people cry for and scalpers shamelessly sell at zero cost every July when Apple launches a new test system is distributed in the .mobileconfig format.)

Here, we will use some of the settings in the configuration provided at the beginning as an example to illustrate how to make a configuration file by ourselves.

Method 1: Make the configuration file manually
Turn off all diagnostic data
By default, Edge only allows users to turn off “optional” diagnostic data, but not only does it not allow users to turn off the so-called “necessary” diagnostic data, but also leaves a description on the settings page, which is clearly intended to exasperate you.

In order to disable all diagnostic data, we first retrieved the Edge browser policy reference provided by Microsoft, and found that the relevant policy is DiagnosticData, whose value is an integer, 0, 1, and 2 representing completely off, allow necessary diagnostic data, and allow optional diagnostic data, respectively.

According to plist syntax, for elements of key-value pair type, the name is written in the element and its value is recorded through the element immediately following it, with the element name depending on the type of the key. Thus, “fully closed” is represented in plist format as


Turn off the new tab page’s psoriasis
If you are a simple person, Edge’s default new tabs full of small ads and spam news will surely give you a heart attack on the spot. Some of them can be turned off through settings, some are not so easy to turn off, but in any case, it is not as thorough as writing the configuration directly.

To this end, we searched the policy reference with the keyword “New Tab Page” and could see that the relevant policies include NewTabPageAppLauncherEnabled (application launcher, i.e. the Microsoft application menu in the upper left corner of the new tab page), NewTabPageContentEnabled (information content), NewTabPageHideDefaultEnabled (information content), and NewTabPageHideDefaultEnabled (information content). NewTabPageHideDefaultTopSites (shortcut links) and several other Boolean types.

Therefore, the configuration to turn off the launcher, turn off promoted content and hide shortcut links is



Changing the default search link
The Edge browser uses Bing search by default, which is not a good choice for its level of performance and aesthetics. Although you can adjust the settings yourself, Edge’s search engine settings are probably the most deeply hidden of all browsers, so it’s better to write a configuration file to make it easier to use multiple times.

For this reason, we searched the reference documentation to find the corresponding policy ManagedSearchEngines, whose value is an array of elements (), and each internal dictionary () element corresponds to a custom search engine, with the necessary content including name, search link, default or not, keywords, etc. Other other configurations are optional.

Assemble and make a configuration file
As mentioned at the beginning, after collecting and configuring the policies you want to tweak, we need to “wrap” them in a .mobileconfig file to enable double-click installation.

Apple describes the structure of the .mobileconfig format in a document. From there, it is clear that the configuration file can store the configuration of multiple apps; each app’s configuration is placed in a dictionary element () that collectively serves as the value of the array element PayloadContent.

To do this, we first construct the dictionary element that configures the Edge browser. The configuration pieces prepared above are stitched together and the necessary elements required by the document are added at their adjacent positions (in no particular order within the dictionary element), such as:


Microsoft Edge





. . .

Among the above elements, all of them can be filled in for identification purposes only, except for PayloadType, which must be filled in with the package name of Edge com.microsoft.Edge in order to be valid. For the content of the identifier format, the recommended method is to use the uuidgen command in the terminal to generate a random one (or use the web tool).

After this configuration of the Edge’s dictionary element is done, we further add the necessary top-level elements adjacent to the element and wrap the whole thing in a dictionary element, plus the header information of the plist file.

The contents of the identifier format are generated in a similar manner as above.

AppUninstaller.com’s App Uninstaller 2023

App Uninstaller is the product of the well-known app utility developer AppUninstaller.com, and it has been our editor’s choice for the best app uninstaller and most essential tool on Mac for years. The newer version App Uninstaller 2023 continuously has other apps beaten in all reviewed features, either core functions, leftover cleaner capability and pricing. It’s just getting better and better, as they’re adding new app removal capability in the latest updates and upgrades.