Geeks With Blogs


The SharePoint Hillbilly Fewer Big Words... More Pretty Pictures...

First of all, thanks to all those brilliant people who made the long arduous journey to the UK (and to all those who just happened to be near by).  I know it must have killed you to be so far away for so long.  I can only imagine how hard it was for you.  All of us that couldn’t go really feel for you and feel your pain.

Okay!  So, for those of us that couldn’t go, some of these guys really did a tremendous job of twittering what was going on during the conference.  They absolutely did not have to do that, but we are SO thankful you did. 

So, what was said?  Well, I captured as much information as I could and will try to condense it down to something we can digest.   There’s definitely a lot here to sift through, feel free to add your thoughts as well.  I’m not posting every single tweet I found, just those that seem to give some insight and tidbits of wisdom.  Also, I posted the tweets in chronological order as they occurred throughout the day.  I was going to group them by topic, but was afraid I may take something out of context.


Blogs & Presentations From Attendees

The SharePoint Mad Scientist

European SharePoint Best Practices Conference London: programme de demain

SharePoint Best Practices Conference UK - Round up of My Day 1

Cover it Live: SP BPC - April 7

SharePoint Best Practices Conference: Follow our live coverage of Day 3, starting at 9:00am

10 days of SharePoint Best Practices Conference. Blogging on the biggest European event.

European Tour and Best Practices - Brief Part 1

[09/04/2009] European SharePoint Best Practice Conference- Thoughts

AC - Recapping the UK SharePoint Best Practices Conference in London last week 

Other Media

@mysharepoint: #SharePoint Podcast (English) Interview with @joeloleson now online #spbpc #spbpuk

@harbars posted photos:

Day 1 Tweets

andrewconnell Crap... Battery just died. Slick move AC, need power already in the keynote... Nice (idiot)...

eshupps @harbars Avoid putting SSP's on obscure port numbers. Damn straight.

eshupps @harbars One DC for every 3 WFE's (though that term was out?). Good advice.

lespaulrob @harbars  ~10 web apps per FARM is reasonable. so true, look at dividing with site collections

rgiddings Todd's Web Part Dev - Deploy to the bin over the GAC unless mandatory. GAC = Hack, Bin - win!

joeloleson Myths by @harbars Consider virtualization for you farm... Provides topology flexibility. Except SQL...

AndrewWoody Small solutions are great

lespaulrob @harbars just showed a great case study on large SharePoint enterprise deployments here:

eshupps @harbars Busted the 2k item limit myth. Well said.

rgiddings  IT Ops not Devs control web part dev project nightly build process and SNKs that are used? - Interesting ideas from Todd Bleeker

eshupps @harbars Firewall basically becomes a router in a scaled SP environment. Man, the arguments I've had about that. Go, Spence!

joeloleson Spence just mentioned index target to use host files to force index to use itself for performance. Well said.

joeloleson Put the 'dodgy apps' in a separate app pool says @harbars

joeloleson Spence use to use loadrunner now uses VSTT (visual studio test tool) for perf testing SharePoint

helloitsliam @joeloleson been testing the WAPT tool as well, less complicated than the VS2008 interface and works well. Still use VS2008 as well

AliSanaei #SharePoint 14 will be W3C Complaint

helloitsliam Proper SQL and Storage Design is critical to SharePoint!!! Never a truer word spoken!!

rgiddings DE202 - Use fiddler to performance tune your InfoPath Forms Services forms and reduce the number of full postbacks

helloitsliam Never AutoGrow databases, always PreGrow. Common sense really but does not often happen. Better performance!!! Highly recommend it!!

joeloleson @mattmoo2 Mysites are great for out of context file sharing, and promoting expertise and expertise finding

helloitsliam @chrisgeier  When I presented recently about My SItes, in 1st session about 75% had rolled them out, 2nd session 10% had

joeloleson @mattmoo2 @mikewat Mysites are a great place to start with enterprise 2.0 of course add ons make this better @zevenseas demo

joeloleson Mike @mikewat is going off on serious need to frequently defragment content databases. I agree. Frequently overlooked

joeloleson @MarkStokes I see rich user profiles as step 1 in a lights on to fully fledged mysites.

helloitsliam @joeloleson @MarkStokes #spbpuk Totally agree,, then getting key business users rolled out with a My SIte to be the Champions are the key

helloitsliam Great start: Content Editor Web Part is of the Devil!!! Evil web part for a publishing site!!

helloitsliam Web Part properties etc is stored in the personalization store, not as with field controls. Issue with publishing sites.

helloitsliam Back to the Content Editor Web Part again. Number 1 issue in publishing site is Web Parts vs Field Controls!!

rgiddings Use CEWP for prototyping sure, but make sure you assess that item and consider Field Control vs non-CEWP Web Part before going live!

RPWillis You want versioning use Field controls not web parts.

helloitsliam Field Controls: Page Developers & Designers control over where content can be managed from

rgiddings You want IT staff to control layout and look and feel and content owners only control over the actual content ->Use Field Controls

helloitsliam Web Parts: Admins, Devs & Designers control what WP installed and where, Content Owners control content and if on page

rgiddings  You want to display content - use field controls, you want to add functionality - use web parts

helloitsliam HtmlEditorCustomStyles, custom CSS in RTE, Make sure you name the classes with "ms-rteCustom" then your name

helloitsliam CEWP Issue 1: Hyperlinks stored as absolute references, Control Adapters would be the fix!!

helloitsliam Field Controls should be used for content, Web Parts for functionality!!

helloitsliam Content Owners should NOT put JavaScript on pages. Personally no reason to allow them too. Governance plan needed for this.

helloitsliam NOTE: @andrewconnell surely "String Concatenation is not the way we should render our content", Control Adapters is the way!

helloitsliam Social Computing = Knowledge Management

rgiddings #spbpuk TDD (and dev life in general) is a lot easier due to Refactor Pro / Resharper

helloitsliam Does your intranet allow you to show you all the documents you have created? If not why not? We should be able to

helloitsliam Key to social computing is combining all aspects of content together with tags!! relative content aggregated together.

thomasvochten Plan for your SharePoint index file size to be around 10% of indexed content according to @mikewat

Day 2 Tweets

omangels Tip of 2day: use SharePoint Custom Search Web Part 2 aggregate data from site collections. More scalable than Content Query Webpart

helloitsliam Remember SharePoint Designer is good but all the changes pop into the database, aswell as making updates very complex.

helloitsliam NOTE: SharePoint Designer is a great prototype tool, works well for GUI designs, GUI Version History for free!!

helloitsliam IIS uses Disk Based Caching, if it makes a DB call for branding does not use cache. If it is a Site def cahing all the way.

helloitsliam HttpModules for Application.Master branding, is the easiest way of sorting the common brand for the whole site,

AndrewWoody Why should you implement kerberos? If user session is longer better RPS

helloitsliam If you have deployed Master Page and then can't update via deployment, maybe page has been modified with SPD!!

AndrewWoody Kerberos required: functionality. RSS, SSRS, excel services, custom code

helloitsliam REMEMEBER HttpModules are not supported. You may need to turn them off if support issues arises with MSFT.

AndrewWoody Kerberos in sharepoint. 20-30 blog posts are all wrong! Technet is where it is at

helloitsliam Idea: Build layouts with Web Part Zones and Content Controls, best of everything unless you are building Publishing Sites.

helloitsliam @mattmoo2 All users have profiles as soon as they are imported from AD, they only have personal sites if you require it.

AndrewWoody Notation is key protocol/host:port. Http/intranet:80

helloitsliam Do you declare features to site def or do you staple? Best Practice is Staple, what do you do?

AndrewWoody Appcmd allows kernal mode setting using command prompt

andrewconnell @helloitsliam always staple... keep site def's as minimal as possible

helloitsliam MAKE SURE you create feature to bind your content type to your site def! or it will not work

helloitsliam ONET.XML changes require IIS reset!!

helloitsliam Customized pages get from DB - slower, pages from disk faster using IIS / MOSS Caching, 8% difference in speed!!

helloitsliam IMPORTANT: Master Pages, Page Layouts need to be unghosted and called from disk!! CSS / Images in Style Library are cached

helloitsliam Another note to not use Web Gardens (yet) - same as what @harbars said yesterday, Blob cache does not work with them

AndrewWoody Clicking save will fail, if not this time but the next. Delete the one time timer job - the change will have been made

helloitsliam @AndrewWBurns Personally I think all branding should be done with Features or HttpModule, agree or not?

helloitsliam Variations only work with Publishing Framework, Site Defs can do localisation in a collab sites. Complex process but works.

RPWillis #spbpuk Always use custom master page for my sites even if just copy of default.master. Allows global changes later.

AndrewWoody Don't use CNAMES for kerberos

thomasvochten @harbars When implementing Kerberos for SharePoint on IIS7,be sure not to forget KB962943! Nasty bug with http.sys

omangels Best practice: Use out of box SharePoint search web parts rather then yr own. gd performance & easy 2 customize w/ XSLT. Ben Robb

helloitsliam Why should you care about secure coding? Simple really!! Performance, Security, Quality etc

helloitsliam Code Access Security is different to Identity-based Security!! CAS is all about resources!!

helloitsliam ALERT: Code that needs Full Trust should raise an alert, The GAC is not EVIL but... Code Security is important here.

helloitsliam Full Trust can hide the safe guards that are in place in SharePoint

helloitsliam Partial Trust = more effort, practice & commitment. Look at CAS as a contract, request based security

helloitsliam WARNING: PageParserPaths in "web.config" can be used to Full Trust Compile all pages.

crmckinley re: public facing sites "Business users don't understand the hours of hard work your designers put in." avoid WP zones !

omangels Public facing sites: avoid authors 2 mess w/ search results page. Use server controls (SP Designer), not web parts zones. Ben Robb,

helloitsliam PageParserPaths set in "web.config" allows unsecure code to compile and then h4cK3rS will win!!

helloitsliam NOTE: DB Writes are prohibited during a HTTP-GET request

helloitsliam It is protected by Form Timeouts (aka Canary, Digest Control) and CAS (UnsafeSaveOnGet)

helloitsliam AllowSafeUpdates will ignore the timeout protection, important decision when coding.

helloitsliam NOTE: Need to check your code to ensure "Cross-site Scripting" hacks cannot happen. Do you check for them?

helloitsliam Understand how user input is validated. When building controls etc ensure this is done and tested.

helloitsliam As an IT Admin, ask the magic "WHY?" question to the your devs. Don't let the code dictate how your farm will work

helloitsliam WSS_Minimal: Allowed to run, ASP.NET Hosting Minimal Permission & Web Part Connections Permissions

helloitsliam WSS_Minimal does not have permission to use object Model. Issue with some DEVS, doesn't work, then elevate. No CAS Testing.

helloitsliam AllowUnsafeUpdates is not always the fix, you still need CAS for this to work

helloitsliam FullTrust is misused in lots of SharePoint environment. This is the hacker mechanism for bypassing unsafe coding practices.

helloitsliam Be wary of anyone not using WSP to deploy artifacts to SPS. XCopy is so yesterday and requires touching all the servers.

helloitsliam As IT Admin, if there is no answer as to why the GAC is required, no deploy. CAS is the way, but needs to be validated too.

helloitsliam CAS: My take, IT Admins need to understand CAS as well and not just accept what is issued by the DEVS.

helloitsliam GAC or BIN = Full or Partial Trust!! Time for meeting of minds IT Admin & Dev. It is important to talk about it.

omangels What 2 expect from SharePoint WCM 14? Mostly fixing of core stuff. Investing in internet facing sites using SP is futureproof.

AndrewWoody Content database shows a history of the patches run and the dates

helloitsliam Custom Field Types!! Can limit the users from adding cack into the solution when using in the Browser!!

AndrewWoody Lastes tSP + latest WSS Cumulative + latest MOSS Cumulative = Your on the latest version

helloitsliam Custom Field Rendering can be used: Graphics, Embed Objects, JavaScript,, jQuery, AJAX, IFRam or User Presence.

helloitsliam Custom Field Type limitations can be resolved but complex code is needed. MUST be running Infrastructure Update!!

flyingtortoise #spbpuk #spbpc pre sp1 and inf update for #sharepoint can cause issue – KB932005

benrobb "plan is not a developer option" - @ToddBleeker at #spbpuk

francoissouyri #spbpuk Todd's explains the 3 easy steps of the MOSS developer : 1.create DLL 2. Write XML 3. deploy to SharePoint.

helloitsliam CFT Composition: Req: Field Def & Class, Opt:Control & Value Class / User Ctrls - Schema, Field User Control & Rend Templates

helloitsliam Should where possible, separate logic from presentation. CFT load custom User Control.

AndrewWoody Existing server, manual process - run PSConfig after installtion

helloitsliam CFT Must have a field class inherited from a base class. Signed/String name, in the GAC!!

helloitsliam CFT: Need to plan the definition to make sure you select the write base field type.

helloitsliam SPFieldMultiColumn is only accessible from API, most common used

AndrewWoody Everyones has a stagin environment right? and it mirrors Live inc data right? if not you need to look at this

helloitsliam CFT Rendering Pattern: 2 x Field List View Page and Header for the column maybe preview in SPD might need a custom one.

AndrewWoody DB Attach option - deletedatabase does not delete the database :)

helloitsliam Intended intention for SharePoint User Control is Rendering Template, Create true user control and call instead.

AndrewWoody Minimise downtime with parallel updates, would never have considered that – cool

helloitsliam CFT power comes from great custom data validation. Stop the users adding "rubbish" in before it is saved

helloitsliam If your code is not plumbed correctly you cannot debug properly!!

AndrewWoody Did your upgrade work? Check Log, 0 error or warning. If not there search for exception or error, check build version

helloitsliam 1. Start Well Named VS.NET Library / 2. Sign / 3. Set Values in the required XML files

helloitsliam 4. Build the solution / 5. Slap the results into SharePoint / 6. Sharpen the logic and rendering

helloitsliam 7. Secure the Assembly / 8.Supply a solution deployment manaifest.xml

helloitsliam 9. specify files to include in a solution package / 10. Store - Deploy the solution

helloitsliam CFT Best Practice: Use Common Class Suffixes

francoissouyri #spbpuk what todo if upgrade failed: take DB offline and do again. Same recommendation I had from MIcrosoft.

helloitsliam CFT Best Practice: Replicate 12 hive in your VS Project. Also use default field properties., don't add stuff just because

AndrewWoody Common failed upgrafe - not logged in as account with correct rights. PSConfig runs under the logged in account

francoissouyri #spbpuk other common failures to upgrade: dec CU had a corrupted dlls in it and hanged. Just my experience. :-(

helloitsliam No Safe Control Entry needed for Custom Field Types, Users not able to take them out of context.

AndrewWoody 100% uptime is a myth it has to be offline to update

helloitsliam Best Practice: Plumb it with bare bones for the initial solution then look at modifying later. Good tip for all dev with SPS.

AndrewWoody recommend using stsadm rather than GUI to avlid timeout

francoissouyri #spbpuk how to restore the Config db if MS does not support this? --> use a full farm "shut down" (KB article)

helloitsliam KEY CFT: Can have multiple User Controls vs. Only one Rendering Template

helloitsliam CFT KEY: Use ICallBackEventHandler in ASP.NET to get and retrieve data without refresh

helloitsliam CFT KEY: HTMLEncode Everything, Throw SPFIeldValidationException to protect rest of the page on error.

@benrobb: if people where automating their installs they wouldn't have to worry about configdb restores...

helloitsliam Taxonomy/Topology - different sections on an anonymous site can use caching to help with performance for similar resources.

helloitsliam Minimize the number of secured items on a page, each request causes 2 x round trips.

omangels Poor men's variations in WSS: use seperate doc libraries 4 each language, use permissions so users only see docs in their language

helloitsliam NOTE: Images library in publishing site is not for generic images, content specific. Use style library!!

helloitsliam Customized = UnGhosted / UnCustomized = Ghosted. SharePoint language semantics!!

helloitsliam SafeModeParser is your SharePoint shield!! Protects inline script! from running, especially now SPD if free for everyone!!

helloitsliam Page Payload = Combined Total Size of all files required for a page request (HTML, Images, JS, CSS etc)

AndrewWoody Have courage to allow staff to blog, it builds community

helloitsliam Best Practice: CSS-based design can reduce the markup, IIS Compression, Lazy-load "Core.js" KB933823, cluster images

helloitsliam 44% of Page Payload = Content + Branding / 25% is "Core.js", move this to the bottom of the page!! Smoke and Mirrors!!

helloitsliam Create new server control that only loads the "Core.js" if you are an authenticated user!! Override the OnInit event.

helloitsliam NOTE: Be a better developer through tools!! Very true wisdom from @andrewconnell

helloitsliam KEY: Instead of script tag use iFrame tag to call the "Core.js", custom page in _layouts, call that way. Progressive

helloitsliam TIP: Cluster images and use "CSS clip:rect" styles to use them. Can use to help out. #spbpc #spbpuk 1 day ago from TweetDeck

helloitsliam CQWP, don't scope the whole site collection. Use the object Cache as much as possible.

helloitsliam Use IIS7 Compression, Higher Compression = Hard Working Server, Less Compression = Server sitting around.

helloitsliam IIS6 vs IIS7 - Compression, no comparisonn. Can compress the content / markup before it goes in the cache

helloitsliam CSCRIPT.EXE ADSUTIL SET W3Svc/Filters/Compression/GZIP/HcScriptFileExtensions add file extensions

helloitsliam IIS7 can change the dynamic compression if it reaches a certain limit, use APPCMD.EXE set config - section:HttpCompression

helloitsliam TIP: Enable Page Output Cache, it is not enabled by default. No reason as to why you are not using it in Publishing SItes.

helloitsliam The most important thing is users access the page quickly, trade off page may be a few minutes old. User Perception again.

helloitsliam TIP: Caching of cross list query output, Not enabled by default, enable it!!. Monitor Cache Hit Ratio counter.

helloitsliam TIP Use Disk-based Caching, common files cached. Configure in the "web.config".

thomasvochten Configure your SSP & Central Admin apppools to auto shutdown if possible.

helloitsliam AppPools for Admin / Central Admin can be set to close after usage. Can also set other app pools to recycle with caveats.

helloitsliam Main bottle necks on SharePoint WFE, SQL, Network, Indexer, JIT compilation to name a few.

helloitsliam NOTE: Think about concurrency, don't load the servers with every single user, stagger it as normal behavior would dictate.

helloitsliam Key to a great performing infrastructure, need to understand the underlying base infrastructure, AD, SQL and your Network.

helloitsliam SharePoint 14, stuff will come out, get to the in October, stay in contact with UG's!! Blogs etc

helloitsliam Remember that ISA 2006 is the way to do FBA with SharePoint using Kerberos, things like constrained delegation

helloitsliam TIP: Setting the alerts job to run every minute could cause the timer service to fail and crash the alerts.

helloitsliam If you have a cowboy who builds your SharePoint platform, rebuild, rebuild and rebuild. Need a base that you know!!

helloitsliam TIP: Do not use OOTB SQL Maint Plan to defrag the DB's. Read this white paper:

Day 3 Tweets

helloitsliam Internet = Insecure Content, Intranet = Generally Secure, Extranet = More Secure than Internet, less than Intranet

helloitsliam Don't try to lock down SharePoint at SharePoint, block connections before it gets there.

rgiddings #spbpuk Best Practice: Use Solution Framework to package development artifacts...please!!!

helloitsliam NOTE: WFE Servers should have 2 x Network Cards, 1 x LAN, 1 x User Access (Multiple IP's, DNS Routing etc)

rgiddings #spbpuk Keep your solutions as small as possible to minimize upgrade impact

fatalfrenchy #spbpuk common theme here for being careful what you package in wsp's to minimise upgrade impact

helloitsliam More Security = Less Complex Environment, Keep it simple.

rgiddings #spbpuk Associate events with content types rather than lists. This is the best long term solution.

RPWillis #spbpuk Associate event receiver to content type is the best long term option where possible

fatalfrenchy #spbpuk good practice to generally bind event receivers to content types rather than lists. Caveat is document added only uses default ct

helloitsliam Best Practice: Extend Web Applications where possible, especially for External access to SharePoint.

helloitsliam Too many people simply publish the root site collection without extending and allow external users directly in

francoissouyri #spbpuk Helpdesk have to understand sites/lists/lib/docs/workflow/3rd part wp. Surely not first line support (?) but 2/3rd?

omangels Steve Smith: Don't create multiple SharePoint root site collections

helloitsliam As I often say, one of the key points is to work out your entry and termination points before you deploy SharePoint.

helloitsliam Best Practice: Don't allow servers to browse the internet, use x64, use HIDs and NIDS, maybe TLS (SS:L IPSec) on servers.

fatalfrenchy #spbpuk partially trusted callers if not allowed can skew your results in event receivers. Something to not forget

rgiddings #spbpuk If event receivers are gonna be long running (> couple of second) consider using a workflow or job instead

fatalfrenchy #spbpuk use disableeventfiring and enable to control recursion in events

helloitsliam NOTE: Your choice but maybe not use 3rd Party security applications on your SharePoint servers.

rgiddings #spbpuk EventReceivers are not inherited through content types unlike fields

helloitsliam Protect things better at edge, Any extra added to the farm such as IPSec, SSL etc will have a performance hit.

helloitsliam BP: Terminate SSL outside SharePoint / IIS - better to remove the performance hit as well as ring fencing your solution.

omangels Spencer Harbar: SharePoint SSL requirement: Use sticky sessions on NBL (single affinity). Better for performance and security.

helloitsliam BP: If you are using SSL termination, set default URL as HTTPS only if the majority of access is via this route.

omangels Best practice SharePoint SSL: Use fixed IP addresses, A records in DNS and port 443

omangels Best practice: always use SSL for SharePoint central administration

helloitsliam NOTE: Central Admin / SSP - UN's and PWD's sent over plain text. Secure CA

helloitsliam In a SharePoint solution, need to consider publishing multiple Web Applications depending on design and requirements.

fatalfrenchy #spbpuk use an auto activated feature on a site to simulate a site added event

helloitsliam TIP: Ensure SSL certficate is the right one for all the devices that will connect, such as mobile devices. Get proper ones!!

rgiddings #spbpuk Remember, Event Receivers and Workflow don't work with anonymous transactions

helloitsliam Routing , DNS should be used with Static IP's to ensure best practice design. Not 100% technet way

helloitsliam Most of the time as an IT Admin, you will be doing core infrastructure (AD, DNS, IIS, SQL etc) work not SharePoint

helloitsliam TIP: One-to-One mapping, from Perimiter to SharePoint. SSL Listeners pushing down via IP to Servers.

helloitsliam @omangels Have noticed quite a few clients recently using Juniper Boxes, and running it over SSL VPN for access also.

helloitsliam [OFF TOPIC] Omtool Adobe plugin allow saving PDF directly to SharePoint:

helloitsliam ISA FBA: If you are flicking across Web Applications you will get prompted for Authentication. Set user expectations.

helloitsliam NOTE: Policy for Web Application is a dangerous screen!! Can set full access to anything from here!!

omangels Performance hit of using SSL with SharePoint is quite low

francoissouyri #spbpuk SOA is not a technology (forget "SOA in a box") it's a system design strategy

mikeherrity Why SOA? Geographic distribution, overlapping application functionality, continuity of oprarations, Interoperability Cost reduction

omangels Hide presence ActiveX on internet facing sites: Override the ProcessDefaultOnLoad() JavaScript function. MSKB #931509

helloitsliam SharePoint sites default to WSS_Minimal, developers need to either change trust level (Not good) or CAS policy.

omangels SharePoint CAS Policies for Custom Code: no justification for using Full trust! Use custom CAS policy

helloitsliam Increasing Trust = Lazy Developer, Custom CAS = Better Developer (if CAS done correctly)

rgiddings #spbpuk There is no escape from CAS in the SharePoint world - Spence Harbar

helloitsliam BP: Page Payload, avoid OOTB Publishing SIte and Master Pages, Use CSS Design, Tune IIS, Lazy Load "Core.js"

omangels Public facing SharePoint sites: Lazy-load core.js MSKB 933823

helloitsliam @andrewconnell Default Publishing Site and Master Pages are crap!! Create your own.

helloitsliam KEY: @harbars Good clean markup is the key, can use Tables if correctly done, or CSS. Throw the default Master Pages away!!

mattmoo2 eeek dont install SPD on SP servers, infact she said NEVER

RPWillis #spbpuk Use minimal master page rather than oob ones. Reduces payload and complexity.

thomasvochten SharePoint Search: Don't use the default content access account as farm admin but give it access through the webapp policies

mikeherrity 3 missing SOA elements to SharePoint. No addresing between farms, point to point integration, automatic or manual

INTJohn #spbpuk UDDI, the services address book, is one of the best ideas and least used features in SOA

fatalfrenchy Ie settings manage add-ons and disable namectrl class and then delete it to redisplay active x warning msg

INTJohn #spbpuk add a node topology service, UDDI and a content definition service to SharePoint and it will be an SOA platform

helloitsliam BP TIP: Use Fiddler to work out the page load etc or you can use HttpWatch

AndrewWoody More fiddler demos at #spbpuk - a must have tool for SharePoint devs and ITPros

mikeherrity Is SharePoint SOA? No but moving there e.g. Federated Search and Records Managment are both SOA. But SPoint is not SOA overall yet.

helloitsliam Suppress "Core.js" on the page, override the JavaScript methods

helloitsliam TIP: Make sure you deploy changes to OOTB JS etc such as "Lazy-load of Core.js" so they can be removed quickly and easily.

fatalfrenchy Viewformpageslockdown feature needs to reactivated when changing the anon settings on a sc

helloitsliam TIP: Use the "Lockdown Feature". Need to reactivate when changing the anonymous settings in a site collection. Add to WSP.

helloitsliam @andrewconnell back to caching again. Need to make sure that you have a caching strategy before you go live!

fatalfrenchy #spbpuk remember to enable AND configure your page output caching

helloitsliam NOTE: Caching on a public or internal site should really be a no-brainer!!

helloitsliam @harbars Disk based Caching is the reason why Web Gardens should not be used at the moment.

helloitsliam BP: Disable / Stop unused services - Excel Calculation, Incoming Email, WSS Search etc, free memory up.

omangels SharePoint anonymous Internet facing sites: Disable the WSS search role, you don't need it

helloitsliam BP: Don't set the compression to 9 and leave it, start at 9 then drag back to the "sweet spot".

helloitsliam IIS7: Default Static Compression, Compress by MIME Type and allow compress of content before adding to page output cache.

fatalfrenchy Handy iis6 vs iis7 compression comparison #spbpuk

fatalfrenchy Blobcache maxsize is gigabytes NOT megabytes

helloitsliam BlobCache should be set to use local fast disk not a network share somewhere. Think Performance.

helloitsliam WEB APP: Turn of Smart Presence Tag, Blog API unless using, modify some of the simple defaults - minimize surface of attack.

INTJohn #spbpuk Brad: deploying SharePoint (and other platforms) using expensive deployment specialilsts (us) is an unsustainable business model

francoissouyri #spbpuk accessibility and silverlight Is a challenge and has not been solved yet. Pbl is screen readers. Get users who need it, involved!

andrewconnell RT @omangels: @andrewconnell You don't need core.js for anonymous users, block it #spbpuk AC: but know that's not supported!!!

rgiddings #spbpuk Deployment Goal #1 We should always be able to rebuild from scratch

helloitsliam What are the deployment goals with MOSS? Package deployment that is Repeatable.

rgiddings #spbpuk Even with a fully automated deployment, documentation is still critical

helloitsliam TIP: Use John Hollidays XML Addin for VS. Get over to the following site:

helloitsliam Features are about provisioning artifacts not moving content and data around.

helloitsliam @ChrisO_Brien For a developer coming from .NET, features is a steep learning curves. Updates to features can be struggle.

helloitsliam STSADM Export: Very simple use, move sites collections / webs (data & schema), can scripted. Has some cons but great option.

helloitsliam WARNING: STSADM Export - limitation object ID's do not retain them. ID links not found then will create and duplicate.

helloitsliam @ChrisO_Brien STSADM Export is not backup and restore. Nuff said.

helloitsliam CDW ( ): Sames as STSADM, Deploy to site collections/webs/list item, can be scripted.

helloitsliam @ChrisO_Brien Demo of Kivati Studio:

helloitsliam Kivati - great tool for content deployment, nice workflow interface that is easy to use and deploy to IT Admin.

helloitsliam KIVATI - Deploy is packaged into .EXE for Admin, Workflow Designer for re-use, Can Write Code

omangels @ChrisO_Brien For deployment to a single site collection, the SharePoint Content Deployment Wizard works pretty well

helloitsliam Guidelines Choose Export/Import Method: Type of solution, Packaging Experience, Frequency of updates

helloitsliam KEY: Ensure deployment method is capable of working with multiple DEV scenarios. Multi DEVS and FARMS.

helloitsliam BP: Always use WSP for File System Files, SafeControl Entries, Document how to deploy, Identify Update process.

helloitsliam BP AVOID: Using STSADM backup/restore to move site too many things may now work. Use for restore to same location.

omangels @ChrisO_Brien Only use STSADM to backup/restore to the same location!

helloitsliam BP AVOID: "Save as site template" to move sites. Not everything is saved. Big NO NO!!

fatalfrenchy #spbpuk don't use stsadm backup/restore change as history goes with it. Only for restoring to same location

helloitsliam BP AVOID: Do not modify features or site def files when things are deployed.

helloitsliam DEPLOYMENT KEY: Repeatability and Predictability. Select ritgh key for the right solution. Always follow best practice!!

AliSanaei @pinkpetrol ans: Don't try brandin #InfoPath form itself, take the control into ur #SharePoint webpage and do branding there.

SharePointSher InfoPath starts to lose its value as soon as you start introducing custom code. Harder to maintain and deploy.

helloitsliam Get @eshupps code samples from here:

francoissouyri #spbpuk virtualization BP: use: 64bits, latest OS for guest, confirm soft u k stall is certif Win SVVP

fatalfrenchy Every sinlge piece of data goes into 1 table in sql... shows how important optimised data access is

helloitsliam NOTE: You will never get the performance in SharePoint that you would get if direct to SQL.

helloitsliam TIP: Do not use Indexer operations in SharePoint Code for LIst Items

helloitsliam DATA Retrieval: Use CAML, Maintain SQL Indexes and manipulate data in memory.

helloitsliam 2000 Items in list is a ONLY for list views. Can have 5 million items and the use custom WP to display.

helloitsliam Be careful of the SharePoint Emoticons:: 0;# or x0020 or OWS_

ianmoran #spbpuk virtuallsation BP - don't virtuallse SQL or index server roles, virtuallse the rest

helloitsliam TIP: load data into memory then manipulate. Indexer method works but does not scale!!

helloitsliam SPQuery will give you a better performance, you can select content you wish to recieve. DataTable method from OM not best

helloitsliam Web Service Data Retrieval is good but requires some more code to filter out what you actually need.

helloitsliam TIP: Cache content using APS.NET Page Cache instead of using ViewState.

francoissouyri #spbpuk virtualization. on Physical Use IPv4 and disable IPv6 (may be pbl with only HyperV, no confirm)

AndrewWoody Be careful with viewstate. View page source you might get a shock

helloitsliam KEY NOTE: MOSSS Data Retrieval can be significantly improved by using Search on the list items,

fatalfrenchy Use search api for cross site queries on lists. Use targeted scopes to allow for more frequent indexing

helloitsliam Key to using Search API for data retrieval is you can create "SELECT" queries using FullTexSQLQuery.

AndrewWoody @eshupps Search API is one of the most under used part of SharePoint

helloitsliam @eshupps Using ADO.NET to create relationship DataSets from SharePoint and then add to DataTable is complex and has limits.

helloitsliam NOTE: LINQ is great but can cause a performance impact. It is simply running CAML code without you knowing

fatalfrenchy Get your data with webservices or search api (BP) then use linq to give a relational datalayer to aggregating data across lists

helloitsliam BP: Site Objects: Use CAML / Cross-Site Objects: PortalSiteMapProvider / Ext Objects: Web Services

ChrisO_Brien Couple of FYIs for folks who attended my #spbpuk deployment talk - FYI#1: the Wizard is *free*, it's a Codeplex tool at

INTJohn #spbpuk (in records mgmt session) content types are not fully baked as they do not provide full encapsulation from a dev point of view

INTJohn #spbpuk SharePoint does not have _any_ direct competitors from a platform perspective


That’s all I got folks.  Please feel free to add to the conversation in comments.  Hope this was helpful to someone other than myself!

Posted on Wednesday, April 8, 2009 10:17 PM | Back to top

Comments on this post: SharePoint Best Practices Conference UK 2009 – Notes from the Twitterverse

No comments posted yet.
Your comment:
 (will show your gravatar)

Copyright © Mark Rackley | Powered by: