<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" version="2.0">

<channel>
	<title>Force Multiplication through IT Automation</title>
	
	<link>http://www.hofferle.com</link>
	<description>Jason Hofferle</description>
	<lastBuildDate>Sun, 28 Apr 2013 19:54:14 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/ForceMultiplicationThroughItAutomation" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="forcemultiplicationthroughitautomation" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Chicken Soup for the PowerShell Soul: The 2013 PowerShell Summit</title>
		<link>http://www.hofferle.com/chicken-soup-for-the-powershell-soul-the-2013-powershell-summit/</link>
		<comments>http://www.hofferle.com/chicken-soup-for-the-powershell-soul-the-2013-powershell-summit/#comments</comments>
		<pubDate>Sun, 28 Apr 2013 18:43:49 +0000</pubDate>
		<dc:creator>Jason Hofferle</dc:creator>
				<category><![CDATA[Community]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[PowerShell Summit]]></category>

		<guid isPermaLink="false">http://www.hofferle.com/?p=1424</guid>
		<description><![CDATA[Last week I attended the 2013 PowerShell Summit in Redmond, and it exceeded my expectations in every way. This was an event that felt like a three day user group meeting where PowerShell enthusiasts from all over the world decided to show up. I’ve never been to Seattle, and I have to thank Aaron Nelson [<a href="http://www.hofferle.com/chicken-soup-for-the-powershell-soul-the-2013-powershell-summit/" rel="nofollow">...</a>]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.hofferle.com/wordpress/wp-content/uploads/2013/04/Geek-Xing.jpg?5c4b04"><img src="http://www.hofferle.com/wordpress/wp-content/uploads/2013/04/Geek-Xing-225x300.jpg?5c4b04" alt="Geek Xing" width="225" height="300" class="alignleft size-medium wp-image-1425" /></a>Last week I attended the 2013 <a href="http://powershell.org/wp/powershell-summit-north-america/" title="PowerShell Summit North America" target="_blank">PowerShell Summit</a> in Redmond, and it exceeded my expectations in every way. This was an event that felt like a three day user group meeting where PowerShell enthusiasts from all over the world decided to show up.</p>
<p>I’ve never been to Seattle, and I have to thank <a href="http://sqlvariant.com/" title="SQLvariations: SQL Server, a little PowerShell, maybe some Hyper-V" target="_blank">Aaron Nelson</a> and <a href="http://www.jasonhelmick.com/" title=""Knowledge is PowerShell" Jason Helmick's Blog" target="_blank">Jason Helmick</a> for being my de-facto tour guides Sunday afternoon. Walking around downtown and getting a taste of the stereotypical Seattle weather was a great start to the week, and after that first day the sun decided to come out, which seemed to be a bigger deal for the locals than someone from Florida. Sunday evening there was a community mixer that immediately clarified how different this was going to be than a typical IT conference. At any other venue, I don’t get to chat with <a href="http://www.jsnover.com/blog/" title="Jeffrey Snover's blog" target="_blank">Jeffrey Snover</a> about DevOps, or talk to <a href="http://concentratedtech.com/" title="Concentrated Technology" target="_blank">Don Jones</a> about PowerShell content for desktop administration. This was truly a Most Valuable Professional (MVP) experience for non-MVPs.<div id="attachment_1427" class="wp-caption alignright" style="width: 235px"><a href="http://www.hofferle.com/wordpress/wp-content/uploads/2013/04/Don-Jones.jpg?5c4b04"><img src="http://www.hofferle.com/wordpress/wp-content/uploads/2013/04/Don-Jones-225x300.jpg?5c4b04" alt="Don Jones at the 2013 PowerShell Summit" width="225" height="300" class="size-medium wp-image-1427" /></a><p class="wp-caption-text">Don Jones</p></div></p>
<p>I like to think I know a thing or two about PowerShell. I read about it, I write about it, I use it every day at work, but after the first session it became clear how much I don’t know. There weren’t just PowerShell gurus attending, there were C# MVPs, SQL MVPs, and senior software engineers that designed the programs I use every day. It&#8217;s quite humbling to go from being &#8220;The PowerShell Guy&#8221; at work to a conference where it feels like everyone knows more about PowerShell than me.</p>
<p>The summit was held at the Microsoft campus, which is a neat experience itself, but you have to hand it to them for providing such outstanding support for this event. The conference rooms, the food, the power strips everywhere for laptops was a notch above what you’d see at a typical conference. There&#8217;s no requirement for the <a href="http://blogs.msdn.com/b/powershell/" title="Windows PowerShell Blog" target="_blank">PowerShell Team</a> to put together a hands-on workshop, but they put in the effort, and that level of community involvement pays off. Conferences like TechEd don&#8217;t allow me to pull aside someone like <a href="http://www.powershellmagazine.com/2011/10/28/an-interview-with-powershell-expert-kenneth-hansen/" title="An interview with PowerShell expert Kenneth Hansen" target="_blank">Kenneth Hansen</a> and discuss the areas where I think the PowerShell team should focus on. This kind of experience is invaluable.</p>
<p><div id="attachment_1426" class="wp-caption alignleft" style="width: 310px"><a href="http://www.hofferle.com/wordpress/wp-content/uploads/2013/04/Alan-Renouf.jpg?5c4b04"><img src="http://www.hofferle.com/wordpress/wp-content/uploads/2013/04/Alan-Renouf-300x227.jpg?5c4b04" alt="Alan Renouf at the 2013 PowerShell Summit" width="300" height="227" class="size-medium wp-image-1426" /></a><p class="wp-caption-text">Alan Renouf</p></div>The real impact was made by the people that came to this event. Almost everyone who’s ever written a book on PowerShell was there, and they were accessible to talk with throughout the week. I was able to discuss constrained endpoints with <a href="http://www.powershellmagazine.com/" title="PowerShell Magazine" target="_blank">Aleksandar Nikolic</a>, talk to <a href="http://www.virtu-al.net/" title="Virtually everything is POSHable" target="_blank">Alan Renouf</a> about PowerCLI, and get advice from <a href="http://jdhitsolutions.com/blog/" title="The Lonely Administrator" target="_blank">Jeff Hicks</a> about the best way to solve a problem. <a href="http://blogs.technet.com/b/heyscriptingguy/" title="Hey, Scripting Guy! Blog" target="_blank">Microsoft Scripting Guy</a> Ed Wilson adds a contagious energy to learning PowerShell that makes people want to put new ideas into practice, and of course it’s always great to see <a href="http://twitter.com/ScriptingWife" title="Scripting Wife on Twitter" target="_blank">Scripting Wife</a> Teresa Wilson at a community event.</p>
<p>While many of the attendees are well-known authors and developers in the PowerShell world, there are a ton of people that are just writing some very cool PowerShell code. The entire week I saw people cracking open laptops to show someone else what they were working on. It’s astounding to watch a conversion at the coffee station transform into a group crowding around a laptop to see how someone solved a problem at their company. </p>
<p><div id="attachment_1428" class="wp-caption alignright" style="width: 235px"><a href="http://www.hofferle.com/wordpress/wp-content/uploads/2013/04/Jason-Shirk.jpg?5c4b04"><img src="http://www.hofferle.com/wordpress/wp-content/uploads/2013/04/Jason-Shirk-225x300.jpg?5c4b04" alt="Jason Shirk at the 2013 PowerShell Summit" width="225" height="300" class="size-medium wp-image-1428" /></a><p class="wp-caption-text">Jason Shirk</p></div>The best intangible benefit of the summit was how it reinvigorated my desire to learn more about PowerShell and pass on that knowledge. You can&#8217;t help but get fired up after seeing the cool stuff guys like <a href="http://csharpening.net/" title="Adam Driscoll's Blog" target="_blank">Adam Driscoll</a> and <a href="http://start-automating.com/" title="Start-Automating" target="_blank">James Brundage</a> have done. People excited about PowerShell get others excited about PowerShell. I’ve been guilty in the past of not writing about some of the things I&#8217;ve done because I deem it too simple or realize it’s something PowerShell royalty like <a href="http://www.leeholmes.com/blog/" title="Precision Computing" target="_blank">Lee Holmes</a> or <a href="http://twitter.com/BrucePayette" title="Bruce Payette on Twitter" target="_blank">Bruce Payette</a> has already written about. <a href="http://richardspowershellblog.wordpress.com/" title="Richard Siddaway's Blog" target="_blank">Richard Siddaway</a> gave some outstanding advice about blogging, which is very similar to some advice I received from <a href="http://halr9000.com/" title="TechProsaic" target="_blank">Hal Rottenberg</a> several months ago. Write for yourself. If you do something with PowerShell that was useful to you, don&#8217;t worry about what others have done, just write about how you solved the problem and it&#8217;s a good bet that it will help someone else. (By the way, “writing for yourself” takes on a certain irony the first time you search for a solution and find your own article.) I hope everyone that attended the summit takes what they&#8217;ve learned, applies those ideas to their own problems, and writes about the experience. PowerShell has an amazing community behind it, and that ecosystem only gets stronger as more people participate.</p>
<p>The PowerShell Summit North America 2013 was a great use of my time, and my cup runneth over with ideas for using what I’ve learned in my own organization. It was great to see old friends again, and meet a bunch of new ones. Thank you to <a href="http://powershell.org" title="PowerShell.org" target="_blank">PowerShell.org</a>, the event sponsors, and everyone that put in long hours making things run so smoothly. This was an event to remember, and I’ll definitely be back next year.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.hofferle.com/chicken-soup-for-the-powershell-soul-the-2013-powershell-summit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Honorary Scripting Guy!</title>
		<link>http://www.hofferle.com/honorary-scripting-guy/</link>
		<comments>http://www.hofferle.com/honorary-scripting-guy/#comments</comments>
		<pubDate>Wed, 07 Nov 2012 19:00:24 +0000</pubDate>
		<dc:creator>Jason Hofferle</dc:creator>
				<category><![CDATA[PowerShell]]></category>

		<guid isPermaLink="false">http://www.hofferle.com/?p=1399</guid>
		<description><![CDATA[This week I was selected as an Honorary Scripting Guy. The list includes some of the top authors and trainers in the PowerShell world, and it&#8217;s a real honor to be included among them. Many of us spend a lot of time blogging, writing articles, or speaking about PowerShell, often on our own time. It&#8217;s [<a href="http://www.hofferle.com/honorary-scripting-guy/" rel="nofollow">...</a>]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.hofferle.com/wordpress/wp-content/uploads/2012/11/Honorary-Scripting-Guy_large.png?5c4b04"><img src="http://www.hofferle.com/wordpress/wp-content/uploads/2012/11/Honorary-Scripting-Guy_large.png?5c4b04" alt="Honorary Scripting Guy Large Badge" title="Honorary Scripting Guy Large Badge" width="243" height="262" class="alignleft size-full wp-image-1402" /></a>This week I was selected as an <a href="http://blogs.technet.com/b/heyscriptingguy/archive/2012/11/04/announcing-the-2012-honorary-scripting-guys.aspx" title="Announcing the 2012 Honorary Scripting Guys" target="_blank">Honorary Scripting Guy</a>. The list includes some of the top authors and trainers in the PowerShell world, and it&#8217;s a real honor to be included among them. Many of us spend a lot of time blogging, writing articles, or speaking about PowerShell, often on our own time. It&#8217;s always nice to hear about how our contributions to the community are worthwhile. Thank you Ed Wilson, and congratulations to my fellow recipients!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.hofferle.com/honorary-scripting-guy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Learn PowerShell at the 2012 Tampa IT Pro Camp</title>
		<link>http://www.hofferle.com/learn-powershell-at-the-2012-tampa-it-pro-camp/</link>
		<comments>http://www.hofferle.com/learn-powershell-at-the-2012-tampa-it-pro-camp/#comments</comments>
		<pubDate>Fri, 31 Aug 2012 01:22:49 +0000</pubDate>
		<dc:creator>Jason Hofferle</dc:creator>
				<category><![CDATA[Community]]></category>
		<category><![CDATA[IT Pro Camp]]></category>
		<category><![CDATA[PowerShell]]></category>

		<guid isPermaLink="false">http://www.hofferle.com/?p=1390</guid>
		<description><![CDATA[I will be presenting PowerShell for Beginners at the Tampa IT Pro Camp on September 22. My session will be the first of an entire track dedicated to PowerShell that includes presentations by two PowerShell MVPs and a Microsoft senior premier field engineer. This is an excellent opportunity to get some free training and network [<a href="http://www.hofferle.com/learn-powershell-at-the-2012-tampa-it-pro-camp/" rel="nofollow">...</a>]]]></description>
				<content:encoded><![CDATA[<p>I will be presenting <a href="http://itprocamp.com/tampa/sessions/?session=yt1lxf" title="PowerShell for Beginners">PowerShell for Beginners</a> at the <a href="http://itprocamp.com/tampa/tampa-it-pro-camp/" title="2012 Tampa IT Pro Camp">Tampa IT Pro Camp </a> on September 22. My session will be the first of an entire track dedicated to PowerShell that includes presentations by two PowerShell MVPs and a Microsoft senior premier field engineer. This is an excellent opportunity to get some free training and network with other information technology professionals in Florida. I hope to see you there!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.hofferle.com/learn-powershell-at-the-2012-tampa-it-pro-camp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Join me at SQL Saturday #151 in Orlando</title>
		<link>http://www.hofferle.com/join-me-at-sql-saturday-151-in-orlando/</link>
		<comments>http://www.hofferle.com/join-me-at-sql-saturday-151-in-orlando/#comments</comments>
		<pubDate>Mon, 13 Aug 2012 13:00:00 +0000</pubDate>
		<dc:creator>Jason Hofferle</dc:creator>
				<category><![CDATA[Community]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[SQL Saturday]]></category>

		<guid isPermaLink="false">http://www.hofferle.com/?p=1383</guid>
		<description><![CDATA[I will be presenting PowerShell for Beginners at SQL Saturday #151 in Orlando, Florida on September 29. This session will cover the fundamentals for anyone interested in getting started with Windows PowerShell. SQLSaturday is a training event for SQL Server professionals and those wanting to learn about SQL Server. This event will be held Sep [<a href="http://www.hofferle.com/join-me-at-sql-saturday-151-in-orlando/" rel="nofollow">...</a>]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.hofferle.com/wordpress/wp-content/uploads/2012/08/SQL-Saturday-151.png?5c4b04"><img src="http://www.hofferle.com/wordpress/wp-content/uploads/2012/08/SQL-Saturday-151.png?5c4b04" alt="SQL Saturday 151" title="SQL-Saturday-151" width="236" height="115" class="alignleft size-full wp-image-1384" /></a> I will be presenting <a href="http://www.sqlsaturday.com/viewsession.aspx?sat=151&#038;sessionid=9361" title="PowerShell for Beginners" target="_blank">PowerShell for Beginners</a> at <a href="http://www.sqlsaturday.com/151/eventhome.aspx" title="SQL Saturday #151" target="_blank">SQL Saturday #151</a> in Orlando, Florida on September 29. This session will cover the fundamentals for anyone interested in getting started with Windows PowerShell.</p>
<p><em>SQLSaturday is a training event for SQL Server professionals and those wanting to learn about SQL Server. This event will be held Sep 29 2012 at Seminole State College, Main Campus, 100 Weldon Boulevard Bld, University Partnership Building, Sanford, FL 32773. Admittance to this event is free, but we do charge a lunch fee of 10.00 so that we can provide a lunch &#8211; not pizza! Please register soon as seating is limited, and let friends and colleages know about the event.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.hofferle.com/join-me-at-sql-saturday-151-in-orlando/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Guest Blog on PowerShell Remoting for Hey, Scripting Guy!</title>
		<link>http://www.hofferle.com/guest-blog-on-powershell-remoting-for-hey-scripting-guy/</link>
		<comments>http://www.hofferle.com/guest-blog-on-powershell-remoting-for-hey-scripting-guy/#comments</comments>
		<pubDate>Mon, 23 Jul 2012 12:24:22 +0000</pubDate>
		<dc:creator>Jason Hofferle</dc:creator>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[Remoting]]></category>

		<guid isPermaLink="false">http://www.hofferle.com/?p=1376</guid>
		<description><![CDATA[This week I&#8217;m the guest blogger for the Microsoft Hey, Scripting Guy! blog. The five-part series will focus on PowerShell Remoting. An Introduction to PowerShell Remoting: Part One An Introduction to PowerShell Remoting Part Two: Configuring PowerShell Remoting An Introduction to PowerShell Remoting Part Three: Interactive and Fan-Out Remoting An Introduction to PowerShell Remoting Part [<a href="http://www.hofferle.com/guest-blog-on-powershell-remoting-for-hey-scripting-guy/" rel="nofollow">...</a>]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.hofferle.com/wordpress/wp-content/uploads/2012/07/Typewriter.jpg?5c4b04"><img src="http://www.hofferle.com/wordpress/wp-content/uploads/2012/07/Typewriter-203x300.jpg?5c4b04" alt="Typewriter" title="Typewriter" width="203" height="300" class="alignleft size-medium wp-image-1377" /></a>This week I&#8217;m the guest blogger for the Microsoft <a href="http://blogs.technet.com/b/heyscriptingguy/" title="Hey, Scripting Guy! Blog" target="_blank">Hey, Scripting Guy! blog</a>. The five-part series will focus on PowerShell Remoting.</p>
<p><a href="http://blogs.technet.com/b/heyscriptingguy/archive/2012/07/23/an-introduction-to-powershell-remoting-part-one.aspx" title="An Introduction to PowerShell Remoting: Part One" target="_blank">An Introduction to PowerShell Remoting: Part One</a></p>
<p><a href="http://blogs.technet.com/b/heyscriptingguy/archive/2012/07/24/an-introduction-to-powershell-remoting-part-two-configuring-powershell-remoting.aspx" title="An Introduction to PowerShell Remoting Part Two: Configuring PowerShell Remoting" target="_blank">An Introduction to PowerShell Remoting Part Two: Configuring PowerShell Remoting</a></p>
<p><a href="http://blogs.technet.com/b/heyscriptingguy/archive/2012/07/25/an-introduction-to-powershell-remoting-part-three-interactive-and-fan-out-remoting.aspx" title="An Introduction to PowerShell Remoting Part Three: Interactive and Fan-Out Remoting" target="_blank">An Introduction to PowerShell Remoting Part Three: Interactive and Fan-Out Remoting</a></p>
<p><a href="http://blogs.technet.com/b/heyscriptingguy/archive/2012/07/26/an-introduction-to-powershell-remoting-part-four-sessions-and-implicit-remoting.aspx" title="An Introduction to PowerShell Remoting Part Four: Sessions and Implicit Remoting" target="_blank">An Introduction to PowerShell Remoting Part Four: Sessions and Implicit Remoting</a></p>
<p><a href="http://blogs.technet.com/b/heyscriptingguy/archive/2012/07/27/an-introduction-to-powershell-remoting-part-five-constrained-powershell-endpoints.aspx" title="An Introduction to PowerShell Remoting Part Five: Constrained PowerShell Endpoints" target="_blank">An Introduction to PowerShell Remoting Part Five: Constrained PowerShell Endpoints</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.hofferle.com/guest-blog-on-powershell-remoting-for-hey-scripting-guy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>2012 Jacksonville IT Pro Camp</title>
		<link>http://www.hofferle.com/2012-jacksonville-it-pro-camp/</link>
		<comments>http://www.hofferle.com/2012-jacksonville-it-pro-camp/#comments</comments>
		<pubDate>Sat, 23 Jun 2012 18:33:52 +0000</pubDate>
		<dc:creator>Jason Hofferle</dc:creator>
				<category><![CDATA[Community]]></category>
		<category><![CDATA[IT Pro Camp]]></category>
		<category><![CDATA[PowerShell]]></category>

		<guid isPermaLink="false">http://www.hofferle.com/?p=1369</guid>
		<description><![CDATA[It was great meeting so many new people interested in PowerShell at the Jacksonville IT Pro Camp last weekend. All of the presenters at these events are volunteers, so it&#8217;s an awesome feeling to have people come up and say &#8220;thank you for your session, it was really useful!&#8221; The IT Pro Camps are an [<a href="http://www.hofferle.com/2012-jacksonville-it-pro-camp/" rel="nofollow">...</a>]]]></description>
				<content:encoded><![CDATA[<p>It was great meeting so many new people interested in PowerShell at the <a href="http://itprocamp.com/jacksonville/" target="_blank">Jacksonville IT Pro Camp</a> last weekend. All of the presenters at these events are volunteers, so it&#8217;s an awesome feeling to have people come up and say &#8220;thank you for your session, it was really useful!&#8221; The IT Pro Camps are an opportunity to connect with other IT Professionals and hear people talk about what they&#8217;re passionate about. It&#8217;s also a wonderful opportunity for beginning speakers to develop sessions and gain confidence communicating technical information to others.</p>
<p>I&#8217;ve uploaded the <a href='http://www.hofferle.com/wordpress/wp-content/uploads/2012/06/PowerShell_transcript.20120616091935.txt'>transcript</a> from my PowerShell for Beginners session, and the <a href="http://www.hofferle.com/wordpress/wp-content/uploads/2012/06/IntroductionPowerShellRemoting.pdf?5c4b04">slide deck</a> from my Introduction to PowerShell Remoting session. </p>
<p>If you want to learn more about PowerShell, a great place to start is the <a href="http://blogs.technet.com/b/heyscriptingguy/" target="_blank">Hey, Scripting Guy!</a> blog from Microsoft&#8217;s scripting guy Ed Wilson. If it can be done with PowerShell, Ed has probably written about it. I also have a list of <a href="http://www.hofferle.com/list-of-free-powershell-ebooks/" title="List of Free PowerShell eBooks" target="_blank">free PowerShell eBooks</a> available, along with a <a href="http://www.hofferle.com/list-of-powershell-books/" title="List of PowerShell Books" target="_blank">list of paid books</a> on various PowerShell topics. I also listed several resources in my post on the <a href="http://www.hofferle.com/resources-from-sql-saturday-130/" title="Resources from SQL Saturday #130" target="_blank">Jacksonville SQL Saturday</a>.</p>
<p>Thanks for coming out on Saturday, and I hope to see you again at a future event!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.hofferle.com/2012-jacksonville-it-pro-camp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Resources from SQL Saturday #130</title>
		<link>http://www.hofferle.com/resources-from-sql-saturday-130/</link>
		<comments>http://www.hofferle.com/resources-from-sql-saturday-130/#comments</comments>
		<pubDate>Tue, 01 May 2012 00:48:24 +0000</pubDate>
		<dc:creator>Jason Hofferle</dc:creator>
				<category><![CDATA[Community]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[SQL Saturday]]></category>

		<guid isPermaLink="false">http://www.hofferle.com/?p=1362</guid>
		<description><![CDATA[I want to thank everyone that attended my PowerShell session at SQL Saturday #130 in Jacksonville. It was a great opportunity to demonstrate some PowerShell fundamentals, and I hope everyone learned something they can use. I really didn&#8217;t have much for slides, but a transcript of my session is available, which is a text record [<a href="http://www.hofferle.com/resources-from-sql-saturday-130/" rel="nofollow">...</a>]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.hofferle.com/wordpress/wp-content/uploads/2012/04/sqlsat130_web.png?5c4b04"><img src="http://www.hofferle.com/wordpress/wp-content/uploads/2012/04/sqlsat130_web.png?5c4b04" alt="SQL Saturday 130 Logo" title="sqlsat130_web" width="236" height="115" class="alignleft size-full wp-image-1365" /></a>I want to thank everyone that attended my PowerShell session at SQL Saturday #130 in Jacksonville. It was a great opportunity to demonstrate some PowerShell fundamentals, and I hope everyone learned something they can use. I really didn&#8217;t have much for slides, but a <a href='http://www.hofferle.com/wordpress/wp-content/uploads/2012/04/PowerShell_transcript_SQLSat130.txt'>transcript</a> of my session is available, which is a text record of the output and commands I typed during my demo. Remember to use <a href="http://go.microsoft.com/fwlink/?LinkID=113309" title="Get-Command" target="_blank">Get-Command</a> to find cmdlets, <a href="http://go.microsoft.com/fwlink/?LinkID=113316" title="Get-Help" target="_blank">Get-Help</a> to find out how to use them, and <a href="http://go.microsoft.com/fwlink/?LinkID=113322" title="Get-Member" target="_blank">Get-Member</a> to find out what the returned objects can do.</p>
<p>If you liked what you saw and want to learn more, there are many resources available for learning PowerShell. I have a <a href="http://www.hofferle.com/list-of-free-powershell-ebooks/" title="List of Free PowerShell eBooks" target="_blank">list of free PowerShell eBooks</a> which is a good place to start. I also have a <a href="http://www.hofferle.com/list-of-powershell-books/" title="List of PowerShell Books" target="_blank">list of paid PowerShell books</a>. For someone completely new to PowerShell or someone that prefers a very structured learning approach, I suggest <em>Learn PowerShell in a Month of Lunches</em> by Don Jones. Be sure to check out the additional resources at the <a href="http://morelunches.com/powershell.html" target="_blank">book&#8217;s website</a>, and take advantage of the <a href="http://www.youtube.com/playlist?list=PL6D474E721138865A&#038;feature=view_all" target="_blank">companion videos</a> Don has made available on YouTube. Someone with a scripting or programming background that&#8217;s looking for a solid reference book would do well with Bruce Payette&#8217;s book <em>PowerShell in Action</em>. This is a very detailed look at how PowerShell works and why certain decisions were made when designing the language.</p>
<p>Many <a href="http://channel9.msdn.com/Tags/powershell" target="_blank">PowerShell videos</a> are available at Channel 9, including the PowerShell sessions from <a href="http://channel9.msdn.com/Events/TechEd" target="_blank">TechEd events</a>. Don Jones has a <a href="http://youtu.be/7fFEV8xawx0" target="_blank">four hour sample</a> of a training class uploaded to Youtube, and Jeff Hicks has a <a href="http://www.trainsignal.com/Windows-PowerShell-Training.aspx" target="_blank">series of videos</a> from TrainSignal. </p>
<p>Have a long commute and need something to listen to? Try downloading some podcasts from the <a href="http://powerscripting.wordpress.com/" target="_blank">PowerScripting Podcast</a>. Last week Michiel Wories, the Principal Architect and Lead Developer of SQL Server, was talking about SQL Server 2012.</p>
<p>Most of these resources focus on PowerShell in general and don&#8217;t get specific on SQL Server. For some examples on how PowerShell is used by SQL Server experts, I suggest reading the blogs from <a href="http://sqlblog.com/blogs/allen_white/default.aspx" target="_blank">Allen White</a>, <a href="http://sqlvariant.com/" target="_blank">Aaron Nelson</a>, <a href="http://sev17.com/" target="_blank">Chad Miller</a>, and <a href="http://www.maxtblog.com/" target="_blank">Max Trinidad</a>.</p>
<p>For some more ideas on how PowerShell can be useful for a Database Administrtor, check out the <a href="http://sqlpsx.codeplex.com/" target="_blank">SQL Server PowerShell Extensions</a>. SQLPSX is an open source project for working with ADO.NET, SMO, Agent, RMO, SSIS, SQL script files, PBM, Oracle and MySQL and using Powershell ISE as a SQL and Oracle query tool.</p>
<p>There is a massive amount of information available, but hopefully this is enough to get you started. The PowerShell community is very active and close-knit in the way the SQL community is. Send someone an email, ask a question in a forum, or throw the twitter tag #PowerShell on your tweets, and you&#8217;re very likely to get pointed in the right direction.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.hofferle.com/resources-from-sql-saturday-130/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Removing Printer Shares with PowerShell and WMI</title>
		<link>http://www.hofferle.com/removing-printer-shares-with-powershell-and-wmi/</link>
		<comments>http://www.hofferle.com/removing-printer-shares-with-powershell-and-wmi/#comments</comments>
		<pubDate>Tue, 13 Mar 2012 14:00:20 +0000</pubDate>
		<dc:creator>Jason Hofferle</dc:creator>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[Remoting]]></category>
		<category><![CDATA[WMI]]></category>

		<guid isPermaLink="false">http://www.hofferle.com/?p=1336</guid>
		<description><![CDATA[Every IT Professional runs into situations where there isn&#8217;t a utility available for handing a particular task. My first large-scale vbscript fixed a failed upgrade of the Novell Netware Client on thousands of workstations that was preventing users from logging in. Automation technologies like PowerShell excel during those times when something needs to be happen [<a href="http://www.hofferle.com/removing-printer-shares-with-powershell-and-wmi/" rel="nofollow">...</a>]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.hofferle.com/wordpress/wp-content/uploads/2012/03/Printer-Icon.jpg?5c4b04"><img src="http://www.hofferle.com/wordpress/wp-content/uploads/2012/03/Printer-Icon.jpg?5c4b04" alt="Printer Icon" title="Printer Icon" width="347" height="346" class="alignleft size-full wp-image-1348" /></a>Every IT Professional runs into situations where there isn&#8217;t a utility available for handing a particular task. My first large-scale vbscript fixed a failed upgrade of the Novell Netware Client on thousands of workstations that was preventing users from logging in. Automation technologies like PowerShell excel during those times when something needs to be happen <em>right now</em>, and there isn&#8217;t much time for planning. </p>
<p>In a more recent situation, I was handed a spreadsheet of computers with printer shares that needed to be removed for security reasons. After <a href="http://www.hofferle.com/generating-lists-of-computer-names-with-powershell/" title="Generating Lists of Computer Names with PowerShell">getting the list of computer names</a> from the spreadsheet into PowerShell, I had to figure out how to remove the printer shares. I very often turn to Windows Management Instrumentation (WMI) in situations like this because I&#8217;m familiar with what it can do from my vbscript days where WMI was very often the only way to get anything done. PowerShell makes working with WMI much easier than it ever was with vbscript.</p>
<pre class="brush: powershell; auto-links: false; collapse: false; gutter: false; first-line: 1; highlight: []; html-script: false; light: true; pad-line-numbers: false; toolbar: true; wrap-lines: true">
Get-WmiObject -ComputerName Computer01 -Class Win32_Printer | foreach {$_.Shared = $False; $_.Put()}
</pre>
<p>The <a href="http://msdn.microsoft.com/en-us/library/windows/desktop/aa394363(v=vs.85).aspx" title="Win32_Printer class" target="_blank">documentation</a> for the Win32_Printer class says the <em>shared</em> property is Read/write, so it can be modified. The <em>put</em> method is used to update the printer object. So in this example, all the printers on Computer01 are retrieved, the Shared property on each printer is set to false, and the put method is called to save the change.</p>
<pre class="brush: powershell; auto-links: false; collapse: false; gutter: false; first-line: 1; highlight: []; html-script: false; light: true; pad-line-numbers: false; toolbar: true; wrap-lines: true">
Invoke-Command -ComputerName $Computers -ScriptBlock {Get-WmiObject Win32_Printer | foreach {$_.Shared = $False; $_.Put()}}
</pre>
<p>This can be done very quickly with PowerShell remoting enabled, in which case the Invoke-Command cmdlet is used. The difference here is that instead of specifying a single computer name, the $Computers variable contains a list of computer names. This allows the scriptblock to be sent to all the computers in parallel.</p>
<pre class="brush: powershell; auto-links: false; collapse: false; gutter: false; first-line: 1; highlight: []; html-script: false; light: true; pad-line-numbers: false; toolbar: true; wrap-lines: true">
Get-WmiObject Win32_Printer -ComputerName Computer01 | Set-WmiInstance -Arguments @{Shared=$False}

Invoke-Command -ComputerName $Computers -ScriptBlock {Get-WmiObject Win32_Printer | Set-WmiInstance -Arguments @{Shared=$False}}
</pre>
<p>Another method is to use the Set-WmiInstance cmdlet to set properties on the printer objects.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.hofferle.com/removing-printer-shares-with-powershell-and-wmi/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SQL Saturday #110 Presentation</title>
		<link>http://www.hofferle.com/sql-saturday-110-presentation/</link>
		<comments>http://www.hofferle.com/sql-saturday-110-presentation/#comments</comments>
		<pubDate>Mon, 12 Mar 2012 01:45:16 +0000</pubDate>
		<dc:creator>Jason Hofferle</dc:creator>
				<category><![CDATA[Community]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[SQL Saturday]]></category>

		<guid isPermaLink="false">http://www.hofferle.com/?p=1355</guid>
		<description><![CDATA[This weekend was my first SQL Saturday, and I was very happy to have my session on PowerShell remoting selected. The SQL community is an amazing bunch of people, and I&#8217;m glad these opportunities for sharing knowledge and making friends exist. I want to thank Pam Shaw and all the other organizers, volunteers, sponsors, and [<a href="http://www.hofferle.com/sql-saturday-110-presentation/" rel="nofollow">...</a>]]]></description>
				<content:encoded><![CDATA[<p>This weekend was my first SQL Saturday, and I was very happy to have my session on PowerShell remoting selected. The SQL community is an amazing bunch of people, and I&#8217;m glad these opportunities for sharing knowledge and making friends exist. I want to thank Pam Shaw and all the other organizers, volunteers, sponsors, and speakers that helped make this event a success.</p>
<h2>Introduction to PowerShell Remoting</h2>
<p><a href="http://www.hofferle.com/wordpress/wp-content/uploads/2012/01/IntroductionPowerShellRemoting.pdf?5c4b04"><img src="http://www.hofferle.com/wordpress/wp-content/uploads/2012/01/IntroductionPowerShellRemoting.png?5c4b04" alt="Title Slide for Introduction to PowerShell Remoting" title="Introduction to PowerShell Remoting" width="200" height="150" class="alignleft size-full wp-image-928" /></a><a href="http://www.hofferle.com/wordpress/wp-content/uploads/2012/01/IntroductionPowerShellRemoting.pdf?5c4b04">Slide deck for Introduction to PowerShell Remoting</a></p>
<p><br style="clear: both;" /></p>
<p><a href="http://www.hofferle.com/wordpress/wp-content/uploads/2011/06/laymansguidePowerShellremoting.png?5c4b04"><img src="http://www.hofferle.com/wordpress/wp-content/uploads/2011/06/laymansguidePowerShellremoting.png?5c4b04" alt="Cover image of the Layman&#039;s Guide to PowerShell Remoting" title="laymansguidePowerShellremoting" width="150" height="207" class="alignleft size-full wp-image-626" /></a><a href="http://www.ravichaganti.com/blog/?page_id=1301">Layman&#8217;s Guide to PowerShell 2.0 Remoting</a><br />
<em>Ravikanth Chaganti</em></p>
<p><br style="clear: both;" /> </p>
<p><a href="http://www.hofferle.com/wordpress/wp-content/uploads/2011/06/Remoting.png?5c4b04"><img src="http://www.hofferle.com/wordpress/wp-content/uploads/2011/06/Remoting.png?5c4b04" alt="Cover image for Administrator&#039;s Guide to Windows PowerShell Remoting" title="Remoting" width="150" height="194" class="alignleft size-full wp-image-631" /></a><a href="http://powershell.com/cs/media/p/4908.aspx">Administrator&#8217;s Guide to Windows PowerShell Remoting</a><br />
<em>Dr. Tobias Weltner<br />
Aleksandar Nikolic<br />
Richard Giles</em></p>
<p><br style="clear: both;" /></p>
<p><a href="http://www.manning.com/payette2/"><img src="http://www.hofferle.com/wordpress/wp-content/uploads/2012/01/payette2_cover150.jpg?5c4b04" alt="Cover of Windows PowerShell in Action by Bruce Payette" title="Windows PowerShell in Action, Second Edition" width="150" height="187" class="alignleft size-full wp-image-912" /></a><a href="http://www.manning.com/payette2/">Windows PowerShell in Action, Second Edition</a><br />
<em>Bruce Payette</em></p>
<p><br style="clear: both;" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.hofferle.com/sql-saturday-110-presentation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Generating Lists of Computer Names with PowerShell</title>
		<link>http://www.hofferle.com/generating-lists-of-computer-names-with-powershell/</link>
		<comments>http://www.hofferle.com/generating-lists-of-computer-names-with-powershell/#comments</comments>
		<pubDate>Tue, 06 Mar 2012 14:00:26 +0000</pubDate>
		<dc:creator>Jason Hofferle</dc:creator>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[Active Directory]]></category>

		<guid isPermaLink="false">http://www.hofferle.com/?p=1339</guid>
		<description><![CDATA[PowerShell is particularly good for automating tasks that need to be performed on multiple computers, and many cmdlets are designed to allow multiple computer names to be specified. In many cases, the most difficult task is getting together a list of computers to use with some of the cmdlets and scripts available. There are several [<a href="http://www.hofferle.com/generating-lists-of-computer-names-with-powershell/" rel="nofollow">...</a>]]]></description>
				<content:encoded><![CDATA[<p>PowerShell is particularly good for automating tasks that need to be performed on multiple computers, and many cmdlets are designed to allow multiple computer names to be specified. In many cases, the most difficult task is getting together a list of computers to use with some of the cmdlets and scripts available. There are several ways to generate these lists of names, and very often the situation will dictate which method should be used.</p>
<pre class="brush: powershell; auto-links: false; collapse: false; gutter: false; first-line: 1; highlight: []; html-script: false; light: true; pad-line-numbers: false; toolbar: true; wrap-lines: false">
$Computers = &quot;Computer01&quot;,&quot;Computer02&quot;,&quot;Computer03&quot;
Get-WmiObject -Class Win32_OperatingSystem -ComputerName $Computers
</pre>
<p>The simplest way is to manually type names of computers to generate an array of text strings in a variable. That variable can then be passed to cmdlets that accept an array of strings for the input of a ComputerName variable.</p>
<pre class="brush: powershell; auto-links: false; collapse: false; gutter: false; first-line: 1; highlight: []; html-script: false; light: true; pad-line-numbers: false; toolbar: true; wrap-lines: false">
$Computers | Out-File computers.txt
</pre>
<p>If this same list of names might be useful in the future, one way to save the list permanently is to save it to a text file.</p>
<pre class="brush: powershell; auto-links: false; collapse: false; gutter: false; first-line: 1; highlight: []; html-script: false; light: true; pad-line-numbers: false; toolbar: true; wrap-lines: false">
$Computers = Get-Content computers.txt
</pre>
<p>When the list is needed again, the contents of the file can be read and stored to a variable.</p>
<pre class="brush: powershell; auto-links: false; collapse: false; gutter: false; first-line: 1; highlight: []; html-script: false; light: true; pad-line-numbers: false; toolbar: true; wrap-lines: false">
# Load the Microsoft Active Directory Module
Import-Module ActiveDirectory

# Get a list of computers that have WIN7 in their name
$Computers = Get-ADComputer -Filter &quot;Name -like &#039;*WIN7*&#039;&quot; | ForEach-Object {$_.Name}

# Get a list of all computer names
$Computers = Get-ADComputer -Filter * | ForEach-Object {$_.Name}

# Get a list of fully qualified host names
$Computers = Get-ADComputer -Filter * | ForEach-Object {$_.DNSHostName}
</pre>
<p>When there&#8217;s more than a few computers to deal with, it&#8217;s much easier to get those names from the computer accounts in Active Directory. In a correctly configured domain environment, the <a href="http://technet.microsoft.com/en-us/library/dd378937(v=ws.10).aspx" title="Active Directory Administration with Windows PowerShell" target="_blank">Microsoft Active Directory cmdlets</a> can be used to generate lists of computers.</p>
<pre class="brush: powershell; auto-links: false; collapse: false; gutter: false; first-line: 1; highlight: []; html-script: false; light: true; pad-line-numbers: false; toolbar: true; wrap-lines: false">
# Load the Quest Active Directory cmdlets
Add-PSSnapin Quest.ActiveRoles.ADManagement

# Get a list of computers running the Windows Server 2008 operating system
$Computers = Get-QADComputer -OSName &quot;Windows Server 2008*&quot; | ForEach-Object {$_.Name}

# Get a list of computers that are members of the Database Servers group
$Computers = Get-QADComputer -MemberOf &#039;Database Servers&#039; | ForEach-Object {$_.Name}

# Get a list of computers that are located in the Domain Controllers OU
$Computers = Get-QADComputer -SearchRoot &quot;testlab.local/Domain Controllers&quot; | ForEach-Object {$_.Name}
</pre>
<p>Not everyone has the infrastructure in place to use the Microsoft cmdlets. Fortunately, Quest has <a href="http://www.quest.com/powershell/activeroles-server.aspx" title="ActiveRoles Management Shell for Active Directory" target="_blank">freely available</a> cmdlets for interacting with Active Directory.</p>
<pre class="brush: powershell; auto-links: false; collapse: false; gutter: false; first-line: 1; highlight: []; html-script: false; light: true; pad-line-numbers: false; toolbar: true; wrap-lines: false">
Get-ADComputer -Filter * | Export-Csv computerList.csv -NoTypeInformation
Get-QADComputer | Export-Csv computerList.csv -NoTypeInformation
</pre>
<p>Sometimes it&#8217;s difficult to filter a list of names using these cmdlets. Another option is to export all the computer account properties to a Comma Separated Values file, and then use Excel to filter the list.</p>
<pre class="brush: powershell; auto-links: false; collapse: false; gutter: false; first-line: 1; highlight: []; html-script: false; light: true; pad-line-numbers: false; toolbar: true; wrap-lines: false">
$Computers = Import-Csv -Path computerList.csv | ForEach-Object {$_.Name}
</pre>
<p>When the spreadsheet has been narrowed down to the required names, it can then be imported back into PowerShell to get the array of computer names.</p>
<p>The capability of PowerShell to import Csv files is also useful when a list of computers is provided in an Excel spreadsheet from another IT department. It&#8217;s common for reporting software to generate spreadsheets of computer names along with all kinds of other data. By saving these Excel spreadsheets as Csv files, they can easily be imported directly into PowerShell.</p>
<p><a href="http://www.hofferle.com/wordpress/wp-content/uploads/2012/03/Excel_ComputerList.png?5c4b04"><img src="http://www.hofferle.com/wordpress/wp-content/uploads/2012/03/Excel_ComputerList.png?5c4b04" alt="Excel Computer List" title="Excel_ComputerList" width="640" height="551" class="alignnone size-full wp-image-1344" /></a></p>
<p><a href="http://www.hofferle.com/wordpress/wp-content/uploads/2012/03/Excel_SaveAsCsv.png?5c4b04"><img src="http://www.hofferle.com/wordpress/wp-content/uploads/2012/03/Excel_SaveAsCsv.png?5c4b04" alt="Excel Save as Csv" title="Excel_SaveAsCsv" width="640" height="472" class="alignnone size-full wp-image-1345" /></a></p>
<pre class="brush: powershell; auto-links: false; collapse: false; gutter: false; first-line: 1; highlight: []; html-script: false; light: true; pad-line-numbers: false; toolbar: true; wrap-lines: false">
$Computers = Import-Csv -Path Computers.csv | Foreach-Object {$_.NetBIOSName.Trim()}
</pre>
<p>Sometimes spreadsheets generated by reporting software will include spaces around the cell data. If computer names have spaces around them, cmdlets like Invoke-Command will not accept those names as input. One way to clean up the computer names is to use string methods like Trim.</p>
<pre class="brush: powershell; auto-links: false; collapse: false; gutter: false; first-line: 1; highlight: []; html-script: false; light: true; pad-line-numbers: false; toolbar: true; wrap-lines: false">
$Computers = 1..254 | ForEach-Object {&quot;192.168.1.$_&quot;}
</pre>
<p>In certain situations, IP addresses can be used instead of computer names. This is helpful when actions need to be run on all computers on a subnet, regardless of their names.</p>
<p>Just like anything in PowerShell, there are lots of different ways to accomplish a task. These are just a few ways to generate a list of computers, which can then be used with any number of scripts and functions.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.hofferle.com/generating-lists-of-computer-names-with-powershell/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss><!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Page Caching using disk: enhanced
Database Caching using disk: basic
Object Caching 648/649 objects using disk: basic

 Served from: www.hofferle.com @ 2013-05-15 01:32:08 by W3 Total Cache -->
