CodeStock 2010: PowerShell as a Tools Platform

§ July 4, 2010 01:54 by beefarino |

At long last, I'm home from my working vacation and have a chance to do some CodeStock postprocessing.  Several people have asked me for the resources from my PowerShell presentation.  You'll find downloadable RARs of the powerpoint and code below.  I've also placed the deck on SlideShare for convenience:

The bulk of the code is described in the following posts:

I will be adding a few posts soon to round out the code coverage.  Feel free to drop me any questions or concerns you have.  I'd love the chance to give this talk to any .NET user groups in the area!

ASPNETMembership.rar (284.35 kb)

PowerShell as a Tools Platform.rar (1.17 mb)



codestock: day one recap

§ June 25, 2010 21:32 by beefarino |

I love this town.

Not just the people at the conference, they're awesome, but this town is so chill and people are so friendly here everywhere we go.  And you can't swing a dead cat without hitting some awesome live jazzman in his horn.  I see another road trip in my future...

Day one of CodeStock was fantastic.  I started the day at Jeff Barnes's session on NServiceBus, which was very cool.  He did a really great job of breaking the ESB architecture and NServiceBus philosophy down into consumable pieces and explaining some of the finesse necessary to get things working.  ESBs are something I've been trying to use for some time, but the stumbling block as always been dependencies.  That is, I understand the architectural points, it's getting the various libraries to fold into my project that get me too frustrated to use them.  It looks like I'll be taking another look at NServiceBus after Jeff's great demos.

Next session was in a packed auditorium where Dennis Burton ran through some MongoDB document database examples.  The talk included lots of humor and personal artifacts, and Dennis certainly is a natural at speaking.  I haven't really looking into the NoSQL thing before this talk, but I couldn't keep my mind from racing during Dennis's demos.  I have some nifty ideas for community projects that could leverage the flexibility of MongoDB, hopefully I'll have something to share soon.

I took a break for lunch to go over my PowerShell session notes and clean up the deck for my Arduino talk.  I really wanted to hobnob and mingle, there are a lot of interesting people here, but instead I sat in the corner and sweated bullets over my approaching 70 minutes of console pounding.

I attended Dane Morgridge's session on Entity Framework 4.  The session was good, lots of appropriate background information and practical advice.  Dane did a good job.  The room was not set up well: the screen was at the long end of the room, with about 30 rows of 6 seats; I found myself wishing the screen was on the longer wall, with the chairs sort of arced around it.  Anyway, this was the first demo of the Entity Framework I've been to that actually worked.  Each of the other four or so talks I've seen ended with the speaker shrugging and explaining how awesome it is when it runs.  I'm still weary of the Microsoft point-n-click tool model, but according to Dane EF4 has a code-only path; I'll have to check that out.

Next up was my session.  Nervous. As. Hell.  I got into the groove pretty fast; however I'm amazed at how quickly I can scrap my carefully-thought-out slide deck once I start bouncing from PowerPoint to another program.  I think I skipped over half of the slides.  Ugh.  Anyway, the demos seemed a bit dull at first, but by the time I started showing how to manipulate individual user properties in the Membership store from PowerShell, people started to "get it."  That's one of the things I love about this particular talk - the demos have a significant wow factor when you consider how difficult it is to accomplish some of the one-liners on your own.  Two demos got everyone talking: the first was a one liner that added 100 test users to the Membership store in under a second.  Using the existing point-and-click tools, that would take you an afternoon.  The other demo that sealed the deal was using PowerShell's built-in object filtering capabilities to isolate all unapproved users from the Membership store (and then extending that to reapprove them).  This is something that's not possible with the packaged Membership tools, you would have to dig into AD or SQL and hope you don't screw something up.  In the end the talk was well-received.  There was much positivity during and after the session, and I sincerely appreciate everyone who chose to attend.  

I finished up the sessions with Wally McClure's iPhone development session using MonoTouch.  Seems pretty straightforward, despite the abysmal toolset from Apple.  The big question on everyone's mind is whether MonoTouch would be included in Jobs's Axis of Evil.  I appreciate Wally's candor on the topic, as well as his hesitation to jump too quickly to one specific conclusion on the matter.  

After a quick dinner with the girls - who LOVED the zoo except for the missing cheetas - I headed over to the Bijou for Rachel Appel's keynote.  Great time was had by all; that woman can rouse a crowd and has a wry sense of humor.  She invited anyone from the audience up to share a story about the Community.  Hindsight being what it is, I have two stories that I would have wanted to share, but couldn't think of them at the time.  One will become a blog post methinks - the other can be summed up as saying that the Microsoft Developer Evangelists play a huge supporting role in the local developer community.  My local DE is Brian Hitney, and without his assistance and generosity I would have had trouble getting my business off the ground.  I owe him a huge debt, and welcome the chance to repay him.

I hung out a little bit after the keynote, Michael Neel put on the animated version of The Hobbit, and geeks started congregating.  After a while the release of stress from my talk caught up with me, and I headed back to the hotel.  After a quick run to Best Buy to solve my forgotten USB cable issue, after which I listened to my girls stories about the zoo some more before hitting the sack.

Another exciting day of sessions planned for today - I'll update you again when I get a moment.

Wish me luck ...

 

... oh, and since the theme of this conference is Community .... I wish you were here.



At CodeStock ...

§ June 24, 2010 21:12 by beefarino |

It's 6am and I'm sitting in the lobby of the Hilton in downtown Knoxville.  Michael and Cicelie just dragged another box of welcome kits out of the elevators and headed across the street to set up the registration desk (I'm assuming).  The drive in was beautiful and easy, and I forgot how much I love this area. 

I had trouble sleeping, some small rock under my mind kept my thoughts from settling in.  I'm nervous about the talks, but not overly so.  The Arduino talk is my biggest worry, simply for the fact that I've never delivered it before, and the number of failure points possible in the demos.  So I drifted off to sleep running through all the connections and code for the demos.  I thought through all of the hardware I brought with me.  I eventually did sleep, but something was still eating at me...

I realized what it was when my alarm went off this morning.  I have every device, every connector, except one: the USB cable to connect my Arduino to my PC.  *sigh*.  Well hey, on the bright side, of all the things I could have forgotten, I picked the one thing that I could actually buy at a local store.  I failed in the best possible way!

So I spent the last 15 minutes Googling the local Best Buys so I can run out after the keynote tonight and pick up the USB A/B cable for the talk tomorrow.  I'm just glad the talk isn't today, so I don't have to scramble and miss any of this morning's sessions.

I'll post more in a bit, time to grab some grub and joe....



Hard Reset of Career and Life

§ May 26, 2010 00:01 by beefarino |

The best way to predict your future is to create it. -Peter Drucker.

So I've been MIA for a while.  At least here.  I thought it would be best to jot down the happenings of the last 5 months, as things have changed dramatically for me in that time.

In March of 2010, I made the decision to become self-employed.  Well, technically speaking I work for the company I own.  I had lots of reasons for doing this, but it basically boiled down to making a living vs. living my life.  The facts: I was not satisfied with my full-time employment situation and wanted a change; I found myself in a very rare and positive position, with enough freelance work to sustain me and my family for a year; I have some personal projects I want to get up and running that require significant personal investment.  This is something I've wanted to attempt for some time, and I simply could not imagine a better opportunity to do so.  My new venture is Code Owls LLC, website forthcoming.  That's my logo there, thanks to 48hourslogo.com.  And I'm happy to report that after only two months I'm already having to turn away work.

Last Thursday (May 20, 2010) I presented an hour session to the Charlotte ALT.NET group titled "Distributed Version Control using Mercurial".  Reception was good, despite a botched example and the seemingly endless command-line pounding.  I plan to post a summary of the talk as a blog post soon.

I'm also excited about the upcoming CodeStock community event.  There are so many awesome sessions and panels to attend, choosing a schedule will be very difficult.  I'm also presenting two sessions, one on PowerShell as a tools platform, and another on getting started on the Arduino platform.  A big Thank You to everyone who offered their votes to my sessions - I apparantly earned an "Elder Award" by getting both sessions voted into the top 20!

I've also jumped in to a new local community in here in Charlotte, NC: the Charlotte Arduinophiles.  This is a group of local evil and benevolent masterminds that love to hack using the Arduino hardware platform.  Special thanks to Brady on getting this rolling; we are presently getting organized, and at the moment most of our activity is focused at Charduino.org, where we share our hacks and projects and look for feedback.  Rumblings from the current participants seem to point to organized hack sessions and contests; e.g., maze-solving bot design evenings.  If you are interested in joining us, regardless of your experience, drop me a note.

So there you have it.  Big changes but a much happier me.