{"id":5621,"date":"2008-08-12T06:45:00","date_gmt":"2008-08-12T06:45:00","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/powershell\/2008\/08\/12\/powershell-abstractions-the-community\/"},"modified":"2019-02-18T13:13:04","modified_gmt":"2019-02-18T20:13:04","slug":"powershell-abstractions-the-community","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/powershell\/powershell-abstractions-the-community\/","title":{"rendered":"PowerShell Abstractions &#038; the Community"},"content":{"rendered":"<p>Smart guy <a class=\"\" href=\"http:\/\/concentratedtech.com\/content\/\">Don Jones<\/a> has a good blog entry where he discusses&nbsp;ABSTRACTIONs with the question, &#8220;<a class=\"\" href=\"http:\/\/concentratedtech.com\/content\/index.php\/2008\/08\/12\/weekly-shell-do-i-need-net-wmi-com-and-all-that-to-use-powershell\/\">Do I need .NET, WMI, COM, and all that to use PowerShell?&#8221;<\/a>&nbsp;<\/p>\n<ul>\n<li>I agree that the correct abstraction for users (admins, etc)&nbsp; is Cmdlets (and Providers [Don didn&#8217;t mention this&nbsp;but he should have]).<\/li>\n<li>Getting full cmdlet coverage what I call &#8220;<em>digging ourselves out of a 30 year hole<\/em>&#8220;.<\/li>\n<li>PS provides access to lower level abstractions (.Net, COM, WMI, ADO, ADSI, XML, text-parsing, etc).<\/li>\n<li>PS V2 allows you to write Cmdlets using PS.<\/li>\n<li>PS V2 supports Modules which make it easy to share PS Scripts between users.<\/li>\n<\/ul>\n<p><strong>ERGO:<\/strong>&nbsp; PS V2 enables the community to create and share the correct user abstractions so you don&#8217;t have to wait for MSFT.<\/p>\n<p><strong>NOTE:<\/strong> Even when MSFT provides full cmdlet coverage &#8211; you&#8217;ll still need to know which cmdlets to use and how to stich them together to solve your specific problem.<\/p>\n<p>This is why I tell everyone that <strong>ALL ADMINS NEED TO BE ACTIVELY ENGAGED IN THE COMMUNITY<\/strong>.&nbsp; <\/p>\n<ol>\n<li>You need to look to the community for the solutions for your problems.&nbsp; <\/li>\n<li>When you have a question,&nbsp;ask that question in a community forum.&nbsp; Your question and the answer will get indexed by the search engines and help the next hundred people that have the same question.<\/li>\n<li>Don&#8217;t just be a freeloader \ud83d\ude42 &#8211; help the community.&nbsp; When you figure something out &#8211; you need to share it with a newsgroup post or a blog.&nbsp; <\/li>\n<ul>\n<li>I&#8217;m sure that most of you are were all of us were a few years ago and are active readers but not posters thinking that no one would be interested in your work.&nbsp; If that describes you &#8211; you are wrong.&nbsp; <\/li>\n<li>We can all learn from each other.&nbsp; <\/li>\n<li>JUST DO IT.&nbsp; The next blog entry is easier than the last one so make a commitment to start a blog and post a few entries.&nbsp; <\/li>\n<\/ul>\n<\/ol>\n<p>What&#8217;s the best way to start with the community?&nbsp;&nbsp;&nbsp;&nbsp; If you haven&#8217;t already bookmarked <a href=\"http:\/\/powershellcommunity.org\/\">http:\/\/powershellcommunity.org\/<\/a>&nbsp;&#8211; do it now.&nbsp;<\/p>\n<p>Cheers!&nbsp;<\/p>\n<p>Jeffrey Snover [MSFT]<br \/>Windows Management Partner Architect<br \/>Visit the Windows PowerShell Team blog at:&nbsp;&nbsp;&nbsp; <a href=\"http:\/\/blogs.msdn.com\/PowerShell\">http:\/\/blogs.msdn.com\/PowerShell<\/a><br \/>Visit the Windows PowerShell ScriptCenter at:&nbsp; <a href=\"http:\/\/www.microsoft.com\/technet\/scriptcenter\/hubs\/msh.mspx\">http:\/\/www.microsoft.com\/technet\/scriptcenter\/hubs\/msh.mspx<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Smart guy Don Jones has a good blog entry where he discusses&nbsp;ABSTRACTIONs with the question, &#8220;Do I need .NET, WMI, COM, and all that to use PowerShell?&#8221;&nbsp; I agree that the correct abstraction for users (admins, etc)&nbsp; is Cmdlets (and Providers [Don didn&#8217;t mention this&nbsp;but he should have]). Getting full cmdlet coverage what I call [&hellip;]<\/p>\n","protected":false},"author":600,"featured_media":13641,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-5621","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-powershell"],"acf":[],"blog_post_summary":"<p>Smart guy Don Jones has a good blog entry where he discusses&nbsp;ABSTRACTIONs with the question, &#8220;Do I need .NET, WMI, COM, and all that to use PowerShell?&#8221;&nbsp; I agree that the correct abstraction for users (admins, etc)&nbsp; is Cmdlets (and Providers [Don didn&#8217;t mention this&nbsp;but he should have]). Getting full cmdlet coverage what I call [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/posts\/5621","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/users\/600"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/comments?post=5621"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/posts\/5621\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/media\/13641"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/media?parent=5621"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/categories?post=5621"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/tags?post=5621"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}