{"id":2022,"date":"2009-05-21T15:40:00","date_gmt":"2009-05-21T15:40:00","guid":{"rendered":"http:\/\/www.redmonk.com\/jgovernor\/?p=2022"},"modified":"2009-05-21T15:40:00","modified_gmt":"2009-05-21T15:40:00","slug":"powershell-to-websphere-mq-thoughts-on-an-authentic-voice-of-interoperability-at-microsoft","status":"publish","type":"post","link":"https:\/\/redmonk.com\/jgovernor\/powershell-to-websphere-mq-thoughts-on-an-authentic-voice-of-interoperability-at-microsoft\/","title":{"rendered":"PowerShell to WebSphere MQ. Thoughts on an Authentic Voice of Interoperability at Microsoft"},"content":{"rendered":"<p><a href=\"http:\/\/www.tomshardware.co.uk\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"http:\/\/images.tomshardware.com\/2006\/06\/14\/060614_teched2006_003.jpg\" border=\"0\" alt=\"\" width=\"467\" height=\"467\" \/><\/a><\/p>\n<p>We&#8217;re on the record as being fans of Jeffrey Snover, the architect and driving force behind <a href=\"http:\/\/www.microsoft.com\/windowsserver2003\/technologies\/management\/powershell\/default.mspx\">Microsoft PowerShell<\/a>&#8211; a scripting and automation technology that now sits behind the management front ends of all products in the Windows Server family. PowerShell is the command line for admins that Windows always lacked, the missing link that would have persuaded hardcore ops people that Microsoft was serious about management.<\/p>\n<p>Jeffrey has been on RedMonkTV <a href=\"http:\/\/redmonk.com\/tv\/2007\/11\/16\/powershell-overview-and-remote-update-microsoft-teched-it-forum-2007\/\">before<\/a>. Indeed its about time we had him back.<\/p>\n<p>The other day on twitter <a href=\"http:\/\/dalelane.co.uk\/blog\">Dale Lane<\/a>, an IBM employee, <a href=\"http:\/\/twitter.com\/dalelane\/status\/1857439007\">said<\/a> something interesting.<\/p>\n<blockquote><p><span class=\"status-body\"><span class=\"entry-content\">heard nothing about my PowerShell library for WMQ in many months, then two people contact me about it in one day! strange \ud83d\ude42<\/span><\/span><\/p><\/blockquote>\n<p><span class=\"status-body\"><span class=\"entry-content\">I decided to follow up, which led me to <a href=\"http:\/\/www-01.ibm.com\/support\/docview.wss?rs=171&amp;uid=swg24017698\">this<\/a> IBM documentation and SupportPac, which allows you to manage WebSphereMQ events from PowerShell. So far so good. <\/span><\/span><\/p>\n<p><span class=\"status-body\"><span class=\"entry-content\">But it was in reading Jeffrey on the subject of PowerShell to MQ that reminded me just how important this authentic voice of interoperability is to Microsoft. People like Jeffrey are why Microsoft Server products have come so far in the last couple of years.<\/span><\/span><\/p>\n<blockquote><p>Let me be quick to so that they did a very good job on their cmdlets in terms of using the naming guidelines.\u00a0 I can&#8217;t tell you how thrilled I am at the great job they did.\u00a0 That said, I&#8217;m not at all surprised.<\/p>\n<p>A lot of people are quick to say how much PowerShell looked to Unix for inspiration.\u00a0 That is true and we have a deep respect and admiration for that community and that body of work.\u00a0 That said, for some reason people don&#8217;t pick up on my statements about how influential the AS400 CL and VMS DCL models where in the conceptual model for PowerShell.<\/p>\n<p>Both AS400 CL and VMS\/DCL were hardcore about consistent naming.\u00a0 This is one of the reasons why operators love those systems.\u00a0 You invest in learning the naming and then it is consistent and easy to remember.\u00a0 Both system did parsing instead of the individual commands which ensures syntactic consistency. The UNIX model is one where the pipeline is an undifferentiated bytestream and commands in the pipeline consume individually determine when and how to consume that data.\u00a0 PowerShell rejected that model and replaced it with a model much more in aligned with IBM&#8217;s traditional RECORD orientation (yup &#8211; think CARD DECKS!).\u00a0 We say that PowerShell is &#8220;object based&#8221;.\u00a0 That is more true than false and is about as accurate as you can get with 2 words but the reality is that the object in the pipeline and the arguments on the command line combine to create a RECORD.\u00a0 The engine then determines how to bind that Record to the cmdlet parameters and then we call ProcessRecord() method.<\/p>\n<p>The bottom line here is that this industry has a long line of superstar engineers and we all benefit from their excellent work.\u00a0 Hats off the UNIX engineers!\u00a0 Hats off the the VMS engineers!\u00a0 Hats off the IBM engineers!<\/p><\/blockquote>\n<p>Very well said sir. Anyway, here is <a href=\"http:\/\/www.vistax64.com\/powershell\/77499-restore-db2-database-powershell.html\">a script<\/a> for restarting IBM&#8217;s DB2 database from PowerShell. Dale Lane also wrote something on the subject of <a href=\"http:\/\/dalelane.co.uk\/blog\/?p=226\">DB2 and Powershell<\/a>, but his blog appears to be down at the moment.<\/p>\n<p><span class=\"status-body\"><span class=\"entry-content\">The point I am making is that improvement doesn&#8217;t come from thinking everyone else sucks, it often comes from realising that others knew what they were doing. Standing on the shoulders of giants and all that. True innovators of course acknowledge their sources. I have had my share of fights over the years with Microsoft on the the subject of interoperability, but its important to acknowledge the massive progress they have made in enterprise capabilities.<br \/>\n<\/span><\/span><\/p>\n<p>disclosure: Microsoft Servers and Tools Business is a client.<\/p>\n<p>The picture above was just too good not to use. It originally came from <a href=\"http:\/\/www.tomshardware.co.uk\/#redir\">Tom&#8217;s Hardware<\/a>. Sorry guys please let me know if you&#8217;d prefer me not to use it.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>We&#8217;re on the record as being fans of Jeffrey Snover, the architect and driving force behind Microsoft PowerShell&#8211; a scripting and automation technology that now sits behind the management front ends of all products in the Windows Server family. PowerShell is the command line for admins that Windows always lacked, the missing link that would<\/p>\n","protected":false},"author":5,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"spay_email":"","footnotes":"","jetpack_publicize_message":"","jetpack_is_tweetstorm":false},"categories":[13],"tags":[],"class_list":["post-2022","post","type-post","status-publish","format-standard","hentry","category-dell"],"jetpack_featured_media_url":"","jetpack_publicize_connections":[],"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p9wfjh-wC","_links":{"self":[{"href":"https:\/\/redmonk.com\/jgovernor\/wp-json\/wp\/v2\/posts\/2022","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/redmonk.com\/jgovernor\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/redmonk.com\/jgovernor\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/redmonk.com\/jgovernor\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/redmonk.com\/jgovernor\/wp-json\/wp\/v2\/comments?post=2022"}],"version-history":[{"count":0,"href":"https:\/\/redmonk.com\/jgovernor\/wp-json\/wp\/v2\/posts\/2022\/revisions"}],"wp:attachment":[{"href":"https:\/\/redmonk.com\/jgovernor\/wp-json\/wp\/v2\/media?parent=2022"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/redmonk.com\/jgovernor\/wp-json\/wp\/v2\/categories?post=2022"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/redmonk.com\/jgovernor\/wp-json\/wp\/v2\/tags?post=2022"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}