The Non-Maximizing Maximize Button

another windoze vs mack post?

Bottom line…they are both wrong! They should have both maximize and zoom.

Why not let the user choose which buttons they want on their window manager. Oh wait…even the light-weight xfce window manager lets me do that.

I am the odd one out. I switch back and forth between maximized windows and overlapping windows throughout the day. Having a larger screen (1920x1200) allows me to do that. I have them overlapping, and leaving unobscured the information from one window that I need in the other. Having it on the screen helps keep me focused–switching between full screen apps is like an interruption to my thought process. Alt-tab, Alt-tab, Alt-tab, oh foo, Shift-Alt-Tab, now what was I doing?

When I’m doing one thing at once, or rather, when the task is a “single document” type of task, I maximize the window, and work in it for some time before minimizing or closing it.

Shouldn’t all the little toolbars (e.g. Visual Studio) and information panes be considered non-overlapping windows?

–dang

I moved to Mac a few years ago, and have found its window management to be much better at multiple windows because of Expos. I’m surprised how few have brought it up. I typically use only F9 and F11 (mapped to squeeze and middle click on my mouse), which give me all my windows or all my desktop respectively. Their two ways of working (hold-and-release or activate /deactivate) enable all sorts of fantastic choreographies. How well this works for beginners I’m not sure, but I’m happily dragging, dropping and switching between applications.

I will admit that the zoom button is fairly broken. While it’s a great concept and often works well in several apps, it is inconsistent and will probably continue to be so as more developers move to the Mac and use it as a maximize button. Why Skype’s login dialog thinks it needs the whole screen when zoomed is beyond me.

Would the elitists on both sides shut up?

We clearly need both. Stop and think about it. Our cognitive layer is single-threaded. Some people are better at context-switching than others, but we’re all single-threaded. The UI needs to help users do 3 things:

  1. Focus on a single thread/context when we need to.
  2. Transfer state between two contexts (i.e. drag and drop).
  3. Easily locate the next desired thread/context when we need to switch. Note that the next desired context may not already be running.

A true maximize function helps us do #1, by blocking out everything else. This doesn’t mean that all content needs to be stretched to the horizontal boundaries, so Windows isn’t quite right. But we need to be able to focus on the current context without interruption, so OSX is wrong. I like how Windows physically blocks all other contexts, but I could see the wisdom behind an interface that centers the current context, marginalizes everything else, and makes them transparent.

#3 is the really hard part. Is Expose the answer? I don’t think so; there’s no prioritization to help the user locate the next desired state. The Windows taskbar is too fragmented without grouping, but there’s no prioritization; MRU or LRU sorting, like Alt-Tab in both Windows and OSX, would be nice. I like the OSX application bar, because intra-application windows are grouped by icon, and personally, I think of thread/context by application, so it’s a good first-level radix. There’s also the problem that the next desired context may not already be running; on Windows, the user has to distinguish between running and non-running; on OSX, all are available, with a convenient little back arrow under threads/contexts already running.

#2 Drag and drop and copy/paste are both broken; too much thought is required. Coding these interactions is like mapping data between applications without middleware; it takes too much work (n*(n-1) permutations), there are no standards, and unanticipated permutations break. We need standards for these operations, and the OS should provide an alternate operation framework to support any sources or targets that don’t fit the standards.

The same thing used to bother me while using a Mac, but the truth is that you become used to it. Windows has the tendency to coddle you into thinking there should only be one huge window taking up your screen (anyone else see the irony of this when the name of the OS is WINDOWS?) at any given time. Apple still thinks of a desktop as just that, a desktop. You work with multiple items, and when you want to focus on one, you push the other ones aside (minimize them). This is why Apple put so much more focus on application switching and the dock than Windows ever has with the taskbar, which has barely changed at all in the last decade.

When “size” (virtual? It’s all virtual …) approaches infinity, it overwhelms the equation. While it’s wrong to say that a menu on the top is effectively “inifinite” pixels tall by, say, 20 pixels wide, the Fitts’ law size of it is much larger than the physical representation (it is effectively a slightly triangular shape, with concave edges peaking at the center).

Yes, you can undershoot. But, if you’re aiming for an edge your behavior will be to overshoot.

When you kick a soccer ball into the goal, you don’t tap it so that it just goes over the line. You shoot the thing and let the net stop it.

Reminder: this all started with your claim:

“Re-read Fitts Law. If the toolbar is at the top it is further away from the actual area you are working in, therefore it takes more time to acquire the target. Maximizing to keep the toolbar at the top is really only good if you keep the mouse at the top too…”.

This is quite simply not true, and not at all supported by Fitts’ Law. Also note that given the bounded-backboard of the edges, a simple mouse flick moves the mouse to the very top of the screen from anywhere. If top menus were “only” effective when the mouse is at the top of the screen, then they are only slightly less effective when the mouse is in the middle of the screen, as it is a simple jerk to transition from the latter to the former.

I’m a Windows user for many reasons, not the least of which are access to compilers and gaming applications. However, one of the very first things I do on any system I touch is change shells.

To me, Explorer, with its default settings, is a piece of junk. It annoys me as a developer every time I have to deal with them. Also, since I switch PCs and deal with new PCs on a fairly regular basis, I find changing all the Explorer settings to be a royal pain.

Also, though in most situations I work with dual monitors, as a web developer I often have upwards of thirty windows open, what with as many as six different web browsers, Visual Studio 2005, text editors such as Notepad++ and EditPlus 2 for PHP editing, file browsing windows open in several locations, etc.

To deal with this, I use a shell called bbLean. Most people that see it accuse me of running a Mac or Linux, but it’s actually a Windows shell. I’d be very interested in seeing a review of this software by Jeff.

bbLean radically changes the way you work with your computer. Sure, you still have a taskbar–though now you can position it anywhere on the screen with a bit of text file editing–but instead of a start menu, all this taskbar provides is a system tray and window list. You can toggle the window list between displaying window title + icon, window title, or just the icon–WONDERFUL if you have 30 windows open, most of which have their own unique icons.

Also, instead of the standard start menu and/or file browsers, bbLean provides a menu that can be accessed from anywhere simply by right-clicking on the desktop or tapping the windows key. This menu provides a start-menu type interface that actually spans your entire computer–you can literally use it to browse down into the deepest level of your windows folders. In addition, it’s far faster to use than opening an Explorer window and browsing to your destination, as folders open as fast as you can mouse over their names in the menu. Of course, if you click outside the menu it disappears–however, you can click on the header of any folder or subfolder menu, drag it to where you want, and it “pins” the menu in place there until you right-click on the header again to close it or drag it somewhere else again. It also supports drag-and-drop copying between menus, Explorer windows (at any time you can open an Explorer window simply by double-clicking a folder), and many other programs.

It takes a bit of getting used to, and you do have to be fairly accurate with the mouse (or just use the keyboard to navigate the menus, which is also quite simple), but the results are astonishing. I can drill into a program in the Program Files folder and drag it onto a contact in my instant messaging application to send it to that user within 5 seconds, as opposed to it requiring perhaps 30 seconds to wait for an explorer window to load, then navigate through each folder.

It also has some other very beneficial effects as well–it doesn’t load desktop icons (though by default in its menu it has a root-level folder that points to your desktop), and generally uses less than 10 MB of RAM–try getting Explorer to do that if you have more than 10 desktop icons. You can do pretty much anything you want to with it, since its configuration files and plugin locations are all defined in text files. You can change skins and themes in less than 2 seconds, and design complex themes in mere minutes with their theme designer.

It really is a tremendous leap forward in usability in my opinion, and I would be very interested in hearing a review from Jeff about it.

By default it’s designed for Windows XP, but it can be adapted to Vista (the only thing that needs changed are the file paths for things such as the My Documents folder, which don’t exist on Vista)–and again, all of that information is stored in simple text files.

The website of bbLean is http://bb4win.sourceforge.net/bblean/ . I’d highly encourage those who use windows but don’t like the windows interface to give it a one-week trial. I did, and never looked back.

“Excessively long lines are hard to read”

I must be weird then. I have my browser almost full screen. I have folders at the top for drag and dropping URLs, and programs that I want easy access to, games and utilities. While I like some white space, I don’t like a whole lot of it either.

explination of my SUPER COOL SETUP

generic MY OS DOES NOTHING WRONG EVER statement

one liner about design/useability being more important then useability/design

RAVING INSTULTS ABOUT BILL/JOBS NOT KNOWING WHATS BEST

‘Tell me, which is an easier way to force a jpeg to open in photoshop instead of your quick viewer/editor - right click, open with (if it recognizes the type) search through a long list, find photoshop, uncheck “always use this app”, click ok. OR grab the file and drop it onto either your open instance of photoshop, or the shortcut to it that you keep on your dock.’

Just a few nitpicks.

  1. Once you’ve opened a file using Open With… it becomes the Open With submenu, populated with any applications you’ve previously used to open that file type. Programs seem to have the ability to add themselves to that list as well, as I hsve several programs that appear on my open with list for .png files that I didn’t add.

  2. Dragging files into an open Photoshop instance on Windows should open them, unless Adobe didn’t bother to code it that way.

  3. Dragging files onto a shortcut in Windows opens the program with the file path as the first argument to it. Whether or not the program does anything with that information is up to the programming team.

  4. Dragging on to the Taskbar button for a program doesn’t work (Windows tosses an error… that’s something that should be changed), although pausing over the taskbar while dragging will cause that program to come to the foreground, which can then drop a file on.

As a general rule, under Windows you can drag things from Explorer to an application with no problems. Dragging them between any two other programs is… iffy at best.

Shouldn’t the interface adapt to the way the user wants to work instead of the other way round?

(Which implies you can zoom on Windows and maximize on MacOSX if you so desire.)

Personally I could use a maximize left and maximize right function (maximize to the left/right half of the monitor) for my 24".

On my 21" I just like maximize (thanks to tabs in browsers, Windows task bar, dialogs, Excel and Visual Studio if you set it up that way).

I’d just like to point out to everyone that tabbed browsing is NOT MDI. Sure it fits the acronym, but it’s still not MDI.

The only MDI apps I can think of that are in use are image editing apps (photoshop/psp).

This is argument that both sides can come up with great examples of how they’re “right” while finding just as many good examples of what breaks that other method. I’m in the camp of “you should be able to do what you want” as I can think of times I’d want both.

@Jeff: As an aside I realized your site doesn’t *minimize" space very well. As I’m scrolling down I realize I have this big chunk of whitespace on the left. To read all the way across I have to make my browser that much bigger. If you moved your sidebar navigation to both the top and bottom then I could get more of my screen back :slight_smile:

FWIW, on my wide-screen monitor at home (still haven’t gotten one at work :frowning: ), I keep the editor window of Visual Studio open at about 70% width, and other application windows, usually tools or explorer folders, open in the remaining area. My other monitor shows the extra VS windows (code definition, solution explorer, all debugging info, etc) on 50 to 100%, depending on if I’m debugging. I’m looking forward to ultra-widescreen monitors, so I can fit even more information on the screen without the need to alt-tab back and forth.

The rest of the time, most of my other applications I keep at a decent size, but with a wide-screen monitor I don’t ever maximize my windows anymore.

Oh, and from that quote, Alex Chamberlain sounds like a real ass.

My pet peeve with resizing is that folks use x, y coordinates, along with fixed widths, and heights, for controls. I think folks who lean more to the creative designing side, tend to abuse of such resources.

It’s a lost battle, so I don’t have hope of things ever improving with regards to this, so resizing will generally be very difficult to support well, let alone to support different fonts sizes, different border/padding/spacing widths, and so on…

Hopeless…

I’m just waiting for the day that Apple allows their users to resize windows from any direction. I had the opportunity to use a Mac extensively last year, and that dumb little idea of only being able to change window size from one corner turned me off from the whole interface. Forcing users to expand from one direction, then rescroll and reposition the window, is far more important than whether the max button maxes or zooms for me.

You’re still ignoring the “distance” half of Fitt’s law. It gets an extension of size in one direction, but not the other three. The distance to the target increases though so there’s no real reason that it’s easier to hit.

I don’t see how reading the full law is “not at all supported” by that law. You’re ignoring half of it in some mathemagical poof!

Just give users the choice of how the “maximise” button should behave. I personally like to maximise because I find other windows distracting, but other people are different, so why not just keep everyone happy?

GIMP Portabe - 907,622 downloads from Sourceforge.
No data for GIMP proper, as it is included with most (all?) Linux distrubtions, as well as being available for Windows.

Personally, I use both modes. Full screen (aka maximized) when I am surfing, or working on spreadsheets; windowed, when moving files or data between applications, such as pasting in commands from a support site into terminal.

As always, the “best” way is user and task specific. What is best for me, may not be best for you.

It’s a design issue:

On Windows, you tend to have one window with multiple panes. For example, when I work in Visual Studio, and I maximize the window, I get the program window, the log window, the class browser, etc. The Mac doesn’t use panes. Instead, component appears in its own window. If I am working in Xcode, and I really maximized the window with the source in it, all the other windows I need would be hidden from view.

Another nice thing about maximizing a Window’s window is that it put the menu bar and other tool bars on top of the screen where it’s easy to find. On the Mac, the menu bar is always on top and in full view.

However, things have changed since the old days when 4megs was a ton of memory. If I have two monitors, maximizing a single Windows window covers a lot of real estate and is really almost impossible to work with. Meanwhile, newer Mac programs now are using side panes. Look at Finder, iTunes, and other Apple applications. While on Window, applications like MS-Word now spawn multiple windows instead of all documents appearing in a single application window.

Maybe it is time that both companies rethink what users want to happen when they click on the “Maximize” button.