Take the 2-minute tour ×
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

Lets face it, SharePoint 2010 is a big ecosystem. You need to know the GUI, the administration options, the data model, have programming skills, know the API, know how it works internally etc etc.

I, myself, am beginner at SharePoint development.

In order to be good at it and develop solid solutions for SharePoint, what do you consider it's essential for a beginner to know and "get right" the first time?

share|improve this question
    
Look also at this post: sharepoint.stackexchange.com/questions/5544/… .Same question, different answers ;) –  Gabriel Mongeon Oct 26 '11 at 16:49
add comment

3 Answers

up vote 6 down vote accepted
  1. You need to understand SharePoint from an end-user perspective
  2. You need to try to implement business solutions using the features provided by the SharePoint platform. Only when you can't should you consider opening Visual Studio and writing custom code.
  3. You need to understand that SharePoint development is not like other .NET development. You have to have a good understanding of the SharePoint component model (Features) and deployment model (Solutions) and how these affect the way you architect your custom applications.
  4. You need to understand that SharePoint is a platform. You need to build your customizations on the platform. Data is stored in lists not an external database, security is SharePoint groups and permission sets not some custom solution, etc.
  5. You need to understand that Visual Studio is not the only way to do "development". You'll need to learn tools like SharePoint Designer and InfoPath and understand their place in the SharePoint Development world.

There's lots more but this is a good start. You may also want to watch my recorded conference session, SharePoint for ASP.NET Developers.

share|improve this answer
add comment

I'm working with SharePoint as a developer for more than a year now and the fact that I was a .Net developer before help me lot. Beside the fact that someday you will have to know everything you listed, but you also need to be good at theses skills too: EcmaScript(JavaScript), Web services, ASP.Net, .Net, XML(XSLT) and maybe Silverlight.

For a beginner stand point, I'll start learning the SP basic, such as what is a list, library, tasks, web application, site, site collection, security, etc. Than as you grow as a developer you can learn all the others tricks. Don't worry, you won't and to not need to know everything to develop your first web part! I've learn a lot doing some SP projects and I'm far from mastering everything, but I get closer everyday ;)

Take a look at the Learn section on Technet, Walkthrough and evaluation guide and the SharePoint 2010: Developer and IT professional learning plan. You can also read a book (I'm sure they have some out there) or take a class(online or offline). Online search tools are also great tools!

share|improve this answer
add comment

Once you've learnt the basics of what makes up a SharePoint site, learn to use SharePoint Designer inside out. There are countless tutorials for all sorts of little tasks, such as creating lists, columns, content types, workflows, page layouts, masterpages, custom actions, list view web parts etc. Basically, a lot of things you can do to an existing SharePoint site to build some rudimentary yet robust solutions.

Importantly, learn its limits, and what things you can do before opening Visual Studio. Sometimes you will need to dive straight into visual studio and start building solutions there in order to create redeployable packages, but it in order to make effective use of that you need to know the platform, and SharePoint Designer can help with that, very visually - moreso than the UI (in my opinion).

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.