| Comments

this week i'm in redmond all week with what we call “competitive influencers.” -- that's right, i'm sitting in a room of about 35 guys who are the most talented, articulate, and intelligent guys in the community...and they represent java, linux, mac, macromedia, etc.

ms is engaging in more dialogs with individuals in competing technologies...not to convert, but to understand and education -- from both sides of the fence.

this is hopefully going to be a great event...some really good key speakers are lined up: michael howard, don box, eric rudder, etc. -- key people within ms.

if you want to learn more from a participant perspective, check out matt raible's blog: http://raibledesigns.com/page/rd as he's here and is already writing about it.

| Comments

well, it's been a busy week (last week).  i started at microsoft in my new role.  i can say that i honestly underestimated the flood of resources and information that i would need (and want) to absorb.  this had an impact on finishing up the stuff i needed to finish in other aspects of my life.

as with any job, the first week is somewhat of logistics and hr “stuff” -- the cool thing about ms is that a lot of it is automated and online.  very little need to sign/fax/print, etc. -- the resources available at the company are amazing...truly amazing.

i met a lot of people and learned some quick things/issues/etc.  i'm looking forward to the challenges and successes.

i can say that i was surprised at how much information is available to everyone within the company...that is great -- the company is opening it's kimono (within reason) to all employees.

keep looking for more details as i progress

| Comments

You take the blue pill and the story ends.  You wake in your bed and you believe whatever you want to believe.  You take the red pill and you stay in Wonderland and I show you how deep the rabbit-hole goes.

well, i took the red pill.

as of around march 7 i'll be working for microsoft.  no, not on the engineering side of things (so i don't have the rigorous interviews that are legend -- although i still had to endure a “day” [note: day=day as in 8-5] of interviews back to back with some whiteboard code questions, etc...but not as detailed as someone in a product role would) but rather on the evangelism side of things.

i'm excited about this new role and hope that i can be successful at it...more later!

| Comments

a second great tool i've been using lately...llblgen pro (www.llblgen.com).

first: our team got sick of saying “LLBLGen Pro” when referring to the tool and the code it generated...so we affectionately named it “cool j“ (yeah, you can see the deduction of the name...started out being ll cool j, etc.)

i consider myself always a skeptic.  i am used to certain things and usually stick to them.  you can imagine my skepticism when a teammate decided we use an ORM tool for data access/code generation.

what!? no way, those things don't work

of course my argument had no weight since i had no evidence to the fact that the ORM tools sucked.  my teammate had evaluated a number of them and found LLBLGen Pro to be the best one out there from a feature/support perspective.

as with any ORM tool, your data model has to be solid...so we spent a lot of time on that.  once completed, “cool j“ interpreted everything and generated the required data access layers for us -- and using them is a breeze.  our project currently has only one stored procedure due to a long running process.

what!? you aren't using stored procs?! are you an idiot? everyone knows in-line sql is stupid, unsecure, hard to support, etc....

that's what i thought as well (again, my comfort zone) until i really did my research.  you see, database is not my strongest point beyond the basics...so i had to see the proof for myself.  well, what i found is that all the arguments for stored procs vs. dynamic sql statements aren't entirely valid and are based on a lot of assumptions of how dynamic sql statements are build and executed. (for a good synopsis, check out: http://www.theserverside.net/news/thread.tss?thread_id=31953)

“cool j” is awesome here.  you see it leverages sp_executesql so that the statements are cached and it uses parameterized queries.  additionally, the dynamic sql generated includes ONLY the updates required, because “cool j” has the capability of understanding what attributes of the entities are dirty and need to be updated.

in a nutshell, i'm a believer.  this tool (along with others: http://timheuer.com/blog/archive/2005/02/11/1670.aspx) has really helped accellerate my development allowing me to concentrate on core business functionality.  yes i'm still comfortable doing certain things my way, but i'm learning more and more about the generated code from “cool j” and ways of making it better based on my designs.

check it out.

| Comments

inspired by scott hanselmen's post about What Great .NET Developers Ought to Know, as well as the rush of interviews i've been conducting lately to fill sharepoint positions, i started compiling a list of questions for what a sharepoint consultant developer/architect (or fill in your own title) ought to know...here it is...

please comment on more questions -- this was my 30 second list that i'll be adding to.

What SharePoint consultants Ought to Know

Everyone who can spell SharePoint

what is SharePoint?
  • what is the difference between SharePoint Portal Server and Windows SharePoint Services?
  • what is a document library?
  • what is a meeting workspace?
  • what is a document workspace?
  • what is a web part?
  • Mid-level SharePoint Consultant

    • what is the difference between a document library and a form library?
    • what is a web part zone?
    • how is security managed in SharePoint?
    • how are web parts developed?
    • what is a site definition?
    • what is a template?
    • how do you install web parts?
    • what is the difference between a site and a web?
    • what are the differences between web part page gallery, site gallery, virtual server gallery and online gallery?
    • what is the GAC?
    • what is a DWP?
    • what is CAML?
    • what are themes?
    • what is presence?
    • can web parts be connected? if so, how?
    • what is a personal view and what is a shared view?
    • what is an STP file?
    • what is an FWP file?
    • can you upload MP3's to SharePoint?
    • how does SharePoint support MS Outlook integration?
    • how can you extend lists in SharePoint?
    • explain the document versioning in SharePoint document libraries

    Senior SharePoint Consultant

    • where are web part resources contained?
    • what are the different installation methods for deploying web parts? and what are the pros/cons?
    • what is a ghosted/unghosted page?
    • how is site data stored?
    • where is metadata for a web stored?
    • what is an audience and describe the use?
    • what are the trust levels and what is the default trust associated with SharePoint?
    • what are the two logging mechanisms for usage statistics?
    • what functionality does owssup.dll provide for client side activities?
    • what is the difference between a site owner and a site administrator?
    • what is STSAdm and what can it be used for?
    • can WSS search subsites?
    • can you register alerts for users?
    • are PDFs searchable?

    SharePoint Architect

    • what is a SharePoint farm?
    • describe a large deployment
    • how can you synchronize custom Active Directory attributes to SharePoint?
    • if it is anticipated that our organization would need to store 1 terrabyte of documents, what is the recommended configuration and storage requirement?
    • describe the implementation of SharePoint and Project Server
    • what are the BKMs for workflow and SharePoint?
    • explain how you would deploy SharePoint on an extranet
    • what is the BKM for maximum number of virtual servers configured for SharePoint on a single box?
    • what are the migration strategies for moving sites around?
    • what are the archiving strategies?
    • describe the search strategies
    • can you implement forms-based authentication with SharePoint?
    • describe how single sign-on works