Title : Professional SharePoint 2010 Development
Authors : Tom Rizzo, Reza Alirezaei, Paul J. Swider, Scot Hillier, Jeff Fried, Kenneth Schaefer
This book was the first one available talking about SharePoint 2010 development. Therefore, as it was available soon after the RTM version of SharePoint, we could expect that some points would not have been perfectly addressed.
Nevertheless, it covers almost the whole range of topics that a developer may face.
It starts by, of course, an introduction to the new platform, an overview of the developer tools and the list of enhancements for the IT Pros. After that, collaboration, social computing, search, ECM, through workflows and business intelligence are described. One of the last topic is about the promising SharePoint Online.
Book Review :
Very honestly, the whole introduction can be skipped. It means the first 4 chapters as they are too high level. I found them also too long.
After these chapters, it goes well in the details, with many examples besides code illustrating the notions explained. On the other side, and with the experience of the platform, I found two points where the book is not going enough in the subject. The first one, even if packaging and deployment is explained, after a bit along the book, this is no longer addressed and sometimes leave the reader at "how can I deploy this ?".
The second point is in regards to SharePoint Online which is not covered enough. Maybe because the platform was not ready, but this topic deserves to be more developed.
Overall, this book is a very good one and will be very useful for the developers.
Great day !
Steve Balllmer announced today the availability of the first devices that will support Windows Phone 7. Among them, 4 HTC devices. I just need to make a choice now
The next Swiss SharePoint Club event will take place in Geneva, at the Cooperative Migros.
In the agenda, Business Intelligence, SharePoint Online, branding and web content management, and metadate with SharePoint 2010.
To have a detailed agenda, go on the Club SPS web site
Title : Microsoft Visio 2010 - Business Process Diagramming and Validation
Author : David J. Parker
Microsoft Visio 2010, Business Process Diagramming and Validation, written by the Visio MVP David Parker focuses on Visio 2010 and its use for validating diagrams. Moreover, the edition that is the subject of the book is the Premium one. The reason for that is because only the Premium Edition has the diagram validation feature.
It starts by a description of the new features of Visio 2010. It continues with the description of the Microsoft Visio Object Model and the Connectivity API used to run through the diagram, its shapes and their connections. After this, the necessary ShapeSheet is explained, before going through the validation API.
After all that theory, some practice with the development of a Visio Add-In in WPF to explore the ShapeSheets and the validation rules. This Add-in is then used in all the next chapters to create validation rules.
A complete chapter is dedicated to the publishing and packaging of Visio templates, including validation rules.
Book Review :
The book leads the reader from the beginning, exploring the Visio Object model to a completely packaged Visio template containing validation rules, which is very interesting and easy to follow. The explanations and examples are clear and illustrated with comprehensive piece of code. Especially, the packaging part that I found particularly well explained.
On the other side, some part of the book have big pieces of code, which is good because you don't have to be online to get the source code on a web site (even if the complete solution described in the book is available on a dedicated site). But, this makes sometimes these part more difficult to follow and a bit heavy.
Finally, a good book for developers and power users that want to start implementing diagram validation.
For the people that want a free sample chapter of the book (Understanding the Microsoft Visio Object Model), they can follow this link.
Title : SharePoint 2010 for dummies
Author : Vanessa L. Williams
This book places the readers at the place of a user or a power user of the SharePoint 2010 platform. It describes the functionnalities or feature of the lists, document libraries and goes through the different aspects of SharePoint 2010. But it does not stop at the end-user level and goes beyond, by explaining some tricks or some administrator functions.
Several advanced features are demonstrated, like the Excel Services, the Business Connectivity Services, just to name a few.
Book Review :
Ok, colleagues were wondering why I was reading such kind of book. That is true, if you want a developer or a complete guide to SharePoint 2010, pass your way, this book is definitely not for you. Anyway, when all the day-long you work either as a developer or working at the implementation of a SharePoint 2010 solution, there is a tendancy to forget the basics, or just how users are approaching the product. Not only that. It is the kind of book that your users or your clients will read most likely. It is always good to put yourself in their shoes and see SharePoint from their viewpoint, just to see how they understand the product.
For someone that has already some notions of SharePoint, this book is easy to go through. It has a good level for end-users and power users (not administrators !). Finally, it is interesting to see it as a starting point for other books going more deeper in SharePoint 2010 and definitely, a book that SharePoint users should have.
You may not have notice, but this blog has been upgraded.
As it was running on an old version of the DasBlog engine, it was the time to upgrade to the version 2.3. It is now done and running...
In SharePoint 2007 we had a problem when we wanted to create calculated columns using either the [Today] or [Me], respectively giving the current date and the current user. If you search on the web, a lot of pages are describing and talking about the workaround. The workaround is to create a "Today" or a "Me" column with the standard and default settings, writing the formula and then, finally, to delete the created columns.
I hoped that in SharePoint 2010, this was fixed. But when I created my first calculated column based on dates, here is what I got :
Exactly the same error we have in SharePoint 2007.
And.....exactly the same workaround. So, is it not considered as a bug or a problem for Microsoft ? Sure, there is a workaround, but it is quite annoying to create columns just to delete them right after. And, last but not least, when the formula has to be udpated, ensure that these columns are present otherwise, it will be impossible to save the new formula.
I got a correction from Ryan (see comment below) and indeed, the what-was-called-so-far-a-workaround in many pages on the web (and here also ) is in fact not a viable solution. In fact, the column using this "trick" will only be updated and calculated when the item is updated. To see the confirmation of this, create a column with a formula like this : =IF([StartDate]>[Today],"Future","Started") with StartDate being a manually-set date and wait for that StartDate to be reached. If the item is not updated, the column will keep the "Future" label.
Anyway, the fact that it is not possible to have such functionality in SP2010 is a bit pity.
Thanks to Ryan for the correction
When you implement a solution, you test it in different situation and depending on the results, of course, you correct the little mistakes that may be present. What I found very interesting so far in software development is the way to reproduce a behaviour following a given set of steps. For the same steps, you get the same result. That is also a way to qualify a bug or a defect, most of the times.
So, what is more frustrating when the problem or the bug happens randomly ?
However, that is what happened recently on a SharePoint 2007 web site during a roll-out.
The symptoms ?
Having activated the anonymous access, pages prompted the users for credentials and when no credentials were entered, a simple message "401 Unauthorized" was displayed. Now, on that same page, simply pressing F5 to refresh was loading and displaying the page correctly.
Checked that all the resources were accessible by anonymous users, being CSS, images, documents, etc. Some images were referenced using absolute URLs, but apart from that, nothing special.
Checked in the Windows Event Log, absolutely nothing related to this problem.
Checked the ULS, crawled megs of text files, several "excessive number of SPRequest" messages were present, but they were here before the roll-out as well. The only clue was some "Access denied" messages, but, no reference to a resource or no stack trace.
Checked also the web.config, everything was ok. And anyway, this is normally handled by SharePoint.
Checked the IIS Directory Security permissions, verifying the identity of the user used by the application pool, but here again, everything was normal.
Custom code doing a forbidden action ? After a complete removal of the three custom controls, the problem persisted, so, it was not that.
After hours and hours of investigation, I found one thing. The Master Page and Page Layouts gallery was not accessible anonymously, so I fixed this first, but still, the 401 issue was still here. Being in the library I decided to check the content of the master pages and the page layouts and found couple of "__designer" tags referencing resources. We indeed used the SharePoint Designer to apply some changes, but never had this problem before. But, to be sure and to definitely clean these files, every "__designer" tags have been removed and pages provisionned again.
The result ?
Everything was fine. So, for some reasons, the tags added by SharePoint Designer seem to cause access issues, but not all the times.
In this particular case, what was really annoying is that nothing can lead you to the solution or where the problem is located. A lot of people wrote about 401 random issues, caused by either a hotfix applied here or load-balancer problems there, but mine was still another one.
So, before spending hours or days looking for useless (in that specific situation) logs, check your master page or your page layouts and remove "__designer" tags. Check also that they are accessible anonymously.