A Month of User Group Activity

§ January 12, 2014 17:11 by beefarino |

stockvault-dog-sleeping-in-bed131802I just got back from CodeMash, and my brain is full of project ideas and new-to-me information that I’m still trying to digest.  More on that later.  I’ve managed to stick my head out of the covers long enough to look at my calendar for the next four weeks, and it’s chock full of speaking engagements I wanted to let you know about.

First up, we have a virtual presentation for the Mississippi PowerShell User Group on Tuesday, January 14 at 9:30pm ET.  This will be an online presentation, but you’ll need to register to attend.  The topic for the evening is PowerShell Gotchas! –  this is a talk derived from my Pluralsight course of the same name, and the abstract for the talk is available below.

Next week is a two-fer!  I’ll be giving the PowerShell Gotchas! talk to the Florida PowerShell User Group on January 21 at 6:30pm ET.  This is another online presentation for which you’ll need to register

And then on January 23rd I’ll be in Alpharetta for the Atlanta PowerShell User Group – space is limited for this live event so be sure to register if you plan to attend.

And finally, I’ll be participating in PowerShell Saturday #007 on February 8.  This event is stacking up to be a great one – fantastic speakers and fantastic content and fantastic fun.  I’ll be running a double-oh-seven-spy-themed Iron Scripter! competition as well as presenting on PowerShell Gotchas!.  Space is limited and tickets are going fast, so if you’re interested in this all-day event please register soon.

Whew.  That’s a lot of speaking.  And it’s not over then.  Later in February I’ll be presenting to the Microsoft Integration Architects (again in Atlanta) about message-based application architectures.  And in April, I’ll be giving three sessions of new content at the PowerShell Summit North America.

Sweet Georgia Brown, I must be insane. 

PowerShell Gotchas!

PowerShell is the de facto standard for automation and administration on Windows systems.  The central design mantra in PowerShell is Think-Type-Get.  That is: Think what you want, Type it, and Get the results.  Unfortunately this mantra tends to break down - PowerShell combines concepts from other languages (Perl, Python, and VBScript for example) and borrows ideas from other platforms (like pipelining in Bash).  This creates an experience that feels familiar, but fails to behave consistently with our experiences.  This creates "gotchas".  In this talk we will analyze some specific cases of PowerShell's strange behavior in order to better understand how and why PowerShell works the way it does.



PowerShell Saturday #007

§ December 3, 2013 10:57 by beefarino |

logo_007_small

On February 8 2014, the Charlotte PowerShell User’s Group will be hosting PowerShell Saturday #007!

This will be the second PowerShell Saturday event hosted by the Charlotte group.  The last one (in September of 2012) was a huge success – the event sold out, sessions were amazing, the first ever Iron Scripter! winner was crowned…. oh, oh!  And there were tacos for lunch.  Tacos!  And PowerShell!  What a funtaculariffic day for everyone!

Saying that, after looking at the speaker and sponsor lineups for the upcoming February event, all I can say is:

007 is making me giddy with anticipation

I’ll go into more details in future posts, but for now allow me to whet your appetite:

  • We have 15 sessions of content and scripting games, brought to you by some of the most prolific and knowledgeable community leaders available
  • With Introductory and Advanced tracks of sessions, there is content appropriate for all levels of ability and interests
  • The addition of a new Poshpourri track allows us to bring special interest topics to you – think “007” kind of things …. think security….. think reverse-engineering….
  • Our speakers are traveling from as far away as Ottawa to share knowledge with you
  • You will have the chance to participate in another official Iron Scripter! event, with a one-of-a-kind ego prize you don’t want to miss

All this for a paltry $15 of your germ-ridden cash, all of which goes to support the user group.  So please, register now and be part of the fun!



ScriptCS or PowerShell? part 1

§ May 15, 2013 13:02 by beefarino |

TL;DR: Use both: https://github.com/beefarino/ScriptCS-PowerShell-Module

A few days ago I posted a teaser of a project I hammered together that allowed you to run ScriptCS inside of your PowerShell session.  This morning I pushed the cleaned-up version to to GitHub: https://github.com/beefarino/ScriptCS-PowerShell-Module.

I’ve been watching ScriptCS with much interest – I’m a huge fan of scripting and REPL interaction and having another environment to leverage makes me happy.  What makes me sad is when I read crap like this on twitter:

ScriptCS is awesome!  <expletive deleted> PowerShell!

Or this:

PowerShell is amazing and ScriptCS is teh suck!

Why anyone would shun one or the other is beyond me.  They each have a wealth of possibility to offer.  My first instinct with new technology is to figure out how to make it work with other things I already know.  This helps me understand the guts of the new thing and gives me a frame of reference to move forward.  So that’s what I’m doing, and the potential is tantalizing.

Phase One

Phase one was pushed to GitHub this morning.  You can now run ScriptCS code inside of a PowerShell session:

PS > ipmo scriptcs
PS > invoke-scriptcs '"Hello PowerShell!"'
Hello PowerShell!

You can even pipe data to ScriptCS and consume it:

PS > 0..9 | invoke-scriptcs '(int)pscmdlet.Input[0] + 100'
100
101
102
103
104
105
106
107
108
109

And put data from ScriptCS onto the pipe:

PS > 0..9 | `
    invoke-scriptcs '(int)pscmdlet.Input[0] + 100' | `
   %{ "Output: $_" }
Output: 100
Output: 101
Output: 102
Output: 103
Output: 104
Output: 105
Output: 106
Output: 107
Output: 108
Output: 109

There’s still lots to do, but the possibilities are pretty amazing.  Ever wished you could use LINQ from PowerShell?  Now you can:

PS > invoke-scriptcs -input (0..9) -script 'from i in pscmdlet.Input where (int)i > 5 select i'
6
7
8
9

Phase 2

Phase 2 is pretty much the opposite of what I’ve done so far.  Phase two is a Script Pack for ScriptCS that allows you to run arbitrary PowerShell script in ScriptCS.  This is working now – the plan is to clean it up over the next week and make it public.  Stay tuned…



Yo Dawg I Heard You Like Scripts So I Put Scripts in your Scripts

§ May 13, 2013 12:56 by beefarino |

 

image

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Because reasons, that’s why.