Thursday, December 20, 2007

As many of my friends know, I collect Jerry Garcia and Grateful Dead live shows. I've got just over 1060 live Dead shows, and just under 400 Jerry Garcia shows. Several thousand hours of great music (plus it has to be said, many hours of not so good music - not every show was good!).

I have access to a private bit torrent site, Jerome's Place which shares this music to a small fanatical fraternity of dead heads. The site is looking for some new users, and I've just been provided some invites. If you are a trusthworthy Dead or Jerry fan, have reasonable bandwidth and want access to this treasure trove, send me an email. 'll happily pass one your way as long as the invites last!

[Later - August 2009]

Sadly, Jerome's Place has gone to join Jerry in that great music site in the sky and is no more. I've still got the music I've downloaded from that site, so if you want a copy, contact me and we can work something out.

Tuesday, December 18, 2007

Admittedly, the URL http://technet.microsoft.com/en-us/library/bb978526.aspx does not readily roll off the tongue. So PowerShell users should book mark this page. Microsoft has just updated the TechNet site with the full PowerShell help files. Better yet, these are the latest updates and include fixes, etc. Thanks to superstar June Blender for getting this done.

If the help isn't clear enough for you, use the feedback mechanism to leave a comment. I'm sure these will be actioned as quickly as possible!

As John notes in a recent blog article, Microsoft has replaced the web page with something a whole lot better - the hot fixes are now linked directly from the KB article page - something long overdue IMHO!

Thursday, December 13, 2007

In a pre-christmas peice of generousity, Microsoft has released Windows Server 2008 RC1 to the general public. See the Microsoft web site to download the code and to get a license key.
The software is a 30-day evaluation version, but you can get a key for a longer evaluation period.

Wednesday, December 05, 2007

Microsoft has agreed to modify it's much reviled anti-piracy scheme. As noted on Mary Jo's blog, Microsoft has is to modify Windows Genuine Advantage scheme to drop the "reduced functionality mode". At last, Redmond is seeing sense over this! Mary Jo goes on to say "Microsoft will introduce the changes to future test builds of Windows SP 1 before the final version is released in the first quarter of 2008. Ditto with Windows Server 2008 — the current Windows Server 2008 test builds do not include the WGA changes, but some future builds will."

Monday, December 03, 2007

Just got the final confirmation through today - I'm heading off to Orlando on Saturday to attend the OCS Voice Ignite event that I wrote about recently. I hit Orlando late on Saturday night, with a day to hang out with the Global Knowledge crew (and hopefully some rest) before 5 days of deep, deep technical OCS voice stuff. I've started looking at the labs - I can't wait.

I'm booked to help the team re-deliver this in Barcelona (I suspect I'll be a lab rat or similar). And I may also be Australia bound to help re-deliver parts of this seminar in Sydney. So it looks like some fun travel coming up soon!

A swiki is a "custom social search portal on a topic of your choice", says Eurekster.com. In effect, a swiki is a widget you put into a web page and chose the topics that you are interested in. Eurekster then creates a tag cloud based on the tags you supply. What's nice is that as others use your swiki, they can vote on certain search hits, to help the gadget generates more and more relevant content.

I've been playing around with this and have created a PowerShell-Stuff swiki, and have placed it onto this blog. I've also put an OCS-Stuff swiki over on my corporate blog. are these useful/interesting/helpful??

Thursday, November 29, 2007

While there's not much time left, Microsoft's just posted a pretty cool TechNet Plus Subscription Offer. For a very limited time, you can pick up a 1-year subscription to TechNet Plus for US$279.

Sadly, although I saw this in the UK flash, it looks like this offer is US only. :-( Hey Microsoft - that's poor. I hate that MS send me an offer in email that I can't actually use. It might be a nice touch, given the crazy exchange rate MS software is sold at here in UK (i.e. nearer 1$=1£, versus $2.05 to the £ that the FEX is offering). But I digress. TechNet Plus is a great product for IT pros, even at the inflated prices in the UK.

With the holiday season ahead of us, things happening in the new year seem very far away. However, commencing in mid-February 2008, Microsoft is bringing us the 2008 Scripting Games. I suppose that if you have to ask what the scripting games are, then you’ve obviously been missing out over the last two years. Oh - and apparently it's not just about PowerShell!

The Scripting Games are a chance to practice and test your scripting skills. The Games are live: contestants submit entries that are judged and scored. You’ll be eligible to win prizes based on simply entering, or based on your score.

The Scripting Games run from 15 Feb 2008 through 3 March 2008, so put those dates into your diary now!

Tuesday, November 20, 2007

The first of "the big 3" to actually be released (along with SQL Server 2008 and Windows Server 2008) - Redmond Mag reports that Microsoft Releases Visual Studio 2008. I know what I'll be doing over the next couple of days!

Wednesday, November 14, 2007

Server virtulisation is something that's getting lots of attention - many good reasons for dong it. But Server virtulisation is only in it's infancy, and is only a part of the overall Virtulisation story. This includes presentation virtulisation (e.g. terminal server/citrix), and application virtulisation (eg SoftGrid). MS said that they've sold 3m seats of SoftGrid in past 2 quarters!

Simon made the point is that the virtulisation market is still fairly new. He also noted the importance of supporting Linux in terms of virtulisation - and management is important. He went on to discuss the integration of Xen and Citrix - and re-itereated Citrix's support of the Windows platform ("We have no OS agenda"). Interoperability continues to be a key aspect of their products.

Vista centralised desktop - hosted desktop run in the data centre, remoted to a thin client

Application virtulisation (i.e. SoftGrid).

Mike spoke about desktop (VPC) virtulisation. He said that MS sill value VPC. I raised the issue of missing feature (e.g multiple CPUs, USB support, 64-bit support). These are very important to us. Mike acknowledged the concerns but made no commitment to providing those missing features.

Mike also discussed Hyper-V vs VMware. He talked about the benefits of open APIs, a large partner ecosystem along with the management tools. With VMware, the panel suggested, you are left with VMware and little else - there is not any sort of robust eco-system. MS, on the other hand, has a richer partner model. Simon suggested that the introduction of choice (i.e. Hyper-V) will help the market mature. Larry pointed out the importance of good management tools (i.e. System Center).

Monday, November 12, 2007

Today is the first day of TechEd-IT Form and as usual,there's a keynote. And as usual, there were loads of demos (most worked). And in a change form last year, the session finished on time!

Microsoft used the keynote to make a number of key product announcements. These include:

Windows Server 2008

Hypervisor naming. Viridian was the code name - now it's officially named Microsoft Hyper-V. A stand alone server for virtulisation was also announced as Hyper-V Server.

Dates for release of WS08 are still "WS08 in Q1 2008 with Hyper-V 180 days later!

MS is to release 8 Ws08 SKUs. Three of these come with Hyper-v built in, five don't. "This gives users lots of choice" said the MS person! The three SKUs with Hyper-V are : Enterprise, Standard Edition, Data Centre edition. The five that ship without Hyper-V: Standard Edition Without Hyper-V, Enterprise Edition without Hyper-V, DC without Hyper-V, Web, and Itanium Edition.

Pricing and licensing was also released. Costs are roughly 1 more than for Windows Server 2003! The difference in cost between the Hyper-V and non-Hyper-V systems is US$28!

At RTM, the Hyper-V beta bits will ship in the box. Hype-V RTM bits then ship 6 months later via Windows Update

Virtulisation Validation program - helps to ensure virtulisation works

VM Manager (a future version) will also support both Hyper-V VMs and VMware VMs! This means you can manage ESX servers from Windows.

SQL

Release to be in 2nd quarter of 2008.

New SQL Server CTP - November CTP. This is to be the penultimate CTP prior to release.

Vista

Formal announcement of the beta of next release of application virtulisation approach (the stuff bought in from Softtricity and available only to volume license customers). Version 4.5 beta should be up on Connect.

I'm here in nearly Sunny Barcelona for TechEd-IT Forum, Microsoft's travelling technology show. I find TechEd a great time to sit back, relax and take stock of things. This is a chance to reflect on what's new and exciting and look forward to see how these technologies might unfold over the coming year(s). In the days of being a freelancer, I also used TechEd to work out what would keep me in work for the coming year.

Unlike in previous years, the Keynote is not until 14:00 on the first day. I suppose this gives folks a chance to get here from the rest of Europe and avoid the Sunday night stay, but it means not much is happening thus far. The press office is unusually quiet!

This year's keynote is being delivered by Bob Kelly, a Corporate Vice President in charge of Infrastructure Server Marketing. I've not heard him speak or seen his speech yet, but with a title like that, I suspect the talk will concentrate on Server 2008. I sure hope he keeps the talk marginally marketing free and concentrates on the IT Pro's view of the product. I also really hope he starts, and finishes on time! I'll report back after the session.

Unlike in previous years, the Keynote is not until 14:00 on the first day. I suppose this gives folks a chance to get here from the rest of Europe and avoid the Sunday night stay, but it means not much is happening thus far.

In most cases, that's good enough - you can see the file size is 2008 bytes long. But suppose you wanted to know how big the file was in GB, or to print it out in a nicely formatted layout. Using some of PowerShell's .NET underpinnings, this turns out to be easy to achieve with what .NET calls Composite Formatting.

With composite formatting, you get PowerShell to format one or more values as a pretty string, and insert this string (or strings) into a into a string known formally as a composite formatting string. The composite format string contains any text you specify, along one one or more place holders, known as format items. PowerShell creates a result string that has the original text you specified along with string representations of the objects in the list.

An example composite format string might be:

"This is stuff{0} and more {1} stuff and more {2}"

This format string has three place holders. If you use PowerShell's -F string operator you can get PowerShell to format this string with some values, as follows:

"This is stuff{0} and more {1} stuff and more {2}"-f ",", "really cool", "excellent stuff"

What PowerShell does is to take the values to the right of the -f operator, and place them into the string as indicated by the placeholders {0}, {1}. and {2}. The first variable to the right is places into {0}, the second into {1}, and the third into {2}, with the result of:

This is stuff, and more really cool stuff and more excellent stuff

The format of the placeholders, however, can be more complex than just a simple index into the array of variables. The full syntax of the placeholder is:

{index[,alignment][:formatString]}

This allows you allows you to right and left justify the value into a fixed length number of characters, as well as to use the format string to format dates, phone numbers, etc.

Rather than drone on, here is a demo script I've knocked up to demonstrate the formatting capabilities of PowerShell.

NB: This script needs Version 2 of PowerShell (although most of the features work OK in V2).

[82]PS D:\foo > # right aligned string[83]PS D:\foo > 0..15 | % {"`+$str {0,10}`+" -f $_}+This is number 0++This is number 1++This is number 2++This is number 3++This is number 4++This is number 5++This is number 6++This is number 7++This is number 8++This is number 9++This is number 10++This is number 11++This is number 12++This is number 13++This is number 14++This is number 15+

[84]PS D:\foo > # Left Aligned string[85]PS D:\foo > 0..15 | % {"`+$Str {0,-10}`+" -f $_}+This is number 0 ++This is number 1 ++This is number 2 ++This is number 3 ++This is number 4 ++This is number 5 ++This is number 6 ++This is number 7 ++This is number 8 ++This is number 9 ++This is number 10 ++This is number 11 ++This is number 12 ++This is number 13 ++This is number 14 ++This is number 15 +

Friday, November 09, 2007

Over on the Windows Server Division WebLog, there's an article entitled Windows Server 2008 and Windows SharePoint Services 3.0 Update. Despite the innocuous headline, the contents reveals that Windows SharePoint is being dropped as an 'in the box' component. I find this very disappointing. But to quote Jeffrey Snover, "to ship is to choose" and I guess WSS is not ready for release yet and so has been dropped.

The claim that MS dropped this feature "to allow customers to most conveniently obtain the technology" as suggested on the blog seems somewhat wide of the mark. The most convenient way is to include the technology in the box (ala PowerShell), not make users find some web site somewhere. Presumably WSS 3.0 was just not ready.

Out-GridView is new cmdlet in PowerShell V2 CTP. The cmdlet takes the output of the pipeline and opens a new window to present the data. This windows is a simple grid, with Columns that can be sorted.

For example,

get-process |select name,handlecount,vm,pm |out-gridview

This simple statement gets the processes, removes all but a few properties, and pipes that to out-grid-view. This creates a separate window, like this:

Some neat things - first each of the column headings can be clicked to re-sort the output based on that column. You can also type in some characters at the top to find a subset of the rows, like this, where I type "exp" and find all the processes whose name contains "exp":

I had an interesting comment on this blog recently based on an older blog article. The question was around the Public Internet Connectivity licenses and whether they were still available. I checked with some great folks in Redmond and got a pretty clear answer: PIC is still alive and is being sold. Rumours of its demise seem premature and/or in error. Hope the helps.

This .chm is just the same info as in other PowerShell help files, just wrapped in a more friendly CHM wrapper. This CHM file is actually the same Windows PowerShell help file that you’ve come to know and love plus some addons. The Microsoft Scripting Guys wrapped the PowerShell help files into a more user-friendly (and fully-searchable) format and added some stuff. In the CHM you’ll find:

Windows PowerShell cmdlet help for all cmdlets.

Windows PowerShell “About” files (all of them)

The Script Center’s VBScript to Windows PowerShell Conversion Guide. Help for the VBS dudes converting into the light.

Wednesday, November 07, 2007

In a blog post yesterday, I talked about the new background job feature in PowerShell Version 2 CTP. One thing I did not entirely appreciate till today (and it should be blindingly obvious), a PSJob produces objects just like any other cmdlet. That means if your the background script produces objects of any kind, the Receive-PSJob cmdlet can retrieve them for manipulation locally. As should be obvious the remoting feature of PowerShell V2 works the same way (you remote a script to a system and get back objects).

This is really pretty cool!! You get the PSjobs to run and collect objects and then analyze them locally/remotely. There are some things missing from this CTP, like no NEW-PSJOB, and the input to Receive-PSJob is a job object, not the job-object's id. This means Get-Psjob 9 would return the job noted in the above example, but Receive-PSJob 9 does not (yet) work.

Another point - the objects returned are de-serialized objects, thus you only get their properties - there is no direct way I can see to return the methods (although I'm sure someone will figure it out). So while you can stop or start a process using the objects returned from get-process, the deserialised objects returned from PS job don't have those methods to call. I'm not sure if this is a good thing or not . But I'd bet that rehydrating live objects across a network is non-trivial!

Tuesday, November 06, 2007

PowerShell v 2.0 introduces the concept of a background job. Implemented as a PsJob, a job runs a command or expression asynchronously and "in the background" without interacting with the console. Jobs are started by the Start-PSJob command. You can run these background jobs on a local or remote computer.You can check he status of the job by using Get-PSJob (or by getting the job and using the job's JobStateInfo property).

The PSJob features rely on the new remoting features of PowerShell V2, which is one reason why you have to load WinRM prior to installing PowerShell V2.

Here is a demonstration of the background jobs feature. I've taken a leaf from Jeffrey Snover's book and have used his demo-script and have created txt files with the demos. Here's my starting job demo:

There's a bunch of new features in PowerShell V2 - although some will change and some of the things in the CTP may even be dropped. That's the nature of CTPs! A good place to start is to read the release notes that describe the new features and show worked examples.

Here's my list of key new stuff in PowerShell V2:

Remoting - PowerShell now includes support for executing cmdlets and scripts on remote systems using WinRM. COOL!!!!

Background jobs - PowerShell V2 now has the concept of background jobs that you can spawn and monitor.

Script Cmdlets to enable you to write rich cmdlets in PowerShell. In PowerShell V1, you could write functions that sort of felt like cmdlets. With V2, you can now write fully fledged cmdlets using just script which is very cool!!!

Stepable pipelines - a neat feature to enable you to control the execution of the pipeline.

There are some release notes there too - these are good reading. And while I realise most folks will not want to RTFM, this time it's pretty useful. And there's a draft SDK. The documentation is really very good!

Saturday, November 03, 2007

VERY COOL -- V2 PowerShell CTP is shipping to the web very shortly. There are some incredibly neat components of V2. Some are aimed at ISVs and more advanced users. There are also some darn useful other stuff that I really am enjoying too. I have it running here and it's very stable. I'll let Kenneth and the PowerShell team spill the details, but this is a very useful update. PowerShell V2 ROCKS!!

As an aside, this CTP represents the PowerShell team's efforts, a year after V1 was released. A lot of neat technology but some unfinished work too. Of course this is to be expected, but it means that this release comes with a warning clearly spelt out on the PowerShell team's blog: CTP != BETA !. I expect many things will change between now and RTM (whenever that happens).

One interesting aspect of the CTP and PowerShell V2, it's a replacement for PowerShell V1, and not a side-by-side install. So far as I can tell, everything I can do in V1 (in terms of demos in classes, etc) works just with the CTP. Well so far!! This also means that .ps1 files run with PowerShell Version 2. This could get confusing. Well it could have had the team not thought ahead. As Jeffrey Snover describes in a blog entry (Versioning), you can code around this. Just begin your scripts with a #Requires directive! For example:

#REQUIRES -Version 2
"In script that requires PowerShell Version 2"

If you run this on a system which does not have V2 yet (like most of you reading this now!) will get a message:

PSH [D:\foo]: .\v2.ps1
The script 'v2.ps1' cannot be run because it contained a "#requires" statement at line 1 for Windows PowerShell version
2.0. This does not match the currently running PowerShell Version 1.0.
At line:1 char:9
+ .\v2.ps1 <<<<

Now that shows someone really thought ahead - a very nice touch. And I so much want to say a lot more about this release!

Thursday, November 01, 2007

This is an interesting mashup - basically the WikipediaVision page displays a Google map of the world and shows where updates are coming from, in near real time. A fascinating view of how Wikipedia is being updated - you quickly realise just how much global updating is going on - totally fascinating.

This is, for me most useful as it shows how to do this interop and explains many aspects of the Nortel products, including more details on the ICA solution. I am looking forward to working more with the Nortel and the ICA tools in some upcoming work.

Saturday, October 27, 2007

Special Operations software has just announced SpecOps Command: PowerShell Remoting through Group Policy. I was lucky enough to see a neat demo last week while in Stockholm - this is a neat tool. As I understand it, it'll be formally released at TechEd in Barcelona.

Basically, SpecOps uses group policy to send out scripts, cmdlets and (I assume providers) to client systems. These scripts are then run on the target machine (one, daily, weekly, etc) and the results returned back to a central server. A very very neat solution to the lack of remoting in PowerShell V1. And even when we get V2 (a preview edition of V2 will be available in Barcelona), GP may be a better option due to permissions on the local systems.

I can't wait to get my hands on this code! Yet another aspect of the power of the PowerShell community - when there are gaps, someone or some organisation will just fill them. PowerShell rocks - and so does SpecOps Command.

Saturday, October 20, 2007

As noted in over in my work blog, I'm starting to teach PowerShell in Europe. My first classes are this week in Stockholm and in Copenhagen. I'm delivering the two day PowerShell Fundamentals class in both cities. To say the least, I'm really excited to finally being able to run real PowerShell training for our customers.

In the background, Microsoft has engaged a vendor to create a formal MOC class on PowerShell, but we'll not see this till next June. In the mean time, if you want PowerShell training in Europe, feel free to contact me and I'll put you in touch with the local office. And wherever possible, I'm happy to come to teach these classes.

Monday, October 15, 2007

One of the big questions many commentators are posing is just how much deployment is happening with Vista. Forget the MS statements around adoption - what is really happening. From where I sit, adoption is not as rosy as MS would want us to belive - and like many I'm no longer using Vista on front line systems as I've gone back to XP. Over on the Hackers blog, Alex reports Random: Some Vista adoption numbers. These show that Vista is in use by only 10% of their web site users, and less than1% of the users of CounterSpy. These numbers feel a little bit lower than the MS VIsta Hype Machine would lead us to believe.

Unfortunately, as one reader has pointed out in a comment to this blog entry, it appears that the latest beta of Live Writer does not work on x64 systems which is a pretty significant omission. Thanks to Chris Randall for pointing this out - I missed it since I am still mainly using i386 systems.

Friday, October 12, 2007

Gizmodo is reporting that First-Gen Zunes Are To Get All The New Zune 2 features (for free!!). The post goes on to suggest that "This is How You Treat Your Customers". I agree completely!! Having ordered the Zune two days before the announcement, it was a shock to find that whilst in transit, my purchase was not outdated. It was a delight to find the extra features will be available for free download. In effect, I've got a somewhat smaller and marginally thicker box, but for what I use it for (short-ish commutes up to town and flights inside EMEA) my 30gb model is fine.

So thanks Microsoft - this is really the way to treat your customers. The folks over in the Vista group (and MSL) could learn a thing or two from this very nice move.