&lt;?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Articles from January 2018 on PowerShell.org - Welcome Automaters!</title><link>https://powershell.org/articles/2018/01/</link><description>Recent content in Articles from January 2018 on PowerShell.org - Welcome Automaters!</description><generator>Hugo</generator><language>en-us</language><atom:link href="https://powershell.org/articles/2018/01/index.xml" rel="self" type="application/rss+xml"/><item><title>Distilling Microsoft's DSC Update (Jan 2018)</title><link>https://powershell.org/articles/2018-01-29-distilling-microsofts-dsc-update-jan-2018/</link><guid>https://powershell.org/articles/2018-01-29-distilling-microsofts-dsc-update-jan-2018/</guid><pubDate>Mon, 29 Jan 2018 16:11:10 +0000</pubDate><description>&lt;p&gt;This past Friday, Microsoft &lt;a href="https://blogs.msdn.microsoft.com/powershell/2018/01/26/dsc-planning-update-january-2018/"&gt;posted a DSC Update&lt;/a&gt; that&amp;rsquo;s worth your attention - and some commentary.&lt;/p&gt;</description><content:encoded>&lt;![CDATA[<p>This past Friday, Microsoft<a href="https://blogs.msdn.microsoft.com/powershell/2018/01/26/dsc-planning-update-january-2018/">posted a DSC Update</a> that&rsquo;s worth your attention - and some commentary.</p><p>This follows up on a previous announcement about &ldquo;DSC Core,&rdquo; a term which the company has wisely stopped using. I do think the original use of &ldquo;DSC Core&rdquo; was well-intentioned: &ldquo;Core&rdquo; had come to represent the company&rsquo;s cross-platform efforts, a la .NET Core and PowerShell Core. But the &ldquo;new DSC&rdquo; has nothing to do with either of those, and so the use of &ldquo;Core&rdquo; was confusing.</p><p>The &ldquo;new DSC&rdquo; does mean that &ldquo;old DSC&rdquo; is going away. But, as this most recent update reveals, very little of your existing work or knowledge investment will go to waste.<br>
The &ldquo;new DSC&rdquo; will consist of a rewritten Local Configuration Manager, or LCM. This should still duplicate much of the functionality of the existing LCM, but will be written in C++, enabling it to be compiled for any operating system. So, gone are the days of a .NET-based LCM for Windows and a distinct one written for Unix/Linux - we&rsquo;ll have one code base.<br>
The big announcement, for me, was that the LCM will rely on a &ldquo;provider model&rdquo; for running DSC resources. While the word <em>provider</em> is a little overused in PowerShell, this is a huge and positive step forward. The announcement indicates that the first provider will allow the new, C++ based LCM to run DSC resources written for PowerShell - e.g., almost everything currently out there today. A future provider will enable resources written in cross-platform PowerShell Core (which,<a href="https://powershell.org/2018/01/15/can-we-talk-about-powershell-core-6-0/">as discussed previously here</a>, is a distinct product from Windows PowerShell), and other future providers will support resources written in C++ and Python. This is a _huge deal, _as it offers the potential for a much wider array of community-based resources.<br>
I was also impressed with the humility in Microsoft&rsquo;s open source direction for the LCM. I think the company has learned from its open sourcing of PowerShell Core that &ldquo;open source&rdquo; means a great deal more than just publishing your code in GitHub. You&rsquo;ve got to be responsive to issue posts, responsive to pull requests, and more. So the team is taking a more gradual approach to open sourcing the new LCM, which should help ensure they do it right.<br>
The announcement mentions that, &ldquo;[the new LCM] will need to be installed on systems where the current DSC platform exists today, and we will need to offer conflict detection&hellip;&rdquo; and I find that notable. It means the company is still thinking about the best ways to deploy this new LCM, and they&rsquo;re working through the math on, &ldquo;what if you have the old one and new one installed - is it going to be raccoons in a bag clawing at each other, or no?&rdquo; We&rsquo;ll have to see what they come up with, but I&rsquo;d personally be just fine if the new LCM just disabled itself if the old, original LCM was working. That would make it easy to pre-stage the new LCM without fear, and &ldquo;flip it on&rdquo; one day by disabling the old LCM.<br>
I think by the time the new LCM is formally released as &ldquo;General Availability&rdquo; (as opposed to the inevitable beta releases), we&rsquo;ll be looking at feature parity with the old LCM. That means I think we can expect to see it support both pull and push modes. Given that the LCM pretty much <em>is</em> DSC - that is, the LCM has all the brains of the technology - that should make the transition pretty easy and seamless. I think it&rsquo;s important to follow the beta builds, so that if you&rsquo;re seeing feature parity go awry, you can provide Microsoft with the feedback they&rsquo;ll need to course-correct in time. Don&rsquo;t wait until GA to bitch and moan; get in there and play with this new thing the moment you can.<br>
There are, of course, questions not answered in this post, but I&rsquo;ll hazard my own guesses. There&rsquo;s no mention of Pull Server. Now that the team has enabled SQL Server for the &ldquo;native&rdquo; Pull Server, I honestly think we can expect to see them stop investing in that product. Their direction, as with much of Microsoft, is Azure; the pricing for running DSC in Azure Automation is so low that many organizations can, and should, simply do that. Those companies whose servers must run in a totally disconnected environment should plan to look outside of Microsoft - such as<a href="https://github.com/PowerShellOrg/tug">Tug</a>, an open-source pull server replacement that&rsquo;s got a ton more flexibility. Today&rsquo;s Microsoft can&rsquo;t be all things to all people, and if you have edge-case working conditions - like no Internet for your servers - then you&rsquo;re going to find yourself a bit more on your own. And, if I&rsquo;m being honest, for some of those edge cases (and even for some more mainstream cases), a full configuration management platform like Chef or Puppet may be your best bet.<br>
The real upshot here, though, is that _everything you know about DSC is still valid. _Microsoft is going to be doing some heavy lifting, programming-wise, to broaden the applicability of your DSC knowledge across platforms, but I suspect you&rsquo;re not going to have to do much work to &ldquo;keep up&rdquo; for this first phase. We&rsquo;ll doubtless see some asked-for new features creep in along the way, which will be great, and hopefully we&rsquo;ll see some of the minor architectural improvements that the community has been asking for for a few years, now.<br>
Overall, I think this is a bright and positive announcement for DSC fans, and I&rsquo;m looking forward to seeing where the company goes next!</p>]]></content:encoded></item><item><title>PowerShell Story Continued Becoming a Craftsman</title><link>https://powershell.org/articles/2018-01-28-powershell-story-continued-becoming-a-craftsman/</link><guid>https://powershell.org/articles/2018-01-28-powershell-story-continued-becoming-a-craftsman/</guid><pubDate>Sun, 28 Jan 2018 10:46:03 +0000</pubDate><description>&lt;p&gt;My journey started off by figuring out how to automate a daily disk space report on the mailserver, which ran most of the company, and emailing the report to my boss at the time. After PowerShell sent that first email, something clicked. I sat back in my chair and thought to myself, “Wow, I don’t have to do this anymore”. I can still feel how exciting and relieving that thought was. Fast forward a few years and I had made automation about 80% of my job. I had moved into a few new roles - Tier 2 Support to Systems Engineer, to Senior Systems Engineer. My last post left off when I left my role as a Senior Systems Engineer and landed a gig as a DevOps Engineer. At the time I thought this was the end of the road. I thought, “I’ll pick up a few new tricks and further improve my PowerShell skills”. I couldn’t have been more wrong. This post picks up at the beginning of my transition into the world of DevOps, where I learned no matter how much you know, you know nothing. Continue reading to hear the rest of the story…&lt;br&gt;
&lt;a href="http://duffney.io/PowerShell-Story-Continued-BecomingACraftsman"&gt;http://duffney.io/PowerShell-Story-Continued-BecomingACraftsman&lt;/a&gt;&lt;/p&gt;</description><content:encoded>&lt;![CDATA[<p>My journey started off by figuring out how to automate a daily disk space report on the mailserver, which ran most of the company, and emailing the report to my boss at the time. After PowerShell sent that first email, something clicked. I sat back in my chair and thought to myself, “Wow, I don’t have to do this anymore”. I can still feel how exciting and relieving that thought was. Fast forward a few years and I had made automation about 80% of my job. I had moved into a few new roles - Tier 2 Support to Systems Engineer, to Senior Systems Engineer. My last post left off when I left my role as a Senior Systems Engineer and landed a gig as a DevOps Engineer. At the time I thought this was the end of the road. I thought, “I’ll pick up a few new tricks and further improve my PowerShell skills”. I couldn’t have been more wrong. This post picks up at the beginning of my transition into the world of DevOps, where I learned no matter how much you know, you know nothing. Continue reading to hear the rest of the story…<br><a href="http://duffney.io/PowerShell-Story-Continued-BecomingACraftsman">http://duffney.io/PowerShell-Story-Continued-BecomingACraftsman</a></p>
]]></content:encoded></item><item><title>Iron Scripter Prequel: Puzzle 2 – a commentary</title><link>https://powershell.org/articles/2018-01-28-iron-scripter-prequel-puzzle-2-a-commentary/</link><guid>https://powershell.org/articles/2018-01-28-iron-scripter-prequel-puzzle-2-a-commentary/</guid><pubDate>Sun, 28 Jan 2018 00:02:37 +0000</pubDate><description>&lt;p&gt;A discussion and possible solution to puzzle 1 is now available at  &lt;a href="https://powershell.org/wp-content/uploads/2018/01/Iron-Scripter-Prequel-Puzzle-2-A-commentary.pdf"&gt;Iron Scripter Prequel Puzzle 2 - A commentary&lt;/a&gt;&lt;br&gt;
Remember this isn&amp;rsquo;t presented as a definitive solution. It&amp;rsquo;s my view of the solution.&lt;br&gt;
I&amp;rsquo;ve not provided faction specific code but rather a list of points the factions need to consider to be truly worthy of their faction.&lt;/p&gt;</description><content:encoded>&lt;![CDATA[<p>A discussion and possible solution to puzzle 1 is now available at  <a href="https://powershell.org/wp-content/uploads/2018/01/Iron-Scripter-Prequel-Puzzle-2-A-commentary.pdf">Iron Scripter Prequel Puzzle 2 - A commentary</a><br>
Remember this isn&rsquo;t presented as a definitive solution. It&rsquo;s my view of the solution.<br>
I&rsquo;ve not provided faction specific code but rather a list of points the factions need to consider to be truly worthy of their faction.</p>
]]></content:encoded></item><item><title>Iron Scripter 2018 Prequel: Puzzle 3</title><link>https://powershell.org/articles/2018-01-28-iron-scripter-2018-prequel-puzzle-3/</link><guid>https://powershell.org/articles/2018-01-28-iron-scripter-2018-prequel-puzzle-3/</guid><pubDate>Sun, 28 Jan 2018 00:01:38 +0000</pubDate><description>&lt;p&gt;You have overcome 2 challenges so far both involving code from the archives. In this challenge you&amp;rsquo;ll be called upon to create your own code. You&amp;rsquo;ll be presented with a task to perform in &lt;a href="https://powershell.org/wp-content/uploads/2018/01/Iron-Scripter-Prequel-Puzzle-3.pdf"&gt;Iron Scripter Prequel Puzzle 3&lt;/a&gt;&lt;br&gt;
How you approach this challenge is up to you but remember the goals of your faction.&lt;br&gt;
Please remember that we&amp;rsquo;re not grading submissions for these puzzles. You can comment, and discuss the puzzle on the Iron Scripter Prequel forum&lt;br&gt;
Good luck&lt;/p&gt;</description><content:encoded>&lt;![CDATA[<p>You have overcome 2 challenges so far both involving code from the archives. In this challenge you&rsquo;ll be called upon to create your own code. You&rsquo;ll be presented with a task to perform in <a href="https://powershell.org/wp-content/uploads/2018/01/Iron-Scripter-Prequel-Puzzle-3.pdf">Iron Scripter Prequel Puzzle 3</a><br>
How you approach this challenge is up to you but remember the goals of your faction.<br>
Please remember that we&rsquo;re not grading submissions for these puzzles. You can comment, and discuss the puzzle on the Iron Scripter Prequel forum<br>
Good luck</p>
]]></content:encoded></item><item><title>Summit 2018 registration update</title><link>https://powershell.org/articles/2018-01-26-summit-2018-registration-update/</link><guid>https://powershell.org/articles/2018-01-26-summit-2018-registration-update/</guid><pubDate>Fri, 26 Jan 2018 16:55:41 +0000</pubDate><description>&lt;p&gt;As an update to the registrations for Summit 2018 - we&amp;rsquo;ve sold 75% of the available places.&lt;br&gt;
As Don explained we won&amp;rsquo;t be able to add further places like we did last year.&lt;br&gt;
This is our biggest (and hopefully best) Summit yet with more sessions and nearly double the number of speakers.&lt;br&gt;
If you want a place I recommend not waiting. Last year we sold our last place on 24 February. If sales carry on as they currently are we&amp;rsquo;ll sell out for 2018 well before then.&lt;/p&gt;</description><content:encoded>&lt;![CDATA[<p>As an update to the registrations for Summit 2018 - we&rsquo;ve sold 75% of the available places.<br>
As Don explained we won&rsquo;t be able to add further places like we did last year.<br>
This is our biggest (and hopefully best) Summit yet with more sessions and nearly double the number of speakers.<br>
If you want a place I recommend not waiting. Last year we sold our last place on 24 February. If sales carry on as they currently are we&rsquo;ll sell out for 2018 well before then.</p>
]]></content:encoded></item><item><title>PowerShell Summit Registration Status</title><link>https://powershell.org/articles/2018-01-23-powershell-summit-registration-status/</link><guid>https://powershell.org/articles/2018-01-23-powershell-summit-registration-status/</guid><pubDate>Tue, 23 Jan 2018 20:30:12 +0000</pubDate><description>&lt;p&gt;A quick update - all numbers as of 23-January-2018, 12:23pm Pacific time.&lt;br&gt;
91 seats remaining. We are on track to sell out in approximately 45 days. Unlike previous years where we&amp;rsquo;ve scrounged some spare seats at the last minute, **please don&amp;rsquo;t expect that this year, **as I think I&amp;rsquo;ve gotten better at math and have not been rounding as much.&lt;br&gt;
Hotel situation:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Marriott, we have 6 rooms left. This is our &amp;ldquo;official&amp;rdquo; hotel, with the largest number of Summiteers on site.&lt;/li&gt;
&lt;li&gt;Courtyard, we have 9 rooms left. This is a quick walk to the Meydenbauer, with about half as many Summiteers as the Marriott.&lt;/li&gt;
&lt;li&gt;Hotel 116, we have 34 rooms left. This also has about half as many Summiteers as the Marriott, and is our lowest price point hotel. This is still a quick walk to the Meydenbauer.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;After the rooms above are exhausted, you&amp;rsquo;re on to &amp;ldquo;rack rate,&amp;rdquo; which, sadly, can be ridonkulous as it&amp;rsquo;s a popular time of year to be in Bellevue and they&amp;rsquo;ve gotten used to our crowd coming in. &lt;strong&gt;We do ask that you choose one of the above hotels if humanly possible&lt;/strong&gt; so that we&amp;rsquo;re not stuck paying for this reserved space regardless. If we have to do so, prices for Summit will assuredly rise in 2019.&lt;br&gt;
Can&amp;rsquo;t make it? We&amp;rsquo;re often asked about session recordings. We&amp;rsquo;re not prepared to commit to anything for 2018, although we&amp;rsquo;re working hard with a partner to try and make something happen. There&amp;rsquo;s no need whatsoever to &amp;ldquo;+1&amp;rdquo; this; we&amp;rsquo;re well aware that everyone asks for recordings (despite fairly low actual view numbers for them), and we&amp;rsquo;re working on it. Last year&amp;rsquo;s attempt was massively disruptful and unsuccessful, so we can&amp;rsquo;t have &lt;em&gt;that&lt;/em&gt; again.&lt;br&gt;
That&amp;rsquo;s it! Hit us up on Twitter @PSHSummit if you have questions!&lt;/p&gt;</description><content:encoded>&lt;![CDATA[<p>A quick update - all numbers as of 23-January-2018, 12:23pm Pacific time.<br>
91 seats remaining. We are on track to sell out in approximately 45 days. Unlike previous years where we&rsquo;ve scrounged some spare seats at the last minute, **please don&rsquo;t expect that this year, **as I think I&rsquo;ve gotten better at math and have not been rounding as much.<br>
Hotel situation:</p><ul><li>Marriott, we have 6 rooms left. This is our &ldquo;official&rdquo; hotel, with the largest number of Summiteers on site.</li><li>Courtyard, we have 9 rooms left. This is a quick walk to the Meydenbauer, with about half as many Summiteers as the Marriott.</li><li>Hotel 116, we have 34 rooms left. This also has about half as many Summiteers as the Marriott, and is our lowest price point hotel. This is still a quick walk to the Meydenbauer.</li></ul><p>After the rooms above are exhausted, you&rsquo;re on to &ldquo;rack rate,&rdquo; which, sadly, can be ridonkulous as it&rsquo;s a popular time of year to be in Bellevue and they&rsquo;ve gotten used to our crowd coming in. <strong>We do ask that you choose one of the above hotels if humanly possible</strong> so that we&rsquo;re not stuck paying for this reserved space regardless. If we have to do so, prices for Summit will assuredly rise in 2019.<br>
Can&rsquo;t make it? We&rsquo;re often asked about session recordings. We&rsquo;re not prepared to commit to anything for 2018, although we&rsquo;re working hard with a partner to try and make something happen. There&rsquo;s no need whatsoever to &ldquo;+1&rdquo; this; we&rsquo;re well aware that everyone asks for recordings (despite fairly low actual view numbers for them), and we&rsquo;re working on it. Last year&rsquo;s attempt was massively disruptful and unsuccessful, so we can&rsquo;t have <em>that</em> again.<br>
That&rsquo;s it! Hit us up on Twitter @PSHSummit if you have questions!</p>
]]></content:encoded></item><item><title>Iron Scripter Prequel: Puzzle 1 – a solution</title><link>https://powershell.org/articles/2018-01-21-iron-scripter-prequel-puzzle-1-a-solution/</link><guid>https://powershell.org/articles/2018-01-21-iron-scripter-prequel-puzzle-1-a-solution/</guid><pubDate>Sun, 21 Jan 2018 00:05:19 +0000</pubDate><description>&lt;p&gt;A discussion and possible solution to puzzle 1 is now available at &lt;a href="https://powershell.org/wp-content/uploads/2018/01/Iron-Scripter-Prequel-Puzzle-1-A-solution.pdf"&gt;Iron Scripter Prequel Puzzle 1 - A solution&lt;/a&gt;&lt;br&gt;
Remember this isn&amp;rsquo;t presented as a definitive solution. It&amp;rsquo;s my view of the solution. Please also note that the faction specific parts are indicative and not prescriptive - they are my view of how the different factions would approach solving the puzzle.&lt;/p&gt;</description><content:encoded>&lt;![CDATA[<p>A discussion and possible solution to puzzle 1 is now available at <a href="https://powershell.org/wp-content/uploads/2018/01/Iron-Scripter-Prequel-Puzzle-1-A-solution.pdf">Iron Scripter Prequel Puzzle 1 - A solution</a><br>
Remember this isn&rsquo;t presented as a definitive solution. It&rsquo;s my view of the solution. Please also note that the faction specific parts are indicative and not prescriptive - they are my view of how the different factions would approach solving the puzzle.</p>
]]></content:encoded></item><item><title>Iron Scripter 2018 Prequel: Puzzle 2</title><link>https://powershell.org/articles/2018-01-21-iron-scripter-2018-prequel-puzzle-2/</link><guid>https://powershell.org/articles/2018-01-21-iron-scripter-2018-prequel-puzzle-2/</guid><pubDate>Sun, 21 Jan 2018 00:01:10 +0000</pubDate><description>&lt;p&gt;You&amp;rsquo;ve survived the first challenge. A new challenge in the shape of &lt;a href="https://powershell.org/wp-content/uploads/2018/01/Iron-Scripter-Prequel-Puzzle-2.pdf"&gt;Iron Scripter Prequel Puzzle 2&lt;/a&gt; is now available.&lt;br&gt;
Take note of the faction based instructions.&lt;br&gt;
Please remember that we&amp;rsquo;re not grading submissions for these puzzles.&lt;br&gt;
You can comment, and discuss the puzzle on the &lt;a href="https://powershell.org/forums/forum/iron-scripter/iron-scripter-prequel/"&gt;Iron Scripter Prequel forum &lt;/a&gt;&lt;br&gt;
Stay true to your faction and victory will be yours.&lt;/p&gt;</description><content:encoded>&lt;![CDATA[<p>You&rsquo;ve survived the first challenge. A new challenge in the shape of<a href="https://powershell.org/wp-content/uploads/2018/01/Iron-Scripter-Prequel-Puzzle-2.pdf">Iron Scripter Prequel Puzzle 2</a> is now available.<br>
Take note of the faction based instructions.<br>
Please remember that we&rsquo;re not grading submissions for these puzzles.<br>
You can comment, and discuss the puzzle on the<a href="https://powershell.org/forums/forum/iron-scripter/iron-scripter-prequel/">Iron Scripter Prequel forum </a><br>
Stay true to your faction and victory will be yours.</p>
]]></content:encoded></item><item><title>Can We Talk About PowerShell Core 6.0?</title><link>https://powershell.org/articles/2018-01-15-can-we-talk-about-powershell-core-6-0/</link><guid>https://powershell.org/articles/2018-01-15-can-we-talk-about-powershell-core-6-0/</guid><pubDate>Mon, 15 Jan 2018 16:36:18 +0000</pubDate><description>&lt;p&gt;Microsoft recently &lt;a href="https://blogs.msdn.microsoft.com/powershell/2018/01/10/powershell-core-6-0-generally-available-ga-and-supported/"&gt;announced the General Availability&lt;/a&gt; (that is, a non-beta release) of PowerShell Core 6.0. A &lt;a href="https://github.com/PowerShell/PowerShell/blob/master/docs/BREAKINGCHANGES.md"&gt;companion document detailing breaking changes&lt;/a&gt;, along with some of the language in the announcement, has led to more than a few inquiries in my mailbox. Most take the tone of, &amp;ldquo;have I been wasting my time learning PowerShell?!?!?&amp;rdquo; because, at first glance, PowerShell Core looks deeply less functional than its predecessor. Let me tell you what I think.&lt;/p&gt;</description><content:encoded>&lt;![CDATA[<p>Microsoft recently<a href="https://blogs.msdn.microsoft.com/powershell/2018/01/10/powershell-core-6-0-generally-available-ga-and-supported/">announced the General Availability</a> (that is, a non-beta release) of PowerShell Core 6.0. A<a href="https://github.com/PowerShell/PowerShell/blob/master/docs/BREAKINGCHANGES.md">companion document detailing breaking changes</a>, along with some of the language in the announcement, has led to more than a few inquiries in my mailbox. Most take the tone of, &ldquo;have I been wasting my time learning PowerShell?!?!?&rdquo; because, at first glance, PowerShell Core looks deeply less functional than its predecessor. Let me tell you what I think.</p><p>First, I need to stress that this isn&rsquo;t an official Microsoft position - it&rsquo;s my opinion. I&rsquo;ve been working with this product since before it launched, I&rsquo;ve lived through its successes and missteps, and I&rsquo;ve gotten pretty good at figuring out what the company is up to - but this article isn&rsquo;t based on any official conversations or info.</p><h2 id="there-are-two-powershells-now" class="ps-heading">There are Two PowerShells Now<a class="ps-heading-anchor" href="#there-are-two-powershells-now" aria-label="Link to this section" title="Link to this section"><i class="fas fa-link" aria-hidden="true"/></a></h2><p>Understand that <strong>Windows PowerShell</strong>, currently v5.1, isn&rsquo;t going away. People are a little freaked out by phrasing like, &ldquo;Windows PowerShell won&rsquo;t be developed any further,&rdquo; but if you&rsquo;re feeling panicked over that, sip your whiskey and chill. Microsoft regards Windows PowerShell as **finished. **Honestly, from my perspective, it contains every bit of functionality I think an admin could conceivably need to do their job. Sure, maybe it lacks some deeper developer-focused features, but PowerShell was never supposed to be C#.<br>
5.x remains officially supported and officially available. You can run it side-by-side on the same system with PowerShell Core. If your job is administering Windows then, as the name implies, <em>Windows</em> PowerShell is going to be your go-to for a long time. It won&rsquo;t pick up any breaking changes going forward, it&rsquo;s not going to break existing functionality when a new version comes out, etc. It&rsquo;s _stable. _<br><strong>PowerShell Core</strong> (or just, &ldquo;PowerShell,&rdquo; sans the &ldquo;Windows&rdquo;) is a _new product. _It is not the &ldquo;successor&rdquo; of Windows PowerShell; it is a new thing based on Windows PowerShell. It is designed for cross-platform management, when you need to do something on Windows <em>and</em> Linux <em>and</em> macOS. As such, its functionality focuses on stuff that is available on _all of those platforms. _It doesn&rsquo;t do Windows Management Instrumentation, because &ldquo;Windows.&rdquo; It doesn&rsquo;t manage Active Directory. It doesn&rsquo;t query Windows Performance Counters. It&rsquo;s not, in other words, specialized for Windows.</p><h2 id="powershell-has-never-been-windows" class="ps-heading">PowerShell Has Never Been &ldquo;Windows&rdquo;<a class="ps-heading-anchor" href="#powershell-has-never-been-windows" aria-label="Link to this section" title="Link to this section"><i class="fas fa-link" aria-hidden="true"/></a></h2><p>Windows and Windows PowerShell _are separate things. _People have an incredibly tough time grasping this, to the point where<a href="https://devops-collective-inc.gitbooks.io/the-big-book-of-powershell-gotchas/content/manuscript/where-is-the-____-command.html">it&rsquo;s a significant &ldquo;gotcha&rdquo; for newbies</a>. Windows PowerShell has <em>always</em> consisted of a set of core functionality that actually had little to do, for the most part, with the Windows operating system. PowerShell Core continues that tradition, consisting of a base functional foundation. PowerShell&rsquo;s &ldquo;power&rdquo; came from add-ins - modules - that &ldquo;connected&rdquo; PowerShell to other technologies. Those add-ins run <em>inside</em> PowerShell, but they are <em>distinct</em> from it. The ActiveDirectory module comes from the Active Directory team, and ships _as a feature of the Windows Operating System. _If you could install Windows PowerShell 5.1 on Windows XP (you can&rsquo;t, but imagine), you wouldn&rsquo;t suddenly get a bunch of awesome functionality for administration, because Windows XP _doesn&rsquo;t ship with any awesome functionality. _Much of what we do in Windows PowerShell comes from the operating system; you should <em>expect</em> that functionality to be missing when you&rsquo;re on, say, Linux.<br>
Now, sure - if you install PowerShell Core on Windows, you <em>still</em> won&rsquo;t have all of your favorite modules, because lots of when can&rsquo;t run on .NET Core. That&rsquo;s why Windows PowerShell is still a thing. Just as it took several years for Windows PowerShell to gain a large stable of add-in modules, it&rsquo;ll likely take some time for useful functionality to join up with PowerShell Core. The fact that some module doesn&rsquo;t run on Core <em>today</em> doesn&rsquo;t mean the world has ended.</p><h2 id="sins-of-the-past" class="ps-heading">Sins of the Past<a class="ps-heading-anchor" href="#sins-of-the-past" aria-label="Link to this section" title="Link to this section"><i class="fas fa-link" aria-hidden="true"/></a></h2><p>A lot of the breaking changes in PowerShell Core are, from my perspective, more than welcome. Because Remote Procedure Calls (RPCs) are pretty much Windows-specific, almost every command that used RPCs for remote requests has lost the ability to perform remote requests. Instead, you use PowerShell Remoting (Invoke-Command) to &ldquo;send&rdquo; the command to the machine you want to query, let that machine execute the command locally, and then you get the results back. _This is the way I&rsquo;ve been telling people to do things for eight years. _RPCs are a Root Cause of Evil in the universe. Companies who don&rsquo;t want to allow Remoting (either over WS-MAN or SSH, both of which are supported in PowerShell Core) but who <em>will</em> allow RPCs, are stupid companies who need to wake up and educate themselves. Msrpc.dll is probably the most-hacked, most-patched file on the system.<br>
A lot of the Web-based commands - Invoke-WebRequest and friends - have changed, too. This is mainly so that they&rsquo;ll work with the refactored underlying .NET Core. Why was .NET Core refactored? _So it would quit using old Internet Explorer code. _Nobody in a physics-based universe should see that as anything but a long-overdue blessing.<br>
PowerShell Workflows aren&rsquo;t supported in Core, because .NET Core doesn&rsquo;t support Windows Workflow Foundation, which as near as I can tell has been deprecated for half a decade anyway. Jeffrey Snover and I have had a long-running, and very cordial, disagreement over PowerShell Workflow, because I think it was a Horrible Idea from day one. Not having it in Core will simply keep people from straying into that horrible, confusing, deeply broken realm.<br>
Snap-ins aren&rsquo;t supported in Core. Good. Snap-ins stopped being the right thing to do in PowerShell 2.0, which came out in, like, 2008 or something. Repackage your code and move on. Anyone still shipping you a snap-in doesn&rsquo;t care about you, your job, your family, or your values. It is, for the most part, the work of a few seconds to repackage a snap-in into a proper binary module.</p><h2 id="its-60-not-6done" class="ps-heading">It&rsquo;s 6.0, Not 6.Done.<a class="ps-heading-anchor" href="#its-60-not-6done" aria-label="Link to this section" title="Link to this section"><i class="fas fa-link" aria-hidden="true"/></a></h2><p>One of the PowerShell Core release notes indicates that it doesn&rsquo;t run DSC resources. This has caused about half of the incredulous emails I&rsquo;ve gotten this past week. <em>Is Microsoft abandoning DSC? Why doesn&rsquo;t DSC run on PowerShell Core?</em><br>
Desired State Configuration has always <em>mainly</em> targeted Windows. The Linux-compatible Local Configuration Manager (LCM) wasn&rsquo;t even written by the PowerShell team, it was written by Microsoft&rsquo;s Unix team, who also wrote the entire library of Linux-compatible resources. Today, there&rsquo;s zero need for PowerShell Core to execute DSC resources; Windows PowerShell or the Linux LCM will handle it for you.<br>
But this is why<a href="https://blogs.msdn.microsoft.com/powershell/2017/09/12/dsc-future-direction-update/">DSC Core</a> is going to be a thing. And that&rsquo;s the thing to remember, here. Despite the patterns of the past year or so, we&rsquo;re all still used to Microsoft taking 3-5 years to produce a product, which we then have to live with for 3-5 years until the next version comes out. The PowerShell team, at least, has been releasing at a much faster cadence. So just because Core doesn&rsquo;t do something <em>today</em> doesn&rsquo;t represent an existential threat; if it makes sense for Core&rsquo;s audience and intent, then it&rsquo;ll likely do it before too long.<br>
Incidentally, I have some very specific thoughts on DSC Core, including several, &ldquo;I told you you&rsquo;d eventually do it that way&rdquo; moments, but we can do that in a separate article.</p><h2 id="why-the-hell-is-core-even-needed-though" class="ps-heading">Why the Hell is Core Even Needed, Though?<a class="ps-heading-anchor" href="#why-the-hell-is-core-even-needed-though" aria-label="Link to this section" title="Link to this section"><i class="fas fa-link" aria-hidden="true"/></a></h2><p>Microsoft sells Windows. Windows PowerShell manages Windows. So why was Core even needed?<br>
There are two reasons here. Both are probably true; one is perhaps more pragmatic and the other is perhaps more noble, depending on your opinion.<br>
The pragmatic one is that Microsoft is moving toward being a business that sells you compute time, whether that compute runs in their cloud or in your datacenter; this is the essence of what Azure Stack is, and if you think that model isn&rsquo;t eventually going to be their <em>only</em> model, then you&rsquo;re deluding yourself. As a company that sells compute, Microsoft mainly wants you to run all your compute workloads on their compute services, of course. They don&rsquo;t care if you&rsquo;re running Linux or Windows; the compute is what they want you to pay for. Not caring about the OS means you need a rich set of tools that can be used consistently across all operating systems. Thus, PowerShell Core.<br>
That kind of segues into the possibly-noble reason, and we can start by simply asking, &ldquo;fine, why not just use Bash on every OS,&rdquo; as one person messaged me on Twitter. The reason is that Bash is a terrible shell for Windows. Arguably, Bash isn&rsquo;t even a great shell for Linux, although if you&rsquo;re used to it then you can be extremely productive with it. If you actually sat down and made a list of what you needed a shell to actually do, you&rsquo;d never come up with Bash, and you&rsquo;d likely have never come up with MS-DOS, either. Most shells today happened by accident and evolution, not by design, and they&rsquo;re about as well-suited to their job tasks as human knees are to running. You can do it, but it&rsquo;s not really a great idea. Bash - and most shells, if we&rsquo;re being fair - has a ridiculously high learning curve, and it forces you to work through the ugly details of unstructured data. That is, Bash, and most other shells, are designed mainly to parse and manipulate the text output of various operating system commands. They&rsquo;re a hack between a bunch of tools that were never meant to work together. The literal point of PowerShell, when you really tear it down to its smallest roots, is to parse all of that crap for you, and let you work with consistently structured data. You can focus less on what command output looks like and focus more on whatever the heck it is you&rsquo;re trying to do.<a href="https://twitter.com/nocentino">Linux fans who take a minute to really understand PowerShell</a> tend to like it. Naysayers who focus on the aesthetics of the syntax or whatever haven&rsquo;t taken that minute, or just have a religious objection to Microsoft playing in their sandbox. So Microsoft&rsquo;s decision to make PowerShell run on Linux is possibly a noble one, and I feel they&rsquo;ve done so in a way that&rsquo;s pretty respectful of the Linux OS&rsquo; roots, history, and patterns.</p><h2 id="what-if-i-dont-admin-on-linux" class="ps-heading">What if I Don&rsquo;t Admin on Linux?<a class="ps-heading-anchor" href="#what-if-i-dont-admin-on-linux" aria-label="Link to this section" title="Link to this section"><i class="fas fa-link" aria-hidden="true"/></a></h2><p>Then just use Windows PowerShell and stop sweating it. I mean, you&rsquo;re absolutely limiting your career, because as<a href="https://donjones.com/2017/12/14/has-the-death-of-the-os-already-begun/">I&rsquo;ve noted elsewhere</a> the concept of &ldquo;OS&rdquo; is changing drastically, and anchoring your career to a single OS is probably a dumb move right now. But, if that&rsquo;s your decision, then just stick with Windows PowerShell and ignore Core.</p><h2 id="so-is-windows-powershell-really-done" class="ps-heading">So is Windows PowerShell Really &ldquo;Done?&rdquo;<a class="ps-heading-anchor" href="#so-is-windows-powershell-really-done" aria-label="Link to this section" title="Link to this section"><i class="fas fa-link" aria-hidden="true"/></a></h2><p>Who knows? Probably mostly. I suppose we could see a 5.1.1 if there&rsquo;s a really egregious bug or a security problem someone finds, or a 5.2 if Windows itself would benefit tremendously from something specific that wouldn&rsquo;t work in Core. But I wouldn&rsquo;t count on anything major happening to it.</p><h2 id="lets-review" class="ps-heading">Let&rsquo;s Review<a class="ps-heading-anchor" href="#lets-review" aria-label="Link to this section" title="Link to this section"><i class="fas fa-link" aria-hidden="true"/></a></h2><p>So here&rsquo;s what we know:</p><ul><li>PowerShell Core doesn&rsquo;t mean Windows PowerShell is dead.</li><li>You haven&rsquo;t been wasting your time learning Windows PowerShell.</li><li>You can probably ignore PowerShell Core for a good long while if you don&rsquo;t need cross-platform functionality.</li><li>Your personal job priorities may not align with Microsoft&rsquo;s corporate priorities, which means the company may do stuff that doesn&rsquo;t make sense to you, or that you don&rsquo;t need.</li><li>PowerShell Core isn&rsquo;t a drop-in replacement for Windows PowerShell because Core has a different audience and intent.</li><li>The more Windows-specific your task, the less likely Core is going to be the right tool for the job.</li></ul><p>That&rsquo;s my take on all this; you&rsquo;re more than welcome to share yours (be polite!) in the comments!</p>]]></content:encoded></item><item><title>Iron Scripter 2018 Prequel: Puzzle 1</title><link>https://powershell.org/articles/2018-01-14-iron-scripter-2018-prequel-puzzle-1/</link><guid>https://powershell.org/articles/2018-01-14-iron-scripter-2018-prequel-puzzle-1/</guid><pubDate>Sun, 14 Jan 2018 00:01:08 +0000</pubDate><description>&lt;p&gt;Greetings Iron Scripters&lt;br&gt;
The first puzzle in the Iron Scripter 2018 Prequel series is available:&lt;br&gt;
&lt;a href="https://powershell.org/wp-content/uploads/2018/01/Iron-Scripter-Prequel-Puzzle-1.pdf"&gt;Iron Scripter Prequel Puzzle 1&lt;/a&gt;&lt;br&gt;
Take note of the faction based instructions.&lt;br&gt;
Please remember that we&amp;rsquo;re not grading submissions for these puzzles.&lt;br&gt;
You can comment, and discuss the puzzle on the &lt;a href="https://powershell.org/forums/forum/iron-scripter/iron-scripter-prequel/"&gt;Iron Scripter Prequel forum &lt;/a&gt;&lt;br&gt;
Stay true to your faction and victory will be yours.&lt;/p&gt;</description><content:encoded>&lt;![CDATA[<p>Greetings Iron Scripters<br>
The first puzzle in the Iron Scripter 2018 Prequel series is available:<br><a href="https://powershell.org/wp-content/uploads/2018/01/Iron-Scripter-Prequel-Puzzle-1.pdf">Iron Scripter Prequel Puzzle 1</a><br>
Take note of the faction based instructions.<br>
Please remember that we&rsquo;re not grading submissions for these puzzles.<br>
You can comment, and discuss the puzzle on the<a href="https://powershell.org/forums/forum/iron-scripter/iron-scripter-prequel/">Iron Scripter Prequel forum </a><br>
Stay true to your faction and victory will be yours.</p>
]]></content:encoded></item><item><title>PSCore 6 – Jeffrey Snover and the PowerShell Team hosting AMA on 11th Jan 9am PT</title><link>https://powershell.org/articles/2018-01-09-pscore-6-jeffrey-snover-and-the-powershell-team-hosting-ama-on-11th-jan-9am-pt/</link><guid>https://powershell.org/articles/2018-01-09-pscore-6-jeffrey-snover-and-the-powershell-team-hosting-ama-on-11th-jan-9am-pt/</guid><pubDate>Tue, 09 Jan 2018 13:20:04 +0000</pubDate><description>&lt;p&gt;PowerShell Core 6 is scheduled for General Availability release tomorrow (10th January). As such Jeffrey Snover and the PowerShell Team are hosting an AMA (Ask Me Anything) event on the 11th January from 9am - 10am PT.&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&amp;ldquo;This is going to be a historical week for PowerShell Core 6 🙂 &amp;hellip;Join the PowerShell team and &lt;a href="https://twitter.com/jsnover"&gt;@&lt;strong&gt;jsnover&lt;/strong&gt;&lt;/a&gt;{.twitter-atreply.pretty-link.js-nav} this Thursday for the PowerShell AMA&amp;rdquo;&lt;br&gt;
&lt;img src="https://powershell.org/wp-content/uploads/2018/01/PowerShell-AMA-300x160.jpg" alt=""&gt;&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;Add it to your calendar &lt;a href="https://aka.ms/PowerShellAMA/invite"&gt;here&lt;/a&gt;.&lt;br&gt;
Due to the timing I expect that the team are mostly hoping for questions related to the release of PS Core, although in the spirit of an AMA anything goes :).&lt;br&gt;
If you haven&amp;rsquo;t yet checked out PowerShell Core 6, you can &lt;a href="https://github.com/PowerShell/PowerShell"&gt;grab the RC release today&lt;/a&gt; and install it side-by-side with Windows PowerShell.&lt;br&gt;
I have also written &lt;a href="http://wragg.io/powershell-core/"&gt;a blog post that explains what PowerShell Core is, why it exists and how it compares&lt;/a&gt; which I hope you find informative.&lt;/p&gt;</description><content:encoded>&lt;![CDATA[<p>PowerShell Core 6 is scheduled for General Availability release tomorrow (10th January). As such Jeffrey Snover and the PowerShell Team are hosting an AMA (Ask Me Anything) event on the 11th January from 9am - 10am PT.</p><blockquote><p>&ldquo;This is going to be a historical week for PowerShell Core 6 🙂 &hellip;Join the PowerShell team and<a href="https://twitter.com/jsnover">@<strong>jsnover</strong></a>{.twitter-atreply.pretty-link.js-nav} this Thursday for the PowerShell AMA&rdquo;<br><img src="https://powershell.org/wp-content/uploads/2018/01/PowerShell-AMA-300x160.jpg" alt=""/></blockquote><p>Add it to your calendar<a href="https://aka.ms/PowerShellAMA/invite">here</a>.<br>
Due to the timing I expect that the team are mostly hoping for questions related to the release of PS Core, although in the spirit of an AMA anything goes :).<br>
If you haven&rsquo;t yet checked out PowerShell Core 6, you can<a href="https://github.com/PowerShell/PowerShell">grab the RC release today</a> and install it side-by-side with Windows PowerShell.<br>
I have also written<a href="http://wragg.io/powershell-core/">a blog post that explains what PowerShell Core is, why it exists and how it compares</a> which I hope you find informative.</p>
]]></content:encoded></item><item><title>Iron Scripter prequel</title><link>https://powershell.org/articles/2018-01-04-iron-scripter-prequel/</link><guid>https://powershell.org/articles/2018-01-04-iron-scripter-prequel/</guid><pubDate>Thu, 04 Jan 2018 18:00:24 +0000</pubDate><description>&lt;p&gt;Registrations are going very quickly. We&amp;rsquo;ve sold nearly half the available places. Historically, registrations accelerate in the first half of January so don&amp;rsquo;t wait too long before booking or you may be disappointed.&lt;br&gt;
Another tranche of alumni discount places were made available at the beginning of January but there are only 25 of them so if you want one book your place very soon.&lt;br&gt;
One new feature of Summit for 2018 is Iron Scripter - &lt;a href="http://ironscripter.us/"&gt;http://ironscripter.us/&lt;/a&gt;. Three factions will battle it out on Thursday 12 April 2018 for the title of Iron Scripter. If you haven&amp;rsquo;t chosen your faction it&amp;rsquo;s time to start thinking about it:&lt;br&gt;
Daybreak Faction - beautiful code&lt;br&gt;
Flawless Faction - flawless code&lt;br&gt;
Battle Faction - good enough to get the job done&lt;br&gt;
Choose your faction based on your approach to coding.&lt;br&gt;
The run up to Iron Scripter starts soon.&lt;br&gt;
We&amp;rsquo;ll be running a series of prequel events - think of them as the successor to the &amp;ldquo;Scripting Games&amp;rdquo; of the past. We&amp;rsquo;ll publish a puzzle on powershell.org every week on this schedule:&lt;br&gt;
January 14 puzzle 1&lt;br&gt;
January 21 puzzle 2&lt;br&gt;
January 28 puzzle 3&lt;br&gt;
February 4 puzzle 4&lt;br&gt;
February 11 puzzle 5&lt;br&gt;
February 18 puzzle 6&lt;br&gt;
February 25 puzzle 7&lt;br&gt;
March 4 puzzle 8&lt;br&gt;
March 11 puzzle 9&lt;br&gt;
March 18 puzzle 10&lt;br&gt;
March 25 puzzle 11&lt;br&gt;
A solution will be published the following week. The puzzle for March 25 will have a solution posted on 1 April.&lt;br&gt;
Notice we say &amp;ldquo;a solution&amp;rdquo;. Depending on your faction you may have a different view of how the puzzle should be solved. A forum will be available on PowerShell.org - &lt;a href="https://powershell.org/forums/forum/iron-scripter/iron-scripter-prequel/"&gt;https://powershell.org/forums/forum/iron-scripter/iron-scripter-prequel/&lt;/a&gt; - for you to present and discuss possible solutions. Give your faction&amp;rsquo;s view of how to solve the puzzle. Use the forums and the answers posted there to identify potential members of your faction. You can use non-attendees during the main Iron Scripter event so this is your chance to identify potential remote collaborators.&lt;br&gt;
We &lt;strong&gt;MUST&lt;/strong&gt; stress a couple of things:&lt;/p&gt;</description><content:encoded>&lt;![CDATA[<p>Registrations are going very quickly. We&rsquo;ve sold nearly half the available places. Historically, registrations accelerate in the first half of January so don&rsquo;t wait too long before booking or you may be disappointed.<br>
Another tranche of alumni discount places were made available at the beginning of January but there are only 25 of them so if you want one book your place very soon.<br>
One new feature of Summit for 2018 is Iron Scripter -<a href="http://ironscripter.us/">http://ironscripter.us/</a>. Three factions will battle it out on Thursday 12 April 2018 for the title of Iron Scripter. If you haven&rsquo;t chosen your faction it&rsquo;s time to start thinking about it:<br>
Daybreak Faction - beautiful code<br>
Flawless Faction - flawless code<br>
Battle Faction - good enough to get the job done<br>
Choose your faction based on your approach to coding.<br>
The run up to Iron Scripter starts soon.<br>
We&rsquo;ll be running a series of prequel events - think of them as the successor to the &ldquo;Scripting Games&rdquo; of the past. We&rsquo;ll publish a puzzle on powershell.org every week on this schedule:<br>
January 14 puzzle 1<br>
January 21 puzzle 2<br>
January 28 puzzle 3<br>
February 4 puzzle 4<br>
February 11 puzzle 5<br>
February 18 puzzle 6<br>
February 25 puzzle 7<br>
March 4 puzzle 8<br>
March 11 puzzle 9<br>
March 18 puzzle 10<br>
March 25 puzzle 11<br>
A solution will be published the following week. The puzzle for March 25 will have a solution posted on 1 April.<br>
Notice we say &ldquo;a solution&rdquo;. Depending on your faction you may have a different view of how the puzzle should be solved. A forum will be available on PowerShell.org -<a href="https://powershell.org/forums/forum/iron-scripter/iron-scripter-prequel/">https://powershell.org/forums/forum/iron-scripter/iron-scripter-prequel/</a> - for you to present and discuss possible solutions. Give your faction&rsquo;s view of how to solve the puzzle. Use the forums and the answers posted there to identify potential members of your faction. You can use non-attendees during the main Iron Scripter event so this is your chance to identify potential remote collaborators.<br>
We<strong>MUST</strong> stress a couple of things:</p><ul><li>Your solutions<strong>WILL NOT</strong><strong>be graded</strong> by anyone! You may get feedback from other people but there will be no official grading of answers. In previous Scripting Games we&rsquo;ve spent literally months grading scripts and its just not logistically feasible to grade and comment on every entry.</li><li>There is no &ldquo;correct&rdquo; answer. Your faction dictates what the solution should look like.<br>
There will be another series of puzzles as a direct lead in to the Iron Scripter competition. These will be published on April 8,9,10 and 11 on powershell.org.<strong>We will NOT post solutions online</strong>. We will also not accept/review submissions however you may find clues or example solutions around the Summit venue. We&rsquo;ll publish more information on these lead in events, and Iron Scripter itself closer to the event.</li></ul>
]]></content:encoded></item></channel></rss>