Byron's Tech Ed 2005

Friday, June 10, 2005

Best Practices for Sharepoint Implementation

Areas are for:
Aggregating Information
Organizaing Information
Presenting Information

Sites are for:
Collaboration space for users
1 to many collaboration (mysites)
Provide a development environment

Insist on distributed administration.
Before you give a portal to a group of users, ensure they are willing to help manage the portal.

You're not installing a portal- you're installing CULTURE CHANGE.

Pitfalls to avoid:
Don't do collaboration in portal use wss
Don't develop taxonomy without users.
Not a document management system
Alerts only sent after content crawed.
Indexing is resource intensive
Need 5 servers for a large implementation
Can not share wss and sps indexes

Total data estimates should include the room for indexes (duplicated across wss and sps)
Index space is (data size * .4) * 3 (That's a lot of room! or 1.2 times the data space needed!)

Don't try to use audiences for security- they are for personalization. User profiles are also not security objects.

Office Solutions in Visual Studio 2005

In a word- SIMPLE. I tried to write an add-in once. and only once. Now it looks like the task is made considerably simpler with Visual Studio 2005 (so long as your running Office 2003). The object model and intellitype supports simply the add-ins, and the number of methods to support are greatly reduced. Even adding items to the Action Bar has become simple. I ran the lab on this one as well- and it really is simple. Word, Excel, and Infopath are supported- and support for Outlook is supported as an add-in. Unfortunately, Outlook is still a bit convoluted- primarily for lack of a simple well layed out object model- but if the developers have their way an improved exchange model is in the works in the future.

Named ranges in Excel are easily referenced though a drag-and-drop type interface.
Bookmarks in Word are also easily referenced- and using the drag and drop item- when text is placed into a bookmark- THE BOOKMARK IS NOT DESTROYED! About Damn time!

Eric Carter's blog appears to be THE place to get info on VSTO. Check it out, here:

MDX 2005

I attended a presentation on using MDX for discovering business info. This presentation focused on ways to query business data using MDX. Here's a few tips from the presentation:

Don't use the current member if you don't need it.
Root(Products) finds top "category" of hierarchy (in this case of products).

MDX 2005 allows the member definitions to be declared in order procedurally instead of having to weight them- this in my opinion will simplify MDX greatly. In addition, its possible to run MDX in debug mode and see the browser populate the results as built- also a nice feature.

MDX used to fail if there was a "missing member." Now, an option can be set so that the MDX just returns Null for these queries- so that MDX is more like SQL.

MDX will now do default type conversions. MDX is not case specific. Can use axis to find dimensions associated with a member. And there is now a Business Intelligence Wizard in Visual Studio that will assist in building standard MDX queries.

Tuesday - Visual Studio Team 2005 Goodness

Alright, Visual Studio Team 2005 has just about everything one might want... Some of the good items included are:
Team Server (For sharing tasks, updating microsoft project, etc.
Class Diagram - round trip diagramming, change the diagram- change the code, change the code, change the diagram. Spiffy.
Automatically generated unit test projects - and unit test stubs. Nice! Just about anyone should be able to figure out how to add Nunit to their code now. The programmer who invented Nunit now works for Microsoft. In my book, this is why Microsoft IS the leading developer tool developer- they hire the best and build a superior product.
Code snippets - system has library for your own little code snippits- and ships other demo code. (Things I couldn't tell about this- could we access a stored and shared snippit library? Didn't look like it. And, while this is a nice touch to keep presenters from having to type code... lol, its a far cry from providing the functionality of code rush, etc.
Code coverage - run your program in debug, excercise it with your built in unit tests, see the code highlighted with color indicating which lines of your code were not excercised. Nice.

Finally, the presentation had a quick 5 minute demo of a soon to be released extension to be sold by Quest- a SQL optimizer. This has always been one of my pet peeves with Microsoft vs. Oracle development tools- no optimization tools available. Unfortunately most Microsoft develoepers have no clue what makes good SQL- and mostly because its not clear how your SQL is being optimized inside of SQL Server. This product looks to do a great deal to make this better. I've always liked Quest's tools for Oracle, so hopefully this will be very useful... Here's some text about the release:

ORLANDO, Fla. --(Business Wire)-- June 7, 2005 -- At Microsoft TechEd, Quest Software, Inc. (Nasdaq:QSFT), a leading provider of application, database and Windows management solutions, today announced its plans to deliver extensions for Microsoft Visual Studio 2005. The initial product offering will be Quest SQL Optimizer Extension for Visual Studio. Currently in beta, SQL Optimizer Extension for Visual Studio is one of the first products that enables application developers to tune SQL code for maximum efficiency from within the Visual Studio Integrated Development Environment (IDE).

Visual Studio 2005 continues Microsoft Corp.'s commitment to delivering the most productive application development system for all classes of applications to help customers improve speed to market and decrease development costs and cycles. According to Quest Software customers, developers want to accomplish additional tasks, including SQL code optimization, directly from the Visual Studio IDE, so that they can increase their productivity and application performance. "Microsoft welcomes Quest Software to the Visual Studio Industry Partner (VSIP) program and is excited to see it extending Visual Studio 2005 and providing customers with additional features outside our core capabilities," said Nick Abbott, group manager of the .NET Developer Product Management Group at Microsoft. "By offering a solution that integrates with both Visual Studio 2005 and Microsoft SQL Server 2005, Quest is helping our mutual customers realize the value of an integrated data platform." Following the launch of SQL Optimizer, Quest Software will be releasing additional products that extend the functionality of Visual Studio 2005 and Microsoft SQL Server 2005. All of these products will be available through the Visual Studio IDE. "As a Visual Studio Industry Partner, Quest Software is proud to deliver unique technology that enhances the application developer experience and gives organizations more capabilities that are beyond the scope of the core IDE," said Juli Ackerman, vice president, database solutions, Quest Software. "Developers of any skill level using Microsoft Visual Studio will benefit from Quest Software's deep expertise in SQL Server." Availability SQL Optimizer Extension for Visual Studio will be generally available in September of 2005. To participate in the beta program, go to the Quest Software Web site. Please visit booth #315 at Microsoft TechEd for a demo of the beta version of SQL Optimizer Extension for Visual Studio.

Wednesday, June 08, 2005

Sharepoint Backup

Bill English promised to backup, destroy, and recover a sharepoint installation in an hour and a half using the default tools:

Spsbackup.exe - backup and restore an entire far, an individual server, or an individual component. (In two steps you could back up the SQL Server database, and use SPSBackup to backup the index files.)

What gets backed up?
All SQL Databases
Some configdb info
Index files and sps.edb (metadata on crawed data)
2001 Document Library
Selected virtual servers / site collections

What should be backed up separately?
All WFE customizations such as templates, web part Files, and other file-based info
OS and binaries
System State

How to tear down a portal farm
Delete all portals
Shared Services : remove your Shared Services portal last
Remove each server from its farm roles
Detach each server from the configdb

Join Existing Share Point Servers to a new farm

Restore in this order

3 Steps Overview
1) Backup your portal and index (and sps.edb)
SPSBackup.exe Backup to a //UNC (Can't used map drive, etc. must have UNC.
2) Backup the IIS Metabase on each Web Server
3) Backup the virtual server files for each virtual server

50000 Site per content database - then you should create another content database.

Index Server Two Search Servers for Support of Large Farm (REQUIRED)
Web Server, Job Server, Web Server supported. (If you add a third search has to be pulled.)
Make sure you understand the supported topologies before proceeding with backup and restore.

CMS Directions

Keep objects in any containter to less than 200-300.

You can use an XML web service to display MCMS Content in Sharepoint- OR the other way too. So, for instance, you could use sharepoint to collaborate on a document, then use a sharepoint object inside of CMS to display a page- and put it under approval in CMS for distribution to the intranet or extranet.

Finally, CMS becomes part of Office Systems (Beta end of 2005, Release in 2006)

Eventually, the product will support web parts also.

* When making any changes or READS from CMS you should use the publishing APIs. These APIs will be expanded- and in the past not all could be done through the APIs.

CMS in 2005

Tuesday, I also went to a presentation on CMS. I'm not really conversant on CMS, but was able to pick up a number of key points about the next release and development via Studio 2005 that should be interesting:

Tuesday's Keynote from Paul Flessner had some interesting bits. "Getting Ready for Connected Systems" covered several new developments. Perhaps most importantly to me was the in SQL Server 2005 the database can run the CLR (Common Language Runtime). Theoretically, stored procedures can be written in any language that will run against the CLR- like C#, not TSQL- hooray. Also, SQL Server 2005 will support Native XML, and has infrastructure for RFID (hiss, hiss... 666, and all that.) SQL Server 2005 (and Visual Team Studio 2005 and Biztalk 2006 will launch November 7th.

Monday, June 06, 2005

Sharepoint Migration

Michael Fitzmaurice presented on the Migration issues surrounding sharepoint. There are multiple methods to migrate- but the best involve a custom app to port customer changes back into test- and then from test back into production.

Sharepoint content can be broken into 3 groups of items- each needing different methods to migrate:

Group 1
List data

Group 2
List structure
List views
Page structure

Group 3
Site Settings

This is the best presentation I went to today. Unfortunately the title probably kept some folks away that would have loved to see this. This one was on Data Mining- but not really. It was specifically the Data Mining objects that could be used in Visual Studio. And a way to do data validation WITHOUT ANY RULES. Awesome! Made me think for sure. The system could use its own data to predictively determine whether the entered data is good. And if its not, it can predict what field is probably in question. This has tons of uses where I work. I'm looking forward to talking to the team about some possible implementations.

Also in Balmer's speach on Biztalk, Visual Studio 2005, etc., was this slide. Apparently Microsoft thinks their tools are ready to take on IBM's rational tool for lifecycle management. Uh, huh. Sure. Need to find out about Microsoft's offerings for lightweight development, too.

Steve Balmer gave the Hoorah speech. This is the best time to be in IT, blah, blah, blah. However, some of what they showed at the presentation was good. A lovely presentation on Outlook plug-ins for Visual Studio development. A sales management application filtered email- categorized it as leads, etc. at the users request. A nice use of outlook as the interface to sharepoint, external systems, and more- through web services. Oh, yeah, that's not Steve Balmer in the picture... Its Ms. Bee from The Daily Show. She had some funny lines- but I would like to know why all members of IT are IT Pros... except for developers who are developers. Aren't they professional, too.

Sunday, June 05, 2005

Front of the bag.

The Tech Ed Bag. Lots of cool pockets. Fairly nice briefcase style bag. But, you know what? Last year's backpack convertible was better. If you're gonna care stuff around all week- back pack much better.

Welcome to the Orlando Convention Center. Home of Tech Ed 2005. Florida is hot. Not just hot. New York hot. Hot, hot. Yep, and humid too. First day of Tech Ed, none to exciting. A few snacks. Register, get the alumni hat, bag full of heavy stuff that must be discarded before leaving and of course the conference bag. Leave for dinner, have a bite, and head back to the hotel.