I think webmin - virtualmin - usermin need to be crushed together into a single app. It is really confusing to have modules overlapping and my users are probably going to say "why do i have to go to X to check my email"?

Anyway I like the feel of the apps but there seems to be some disconnection and overlap between them.

My recommendation: CRUSH them into a single app called "webmin" and dispense with the technicalities.

Has this already been done and I am missing something?


I suspect we’ve just failed to explain things as well as we should.

So, here’s an attempt:

Webmin is a general purpose web-based system administration tool.

Virtualmin has two meanings…which is a bit of a problem. The technically accurate meaning is "a Webmin module for virtual hosting management". The more generally useful meaning is, "a stack of applications for virtual hosting–including management tools like Webmin and the Virtualmin module and its plugins".

Usermin is the easy one. Usermin is a webmail client, that happens to have a few additional neat features. However, you should just think of it, and present it to users as a webmail client–they probably won’t be doing anything else with Usermin in a Virtualmin hosting system (except maybe changing their passwords). All of the stuff that you think of as overlapping is irrelevant in the context of a Virtualmin system, and won’t be visible to users if you’ve configured the system in a reasonable fashion.

So, in short:

Webmin is what you login to when you want to do system administration tasks of any kind–managing virtual hosts, managing BIND, managing databases, managing users, etc.

Virtualmin is just a module of Webmin. There’s nothing to be confused about here, as there is no place you can possibly “login” to Virtualmin.

Usermin is for email. So, the reason your users have to go to X to check email, is because X (Usermin) is for email. Webmin happens to have a Read Mail function, but it’s for administrators troubleshooting problems and should never be used as a mail client.

Simple, right?

So, why not crush them into a single app called Webmin? Because that would be really confusing.

Imagine trying to explain "Webmin webmail" to your customers and "Webmin virtual hosting management", and "Webmin for BIND slaves, without any of that virtual hosting stuff".

And, of course, Webmin runs as root, while Usermin runs as the logged in user. Webmin restricts based on an advanced set of ACLs. Usermin restricts by default (and can’t possibly get it wrong, as long as the underlying system has sane permissions and ownership).

That said, given the stronger Webmin brand, and the fact that four years after Virtualmin came into existence (as an Open Source project) hosting providers are still only offering Webmin (which isn’t even designed for hosting!), maybe we should figure out a way to cram Virtualmin into Webmin and call them Webmin. But, the problem with that is that Virtualmin is a dramatically different approach to system administration then Webmin–it automates and combines many services. Webmin is all about a one-to-one GUI for all of the stuff on a UNIX/Linux system…Virtualmin is all about making setting up a virtual hosting environment easy.

OK, so anyway, what do we need to do to make this stuff more comprehensible to new users? We can’t “CRUSH” Usermin into Webmin–that’s deeply non-trivial–but we can, hopefully, make it more clear that Webmin is for administration and Usermin is for reading email.

Oh, yeah, one other problem:

People don’t think of us for webmail, until we bundle up a package explicitly called “Usermin for Webmail”, and suddenly folks realize that Usermin has a really powerful webmail client–more powerful than Squirrelmail, for example.

The same can be said of MySQL. Webmin’s MySQL module is more powerful than phpMyAdmin, and yet phpMyAdmin is more popular than Webmin. Strange, eh? Part of that can be accounted for by the fact that phpMyAdmin can be installed as a non-root user. But the other part is that a large percentage of people don’t realize that Webmin has a really powerful database management module for MySQL built right in.

The list goes on and on of things that would probably be more popular if we split them out into independent projects: our mail modules (Postfix, Sendmail, and Qmail) vs. numerous standalone and less powerful tools, the BIND module vs. a few rather crummy free tools and a bunch of horribly overpriced proprietary systems, etc.

We’re fighting a battle of awareness, and bundling them up more is probably a negative in the long run.

Why not call Webmin Servmin instead? I mean how could someone not understand Server Admin crushed to look like Servmin ?

Usermin could be renamed to Mailmin !!

And Virtualmin could be called Hostmin.

There are lots of ways to call a program but Webmin has been around for eons and it’s well known as a SERVER front end not as a HOSTING one.

“large percentage of people don’t realize that Webmin has a really powerful database management module

I think its a psychological thing. I know webmin has been around for a long time and I know all of these apps are doing the right thing. But from an interface design standpoint it feels confusing to me and will probably feel confusing to my users. People dont know these great features are there because they are hard to find.

My main point: I think that if we were to step back and look at these apps from a purely ergonomic standpoint and, as an exercise, just forget about all of the technical / naming / module issues, then i think a lot of good could come from that. all of the gutts are there, so maybe the solution is an interface redesign. I know that would be a lot of work, but it would really take these great apps, that have a long, rich history and solid background, and add an ergonomic update that would really make the other overpriced control panels worry. People buy control panels for automation and to simplify there business.

Yes i am an idealist, but this should be taken as valuable feeback for the webmin crew, because I am coming into this app suite as a new non-objective user. Fresh eyes.

I understand the difference between webmin/usermin/virtualmin, but maybe the package really does become "SERVERmin pro" & "SERVERmin GPL". One install and thats it. If the user does not need virtualmin, they disable it or dont use it.

ALSO this is a bit off topic:
I have seen all of the info on why the virtualmin does not have a billing mod. And it makes sense, you guys are busy keeping all of the apps and packages in order. And I know some admins think billing is best left separate.

The question is "how much would it cost to hire you to write a billing app for virtualmin? I am in the process of integrating AWBS and worried about the "BS" part ;-> I know there is going to be problems. I really would like to know how much it would cost to get something useable going, because I think I could raise some money to sponsor you. People want it.

PS-- how do I set my forum preferences to email me when one of my posts gets a hit, so i can keep track of responses?

I think its a psychological thing. I know webmin has been around for a long time and I know all of these apps are doing the right thing. But from an interface design standpoint it feels confusing to me and will probably feel confusing to my users. People dont know these great features are there because they are hard to find.

And I think cramming more together will make them even harder to find! :wink:

But, I agree with you on the UI. There are some serious issues–far less than when we started the company a little over two years ago–but it’s still a complicated product and it intimidates new users (I don’t think it’s any more intimidating that our comparable competition, which is pretty much just cPanel and Plesk, but they have familiarity working for them, since they’re installed on more hosting systems than Virtualmin…though, interestingly, probably not more than Webmin).

Anyway, here’s what we’ve done to reduce complexity:

  1. Introduced “hide modules” functionality. Webmin has too many damned modules, so we can now hide the ones you don’t use. This gets rid of 20-30% of modules right off the bat. That’s 20-30% less wrong clicks a new user can possibly make. That’s a win.

  2. Introduced the Virtualmin framed theme with a left-hand menu. The menu provides an obvious entry point to Virtualmin. In the beginning, you had to find your way down into the Servers category and click Virtualmin to even begin doing hosting related tasks. This one made a huge difference.

  3. Categorization of menus. We’ve spent a lot of time working out sane categorizations for the left-hand menu, so that everything can be one click away, but the menu isn’t frighteningly huge. It’s still got too menu items visible, by default, and I’m working on that in the new AJAX theme. But it’s better than a year ago. We’ll do more of this, and we’ll continue to try to refine how things are laid out so that when you want to do something the option is right under your fingertips without having to think much. Categorization has also been applied to Server Templates and Module Configuration. Those are big bunches of options, and they are really scary even when categorized. We need to work on that some more.

  4. Removed stupid stuff. By default, we no longer offer the cPanel style sub-domain account type. cPanel users wanted Virtualmin to feel familiar, and so we created an account type that mirrored the cPanel sub-domain style. This really didn’t make a lot of sense in the Virtualmin accounts model, and it confused everybody that wasn’t really deeply familiar with cPanel. So, it’s gone (at least it’s invisible in a default Virtualmin Professional install, and it’ll be removed completely in about a year). There have been other nonsensical options that have gone away, but none so egregiously stupid as the sub-domain account type (which will haunt my dreams for the rest of my days). We will keep doing this, because Virtualmin has too many features and too many options.

  5. Search. Webmin now has a search function to help you find docs and options that might be what you want to do. It’s imperfect, but it’s a big step forward. When you have literally thousands of options in a product, no amount of moving things around and categorizing them is going to make everybody happy. There’s just too much there. We will continue to refine search, and integrate additional details (like more docs, and associating option names with their relevant help file so that search can be smarter). And, of course, it’ll be integrated into the UI better in the future…making search available within each module will be a useful addition, I think. So, if you know you need to do something in Postfix, you can search just in the Postfix module and help from within the Postfix page.

Now, what are we currently working on to make things better?

  1. Obvious paths. It’s still not entirely obvious how to do some common tasks in Virtualmin. This has improved, obviously, in the form of the left-hand menu, and some other refinements. But there are still a lot of questions that come up a lot that should be better served by the UI. I’m going to go through our FAQs, the forums, and the issue tracker, and try to identify the top five most popular questions…and fix those in the UI so that they never get asked again. Then we’ll do it again, and again, ad infinitum. We’ve done this informally from the beginning…but it should probably be an orchestrated effort to fix at least one common UI problem in every single Virtualmin release.

  2. Make help more obvious. There are hundreds of pages of documentation within the product and on our website. But, nobody uses them and nobody even knows the online help is there! Did you guys know that you can click on just about every option in Virtualmin and get a help popup about it? Yeah, most folks don’t realize it. Also, a lot of folks think the “Help” link in the upper corner of most Webmin modules is a general help–but it’s contextually useful help! That link changes whenever you change modules. So clicking it in the Postfix module brings you help about Postfix. We need to make it more apparent that help is usually actually relevant to what you’re trying to do–and if it isn’t, we consider it a bug and would like to know about it. Help also needs a lot of updating, and it needs translations to other languages. BTW-We always want help with translations of the modules and the help files–if you speak another language, you can get free software, T-shirts, and our undying gratitude by helping out with translations!

  3. Get rid of more stuff. We’ve deprecated at least two Webmin modules in the past year, and we’ll probably deprecate a few more in the coming year. Likewise in Virtualmin. There are lots of options that just serve to confuse people. We need to refine those such that only options that make sense are visible at any given time–this requires a major refactor of the Webmin configuration system, since it historically doesn’t deal with dependencies or anything complicated. For example, if Postfix is the chosen mail server, the options that relate only to qmail and sendmail should be invisible. Virtualmin has too many options.

  4. Make Usermin kick more ass. I won’t go into real detail on this one…but I have big plans for Usermin. If it kicks enough ass (and we tweak the mail portions so they can run under Apache and not require root privileges to install it), we can probably turn it into the standard webmail client. That’ll solve the familiarity problems. :wink:

Anyway, the UI is undergoing a massive overhaul as we speak. The new, in development, theme is a dramatic departure from the current UI in several areas (and it also looks awesome). I’m hoping to release it on June 5th (though everybody here knows how poorly I estimate remaining work to be done–but on this one I’m working extremely hard to make deadline).

As for billing: Right now, no amount of money can convince us. Our todo list is simply too long and we’re still just two guys. But, something will happen on the billing front in the near future. It won’t be a Virtualmin branded solution–but it will be a good solution to the billing problem for Virtualmin, both GPL and Professional.

I like the help links. The only thing that really needs help in that area are the variables that can be used in templates.

You only name a few when all should be there including the ones for DAV and google stats if they are installed and active.

I had to search the code for most of the ones that aren’t listed and I have tried to keep the wiki update for the new ones but they should be listed in the help links for any email sent out plus the server template variables.

As for the new UI – will you give certain users svn/cvs check out rights to test the beta stuff ? I always love a program that breaks and crashes LOL

One comment: Maybe combining things like the Webmin network config page with the virtualmin Addresses and Networking. Make stuff all on the same page. This type of thing could be done throughout…

For example I wanted to make a new shared virtualhost IP, so i went to Vmin but had to go back to Wmin to add the virtual interface. Think of it as ahemm… a windows control panel. See the attached image for a rough idea of what I am talking about.

I dont think usermin needs a name. Just a tab in Wmin/vmin that says mail.

The file tree layout (frames) is important! please keep it! Ergonomically they have been shown to make users feel more comfortable and feel like they know where they are at all times.

Great! new update coming soon! I look forward to it.

I am looking at buying AWBS but am afraid that it is going to suck. My other option is to write a billing app.

So If you can give me a tiny bit more info on the party who might be making a billing mod for Vmin I would be highly appreciative. As a matter of fact i would be willing to donate server space for beta testing on my dedicated box.

i would hate to pay to have something written and then some other solution comes out :->

image too big


Good grief…


For example I wanted to make a new shared virtualhost IP, so i went to Vmin but had to go back to Wmin to add the virtual interface. Think of it as ahemm.. a windows control panel. See the attached image for a rough idea of what I am talking about.

You’re doing it wrong. :wink:

You don’t need to ever see the Webmin Network Configuration module for virtual interfaces used by Virtualmin. Tell Virtualmin that it can create virtual network interfaces in the Module Configuration, and it’ll manage the interfaces for you.

The file tree layout (frames) is important! please keep it! Ergonomically they have been shown to make users feel more comfortable and feel like they know where they are at all times.

The tree style menu and the use of frames are orthogonal issues. When I refer to frames in our current theme I’m talking about the HTML frames we use to have two separate panes for the menu and the content. The tree remains in the new theme, but the frames are gone–and the tree actually gets better and smarter.

I dont think usermin needs a name. Just a tab in Wmin/vmin that says mail.

That makes no sense. The majority of Usermin users can’t login to Webmin/Virtualmin! :wink:

Webmin is for system administrators (including virtual server account holders)…if you’re just logging in for mail, you should be nowhere near a system administration tool. It’s kinda like logging in as root on a desktop Linux system to browse the web. Likewise, we recommend that people don’t use the same user for mail as they use for administering their system. We’re not enforcing this rule of thumb, but it’s a wise practice. These are completely different tasks…you don’t need to login to Virtualmin every day, but you do need to login to mail every day.

I see what you mean with usermin, makes sense.

But I do feel that the Vmin and Wmin network config, vhosts, shared IP creation, and change IP could be combined. And that is just one example. Thats kind of what I mean by just one app. All the apps could be combined and if you have a license you can activate vmin pro otherwise you have to use GPL or just turn it off. If a vhosts user or a normal user logs in they just dont see the webmin features that they are not supposed see.

::Actually:: What I am trying to say is that names of the app(s) are irrelevant because their uses overlap in there connections to each other.

In addition to web stuff, i also work in the architecture world (houses). When you combine uses it is always a more efficient design. For example: Leave the kitchen open to the livingroom. You dont need a wall there. Example 2) Is your dining table (eating) next to or in the kitchen (cooking) ?? OK, I may have gone off the deep end on that one…but think about it for a minute.

I will quit with the jabbering and wait for the update :slight_smile:

Any leads on the billing project? If not I think I am going to skip AWBS and just give my clients 2 free months. Might be a good thing.

PS. sorry about the duplicate posts, unable to "EDIT" after posting to this forum.