Good. There are Visual Studio users out there. We have a reference point.
So, picture this: I open all my header files, and then drag their corners until they are pseudo-minimized. That means that I manually size them as small as I can, but I can still read the whole filename in the titlebar. That would be about 20 pixels tall or so, and let’s say 250px wide.
Let’s imagine I have ten of them, in the upper left hand corner, arranged like:
Header 1.h
Header 2.h
Header 3.h
etc.
Now, next to each one, I arrange the corresponding .cpp file, like so:
Header 1.h Source 1.cpp
Header 2.h Source 2.cpp
Over on the far right, I have a similar stack of, ohh, how about utility files, like Util1.h Util2.h, and the corresponding cpp files.
Elsewhere on my Visual Studio workspace, I have various test files, output files that I have opened, code snippets that I have waiting to insert in my code. Maybe a bunch of C# files that I am porting over to CPP (don’t ask me why)
The entire workspace is now “arranged”. There may be 50 files opened. They are all perfectly aligned with other corresponding files. In an instant, I can see the scope of my entire project. I get the BIG picture of how everything fits together. I see the relationships. Other benefits: I can search across all open windows, I can compare code side by side, I can do fast cut and paste, I can find stuff, I can jump back and forth from one window to another at lightspeed, etc.
There are those that like the tabbed dialog interface. That works for ten or twelve files, and breaks down in uselessness past about 20 files, because you can’t read the title on the tab anymore.
Visual Studio thus becomes more then an editor/compiler. It becomes a project/file manager, a beast of infinitly greater power and usefulness.
Now, suppose the actual operating system itself (be it Mac, or Windows, or Linux, or whatever) only supported tabs. You could NEVER have more then one window open at a time.
Well, that would only be a marginal improvement over DOS.
You see, the whole point of a multitasking, multi-UI OS is precisely the fact that you can have overlapping windows. The user is given the CHOICE as to how they want to arrange their “desktop”.
The Windows platform-desktop look and feel allows the end user the greatest freedom of expression in how they wish to customize their work/play/create environment. Tabs alone are very limiting. You can’t get enough tabs up to do much.
An average dev session for me involves having several file managers open, two or three Visual Studios open, a dozen web browser windows (researching things), email, Word For Windows, a calculator… in short, a whole bunch of UI surfaces. I park them where I want, where I know they are, where I can get to them quickly. It’s a beautiful thing - a customizable, high speed, graphically rich environment, where I am the total boss.
There is no substitute for this powerful environment. And it is coming to the web, for all of the same reasons.
You have to realize, the tabbed thing… is just a stopgap measure. Of course, it will continue to be supported, because people want choice. The mere fact that tab technology came out after MDI technology does, in no way shape or form, mean that tabs are better, or preferred, or that MDI is becoming obselete. Quite the contrary - they are two complementary mechanisms.
@hachu: just as tabs allow one to group like with like, the MDI paradigm goes a step farther, allowing one to create little “zones” of windows, that are physically seperated from other “zones”. Once again, more choice.
The MDI interface is the most sophisticated and powerful interface ever developed, and it will not be dethroned by a bunch of rigid tabs.
Imagine: you walk into the library to research “USB Technology”. You get an armfull of books and magazines, and walk to a desk. As you sit down, the librarian comes up and says, “Uh, excuse me, but you can only have one reference material at your desk at a time.” You say, “Huh?” The librarian says, “It’s the rules - here, I’ll just take those other books from you, and put them over here on MY desk.” Reluctantly, you hand her the books, thinking, "This is really weird…"
So, you sit down, and dig through the one book you have, and you find a reference to a magazine article. You think, "Hey, that article is in one of the magazines I picked up. So, you walk over to the librarian’s desk, and reach for the magazine. “I’m sorry”, she exclaims, as she raps your knuckles with a ruler. “I thought I explained to you about the rules. Now, you bring me the book on your desk, and I’ll give you this magazine.”
I could go on with the example, but you get the point. That would be a rediculous excuse for a library, and you would never go back. However, you want that for your web browser interface. Hmmmm. Really? You mean you are willing to settle for only seeing one page at a time? You mean you see no utility in being able to arrange partially opened pages side by side, scrolled and positioned so that the relevant contents of both pages can be simultaneously compared? Hmmmm.
When I go to the library, I want AAAAALLLLLLLLL the books on my desk. When I hit a website, I want to be able to open multiple content streams within the same website. I do NOT want to be forced to open multiple browsers, and then position the browsers on the DESKTOP, where they compete with all the other desktop windows. No. I want to be able to position the windows offered by a website, WITHIN THAT WEBSITE.
Anything less is just DOS on the web.
Y’all get ready. The wave is coming.
Norzilla