Episode 316 - PowerScripting Podcast - Jeffrey Snover from Microsoft on Open Sourced PowerShell v6

In This Episode

Tonight on the PowerScripting Podcast, Jeffrey Snover from Microsoft on open source PowerShell

 

Slack Chatroom

 

Interview

 

Chatroom Highlights

<jaykul> ## What about ARM?

<jcotton> is ## for questions?

<gavin> ## @halr9000 did you find a goat to come on the show as a special guest?

<jcotton> ## jsnover needs more edge in his life

<jaykul> ## PowerShell is dating bikers.

<sqlvariant> ##Jeffrey, where were y'all hiding Ken Van Hyning all these years?

<itadder> ##jeffrey where did you get inspired to bulid powershell?

<halr9000> ok, if you have q’s, then as sqlvariant has shown, please add ## to the front!

<jaykul> ## Is that all?

<jaykul> ## ARM support?

<jaykul> ## SSHRM

<jcotton> ## remember OneGet and the legal team? :stuck_out_tongue:

<jcotton> juneb: prefix questions w/ ##

<juneb> ## Please tell us more about the governance model.

<itadder> ## how did legal allow MIT license?

<pscookiemonster> ## Were there lessons learned working with legal/folks unfamiliar with OSS?  I know Chef offers a webinar for legal folks, it seems like it would be helpful for large orgs like Microsoft to help sell and teach this

<juneb> ## Will the roles of team members change?

<jaykul> ## How can I get paid to work on open source powershell? 😛

<jaykul> ## I second Rich's question: what's with the release timing?

<juneb> ## When will core help be open-sourced?

<jaykul> ## wait, is that why CIM?

<kilasuit> ## Can we get an explaination on the Powershell RFC Process for changes ##

<jcotton> ## since we're now taking comments, is the team aware that some nuget packages (like Microsoft.Management.Infrastrucutre) are missing XML doc files?

<ngetchell> ## For bugs should we still use uservoice, connect, or github issues now?

<FoxDeploy-Stephe> ### We noticed version 6 on PowerShell for Linux, when can we expect ver 6 on Winders ###

<beefarino> ### is there any PowerShell features that don't work in PS Core?

<powerschill> ## For Linux services would you expect to use Get-Services or a new cmdlet like Get-LinuxServices?

<sqlvariant> ##This is why we need Out-DataTable to be in PowerShell core!!  :slightly_smiling_face:

<texmandie> ## when might we see remoting to Azure/Office 365 tenants from Mac/Linux?

<itadder> ## will powershell run hurd

<FoxDeploy-Stephe> ###I need mah winforms in Linux, can we get System.Windows.Forms ports to linux plz

<jcotton> ## my thing about XML doc files

<jaykul> ## yeah but what about rasbian

<gavin> ## Raspbian!

<bitzbyte> ## Yes, it was around Raspbian/linux

<gavin> ## NEED ARM!

<jcotton> ## need xml doc files in all the nuget pkgs

<richprescott> ## Sooooo, how do I get PowerShell on my Chromebook?

<juneb> ## Do we use UserVoice or GitHub issues?

<beefarino> ## will we be able to organize assets in our modules for different platforms?  or will module authors be required to manage that on their own?

<bladefirelight> ### will script block loging work with syslog?

<sqlvariant> ## Well SQL Server is on Linux so they have a business case :champagne:

<jim> ## will we be able to organize assets in our modules for different platforms?  or will module authors be required to manage that on their own?

<richprescott> ## what is next for Snover and team?  e.g. Drawbridge, rewriting kernel, on-premise DSC mgmt system

<beefarino> ## e.g., right now I have to manually load 32 or 64 bit native dlls in my modules; will I need to manually load linux vs windows as well?

<dougfinke> ## any thoughts on deeper PS integration with Python etc, beyond strings?

<itadder> ## will get a restapi  for AD, and will we get Join domains cmdlets for powershell on mac

<dagryph> ## OOH. DSC using powershell on linux, instead of the separate DSC package???

<JasonMilczek> ##Have there been any advancements in DSC on Linux?

<kilasuit> ## DSC will we see a revamp of the DSC for linux to kill off python ##

<JasonMilczek> ##Are you aware of any other vendors writing psmodules for Linux right now?

<richprescott> ##Snover, was PSDirect one of the drivers for PSnix?  Being able to manage Win/Nix on Nano server Hyper-V with one language

<JasonMilczek> ##or MAC?

<itadder> ## will we see modules to manage bind9 or dhcpd or other services or MYSQL?

<JasonMilczek> ##Forgive me if this was already answered, but can we now powershell remote to Linux?

<itadder> ## do we require !#/usr/local/bash

<organicit> ## will there ever be a means to #! powershell in a script

<itadder> ## what about text enconding

<dougfinke> ## what can we expect in the next 6, 12 months

<jim> ## Yes, upcoming roadmap??

<itadder> ## what about an update to the conhost terminal in windows ? Will it support more then 256 colour?

<richprescott> ## ONE MORE!  What's next for Snover and team?

<sqlvariant> ##Ask about Ken Van Hyning (SQL Tools team) where were they hiding him?!?!

<Vern_Anderson> ## What question is he up to? One thing on an island?

<Vern_Anderson> ## Oh you guys don't ask the last question any more?

<FoxDeploy-Stephe> ###Whats next, will they take DIR away from us?

<richprescott> ## As of PS5+, does Write-Host write to stream or no?

<FoxDeploy-Stephe> ###Found it

<jasonmorgan> ## Is the redirect operator modified in linux or does it behave as per normal?

<bitzbyte> ## Wouldn't this be the role of .NET Standard??

<<@UNJM7|jonwalz>> jonwalz uploaded a file: Pasted image at 2016-08-18, 8:51 PM https://powershell.slack.com/files/jonwalz/F22RNF6UQ/pasted_image_at_2016_08_18_08_51_pm.png and commented: Anyone else seeing PowerShell as the top trending topic on Facebook?

<halr9000> https://github.com/PowerShell/PowerShell/blob/master/docs/community/governance.md

<jaykul> https://github.com/PowerShell/PowerShell/tree/master/src/Microsoft.Management.Infrastructure.CimCmdlets

<juneb> Governance model: https://github.com/PowerShell/PowerShell/blob/master/docs/community/governance.md

<beefarino> btw PowerShell going open source is trending on facebook 🙂  https://www.facebook.com/topic/Windows-Powershell/109314949087498?source=whfrt&position=2&trqid=6320345599904818250

<itadder> @foxde https://github.com/PowerShell/PowerShell/blob/master/docs/installation/windows.md#msi

<<@UPLLB|halr9000>> halr9000 uploaded a file: Untitled https://powershell.slack.com/files/halr9000/F22S025RC/-.pl

<gavin> https://www.reddit.com/r/PowerShell/comments/4yb5yb/who_is_the_mystery_guest_tonight_and_what_might/d6mgixw

<halr9000> https://stedolan.github.io/jq/

<FoxDeploy-Stephe> @whatevergeek https://developer.microsoft.com/en-us/windows/iot/getstarted

<pscookiemonster> I liked this thread in hacker news: https://news.ycombinator.com/item?id=12314653 - nice demonstration of why, even if you *can* use text, you might prefer objects

<ebekker> Linus actually is cool with systemd:  https://linux.slashdot.org/story/15/06/30/0058243/interviews-linus-torvalds-answers-your-question

<jaykul> https://gist.github.com/Jaykul/15a6982aad9b6197a537f1ce5a786723

<kilasuit> regarding Aliases there is an open issue here at  https://github.com/PowerShell/PowerShell/issues/929

<jcotton> here's the PR @jsnover mentioned https://github.com/PowerShell/PowerShell/pull/1901

<kilasuit> I've suggested this as a resolution https://github.com/PowerShell/PowerShell/issues/929#issuecomment-239697927

<powershellnerd> ARM!!! https://media.giphy.com/media/HJN39I1q6EBKE/giphy.gif

<r_keith_hill> @itadder the hard part is that other than ASP.NET http://ASP.NET Core there is no presentation stack for .NET Core.  VSCode gets a pass because it uses Electron / Chromium / Html / JS

<ebekker> http://electron.atom.io/apps/

<ebekker> And you can actually write Electron using C#:  https://github.com/kexplo/electron-edge

<juneb> https://youtu.be/2WZwv7TxqZ0

<dougfinke> possible alternate to ogv, don't know if works on the new stuff yet https://github.com/dfinke/PowerShellSlackathon/tree/master/ExportDataTable

<r_keith_hill> http://redhatloves.net/

<kilasuit> also https://github.com/Pash-Project/Pash/issues/429

<ebekker> Is .ps a TLD?  RedHat should get RedHatLoves.ps http://RedHatLoves.ps

<ebekker> First book should be written in the open on https://www.gitbook.com/

<jaykul> https://github.com/PowerShell/PowerShell/issues/1103

<jaykul> https://github.com/PowerShell/PowerShell/issues/1390

<organicit> https://cloud.google.com/tools/powershell/docs/

<itadder> dereksonthejob  http://prnt.sc/c7jmuo

<ebekker> Explor .NET API Catalog:  http://apisof.net/catalog/System

<<@URXAA|dereksonthejob>> dereksonthejob uploaded a file: Screen Shot 2016-08-18 at 10.41.10 PM https://powershell.slack.com/files/dereksonthejob/F22SKJQLR/screen_shot_2016-08-18_at_10.41.10_pm.png and commented: here we go

<sqlvariant> @jonwalz Can you include in the show notes that SQL Server got 3 new cmdlets, and people can get the new SqlServer module by installing SSMS 16.3 http://sqlps.io/dl

<<@URXAA|dereksonthejob>> dereksonthejob uploaded a file: @r_keith_hill https://powershell.slack.com/files/dereksonthejob/F22SRLC02/screen_shot_2016-08-18_at_10.41.10_pm.png and commented: I have it now, thx to @itadder

<halr9000> https://github.com/PowerShell/PowerShell/issues/1621

<halr9000> https://github.com/PowerShell/PowerShell/issues/706

<FoxDeploy-Stephe> https://github.com/PowerShell/PowerShell/issues/1273

<sqlvariant> Oh, here's a video we did last month if people need to catch up to speed on what's going on with SQL PowerShell in 2016: https://youtu.be/rc6lwiTE9GI

<adil> http://unix.stackexchange.com/questions/695/where-does-mac-os-x-come-from

<<@UNNCY|r_keith_hill>> r_keith_hill uploaded a file: RE line endings: https://powershell.slack.com/files/r_keith_hill/F22SHCYDB/pasted_image_at_2016_08_18_08_54_pm.png and commented: Just a LF but concerns me the default encoding is unicode for out-file still

About the Author

Jonathan Walz

Since March 2007, Jonathan Walz has been the co-host and technical brains for the PowerScripting Podcast. Conceived as a radio show for the PowerShell community, the podcast is the longest-lived PowerShell show in existence, and has featured dozens of weekly guests.

3 Comments

  1. I posted this on your youtube video, but I don't know if you read those comments or not, so I figured I'd spam you with it here, too.

    Hey, thanks for the great episode! I'm one of those free-software wackos that only runs Linux and avoids proprietary software like the plague, but I'm really interested in PowerShell on Linux. I love using bash (and yes, even regex), but the best thing about bash is how it allows you to leverage and compose all the great tools that come bundled in the userland (GNU and friends). bash as a language unto itself is... a little funky (for several reasons which are well documented elsewhere). On the other side, I also love python, but it doesn't give that terse simplicity of the shell for leveraging external programs. I've been sort of looking for a language with a sane object model (like python), but gives that easy composability that you get with the shell. To that end, I actually wrote a Python pre-processor that allows the inlining of shell commands, but I think PowerShell presents another interesting way to look at the problem. As a note to PowerShell users, I have a tip or two about how to think of Unix command output as structured data. PowerShell (apparently; I'm no expert!) thinks about objects in a way that is similar to JSON. You have ordered arrays, key: value-based mappings, etc. Unix came around before object oriented programming, but there is still an implicit data model, though it took me years to figure it out. You've probably heard that on Unix, "everything is a file." This is true not only in how the OS interacts with hardware, but also in how the shell thinks about data. If a file is the top level data structure (it isn't actually, that would be the filesystem, but we all know more or less how that works), it is subdivided into lines. Shell commands very frequently produce data that is intended to be read line by line, exactly as a file would be. Most shell utilities will parse data from another process exactly as they would parse a file, and are agnostic about where the input came from in that regard. Lines of a file are often further divided into fields separated by whitespace or other delimiters (this is where `awk` comes into its own), so what you are really dealing with is tabular data. The logic of dealing with data from Unix utilities as well as Unix system files is frequently very similar the logic of dealing with spreadsheets, csv files or relational databases. If PowerShell, not to mention PowerShell users, want to excel in a Unix environment, PowerShell will need first-class tools for dealing with files and process output as tabular data (and perhaps it already has). This is the dao of the Unix shell. Granted, a lot of data comes from the web these days in the form of JSON or XML (where you're much better off using Python/Perl/Ruby than Bash), but for dealing with system internals, this file-and-process-output-as-structured-data thing has to be understood.