I've moved my blog to!. Please update your links. This blog is no longer in use--you can find all posts and comments at my new blog; I will no longer be posting to this site and comments have been disabled.

Thursday, February 25, 2010

I’m speaking at TEC 2010 - See you there!

I'm happy to announce that I will be speaking at the SharePoint Conference at The Experts Conference TEC 2010.

Dates: April 25-28

Location: JW Marriott Hotel Los Angeles at L.A. Live

Details: SharePoint The Experts Conference

Keynotes: Bill Baer SharePoint Team & MCM Instructor, Joel Oleson MCTS, Michael Noel MVP, Ben Curry MVP, Mike Watson former MCM Instructor

Featured Speakers: Gary Lapointe MVP, Dan Lewis, Zlatan Dzinic MVP, Rick Taylor MCT, Ram Gopinathan Microsoft MCM

Top Community Speakers and Leads: Dan Lewis, Paul Swider, Eric Harlan Microsoft PFE, Becky Isserman, Paul Swider, Philip Wicklund, Karuana

Top Analysts and Authors: Craig Roth, Susan Hanley, Christian Buckley

Community Virtual Event with End User SharePoint’s Mark Miller and Social Media guru Mike Gannotti!

This is the first ever SharePoint training curriculum for TEC and includes industry recognized speakers and trainers from across the globe providing deep technical sessions to include, but not limited to upgrade and migration, social computing, enterprise and web content management, development, security, and authentication  See the SharePoint Tracks session line up for more details.    To learn more about SharePoint training at TEC2010 visit or for additional information on registration.  I’m happy to announce as a speaker I can offer my readers a huge discount of $500 off the price at $1345. Simply add the code LAPSPMVP to get the discount.

Discount Code: LAPSPMVP

This Conference is going to get you closer to the SharePoint IT experts in the field than any other with a ratio that will impress you.  Not only is it 3 days of packed training with more than 3 tracks of 300-400 level SharePoint content, we have a special track dedicated to interactive Architecture and design sessions to help you get deeper with a NO PPT allowed track where SharePoint Architects get into whiteboard design mode with solution requirements driven by the attendees.  In addition there’s a preconference workshop day where you can get your hands dirty with SharePoint 2010 code and solutions management with top MCTs and MCMs.

Free Pass Contest: If you’re having an issue getting the funds, why not join in the contest to win a free pass?  To enter, simply post a blog explaining why you want to attend TEC 2010. Add a link and summary in the comments on the Official Free TEC 2010 Pass Contest post here.

New Social Networking Groups to get to know other attendees and speakers:

TEC2010 on twitter: @TECconf and #TEC2010 -

Join The Experts Community

Join Facebook group

Join LinkedIn group

Tuesday, February 23, 2010

4th Grade Math and PowerShell

My 10 year old daughter came home from school today with a simple math problem that she had to solve and she asked if there was an easier way to solve the problem. Basically the teacher explained that the number six was a perfect number because the sum of it's factors (excluding itself) is equal to the number and she wanted to know what the next perfect number was. The kids basically had to go through the numbers and manually add up the factors until they found a match. So naturally, the programmer in me said, sure we can write a quick algorithm to find the next few perfect numbers.

After writing the code, using PowerShell of course, I realized that this little math algorithm demonstrated a few key PowerShell concepts that would be good for anyone starting out with PowerShell to know. Here's the code I wrote for her along with the output:


So in this really simple math example you can see how to use a basic for loop construct, dynamic arrays, dynamic typing, static method calls, and variable replacement within strings.

As you can see, for loops in PowerShell are identical to those in C# so there's nothing new there (unless you're new to C# that is). Dynamic arrays on the other hand are kind of cool - you can declare an empty array by simply using @(). Don't confuse this with declaring empty hash tables which use curly braces instead of parenthesis, @{}. Adding elements to these arrays is as easy as using the += operator: $factors += $i.

You can see the dynamic typing where I'm dividing $i by $j - if it divides evenly then the type returned would be an integer, otherwise it would be a float. So a really easy way to check if it divided evenly is to see if the returned type is equal to [int] (we can work with a type by wrapping a type name in brackets).

Calling static methods is a little different than what you may be used to in C#. As mentioned above types are defined by wrapping the type name in brackets - if we want to call a static method (or access a static property) of a type then we simply separate the method or property name and the type name with double colons. So in this example I'm finding the square root of the number by using the static Sqrt method on the System.Math class: [Math]::Sqrt($i).

The last little bit, dynamic variable replacement, just demonstrates how we can use $() to force the contents of the parentheses to be evaluated before they are used within the string for the Write-Host command. In this case I wanted to show the number of factors but if I did not wrap the $factors.Length bit in parentheses my output would look like this: 6 (1 2 3.Length factors)= 1 2 3.

So, as you can see, PowerShell is a really great tool and can be used for things other than SharePoint, even helping your 4th grader with her math homework :)

Monday, February 8, 2010

Help Save "Reading is Fundamental"

I normally never post non-SharePoint or editorial type stuff on my blog but this really pissed me off and I felt I needed to do something. President Obama, in all his wisdom, has decided to cut funding for RIF (Reading is Fundamental), the nations largest children's literacy organization. It really irritates me that we're able to find money to buy old cars or provide free materials and labor to insulate homes but there's not enough money to help our kids learn to read? What kind of message is that sending to our kids and to the rest of the world?

If you agree that RIF should receive continued funding please visit - in just a few clicks you can you submit a letter asking your member of Congress in the House of Representatives to sign the RIF Dear Colleague letter.