what is sharepoint development?

36
What IS SharePoint Development? SPTechCon Boston 2012 Mark Rackley mark.rackley@summit7syste ms.com

Upload: mark-rackley

Post on 20-Jun-2015

1.562 views

Category:

Technology


3 download

DESCRIPTION

D

TRANSCRIPT

Page 1: What IS SharePoint Development?

What IS SharePoint Development?

SPTechCon Boston 2012Mark Rackley

[email protected]

Page 2: What IS SharePoint Development?

About Mark Rackley

• Solutions Architect & Developer at Summit 7 Systems• 17+ years software architecture and development experience• Blogger, Writer, Speaker• [email protected] • @mrackley• http://sharepointhillbilly.com

Page 3: What IS SharePoint Development?

• What’s the big deal?• Define “Development”• Types of SharePoint Development

– What it is– Benefits – Disadvantages– Skills needed

• Demos

Agenda

Page 4: What IS SharePoint Development?

WHAT’S THE BIG DEAL?

Can’t we all just get along?

Page 5: What IS SharePoint Development?

• 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

What’s The Big Deal?

Page 6: What IS SharePoint Development?

DEFINE “DEVELOPMENT”Let’s start at the beginning…

Page 7: What IS SharePoint Development?

developer  (dɪˈvɛləpə)  — n1.a person or thing that develops something

Define “Developer”

Page 8: What IS SharePoint Development?

Define “Development”

develop  (dɪˈvɛləp)  — vb  1. to come or bring to a later or more advanced 

or expanded stage; grow or cause to grow gradually

2. to elaborate or work out in detail3. to come or bring into existence; generate or b

e generated

Page 9: What IS SharePoint Development?

Define “Development”• #1 Mistake SharePoint “developers” make?

– Opening Visual Studio– Development is not necessarily code

Page 10: What IS SharePoint Development?

TYPES OF SHAREPOINT DEVELOPMENT

There’s more than one?

Page 11: What IS SharePoint Development?

OUT OF THE BOX (OOB)

So easy, even a manager can do it…

Page 12: What IS SharePoint Development?

• 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

Out of the Box (OOB)

Page 13: What IS SharePoint Development?

• 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

Out of the Box (OOB)

Page 14: What IS SharePoint Development?

• 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

Out of the Box (OOB)

Page 15: What IS SharePoint Development?

SHAREPOINT DESIGNERMuch better than it used to be…

Page 16: What IS SharePoint Development?

• 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.

SharePoint Designer (SPD)

Page 17: What IS SharePoint Development?

• 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)

SharePoint Designer (SPD)

Page 18: What IS SharePoint Development?

• 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.

SharePoint Designer (SPD)

Page 19: What IS SharePoint Development?

JAVASCRIPT / JQUERYWith great power comes great responsibility…

Page 20: What IS SharePoint Development?

• 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

JavaScript / jQuery

Page 21: What IS SharePoint Development?

• 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

JavaScript / jQuery

Page 22: What IS SharePoint Development?

• 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

JavaScript / jQuery

Page 23: What IS SharePoint Development?

POWERSHELLAdmins are developers in denial…

Page 24: What IS SharePoint Development?

• Scripting environment, NOT for creating interactive SharePoint solutions

• Configure farm, Deploy solutions, Create SharePoint artifacts

• Tools– PowerShell– PowerShell ISE – PowerShell Plus (Idera)– PowerGUI (Quest)

PowerShell

Page 25: What IS SharePoint Development?

• 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”

PowerShell

Page 26: What IS SharePoint Development?

• 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

PowerShell

Page 27: What IS SharePoint Development?

VISUAL STUDIO / .NETWhen all else fails, use a bigger stick…

Page 28: What IS SharePoint Development?

• 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

Visual Studio / .NET

Page 29: What IS SharePoint Development?

• 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

Visual Studio / .NET

Page 30: What IS SharePoint Development?

• 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

Visual Studio / .NET

Page 31: What IS SharePoint Development?

• 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

Visual Studio / .NET

Page 32: What IS SharePoint Development?

*Development Option Comparison  OOB SPD JavaScript PowerShell Visual Studio

Create SharePoint Objects Yes Yes Yes Yes Yes

Display information to the user (Dashboards, Reports, Dynamic information) Yes Yes Yes No Yes

Execute code with elevated privileges No No No Yes Yes

Perform complicated business logic No Limited Yes Yes Yes

Event Receivers, Timer Jobs, Service Applications, Custom Search No No No No Yes

Create deployable solutions No No No No Yes

Deploy solutions No No No YesNot in production

Create List Views Yes Yes Yes Yes Yes

Visual enhancements such as animations Limited It depends Yes No Yes

*Most of the time

Page 33: What IS SharePoint Development?

Learn more at…• All

– Blogs, books, conferences• OOB & SPD

– http://EndUserSharePoint.com • jQuery & JavaScript

– http://jQuery.com – The SharePoint & jQuery Guide http://bit.ly/jQueryAndSP

• PowerShell– Gary Lapointe http://blog.falchionconsulting.com

• .NET– Critical Path Training - http://www.criticalpathtraining.com– MindSharp - http://www.mindsharp.com/

Page 34: What IS SharePoint Development?

DEMOSI know! About time! Right?

Page 35: What IS SharePoint Development?

SharePoint Saturday OzarksSept. 8, 2012

http://www.sharepointsaturday.org/ozarks

Chateau On The LakeBranson, MOhttp://www.chateauonthelake.com/

Page 36: What IS SharePoint Development?

QUESTIONS?I have an answer, let’s see if they match?