What resources would you recommend to someone who would like to learn and possibly become a SharePoint Developer?
I also highly recommend Todd's book for beginners; it offers a nice introduction and enough hard-core stuff to keep you busy for a while. AC's book is very nice, but suffers slightly from being one of the first books out there and doesn't harness as much of the best practices material and tools that have emerged in the last two years.
In addition, I've learned a lot Woody's SharePoint Designer book, offering a less hard-core approach to creating SharePoint solutions. Solutions as in the lexical sense, not the SharePoint sense :-)
Of course, I'd like to plug my own Beginning SharePoint Development issue of USPJ as well, http://www.beginningsharepointdevelopment.com/. That issue focuses on the core stuff for ASP.NET devs, and while it doesn't target SP2010 specifically, it does target features that are not changing drastically, so it might help new SP2010-people as well.
I just had a case of dejavu with this question, and sure enough I ran across it and answered on StackOverflow here. Anyway though, I think I'd still say the same. Ted Pattison's Inside WSS 3.0 is still the best- but for new SPDev's, I've had the best luck giving my staff Scot Hiller's Microsoft SharePoint: Building Office 2007 Solutions in C# 2005.
Here's the author's quote about the intended audience:
"..the audience for this book is an intermediate professional developer who was just assigned the project of bringing SharePoint 2007 into the organization."
One of the places I recommend SharePoint rookies to head over to is the SharePoint developer introduction for .NET developers that Microsoft is hosting. It contains awesome introductry materials in lots of different forms:
There are a handful of topics covered to get you all ramped up and ready to rock the SharePoint world!
I agree with Wictor - some great samples on the MSSharePoint Developer site.
Although Todds book came out earlier I actually found Teds Inside WSS book better to read (sorry Todd).
And as other have said, just get practiced at doing decent .Net development. Understand the basics of of syntax, classes, objects and generally good dev experience.
Also don't forget to check out the SPDisposeCheck tool once you start writing code.
My favorite books:
The major stumbling block that I fell over when starting SharePoint development was to try a "code" everything. I think this came from reading lots of books and then just wanting to jump in and play with the "cool code".
One of the main benefits of SharePoint is that it has so many pre built "modules" (web parts, site templates, workflows, etc) out of the box. Its often possible to solve business problems without writing a line of code. So make sure you know as much about the OOTB stuff as possible before embarking on coded solutions.
Next, learn about the feature and solution framework before starting your code. EVERY piece of code you write should be built in to a feature and packaged up as a solution. You should think of your coded component as a module which is going to be added to the SharePoint platform.
In terms of books my top 3 list would be exactly the same as Ovidiu Becheş-Puia mentioned:-
(I think my question is sufficiently different from this question to justify asking it. My question is not about useful SharePoint resources, but what technical skills you actually need...) I'm a developer (from a Linux background...) and will soon be getting my hands dirty with SharePoint (as both a developer and to some extent an infrastructure guy.) I'm interested to learn what I should brush up on. Just a simple question -- what technical skills do you find you need to know a lot about as someone who develops/deploys SharePoint? From what I've gathered so far, I would guess
When you activate Group Work Lists feature in a site you get the resources list and a few other lists. If you had the resources list to a page then you can see the list and you have to add each resource list to the page using the resources link. What I would like to do is have the resources already included on the page when a user visits the site. So if I have 3 Digital cameras, you can see the bookings for those cameras by defualt without having to add each one as a resource. Does anyone know how to do this? Does that clarify the situation any better? I will try and add screenshots
I have an InfoPath form that starts a workflow (on item created). The business requirement is that after submission form must be read-only (no changes to the initial request can be made). However workflow must change certain properties of the form (e.g. approval time, approval phase etc.). By default SharePoint workflows run under initiator account, however I am wondering would you recommend creating an event handler that is going to kick start a workflow under system account. Workflow would than be able to revoke all the contribute privileges but still be able to update the form during
SharePoint 2010 appears to continue SharePoint 2007's tradition of automatically creating horribly named SQL Databases. Like many companies we have multiple farms and developer workstations connecting to a central database server. To make sure things don't become messy and difficult to manage, we prefer to use database names such as: DEV_WS004_SharePoint_AdminContent DEV_WS004_User Profile... multiple SharePoint 2010 farms connected to a single database server then you can see which databases belong to a farm on the following Central Administration screen: http://[Your CA Server]/_admin
I was reading someone else's post on comparing some of the wsp building tools when someone stated you could reverse engineer something like a .stp file created site into source files (for example the fab-40 application templates). I would really like to know how to do this as there are a few of the templates that are like 80% of what I need to build a solution. I think it would have been awesome had MS released the source files for all 40 of the templates!
How can I get the selected language in the screenshot, from inside of a webpart? alt text http://thomasstock.net/currentlanguage.png I'm using SharePoint 2010. My webpart is a "visual web part" created in VS2010. I'm trying things like SPContext.Current.Web.CurrentUser.RegionalSettings and SPContext.Current.Web.Language" but ofcourse these things have nothing to do with that setting. :-| Can someone please help me? What property am I looking for.
user can open it for editing? Is there any way through the SharePoint UI or APIs to tell who SharePoint thinks has the document open for editing (although in some cases that seems like it is going to be the user who is getting blocked). I am stumped and would appreciate any help or suggestions. ... and then return and get the above message. Waiting for a while can help, but it doesn't seem like even SharePoint's inactivity timeout always does the trick. And here's the strangest part - while
I currently have a normal SharePoint list with about 15 columns or so. I need one of the columns to have a list of links. I know SharePoint lets you have 1 link and it also lets you have multiple lines of text... So I thought it would be there as an option, but no such luck. Anyone knows a solution for this? I wasn't able to find any info online, which doesn't happen often. I guess I wasn't looking for the right keywords? If anyone can point me into the right direction, it would be great! Thanks -V p.s. I'm reposting this question in this site due to a suggestion from someone
applications inside Sharepoint), but I wouldn't want to do it that way even though it would be much easier for me to develop such applications, because I'm primarily hardcore Asp.net MVC developer... any development experience in Sharepoint I can't really say which ones are going to be imperative for my application. I would like to do it on Foundation, because I can re-sell the app without... on the BCS level within Sharepoint then, but I'd still need my rich custom controls, that would display data in unusual ways. What about sandboxed solutions? Is this something I should use