 |

Being Administrator designer Thomas Gumz
Interview by
Lynda
Urgotis

 

Level: All
Works with: All
Updated: 10/02/2000

Related links:
Developer Spotlight Discussion
Extending the Domino Administrator
On top of the discussion with Responder 3.0
Art Thomas: Domino R5 administration
Server monitoring in R5
Face to face with Notes designer Bill Andreas

Get the PDF:
(224 KB)


|  |
You can put your money away. Unlike in the movie, "Being John Malkovich," you don't have to pay to get inside the head of Thomas Gumz, this month's Spotlight interview. Thomas is the Product Designer for the Domino Administrator client, which was introduced in Release 5. Now he's working on the next release of the Administrator. To see the Domino Administrator (present and future) through the designer's eyes, follow me up to the second floor, around the big conference room, down the corridor, and to the darkened office with the funky corner window. We'll find out what it's like being Thomas Gumz.
And for the month of October, 2000, Thomas answered your questions in the Developer Spotlight Forum.
Important Note: This interview discusses ideas for new features that are still being planned and developed, and (at the time this interview was published) are not committed for any future release.
Before we go into details about Domino Administrator, let's start with the basics: what does a product designer do?
Literally, a product designer designs a product. Design here means how it looks, how it feels, and how it's supposed to perform a certain function. For example, a product designer for coffee makers decides how the filter should be inserted—straight from the top or something that slides out to the left or right—and whether the buttons to set the clock should be square or round or blue or green. In automobiles it's similar—it's the way you look at the dashboard design, the way the controls are aligned and set—all that is the work of a designer.
In the software world, the lines are a bit more blurry, but essentially it's the same. A product designer decides how a certain feature should perform for the user and how a user is supposed to use or control the application. It's the entire model of use, including how it will look and be represented in the graphical UI [user interface].
A big part of our interaction with the Administrator client is the interface. Is the design of all the user interface elements, like the tabbed panels and the Tool section, part of your job?
Yes, but that's really just one part of the job. The UI is the link between the user and the functions of the software. I'm also responsible for the way certain functions should work, though not in strictly technical terms. For example, I don't care how the internal memory management is handled; that's up to our development team. But if the implementation has an effect on the user experience—say, something is implemented so that you have to wait because everything is blocked—then this does affect the user experience, which is part of the overall product design, and then I do care. That's when I ask, "Hey, can we do this in the background instead so the user doesn't need to wait here." For example, in the R5 Administrator client, when you perform message tracking or server monitoring, all this happens in the background so that you can freely move around in the client without being blocked.
Do you get down to the level of tweaking pixels in panes?
Absolutely, right up until the last minute of pixel freeze. But I'm not just tweaking pixels in panes; I also decide if there's one pane or two panes or none at all. I also finish up all the color schemes and icons and graphics, too. In the R5 Domino Administrator, I also handcrafted all the purplish icons for users, people, servers, tasks, and such.
Designing something like a teapot would seem to be easy—you need to get water gracefully into and out of the pot. What about designing something as complex as the Domino Administrator?
After discussing the use-model—"What problem does this feature or function need to solve, and what's the intended audience"—we start with visual mockups—"it could be laid out like this, or it could be laid out like that." When the product area is completely new, or if there is a lot of interaction, or if it's really complex, then we prototype it before the developers write real code. A prototype gives you a better feeling of the product. If you just look at a bitmap, it's static. There's usually no interaction. But if I do a prototype, say in VisualBasic or Macromedia Flash or Director or the like, then I can show exactly, for example, how to do a drag-and-drop or any other operation, and how it is supposed to perform, and look, and feel to the people who are using it.
The R5 work for the Admin client was basically brand new simply because we didn't have an Admin client in R4, so I basically prototyped the entire thing from scratch. We had a complete functional working prototype, which looked and felt exactly the way the shipping product does today. For work on the next release, I won't be doing this again because we already have a shipping product and we are just making extensions. In other words, we pretty much got it right the first time, so we don't have to change it drastically again. But there are certain enhancements and new feature extensions for brand-new development where it helps to have it prototyped in a special, dedicated way.
Just to give you an idea of how much design effort went into the Domino Administrator R5 development, I used approximately 356 megabytes (1,466 files) for graphic source files and mockups, and approximately 220 megabytes (1,933 files) for prototyping code. That's a lot of stuff, given the fact that it's really "throw away" code. For the Admin client, we put in a lot of effort to get it right.
Do you have an example of a feature that you prototyped for the next release?
Here's a good example—there are new features going into the Server Monitoring panel. Right now in R5, the only way you can view the information about your servers is By State or By Timeline. For the next release, most likely there will be another couple of options. Choose one of the new options and you will be able to see the servers you monitor laid out in a graphical topology-type UI—sort of "Show me the European map" or "show me the floor plan of the second floor Server lab"—and then see whether the servers are up or down. That's a feature where I prototyped just that part. It depends on the complexity. If it's a well-understood task or area, we just create a visual mockup; and if it's new territory with a lot of interactions, we prototype it so that the developer doesn't have to write real code until we figure out exactly what we want to do.
Are there special considerations when designing for a product like Domino that is used internationally?
The whole Notes and Domino core product is built inherently for internationalization. For example, the markets that use BiDi, or "BiDirectional" language, reading right-to-left —all that stuff is automatically in there. I don't have to do anything about that; it just works. It's a service built into the guts of the product. So if we have a version for their market, it's supported. We don't have to do a lot of manual stuff to make things happen.
There also are some things that are international standards. For example, in the footer animation for the Server Monitoring panel, you see the little "i" symbol, representing "information." In our case, that means that the server is sending monitoring information to the client. That "i" symbol is a worldwide international standardized symbol representing "information." If you go to an airport in Shanghai, Frankfurt, or New York, the information desk has that "i."
Let's move from the theoretical to the actual. The Administrator client is out in the world as part of the R5 release, being used by real people. What are you hearing about the user experience?
We got really good feedback during the prototyping phase when we started with the usability tests. So we knew we were headed in the right direction. This summer, I put out a questionnaire in the worldwide Lotus Business Partners database. I said, "Tell me everything you hate about the Admin client or what you wish you could do with the Admin client, or what are we missing in the Admin client." I got a great response. I left the posting out there for about four weeks. Then I processed all the feedback and created a big table with my findings. The outcome was that 50% of what people asked for, we had already committed to do for the next release. Another 18% of the ideas submitted were ones that we were interested in, and we will certainly try to do them if we have time. Twenty-three percent of the ideas were nice features, but probably won't make it into the next release. And the remaining 9% were only applicable to a small group of users.
Informal polls like this are useful to us. We use it internally to see if we are on track for the new features for the next release, or if we are totally missing the boat. Our partners and customers are actively participating in shaping the product. For 50% of those who responded, we are cutting their pain in half with future versions. And then there are the new features that they don't even know are coming yet. So we have a ton of new features and improvements of existing features to make it even better, and we'll fix most of the other things that they'd like to see.
And in addition, you'll be available in the Spotlight.
Right. I'll be answering questions that are sent in. Lotus is really good about making developers available for questions and discussions.
[Editor's note: For the month of October, you can post questions for Thomas in the Developer Spotlight discussion forum.]
How does administration in R4 compare with the experience in R5?
In R4 there was a very limited subset. There was an Admin panel that had a few buttons where you could do stuff, but it wasn't a full-blown administrative environment. In R5, using the Admin client, we basically pull all the existing stuff together and give it to you. Before, you had to know all these things like where the Name & Address book was located, and the name of the file, and so on. Now they're all automatic and just show up.
One of the other design goals was to let you do most of the administration the R4 way if you wanted to. If you didn't like the approach of using the R5 Admin client, you could still use your regular Notes client and open those databases manually. Or, you can configure SmartIcons to bring up some R4 UIs, like the old server console UI.
On the other hand, we want people to move towards the Admin client—even more so in future versions—because we are adding more and more features that will show up only in the Admin client—things like topology maps, monitoring, and more.
What are some of the most interesting or useful features of the Domino Administrator for Release 5 that you want to be sure people know about and are using?
Oh, there are just so many things. Server monitoring, for example, is brand new. You couldn't do it in R4. That's a core feature of the Admin client. Another one is message tracking, which is handy when someone has a problem with some piece of mail not getting delivered. You can track down the status of it. There's also the accompanying Message reports feature (reports.nsf), which allows you to gather a lot of statistical information about the messages sent and received on your servers. For example, you can easily identify the people sending the biggest e-mail in terms of size/attachments, or the people who send the most e-mail to a particular domain, like ibm.com, for example. Those reports can be generated just-in-time on the fly, or you can set them up to be generated on a schedule, like daily, weekly, or monthly.
Another feature that might make your life easier is the graphic user interface for all the server tasks that support command line scripting. For every task you can interact with using the TELL or LOAD command, such as the COMPACT task, there's a graphic user interface for it.
Let me show you how it works using the COMPACT task as an example. After you bring up the Admin client, go to the Server Status panel. Then go to Tasks and click the Start button. You get a dialog box.

Then let's say I want to compact only AZollar's mail file because his mail file has grown quite large. I'd also like to archive the mail file. You get a visual dialog box where you can click and point to set this up.


The end result is that on the server we create the command LOAD compact mail\AZollar -a. So you don't have to know the command syntax or what -a means.

Another thing I'm doing for the next release is adding online help for all server tasks accepting command line parameters, so you can do a LOAD UPDALL -? to get a description of all parameters, in case you use the server console directly.
Anything else that makes life easier for administrators?
We're putting in a lot of features that aren't specific to the Admin client itself—it's more for administrators. These features show up in the Admin client, but they aren't necessarily Admin-client-only features. We're doing a lot of things to make enterprise-wide administration easier. If you have this huge corporation and want to do remote administration of desktops out there, you can push many things or configure them remotely. Say you have a company-wide policy about how your general desktop should look, and you want to push it out to all the desktops. You don't have to go to all the Notes clients to manually configure them any more.
Is that something you can do already do in R5?
You can do it to a certain extent in R5, but for the next release we're pushing the envelope on this. There will be a lot of detail changes, for instance to the server console. You could go to the server and configure it so that all "bad things" would be shown in red and all the normal stuff would show up in green. Or you could say, "I don't care about normal stuff, only show me the bad things," and then the server console will only show what you defined or considered "bad things" based on severities defined in the events4.nsf database. You could even go as far as, let's say you see a bad message like, "Attempt to open database by Joe Hacker denied," and there's an error message. An administrator could see this, right-click it, and say "I want to be notified when this message shows up again." And then it says, "How do you want me to notify you" and you say "Send me a page." Then the next time it happens, you get a message on your cell phone that says he tried to do it again. Or, when your SMTP server detects a spam attack. That's pretty cool. Before, the features were there, but you had to set them up in a sort of out-of-context way. The new Admin client will make configuration much easier.
Are you also responsible for designing the Web Administrator? What's happening there?
We plan on beefing up the existing Web Administrator to bring it much closer to the Windows Administrator client. Right now I'm basically completely rewriting the old Web Administrator from scratch to make it look and work pretty much the same as the Windows Administrator client. So in the next release, you should be able to do much more administration purely from a browser. And it will be much faster, too!
You probably want to keep some stuff a surprise, but what else can you tell us about new features in the next version?
We're working on more visualization of existing, more-or-less "raw" data. For example, we'll visualize live and/or historical performance data in charts. It's very similar to NT's Performance Monitor tool, but it's specifically suited for multi-platform Domino servers. For example, you can display charts of various statistics happening to your server in real-time or display the same statistics as historical data of a period of time.
We'll provide tools to automatically load-balance servers based on disk space capacity or user load. Say you get the budget to buy a new, powerful server to add it to your mix of existing servers. Soon you'll think about what databases to add or move to that server. With the new load balancing features, you can say, "Tell me how to distribute the load of those two servers on to the three servers we have now." After some chugging, the tool will tell you what databases need to be moved to the new server. After you approve, it will generate the necessary Administration Process (AdminP) requests to do that work for you automatically. Gotta love being a Domino Administrator!
And you'll see more sophisticated server monitoring.
Also, in general we'll tie existing facilities more tightly together to better exploit them. For example, you could always create "Event notifications" in the Statistics & Events database by filling out a new form if you wanted to get notified when certain events occur. In the next release, we do this more automatically. So, again, if you see a strange error message on the server console, you can right-click it and say "Notify me when this error message shows up again." We create and fill out the form automatically in the background—it's altogether easier.
What is some of your design philosophy?
I want to make it as easy as possible so people don't have to focus on the application and can focus more on the task. Just because the targeted audience of the Admin client is made up of the more skilled and sophisticated administrators rather than the end users, it doesn't mean administering a complex and powerful product like Domino has to be difficult. Complex yes, but not complicated.
How would you sum up the focus for the next release?
We're building on what we have. You'll see that there are modifications being added, but it's basically extending it in a logical way. For example, there will be more entries in some of the panels. But it doesn't mean that the whole UI changes. The basic structure in terms of tabs and details and such will still be the same. So I guess that sums it up for the next release of the Admin client — "More."
For the month of October, you can post questions for Thomas in the Developer Spotlight discussion forum.
ABOUT THOMAS GUMZ
Thomas Gumz is currently the Product Designer in the Domino Server Administration Group. While at Iris, he designed the new Domino R5 Administrator client and also developed the underlying domadmin.ntf template. Now he is busy improving the Domino Administrator client, developing a new Domino Web Administrator, instrumenting core server tasks with on-line Help, and working on an entirely new server setup UI. Previously, Thomas spent two years working in Lotus Product Management as the Lotus Notes for Windows NT Platform Product Manager. Lately he is also battling dark creatures in Diablo II and has been seen cruising around in his new TT Coupe!
ABOUT LYNDA URGOTIS
Lynda Urgotis began her career during the Paleolithic era writing about chipped-stone tools. She has documented her way from Data Resources to PSDI to Software House. She is rapidly approaching her thirteenth anniversary at Lotus where she contributed to Lotus Improv, SmartSuite, eSuite, and now, Notes. She wrote the Que book, "Quick Reference for Improv" as well as chapters for the Improv Que book. Gardening delights her spirit. Her daughter, Megan, and husband, Michael, are just plain delightful. |