For quite some time I’ve had this MSN Group created, but never really got if off the ground. Well now I’m going to change that!! (I hope)
I started working on the MS Provisioning System group on MSN to better facilitate the community of people and organizations that are leveraging the Microsoft Provisioning System (MPS). So here is the URL:
I’ll use that community and this blog to better communicate with anyone out there that is interested in the application, using that application and has some questions, or someone just interested in the provisioning space.
It seems like just yesterday that I completed development of the Web Admin Tool. If memory serves me well, I complete the project the winter of 2000. I joined Microsoft in July of 1999 as a Technical Specialist within the Network Solutions Group (renamed to Network Service Providers and now Communications and Mobile Solutions Unit) in Redmond. My goal was to work with a team of Business Development Managers and provide them technical pre-sales support with their customers. The job was pretty fun. I got to work with a number of technologies and products and talk with a wide variety of people in a range of positions. Sometimes I would talk with the CEO or President of a company or talk with operational engineers.
While working within a team of other Technical Specialists (TS), it seemed that everyone had some sort of specialty. Some where extremely knowledgeable on a then growing protocol like Wireless Access Protocol (WAP). While others where co-creators of operational efficiency programs like Lights Out Operations. Prior to working for Microsoft I had a large amount of experience with Microsoft Site Server and the Microsoft Commercial Internet System. The Site Server Directory provided an LDAP interface that was programmable via the Active Directory Service Interface (ADSI). Leveraging that experience, I found myself gravitating to Active Directory which was soon to ship with Windows 2000 Server.
With my growing knowledge of Active Directory, I was now being asked to provide more Active Directory technical pre-sales work for many of our customers. So off I went to travel to customer locations and explain to them all the glories of Active Directory. Or that’s at least what I thought. Yes, Active Directory is a great Network Operation System (NOS) and Application Directory, but many of our customers just didn’t get the value in having Active Directory within their environments. Anyone that was hosting with Windows for services like web hosting and email, we deploying single dedicated servers and had them set for use within a workgroup. This meant that each server was a stand alone machine and thus had the potential for each administrator account to have their own passwords, various configurations and local policy settings, etc. This was also a big head ache for many customers, but they still couldn’t see how or why to deploy Active Directory. (More on this later)
One of my key pitches was the flexibly of Active Directory. ADSI provided a rich and flexible method of interacting and controlling Active Directory. I would explain how you could write a few lines of vbscript using the Windows Script Host (WSH) or Active Server Pages (ASP) to perform some common tasks within Active Directory. With the use of Security Groups and Access Control Lists on every object within Active Directory, you could use a single instance of Active Directory to host a number of customers and provide Delegated Administration to further reduce operational costs by allowing customers to service themselves.
Now I thought that was a strong pitch, but they always asked me the same questions. “Show me something that does what you’re talking about.” Remember, during this time we just shipped Windows 2000, so there wasn’t the plethora of code samples, demos or commercial applications that exist to day that I could use to answer their question. So I began to write some code in ASP and using ADSI to provide some samples as to what could be done. When I was developing the code, I was doing it in between customer visits. So I was doing it in airport terminal (before the great Wi-Fi Airports we have now), hotel rooms, long-boring meetings, and in the evenings. Every customer visit at that point I would show my samples when they asked the question. Each time they thought what I had was interesting and proved some points that answered part of their questions, but there were always more questions for which I didn’t have a sample for. So I would just keep plugging away. After a few months of this, I began to really see that this trend really showed a need in the market. Silly for me I didn’t try take advantage of this and start-up a company or something. Well with the dot-com crash and all, perhaps that was a good thing. Anyways, the samples that I was creating started to turn in to a small application. So I decided to show it to some friends and colleagues that I had in the Microsoft Consulting Services (MCS) practice. They really like the idea of the tool. With that validation I began to develop the tool with a set of design goals.
- Single Web User Interface for use by multiple roles (Service Provider Admin, Customer Admin, and End Users)
- Self Contained – No need for a SQL Database, Registry Keys, or other external stores. It was all Active Directory all of the time.
- Distributed Service Management – From a single Web UI, manage services and applications across a number or physical servers.
- Great Sample – Write the code in a modular fashion so that the code could be reused in a number of methods and provide lots of easy to read comments to help educate developers on ADSI.
- Great Demo – Provide a great demo for other Microsoft sales support staff, Microsoft Partners, and Microsoft customers that are trying to sell the idea internally to their managers.
With these design goals in hand (actually they were all in my head…I did a poor job in documenting what I was actually doing…lesson learned), I began to polish up the application and would soon show it to my upper management. I focused on a set of key scenarios that I thought were pretty important for customers.
- Provide Service Provider Administrators to sign on new customers, manage those customers and users, manage servers, and delegate administration to resellers (I must admit that the reseller model in WAT is a bit weak. I actually through that code in at the last minute, because I thought it was kind of cool).
- Provide Customer Administrators to manage their users and services, add on new services, and delegate administration to other users within their organizations
- Provider End Users with the ability to manage their own account (name, address, phone number, etc.), change their password, view their organizational information, and view their service information.
The entire development of the Web Admin Tool, which was the name I finally stuck with, took about 6 months, but there were only 2 months that I was able to finally focus on nothing but writing the application, testing it, documenting it, and then finally shipping it via a free web download.
(At the height of the Web Admin Tools success, I was even able to demo it for Bill Gates himself. The entire demo only lasted about 8 minutes, but it seemed to last forever. He asked a lot of questions and I felt like I responded very well. My only regret out of the meeting was that I didn’t push harder on the need to have an official product from Microsoft that did the same thing, but I’m trying a bit harder on that approach now.)
After I shipped the tool I knew I needed a place where I could communicate with those that downloaded to tool, so I chose to create an MSN Community (now named MSN Groups) to help support my efforts. The site was great, I thought, and it really helped me understand how people wanted to use the tool and what issues they ran into. I heard all of the bugs and issues and I even fixed them (version 1.0 was the first and only public release, but I have a version 1.01c that has all of the fixes for known bugs…still wondering if I should release it….any recommendations?). The community is still there, but there haven’t been many new discussions within the past year. I’m not surprised. I figured people took that code and grew it into something that better fits their business model, wrote new code altogether using .NET, or purchased a new commercial product. I’m actually really interested to hear (and perhaps see) if people are still using this code today somehow.
In another blog entry, I’ll discuss my efforts with the Microsoft Provisioning System and some of the cool work we’ve added to it and some ideas I have for future extensions to the system itself. I’d love to hear if others have some ideas that they’d like for us to put into the system.
If you are still using Web Admin, please let me know how you’re using it, what you like about it, what you’d like to see in a future release, etc.