Wednesday, 23 April 2008

What does 'Strongly Typed' mean exactly?

Some links explaining that there is not necessarily a definite answer without the question being asked in context.

Perl *is* strongly typed (was Re: Perl description)
Wikipedia - Strong Typing

Monday, 21 April 2008

Last Months AgilePoint BPM Technical Training

Last month the project team got trained up on AgilePoint by Ascentn consultant Chris Custer.

AgilePoint BPM Technical Training 10th-14th March 2008

This was the course outline.

Day One

Module 1 - What is BPM?
This module will review the concepts and requirements for BPM.

Module 2 - How do I develop a BPM solution?
This module reviews a best practices approach for defining, developing, managing and analysing business processes with BPM.

Module 3 - What is AgilePoint BPM Suite? (What are the differentiators?)
This module reviews the components, the architecture, system usage roles for the product suite, and reviews the functionality of each product in the suite.

Module 4 - What Solution Architectures does AgilePoint BPM Support?
This module reviews a number of development scenarios that are supported.

Module 5 - How do I develop a BPM Solution with AgilePoint BPM Suite?
This module will provide the participants an opportunity to build, debug and deploy a basic process template that is integrated with InfoPath.

Day Two

Module 6 - How do I develop a BPM Solution with a SharePoint Document Library?
This module will provide the participants an opportunity to build a basic SharePoint BPM Solution using the pages provided during install.

Module 7 - Hos do I develop a BPM Solution with ASP.Net Forms?
This module will provide the participants an opportunity to build a solution that interacts with forms for the manual activities

Module 8 - Am I up for the Challenge?
This module will include a practical exercise to design a process template to meet the requirements for a BPM solution. The practical exercise will include a role playing exercise to gather the requirements for the solution from the key business stakeholder.

The resulting designs will be reviewed and discussed by the participants.

Day Three

Module 9 - What are the System Usage Roles (SURs) for the AgilePoint BPM Suite?

This module revies the different SURs involved in an AgilePoint workflow environment.

Module 10 - How is the AgilePoint BPM Suite deployed?
This module reviews the installation scenarios and requirements to install the AgilePoint BPM Suite in your clients environment.

Module 11 - How do you manage users and permissions in an AgilePoint BPM environment?
This module reviews the options to add users and manager groups and roles.

Module 12 - How do I monitor the AgilePoint BPM Environment?
This module provides the participants with a review of best practices for monitoring system health and performance.

Module 13 - How do I backup and recover the AgilePoint BPM data?
This module provides the participants with a review of best practices to protect BPM data.

Day Four

Module 14 - How do I develop a custom BPM Solution using Custom SOA Components?
This module will provide the participants an opportunity to build a solution that includes a custom web service and AgilePart to abstract the service as a business service in AgilePoint Envision.

Module 15 - How do I develop a custom BPM Solution using Multiple Forms for Single Activities within a Process Model?
This module will provide the particpants an opportunity to build a BPM Solution that leverages InfoPath and for each approval step in the process.
A cusom AgileWork component will be developed to synchronise the data collected in the form with the InfoPath XML.
This module focuses on the composite application framework and SOA design.

Day Five

Module 16 - What are the Advance development components to extend the AgilePoint BPM Suite?
This module will review the AgileStub and AgileConnector components, The module will provide participants with the opportunity to explore the .Net class structure of the components and discuss scenarios in which they should be used.
Code samples will be provided for future reference.

Module 17 - How do I develop Reports for AgilePoint BPM Solutions?
This module will first review the sample reports delivered with the AgilePoint BPM Suite.
The remainder of the module will demonstrate Microsoft SQL Reporting Services capabilities.
The exercise will create a process analysis report to identify average task times and list the tasks that exceed that average for exception reporting.

Saturday, 19 April 2008

FireFox Keyboard ShortCuts

Ctrl wClose Tab
Ctrl Enteradds '.com' to what you enter in address bar
Ctrl Shift Enteradds '.org' to what you enter in address bar
Shift Enteradds '.net' to what you enter in address bar
Alt Enteropens a website in another tab
Alt +Dnavigate directly to the browser address bar
Ctrl T open a new tab
Ctrl Shift Treopens the last closed tab
Deletekeydelete specific addresses in browser history or autocomplete forms
Ctrl tabnavigate between different tabs
Ctrl 'tab number'Ex:To go to the 3rd tab use Ctrl+3
Spacebar or PageDownscrolls down the webpage you’re on
Shift Spacebar or PageUpscrolls up the webpage you’re on
middle mouse(scroll) buttonopens the page in a new tab

Saturday, 12 April 2008

SharePoint Course.

I've been on a MOSS course the past couple of days, which has been good...

Microsoft Office SharePoint 2007 Chalk Talk

The facilitator was Mick Badran,

Course Outline

Day One
  • Module 1: Platform Overview

  • Module 2: Server Topology and Administration

  • Module 3: Collaboration

  • Day Two
  • Module 4: Search

  • Module 5: Web Content Management

  • Module 6: Business Data Catalog

  • These are my random notes taken during the two days.

    • 81m licences in 2007 expected 170m in 2008
      • list of publishing sites for references on what you can do with WSS publishing.
    • Search - there are web services that you can consume in your own web app.
    • Talks about importance of classifying documents with extra meta data.
    • free MSFT search product "Search Server Express" that you should use if deploying just WSS search
    • there are 9 different web parts providing search functionality
    • Sharepoint is base for other MSFT products eg Performance Point
    • BDC - link up other sources of information into your portal
    • magnifying part of screen zoomit.exe
    • wss comes free with Win 2003 licence
    • MOSS has 153 features some of which turn on/off on installation
    • "SPLA" licencing can be against features for eg. you can have 20 enterprise licences and n other licences on the same deployment
    • could manage licencing through groups but is basically on a trust basis
    • about 20 different licensing programs available - so if licensing is issue with partner then contact MSFT for information
    • Win 2008 - runs faster
    • 64 bit better again, supports more users
    • Application Pool - set memory recycling - max virtual memory should be 700M on 32 bit
    • once MOSS successfully installed you do have Central Admin web site up and running
    • Advice - alwasy install in farm mode as you then have option to grow
    • Sharepoint solution can have 1 or more fetures to be developed within them
    • Visual Studio Extensions for SharePoint
    • Site Features not only apply to new creations but also apply to all past ones as well
    • you can have dependencies between features
    • 2 main areas of Central Admin site - Operations and Application Mgmt
    • Biggest benefit to V3 is "Site Features" eg
      • Master page deploy
      • publishing
      • 3rd party
    • Partners might create site features as a good differentiator.
    • Sharepoint Solution Generator allows you goto exisiting sharepoint installation and pick out libraries/sites/whatever that you might want to generation a solution from
    • WSP View in VS2005 - windows sharepoint project
    • Reporting Service Integration Features
    • Sharepoint Capacity Planner - used to give guide line on how many servers you require on your system.
    • 3rd party - wan accelerators
    • one way to deply would be to save site as template then you can move this template around
    • use Kerberos (not NTLM) security - will save effort down the track
    • Sharepoint workflows are document centric - they are built on WWF
    • User Profiles can be sucked down from AD
    • Audiences - based on series of rules - ie yrs of svc, first name beginning with A
    • when selecting web part you can set display only for 'target audience'
    • 'target audience' could also be an AD group
    • set environment variable to 12 for the long folder name
      • program files\common files\msft shared\web server extensions\12\
    • can then use %12% in explorer
    • logs folder has the logs
    • bin folder has psconfig.exe
      • enables you to name your admin database without a GUID in the db name
    • with sharepoint v3 you can incorporate sharepoint url into your own separate web application
    • run 'winword' for office word
    • my site url gets written to AD only time sharepoint writes to AD
    • my site url also gets written to registry
    • Open docs in word and have sharepoint lists available to open doc from - these lists can be controlled in 'Published links to Office Client Applications under SSP admin
    • Usage reporting - turn on SSP admin
    • Word 2007 - 'Research Window' can integrate Sharepoint searching into this search tool - by adding a service. moss/vti bin/search.asmx
    • can leverage this search service in your own apps
    • each person under my site is their own site collection
    • you can switch a web sites SSP but you would lose what the original SSP stores, eg index,audiences,my site
    • in central admin web site, sites are site collections, webs are sites, also known as sub sites
    • due to size/usage/load you may choose to have a site collection in its own content db
    • you can 50,000 site collections in a content db.
    • site collection is smallest granular unit you can move from 1 content db to another.
    • Incoming Email Settings - enable sites on this server to receive email
      • ie email a doc to a list
      • this doesnt need exchange - its just a drop folder for email
    • does need configuration on exchange server
      • eg create a moss sub domain -
    • Directory Mgmt service will enable AD tie in that will mean address list in outlook will have document lists email address
    • under doc lib settings you will have communications --> incoming email settings
    • alternate access mappings - gives you url rewriting
    • a lot of users dont know enought about lists - havent used the 'actions' menu
    • there are maybe other company polikcy/politics that affect way you would do collaboration
    • smallest unit of division you can move is a site collection
    • within site collection certain things inherited like
      • regional settings
      • quotes
      • recycle bin settings
    • 'Site Collection Administration' area in Site Admin is only available at the root subsite
    • If for example
      • Add 15 cols to your doc library in your root site
      • the cols will be inherited down at sub site level, but you still need to add those 15 cols into the doc lib at that level
      • instead at 15 cols to content type at root level
      • you then just need to at single thing at sub site level
    • rule of thumb is always create stuff at root level even if you think you are only going to use it at a single sub site.
    • Managed Paths - tell browser things under this address are/are not sharepoint sites
    • MAjor version increases whenever doc is published and approved
    • minor version increases when doc is checked in
    • if you have do with version 0.2, a user with read priv for that library wont see anything
      • if the doc is version 1.5, a user with read priv will beable to read v1.0
    • if the search indexer is under an admin account they will beable to index V1.5 and see a snippet of V1.5 in the search results but if you just have read priv when you click on the link it will take you to V1.0
    • to stop above point happening you should set up crawl rule
    • users docs default is 90 days in their recycle bin
    • sites/subsites dont go into recycle bin
    • add network place
      • paste url of doc lib and you get webdav view of doc library
    • stsadm tool can be used to increase defaut content limit of 10MB when creating document library template by UI interface 'exporting template'
    • you could also use sharepoint designer if content is larger than 10Mb
    • Prune your doc versions - find out requirements for company - what is cut off time - then move content to an archive
    • Document Library is implemented as a feature
    • you can turn of any menu settings for you doc lib
    • you can only have 1 indexer machine per SSP
    • if you add a new property - eg content type, then you need to do a full index for that property to be searchedon
    • search was rebuilt from ground up concentrating on importance of relevance
    • Foxit software - pdf plugin for crawling
    • make site 'authoritative' and it will bump up in the rankings
    • 'search for "hammer and nail" will normally never be found as "and" is noise word
    • can map properties from sources to be certain thing in index - eg search for name = 'friday'
      • source = people = map first/last name to name
      • source = files = map filename to name
      • source = sps sites = map page title to name
    • can set best bets to expire
    • index engine known as gatherer service
    • can set best bets to expire
    • configuring search
      • sps3://moss/ - tells crawler to activate SP APIs and get more goodies out
    • Incremental Index - doing this often - every 5 mins perfectly possible
    • to add pdf icon add to images folder in '12' folder
      • and modify doc icon xml file
    • Scopes can be used to generate diff search page and search results page
    • search for "author:Paul" any property can be searched in same way as author
    • 'Form Web Part' can be used to do searching if you want.. doesnt matter what form is used just pass query to searchresults.aspx with 'k=' is querystring
    • WCM - telerik have some free useful controls
    • Content types,master page, layout page combine to give you your WCM
    • WCM needs 'Office Sharepoint Publising Infrastructure' feature turned on
    • when publishing public sites - look at core.js (400k) to see if you still need it all
    • BDC Action could be developed to write back to LOB system
    • sharepoint exams have lots of Q about BDC API
    • SSO is enterprise feature
    • App Def file is an xml file
    • BDC MetaMan 3rd party tool allows write to LOB
    • other tools on codeplex and the net
    • you could point VStudio at xsd filer and then get intellisense

    Wednesday, 2 April 2008

    Tools and Utils - File/Folder Compare and Merge

    DiffMerge can be used to compare and merge files, also folder compare.

    Tools and Utils - Firefox Add-ons

    Useful Firefox add-ons.

    • Adblock Plus
    • ColorZilla
    • Bookmarks
    • Firebug
    • Snap Links