Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

What IS SharePoint Development?


Published on


Published in: Technology

What IS SharePoint Development?

  1. 1. What IS SharePoint Development? SPTechCon Boston 2012 Mark
  2. 2. About Mark Rackley• Solutions Architect & Developer at Summit 7 Systems• 17+ years software architecture and development experience• Blogger, Writer, Speaker•• @mrackley•
  3. 3. Agenda• What’s the big deal?• Define “Development”• Types of SharePoint Development – What it is – Benefits – Disadvantages – Skills needed• Demos
  4. 4. Can’t we all just get along?WHAT’S THE BIGDEAL?
  5. 5. What’s The Big Deal?• You need to know the best tool for a job – Efficiently design solutions – Avoid unnecessary work• Make sure you are hiring the right person for the job – Can they do the job? – Will they cause more problems than they will solve? – Know the right questions to ask
  6. 6. Let’s start at the beginning…DEFINE “DEVELOPMENT”
  7. 7. Define “Developer”developer (dɪˈvɛləpə)—n1 person or thing that a.develops something
  8. 8. Define “Development”develop (dɪˈvɛləp)— vb1. to come or bring to a later or more advanced or expanded stage; grow or cause to grow gradually2. to elaborate or work out in detail3. to come or bring into existence; generate or be generated
  9. 9. Define “Development”• #1 Mistake SharePoint “developers” make? – Opening Visual Studio – Development is not necessarily code
  10. 10. There’s more than one?TYPES OF SHAREPOINTDEVELOPMENT
  11. 11. So easy, even a manager can do it…OUT OF THE BOX(OOB)
  12. 12. Out of the Box (OOB)• Performed in SharePoint.• No external tools, little or no code• Create sites, lists, custom views, alerts, dashboards and simple applications using web parts and web part connections
  13. 13. Out of the Box (OOB)• Benefits – No code – No external tools – Even your boss could do it – Fewest upgrade issues• Disadvantages – Will rarely be enough – It’s not idiot proof – Even your boss can do it
  14. 14. Out of the Box (OOB)• Skills needed – Understanding of the ins and outs of SharePoint – Knowledge of the out of the box web parts• Bottom Line – Essential to understand for all types of SharePoint Development – Most under utilized development approach by traditional developers – Always start here first – Attend some end user sessions
  15. 15. Much better than it used to be…SHAREPOINT DESIGNER
  16. 16. SharePoint Designer (SPD)• Free development tool• Users SharePoint’s Web Services to communicate with your site• Create SharePoint objects, edit forms, DataViewWebParts, connections to external lists, essential for developing branding.
  17. 17. SharePoint Designer (SPD)• Benefits – More options than OOB – More control over look and feel – Remote development! – SPD Workflows• Disadvantages – Still has limitations – Deployment is messy (or develop in production) – Customizing (unghosting)
  18. 18. SharePoint Designer (SPD)• Skills needed – OOB Skills – HTML, CSS, XML, XSL, JavaScript• Bottom Line – Don’t hate, much improved from MOSS – Essential tool for skilled designers, site admins, and quick tweaks in production.
  19. 19. With great power comes great responsibility…JAVASCRIPT / JQUERY
  20. 20. JavaScript / jQuery • Part of that “Client Side Development” • Great for complicated business logic in tightly controlled environments • Communicate with remote servers using Web Services • Scripts can be deployed in a solution or placed in a Document Library and linked in a Content Editor Web Part
  21. 21. JavaScript / jQuery • Benefits – Can replace the need for Visual Studio for certain functionality – Does not create “points” like Sandboxed solutions – Improved user experience – It’s the future • Disadvantages – Can be difficult to maintain and debug – Anyone can do it – Can cause performance issues
  22. 22. JavaScript / jQuery • Skills needed – OOB Skills – HTML, JavaScript, jQuery, CSS, XML, XSL – Traditional developer skills • Bottom Line – Amazing, essential skill if used correctly – Becoming more important every day (sometimes only option in the cloud) – Use it wisely
  23. 23. Admins are developers in denial…POWERSHELL
  24. 24. PowerShell• Scripting environment, NOT for creating interactive SharePoint solutions• Configure farm, Deploy solutions, Create SharePoint artifacts• Tools – PowerShell – PowerShell ISE – PowerShell Plus (Idera) – PowerGUI (Quest)
  25. 25. PowerShell• Benefits – Essential for deploying solutions and doing admin work that development sometimes requires – Perfect for “run once” logic that may not make sense to deploy as a feature• Disadvantages – Not an option in the cloud – Not a tool for creating “business functionality”
  26. 26. PowerShell• Skills needed – OOB Skills – PowerShell syntax – SharePoint Object Model• Bottom Line – Might be able to live without as a developer, but can save you a lot of time and make you a more efficient developer
  27. 27. When all else fails, use a bigger stick…VISUAL STUDIO / .NET
  28. 28. Visual Studio / .NET• Create solutions that deploy files to the farm• Sometimes there is no other option• It CAN do most of what the other options can do… but… – May not be an option in your environment – May take a lot longer to develop – Deployment can add headaches
  29. 29. Visual Studio / .NET• Create solutions to deploy files to your farm so you aren’t manually copying them• Create virtually any SharePoint object including content types, site columns, lists, sites, workflows, web parts, event receivers, timer jobs, service applications, etc…• Remote development using Web Services / Client Object Model
  30. 30. Visual Studio / .NET• Benefits – Create deployable solutions – When all else fails it can get the job done – Best method for working with large amounts of data• Disadvantages – Greater skill required (bigger learning curve) – Must have access to the server to deploy features (aside from Sandbox solutions) – Can be difficult to debug in production
  31. 31. Visual Studio / .NET• Skills needed – OOB Skills – C#, .NET, SharePoint Object Model, CAML, LINQ, XML, HTML• Bottom Line – Should not always be first choice in development – By far the most powerful development option
  32. 32. *Development Option Comparison OOB SPD JavaScript PowerShell Visual StudioCreate SharePoint Objects Yes Yes Yes Yes YesDisplay information to the user(Dashboards, Reports, Dynamicinformation) Yes Yes Yes No YesExecute code with elevated privileges No No No Yes YesPerform complicated business logic No Limited Yes Yes YesEvent Receivers, Timer Jobs, ServiceApplications, Custom Search No No No No YesCreate deployable solutions No No No No Yes Not inDeploy solutions No No No Yes productionCreate List Views Yes Yes Yes Yes YesVisual enhancements such asanimations Limited It depends Yes No Yes*Most of the time
  33. 33. Learn more at…• All – Blogs, books, conferences• OOB & SPD –• jQuery & JavaScript – – The SharePoint & jQuery Guide• PowerShell – Gary Lapointe• .NET – Critical Path Training - – MindSharp -
  34. 34. I know! About time! Right?DEMOS
  35. 35. SharePoint Saturday OzarksSept. 8, 2012 Chateau On The Lake Branson, MO
  36. 36. I have an answer, let’s see if they match?QUESTIONS?