Help Design the “Next Generation” Script Center


Hey, guys. I apologize for being absent for so long from this space, but this time of year it’s hard for me to find the time to do things like blogs. Now, that might sound a bit odd; after all, as a Microsoft Scripting Guy, isn’t it my job to do things like scripting blogs? Well, to tell you the truth, it’s not. People always say to me, “Man, what a great job you have, just sitting around writing about scripting all day.” And you know what: that is a great job; it’s just not my job. In reality, I don’t spend much time during the workday writing about scripting; I do other more … important … things. If I want to write a blog or do a Webcast, I pretty much have to put that stuff together at home. Now, I don’t mind doing that (well, not too much anyway) but because I coach baseball my evenings are pretty much booked between March and August. So expect the postings to be sporadic for the next few months. I’ll try to get something posted on a regular basis, but not only am I coaching, but I also volunteered to take care of standings and stats for our league as well.


 


(Well, actually, I didn’t volunteer, I just mentioned when I signed my son up that it would be nice if we kept the standings on the league Web site this year. Next thing I knew, I was conducting scorekeeping clinics and compiling stats and doing all sorts of stuff like that. I’m still not sure how that happened.)


 


I have a confession to make, though: even though I am posting something today, I’m also cheating a bit. That’s because I’m just posing a question rather than providing some any kind of scripting information. (You can always tell when bloggers are getting lazy, because they start saying things like, “I’d like to turn this blog over to you, the readers, for awhile.”) As I think I mentioned awhile back, while we are generally pleased with the TechNet Script Center we’ve also been somewhat disappointed in the fact that the Script Center has not evolved along with the interest in scripting. In fact, the Script Center hasn’t evolved at all; it’s basically in the exact same shape it was 100 years ago (albeit with about twice the number of scripts we started with). And that’s a problem. For example, we have over 1,200 new scripts we’d like to add (as a point of reference, we have a little over 900 scripts there right now). These scripts run the gamut: IIS scripts, Virtual Server scripts, a few Exchange scripts, Services for Unix scripts, etc. So why don’t we add them? Well, up until now, the categories for the Script Center have been writ in stone; we have not been allowed to create new categories, and have been required to file new scripts under those existing categories. Based on that, most of our 1,200 new scripts would have to be unceremoniously dumped into the Computer Management node. That sounded like a usability/discoverability nightmare, and so we have been reluctant to do anything with the new scripts.


 


But now, after over a year of negotiating, we have been given the right to do the Script Center ourselves. That means we can change existing categories, create new categories, delete old categories that don’t make much sense. It also means we can create a dynamic home page, we can “advertise” things like Webcasts, we can post content quickly and easily, we might (and I emphasize the word might) even be allowed to post scripts submitted by – gasp! – non-Microsoft people. It’s gonna take us awhile to learn the ropes of self-publishing on Microsoft.com, but we think it will eventually be cool. Way cool.


 


So here’s the question I wanted to pose: what do you think we should do to the Script Center? We have some ideas, but we’d like to hear what people who actually use the Script Center have to say. What would you like to see? What wouldn’t you like to see? Give us your wish list. Obviously there’s no guarantee that we can, will, or will be allowed to do the things on your list, but, hey, who knows; after all, about a year ago we were told that there was zero chance we’d ever be allowed to actually manage the Script Center ourselves. Who’da thunk it?


 


Anyway, if you have ideas for the Script Center and if you have ideas for helping us create a true scripting community, either post them here, or email scripter@microsoft.com. Thanks, guys!


 


And now if you’ll excuse me, I’ve got to start thinking about the lineup for Saturday.


 


Comments (22)

  1. Dylan Greene says:

    Ouch… I didn’t even know there was script center. Why aren’t there links on MSDN? When I’m reading the reference to how something works, why isn’t there an automatic "See it in action…" link to appropriate scripts in the Script Center?

  2. bfap says:

    First of all you do need a link on msdn home page.

    Second make it function(not look) like this site http://regexlib.com/REDetails.aspx?regexp_id=333.

    This site allow you to leave comments on the page and where you can discuss the code and actuall show ways the sample scrpt can be improved.

  3. Tarjei T. Jensen says:

    I wondered a bit about the structure since there was a lot of stuff that sort of was lumped together.

    I hope the new scriptcenter will be there shortly, because I know at least one person who might have use for the examples on exchange.

    I’m very much looking forward to the new script center.

    As far as writing this blog is concerned: sleeping is overrated. Fill your nights with meaning and write more here :-)

    greetings,

  4. An updated Script Center? There is a God! After thinking long and hard about what I would change….

    1. Create a link to the reference site on MSDN for the VBS methods

    2. More examples of full-blown enterprise scripts

    3. More Exchange scripts and ADSI scripts (other than to create single users. maybe to search all users and update the fields).

    The ability to submit scripts would be great! I know I have a collection of about 40 scripts personally, and I am sure others could benefit from the methods I have written…

    It doesn’t really matter too much too me HOW thay are organized, so long as I can search them for keywords. Something like Technet maybe where the scripts have keywords attached?

  5. Chris S. says:

    I really am glad I found this blog. I’ve been finding all sorts of information that, up until now, has always been so obscure. That goes for the Scripting Center as well.

    Perhaps the reason I never found it before was because most of my scripting revolves around application development, and not system administration which seems to be the focus of the scripting center.

    In any case, one thing that I think would be particularly helpful (although, I may be a minority in this area) would be to add white space to your script examples.

    Having all the script smooshed together like that can actually make it very difficult (for me) to read and get the hang of what is going on. This is particularly because so many of the lines of script wrap to the next line. If you were to add a blank line after these lines it would certainly help me out.

    example

    ‘————————–

    strComputer = "."

    Set objWMIService = GetObject("winmgmts:" _

    & "{impersonationLevel=impersonate}!\" & strComputer & "rootcimv2")

    Set colFolders = objWMIService.ExecQuery _

    ("Select * from Win32_Directory where name = ‘c:\Scripts’")

    For Each objFolder in colFolders

    errResults = objFolder.Compress

    Wscript.Echo errResults

    Next

    ‘————————–

    could be written

    ‘————————–

    strComputer = "."

    Set objWMIService = GetObject("winmgmts:" _

    & "{impersonationLevel=impersonate}!\" & strComputer & "rootcimv2")

    Set colFolders = objWMIService.ExecQuery _

    ("Select * from Win32_Directory where name = ‘c:\Scripts’")

    For Each objFolder in colFolders

    errResults = objFolder.Compress

    Wscript.Echo errResults

    Next

    ‘————————–

    And would be much easier to read.

    I like the idea about being able to discuss the code as mentioned by "bfap" earlier as well. Maybe some sort of wiki concept could be implemented.

  6. Tony Hinkle says:

    Make a reference of references (and keep it current)!

    When I first started scripting, one big hurdle was finding the references for various objects. The File System Object is in one place, the WSH reference is in another place, the WMI reference is somewhere else, the cluster automation obejct reference is buried elsewhere, etc. There are a number of other objects as well (IE, Office applications, Exchange Server, etc.).

    <li><a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/mscs/mscs/cluster_automation_server_reference.asp">Cluster Server Automation Reference</a></li>

    <li><a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/fsooriScriptingRun-TimeReference.asp">FileSystem Object Reference</a></li>

    <li><a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/vbscripttoc.asp">VBScript Reference</a></li>

    <li><a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/wsoriWSHLanguageReference.asp">WSH Reference</a></li>

    <li><a href="http://msdn.microsoft.com/library/en-us/wmisdk/wmi/wmi_reference.asp">WMI Reference</a>

  7. JF says:

    The Script Center is great and a good way to combat "Windows isn’t scriptable" prejudices out there, but too bad it isn’t advertised my MS at all. Kudos!

    Nice features to see on the Script Center in the future:

    * Ability to search for sample scripts by keyword and filter the list by script language. Keywords can be in the body of the script, of course, but scripts could be edited to have a easy-to-parse comment which listed likely-to-be-searched words. For example, a script for changing passwords on accounts in AD might have a comment at the top like this:

    ‘Keywords: password, reset, Active Directory, AD, SAM

    * More security and auditing scripts!!! For example, scripts to search logs, detect changes, kill trojans, update virus definitions, install certificates, trigger automatic updates, apply INF security templates, etc.

    * Be more like the great documentation on important VBScript objects like at http://www.devguru.com/Technologies/vbscript/quickref/objects.html

    * Have links to the other great scripting-related websites out there. This makes the Script Center the "first place to go". Especially good are links to other script libraries/repositories.

    * Have one big Zip file of all the sample scripts, organized into folders by task/concept.

    * Have a "What’s New?" area so we can be aware of developments and future plans, e.g., is VBScript or the WSH going away when Monad comes? are there future plans for better custom class support in VBScript? are new versions of major interfaces (WMI, ADSI, CDO, etc.) coming out soon?

    * Links to Google Groups for WSH, VBScript, JScript, etc.

    * Links or scripts about scripting Excel, Access, ISA Server 2004, and other MS products.

    * A "Known Bugs" list, or pre-cooked search for KB articles related to WSH issues.

    * Allowing others to upload their own scripts would be great! Have a blog or discussion list to go with it (perhaps with each script, as a prior poster recommended). I know MS will worry about liability issues, but you can have all sorts of painfully-long agreements/disclaimers and so on to disavow any guarantees. This issue is important because it will combat another anti-Windows prejudice out there that MS is not community-oriented, will not tolerate even the slightest bit of criticism if it affects THE CORPORATE IMAGE, is just a bland corporate giant without personalities (besides Bill), etc. The Perl/Linux scripting communities out there are very active and supportive, but the Script Center could be just as good or better for VBScript/JScript/WSH on Windows. The fun and personable articles written by The Scripting Guys set the right tone for this kind of community to develop (and is breath of fresh air on an otherwise sterile MSDN landscape).

    My Two Cents,

    JF

  8. Glen says:

    Its a shame to hear that you hold back so many scripts. The script center is very usefull as is but would be a lot better with more scripts. Most times when im scripting and hit a problem i’ll google whatever i’m having problems with and this doesn’t usually yeild that many hits on the script center. So a well indexed search engine would be much appreciated. Most SDK’s could also do with a lot more scripting examples.

  9. JF says:

    Here’s another item for the Script Center: anything at all about "Monad" (MSH.EXE), the new .NET-enabled command shell replacement for CMD.EXE. Here’s a link about it:

    http://tfl09.blogspot.com/2003_11_01_tfl09_archive.html#106769921834716276

    In that page above is a link to a PPT slideshow about Monad given at

    PDC 2003.

    This brings up another important issue, perhaps for it own top-level thread in this blog, and that is: what is going to happen to WSH when Monad comes out?

    I’ve also heard rumors that MS is not going to develop/enhance either the WSH or VBScript beyond what they are today. Is this true? If not, when’s the next WSH coming out and what will be new for VBScript when it does? (Thanks!)

  10. Dan Richardson says:

    I’m thinking that a searchable database of scripts would seriously enhance the scripting center. Take a look at the code repository database available at myitforum.com. It makes things very findable while having thousands of scripts available.

  11. Alex Angelopoulos says:

    I like most of the feedback I’ve seen above. I have 3 general wishes/suggestions; some may not be appropriate in the script center per se though.

    (1) Easier search. MSDN and TechNet are dog-slow due to the content trees and redirects for dialup browsing. It’s difficult to Google content specifically on the script center as well. Full-text indexing of articles and scripts would be great; an even NICER idea would be if you could get a virtual server address: scripting.microsoft.com. This allows old fogies like me to easily do searches via Google. :)

    (2) Componentization

    You’ve done a bit of this, but it would be nice if some of the scripting center work was focused on developing tools as components to be easily plugged in: well-designed functions and templates, as well as standard WSCs. The idea here is giving scripters tools to help them script better. Are they ready for it in general? Maybe…

    (3) Teaching Concepts

    You already do this. More would be better, although writing about how to do things is an often thankless task; the more you try to do, the more people will complain about your not covering X or Y or Z, or not doing it their way. Classic example, the Eric Lippert "password rescue" operation. Unfortunately, unlike Eric, other people aren’t always helpful about better ways to do things. This might be a good thing to do in… hey… a blog!

    (4) Participatory Development

    Scripting is the ultimate in open development. Component development with critiquing would be pretty cool to do; I keep finding irritating little things in your code I would love to nudge (and Dean T. keeps finding them in mine, but he’s too polite to say it thank goodness :>> ).

    That said, even if you don’t do much to change things, the Script Center as you’ve developed it has been an incredible resource. As just one example, Scriptomatic is probably the most widely used script extension tool ever; and digging through the center as-is always provides some handy ideas and new directions. Thanks, it’s been a good 100 years. 😉

  12. Bob Riemersma says:

    I had the idea that "Script Center" was aimed more at admininstrators than developers. I assumed that was why it isn’t as prominent at MSDN as elsewhere.

    Since it is primarily a TechNet service it all makes perfect sense.

    Maybe the question we (at least some of us) should be asking is "Why isn’t there more scripting coverage for developers?"

    The answer may be twofold:

    Third party web sites provide a lot of application scripting coverage already, but really did not cover the "TechNet audience" needs in as thorough or coordinated a manner.

    Microsoft doesn’t really see these legacy scripting technologies as appropriate for applications. Inside Redmond people may live in a ".Net Uber Alles" environment today. That isn’t a criticism but more of an observation that many of us live in a world Microsoft probably sees as the past.

    The .Net Visual Studio for Applications seems to leave most people cold for some reason. I’m guessing this is due to a lack of marketing, improperly targeted marketing, and a generally confused message. The cost of deploying and versioning the Framework is a headache too: you can’t even come close to expecting a target platform has the Framework at all, let alone the version you need.

    But this is all sort of off-topic when we discuss the Script Center.

    I’ll be interested to see what sort of reception MSH.EXE gets. The admin types I work with were at once impressed and totally freaked out. The power was appreciated. The "complexity" had them running for the door. Yet how many organizations will assign and task even a small development team with meeting the script development needs of admin groups? These poor guys and gals are left to glean what they can from places like the Script Center, and then "cargo cult" slash away attempting to customize things to meet their own needs.

    Microsoft could help the TechNet crowd a lot by encouraging the concept of an "operational analyst" to handle these tasks. I don’t think most IT organizations perceive the need. Then something like Slammer or xDoom.y hits hard, and IT management screams about a lack of patch deployment. Joe TechNet out here meantime hasn’t even heard of simple tools like SUS, and has even less idea where to start getting them in place and operational. A lot of admins are challenged enough just managing AD, Exchange, and their disk farms. And you don’t want to see what sorts of things the typical DBA or webmaster lets slide on his boxes. As the issues proliferate the need for specialization grows. I think we ask an awful lot of platform admins.

  13. Tarjei T. Jensen says:

    > I’ve also heard rumors that MS is not going to

    > develop/enhance either the WSH or VBScript

    > beyond what they are today. Is this true? If

    > not, when’s the next WSH coming out and

    > what will be new for VBScript when it does?

    This is the way Microsoft works. They start off with a lot of potentially useful stuff, but never completes. Once the stuff is out the doors they find something more interesting to do. Then they spend the time finding new cool way of doing whatever we did last year. There seems to be no effort trying to enable us to do more with the existing tools on existing systems.

    This means that we get new scripting technologies every few years. New stuff to learn. In addition, the new stuff will probably only work on the new Operating Systems, so since we have all the ancient stuff we will never be able to leverage the newest. Not that it matters anyway, because the new stuff will have some glaring holes for us system administrators. But that will not deter MS. After a few years there will be yet another scripting language out.

    My message to Microsoft is: I don’t want new ways of doing what I do now. I want to be able to do more with what I have now.

    An example of this apart from scripting is Word. There seems to have been no attempt at improving the word objects since the release of Office 97. Programming in word seems to consist of finding workarounds.

    I also have a feeling that Microsoft really does not understand documentation. I belive this might stem from them always having people around who KNOWS. So all they need is a list of what is available. This is of course terrible for those of us who are trying to use Microsoft documentation to learn.

    greetings,

  14. from lithuania says:

    I know that generation script is really good but I don’t know where I can download it from.Can you help me?

  15. from lithuania says:

    please help me!!

  16. 仪表 says:

    I’m thinking that a searchable database of scripts would seriously enhance the scripting center. Take a look at the code repository database available at myitforum.com. It makes things very findable while having thousands of scripts available.