Tuesday, December 28, 2004

Some more webdesign tips

A while ago I wrote a posting about tools for webdesigners, today I found a blog which listed some more info about one the hardest things for webdesigners, Choosing Colors for your website

Monday, December 27, 2004

Some more SharePoint blogs

Some spare time to surf the web again, so I went hunting for some more sharepoint blogs:
  • It seems that there are a couple of German SharePoint blogs, here's one of them

  • ... and another one, SharePoint blog (German)

  • This one is in English, (... fortunately ;-) ....) Fear and loathing:SharePoint, .NET, Agile, and other things that go bump in my computer...

  • It also looks like Lamont Harrington has created a newly compiled list with SharePoint stuff at his SharePoint 2003 Resource Center (He also adds a link to some online seminars about SharePoint on MSDN - I kind of lost that link )

  • A blog about SharePoint on SharePoint: definitely take a look at this site, it is a great example of all the things you can do with SharePoint

  • Dustins SharePoint blog
  • Friday, December 24, 2004

    How email changes vacations

    Excerpt from an article in the New York Times, how email changes vacations, I have to say they definitely have a point since I'm also cleaning up my inbox now although I'm on holidays,... or maybe I'm just a workaholic. This will probably be one of my New Years resolutions, "do not answer email when you are on holidays"....

    "Today's reliance on e-mail has changed the nature of vacation," said James E. Katz, director of the Center for Mobile Communication Studies at Rutgers University.

    If you do clean your in-box, he said, you're "defeating the purpose of vacation, which is to get away from the office and do something different."

    If you don't, "you have to work twice as hard when you come back," he said. "And while you are responding to those, new ones come flooding in." In some ways, he said, "you are punished for taking vacation, by out-of-control e-mails."

    Thursday, December 23, 2004

    Microsofts top 10 challenges for 2005

    Here are Microsoft's top ten challenges for 2005, as assessed by Kirkland-based research firm Directions on Microsoft and republished by silicon.com.


    Some days ago, I got a dvd from a friend with just a couple of letters written on the cover Mame, now I know that it stands for Multiple Arcade Machine Emulator. Download the emulator and go surf the net for all of those popular old games (By the way check out romnation), 1942, Double dragon, PacMan, Street Fighter, ... Ah, the nostalgia

    Tuesday, December 21, 2004

    MSN Spaces inappropriate content ... Hahaha

    I don't think I'm moving all of my content to MSN spaces, yet... yesterday I received an email from MSN Spaces Customer Support, which announced I had inappropriate content (Pornography) on my MSN spaces. Just because I uploaded some (nude) sketches from my art classes into the picture libraries... Come on, this is definitely sad...

    " Space Name: portalgeek
    Space URL : http://spaces.msn.com/members/portalgeek
    Photo Album: Sketches
    Photo Name:
    Photo Description: Inappropriate content (pornography)

    If you remove the said materials, your space will be again in compliance with the MSN Code of Conduct and will remain open for your access. Otherwise, we will be forced to close down your space.
    We hope you could bring your space into compliance as soon as possible.
    MSN Spaces Customer Support "

    By the way, check them out anyway on my other blog http://jopxpaints.blogspot.com

    Google Desktop Search vulnerability

    Well, Google Desktop Search seems to have a security problem which would allow users to search your desktop from over the internet (You can register for free to read this article on the NY Times). Check if your Google Desktop Search is vulnerable, examine the "about" page from the Google Desktop icon in the browser task bar. Version numbers above 121,004 indicate a newer edition of the program, which Google released after the vulnerability was discovered.

    Sunday, December 19, 2004

    Rule Based engines in .Net

    My final dissertation at university was about building a rule based system for derivatives trading with JESS. Since I haven't done any java development anymore since version 1.1.7, I'm definitely going to check out ILOG Rules which is .Net enabled, read more about it in this article or go directly to the ILOG website.

    SharePoint Community

    Another communitysite around SharePoint, build with SharePoint ...

    Real Developer Network

    Picked this up from Patricks Blog, the developers at Real Software have launched a blog community called the Real Developer Network

    Thursday, December 16, 2004

    SharePoint developer evangelist is blogging

    I picked this up from Daniels blog, Mike FitzMaurice is blogging (Mike is the developer evangelist from Microsoft for SharePoint - you can see on events such as the SharePoint Developer Tour, last year) and he's actually commenting on some questions and remarks which we're raised in the blogosphere... Check out Mike's blog.

    Wednesday, December 15, 2004

    Developer & IT Pro Days

    Today, my boss told me I could go to Developer & IT Pro Days, nice... I definitely want to see the 2 Hardcore SharePoint Development sessions by Jan Tielens and Patrick Tisseghem and the sessions about Distributed .Net and Service Oriented Architecture.

    Newly released code for SharePoint and CMS

    It's amazing how productive people are lately, another bunch of nice code for SharePoint and CMS has been released:
  • Webpart control which displays content from MSCMS from Stephen Huen

  • Posting about using Web Author to Insert Internal Bookmarks (MSCMS)

  • MSCMS Health check tool

  • The TemplatedWebPartZone source code is now available on the WebPart Components workspace. (SPS/WSS)

  • MCMS.RAPID launched: MCMS.Rapid is a framework for MSCMS development, it is downloadable for free under open source agreement

  • Document Library Browser for WSS/SPS

  • Source code for the CMS Metadata placeholder from Jesper Halvorsen

  • CustomPropertyDbEx (article) / CustomPropertyDbEx (source code) - this is a replacement for the custom properties in CMS
  • ... and of course SmartPart 1.0., download the installer here - For those of you who have done webpart development, this tool will solve a lot of time while development, provides an alternative way of building webparts with usercontrols, enables webpart connections easily and runs under minimal trust
  • Tuesday, December 14, 2004

    Monday, December 13, 2004


    Tariq has just finished Need for Speed Underground 2,... I'm still at 28%, still some hours of gaming to go. Damn, so little time and so much things to do. By the way, does anybody know how to solve this issue with network play, the game just freezes when I'm connecting to the lobby.

    MSN desktop search launched

    Jan has added a great review of the newly launched MSN Toolbar suite which enables MSN desktop search. I'm definitely trying it out the next couple of hours. By the way, you can download it here, do mind however that this is a beta release

    Microsoft Office Business Scorecards Accelerator

    This weekend I took a look at the Office Business Scorecards Accelerator and I have to tell that I'm pretty impressed. Most of the BI solutions that I know require very high end ( and also high price) products but for people who have already an existing Microsoft based infrastructure with Windows 2003 and SQL Server, this solution is a very nice starting point to deploy a flexible scorecard solution. I'm under the impression that this accelerator is not very known within the market although it is a very good value solution. I think that the next couple of weeks I'm going to write a little bit more about how you should implement a scorecard solution based on Office Business Scorecards accelerator. So lets start of with a quick introduction...

    The Microsoft Office Business Scorecards Accelerator enable employees at all levels of the organization to simplify the measurement and management of key performance indicators (KPIs) and business strategies. It does this by simplyfying the creation of so called scorecards, the mapping of real data to the measures in these scorecards and providing a customizable visualization of these scorecard. The solution is targeted at decision makers at different levels in your organisation.


  • SharePoint Portal Server or Windows SharePoint Services : required for the Scorecard Development environment.

  • Visio: The Visio ActiveX control (Visio 2003) is required for creating scorecards. The free Visio Viewer is required for just viewing scorecards.

  • SQL Server/Analysis Services: Required for the Scorecard database. Analysis Services cubes are required as scorecard data sources.

  • Office 2003: Required for utilizing Office Web Components and for document creation.

  • Main components:

  • Multiple scorecard & metric views: a number of webparts are out-of-box available to display the information from within your scorecards

  • Strategy Map Builder : enables users to easily creates strategy diagrams and integrate key performance data, by using Visio.

  • Scorecard Builder : user interface for building your scorecard definitions, the user interface is webbased and uses WSS or SPS

  • Scorecard Engine: the main component, builds your scorecards based on the on the KPIs (Key Performance Indicators) you define yourself. These KPIs are mapped on data which resides in your SQL Analysis Server.

  • II would love to hear of people who have project experience with this solution. So if you have some nice tips and tricks, sample code, ... do not hesitate to comment on this posting.

    Saturday, December 11, 2004

    SharePoint MOC 8036a

    Last week I was teaching the MOC 8036a - Designing IT platform collaborative applications with SharePoint 2003, this course is a replacement for MOC 2012. It is a 2-day course which explains all the basics of SharePoint, stuff like deployment, features, security and architecture. It is a nice overview if you are not familiar with SharePoint and want to get up and running in 2 days. Some observations of mine (I won't be so harsh in my critique as Patrick - definitely take a look at the last line of his posting - but I definitely see his point) :
  • I think that the SharePoint MOCs contain a little too much marketing material, if customers are following this course, they probably already know about the merits of SharePoint so don't rub it in.

  • There are a lot of annoying little errata: e.g. it still talks about the limits of MSDE, while WSS actually ships with a modified version of MSDE - WMSDE which has the limitations removed

  • The course should at least provide a chapter about SharePoint customization, it doesn't even talk about the difference between site templates and site definitions. If you want to learn more about site definitions and site templates read the whitepaper Customizing SharePoint Sites and Portals Part II

  • Some things are repeated over and over again in the slides, ... and the course is definitely missing a clear structure.

  • Maybe these shortcomings are only so conspicious when you have already some experience with SharePoint, but anyway this is not an excuse, these MOCS definitely need improvement. Of course,if your trainer is good, it makes a world of difference ;-) ...

    This posting does not reflect the views of my employer
    and is provided as is with no warranties, and confers no rights.

    Google suggests

    Whow, this is cool, Google suggests.... As you type, Google will offer suggestions. Use the arrow keys to navigate the results. Also take a look what Joel on Software says about it.

    Tuesday, December 07, 2004

    Waka and XML Visualizer

    From Patricks blogl, I found this link to the Waka Web Part tool, it allows you to register controls as safe in the web.config for SharePoint projects. When I took a look at the other postings, on this site I found a link to this other nifty little tool, called the XML Visualizer, a VS.Net addin which enables visualizing XML data in debugging mode.

    Monday, December 06, 2004

    More SharePoint stuff

    After cleaning up my RSS postings for review, I selected interesting SharePoint postings
  • Restrict a Customized Search to an Individual, New, Programatically-Created Content Source

  • Setting a WebPart Title programmatically - when is it a good time to do so? - Interesting article about the event lifecycle of webparts

  • Interesting "over-documented" setting in SharePoint Portal Server regarding alerts - Summary, scheduling alerts doesn't work - they are send whenever an index update is done. This feature was removed during development, but they forgot to take it out of the documentation - go figure ;-)

  • People Finder Web Part Nice little tool from Mark Bower, great code, definitely take a look at it

  • Writing Windows SharePoint Services Server-Side controls

  • Microsoft has located the Language bug in Sharepoint. It seems that .Net 1.1 SP1 causes SPS administration pages to switch back to English. Whow,finally the multilanguage functionality I wanted ... ;-)

  • The "I hate Oracle club"

    A variation on the usual Microsoft bashing ... the I hate Oracle club.

    Thursday, December 02, 2004

    SharePoint Tools Galore

    I noticed that Tariq has created an overview of tools for SharePoint, so I'm trying to complete it with some more tools:

    SharePoint toolsuites
  • Coras workplace suiteSuite with rollup webparts (for news,documents,tasks,...), navigation controls and full language localization (This is way cool...)

  • Syntergy Provide lots of modules such as replication technologies for SharePoint, bulkloader, audit for SharePoint,...

  • Search
  • Entopia K-Bus for SharePoint Portal Server: Adds extra information discovery capabilities, also allows SharePoint to index Documentum, Opentext,...

  • WSS PowerSearch - The developers ofthis product also have some other nice SharePoint tools, check out PowerRecycle and PowerNav

  • Navigation and UI enhancements
  • Advis site navigator

  • Backup/Data Recovery/Antivirus
  • SharePoint document recovery tool : Free download from Stephane Cordonnier

  • McAfee Portal Shield

  • Workflow
  • NetPoint Solutions

  • Factiva:Search and workflow tools for Office 2003

  • Captaris Teamplate: This workflow toolset even adds a module for fax based workflow "RightFax Workflow wizard

  • Skelta workflow .Net

  • K2.Net

  • Nintex smartlibrary

  • Smart workflow from LMR Solutions

  • DataLan FlowBuilder

  • Records management
  • Meridio: .Net software which integrates seamlessly into SharePoint and provides records management features needed to be compliant with standards such as Sarbanes-Oxley, US DOD 5015.2 records management standards,...

  • Towersoft

  • Utilities
  • SharePoint Explorer : another free tool which you can use to explore the SharePoint object model

  • Admin report kit for SPS 2003: configuration and usage reporting tool for SPS 2003

  • Business Intelligence
  • DSP Portal Edition : Adds webparts which can display information from OLAP cubes

  • Miscellaneous
  • Brightwork: adds MSF (Microsoft Solution Framework) on top of SharePoint

  • Ratings & expert module for SharePoint
  • Wednesday, December 01, 2004

    Deja vu - the browser wars?

    A long time ago there was this little company called Netscape. It had only one application called a "browser",... But then on August 10, 1995, Netscape went public and it turned out to be the largest public IPO in Wall Street history. People started dreaming, maybe Bill dropped the ball and they already predicted the demise of Microsoft. But Microsoft reactly swiftly and this ignited the first browser wars.

    But this time it is different, although the newslines seem to be the same see Browser Wars Back On. This is not a for profit company, this is Open Source. And it looks as if Firefox is actually gaining ground... I just took a look at which browsers people are using to visit this blog. Amazing....

    1. Internet Explorer 6.x 74.2 %

    2. Mozilla Firefox 1.x 25.8 %

    Something that is however not discussed in most articles is the fact that people are not only using browsers but also news aggregators to surf the Net. Since I read a lot of blogs, I think that the majority of the time I use RSS Bandit when accessing the Internet.

    MSN Spaces

    MSN spaces is available for everybody to use,... Microsoft is apparently aiming at Blogger (also owned by Google). I just created a new MSN Spaces site, PortalGeek. I hope it will be possible to use wbloggar to create postings as well...

    SOA Revisited

    The past couple of weeks, I looked at some notes I took after watching some presentations about architecture. SOA - (Service Oriented Architecture) definitely seems to be the hype word at the moment. Well not so long ago, the hype word was web services. But I think if we take a look at Gartners hype cycle for new technology, web services seem to have hit rock bottom, or as Gartner puts it "Trough of disillusionment".

    But the hype about SOA will revive the interest in webservices because web services are one of the enablers of SOA. Web services are currently the first universally accepted interface, every software vendor or product has SOAP support. Web services allow us to define a software architecture in which the services are the core.

    A while ago, I blogged about SOA, but lets recap, what is SOA? Actually it is nothing more then a design philosophy, a philisophy which is governed by 4 tenets:
    1. Services have explicit boundaries : only interaction possible at the service boundary - e.g. Asmx webservices
    2. Services are autonomous : no assumptions about how the service is implemented, loosely coupling
    3. Services share schema & contract not objects : "pass by value" - the WSDL contains both the service and the data contract
    4. Services are policy based : policies describe the rules for interaction, transactions, security, wire protocol

    These tenets have also some technical consequences however, such as:
  • Try to avoid remoting & enterprises services at service boundaries, these are tightly coupled, component based architectures. Use .Net remoting only in very specific scenarios - for iIn process cross application domain calls and
    when you have to implement a custom wire format (For more elaborate discussions, take a look at Clemens Vasters blog). One fo the reasons you should avoid Remoting is because it uses SOAP encoding differently from web services

  • Use asmx webservices and WSE for basic policy implementations

  • Use a WDSL first approach, start from your xml schemas and then go to the class implementations
  • Sunday, November 28, 2004

    Web services discovery

    If you want to use a webservice in your .Net applications, you have to know the URL to add a webreference to it. (If you encounter a problem, take a look at Troubleshooting add web reference problems) You can set individual web references to .asmx files, but if your application uses many services, this is not very handy. To solve this Microsoft provides discovery information. Microsoft provides discovery information in 2 ways, statically with disco files and dynamically with vsdisco files. With dynamic discovery the discovery document is generated at runtime. A .disco file contains markup that specifies references to a web service's WSDL file and other DISCO documents.

    When a .vsdisco file is requested, the .NET framework analyzes the directory in which the .vsdisco file is located, as well as that directory's subdirectories and returns markup that contains references to all web services in that directory and the directory's subdirectories (It is however possible to exclude some directories from being searched).
    A vsdisco file would look this
    <?xml version="1.0" ?>
    <dynamicDiscovery xmlns="urn:schemas-dynamicdiscovery:disco.2000-03-17">
    <exclude path="_vti_cnf" />
    <exclude path="_vti_pvt" />
    <exclude path="_vti_log" />
    <exclude path="_vti_script" />
    <exclude path="_vti_txt" />

    Dynamic discovery is however disabled by default. With the .Net framework you had to remove the comments from the following lines in your machine.config. With the .Net framework 1.1 these lines are removed from the machine.config so you have to add them yourself.
    <!--<add verb="*" path="*.vsdisco"
    System.Web.Services, Version=1.0.3300.0, Culture=neutral,
    PublicKeyToken=b03f5f7f11d50a3a" validate="false"/>-->

    As you can see dynamic discovery is accomplished in ASP.NET by mapping the file name extension VSDISCO
    to an HTTP handler that scans the host directory and subdirectories for ASMX and DISCO files. For more info about http handlers definitely take a look at Using HTTP Modules and Handlers to Create Pluggable ASP.NET Components

    Saturday, November 27, 2004


    I was just wandering around on the net, when I found this site with WIFI spots in Montreal. But since I live in Belgium it would be nicer, to find Belgian wifi hotspots and .... surprise, there actually is.

    Is WIFI finally becoming mainstream? From personal experience I find it still not very easy to use and I actually got some problems after upgrading Windows XP to SP2. Before SP2, the connection speed switched between 1MB, 10 MB,... up untill 54 MB. Now, it just stops at 1MB and don't changes... anybody any ideas?

    Well, one thing that has changed with SP2 for the better, is that you can actually repair your connection now. If you right clicked your connection pre SP2 and clicked repair, it just stalled... now it works.

    Office 2003 development

    Most people don't consider Office as a full blown development platform on which you can build some nice solutions for your customers. With Office 2003 and Visual Studio Tools for Office you can however create some nice applications in which you can use all the features of Office 2003 such as charting (Excel), document handling (Word) and e-mail and calendaring (Outlook). In the past if you had to program in Office, you had to use VBA. With Visual Studio Tools for Office, you can now write .Net applications for Office. Is that nice or what? Unfortunately Visual Tools for Office is only available for download for MSDN subscribers.

  • OfficeZealot: Huge amount of resources for Office 2003 developers

  • Building a professional stock allocation system using Visual Studio Tools for Office

  • Smart Tag Developer Tools

  • Bring the Power of Visual Studio .NET to Business Solutions Built with Microsoft Office

  • Secure and Deploy Business Solutions with Microsoft Visual Studio Tools for Office

  • Introduction to the Office 2003 Research Services Class Library

  • Essential tools for web designers (... or wannabee web designers like me)

    The last days I had to create a prototype CMS 2002 site for a customer, unfortunately I had to do it alone this time. Normally we use professional webdesigners for creating the layout of the pages, since user interface is one of the essential parts in developing a web application (Check out Useable Information Technology). Luckily I got some nice tips about which programs you can use to create great websites. If you want to create stylesheets don't use Visual Studio .Net - it works but not very nicely - definitely use TopStyle. There is a free version available for download but the professional version is way better. Another nice tool is ColorImpact, which enables to compose nice color schemes for your pages. And of course last but not least Adobe Photoshop (... but that you all know ...)

    Wednesday, November 24, 2004


    I bought myself a new scanner today, so I scanned some sketches from art class and uploaded them on my other blog.

    Monday, November 22, 2004

    InfoPathHelper : add offline support for InfoPath

    Some weeks ago, I blogged about a TechNet evening in which Jelle Druyts gave a demo about how to enable InfoPath for truly offline scenarios (Musings about InfoPath). Well he has just released all the code how to implement such a scenario, take a look at InfoPathHelper: add offline support to InfoPath!

    Sunday, November 21, 2004

    Migrating to SharePoint 2003

    Both Windows SharePoint Services and SharePoint Portal are about a year old by now and customers seem to be quite eager to migrate their SharePoint 2001 servers (Also see this article - SharePoint is the number one product according to Ballmer. Since the next version of SharePoint (beta 1 expected in summer 2005) will probably not support backwards compatible document libraries this seems a wise move as well. Another reason is a migration to Windows 2003 since SharePoint 2001 is not supported on a Windows 2003 Server...

    Microsoft KB820328: "SharePoint Portal Server 2001 will not function on Windows Server 2003 because of incompatibilities between the versions of the Microsoft Web Storage System and Microsoft Internet Information Services (IIS) 6. There are currently no plans to release an update to the Web Storage System in SharePoint Portal Server 2001 to make it compatible with Windows Server 2003."

    There are some tools available to ease a migration, such as SPIN and SPOUT. SPOUT is a document library Export Tool for SharePoint. SPOUT will export the workspace document library content as an XML manifest file and the individual content files. The XML manifest files is used to describe the different objects and properties of the documents. After running, SPOUT will generate 3 files:
  • Manifest.xml : all metadata

  • Migrate_spout.log : a log file

  • An error file with the extension .err - this file should be empty after running SPOUT

  • I did some testing with SPOUT a while ago, just to get an idea how fast it would be. I ran it in a test environment with Windows 2000SP4, 512 MB RAM,SharePoint Portal Server 2001 SP2a, .Net Framework 1.1. On average I got export times between 1 and 3 secs per file with file size as the most important factor. Even when this would run twice as fast in a production environment time is still a limiting factor, exporting about 100000 files would take about 27 hours. You should also take into account the size of manifest.xml file, since XML parsing can become quite troublesome when your XML files contain a lot of data. (Tip : use Xpath queries since XMLDom manipulations can be very memory intensive, qua memory usage can run as high as 10 times the original filesize.)

     Number of filesSize manifest.xmlMBs exportedDuration
    Test 16996K42.941 sec
    Test 2154216K48.655 sec
    Test 3280396K56.81min11sec
    Test 4709982K1673min6sec

    If you want to try out some alternative tools for export and import you should definitely check out this GotDotNext workspace. Before starting a migration, take a look at the following links:
  • Technet article - migrating from SharePoint 2001

  • Migrating documents into SharePoint - tools and tips to improve performance

  • Overview SharePoint migration

  • Hotfix SPIN

  • Import problem SPIN for subsites - no hotfix available

  • Friday, November 19, 2004

    Reflector for .Net + addons

    A tool definitely worthwhile for .Net developers is Reflector for .NET . Reflector is a class browser for .NET components. It supports assembly and namespace views, type and member search, XML documentation, call and callee graphs, IL, Visual Basic, Delphi and C# decompiler, dependency trees, base type and derived type hierarchies and resource viewers. There are also some nice addons for this tool:
  • Reflector.FileDisassembler : You can use it to dump the decompiler output to files of any Reflector supported language (C#, VB.NET, Delphi). This is extremely useful if you are searching for a specific line of code as you can use VS.NET's "Find in Files" or want to convert a class from one language to another.

  • Reflector Diff - original release and Reflector Diff 0.6 Beta

  • SharePoint : Ghosted vs unghosted pages

    The concept of ghosted pages is something that you have to understand when customizing SharePoint. All items in SharePoint are by default stored in the database, but some aspx pages are not stored in the SharePoint database but on the file system, e.g. default.aspx for each site and also the search.aspx page for SharePoint Portal Server. These pages are called ghosted pages. These pages are pulled from the cache at runtime and therefore it will increase the scalability from the system since all uncustomized pages are reused accross all of the sites and there is no unnecessary data storage or retrieval.

    But these ghosted can become unghosted when they are modified with e.g. FrontPage. However FrontPage is not the only culprit, when you modify one of these pages through webfolders with notepad, then the page will also become unghosted. These unghosted pages are stored in the database. Normally if a page which is used in a site definition is changed, this change will apply to all sites created with this site definition,but if you're page is unghosted this will not happen. There is also a slight performance impact of about 10% between ghosted and unghosted pages because the files are being read from the database instead of the cached filesystem. You can check if a page has become unghosted with ghosthunter utility or by checking the vti_hasdefaultcontent field obtained through the Properties property of the SPFile object.

    There have been a lot of postings about ghosted and unghosted page and the role of Frontpage in this issue, take a look at them, they will provide more detail about for example the difference in parsing, so check them out

  • What you don't know about FrontPage can hurt you?

  • Dustin Millers response to the previous article

  • Ghosted and unghosted pages Part 1 on BlueDogLimited

  • Don't kill the messenger ...
  • Web part page + DVWP != always unghosted : nice tip for using the dataview webpart and not unghosting your page
  • Wednesday, November 17, 2004

    SharePoint development part I - Webparts

    When we think about developing on the SharePoint platform, the first thing that comes to mind is webpart development but there are actually more development tasks with SharePoint:

    1. Web part development : one of the SharePoint development topics which gets the most attention

    2. Developing with SharePoint lists : involves creating xml schema definitions, writing SharePoint Object Model code, adding your own UI

    3. Writing custom workflow: SharePoint does not provide workflow out of the box but allows you to add your own workflow through the use of eventhandlers

    4. Customizing SharePoint UI : starts from simple things like changing stylesheets, images and logos to create completely new site templates

    5. Extending and customizing SharePoint search

    In the coming weeks I will write more postings about SharePoint but in this first posting I'm going to focus on webpart development. You should approach webpart development as any other programming task.

    1. Make sure you understand the basics. A good article to start with is A developers introduction to webparts on MSDN or The definitieve hello world webpart from John Durant

    2. Think about the design, what you want to accomplish. Since webparts are basically enhanced ASP.Net server controls which live in SharePoint context, the number of options are immense. But you also have to think about the enhancements which are provided by the webpart framework. So if you want to just display data maybe think about using the dataviewwebpart for the moment and don't immediately start with a datagrid. Know the potential of connectable webparts. Definitely check out the 3 articles from Patrick Tisseghem:

    3. Developing and debugging For debugging definitely check out this posting
      Debugging Web Parts - a full explanation of the requirements Something which is also easily forgotten is that you can also force a debug from within your code with the following statement System.Diagnostics.Debugger.Break()

    4. Deploying and testing: Deploying webparts isn't that simple, but there are some nice tools out there to help you with the deployment such as InstallAssemblies. I recommend however doing all the steps manually a couple of times, this will help your understand how SharePoint works. One of the nicest tools to aid in deployment is wppackager. WPPackager will create MSIs to install the webparts. For testing your webparts you should take a look at
      Testing webparts checklist on MSDN

    More links
  • Tips for building webparts from Daniel McPherson
  • Webcast - The power of the dataviewwebpart

  • SPSFAQ customization section
  • More SharePoint customization tips :here and here
  • Server.Transfer wont work in a WebPart

  • Server configurations which may lead to web part failures
  • Tuesday, November 16, 2004

    My boss is blogging and also....

    Danny has a blog .... (Only in Dutch) and also one of the guys who is doing his work placement at Dolmen, Jurgen

    Monday, November 15, 2004

    Enterprise Library and Application blocks

    I have been using the .Net application blocks for quite a while now and it is great to see that they will have a successor in the future, check out the blog of Scott Densmore,Enterprise Library 'The Day After'.For those of you who don't know the application blocks, take a look at them. Application blocks are basically parts of code which can be freely downloaded from MSDN, they contain samples and source code so you can easily extend them. They are written with best practices in mind and are nicely documented.

    Overview application blocks
  • Exception Management application block - I have used in about every project I have done in the last couple of years. This block allows publishing of errors to the eventlog, xml files, databases without you having to write all the plumbing code. It is not even so hard to write your own exception publishers

  • Data Access application block: I use it less since I prefer the XS2 SQLdataaccessor from Sunblad

  • Aggregation application block

  • Caching application block

  • Updater application block

  • User interface process application block : looks very nice, definitely going to take a look at it when I find the time

  • Sunday, November 14, 2004

    Heathers resume blog idea

    Heather Leigh posted this . Link to her blogposting instead of sending a resume. Pretty innovative ...

    MSN Search beta

    Lots of people have already blogged about it, and I think it looks nice indeed, the new MSN Search arrived on the 11th of november. For Belgium go tohttp://beta.search.msn.be . I especially liked the "link:http//jopx.blogspot.com" search, it returned 15 results, Google only one

    If you want to know what other people say about it, take a look at
  • MSN Search - Tisseghem

  • MSN Search Beta First Take

  • Google index double

  • New MSN Search Service

  • MSN Search Beta is now live

  • MSN Search

  • Msn Search Team are blogging

  • Microsoft Crawling Google Results For New Search Engine?
  • Saturday, November 13, 2004

    Office Information Bridge Framework (IBF)

    Office Information Bridge Framework (IBF) is a new solution that provides a standardised way for developers to integrate data from enterprise applications (CRM,HR, ERP,...) into Office. IBF is an example of a service oriented architecture in which your LOB applications are connected to Office through a webservices layer. At the clientside IBF leverages the smart tag and smart document functionality of Office 2003 Professional.

  • Download IBF

  • MSDN technical whitepaper about IBF

  • Technical overview IBF

  • Video about IBF on OfficeZealot

  • How to Build Solutions with the Information Bridge Framework
  • Office for Small Business Management

    Office for Small Business Management has been announced. This version
    will includes the familiar Microsoft Office 2003 programs as well as an updated version of Microsoft Office Outlook 2003 with Business Contact Manager and Microsoft Office Small Business Accounting—a new, comprehensive financial management package. So also take a look at http://msdn.microsoft.com/isv/technology/sba/ I guess that when Microsoft will get the localization issue right, it will even become popular worldwide. But don't put your bets on it yet , II overheard saying that Microsoft seems to think that localization is the difference between English UK and English US, ... :-)

    Friday, November 12, 2004

    MSCMS - Disabling delete for authors

    The last couple of months I have been doing a lot of Microsoft Content Management Server (MSCMS) development and I think it definitely allows you to do some cool stuff. For those of you who don't know, MSCMS allows users without any html knowledge or special tools to publish content to a corporate website while maintaining a common look and feel and supporting an approval process for all of your published content.

    The product has however some shortcomings and last week the functional analyst of our project stumbled on one of them. For every posting you can define an approval process with authors, editors and moderators, so after an author creates a posting, the editor first approves the layout and then the moderator approves the content (This is a very quick overview). So for about every change, you need to go through this approval process EXCEPT for deletion of postings

    The obvious thing todo to disable the delete for authors was to add an ASP.Net panel control around the delete section in the defaultconsole.ascx and put it to visible false when a user had no editor or approve rights. Well this doesn't seem to be very simple:

  • Microsoft.ContentManagement.Publishing.CmsContext.UserCanApprove : you can't use this one, since it is a site-wide check, if the user has somewhere in your site editor or moderator rights, this property will return true.

  • Microsoft.ContentManagement.Publishing.CmsContext.Posting.CanApprove : seemed to be promising, it already checks the rights for this specific rights, but unfortunately it also takes into account the postingstate of the mode, so when your posting is published it will return false even when the current user has sufficient rights to approve

  • Microsoft.ContentManagement.Publishing.CmsContext.PostingApprovers() : returns a Microsoft.ContentManagement.Publishing.UserCollection with all the approvers, but it also takes the posting state into account.

  • So basically I'm stuck, anybody any ideas....

    Gotdotnnet CMS code samples and more

  • MCMS Plumtree Integration Pack v.2 CODE
  • Building MCMS 2002 sites without Visual Studio.NET
  • XHTML compliant MCMS placeholder
  • Switch placeholders based on custom property
  • RSS aggregator placeholder control and a little more explanation about it on Stefans blog.

  • Multi-site Development with Microsoft Content Management Server 2002 on Windows XP Professional

  • Blog posting about CMS revisions
  • Thursday, November 11, 2004

    SOA - Part 2

    I had a little spare time so I decided to run through all the blog postings which I had marked for review or follow up in RSS Bandit. I found these interesting postings about SOA
  • David Chappell on why SOA will help business-oriented software reuse

  • What is SOA? and his follow up posting SO != WS

  • It seems that Sam Gentile did a talk about SOA for Boston.NET. Download the slides over here.
  • Tuesday, November 09, 2004

    What I'm reading.

    The books I'm currently reading:
  • SharePoint Products and Technologies Resource Kit (ISBN 073561881): an invaluable resource if you are interesting in doing SharePoint development

  • XML Web Services and Server Components Development with VB.Net - Study Guide exam 70-310 (ISBN 007222653) : I know, I should probably read the C# version, but hey I found this one at a book sale

  • Developing windows-based applications - Self paced training kit (ISBN 0735615330) : The last couple of years I have mainly done webdevelopment so it is probably time to get up to speed in winform development as well

  • Building Portals, Intranets and Corporate Web Sites using Microsoft Servers: Nice overview of the different server products, not very technical
  • Sunday, November 07, 2004

    Service Oriented Architecture (SOA) and other stuff....

    One of the hottest topics lately seems to be Service Oriented Architecture and how to implement it. But it is also a major source of confusion and I think that for most developers, SOA is still a big mystery. The main problem seems to be that we have to translate these high level concepts to low-level code, because in the end we just like to write code. However I still think that SOA is an important concept that every developers needs a basic understanding about, so the next couple of weeks I'm going to try to write some posting about SOA, providing some summaries of presentations that I saw and links to interesting sites and blogs.

    Lets start with the basics, what is SOA? At PDC 2003 Pat Helland gave a presentation about SOA. The key message was the following:

  • A service-oriented architecture is one where an application is cut into pieces called services

  • These services are invoked by messages, these messages are containers for information which is transmitted from one service to another. Since services only communicate with messages we create explicit boundaries for all our application building blocks.

  • Services allow for loosely coupled relationships, the only thing that needs to be defined is the contract for the message. Integration is based on message formats and exchange patterns, not on classes and objects.

  • Services are policy based and autonomous

  • Definitely check out Pats blog if you want to read more interesting stuff...

    A couple of months later I saw a presentation from Clemens Vasters, he mainly talked about the same concepts but things got a little clearer. There are only 2 types of services, message producers and message consumers. The messages flow through "pipelines", a pipeline is a sequence of services and each service transforms the message. He also gave some concrete tips :

  • The message should be XML based and not binary

  • Use ASP.Net webservices and extend these through WSE to add routing, security,...

  • Do things you have already been doing : isolate out business and data tiers, use serviced components, use stored procedures for data...

  • Think assynchronous

  • Now if you want to know more about it, check out:
  • Architect exchange

  • MSDN .Net architecture center

  • Rich Turner about "When to use ASMX, ES or Remoting"some nice guidelines about how to actually implement all this stuff.

  • Selling Service Orientation and Indigo

  • MSDN TV: Service Orientation and Today's Technologies

  • Dolmen is hiring

    The Belgian company I work for, Dolmen, is looking for new people, check out our job event and the profiles that we are looking for. By the way, also take a look at the blogs of two other Dolmen employees, Ken and Bart

    Is it going too fast?

    Everything just goes a little too fast... people who didn't even start developing soo long ago, in the mid of the nineties like me, have seen like 3 different development environments - VS 6, VS.Net 2002/2003 and VS.Net 2005 -, 3 different server OS - NT4, Windows2000 & Windows 2003 -, 4 versions of Office - 97,2000,XP and 2003 -, ... Well I guess you get the point... What do you think about it?

    Blogger went down

    Yesterday Blogger suddenly crashed and gave the great error listed underneath... I just love a nice stacktrace.... ;-)

    java.lang.RuntimeException: Unable to load blog object for blogID: 7753577
    at com.pyra.blogger.UserBlog.getBlog(UserBlog.java:176)
    at org.apache.jsp.blog_pyra._jspService(blog_pyra.java:589)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:210)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:684)
    at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:432)
    at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:356)
    at com.pyra.blogger.frontend.PyraJspDispatchPipe.invoke(PyraJspDispatchPipe.java:83)
    at com.google.servlet.pipe.ServletPipe.invokeNextPipe(ServletPipe.java:118)
    at com.google.servlet.pipe.StatsPipe.invoke(StatsPipe.java:64)
    at com.google.servlet.pipe.ServletPipe.invokeNextPipe(ServletPipe.java:118)
    at com.google.servlet.pipe.PendingRequestPipe.invoke(PendingRequestPipe.java:31)
    at com.google.servlet.pipe.ServletPipe.invokeNextPipe(ServletPipe.java:118)
    at com.google.servlet.pipe.HttpRedirectPipe.invoke(HttpRedirectPipe.java:43)
    at com.google.servlet.pipe.ServletPipe.invokeNextPipe(ServletPipe.java:118)
    at com.pyra.blogger.frontend.IdentityCookiePipe.invoke(IdentityCookiePipe.java:137)
    at com.google.servlet.pipe.ServletPipe.invokeNextPipe(ServletPipe.java:118)
    at com.google.servlet.exceptionhandling.ExceptionHandlerPipe.invoke(ExceptionHandlerPipe.java:99)
    at com.google.servlet.pipe.ServletPipe.invokeNextPipe(ServletPipe.java:118)
    at com.google.servlet.pipe.LocaleContextPipe.invoke(LocaleContextPipe.java:134)
    at com.google.servlet.BaseServlet.doGet(BaseServlet.java:89)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
    at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:494)
    at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
    at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)

    .... and so on.

    Friday, November 05, 2004

    How to create a webpart in ASP 2.0

    A couple of days I wrote a blogentry referring to a thread about the differences between webparts in SharePoint and ASP.Net 2.0. Well for those of you who want to dive right in check out this article about How to create a WebPart in ASP.Net 2.0

    Thursday, November 04, 2004

    More Office 12 details ...

    Microsoft Watch is a great site, and it regularly posts some hot stuff such as this one Office 12 details begin to trickle out. The first beta will be available in august 2005 and a final release is planned for july 2007. As part of the Office Server lineup we can also expect a new version of both CMS and SharePoint as well as some new server products - one for Excel and one for InfoPath. These are truly exciting times we are living in ;-)....

    Wednesday, November 03, 2004

    Citrix Metaframe 3.0

    The last couple of days I worked at a customer who was using Citrix Metaframe Presentation Server 3.0, it was the first time that I saw this product and I have to admit that I'm impressed. It enables user to start their everyday applications from within a browser environment. It was great to see that the web interface used ASP.Net and the nice thing is that you can completely customize it. If you run into problems, definitely check out the Citrix support site .

    After developing the UI we deployed it to a production server on which a previous version of Metraframe was running as well so we didn't do an install but copied the directory with the files and created the necessary virtual directories. Everything worked except the ICA files were not correctly handled. It seemed that we still associate the ICA extension with the aspnet dll in IIS.

    After installing ASP.Net, we however noticed that some of the users which were still using the Citrix 1.5, had problems logging into the web applications. They got a very strange error "error while encoding a gif file". It seems that while installing ASP.Net some userrights were removed. If you encounter this error, just give the anonymous user access to the nfuseicons directory

    Integrating SharePoint and Content Management Server

    One of the most posed questions lately seems to be how do we integrate SharePoint and Content Management Server. People often start working together on documents in SharePoint and later want to publish this document in an easy way to CMS (That authors can't work together on a CMS posting - because of the locking principle - is definitely a missing feature in CMS). With the release of SharePoint Connector for Content Management Server (Previously codenamed Spark) in february 2004- some things were solved.

    In short the connector enables the following :

    • Content from CMS can be displayed in SharePoint webparts

    • Documents in SPS can be exposed to MCMS managed sites

    • Integrating SPS search with the content in CMS

    Miscellaneous links

    Monday, November 01, 2004

    SharePoint in only 28 steps ;-)

    This SharePoint Developer in 28 steps from Gregory is definitely a great posting,... I'm wondering how much time you would need to master all this stuff...

    SharePoint multilinguage features

    When you are living in a country which has 3 official languages like me - yes we have Dutch, French and German in Belgium - multilanguage definitely becomes an issue when doing a portal implementation. Unfortunately multilanguage is not a very strong feature in SharePoint. Windows SharePoint Services allows you to choose a different language at the moment of site creation when you install language packs, once the site is created it is not possible to switch the language anymore. For SharePoint Portal Server it is even worse, it only support the language of the SharePoint installation, so if you want to have a French Portal you have to install the French version of SharePoint Portal Server. There are however some articles which can guide you, but better multilanguage functionality is definitely something I want to see in the next version of SharePoint. One of the things I noticed which were very hard to find where the way of working of thesaurus files in SharePoint.The best documentation is found in the SPS 2001 Resource Kit and still seems to be correct. Another interesting document is the one on Technet which describes the international features of SharePoint 2003.

    I tried out the feature of expansion sets in SharePoint 2003 and how it works with files which have different languages and different formats. SharePoint uses thesaurus files to enhance its search functionality. The thesaurus allows you not only to search for the search term, but also for synonyms and other matching words, like words with the same stem. You can expand the thesaurus by adding tags to the thesaurus file(s). For example, when a user searches for ‘apple*’, you want to automatically search for ‘pomme*’ and ‘appel*’ as well so that documents containing the French and Dutch translations of the word ‘sugar’ will be added to the search results. This is an example of stemming. An expansion set for the word "author" is for example that it searches for documents containing "writer"

    There are different thesaurus files for every language, these are xml files - e.g. tsneu.xml is the neutral thesaurus file,tseng.xml is for English, tsnld.xml is for Dutch. The easiest way to test it, is to modify the xml files at local_drive\Program Files\SharePoint Portal Server\Data\Applications\Application UID\Config and then restart the service Microsoft SharePointPS Search.
    I added the following lines to the xml files
    <sub weight="0.5">author</sub>
    <sub weight="0.5">writer</sub>
    Well it seems that depending of the file type a different thesaurus file will be used, this happens because of the way how iFilters are implemented.
    Then I tried the search for different file types :

  • A plain text file : Uses tsneu.xml and none of the language specific ones

  • A word document : Works with tsenu.xml (english) and also with tsneu.xml (neutral). So for office documents the language is actually recognized

  • PDF files don’t seem to use the thesaurus files at all. I tried it with iFilter 5.0 and it didn’t use any of the thesaurus files. It seems that iFilter 6.0 has been released last week so I'll try that one later

  • Miscellaneous SharePoint links:

    Thursday, October 28, 2004

    Musings about InfoPath

    I presented some workshops around SharePoint technologies the last couple of months and one of the things that I always include is a quick overview and some demos of InfoPath . It seems that this is still one of Microsofts best kept secrets - both developers and IT decision makers seem to have little or no knowledge about this tool. For those of you who haven't heard about it, InfoPath is a tool for designing electronic forms and the coolest thing is that underlying it uses nothing but XML.

    I demo it in SharePoint workshops because of the excellent way it integrates with SharePoint through form libraries but you can also use it without SharePoint. Mostly I start off with the Microsoft Office InfoPath 2003 HL7 CDA Demo. It is easy and understandable, just as a demo should be.
    One of the major downsides of this product is however that every user needs a complete installed version. I think it would be much more popular if there would be a developer edition (to actually create the forms) and a freely distributable runtime for users who only use InfoPath to fill out forms. The InfoPath Viewer application that Mark Bower created is a good start but it is not enough especially because InfoPath is not standard available in all Office 2003 versions, only in the Professional Enterprise version.

    Yesterday I saw another Technet presentation - this time about InfoPath and SharePoint, the presentation was done by Jelle Druyts and Yves Kerwyn. Microsoft positions InfoPath as "The smart client for webservices". Well it seems that it is still lacking some features to be a really smart client. The first missing feature is support for different devices - there's for example no InfoPath for Pocket PC. The other feature is missing Offline support. Microsoft says that InfoPath supports offline scenarios through the use of Outlook outbox but this is not really an ideal scenario. Jelle Druyts presented a solution for supporting offline usage by showing us some code. I can't wait until we can download this code, must be very interesting.

    Interesting links:

    Tuesday, October 26, 2004

    Microsofts development process

    I really liked the Scott Guthrie's post about the ASP.Net development process, mostly because writing software still seems like a chaotic endeavour to me. I have been writing software for about 5 years now and I have read a lot about software engineering methodologies such as Extreme Programming, RUP (Rational Unified Process) and more general project management methodologies such as Prince2. But in the end it is still the code that matters and articles like this definitely illustrate this fact. On Benjaminm's blog there is also a nice followup article about it.

    Monday, October 25, 2004

    Customizing SharePoint

    I saw a MSDN evening session in june 2004 on SharePoint customization from Patrick Tisseghem but only found the time to
    start playing around with Frontpage and SharePoint today,... well better late than never. It seems that there are a lot of things you have to think about when doing SharePoint customization, luckily I found a lot of information on the Internet.

    In the meantime I have messed up my SharePoint VPC image so much that I think I need a rollback,... well at least it has been fun....

    Sunday, October 24, 2004

    SharePoint integration scenarios with SAP

    There exist a number of different integration scenarios for SAP, the scenario which you should choose depends on the level of integration, we can divide these integration options in 4 broad categories:

    • Web capture : with the page viewer webpart and the webcapture webpart (not standard installed but can be downloaded as part of the Office 2003 webparts), SharePoint can display information of LOB (Line of Business) applications such as SAP, if these applications have a webinterface. The most important limitation of this scenario is the limited level of interactivity.

    • Point to Point connection : through the SAP .Net connector - available for SAP systems starting from release 4.0B so for all SAP R/3 systems as well as the SAP Web Application Server - it is the point to create a direct connection to SAP. This is however not always feasible nor desirable from a security standpoint.

    • Data cache : by creating a datawarehouse which centralises all information for different LOB systems when can create a more secure and scalable solution than the direct connection. However all data has to be replicated and this scenario is perhaps best suitable for readonly access.

    • Application/Integration server : through the Biztalk SAP adapter it is possible to exchange data with SAP.

    Mid august Microsoft released through their “shared source” program a couple of new “enabling technologies” which can help in realising some of the scenarios described. These are the WSRP Web Part Toolkit for SharePoint (WSRP =Web Services for Remote Portlets) and the SAP iViews Web Part Toolkit. These toolkits enable sytem integrators to create a customer specific solution based on the toolkit framework.The iView webpart makes it possible to display information from SAP directly into SharePoint The WSRP toolkit is directed towards providing SharePoint functionality through an enhanced webservices layer to 3d party LOB applications.

    Lately Microsoft seems to be putting a lot more effort into integration with the SAP platform, a lot of documentation you can find on their joint website, http://microsoft-sap.com

    Thursday, October 21, 2004

    Uninstalled Google Desktop

    It seems that I'm not the only one who uninstalled Google Desktop. I uninstalled because it caused some problems with Outlook and SharePoint Portal Server. In SPS 2003 you can manage users of a website by clicking "Import fom address book". If you have Google Desktop installed it locks your Outlook 2003 address book so the screen totally freezes after selecting the user you wanted to add to your site.

    Monday, October 18, 2004

    How google challenges the desktop

    The first comments about how big a challenge Google Desktop will be for Microsoft are already appearing.By creating a suite of strongly web focused products - Blogger, Picasa, GMail and now Google Desktop, Google is indeed shifting the focus away of the OS - still a Microsoft stronghold - to the web. ....

    A clear explanation about it is found on Microsoft Monitor, read the full article at Google Desktop Search and Microsoft. Some other interesting ideas are described in a blog posting of Patrick, Google Desktop - What next?

    Sunday, October 17, 2004

    No more free .Net hosting

    It seems that my free .Net hosting account at webmatrixhosting has disappeared. You can always create a new account but it will only remain active for 30 days. This was my last don't free ASP.Net hosting account. Too bad, I will probably have to pay for it, currently I'm considering Dotnetcentral, Webhost4life and ActiveSpace. Anyone else some other ideas, feel free to comment...
    Whow, way cool C# will also have Edit and Continue .... Check it out Announcing: C# Edit and Continue support for Visual Studio 2005 . Well it seems that not everybody is very happy about it
    C# Gets Edit-And-Continue? BOOOO!!!!!

    Saturday, October 16, 2004

    Paintings added to JOPX paints

    I uploaded some more paintings of mine to JOPX paints this week,... Go check it out

    Google desktop

    Today I installed Google Desktop. Google desktop provides the same search for data on your PC as it does for the web. The searches are really fast. It also indexes your Outlook PST files so I think I'm going to uninstall Lookout.

    Some other blogger who seem to have discovered this awesome tool,Jay Nathan, Lamont, Bryant Likes, Chris Meirick, Computer Zen, LongHornBlogs and Cyrus. All raving reviews...

    Friday, October 15, 2004

    Howto disable SPS OnLine gallery

    I'm quite frequently doing demos of SPS2003 with virtual PC on a portable which is not connected to the network. Now if I tried to add a webpart with "Modify Shared Page\Add webpart\Browse..." it always took for ages. It seems that if you disable the Online Gallery, things will speed up significantly. To do this, go to "SharePoint Central Administration" > Configure virtual server settings > Manage security settings for Web Part Pages... In the Online Web Part Gallery section, click disabled to prevent access to the gallery.

    Thursday, October 14, 2004

    Office on the move ...

    Apparently Microsoft is planning some changes in their positioning of Office, a couple of days ago this article about InfoPath Server was published. Yesterday this article with more details about the direction Microsoft is going was published.

    Tuesday, October 12, 2004

    Sales at amazon UK

    Amazon UK is giving 50% discounts on some cool computer books, check it out. Amongst it at are some books of Chris Sells

    Friday, October 08, 2004

    I paint ...

    Because there is more to live than programming... I created another blog on which I'm publishing some paintings of the last couple of years. Check it out http://jopxpaints.blogspot.com

    CMS ODBC error - the solution

    A week or 2 ago, we ran into a strange error when accessing the homepage of our CMS site, especially when we refreshed the page a couple of times in a row.

    Exception details:
    " System.Runtime.InteropServices.COMException: Server ODBC error. Contact the site administrator."
    Stack Trace :
    [COMException (0x80041b67): Server ODBC error. Contact the site administrator.]
    Microsoft.ContentManagement.Interop.Publishing.IRcwPosting.__BeginWrite(Boolean ignoreMarkedForActions) +0
    Microsoft.ContentManagement.Publishing.Posting.BeginWrite(Boolean ignoreMarkForActions) +47

    Today I noticed the following blog posting about the mystery ODBC error on the blog of Mei Ying. The solution seems quite trivial but its something we tend to forget quite easily : if you use CMSApplicationContext in your code, call the dispose method when you have finished using it.

    The Aussie split his blog

    It seems Paul split his blog, one for the techie geek stuff http://dachiefnet.blogspot.com/ and the other one on a more personal note http://dachief.blogspot.com/

    Tuesday, September 28, 2004

    Dachief is blogging

    My Australian colleague seems to be blogging as well, ... well he has a blog and that's about it...

    Mondsoft .Net Search Kit

    Check this out ...

    Mondosoft today announced the availability of a new .NET Search Kit that facilitates deployment of enterprise and site search in .NET environments. The Search Kit consists of a .NET search control and three easy-to-use search templates developed to complement MondoSearch’s .NET capabilities, and offer significant time and productivity benefits for our customers and partners.

    All three search templates included in the .NET Search Kit categorize search results, display the results in differing contexts and represent a style and interface that is easily tailored to fit any functionality and design specification. One template is suited for multi-lingual sites, another is fashioned after popular global search result pages, and a third provides a clear, legible layout based on a three column format. Using an html or text editor, the Mondosoft .NET Search Kit allows easy deployment and tight integration of MondoSearch in .NET environments.

    The .NET Search Kit is currently available for download at no charge to partners and customers with a valid support agreement. It installs on top of existing MondoSearch 5.1b installations only, and is ready to deploy in a matter of minutes. For more information and illustrations, and to download the Mondosoft .NET Search Kit, please go to www.mondosoft.com/SearchKit.

    You can also sign up for a free webcast for a demo of the .NET Search Kit. Please sign up at www.mondosoft.com/webcasts.asp

    Thursday, September 23, 2004


    Mondosoft uses full text indexes to store the content it indexed from Content Management Server. If you forget to publish these indexes you will get the very unfriendly error shown above. Remember that you have to publish the index for every language that you setup in MondoSearch.

    CMS search with Mondosoft

    We started a CMS project a couple of weeks ago which needed some search functionality, so we decided to go for Mondosearch from Mondosoft. I really like some things about this this product:

    • All the functionality is completely programmable in .Net
    • It works very fast

    • The administration console is easy to use and completely webbased
    • Support from mondosoft is excellent - I got a response by email for a problem in less than 15 minutes... amazing

    There are however some downsides as well:

    • The price tag is pretty steep

    • When you make some configuration errors - your code will crash with not so helpfull error messages

    • You have to change a lot of security settings to make the product work

    • The information in the knowledgebase on their site needs some updating

    In the next couple of postings I will explain some issues we ran into.