<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogit.create.pt/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Comunidade Bloggers |create|it|</title><link>http://blogit.create.pt/blogs/default.aspx</link><description /><dc:language>en-US</dc:language><generator>CommunityServer 2.1 (Build: 60809.935)</generator><item><title>AzureConf2013 Today!</title><link>http://blogit.create.pt/blogs/joaomartins/archive/2013/04/23/AzureConf2013-Today_2100_.aspx</link><pubDate>Tue, 23 Apr 2013 16:37:55 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:18964</guid><dc:creator>jota</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;AzureConf, and online free event on Windows Azure, will be held &lt;strong&gt;&lt;font size="3"&gt;today&lt;/font&gt;&lt;/strong&gt;, a few hours from now. More information at the events website &lt;a href="http://www.windowsazureconf.net/schedule/"&gt;here&lt;/a&gt;. I am especially looking forward to the IaaS, Mobile and Media Services sessions, where we have some customer scenarios ongoing.&lt;/p&gt;  &lt;p&gt;Also interesting and related to something I have in hands at the moment is Nuno Godinho’s post “&lt;a href="http://msmvps.com/blogs/nunogodinho/archive/2013/04/22/lessons-learned-taking-the-best-out-of-windows-azure-virtual-machines.aspx"&gt;Lessons Learned: Taking the best out of Windows Azure Virtual Machines&lt;/a&gt;”. Interesting feedback from using IaaS. SharePoint Server has been implemented everywhere in the last few years. Azure IaaS is especially interesting for these scenarios.&lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=18964" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Posts+in+English/default.aspx">Posts in English</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/MsdnArquitecturaPT/default.aspx">MsdnArquitecturaPT</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Azure/default.aspx">Azure</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Architecture/default.aspx">Architecture</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Events/default.aspx">Events</category></item><item><title>Software Estimation –A Step Closer To The Silver Bullet - Microsoft Lisboa 2013.04.13 (Updated)</title><link>http://blogit.create.pt/blogs/joaomartins/archive/2013/04/12/SOFTWARE-eSTIMATION_1320_a-sTEP-cLOSER-TO-THE-sILVER-bULLET_2D00_-Microsoft-Lisboa-2013.04.13.aspx</link><pubDate>Fri, 12 Apr 2013 23:07:00 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:18932</guid><dc:creator>jota</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Tomorrow I’ll be redoing my &lt;strong&gt;Software Estimation &lt;/strong&gt;presentation at SharePoint’s Community. This presentation started with an invitation to present on this topic from one of our customers, and evolved into a general presentation on Software Estimation and the techniques Create It uses. I delivered it &lt;a href="http://blogit.create.pt/blogs/joaomartins/archive/2012/06/14/_AB00_Software-Estimation_1320_A-Step-Closer-to-the-Silver-Bullet_BB00_-_4000_-NetPonto-Lisboa-16_2F00_06.aspx"&gt;last year at Netponto&lt;/a&gt;, this year is SharePoint’s Community turn with an updated version :).&lt;/p&gt;  &lt;p&gt;There’s more information about the event &lt;a href="http://www.sharepointpt.org/archive/2013/04/10/27&amp;ordf;-reuni&amp;atilde;o-da-comunidade-portuguesa-de-sharepoint-13042013.aspx"&gt;here&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Update: &lt;/strong&gt;you can find the slides &lt;a href="http://www.slideshare.net/slidejota/20130412-software-estimation-joo-pedro-martins-e-hugo-lopes-comunidade-share-point-pt"&gt;here&lt;/a&gt;. The video of the previous delivery of the session at Netponto is &lt;a href="http://www.youtube.com/watch?v=3QFmLi1b1KE"&gt;here&lt;/a&gt; (note: contents in Portuguese). As to the session on Saturday, the topic always raises lots of interest and conversations, and this was no exception. I n my view, this topic should be studied in CompSci courses.&lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=18932" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Posts+in+English/default.aspx">Posts in English</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/MsdnArquitecturaPT/default.aspx">MsdnArquitecturaPT</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Development/default.aspx">Development</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Architecture/default.aspx">Architecture</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Software+Estimation/default.aspx">Software Estimation</category></item><item><title>eCommerce Solutions on Windows Azure - Microsoft Lisboa 2013.04.10 (update)</title><link>http://blogit.create.pt/blogs/joaomartins/archive/2013/04/09/eCommerce-Solutions-on-Windows-Azure-_2D00_-Microsoft-Lisboa-2013.04.10.aspx</link><pubDate>Tue, 09 Apr 2013 20:15:24 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:18914</guid><dc:creator>jota</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;I’ll be presenting with &lt;a href="http://blogit.create.pt/blogs/raulribeiro"&gt;Raúl Ribeiro&lt;/a&gt; tomorrow at the &lt;strong&gt;Window Azure Spring Summit &lt;/strong&gt;at Microsoft in Lisboa. The event will include several sessions focused on the Azure support for Media, eCommerce and e-Learning solutions. My session will be focused on the different eCommerce projects we have done or are developing at the moment, and the mapping of challenges into Azure components.&lt;/p&gt;  &lt;p&gt;The registration site (in portuguese) is &lt;a href="https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032548674&amp;amp;culture=pt-PT"&gt;here&lt;/a&gt;. I’ll upload the slides to Slideshare after the event.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Update: &lt;/strong&gt;the event was great. Not a long session, but the people were interested and had very good feedback. Sharing real experiences always makes a difference. &lt;a href="http://www.slideshare.net/slidejota/e-commerce-solutions-on-windows-azure-dist-full"&gt;Here’s the deck&lt;/a&gt;.&lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=18914" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Posts+in+English/default.aspx">Posts in English</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/MsdnArquitecturaPT/default.aspx">MsdnArquitecturaPT</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Cloud+computing/default.aspx">Cloud computing</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Azure/default.aspx">Azure</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Service+Bus/default.aspx">Service Bus</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Architecture/default.aspx">Architecture</category></item><item><title>Azure FTP For SharePoint @ GitHub</title><link>http://blogit.create.pt/blogs/joaomartins/archive/2013/04/05/Azure-FTP-For-SharePoint.aspx</link><pubDate>Fri, 05 Apr 2013 16:19:27 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:18884</guid><dc:creator>jota</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;After a couple of failed starts, I finally decided to start this project. The idea came to me when the first version of the Relay was launched in the Azure Service Bus, when it was still called “BizTalk Services”, but only now do I have the time to work on it.&lt;/p&gt;  &lt;p&gt;The idea is the following: very often I have problems connecting to my company’s VPN&amp;#160; and Intranet, either because of firewalls in the sites I’m working at or other connectivity problems, making me have to use email to ask people to send or upload documents. The &lt;strong&gt;Azure Service Bus&lt;/strong&gt; offers a great way to work around this problem. The first concept was thus to develop some kind of Windows App that could connect to a SharePoint intranet behind a firewall via the Service Bus and browse its contents, but I decided to develop a command line client instead, supporting FTP-like commands. &lt;/p&gt;  &lt;p&gt;This approach not only offers the potential for scripting, but allows for a convenient &lt;strong&gt;“structure-transparent” navigation&lt;/strong&gt;: SharePoint has several hierarchy/structure concepts (web applications, site collections, sites &amp;amp; sub-sites, document libraries, folders within document libraries, document sets, to name some). I wanted the navigation in this space to be fully abstracted. For example, a command like “ls” would list all these structure elements as if being the same - a “folder”, and documents as… well, documents. In a command like “cd folderName”, folderName could also correspond to any of the above structural elements. Someone using the client tool would not have to worry about which.&lt;/p&gt;  &lt;p&gt;The current architecture is the following:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;A &lt;strong&gt;command-line client&lt;/strong&gt; that the user starts and uses just like FTP, supporting commands such as open (authenticate and connect to a SharPpoint), get (get a file), cd (change folder), ls/dir (list contents) and close (close connection). &lt;/li&gt;    &lt;li&gt;A &lt;strong&gt;windows service &lt;/strong&gt;exposing a set of operations via the service bus. The operations map with each of the commands enumerated above. The option for a Windows Service was based on convenience: they can be easily installed and don’t depend on IIS [1]. On the other hand, the service can be running anywhere in a customer site, and it’ll work as long as it can reach SharePoint. It can even be running in a DMZ, with more controlled connectivity. The interaction with SharePoint will be done using ClientOM. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;One important note regarding the above is that the service operations will be stateless (I will probably have to setup some kind of cache/pool on the service side for perf reasons), but the client will have to keep state, such as the current base site, credentials, and “folder”.&lt;/p&gt;  &lt;p&gt;In terms of the technology stack, this is what I envision at the moment:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;.Net 4.5/x64/VS2012 &lt;/li&gt;    &lt;li&gt;Windows Azure Service Bus &lt;/li&gt;    &lt;li&gt;WCF 4.5 &lt;/li&gt;    &lt;li&gt;Irony for language parsing on the client app &lt;/li&gt;    &lt;li&gt;Wix Toolset for generating setups (install projects are missing from VS2012…) &lt;/li&gt;    &lt;li&gt;Log4net 1.2.11 &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;As of today, and &lt;strong&gt;note this is all very early&lt;/strong&gt;, the status is:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Visual Studio project structure is created &lt;/li&gt;    &lt;li&gt;Wix installer project generates an msi installer for the windows server &lt;/li&gt;    &lt;li&gt;Logging is integrated and configured in the server &lt;/li&gt;    &lt;li&gt;Windows Service code includes draft contracts of the operations to support, and these are already exposed via HTTP [but not in the service bus yet] &lt;/li&gt;    &lt;li&gt;SharePoint Library Manager code contains some early sample code to authenticate with the product &lt;/li&gt;    &lt;li&gt;The client app is still empty, but the Spike.Irony project contains a first version of the grammar of commands and a command input loop, which I’ll migrate to the client when I’m happy with it &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;All this said, I’ll be posting relevant notes about &lt;strong&gt;AzureFtpForSharePoint&lt;/strong&gt; here, and the code itself is publicly available on GitHub: &lt;a href="https://github.com/lokijota/azureftp-for-sharepoint"&gt;https://github.com/lokijota/azureftp-for-sharepoint&lt;/a&gt; . I have also enlisted the collaboration of some colleagues to help out in the development (especially on the SharePoint side), but feel free to drop me a line or try it out if you are interested.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;[1] Having experience of using the pre-BizTalk Server 2013 adapter for SharePoint, which requires an installation on the IIS of the SharePoint Servers, I know this can be a setup/configuration headache.&lt;/em&gt;&lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=18884" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Posts+in+English/default.aspx">Posts in English</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Sharepoint/default.aspx">Sharepoint</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Development/default.aspx">Development</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Azure/default.aspx">Azure</category></item><item><title>BizTalk 2013 RTM and Azure IaaS Support</title><link>http://blogit.create.pt/blogs/joaomartins/archive/2013/04/03/BizTalk-2013-RTM-and-Azure-IaaS-Support.aspx</link><pubDate>Wed, 03 Apr 2013 20:48:00 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:18855</guid><dc:creator>jota</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;A few days ago I attended the &lt;a href="http://obid.devscope.net/"&gt;Oporto BizTalk Innovation Day&lt;/a&gt; with my colleagues Pedro Vala and Tiago Oliveira. &lt;a href="http://obid.devscope.net/Event/Session/biztalk_server2013cloud_based_adapters"&gt;Steef-Jan’s session&lt;/a&gt; on cloud based adapters was interesting (although part of it was available as an extension to BizTalk Server 2010), and &lt;a href="http://obid.devscope.net/Event/Session/Details?id=ProactivityInBizTalk&amp;amp;edition=201010"&gt;Tord Nordahl’s session on “Proactivity in BizTalk”&lt;/a&gt;, which was really focused on the “IT Pro” point of view, was also very interesting. I don’t think I’ve ever met a BizTalk Admin ever before, with many projects done. Another IT-focused talk was done by Saravana, on &lt;a href="http://www.biztalk360.com/"&gt;BizTalk360&lt;/a&gt;, and the product – now in version 6.0, is absolutely impressive. With a friendly pricing model (even for local standards), we’ll recommend it on all future and present customers. Check it out!&lt;/p&gt;  &lt;p&gt;&lt;a href="http://obid.devscope.net/Event/Session/keynote_biztalk2013and_future_vision"&gt;Akshat Sharma&lt;/a&gt; from the product team did a keynote and answered some questioins, where my highlight was when he said that BizTalk 2013 will be on Azure Iaas when IaaS goes live/GA.&lt;/p&gt;  &lt;p&gt;Also at this event the local MS people announced the RTM of BizTalk Server 2013, which has already been extensively covered elsewhere (&lt;a href="http://blogs.msdn.com/b/biztalk_server_team_blog/archive/2013/03/21/biztalk-server-2013-is-now-rtm.aspx"&gt;here&lt;/a&gt; or &lt;a href="http://blog.codit.eu/post/2013/03/22/BizTalk-2013-RTM%E2%80%99ed%E2%80%93we-are-ready!.aspx"&gt;here&lt;/a&gt; or &lt;a href="http://blogs.biztalk360.com/the-evolution-of-biztalk-server/"&gt;this post&lt;/a&gt; by Saravana is also interesting). My personal highlights are for the now-native Azure Service Bus integration, the new SharePoint adapter using the client object model (I’ve spent hours troubleshooting installation problems with the previous one), and the including (at least!) of the ESB Toolkit in the base install/config. The REST support also gets an honorable mention :).&lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=18855" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Posts+in+English/default.aspx">Posts in English</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/BizTalk+Server/default.aspx">BizTalk Server</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Development/default.aspx">Development</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Azure/default.aspx">Azure</category></item><item><title>I’ll Build 2013 :)</title><link>http://blogit.create.pt/blogs/joaomartins/archive/2013/04/02/I_1920_ll-Build-2013-_3A002900_.aspx</link><pubDate>Tue, 02 Apr 2013 18:17:49 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:18856</guid><dc:creator>jota</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Just did the early-bird registration at &lt;a href="http://www.buildwindows.com/"&gt;Build 2013&lt;/a&gt;, this year in San Francisco, who’s recognizable bridge was the inspiration for the one we have in Lisboa. I’ll be attending with Raúl, a friend and long-time colleague, and looking forward for everything regarding Windows Azure (obviously), Office 365 (which we’ve been using for over a year now), and Windows development.&lt;/p&gt;  &lt;p&gt;The first time I went to PDC (in 2005, I think), with several other local “community influencers” at the time, it was one of the most interesting experiences I’ve had from a technological point of view. Really looking forward to return to its “successor”. :)&lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=18856" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Posts+in+English/default.aspx">Posts in English</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Development/default.aspx">Development</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Azure/default.aspx">Azure</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Build2013/default.aspx">Build2013</category></item><item><title>Transitioning Dev Environments Azure IaaS</title><link>http://blogit.create.pt/blogs/joaomartins/archive/2013/04/02/Transitioning-development-to-azure-IaaS.aspx</link><pubDate>Tue, 02 Apr 2013 15:23:32 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:18854</guid><dc:creator>jota</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;The internal policy at &lt;a href="http://WWW.CREATE.PT"&gt;Create It&lt;/a&gt; is to use Virtual Machines to do all the coding, with different environments for Web development, BizTalk, SharePoint, etc. My personal dev-pc is still a 8Gb/Core i7 Sony Vaio, but I’ve been using it less and less, replaced by a slim Asus Ux31 Ultrabook which weighs much less and has much better autonomy. At only 4Gb/Core i5, however, I can’t really run VM’s on it. A few weeks back I decided to evaluate both &lt;a href="http://www.windowsazure.com/en-us/home/scenarios/virtual-machines/"&gt;Azure VM’s&lt;/a&gt; and &lt;a href="http://tfs.visualstudio.com/"&gt;TFS Service&lt;/a&gt; for a new project we started, but from the point of view of development itself and not “just” hosting a solution.&lt;/p&gt;  &lt;p&gt;This is a web ecommerce web site for one of a widely known quality brand in Portugal, which will be hosted with Azure Sites or IaaS, and uses the &lt;strong&gt;Service Bus&lt;/strong&gt; to integrate with internal systems (SAP). First I created a &lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/ee814754.aspx"&gt;small VM&lt;/a&gt;, installed SQL express and visual studio 2012, and worked remotely via Remove Desktop. Things were acceptable, but RAM was almost always maxed-out, so I changed to a Medium VM with 3.5Gb. One cool detail is that you don’t have to reformat your VM to make this change, just change the configuration in the Azure Portal (the benefits of virtualization), and change is immediate.&lt;/p&gt;  &lt;p&gt;After three weeks, the experience has been great, and not having to depend on hardware but relying on a “thin client” model is a great freedom, and I don’t have to worry about the latency of my external USB3 disks. Graphical fidelity and UI responsiveness is obviously not the best, but I don’t feel latency when typing or debugging.&lt;/p&gt;  &lt;p&gt;One problem I have is that sometimes I am unable to remote desktop to the VM using the saved rdp file, and have to do it again via the &lt;a href="https://manage.windowsazure.com/"&gt;azure portal&lt;/a&gt;, but when I connect, the VM hasn’t been restarted. Didn’t spend the time to diagnose the issue yet, it just happened a couple of times. Anyway, it’s a great experience, very convenient&lt;/p&gt;  &lt;p&gt;As to TFS Service, I just &lt;strike&gt;want &lt;/strike&gt;need it to go GA with public pricing &lt;strong&gt;FAST&lt;/strong&gt;, because I’ll move all our projects there and discontinue our internal TFS. Everything we’ve tried has worked fine, check-in/check-out is quick, issue management is great. We still use Final Builder internally to orchestrate the builds, with its outstanding graphical build-configuration tool, but this might change.&lt;/p&gt;  &lt;p&gt;The next challenge I’ll look into is having more people using the dev VM, or copy&amp;amp;replicate this VM for other devs to use. We also installed redundant ISP connections to get ready for this change in the short term.&lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=18854" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Posts+in+English/default.aspx">Posts in English</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Cloud+computing/default.aspx">Cloud computing</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Development/default.aspx">Development</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Azure/default.aspx">Azure</category></item><item><title>SharePoint Conference 2012</title><link>http://blogit.create.pt/blogs/andrevala/archive/2012/11/17/SharePoint-Conference-2012.aspx</link><pubDate>Sat, 17 Nov 2012 23:03:16 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:18235</guid><dc:creator>andrevala</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;The &lt;strong&gt;SharePoint Conference&lt;/strong&gt; is always a great event, but when it matches the launch of a new SharePoint version it rises to a whole other level. According to Jeff Spataro, this is the largest SharePoint Conference to date with:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;10,000 attendees &lt;/li&gt;    &lt;li&gt;From 85 countries &lt;/li&gt;    &lt;li&gt;Over 200 sponsors and exhibitors &lt;/li&gt;    &lt;li&gt;Over 300 breakout sessions &lt;/li&gt;    &lt;li&gt;45 hands-on labs &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;The &lt;strong&gt;Mandalay Bay Resort&lt;/strong&gt; is the perfect venue for such a massive event, and Microsoft really knows how to take advantage of all the space in the Convention Centre. I’ve been here for the 2009 SharePoint Conference, and I can tell you it gets better every year.&lt;/p&gt;  &lt;p&gt;Here are some of the new stuff they came up with:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Your badge can be customized using up to 3 stickers that describe what are your main areas of interest (Search, Websites, Collaboration, …), what kind of attendee you are (IT Pro, Developer, Business) or some other SharePoint related expression. &lt;/li&gt;    &lt;li&gt;Your backpack can also be customized using a sticker with your attendee profile. &lt;/li&gt;    &lt;li&gt;There is an enormous &lt;strong&gt;Community Wall&lt;/strong&gt; where you can leave your thoughts on what community means to you. But get this: you don’t to write it down on the wall. Instead, one of the professional designers will include your phrase in the wall and will draw something related to your home country. This ensures the whole wall will have a consistent and artistic look &amp;amp; feel. I can tell you it’s looking really great! &lt;/li&gt;    &lt;li&gt;There is also a &lt;strong&gt;SharePoint Timeline&lt;/strong&gt;, where each attendee writes his signature on his SharePoint freshman year. One guy wrote he was a SharePoint newbie in 1979 because “he was born to work with SharePoint” :) &lt;/li&gt;    &lt;li&gt;A &lt;strong&gt;Photo Booth&lt;/strong&gt; where you can use a few props to take silly pictures and e-mail them to your friends.&lt;/li&gt;    &lt;li&gt;Possibility to complete, on the spot, the two SharePoint 2013 beta certification exams for free, and other certification exams with a discount price.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;The &lt;strong&gt;Keynote&lt;/strong&gt; was delivered with plenty of music and videos, and a well known ensemble of presenters, for the usual wow effect in this kind of events. It started with Jared Spataro saying that “SharePoint is not just a product, it is a way of life”. He went on thanking the huge SharePoint community (both developers, administrators and customers) for all the support and enthusiasm. Throughout the keynote’s two hours of length, a great number of features were announced or presented, from the new version of SharePoint Online in Office 365 to Yammer, and through all the new stuff in Search, Web Content Management, Enterprise Content Management, Social and, finally, the new Office and SharePoint App model.&lt;/p&gt;  &lt;p&gt;The &lt;strong&gt;Breakout Sessions&lt;/strong&gt; were split into three groups, according to the intended audience: IT Professionals, Developers and Business Decision Makers. Each of these groups of sessions took place in a different floor of the convention center, which made it quite simple to go from one to the next, provided they belonged to the same track (i.e. audience).&lt;/p&gt;  &lt;p&gt;Besides learning about the new features of the product, one of the main goals of this is event is, of course, &lt;strong&gt;Networking&lt;/strong&gt;. The organization also thought about that and gave the attendees a great number of opportunities to do so:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;The Conference Reception – Sunday before the start of the conference.&lt;/li&gt;    &lt;li&gt;Club SPC / Lounge SPC – Two simultaneous parties on Monday evening in two of the bars of the resort.&lt;/li&gt;    &lt;li&gt;Attendee Party – Mega party in the Mandalay Beach with dinner and live music by Jon Bon Jovi and the Kings of Suburbia, on Tuesday evening.&lt;/li&gt;    &lt;li&gt;Ask the Experts – Specific period, on Wednesday after the breakout sessions are over, where you can find experts on all subjects related to SharePoint. Maybe it’s not a networking event, but you always end up meeting new people.&lt;/li&gt;    &lt;li&gt;The Community Lounge – a specific area inside the Exhibition Hall with a bunch of fun stuff and where you could always find people.&lt;/li&gt;    &lt;li&gt;Avepoint’s Red Party – a partner hosted party, by invitation only and with limited entries, on Monday evening.&lt;/li&gt;    &lt;li&gt;Axceler’s Party – also a partner hosted party, by invitation only and with limited entries, on Wednesday evening.&lt;/li&gt;    &lt;li&gt;MySPC website/app allowed you to find attendees that shared the same interests as you, as well as attendees which are connected to your Facebook, Twitter or LinkedIn networks, and setup meetings.&lt;/li&gt;    &lt;li&gt;Finally, the expo floor was always packed sponsors and exhibitors which would actively engage you in conversation, even if only to scan your badge and tell you about their products or services.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Overall it was a fantastic conference, well worth the time and money. Here are my key takeaways:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;SharePoint 2013 was designed for the &lt;strong&gt;cloud first&lt;/strong&gt;. This means that, although SharePoint Server 2013 (on premise) and SharePoint Online (in Office 365) are currently equivalent feature-wise, this will probably not be the case in a near future. This is because SharePoint Online will have much shorter update cycles (around 90 days, I was told) and, for that reason, will always get the new features first. Keep this in mind when deciding if you go for SharePoint Online or On Premise.&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;SharePoint Apps&lt;/strong&gt; are the new and preferred development model for SharePoint. And also in this matter, everyone directs you to hosting your apps in the cloud (although that is not an absolute requirement).&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;JavaScript&lt;/strong&gt; is starting to emerge as a first class citizen in SharePoint and Office (not to mention Windows 8). So, stop fighting it and start embracing it. You can always use TypeScript to make your life easier as well as a bunch of JavaScript frameworks that can really help you out.&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Search&lt;/strong&gt; is everywhere and in the middle of everything.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Over the next few week I’ll be posting more specific articles about the new features.&lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=18235" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/andrevala/archive/tags/SharePoint+2013/default.aspx">SharePoint 2013</category><category domain="http://blogit.create.pt/blogs/andrevala/archive/tags/SharePoint+Conference+2012/default.aspx">SharePoint Conference 2012</category><category domain="http://blogit.create.pt/blogs/andrevala/archive/tags/SPC12/default.aspx">SPC12</category></item><item><title>Office 2013 and SharePoint 2013 reached RTM</title><link>http://blogit.create.pt/blogs/andrevala/archive/2012/10/14/Office-2013-and-SharePoint-2013-reached-RTM.aspx</link><pubDate>Sun, 14 Oct 2012 17:48:04 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:18131</guid><dc:creator>andrevala</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Microsoft has just announced (okay, it was three days ago…) that the new Office 2013 family of applications reached the RTM (Release to Manufacturing) milestone. If you’re not familiar with the term, this means the development and testing phases of the product are finished.&lt;/p&gt;  &lt;p&gt;According to Microsoft, this is their most ambitious Office release to date since it includes not only the Office client applications, but also the servers and cloud services, which means:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Office 2013&lt;/li&gt;    &lt;li&gt;SharePoint 2013&lt;/li&gt;    &lt;li&gt;Lync 2013&lt;/li&gt;    &lt;li&gt;Exchange 2013&lt;/li&gt;    &lt;li&gt;Office 365&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;General availability is planned for the first quarter of 2013 but, starting in mid-November, volume licensing customers, developers and IT professionals with TechNet and MSDN subscriptions, will also be able to download the latest bits.&lt;/p&gt;  &lt;p&gt;Add that to the Windows 8 launch later this month, and this is shaping up to be a busy last quarter for 2012.&lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=18131" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/andrevala/archive/tags/SharePoint+2013/default.aspx">SharePoint 2013</category><category domain="http://blogit.create.pt/blogs/andrevala/archive/tags/Office+2013/default.aspx">Office 2013</category></item><item><title>Office 2013 and SharePoint 2013 Preview</title><link>http://blogit.create.pt/blogs/andrevala/archive/2012/07/17/Office-2013-and-SharePoint-2013-Preview.aspx</link><pubDate>Tue, 17 Jul 2012 23:12:15 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:18036</guid><dc:creator>andrevala</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Just in case you’ve been disconnected from the outside world for the past 24 hours (and for some reason you can still read this blog), Microsoft has just released the &lt;strong&gt;Preview Version&lt;/strong&gt; of &lt;strong&gt;Office 2013&lt;/strong&gt; and &lt;strong&gt;SharePoint 2013&lt;/strong&gt; so that everyone can try it. &lt;/p&gt;  &lt;p&gt;The past few months have been filled with rumors and guesses about the new features of Office and SharePoint. Well, no need for rumors anymore. You can actually try all the shinny new bells and whistles. Start here:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://sharepoint.microsoft.com/en-us/Preview/default.aspx" target="_blank"&gt;SharePoint 2013 Preview Homepage&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.microsoft.com/office/preview/en/try-more-products" target="_blank"&gt;SharePoint, Exchange, Lync, Office Web Apps Server, Project, Visio and Office Professional Plus 2013&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Microsoft did it the right way this time, and also released a ton of documents to help us get up to speed with the new features. I’m just starting to browse through all the documentation, blogs, samples and downloads, but I’ll be sure to post my findings here throughout the next few months.&lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=18036" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/andrevala/archive/tags/SharePoint+2013/default.aspx">SharePoint 2013</category><category domain="http://blogit.create.pt/blogs/andrevala/archive/tags/Office+2013/default.aspx">Office 2013</category></item><item><title>Twitting from TechEd Europe 2012</title><link>http://blogit.create.pt/blogs/joaomartins/archive/2012/06/27/Twitting-from-TechEd-Europe-2012.aspx</link><pubDate>Wed, 27 Jun 2012 12:38:19 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:18016</guid><dc:creator>jota</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Follow me on Twitter @lokijota. Lots of Azure and Win8 sessions. Channel 9 has several videos from TechEd US and the keynotes.&lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=18016" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/MsdnArquitecturaPT/default.aspx">MsdnArquitecturaPT</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Cloud+computing/default.aspx">Cloud computing</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/DevDays09/default.aspx">DevDays09</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Azure/default.aspx">Azure</category></item><item><title>BizTalk Server 2010 R2 TAP</title><link>http://blogit.create.pt/blogs/joaomartins/archive/2012/06/24/BizTalk-Server-2010-R2-TAP.aspx</link><pubDate>Sun, 24 Jun 2012 18:45:20 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:18015</guid><dc:creator>jota</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;The TAP for the next version of BizTalk, strangely pre-named “2010 R2” (instead of 2013) is open for nominations &lt;a href="http://connect.microsoft.com/Azure/Survey/Survey.aspx?SurveyID=14401"&gt;here&lt;/a&gt;. Of the list of new features, I am especially interested in the &lt;strong&gt;IaaS&lt;/strong&gt; and Azure integration capabilities. Support for REST endpoints was clearly lacking, and I am also curious about the meaning of “ordered delivery enhancements”.&lt;/p&gt;  &lt;p&gt;In the begging of the month there were some &lt;a href="http://channel9.msdn.com/Events/TechEd/NorthAmerica/2012/AZR207"&gt;sessions at TechEd North America about the future of Microsoft’s integration offering&lt;/a&gt;,&amp;#160; I’m looking forward to hear this in person at &lt;a href="http://europe.msteched.com/Sessions?q=integration"&gt;TechEd Europe starting tomorrow&lt;/a&gt;.&lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=18015" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Posts+in+English/default.aspx">Posts in English</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/BizTalk+Server/default.aspx">BizTalk Server</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/MsdnArquitecturaPT/default.aspx">MsdnArquitecturaPT</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Azure/default.aspx">Azure</category></item><item><title>&#171;Arquitectura de Solu&#231;&#245;es Cloud&#187; @ Windows Azure [R]Evolution 2012.06.20</title><link>http://blogit.create.pt/blogs/joaomartins/archive/2012/06/19/_AB00_Arquitectura-de-Solu_E700F500_es-Cloud_BB00_-_4000_-Windows-Azure-_5B00_R_5D00_Evolution-2012.06.20.aspx</link><pubDate>Tue, 19 Jun 2012 23:15:42 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:18009</guid><dc:creator>jota</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Tomorrow morning I’ll be presenting a session on the topic or Architecture of [Azure] Cloud Solutions at the Windows Azure [R]evolution event in Lisbon. It’s an easy to follow but packed presentation, that reminded me of topics such as the CAP Theorem or Pat Helland’s excelent presentations on services and data and consistency, with several high level tips to help you architect your Azure app.&lt;/p&gt;  &lt;p&gt;More information about this Microsoft event is &lt;a href="https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032515275&amp;amp;Culture=pt-PT"&gt;here&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;PS: my colleague &lt;a href="http://blogit.create.pt/blogs/raulribeiro/"&gt;Raúl Ribeiro &lt;/a&gt;will also be presenting at the event, a session on the newly released &lt;a href="https://www.windowsazure.com/en-us/home/scenarios/web-sites/"&gt;Azure WebSites&lt;/a&gt;.&lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=18009" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Posts+in+English/default.aspx">Posts in English</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/MsdnArquitecturaPT/default.aspx">MsdnArquitecturaPT</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Ferramentas/default.aspx">Ferramentas</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Azure/default.aspx">Azure</category></item><item><title>&#171;Software Estimation–A Step Closer to the Silver Bullet&#187; @ NetPonto Lisboa 16/06</title><link>http://blogit.create.pt/blogs/joaomartins/archive/2012/06/14/_AB00_Software-Estimation_1320_A-Step-Closer-to-the-Silver-Bullet_BB00_-_4000_-NetPonto-Lisboa-16_2F00_06.aspx</link><pubDate>Fri, 15 Jun 2012 00:44:09 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:18001</guid><dc:creator>jota</dc:creator><slash:comments>2</slash:comments><description>&lt;p&gt;Two months ago I delivered a very well received presentation at &lt;a href="http://netponto.org/" target="_blank"&gt;Netponto&lt;/a&gt; about Team Dynamics and motivation (slides in portuguese here: &lt;a title="Dinâmica e Motivação de Equipas de Projecto" href="http://www.slideshare.net/netponto/dinamica-e-motivacao-de-equipas-de-projecto"&gt;Dinâmica e Motivação de Equipas de Projecto&lt;/a&gt;). &lt;/p&gt;  &lt;p&gt;This next Saturday I’ll be presenting on the topic of &lt;strong&gt;Software Estimation&lt;/strong&gt;. Here at &lt;strong&gt;|create|it|&lt;/strong&gt; we have always had a very strong focus and investment on the quality of our estimation and project management, and we use several techniques from authors such as Steve McConnell and Mike Cohn. The presentation builds on some choice approaches we selected mainly from these authors in the last 10 years, and in addition to describing them, I’ll be talking on how we use them, hoping to give attendants some field tips from our experience&lt;/p&gt;  &lt;p&gt;Hope to see you &lt;a href="http://netponto.org/reuniao/30a-reuniao-presencial-da-comunidade-netponto-em-lisboa/" target="_blank"&gt;there&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;PS: Next June 21’s the portuguese Scrum Community will hold an avent to commemorate the member number 1000. Lear more about is &lt;a href="http://scrumpt1000.eventbrite.com/" target="_blank"&gt;here&lt;/a&gt;, the agenda looks pretty interesting!&lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=18001" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Posts+in+English/default.aspx">Posts in English</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/MsdnArquitecturaPT/default.aspx">MsdnArquitecturaPT</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Development/default.aspx">Development</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Netponto/default.aspx">Netponto</category></item><item><title>BizTalk 2010 R2</title><link>http://blogit.create.pt/blogs/joaomartins/archive/2012/06/11/BizTalk-2010-R2.aspx</link><pubDate>Mon, 11 Jun 2012 11:09:02 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:17999</guid><dc:creator>jota</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Steef-Jan has a great post about the &lt;a href="http://soa-thoughts.blogspot.pt/2012/06/future-biztalk-server-release.html" target="_blank"&gt;next release of BizTalk Server&lt;/a&gt; in his blog. It seems to be mostly a platform upgrade, but the improvements in the area of Azure integration, and the new features of Azure in IaaS specifically (persistent VM’s + VPN support) open up interesting possibilities for BizTalk usage.&lt;/p&gt;  &lt;p&gt;[Edit] &lt;a href="http://kentweare.blogspot.pt/2012/06/application-integration-futures-road.html" target="_blank"&gt;Kent Weare also has an interesting post on this topic&lt;/a&gt;, based on a presentation at TechEd US (I think).&lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=17999" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Posts+in+English/default.aspx">Posts in English</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/BizTalk+Server/default.aspx">BizTalk Server</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/MsdnArquitecturaPT/default.aspx">MsdnArquitecturaPT</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Development/default.aspx">Development</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Azure/default.aspx">Azure</category></item><item><title>FAST Search Tip #1: Enabling Stemming in PowerShell</title><link>http://blogit.create.pt/blogs/andrevala/archive/2012/04/25/FAST-Search-Tip-_2300_1_3A00_-Enabling-Stemming-in-PowerShell.aspx</link><pubDate>Wed, 25 Apr 2012 11:15:31 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:17968</guid><dc:creator>andrevala</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Recently, I’ve been working with &lt;strong&gt;FAST Search for SharePoint 2010&lt;/strong&gt; and, although it’s a great search platform with pretty impressive features, I believe there are still too many manual installation and configurations steps, and too many of those features are only accessible through PowerShell. Don’t get me wrong, PowerShell is great and, by far, the best way to deploy your solution to the client’s environment, but a little more graphical UI wouldn’t hurt.&lt;/p&gt;  &lt;p&gt;According to FAST Search’s &lt;a href="http://technet.microsoft.com/en-us/library/ff393811.aspx" target="_blank"&gt;TechNet documentation&lt;/a&gt;, you can use the &lt;strong&gt;Set-FASTSearchMetadataManagedProperty&lt;/strong&gt; cmdlet to configure the main settings of a managed property. Among other things, you can enable stemming for a specific managed property. Here’s how it’s done:&lt;/p&gt;  &lt;p&gt;&lt;code&gt;$title = Get-FASTSearchMetadataManagedProperty –Name title      &lt;br /&gt;Set-FASTSearchMetadataManagedProperty –ManagedProperty $title –StemmingEnabled $true&lt;/code&gt;&lt;/p&gt;  &lt;p&gt;The problem is that this doesn’t work. The &lt;strong&gt;StemmingEnabled&lt;/strong&gt; argument is actually ignored by the cmdlet so, we need to use a different approach. This is the right way:&lt;/p&gt;  &lt;p&gt;&lt;code&gt;$title = Get-FASTSearchMetadataManagedProperty –Name title      &lt;br /&gt;$title.StemmingEnabled = 1       &lt;br /&gt;$title.update()&lt;/code&gt;&lt;/p&gt;  &lt;p&gt;Although Microsoft is yet to update TechNet’s documentation, it has published a support article in its knowledge base (&lt;a href="http://support.microsoft.com/kb/2468430" target="_blank"&gt;KB2468430&lt;/a&gt;) which describes this very solution. &lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=17968" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/andrevala/archive/tags/Tips+and+Tricks/default.aspx">Tips and Tricks</category><category domain="http://blogit.create.pt/blogs/andrevala/archive/tags/SharePoint+2010/default.aspx">SharePoint 2010</category><category domain="http://blogit.create.pt/blogs/andrevala/archive/tags/FAST+Search/default.aspx">FAST Search</category></item><item><title>Where’s Microsoft going?</title><link>http://blogit.create.pt/blogs/joaomartins/archive/2012/04/18/Where_1920_s-Microsoft-going_3F00_.aspx</link><pubDate>Wed, 18 Apr 2012 22:13:32 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:17964</guid><dc:creator>jota</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;|create|it| has had a strong bet on Microsoft technologies since day one. We strongly believe it has the best overall platform, the one best suited to solve our customer’s needs, and this strategy has paid off in our 10 years of existence.&lt;/p&gt;  &lt;p&gt;In recent times, however, the changes in the market in the last 2-3 years have shaken up things. Here are some simplistic ideas/rant.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Consumer market&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Apple is the &lt;strong&gt;consumer&lt;/strong&gt; king in the mobile world (it’s strange how a company so closed and monopolist can be such a widespread darling, but I won’t go into that), and the only really strong foothold Microsoft has in this segment that I can see is the Xbox360 in the household (in the US, note, as in Portugal we have no TV content at all). &lt;/p&gt;  &lt;p&gt;Windows 7 is a great OS (I still feel Win8 as somewhat lacking in usability), but a &lt;strong&gt;lot&lt;/strong&gt; of tablets will have to be sold to compete with the likes of the iPad, Kindle Fire and Galaxy devices.&lt;/p&gt;  &lt;p&gt;Kinect is fun and innovative, but the device is still clearly unexplored, and the good ideas seem to be somewhat limited in scope. It’s one of those things that leaves the impression that works like magic, but when we look at possible applications, there aren’t that many uses (or maybe I’m not looking far ahead enough).&lt;/p&gt;  &lt;p&gt;Windows Phone is a great OS, but there’s no penetration at the moment, and who knows if there ever will be one. Microsoft seems to be moving very slowly in adding new/missing features, which is something I wasn’t expecting.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Development&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;On the development front, I think Microsoft is the strongest player. Great development tools, innovation in languages, .Net is miles ahead of other platforms. And Microsoft is also becoming very good at incorporating ideas from other things out there, which is a very smart move.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Enterprise/Application platform space&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;The name here is Oracle. Oracle seems to be pursuing the strategy of buying more and more companies, integrating their offer, and they have a very strong application platform offer. I suspect that the sales pitch that it’s all a single “fusioned”/integrated solution is not quite true, but the fact is that it seems to be working in the market. I’ve seen more than one customer strategically decide to go for a Oracle-only approach. They may “crash and burn” if everything does end up in the cloud, but by then then can try to buy VMware and fix that IaaS problem.&lt;/p&gt;  &lt;p&gt;As to Microsoft, is has a strong OS offer, a very strong SharePoint offer (but don’t forget Oracle has WebCenter), a very strong SQL Server (&amp;amp;BI) offer, but there seems to be some disinvestment in the application server space (both in Windows Server AppFabric and BizTalk), which is where Oracle is strong. Windows and Office still own the desktop and productivity space, but those top and mid-level managers more and more walk around with their proud iPads.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Cloud&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;There are a lot of players here, but the first I think is more relevant is Amazon. They are mostly IaaS but also have several interesting PaaS things available. VMware is also a relevant name here – if they can move a VM to the cloud with the flip of a checkbox, they are in the game. &lt;/p&gt;  &lt;p&gt;As to Microsoft, even if I doubt it has the market share of Amazon, for me it has the best and most complete offering available, especially in the PaaS space. I expect it to grow and win more adoption in time, also supported by the SaaS things like Office 365, SharePoint and CRM online. The cloud seems to be one of the key bets for Microsoft at the moment, and I hope they succeed.&lt;/p&gt;  &lt;p&gt;(side-note: Office WebApps work great, but getting there is somewhat hard, compared to Google Docs, and LiveId’s authentication should be a) much faster and b) simpler).&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Google&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Strangely, I don’t see Google as a big problem for Microsoft right now, even if they hold an envious space in advertising. From what I read, Bing is very strong and innovative in the search space in other countries, especially in terms of services offered, but in Portugal the textual search is atrocious, and BingMaps seems to be the only really very strong offering. Google seems to have lost its Mojo, anyway, with the privacy issues and Google+’s failure (is it official yet?).&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Final notes&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;With all this said, these are complicated days for a Microsoft-only Systems Integrator like |create|it|. We have WP7 skills but the market doesn’t want them, only iOS and Android applications (MonoTouch/for Android may be the path here). The application platform space seems to be shrinking to Oracle, and SharePoint is no longer the same cash cow it was. As to Azure, it is steadily but &lt;strong&gt;slowly &lt;/strong&gt;gaining adoption.&lt;/p&gt;  &lt;p&gt;What to do? maybe shift strategy, turn to the consumer, either the one on the move in a mobile device, or the enterprise one in the SaaS space. Watch this space :).&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;ps- This is probably not a completely informed post, there are a lot of numbers and knowledge I don’t have and I am NOT an industry analyst, but look at it as a “vox populi” rant.&lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=17964" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Posts+in+English/default.aspx">Posts in English</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/MsdnArquitecturaPT/default.aspx">MsdnArquitecturaPT</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Sharepoint/default.aspx">Sharepoint</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Cloud+computing/default.aspx">Cloud computing</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Development/default.aspx">Development</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Xbox/default.aspx">Xbox</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Win7/default.aspx">Win7</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/WP7/default.aspx">WP7</category></item><item><title>&#171;Din&#226;mica e Motiva&#231;&#227;o de Equipas de Projecto&#187; @ NetPonto Lisboa 21/04</title><link>http://blogit.create.pt/blogs/joaomartins/archive/2012/04/17/_AB00_Din_E200_mica-e-Motiva_E700E300_o-de-Equipas-de-Projecto_BB00_-_4000_-NetPonto-Lisboa-21_2F00_04.aspx</link><pubDate>Tue, 17 Apr 2012 23:30:18 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:17963</guid><dc:creator>jota</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;Recently I’ve been doing a presentation with my colleague &lt;a href="http://blogit.create.pt/blogs/andrevala" target="_blank"&gt;André Vala&lt;/a&gt; in academic events (namely IST’s &lt;a href="http://sinfo.org/XIX/" target="_blank"&gt;SINFO XIX&lt;/a&gt; and &lt;a href="http://enei2012.fcul.openvservers.org/" target="_blank"&gt;FC-UL’s ENEI 2012&lt;/a&gt;), themed “&lt;em&gt;Architecture of Complex Software Solutions @ Create It&lt;/em&gt;». My part of the session was originally meant to be about the the high-level architecture of a very large project we are working on at the moment. &lt;/p&gt;  &lt;p&gt;While developing the contents for the presentation, however, I felt that architecture and technology were no longer on the top of the relevant issues list on the project - the main obstacles were solved in the first few sprints. &lt;/p&gt;  &lt;p&gt;I once read this saying «&lt;em&gt;When you solve your largest problem, your second largest problem becomes your largest problem&lt;/em&gt;», and this made me center the presentation about what I felt was the most relevant and important challenge for the success of the project – &lt;strong&gt;team dynamics&lt;/strong&gt;.&lt;/p&gt;  &lt;p&gt;I later decided to expand these contents to include other projects I was involved with in the past and which I feel made me learn valuable lessons in how to manage a team to achieve the highest motivation an productivity, and this resulted in the presentation I’m going to deliver at &lt;a href="http://netponto.org/reuniao/28a-reuniao-presencial-da-comunidade-netponto-em-lisboa/" target="_blank"&gt;Netponto in Lisboa next Saturday&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;I am nor an expert on team dynamics nor a psychologist, so this will be a very practical session where my goal is to share my experience and – to put it in technical terms – some [behavioral/organizational] patterns which might perhaps help you on your next projects.&lt;/p&gt;  &lt;p&gt;Come and share &lt;strong&gt;your&lt;/strong&gt; experience :).&lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=17963" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Posts+in+English/default.aspx">Posts in English</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/MsdnArquitecturaPT/default.aspx">MsdnArquitecturaPT</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Arquitectura/default.aspx">Arquitectura</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Development/default.aspx">Development</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Netponto/default.aspx">Netponto</category></item><item><title>AutoMapper Revisited</title><link>http://blogit.create.pt/blogs/joaomartins/archive/2012/03/26/AutoMapper-Revisited.aspx</link><pubDate>Mon, 26 Mar 2012 11:45:00 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:16911</guid><dc:creator>jota</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;A few months back I &lt;a href="http://blogit.create.pt/blogs/joaomartins/archive/2011/08/09/AutoMapper.aspx" target="_blank"&gt;posted about AutoMapper&lt;/a&gt;, a tool for which I had use in a project. One of the characteristics of &lt;strong&gt;AutoMapper&lt;/strong&gt; is that, when it can&amp;rsquo;t map a given attribute, if fails silently. For example, if attribute A in the source object is renamed to B and there is no B in the target object, we don&amp;rsquo;t get any exception or error back. This is the normal behavior, ignore what it can&amp;rsquo;t map.&lt;/p&gt;&lt;p&gt;The side effect of this is that when you change the source or destination classes, unless you have unit tests, you can get had to find errors. For this reason (and we &lt;strong&gt;do&lt;/strong&gt; &lt;strong&gt;have&lt;/strong&gt; unit tests), I opted for the progressive removal of &lt;strong&gt;AutoMapper&lt;/strong&gt; in the project. Now the mappers simply break compilation when the classes change, and the fixes are simple to make. The convenience wasn&amp;rsquo;t worth it.&lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=16911" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Posts+in+English/default.aspx">Posts in English</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/MsdnArquitecturaPT/default.aspx">MsdnArquitecturaPT</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Desenvolvimento/default.aspx">Desenvolvimento</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Development/default.aspx">Development</category></item><item><title>|create|it| wins the Best Public Website award</title><link>http://blogit.create.pt/blogs/antoniovargas/archive/2012/02/02/_7C00_create_7C00_it_7C00_-wins-the-Best-Public-Website-award.aspx</link><pubDate>Thu, 02 Feb 2012 14:27:57 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:13733</guid><dc:creator>antoniovargas</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;I´m proud to annunciate that create|it| (the company where i work) is the winner of the European SharePoint Community Awards 2012 in the “Best Puplic Website” category.&lt;/p&gt;  &lt;p&gt;So many months of hard team work to make the better for the Pestana Websites using SharePoint 2010 environment.&lt;/p&gt;  &lt;p&gt;I'm a member of the fantastic team that work in this project and I want to congratulate everyone (my colleagues, my company, the client stakeholders, the design company).&lt;/p&gt;  &lt;p&gt;For more information about this award:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://sharepointeurope.com/content/award-winners-2012.aspx"&gt;http://sharepointeurope.com/content/award-winners-2012.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Pestana Websites:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.pestana.com"&gt;http://www.pestana.com&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.pousadas.pt"&gt;http://www.pousadas.pt&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.pestanapriority.com"&gt;http://www.pestanapriority.com&lt;/a&gt;&lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=13733" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/antoniovargas/archive/tags/Sharepoint/default.aspx">Sharepoint</category><category domain="http://blogit.create.pt/blogs/antoniovargas/archive/tags/SharePoint+2010/default.aspx">SharePoint 2010</category></item><item><title>BizTalk 2010 R2 announced</title><link>http://blogit.create.pt/blogs/joaomartins/archive/2011/12/12/BizTalk-2010-R2-announced.aspx</link><pubDate>Mon, 12 Dec 2011 11:16:37 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:11716</guid><dc:creator>jota</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Last week Microsoft announced the &lt;a href="http://blogs.msdn.com/b/biztalk_server_team_blog/archive/2011/12/08/biztalk-server-2010-r2.aspx" target="_blank"&gt;next release of BizTalk Server&lt;/a&gt;, for now called 2010 R2. &lt;a href="http://geekswithblogs.net/cyoung/archive/2011/12/09/biztalk-server-2010-r2-announced.aspx" target="_blank"&gt;Charles Young already wrote an overview of the features and product positioning&lt;/a&gt;, but I highlight two: the &lt;strong&gt;support for Informix V11&lt;/strong&gt; (I’ve had this need more than once, and had to resort to ODBC as an alternative – it was even announced for BizTalk 2010 and then dropped in RTM), and the &lt;strong&gt;further integration with the Azure Service Bus&lt;/strong&gt;. The current &lt;a href="http://www.microsoft.com/download/en/details.aspx?id=19638" target="_blank"&gt;BizTalk Server 2010 Feature Pack&lt;/a&gt; already supports limited integration with it – basically, exposing services in the bus, but in my tests I’ve had inconsistent behavior using it and connection drops, and the lack of logging is a problem.&lt;/p&gt;  &lt;p&gt;I also find the new licensing models interesting, namely to support hosting scenarios, but I can’t really see how the product is going to support this if it doesn’t support application isolation today.&lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=11716" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Posts+in+English/default.aspx">Posts in English</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/BizTalk+Server/default.aspx">BizTalk Server</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Azure/default.aspx">Azure</category></item><item><title>Silverlight 5 Available for Download Today</title><link>http://blogit.create.pt/blogs/raulribeiro/archive/2011/12/10/Silverlight-5-Available-for-Download-Today.aspx</link><pubDate>Sat, 10 Dec 2011 14:36:00 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:11658</guid><dc:creator>admin</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;&lt;a href="http://blogs.msdn.com/b/silverlight/archive/2011/12/09/silverlight-5-available-for-download-today.aspx"&gt;http://blogs.msdn.com/b/silverlight/archive/2011/12/09/silverlight-5-available-for-download-today.aspx&lt;/a&gt;&lt;/p&gt;&lt;p style="margin-top:12px;color:#000000;font-family:Arial;font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:18px;orphans:2;text-align:left;text-indent:0px;text-transform:none;white-space:normal;widows:2;word-spacing:0px;-webkit-text-size-adjust:auto;-webkit-text-stroke-width:0px;background-color:#ffffff;"&gt;New features in Silverlight 5 include Hardware Decode of H.264 media, which provides a significant performance improvement with decoding of unprotected content using the GPU; Postscript Vector Printing to improve output quality and file size; and an improved graphics stack with 3D support that uses the XNA API on the Windows platform to gain low-level access to the GPU for drawing vertex shaders and low-level 3D primitives.&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span" style="font-family:Arial;font-size:12px;line-height:18px;"&gt;In addition, Silverlight 5 extends the &amp;lsquo;Trusted Application&amp;rsquo; model to the browser for the first time. These features, when enabled via a group policy registry key and an application certificate, mean users won&amp;rsquo;t need to leave the browser to perform complex tasks such as multiple window support, full trust support in browser including COM and file system access, in browser HTML hosting within Silverlight, and P/Invoke support for existing native code to be run directly from Silverlight.&lt;/span&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=11658" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/raulribeiro/archive/tags/Silverlight/default.aspx">Silverlight</category></item><item><title>SharePoint Tip #27: Choice Columns and DataSheet Views</title><link>http://blogit.create.pt/blogs/andrevala/archive/2011/10/30/SharePoint-Tip-_2300_27_3A00_-Choice-Columns-and-DataSheet-Views.aspx</link><pubDate>Sun, 30 Oct 2011 21:09:19 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:10871</guid><dc:creator>andrevala</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;Using features to create &lt;strong&gt;Choice&lt;/strong&gt; site columns is pretty straightforward (check &lt;a href="http://blogit.create.pt/blogs/andrevala/archive/2008/03/26/SharePoint-2007-Deployment_3A00_-Site-Column-Features.aspx" target="_blank"&gt;this post&lt;/a&gt; for additional information). See below a sample feature element for that purpose.&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;lt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;" color="#a31515"&gt;Field &lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#a31515"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#ff0000"&gt;ID&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;"&gt;&amp;quot;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;{538c71e4-8650-4ce7-b021-920effa66346}&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:;"&gt;&lt;font color="#ff0000"&gt;Type&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;Choice&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:;"&gt;&lt;font color="#ff0000"&gt;Name&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;Publishing_x0020_Status&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:;"&gt;&lt;font color="#ff0000"&gt;StaticName&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;Publishing_x0020_Status&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:;"&gt;&lt;font color="#ff0000"&gt;DisplayName&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;Publishing Status&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:;"&gt;&lt;font color="#ff0000"&gt;Required&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;FALSE&lt;/font&gt;&lt;/span&gt;&amp;quot;&amp;#160; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:;"&gt;&lt;font color="#ff0000"&gt;Format&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;Dropdown&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:;"&gt;&lt;font color="#ff0000"&gt;FillInChoice&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;FALSE&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:;"&gt;&lt;font color="#ff0000"&gt;Group&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;Custom Columns&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;/font&gt;&lt;span style="color:;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#a31515"&gt;Default&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;"&gt;Not Published&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;&amp;lt;/&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#a31515"&gt;Default&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="color:;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#a31515"&gt;CHOICES&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#a31515"&gt;CHOICE&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;"&gt;Not Published&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;/&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#a31515"&gt;CHOICE&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#a31515"&gt;CHOICE&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;"&gt;Pending&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;&amp;lt;/&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#a31515"&gt;CHOICE&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="color:;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#a31515"&gt;CHOICE&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;"&gt;Published&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;&amp;lt;/&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#a31515"&gt;CHOICE&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="color:;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#a31515"&gt;CHOICE&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;"&gt;Error&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;&amp;lt;/&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#a31515"&gt;CHOICE&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="color:;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;/&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#a31515"&gt;CHOICES&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;lt;/&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#a31515"&gt;Field&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;Although the XML is well formed and all the attributes and values are correct, this field definition has a problem. If you create a site column using this definition, here is what happens:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;If you check the site column configuration in SharePoint, everything will look fine&lt;/li&gt;    &lt;li&gt;If you add this site column to a list (either through a content type, or directly) and you edit an item using the default list forms, everything will work as expected.&lt;/li&gt;    &lt;li&gt;If you try to edit the list items using a &lt;strong&gt;DataSheet View&lt;/strong&gt;, you won’t be able to select any value from this choice field and SharePoint will always throw a validation error.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;The problem here are the invisible characters (spaces, newlines and tabs) between the &lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;lt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#a31515"&gt;CHOICE&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt; and &lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;&amp;lt;/&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#a31515"&gt;CHOICE&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="color:;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt; tags and their inner values. Apparently, when using list forms these characters are trimmed from the valid choices, but when using the datasheet view they are not, causing a strange behavior when editing an item in that view.&lt;/p&gt;  &lt;p&gt;The correct definition for this field would be:&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;lt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;" color="#a31515"&gt;Field &lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#a31515"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#ff0000"&gt;ID&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;"&gt;&amp;quot;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;{538c71e4-8650-4ce7-b021-920effa66346}&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:;"&gt;&lt;font color="#ff0000"&gt;Type&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;Choice&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:;"&gt;&lt;font color="#ff0000"&gt;Name&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;Publishing_x0020_Status&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:;"&gt;&lt;font color="#ff0000"&gt;StaticName&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;Publishing_x0020_Status&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:;"&gt;&lt;font color="#ff0000"&gt;DisplayName&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;Publishing Status&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:;"&gt;&lt;font color="#ff0000"&gt;Required&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;FALSE&lt;/font&gt;&lt;/span&gt;&amp;quot;&amp;#160; &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:;"&gt;&lt;font color="#ff0000"&gt;Format&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;Dropdown&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:;"&gt;&lt;font color="#ff0000"&gt;FillInChoice&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;FALSE&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:;"&gt;&lt;font color="#ff0000"&gt;Group&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;Custom Columns&lt;/font&gt;&lt;/span&gt;&amp;quot;&lt;/font&gt;&lt;span style="color:;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#a31515"&gt;Default&lt;/font&gt;&lt;/span&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;"&gt;Not Published&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;&amp;lt;/&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#a31515"&gt;Default&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="color:;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#a31515"&gt;CHOICES&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#a31515"&gt;CHOICE&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;"&gt;Not Published&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;lt;/&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#a31515"&gt;CHOICE&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#a31515"&gt;CHOICE&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;"&gt;Pending&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;&amp;lt;/&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#a31515"&gt;CHOICE&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="color:;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#a31515"&gt;CHOICE&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;"&gt;Published&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;&amp;lt;/&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#a31515"&gt;CHOICE&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="color:;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#a31515"&gt;CHOICE&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;"&gt;Error&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="color:;"&gt;&lt;font color="#0000ff"&gt;&amp;lt;/&lt;/font&gt;&lt;/span&gt;&lt;span style="color:;"&gt;&lt;font color="#a31515"&gt;CHOICE&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="color:;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;/&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#a31515"&gt;CHOICES&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="margin:0cm 0cm 0pt;" class="MsoNormal"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:10pt;"&gt;&amp;lt;/&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:10pt;"&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font color="#a31515"&gt;Field&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="font-family:;color:;mso-ansi-language:en;mso-fareast-language:pt;"&gt;&lt;font style="font-size:10pt;" color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=10871" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/andrevala/archive/tags/Tips+and+Tricks/default.aspx">Tips and Tricks</category><category domain="http://blogit.create.pt/blogs/andrevala/archive/tags/Deployment/default.aspx">Deployment</category><category domain="http://blogit.create.pt/blogs/andrevala/archive/tags/SharePoint+2010/default.aspx">SharePoint 2010</category></item><item><title>AutoMapper</title><link>http://blogit.create.pt/blogs/joaomartins/archive/2011/08/09/AutoMapper.aspx</link><pubDate>Tue, 09 Aug 2011 13:52:19 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:9613</guid><dc:creator>jota</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;&lt;a href="http://automapper.codeplex.com/" target="_blank"&gt;AutoMapper&lt;/a&gt; is a «&lt;em&gt;convention-based object-to-object mapper&lt;/em&gt;». According to the description, «&lt;em&gt;AutoMapper uses a fluent configuration API to define an object-object mapping strategy. AutoMapper uses a convention-based matching algorithm to match up source to destination values. Currently, AutoMapper is geared towards model projection scenarios to flatten complex object models to DTOs and other simple objects, whose design is better suited for serialization, communication, messaging, or simply an anti-corruption layer between the domain and application layer.&lt;/em&gt;»     &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;I’ve been using AutoMapper to map entity objects between data and service layers, as well as service and UI layers. What I mean with mapping is doing stuff such as:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font face="Consolas"&gt;public TDestination Map(TSource src) &lt;/font&gt;&lt;font face="Consolas"&gt;{&lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font face="Consolas"&gt;TDestination dest = new TDestination ();&lt;/font&gt;&lt;/p&gt;    &lt;p&gt;&lt;font face="Consolas"&gt;dest.Field1 = src.Field1;&lt;/font&gt;&lt;/p&gt;    &lt;p&gt;&lt;font face="Consolas"&gt;dest.Field2 = src.Field2 + src.Field3;&lt;/font&gt;&lt;/p&gt;    &lt;p&gt;&lt;font face="Consolas"&gt;dest.Field3 = src.Field10;&lt;/font&gt;&lt;/p&gt;    &lt;p&gt;&lt;font face="Consolas"&gt;// …&lt;/font&gt;&lt;/p&gt;    &lt;p&gt;&lt;font face="Consolas"&gt;return dest;&lt;/font&gt;&lt;/p&gt;    &lt;p&gt;}&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;This is boring and repetitive code, and it’s what AutoMapper wants to avoid writing.&lt;/p&gt;  &lt;p&gt;In its simplest usage, we setup the mapper with:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font face="Consolas"&gt;using AutoMapper;&lt;/font&gt;&lt;/p&gt;    &lt;p&gt;&lt;font face="Consolas"&gt;[…]&lt;/font&gt;&lt;/p&gt;    &lt;p&gt;&lt;font face="Consolas"&gt;Mapper.CreateMap&amp;lt;TSource , TDestination&amp;gt;();&lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;and then convert by calling:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font face="Consolas"&gt;TDestination dest = Mapper.Map&amp;lt;TSource , TDestination&amp;gt;(srcObject);&lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;By default, AutoMapper only maps properties that have the same names on the source and destination, however you can parameterize the mapper in a different way. For example, assuming that Field10 in TSource becomes Field3 in TDestination, you can write:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font face="Consolas"&gt;Mapper.CreateMap&amp;lt;TSource , TDestination&amp;gt;()        &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; .ForMember( dst =&amp;gt; dst.Field3, options =&amp;gt; options.MapFrom(src =&amp;gt; src.Id));&lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;You can add as many ForMember clauses as you want. Also note that dst, options are src are not variable names, but are part of the lambda function definitions.&lt;/p&gt;  &lt;p&gt;After the map is setup like this, the call to Map will now convert the objects correctly.&lt;/p&gt;  &lt;p&gt;So AutoMapper is an extremely convenient way to map between objects, and more convenient the more similarity there is in the names of the properties of the objects being mapped. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;However&lt;/strong&gt;, and quite obviously, AutoMapper does this by using reflection, and I wanted to measure the impact of doing these conversions this way, compared with the hand-coded assignments shown at the top.&lt;/p&gt;  &lt;p&gt;I created two examples: in the first, the two objects have exacly the same structure, so AutoMapper does all the work. In the second, the destination type has the same fields, but with different names, so I had to use ForMember once for each of the 6 fields in my test classes.&lt;/p&gt;  &lt;p&gt;I then created a loop that converted using either of the two methods a number of times and printed out the elapsed time. Here are the results:&lt;/p&gt;  &lt;table cellspacing="0" cellpadding="2"&gt;     &lt;tr&gt;       &lt;td&gt;Type of Conversion&lt;/td&gt;        &lt;td&gt;Number of loop iterations&lt;/td&gt;        &lt;td&gt;Elapsed time using AutoMapper&lt;/td&gt;        &lt;td&gt;Elapsed time hand-coded map&lt;/td&gt;        &lt;td&gt;Ratio&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td&gt;Direct&lt;/td&gt;        &lt;td&gt;100.000&lt;/td&gt;        &lt;td&gt;2 sec, 165 ms&lt;/td&gt;        &lt;td&gt;20 ms&lt;/td&gt;        &lt;td&gt;1:108&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td&gt;With Property Renames&lt;/td&gt;        &lt;td&gt;100.000&lt;/td&gt;        &lt;td&gt;3 mins, 14 secs, 157ms&lt;/td&gt;        &lt;td&gt;25 ms&lt;/td&gt;        &lt;td&gt;1:7726&lt;/td&gt;     &lt;/tr&gt;   &lt;/table&gt;  &lt;p&gt;The first time was according to what I expected, but the second was actually much larger.&lt;/p&gt;  &lt;p&gt;Getting these results, I then tried an optimization, which was to create the map outside of the test loop – but still after the timer start (assuming it could be created and stored in some in-memory cache), and re-ran the tests. This time the results where much better, especially in the renames case, showing that setting up the map with renames can have a large impact on the execution times. The following table shows the results.&lt;/p&gt;  &lt;table cellspacing="0" cellpadding="2"&gt;     &lt;tr&gt;       &lt;td&gt;Type of Conversion&lt;/td&gt;        &lt;td&gt;Number of loop iterations&lt;/td&gt;        &lt;td&gt;Elapsed time using AutoMapper&lt;/td&gt;        &lt;td&gt;Elapsed time hand-coded map&lt;/td&gt;        &lt;td&gt;Ratio&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td&gt;Direct&lt;/td&gt;        &lt;td&gt;100.000&lt;/td&gt;        &lt;td&gt;2 sec, 611 ms&lt;/td&gt;        &lt;td&gt;24 ms&lt;/td&gt;        &lt;td&gt;1:109&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td&gt;With Property Renames&lt;/td&gt;        &lt;td&gt;100.000&lt;/td&gt;        &lt;td&gt;2 sec, 508 ms&lt;/td&gt;        &lt;td&gt;27 ms&lt;/td&gt;        &lt;td&gt;1:93&lt;/td&gt;     &lt;/tr&gt;   &lt;/table&gt;  &lt;p&gt;Quite surprising that the renames option is now actually faster than the automatic direct conversion.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;My conclusion:&lt;/strong&gt; I’ll go on using &lt;a href="http://automapper.codeplex.com/" target="_blank"&gt;AutoMapper&lt;/a&gt; for its convenience when writing code, but if performance is an issue, I’ll just directly hand-code the mapping.     &lt;br /&gt;Pre-creating and populating a cache of Mappers would also be a viable alternative, but hard to justify in terms or architecture.&lt;/p&gt;  &lt;p&gt;Check out the &lt;a href="http://automapper.codeplex.com/" target="_blank"&gt;codeplex site&lt;/a&gt; for more features of AutoMapper, such as Flattening or Projection, or contact me if you want the source code I used for these tests.&lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=9613" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Posts+in+English/default.aspx">Posts in English</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/MsdnArquitecturaPT/default.aspx">MsdnArquitecturaPT</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Desenvolvimento/default.aspx">Desenvolvimento</category><category domain="http://blogit.create.pt/blogs/joaomartins/archive/tags/Development/default.aspx">Development</category></item><item><title>SharePoint Tip #26: Comments in Content Type Definition</title><link>http://blogit.create.pt/blogs/andrevala/archive/2011/08/06/SharePoint-Tip-_2300_26_3A00_-Comments-in-Content-Type-Definition.aspx</link><pubDate>Sat, 06 Aug 2011 20:33:56 GMT</pubDate><guid isPermaLink="false">82e6d864-cc1c-4326-bdf8-b027608494f4:9574</guid><dc:creator>andrevala</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;There is an issue with SharePoint 2010’s CAML parser that causes SharePoint to ignore fields in a Content Type definition. When defining a Content Type feature element, avoid placing comments inside the &lt;code&gt;&amp;lt;fieldrefs&amp;gt;&lt;/code&gt; element as that will cause SharePoint to create the Content Type disregarding all the fields, even though the XML is well formed.&lt;/p&gt;  &lt;p&gt;&lt;code&gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot; ?&amp;gt;      &lt;br /&gt;&amp;lt;Elements xmlns=&amp;quot;http://schemas.microsoft.com/sharepoint/&amp;quot;&amp;gt;       &lt;br /&gt;&amp;#160; &amp;lt;ContentType       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; ID=&amp;quot;0x0100C5647A362F236548B218C15302286758&amp;quot;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Name=&amp;quot;MyCT&amp;quot;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Description=&amp;quot;Simple Custom Content Type&amp;quot;&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Inherits=&amp;quot;TRUE&amp;quot;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Overwrite=&amp;quot;TRUE&amp;quot;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Version=&amp;quot;0&amp;quot;&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;Folder TargetName=”_cts/MyCT” /&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;strong&gt;&amp;lt;FieldRefs&amp;gt;&lt;/strong&gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;FieldRef ID=&amp;quot;{fa564e0f-0c70-4ab9-b863-0177e6ddd247}&amp;quot; Name=&amp;quot;Title&amp;quot; /&amp;gt;       &lt;br /&gt;      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;strong&gt;&lt;font color="#ff0000"&gt;&amp;lt;!-- This is a comment –-&amp;gt;&lt;/font&gt;&lt;/strong&gt;&amp;#160;&amp;#160;&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;FieldRef ID=&amp;quot;{b402db15-ee44-4ec4-89e3-23e10a8fc64c}&amp;quot; Name=&amp;quot;My_x0200_Field&amp;quot; /&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;FieldRef ID=&amp;quot;{538c71e4-8650-4ce7-b021-920effa66346}&amp;quot; Name=&amp;quot;Status&amp;quot; /&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;strong&gt;&amp;lt;/FieldRefs&amp;gt;&lt;/strong&gt;       &lt;br /&gt;&amp;#160; &amp;lt;/ContentType&amp;gt;       &lt;br /&gt;&amp;lt;/Elements&amp;gt; &lt;/code&gt;&lt;/p&gt;  &lt;p&gt;The Content Type feature element above will cause the Content Type to be created with only the Title field, which is inherited from the parent Content Type. All the fields referenced in this Content Type definition will be ignored.&lt;/p&gt;&lt;img src="http://blogit.create.pt/aggbug.aspx?PostID=9574" width="1" height="1"&gt;</description><category domain="http://blogit.create.pt/blogs/andrevala/archive/tags/Tips+and+Tricks/default.aspx">Tips and Tricks</category><category domain="http://blogit.create.pt/blogs/andrevala/archive/tags/Deployment/default.aspx">Deployment</category><category domain="http://blogit.create.pt/blogs/andrevala/archive/tags/SharePoint+2010/default.aspx">SharePoint 2010</category></item></channel></rss>