Your company and what SharePoint needs it has

March 29, 2008 - 21:56, by Hans Blaauw

Most companies that you will talk to will say "we are so special we cannot use out of the box stuff or solutions that are used by other companies". Well, in reality that is probably not true because local legislations force companies to do things in a certain way. A good sample is a financial department that needs to send out salary slips. I think that in many situations common solutions (site templates, definitions, webparts) can be used in many other organizations. Below I give you a list of possible common needs among several companies.

HR Department

This department probably wants to publish information on new workforce legislations. In most cases they also want to have a way to show available jobs in the company or jobs from outside the company (don't be afraid to offer it).

The very basic solutions they probably need is a RSS reader webpart and a document library presented in a publishing or team site.

Financial department

They always struggle with all these terrible amounts of paper. Salary slips, incoming invoices, outgoing invoices, supplier details etc. The bigger companies probably have systems to manage all this but I bet they don't have electronic salary slips yet that can be published in every employees MySite. Of course this would need a distribution tool but it could be a great solution.

IT department

In most cases they need stuff like monitoring, issue lists, changes, RMA's. Some of this can be done by SharePoint and even external data can be viewed in SharePoint by using the BDC or even RSS/XML.

Above are just a few samples. We at zevenseas also need to work on this. In the end we want to have a database of small solutions for all kinds of departments that can be used by many organizations. I personally hate re-inventing the wheel, it is such a waste of time and money!

0 Comments


Hosted webparts/widgets for SharePoint to do translations

March 26, 2008 - 19:24, by Hans Blaauw

With this post I release my first webpart that is a combination of a webpart that can be downloaded and some hosted code/content that is on one of our subdomains. The hosted code/content is stored remotely so we can do updates easier for all users.

This webpart connects to some code and makes use of the Google Translation API. See a screenshot below.

image

Everyone knows I'm not a real programmer so this also demonstrates how easy it is to add cool stuff to SharePoint. On programmableweb.com is tons of good stuff to use for building cool webparts. Get started!

Because we are in a very early stage of this zevenseas cannot give any uptime guarantee but I think it will be very stable. We will investigate to make this a very serious official offering so that you can download cool webparts to add to your sites.

Download the webpart

Why not on codeplex?

Simple, it is remotely hosted code and you only download the webpart.

COMMENT

Your portal or WSS 3.0 sites need a Internet connection to get it to work.

0 Comments


SharePoint and webservices

March 23, 2008 - 11:36, by Hans Blaauw

Although you can program against webservices with SharePoint Designer I think Microsoft ignored external webservices in their OOTB offering, either a column that can do webservices or a workflow activity.

Why do we need it?

There are tons of good webservices/API's out there (REST, JSON, XML, http://www.programmableweb.com) and they all offer great data or functionality. It would be great if we could use these OOTB in our WSS 3.0 or MOSS environment.

Take for example your Contact list in SharePoint. Wouldn't it be great if it was GEO coded enable so that if you add a new entry it would lookup the address and store the lon and lat of the address in the contact list? I think that would be fantastic. This could either be done by a custom field (probably not easy) or a workflow activity (more easier).

A simple minimum webservices workflow activity

I think it would be enough for now if we would have a small workflow activity that could call a script and handle the return value to put it in a field. The script could be anything from ASP .NET to PHP. In the script we could do the formatting of the results for now. Of course it would need to have options to determine with fields to pass as parameter etc.

A more powerful workflow activity

This one should be able to do REST calls and some basic handling of the response.

I'm really wondering why not many SharePoint developers took the challenge to use external API's to add functionality. For me it sounds like a great opportunity to build fantastic webparts with the speed of light. The DataView webpart is perfect for talking to all these API's.

Maybe we don't need programmers for this, they are sometimes too much focused on building all stuff themselves (frameworks etc). I think we need Digital Plumbers (thanks Hans van Linschoten for this new job description). These Digital Plumbers connect pipes (API's/webservices) and have a broad knowledge of the different API's out there. They have some programming/scripting skills and they use tools like SharePoint designer to build small but really cool solutions.

0 Comments


Your company as a service provider for user generated content (with SharePoint)

March 22, 2008 - 19:37, by Hans Blaauw

Scary, isn't it?

You have to face the fact, people use online tools like Youtube, Twitter, MySpace etc. and they use it during work too (if allowed). Do you want to change that? Forget it, it is a force of nature and a evolutionary process that cannot be stopped (except by pulling the plug).

As a company I think you should take another approach. Use your resources to offer the same services as above companies do. What? Yes, do it!

What does it bring me to offer these services to my employees

Well, a few things that are very important nowadays:

  • loyalty
  • creativity

Don't forget that your employees are not an asset but real people that go home and come back (hopefully for you). When they go home they use the internet again and they will probably: download some music, upload some video's, do a few blogposts and purchase a few products. All these activities are done by using other software and all outside your reach. There is the opportunity!

Why not offering a few of these services through your corporate portal? Employees are part of a community and they have common interests. Wouldn't it be fantastic if they do all the above things inside your own portal with your brand? I would really love it as a owner.

With SharePoint you have the tool to offer a few of these services like:

  • picture uploading
  • wiki's
  • blogs

With a little custom work you could easily add video and some other services.

What do you need to do?

Depending on your organization size you would need to investigate the following:

  • separate server farm for all the services for employees
  • extra diskspace (so cheap nowadays)
  • good separation of the business stuff and the user stuff
  • clear search scopes
  • different branding that has a more informal look
  • policies

Why are you afraid?

I think that a lot of business owners are afraid that employees blog something that is not appropriate. Well, I think it will not happen because employees know that recruiters check blogs too. So negative posts will not help people to move to another company.

Another reason that I can think of is how to manage it. I think you already manage it. If you have a corporate portal you already need to manage so a few extra services don't matter too much.

 

I'm not saying you should do it all and it obviously all depends on the size of your organization. Local laws on privacy can also be important.

0 Comments


Building a site structure for your company

March 19, 2008 - 19:07, by Hans Blaauw

This seems to come back to me all the time, the question how to build a perfect site structure to use inside a company. And my answer? Indeed, perfect would be perfect!

What I mean is that it all depends on your organization. Things like big or small, projects or departments etc.

Projects or departments

In the projects that I was involved in it always came to these two. Are we a company that uses the project approach or do we have a more static organization with departments that support each other and a product we deliver.

The size is also important. The bigger the site structure the bigger the chance that you need more site-collections. Webapplications is not your concern to decide on, let the IT guys decide that. Be aware that you can lose some out of the box functionality when using different web applications. It is wise to ask your IT department to draw a list of things that don't work between web applications (hey, you are only the end user remember).

I would always go for site-collections, for departments and for projects. For projects below departments I would create a site inside a site-collection. However, I would create it below the department that is the owner of the project. If it is a huge project you could define it as a site-collection too. Lots of choices to make.

Meeting workspaces

And what about meeting workspaces? Well, you can have different kind of meetings too. Some are probably project related and some are not. Always use common sense when deciding this. If meetings are setup for projects try to create a meeting space inside a project site. This way you always use the logical tree that SharePoint uses. For other kind of meetings in case of the project approach you could create separate site-collections. In case of the department approach you could put them below the department.

Security

Now we're talking. Yes, this can be a pain in the bottom. I al depends how you have set it all up (AD). Individual rights are a big problem. Also with search I believe (need to ask Daniel that). In some organizations this is a incredible mess. There is no straight answer.

Folders or tags/META information

Mmm.., now you have me. Microsoft always promotes using tags or META information but, there are limitations in how many documents and documents per folder so that makes it more difficult. One thing is for sure, never have views that return thousands of items (that hurts). Luckily in 2007 the current state of a view is saved (poor old 2003 users) and you don't have to collapse the whole tree again to get to your document.

I would say, forget your whole idea of folders and files and use search instead. I know, easy to say. I myself have this habit of using folders to organize everything. We have been trained and brainwashed for years to use folders. And even worse, before the computers we already used folders stored in a file cabinet. Aarghh...

There will always be a smart guy in your organization saying, "I'm used to search because I use Google so for me it is so normal". Well, he probably forgets that he always clicks 500 times next to get to the right document :-)

Luckily SharePoint search is good and you probably have less documents. Chance of having a direct hit on the stuff you need is much bigger.

So my idea, go for search!

0 Comments


Want to blog about SharePoint using SharePoint?

March 19, 2008 - 13:03, by Hans Blaauw

To celebrate the release of the Community Kit for SharePoint: Enhanced Blog Edition 2.0 (CKS:EBE) zevenseas, in partnership with PixelMill, would like to offer the first 20 people to email us at openzeas@zevenseas.com a free, hosted blog, powered by the CKS:EBE.

The CKS:EBE brings the most critical features required to run a successful internet facing blog, including:

  • Modular Theme Framework ("MTF") that allows for the development of rich themes
  • Support for Akismet comment spam detection
  • Multiple categories/tags can be mapped to each blog entry/post
  • Friendly URL ("FURL") for the blog's posts
  • Friendly URL for the blog's RSS feed (and support for FeedBurner)
  • And more....

This offer came together at the recent SharePoint conference, and was the result of a discussion about the CKS kit and what it means to community building. At zevenseas we have been lucky enough to work with a number of customers on ways to engage with the people who care most about their products and services. We’ve used the CKS to build out a platform that enables them to do this effectively, on SharePoint, with blogging at its core. We hope this offer is the beginning of another small community.

PixelMill, our SharePoint Designer Partners, have worked with us on these projects and wanted to be able to demonstrate just how attractive these blogs can be. To do that they have offered, for free, a selection of their premium design themes built for CKS:EBE. These are just the first of a number of new themes they will be offering to help your blog stand out, so be sure to take a look at their gallery.

Of course, none of this would be possible without the team who put the toolkit together. A big thanks to the CKS Team below, we’re really excited about its future:

Vince Rothwell (MTF)
Nadeem Mitha (Linkbacks)
Ari Bakker (Themes)
Heather Waterman (Themes)
Yvonne Harryman (QA)
Matthew McDermott (Documentation/QA)
Shane Perran (Themes)
Gaetan Bouveret (QA)
Keith Bunge (Various)
Steven Van de Craen (Captcha)
Brent Bolleman (EBE-PM)
Lawrence Liu (CKS-PM)

0 Comments


The "Content Editor Webpart"

March 19, 2008 - 12:52, by Hans Blaauw

Iain Munro has created a site dedicated to the Content Editor Webpart and it is becoming a trusted source for all the things you can do with the CEWP. Although I think there is still much more possible it features some very good samples.

The CEWP can be used by most users to do exciting and cool things. It is for example possible to use widgets from Widgetbox and to embed these on your SharePoint site (probably a admin at a IT company will call me right now to say no no!!)

Although I think we should empower users with these very nice webparts or widgets we also should take into account how manageable they are. Basically these webparts are not easy to maintain because there is no method to do this (or am I wrong?). My question is, do we want to manage these very small non-dll pieces of content (not much coding is involved). I think we don't want to manage it. They can hardly break a server although they can make a page inaccessible. I would leave it up to managers of sites (not the IT department) to decide what to put on a page. If you use the Super User (ShareGuides) approach and you select 2,5% of your employees as first line support (functionality and content), you will have no problem in managing it. Leave it up to the people you trusted as ShareGuides (Super User).

0 Comments


From Wordpress to the SharePoint Enhanced Blogging edition

March 18, 2008 - 15:52, by Hans Blaauw

Yeah yeah, I must confess! I'm a Wordpress fan and I think they have written fantastic software. BUT, the recent work Robin (design zevenseas) and Daniel (theme, search) have done has made me a EBE fan too. Still, there are lots of things that need to be done because from an end user point of view it isn't the easiest and most powerful platform yet. Adding your own widgets or even webparts isn't possible for the most OOTB theme's and that is important for end users. And now programmers will say "ha, I can add them". I know but that is not the point. Hopefully most EBE theme's will get a zone to add webparts, that would be nice.

Another important issue is the migration of old Wordpress posts to SharePoint. I haven't found any tool yet how to do that. No server side tools and no desktop tools that use the WSS 3.0 lists API. I strongly believe in a tool that can be installed on a desktop machine (no SharePoint server) and that could migrate my Wordpress posts to a SharePoint EBE. For now however there are a few approaches to get the posts in.

Windows Live Writer

Just create a account for your old Wordpress blog and one for the EBE and re-publish them one by one. You know, open a Wordpress post and re-publish it to the EBE.

Read only version of your old Wordpress blog posts

Hmm, there is another way to do it and it can work on a Shared SharePoint server. You could use the DataView webpart and link it to your Wordpress RSS feed.

Or better, if you have the RSS viewer webpart you can do it out of the box.

Another option would be to use a MySQL script to link directly to the old Wordpress posts. Like the script below:

<?php

  //get filter
  $filter=$_REQUEST['select'];
  //set header
  header("Content-type: text/xml"); 
    //Connection to database
  $server="<your server>";
  $username="<your username>";
  $password="<your password>";
  $database="<your database>";
  $table="<database table>";
  $query = "SELECT * FROM " .$table;
  //$query = $filter. " " .$table; 
  $xml_output = "<?xml version=\"1.0\"?>\n";
  $xml_output .= "<items>\n"; 
  //set connection
  $con = mysql_connect($host,$username,$password);
  //check if ok
  if (!$con)
    {
      die('Could not connect: ' . mysql_error());
    }
  //select data
  mysql_select_db($database, $con);
  //set query
  $result = mysql_query($query);
  //get fields
  $fields = mysql_listfields( $database, $table); 
   //Count fields and put counter on zero
  $field_num = mysql_num_fields($fields); 
  //browse records
  while($row = mysql_fetch_array($result))
    {
      //xml output
      $xml_output .= "\t<item>\n";
      $i=0;
      //Get all fields
      while ($i < $field_num)
        {
          $name  = mysql_field_name  ($fields, $i);
          $value=$row[$name];
          $value = str_replace("&", "&", $value);
          $value = str_replace("<", "<", $value);
          $value = str_replace("", ">", $value);
          $value = str_replace("\"", """, $value);
          $value = str_replace("", "<br>", $value);
          $value = str_replace("", "</br>", $value);   
          $xml_output .= "\t\t<" . $name . ">" . $value . "</" .$name. ">\n";
          $i++;
        }
      $xml_output .= "\t</item>\n";
    }
  mysql_close($con);
  $xml_output .= "</items>";

  echo $xml_output;

?>

By using SharePoint designer you could hook up the DataView webpart to above script. You could actually mix that with another RSS feed.

Importing the posts

This is a little bit more work. You could write a VB Express tool that reads the RSS and uses the lists webservice to add new items to the Posts list. Would be a very handy tool and best would be to make it work with all RSS feeds. Nice thing is that it can be a client tool that does not need SharePoint.

So, overall a lot of options that can be used.

0 Comments


Bridging the PHP world with SharePoint

March 17, 2008 - 21:07, by Hans Blaauw

Lots of people loving SharePoint and .NET probably think I'm crazy when talking about bridging :-) Well, for me it makes sense to bridge for example PHP (cheap) with a Shared Sharepoint hosting environment. Remember, not all small companies have dedicated servers and probably more and more are looking into web based solutions. And you know as well as I know that if you use a Shared SharePoint hosting environment that you cannot install custom code, that is a simple fact that no one can change right now. In practice that means you have less options and a very very OOTB environment.

Everyone seems to forget that there are a lot of small companies (less than 10 people) out in the wild and they don't have much resources available. I owned such a company and Shared SharePoint was fine most of the time (not with zevenseas anymore). The problem with these small companies is always the integration stuff. Because they are small they need smart solutions so they can do more things with less people. One sample is a connection between the public website (lots of PHP) and the internal website (Shared SharePoint).

A perfect sample of this is our good old information request on the public site. Most companies have one (even the bigger ones) and the question is how we can shoot these requests to the right person in a organization without using a forward in the Outlook mailbox. In SharePoint the tools are available, with SharePoint designer and Shared SharePoint you can create a workflow attached to a information request list and voila you have a small solution. But how to get these information requests from the public facing site to the internal site in the correct list?

One option could be to use a email enabled lists but it is not perfect. Best would be to have some cheap PHP script sitting in the middle to catch the information request submit and post it to SharePoint. I investigated this and I haven't build it yet but it should be possible by using PHP CURL and the SharePoint RPC protocol.

See this article

But there is something about this that I don't like, it does not use the official WSS webservices. I rather would see a PHP script that can talk to the WSS webservices and post data to lists. Because CURL does support different authentication models it should be possible. Check out this article for a Javascript sample.

I know the Microsoft world and the LAMP world are two different worlds and even in my own company we have this fight once and a while. "I want Flash, no I hate it we need Silverlight". Actually I always have been a Microsoft fan (started with Windows 1.0 etc.) but I have learned to appreciate other technologies. And remember, most end users not involved in IT don't care too much about technology they just want something that works! Take for example cars, how many are really interested in what kind of and engine it has?

So bridging could be cool in my opinion, certainly for the Hosted SharePoint world.

0 Comments


The SharePoint interface, good or bad?

March 16, 2008 - 14:51, by Hans Blaauw

In the past I have done a few projects with less IT minded people and what struck me was the fact that they had problems with the SharePoint interface.

Why?
Although I think the interface is very clean and nice a lot of people seem to have a problem with it when seeing it for the first time. I think there are two reasons for this:

  • People are used to Office;
  • It is web based and some things like right click don't work as expected

Because the interface is actually very slick people forget sometimes that it is a web based application that actually runs inside a browser. So that means that a right click isn't context sensitive because it is the right click function of the browser and it is not related to for example a specific document. This is a big problem.

The fact that everyone is used to Office doesn't help either, SharePoint does not look the same at all.

It raises the question for me if SharePoint should have a client application. This client application could basically be a desktop interface (with Office Ribbon) that uses the webbrowser control and the WSS webservices. But I think it wouldn't be enough. If we would combine it with the functionality of Colligo Networks Contributor it would be great. And that is possible because Colligo Networks has an SDK available nowadays.

The biggest problem that I have with the SharePoint interface is the fact that it needs a page refresh so much. There is not much AJAX in there and from a interaction point of view it is a step backwards from where we came from (Office).

Sure, the trend is towards web 2.0 and webbased but end users don't care too much about that. They are not always technology driven but they focus on the task they have to execute. They want to do that in the easiest way possible, so a desktop client would make sense.

0 Comments


 Next >>