Tonight on the PowerScripting Podcast, we talk to Paul Long from Microsoft about Message Analyzer
News
[Visit the Scripting Guys booth](http://blogs.technet.com/b/heyscriptingguy/archive/2014/05/04/weekend-scripter-find-the-scripting-guys-booth-at-teched-2014.aspx) at TechEd!
PowerShell Security is the topic at the [Brisbane Infrastructure User’s Group on May 13th](http://www.eventbrite.com.au/e/powershell-security-tickets-11551100653?aff=es2)
The Florida PowerShell User Group is [meeting on May 15th](http://www.eventbrite.com/e/florida-powershell-user-group-monthly-meeting-may-2014-tickets-11511791077?aff=es2)
[The Script Browser has been released](http://blogs.msdn.com/b/powershell/archive/2014/04/16/a-world-of-scripts-at-your-fingertips-introducing-script-browser.aspx)
Tonight on the PowerScripting Podcast, we talk to Alan Renouf from VMware
News
[Iron Scripter Tournament](https://powershell.org/2014/04/22/iron-scripter-tournament-at-powershell-summit-north-america-2014/) at the PowerShell Summit
[PhillyPoSH is meeting 5/1](http://www.eventbrite.com/e/phillyposh-may-1st-2014-tickets-11395392927?aff=es2&rank=1&sid=3b067128cadc11e3ae31123139104db1)
The Singapore PowerShell User group is having a [PowerBreakfast on 5/3](http://www.eventbrite.sg/e/powerbreakfast-sg-01-tickets-10142282841?aff=es2&rank=2&sid=3b067128cadc11e3ae31123139104db1)
The [Chicago PowerShell User Group](http://www.eventbrite.com/e/chicago-powershell-user-group-kick-off-meeting-tickets-11253558697?aff=es2&rank=9) is meeting May 8th
Tonight on the PowerScripting Podcast, we talk to Matt Wrock about BoxStarter
News
The [Chicago PowerShell User Group](http://www.eventbrite.com/e/chicago-powershell-user-group-kick-off-meeting-tickets-11253558697?aff=es2&rank=9) is meeting May 8th
The [PowerShell Portland User Group](http://www.eventbrite.com/e/powershell-portland-user-group-poshpug-tickets-7869547027?aff=es2&rank=5) is meeting April 15th
The [Greater Milwaukee Script Club](http://www.eventbrite.com/e/greater-milwaukee-script-club-tickets-509330421?aff=es2&rank=6) is meeting on April 15th
The [Tampa PowerShell User Group](http://www.eventbrite.com/e/tampa-powershell-user-group-tickets-1634714475?aff=es2&rank=7) is meeting on April 17th
Tonight on the PowerScripting Podcast, we talk to Eric Williams and Jeff Foster about the Cisco UCS PowerTool
News
The [Windows Management Framework V5 Preview](http://blogs.technet.com/b/windowsserver/archive/2014/04/03/windows-management-framework-v5-preview.aspx) is out!
You still have until April 14th to register for the [PowerShell Summit](https://powershell.org/community-events/summit/powershell-summit-north-america/)
[Chicago PowerShell User Group](http://chitownpug.wordpress.com/)
[https://twitter.com/pcgeek86/status/451828082694172672](https://twitter.com/pcgeek86/status/451828082694172672)
In This Episode
Tonight on the PowerScripting Podcast, we talk to Scott Muc about Pester
News
-
[https://powershell.org/community-events/summit/](https://powershell.org/community-events/summit/)
-
Alan Renouf will be presenting at the [Norcal PowerShell user group](http://norcalposh.org) on 4/1
Interview
Guest - Scott Muc
Links
-
Pester on Github: [https://github.com/pester/Pester#pester](https://github.com/pester/Pester#pester)
-
[https://www.destroyallsoftware.com/talks/boundaries](https://www.destroyallsoftware.com/talks/boundaries)
-
[http://scottmuc.com/blog/development/powershell-bdd-testing-pester-screencast/](http://scottmuc.com/blog/development/powershell-bdd-testing-pester-screencast/)
-
[http://www.powershellmagazine.com/2014/03/12/get-started-with-pester-powershell-unit-testing-framework/](http://www.powershellmagazine.com/2014/03/12/get-started-with-pester-powershell-unit-testing-framework/)
-
[http://twitter.com/ScottMuc](http://twitter.com/ScottMuc)
-
[http://scottmuc.com](http://scottmuc.com)
Chatroom Highlights:
[22:49:25] I did one and it was hard
## When will it get a psd1?
##Why is unit testing important for scripts?
##What benefits do we get from writing tests?
##How does TDD play into the equation? Is that feasible with scripts?
##I'm curious diffs between pester and psate. I integrated both in PoshTools and see a lot of similarities.
## are there any youtube video tutorials for Pester
[http://www.meetup.com/Metro-Atlanta-Splunk-Meetup-Group/events/171166432/](http://www.meetup.com/Metro-Atlanta-Splunk-Meetup-Group/events/171166432/)
200MB free, and you can get more by, uhhhh ... sharing on facebook [http://news.cnet.com/8301-1023_3-57528605-93/netzero-subscribers-can-share-free-data-with-facebook-friends](http://news.cnet.com/8301-1023_3-57528605-93/netzero-subscribers-can-share-free-data-with-facebook-friends)
FYI: I am *not* endorsing NetZero. You should also try http://www.freedompop.com/
Hey halr9000: /topic #PowerScriptingPodcast [http://vaughnlive.tv/embed/video/jonwalz](http://vaughnlive.tv/embed/video/jonwalz)
* halr9000 changes topic to: http://vaughnlive.tv/embed/video/jonwalz
[https://github.com/pester/Pester](https://github.com/pester/Pester)#pester
[https://github.com/jonwagner/PSate/wiki/PSate-v-Pester](https://github.com/jonwagner/PSate/wiki/PSate-v-Pester)
Dave_Wyatt: [https://github.com/jaykul/PSAINT](https://github.com/jaykul/PSAINT) 😉
[https://www.destroyallsoftware.com/talks/boundaries](https://www.destroyallsoftware.com/talks/boundaries)
[https://www.destroyallsoftware.com/screencasts](https://www.destroyallsoftware.com/screencasts)
Another good resource is Working Effectively With Legacy Code by Michael Feathers. Good discussion of where to create seams for testing. [http://www.amazon.com/Working-Effectively-Legacy-Michael-Feathers/dp/0131177052/ref=sr_1_1?s=books&ie=UTF8&qid=1394764302&sr=1-1&keywords=working+with+legacy+code](http://www.amazon.com/Working-Effectively-Legacy-Michael-Feathers/dp/0131177052/ref=sr_1_1?s=books&ie=UTF8&qid=1394764302&sr=1-1&keywords=working+with+legacy+code)
[http://babushka.me/](http://babushka.me/)
Example of a resource [https://github.com/PowerShellOrg/DSC/blob/master/Resources/StackExchangeResources/DSCResources/StackExchange_Pagefile/StackExchange_Pagefile.psm1](https://github.com/PowerShellOrg/DSC/blob/master/Resources/StackExchangeResources/DSCResources/StackExchange_Pagefile/StackExchange_Pagefile.psm1)
Example of tests for a resource [https://github.com/PowerShellOrg/DSC/blob/master/Resources/StackExchangeResources/DSCResources/StackExchange_Pagefile/StackExchange_Pagefile.Tests.ps1](https://github.com/PowerShellOrg/DSC/blob/master/Resources/StackExchangeResources/DSCResources/StackExchange_Pagefile/StackExchange_Pagefile.Tests.ps1)
[http://scottmuc.com/powershell-pester-2-and-1-dot-2-released/](http://scottmuc.com/powershell-pester-2-and-1-dot-2-released/)
[http://www.powershellmagazine.com/2014/03/12/get-started-with-pester-powershell-unit-testing-framework/](http://www.powershellmagazine.com/2014/03/12/get-started-with-pester-powershell-unit-testing-framework/)
[http://scottmuc.com/blog/development/powershell-bdd-testing-pester-screencast/](http://scottmuc.com/blog/development/powershell-bdd-testing-pester-screencast/)
[http://www.powershellmagazine.com/2014/03/12/get-started-with-pester-powershell-unit-testing-framework/](http://www.powershellmagazine.com/2014/03/12/get-started-with-pester-powershell-unit-testing-framework/)
[https://github.com/pester/Pester/graphs/contributors](https://github.com/pester/Pester/graphs/contributors)
[http://twitter.com/ScottMuc](http://twitter.com/ScottMuc)
[http://scottmuc.com](http://scottmuc.com)
[https://powershell.org/2014/03/13/building-desired-state-configuration-custom-resources/](https://powershell.org/2014/03/13/building-desired-state-configuration-custom-resources/)
did you see this? [https://github.com/PowerShellOrg/ebooks/tree/master/DSC](https://github.com/PowerShellOrg/ebooks/tree/master/DSC)
In This Episode
Tonight on the PowerScripting Podcast, we talk to Nick Howell from NetApp about the software designed datacenter.
News
-
[https://powershell.org/community-events/summit/](https://powershell.org/community-events/summit/)
-
The Portland PowerShell user group is [meeting on March 18th](http://www.eventbrite.com/e/powershell-portland-user-group-poshpug-tickets-7869547027?aff=es2&rank=5&sid=c212fac7a88b11e39b4112313b002034)
-
The Chicago Windows User Group is [meeting on March 20th](http://www.eventbrite.com/e/chicago-windows-user-group-cwug-march-meeting-tickets-10841935521?aff=es2&rank=9&sid=31fc59e8a88c11e3aa0c12313b002034) talking about PowerShell Workflow
-
March 21st is The [New York City Techstravaganza](http://www.techstravaganza.com/)
Interview
Guests - Nick Howell from Netapp
Links
-
[https://communities.netapp.com/community/products_and_solutions/storage_management_software/workflow-automation](https://communities.netapp.com/community/products_and_solutions/storage_management_software/workflow-automation)
-
[http://datacenterdude.com/netapp-podcast/](http://datacenterdude.com/netapp-podcast/)
Chatroom Highlights
## Hi all! Is this going to be a generic focus or is there some NetApp product?
### SDN is crap until there are PowerShell cmdlets!!! 🙂
#### What role will powershell play in the Software Defined Storage landscape?
##does he work in NC with Glenn?
The Question - Hero/Power
-
Superman
On a recent PowerScripting Podcast episode, I went off on a bit of a career-oriented rant, and amongst other things mentioned something to the effect of, “if you’re not learning DSC now, you’re screwed.” It hopefully goes without saying that my comment applies to folks working in environments that use Microsoft server products; obviously, in an all-Linux shop you’re pretty safe not knowing Microsoft’s technologies :). Some discussion on Twitter ensued, a place I hate for discussions because 140 characters leaves you enough room to be misunderstood and paraphrased, but not enough room to articulate your perspective. I wanted to follow-up on the rant a bit, and by doing so here hopefully engender a more detailed discussion. One comment - and this is a nice, succinct one to start with: “Is it a useful tool? Yes; is it the tool that makes or breaks a sysadmin? No.” Couldn’t disagree more. Maybe it won’t make or break you _today, _but in a few years - absolutely. Unless you’re stuck in a company that’s going to just run Win2008 forever. So if it’s going to be an inevitable part of your future, then you are, in fact, more and more screwed the longer you ignore it. It’s like the poor NetWare guys who ignored TCP/IP. They were screwed, in the end, and had to hustle to catch up. I hate playing catch-up; in my mind “screwed” is what you are whenever you’re playing “catch up.” So maybe knowing my definition of “screwed” will help the discussion a bit! Another comment - and a good one - was, “[PowerShell] is a must… but I live in a multi-platform world where it is just a part, not a definer, of the whole.” Excellent point, but if you must manage Microsoft technologies, then DSC is going to be a part of your life. Perhaps it’ll be DSC “as managed by ___” cross-platform solution, but DSC is going to be the underlying API. If you’re comfortable being insulated from underlying APIs by tools, fine - but you’ll never be as effective as you would be if you knew those tools. Point being, in a multi-platform environment, DSC is not all you need to know, but you must know it (or begin to) if that environment includes Microsoft server products. Could you manage your Microsoft elements without using DSC? Sure. You can also drive a car using mind control, I’m told, but it’s not the most effective way of doing so. Folks are quite welcome to disagree, but I do firmly believe that any environment would benefit from DSC. Time will tell if I’m right or wrong there, but personally - and this is very much a “this is how I proceed with my life” thing - I would rather be on the forefront of something than turn around in 5 years and realize I should have been there. Keep in mind that, 6 years ago, folks felt free to ignore PowerShell. Many now wish they hadn’t. It was a lot easier to get into PowerShell in v1, and then “keep up” with new versions, than to dive in now. Why do I think DSC will be the same? Because _DSC is the ultimate outcome of PowerShell. _DSC is what PowerShell has been building toward. I think this is perhaps a perspective that other folks don’t share. To them, DSC is “just a tool.” It isn’t doing anything they couldn’t have done all along. But understand something about DSC: This is something Snover planned _almost a decade ago. _It was the ultimate destination of his “Monad Manifesto.” DSC is exactly what PowerShell has been building up to. DSC is the _main reason, _in many ways, for PowerShell. If you really think about it, DSC removes much of the need for you to learn PowerShell.** ** That’s a bold statement. Let me explain. There’s no question that PowerShell can be difficult to learn. It’s programming, and not everyone has an aptitude for that. There are literally thousands of commands, and that’s just from Microsoft product teams. It’s a huge product, like any language has idiosyncrasies, and you can come at it from a half-dozen different directions. Writing scripts that configure or re-configure computers, or even that report on current configurations, can be complex. Yes, they’re faster than doing it manually - but it’s not a zero effort. DSC abstracts all of that. To create a DSC configuration, _you don’t need to know how to program, _yet you can potentially leverage all the PowerShell investment Microsoft has been making. You can use PowerShell, and all it can do, without having to really touch much of PowerShell. Sure, there’s a middle layer of folks writing DSC resources (which use PowerShell commands as their API), but that’s going to be a small subset of folks. A highly-paid subset, I suspect. If Microsoft had had infinite time, money, and people, they’d have just given us DSC and not mentioned PowerShell at all. PowerShell v1, v2, and v3 were building blocks toward what DSC gives us. DSC was the _point, _all along. We’re just seeing the tippy top of that, now. There’s a glacier underneath. Now, you may be thinking, “bullshit. I can’t use DSC to do everything that my job involves, even if I just think about my Microsoft assets.” True. _Today. _But folks, you need to have a little vision. We’re dealing with DSC 1.0. _Kindergarten DSC. _Literally, what you’re seeing now is the simplest possible expression of something that _the world’s largest software company took seven years to deliver. _Seven years. Most of Microsoft’s PowerShell investment, going forward, is going to be in DSC - I guarantee it. They’ve done the lower-level building blocks already. “Can I use DSC to generate configuration reports?” Maybe not today. But have you noticed that a DSC pull server can have a “compliance server” component? Have you looked at its service definition? It’s basically a way for servers to report in on the state of their configuration compliance. That’s reporting. And that’s my point: DSC _has a super long way to go. _It is going to be everything for an administrator - and that’s going to happen fast. Looking at DSC today, that may be tough to imagine. So was PowerShell, in 2006. And we haven’t even seen the tooling that will be layered on top of DSC yet, because it’s all so new. The tool where you click a Wizard to add a user… and the tool goes and rewrites four dozen server configuration files, causing the user to exist in AD, in your accounting system, as a home directory on a file server, and so on. Yeah, that’ll all happen. Eventually, you won’t touch servers anymore - you’l touch their configuration files, and they’ll reconfigure themselves appropriately. That’s why this is such a big deal. It’s not a tool. It’s the administrative _interface. _ So when I say, “if you’re not learning DSC _right now, _you’re screwed,” it’s because I personally believe that to be true. My experience in the industry and my familiarity with how Microsoft pursues these things informs that opinion. You are going to fall behind the curve so fast you won’t even realize it’s a curve anymore. Today, people look at Infant DSC and see a basic configuration tool. I see Teenager DSC, and Young Adult DSC, coming around the corner, and _they are going to absolutely change the way you are required to manage Microsoft products. _Yeah, I personally want to be on board with that right now. “What about a small shop? Isn’t DSC meant for large scale?” No, large enterprises just have the _most obvious _advantage from DSC. It’s less obvious to small shops. You know how Exchange 2007 really impressed everyone, because the GUI was just running PowerShell under the hood? That meant a small shop could still get the GUI, but you could always drop down to PowerShell when you needed to. It also meant that not _everything _went into the GUI, and sometimes you had to drop into PowerShell anyway. I predict DSC will do the same thing. GUIs won’t run PowerShell commands anymore - they’ll modify DSC configurations. Those configurations will then be implemented on the affected servers. Your cross-platform management tools? If they’re smart, they’ll be doing the same thing. Think about that. DSC isn’t going to be “just a tool.” It’s going to be the entire interface by which you interact with Microsoft server products. It’s as important as the mouse or the keyboard. I truly think people aren’t seeing the end-game when it comes to this technology. You know those admins who only know what the GUI shows them? They don’t know much about what’s happening underneath, and as a result, they’re not very good at planning, architecture, troubleshooting, or anything else that requires a deeper knowledge. That’s where you stand with DSC. You either ride that bus, or get run over by it. Eventually. Do you want to risk not knowing this thing? You might. Perhaps in your job position you know it’s not going to affect you. For me, I won’t risk it. So that’s where my perspective comes from. In my world, this thing is a must-have. And yes, that’s an enterprise-class world, with large, cross-platform environments. But it’s also a perspective from my experience in SMB - I’d have killed for DSC, given the minuscule budgets and staff I worked with in those environments, and given my colleagues’ distaste for scripting. Anyway, that’s how I feel about it - in more detail than 140 characters allowed ;). If you have a different perspective, please feel free to share it. I can’t promise that you’ll change my mind (and I’m not really out to change yours), but it’s good for the world in general to see different perspectives, so that folks can make informed decisions about their own career directions.