Today was day 2 of the SharePoint Administrators Survival Camp training class that I am attending by CriticalPath Training, led by instructor Shane Young of SharePoint911.
In a word… wow.
Seriously, I work at Microsoft. I have access to tons and tons of information on SharePoint. I use SharePoint day in and out, our Microsoft intranet is one huge SharePoint explosion. I am on peer email distribution lists where we can bounce questions off each other and learn from MCS Consultants in the field, from product support escalation engineers to enthusiasts in multiple areas from development to operations, and I am able to attend an occasional internal webcast showing a specific feature or solution to a problem. There are many internal training resources available (provided you can find them and make time to work through them). I read a LOT of blogs, books, whitepapers, support articles, etc, the same stuff as you on MSDN, TechNet, and other sites. I have even produced some content on developing for SharePoint (some of which I want to now go back and revise). For the past year, I have tried to focus on self-education through online resources because I did not have a training budget.
In short, I now realize that I could have saved myself a ton of time and made my self-education program so much more successful just by attending this class earlier this year. I could have easily justified the early investment in SharePoint training had I compared one week of in-depth training to a year of self-education that missed many of the points brought up in a 5-day class.
You might have heard people say that SharePoint is huge, and nobody can master all facets of it. That’s because it’s not just SharePoint, there’s also Active Directory, DNS, SQL Server, and the interactions between those. For the past year, I’ve focused on the dev side of things, conveniently downloading pre-built VPCs without understanding how to set up or operate a SharePoint environment. I have always had a deep appreciation for operations folks, it’s just not something I have had to do in my career. I am DNS illiterate, and have to go read articles and blogs to try to set up an Active Directory instance from scratch. I am not an operations person by any stretch of the imagination, but I sure know how to sling code around.
Developers should study the operations side of things.
Seriously, holy smokes. I learned so much today that it’s hard to enumerate the lessons learned and quantify where I was yesterday versus today. I have a much deeper appreciation of the term “information architecture” and why site collections are both a security and a storage boundary. I learned why, when creating extranets with SharePoint, you should create individual site collections per customer and limit the database size per site collection to 100 GB or less, ideally around 50 GB (this prevents table locking). I fought through an issue with Alternate Access Mappings, and finally understand managed paths (I know, experienced SharePoint admindevs are giggling right now). I did more with security permissions than I previously had done and have a much better understanding of how to structure security groups, witnessed security trimming working like it should (as opposed to my misunderstanding of how it should work), and talked through many scenarios with an instructor who has been there and done that. I set up SharePoint using Kerberos, managed permissions to Excel Services, and can honestly explain exactly what is going on, not just regurgitate “I read it in this whitepaper that someone else wrote.” I can actually explain the various service accounts being used, their purpose, what they access, when you interact with them, and when you need to include various accounts as farm admins, SSP admins, and site collection admins.
Today was mostly labs, getting our hands dirty with permissions. There was lecture time, but there was far less today.
For someone with no admin background, this class is a huge eye opener. Talking with others in the class who are experienced admins and currently fighting managing SharePoint installations, they are realizing a huge amount of value from the class as well. Shane has a dry sense of humor (he told a cow joke today that was pretty awful, but funny in its awfulness), and a passion and real understanding of SharePoint. My favorite part of the class is that he has absolutely zero pre-prepared or scripted demos available. When he feels there’s something he needs to demo, he uses Remote Desktop to go to one of his live sites (ShanesCows.com, SharePoint911.com) and demonstrates on the live server. The guy really knows what he’s talking about, has written multiple training classes and books on SharePoint administration, has a successful company based on SharePoint, and is a successful trainer to boot. There’s no reading of PowerPoint here, his lectures are largely unscripted. I really enjoy that… he knows the topic so well that he sees a slide, talks about the topics, shares personal experiences, then tinkers with a live production server that actually makes him money to get his point across.
Oops, I don’t think I was supposed to write that last part, as Shane pointed out multiple times not to tell his wife that he was screwing with the production server. Hope she doesn’t end up reading this.
I now realize that I would have been leaps and bounds past where I am today had I started out with this class.
If you are a developer, you need this class to understand why a SharePoint solution architect separated things into various site collections. That isn’t done to make your life harder, there are security considerations. If you are an architect, you need this class to understand how to design your solution for high availability and the storage implications (did you know that you probably shouldn’t use a SAN, but instead use Direct Access Storage, limiting individual databases to less than 100 GB, and why you should separate the index server from the WFEs? I sure didn’t).
Absolutely recommended, and it’s only day 2 of 5.
This is a wrap-up of days 3 and 4 of the SharePoint Administrators Survival Camp training class by CriticalPath