This is the question I have received from many people. Even they are not working in Microsoft related technologies they like to work on SharePoint 2010 [only because the demand and features it has]. So, to learn SharePoint 2010 what are the technologies you have to know or what are the main concepts you should be strong at, this is what we will discuss in this post.
The technologies/concepts you have to know as a Developer:
- ASP.NET/C#: SharePoint 2010 is completely built on ASP.NET 3.5 whereas SharePoint 2007 is built upon ASP.NET 2.0. So, if you know basic ASP.NET 3.5 features then you get better ideas in implementing SharePoint 2010 coding and better understand concepts.
- SQL Server: This is very important to know as SharePoint A-Z stores in database only.
- Windows Workflow Foundation: There are workflows in SharePoint which is useful to solve business process problems. To create the workflows either in SharePoint designer or custom workflows you should have idea of WWF.
- XML/XSLT: I can say everything in SharePoint is XML. So, if you are strong in XML then you rock. XSLT is applying styles for XML.
- AJAX/Java script: AJAX is a generic concept and in ASP.NET the implementation is a bit different and you may need to know the general concept on how it works. Along with that you have to know java script.
- Windows Communication Foundation: WCF is very popular these days as it has very good features. SharePoint 2010 is using WCF Services instead of Web Services. So, to work with them you have to know it. [For SharePoint 2007 it is not needed]
- Silverlight: There are modules in SharePoint 2010 developed in Silverlight. And the integration of Silverlight code to SharePoint is also very easy now. [For SharePoint 2007 it may not be needed, but you can create custom Silverlight module and deploy to SharePoint 2007]
- Internet Information Services: You have to know what is IIS and how it works.
The technologies/concepts you have to know as an Administrator:
- SQL Server
- Windows Server
- SharePoint Designer
So, these are preliminary set of things everyone should know before learning SharePoint 2010. No need to know everything very deep, but you have to get complete idea of what it is and how they work. So, it may take around a month to know about these concepts and start learning SharePoint 2010. If you try to learn directly SharePoint 2010 without knowing these concepts you may successful in doing content management, SharePoint designer workflows, customize the look and feel etc. but do not know what is happening inside and how they work. You cannot do any coding etc. So, make sure you are spending good amount of time to learn these before jump directly. Hope this helps you.