SlideShare a Scribd company logo
Developing for
SharePoint Online
    Ari Bakker
    @aribakker
Goals
• Learn how to develop applications for
  SharePoint Online deployments
  – Gain a basic understanding of the SharePoint
    Online offering
  – Understand the limitations of developing in
    SharePoint Online
  – Understand techniques for overcoming some of
    these limitations
SharePoint Online Flavours
• Office 365 Public Cloud
  – Professionals and small businesses (P plans)
     • Limited to 50 users
     • Single site collection
     • Can deploy sandboxed solutions
  – Medium businesses and enterprises (E plans)
     • Can deploy sandboxed solutions
• Office 365 Dedicated
  – Dedicated farm, aimed at 30,000+ seat deployments
     • Farm solutions allowed (requires Microsoft approval)
Why SharePoint Online?
•   Handles variable load
•   Flexible cost of ownership
•   Business agility/time to market
•   Stability
What’s In
•   My Sites
•   Office Integration (2007/2010)   •   Excel Services
•   SharePoint Workspace 2010 for    •   Access Services
    Offline Working                  •   Visio Services
•   External Sharing
                                     •   SharePoint Web Services
•   Simple Public-Facing Website
•   Document Libraries               •   Forms Services
•   Slide & Media Libraries          •   Custom Web Parts
•   Business Taxonomies & Tagging    •   Silverlight controls
•   Document Sets & ID’s             •   Sandboxed Solutions
•   Office Web Apps
                                     •   Blogs
•   Cross-site Collection Search
•   Search Refiners                  •   Wikis
•   Indexing Controls                •   Business Connectivity Services
•   People Search
•   Phonetic Search
What’s Out
• Records Center
• Information Rights Management (IRM)
• SharePoint for Internet Sites and WCM workflow
  and approval
• Site Variations
• PerformancePoint Services
• Power Pivot
• Full-Trust Code Solutions
• FAST Search
Development Options
•   Browser based customisations
•   SharePoint designer/InfoPath Forms
•   Sandboxed solutions
•   Windows Azure
Key sandbox limitations
• No access to the file system
• Code restrictions:
  – GAC deployment prohibited
  – Restricted set of allowed assemblies
• No server side external calls
• No Web Application or Farm scoped
  functionality
• No full-trust proxy allowed in SP-O standard
Getting started
• Install Visual Studio 2010 SharePoint Power
  Tools
  – Sandboxed visual web part
  – Compile against allowed assemblies
• Debug using SPUCWorkerProcess locally
• Use FXCop rules to validate solution against
  SPO
  – SPO contains custom solution validator
• Create a test site collection in SPO
Limitation #1 - File system access
• Limited access to the file system
  – Site definitions
  – User controls
  – Application pages
  – Branding resources
  – Web.config
  – ULS logs
Limitation #1 - File system access
• Limited access to the file system
  – Site definitions – Use WebTemplates
  – User controls – Install Visual Studio Power Tools
  – Application pages – Use web parts
  – Branding resources – Use style library
  – Web.config – Use SPWeb property bag or lists
  – ULS logs – Log to lists. Consider resource usage
    e.g. #if DEBUG or a property
Limitation #2 - Accessing external data
• Server side external calls
  – Web service calls
  – Cross site-collection calls
Limitation #2 - Accessing external data
• Server side external calls
  – Web service calls
  – Cross site-collection calls
• Solutions
  – Client side script – Silverlight, JavaScript, Managed
    client OM
  – Business connectivity services
  – Data view web part
Limitation #3 - Code restrictions
• GAC deployment prohibited
  – Custom workflow solution
  – Timer jobs
• Restricted set of allowed assemblies
  – SPSecurity.RunWithElevatedPriviledges
• Execution context in sandbox process
  – Only partial access to the Page and HttpRequest
    objects
Sandboxed Code Architecture
Limitation #3 - Code restrictions
• Consider moving application logic into Azure
  – Supports complex business logic
  – Cheap data storage
  – Pay for what you use
Limitation #4 - Deployment scope
• Web Application or Farm scoped functionality
  – Search managed properties
  – Service applications
  – Authentication providers (uses Windows Live or
    ADFS)
How do I get started?
• Office 365 free 30 day trial
  http://www.office365.com
• Visual Studio 2010 SharePoint Power Tools:
  http://tinyurl.com/spo-vspt
• FxCop Rules for SharePoint Online
  http://o365fxcoprules.codeplex.com
• Microsoft Cloud Essentials Pack
  http://www.microsoftcloudpartner.com
Thanks for listening
• Get in touch
  – ari.bakker@gmail.com
  – @aribakker
  – http://www.sharepointconfig.com
Ad

More Related Content

What's hot (20)

SharePoint 2013 i SharePoint Online
SharePoint 2013i SharePoint OnlineSharePoint 2013i SharePoint Online
SharePoint 2013 i SharePoint Online
Dragan Panjkov
 
Alfresco Day Stockholm 2015 - Alfresco One
Alfresco Day Stockholm 2015 - Alfresco OneAlfresco Day Stockholm 2015 - Alfresco One
Alfresco Day Stockholm 2015 - Alfresco One
Nicole Szigeti
 
Inside the mind of a SharePoint Solutions Architect
Inside the mind of a SharePoint Solutions ArchitectInside the mind of a SharePoint Solutions Architect
Inside the mind of a SharePoint Solutions Architect
Noorez Khamis
 
SharePoint Saturday The Conference DC - How the client object model saved the...
SharePoint Saturday The Conference DC - How the client object model saved the...SharePoint Saturday The Conference DC - How the client object model saved the...
SharePoint Saturday The Conference DC - How the client object model saved the...
Liam Cleary [MVP]
 
SharePoint 2013 Admin in the Hybrid World
SharePoint 2013 Admin in the Hybrid WorldSharePoint 2013 Admin in the Hybrid World
SharePoint 2013 Admin in the Hybrid World
Jason Himmelstein
 
SharePoint Saturday Paris 2015 Validating SharePoint 2013 Farm Before Go-Live
SharePoint Saturday Paris 2015   Validating SharePoint 2013 Farm Before Go-LiveSharePoint Saturday Paris 2015   Validating SharePoint 2013 Farm Before Go-Live
SharePoint Saturday Paris 2015 Validating SharePoint 2013 Farm Before Go-Live
Chirag Patel
 
ECS2019 - Managing Content Types in the Modern World
ECS2019 - Managing Content Types in the Modern WorldECS2019 - Managing Content Types in the Modern World
ECS2019 - Managing Content Types in the Modern World
Marc D Anderson
 
SPS Twin Cities - Congratulations You Inherited a SharePoint Site
SPS Twin Cities - Congratulations You Inherited a SharePoint SiteSPS Twin Cities - Congratulations You Inherited a SharePoint Site
SPS Twin Cities - Congratulations You Inherited a SharePoint Site
Don Donais
 
ECS19 - Laura Kokkarinen - Everything you need to know about SharePoint site ...
ECS19 - Laura Kokkarinen - Everything you need to know about SharePoint site ...ECS19 - Laura Kokkarinen - Everything you need to know about SharePoint site ...
ECS19 - Laura Kokkarinen - Everything you need to know about SharePoint site ...
European Collaboration Summit
 
European SharePoint Conference Training Week - Installing SharePoint 2013
European SharePoint Conference Training Week - Installing SharePoint 2013European SharePoint Conference Training Week - Installing SharePoint 2013
European SharePoint Conference Training Week - Installing SharePoint 2013
Alan Richards
 
Oracle Webcenter Suite Overview
Oracle Webcenter Suite OverviewOracle Webcenter Suite Overview
Oracle Webcenter Suite Overview
Eslam Hafez
 
The Cireson Sessions: Cireson Portal
The Cireson Sessions: Cireson Portal The Cireson Sessions: Cireson Portal
The Cireson Sessions: Cireson Portal
Cireson
 
Manage how people use your SharePoint Online
Manage how people use your SharePoint OnlineManage how people use your SharePoint Online
Manage how people use your SharePoint Online
Suhail Jamaldeen
 
ECS19 - Rodrigo Pinto - Modernize Your Classic SharePoint Sites
ECS19 - Rodrigo Pinto - Modernize Your Classic SharePoint SitesECS19 - Rodrigo Pinto - Modernize Your Classic SharePoint Sites
ECS19 - Rodrigo Pinto - Modernize Your Classic SharePoint Sites
European Collaboration Summit
 
Trendspot ANZ 2014 - Federated Experience Manager - Thomas Eldblom
Trendspot ANZ 2014 - Federated Experience Manager - Thomas EldblomTrendspot ANZ 2014 - Federated Experience Manager - Thomas Eldblom
Trendspot ANZ 2014 - Federated Experience Manager - Thomas Eldblom
Thomas Eldblom
 
Sitecore xPlatform - Introduction
Sitecore xPlatform - IntroductionSitecore xPlatform - Introduction
Sitecore xPlatform - Introduction
Thomas Eldblom
 
Webcenter Portlal training...
Webcenter Portlal training...Webcenter Portlal training...
Webcenter Portlal training...
Vinay Kumar
 
ECS19 - Katja Jokisalo - Modernize your Intranet
ECS19 - Katja Jokisalo - Modernize your IntranetECS19 - Katja Jokisalo - Modernize your Intranet
ECS19 - Katja Jokisalo - Modernize your Intranet
European Collaboration Summit
 
SQL Saturday Columbus 2014 Exposing SQL Data with SharePoint
SQL Saturday Columbus 2014 Exposing SQL Data with SharePointSQL Saturday Columbus 2014 Exposing SQL Data with SharePoint
SQL Saturday Columbus 2014 Exposing SQL Data with SharePoint
Scott_Brickey
 
Custom Development for SharePoint
Custom Development for SharePointCustom Development for SharePoint
Custom Development for SharePoint
Talbott Crowell
 
SharePoint 2013 i SharePoint Online
SharePoint 2013i SharePoint OnlineSharePoint 2013i SharePoint Online
SharePoint 2013 i SharePoint Online
Dragan Panjkov
 
Alfresco Day Stockholm 2015 - Alfresco One
Alfresco Day Stockholm 2015 - Alfresco OneAlfresco Day Stockholm 2015 - Alfresco One
Alfresco Day Stockholm 2015 - Alfresco One
Nicole Szigeti
 
Inside the mind of a SharePoint Solutions Architect
Inside the mind of a SharePoint Solutions ArchitectInside the mind of a SharePoint Solutions Architect
Inside the mind of a SharePoint Solutions Architect
Noorez Khamis
 
SharePoint Saturday The Conference DC - How the client object model saved the...
SharePoint Saturday The Conference DC - How the client object model saved the...SharePoint Saturday The Conference DC - How the client object model saved the...
SharePoint Saturday The Conference DC - How the client object model saved the...
Liam Cleary [MVP]
 
SharePoint 2013 Admin in the Hybrid World
SharePoint 2013 Admin in the Hybrid WorldSharePoint 2013 Admin in the Hybrid World
SharePoint 2013 Admin in the Hybrid World
Jason Himmelstein
 
SharePoint Saturday Paris 2015 Validating SharePoint 2013 Farm Before Go-Live
SharePoint Saturday Paris 2015   Validating SharePoint 2013 Farm Before Go-LiveSharePoint Saturday Paris 2015   Validating SharePoint 2013 Farm Before Go-Live
SharePoint Saturday Paris 2015 Validating SharePoint 2013 Farm Before Go-Live
Chirag Patel
 
ECS2019 - Managing Content Types in the Modern World
ECS2019 - Managing Content Types in the Modern WorldECS2019 - Managing Content Types in the Modern World
ECS2019 - Managing Content Types in the Modern World
Marc D Anderson
 
SPS Twin Cities - Congratulations You Inherited a SharePoint Site
SPS Twin Cities - Congratulations You Inherited a SharePoint SiteSPS Twin Cities - Congratulations You Inherited a SharePoint Site
SPS Twin Cities - Congratulations You Inherited a SharePoint Site
Don Donais
 
ECS19 - Laura Kokkarinen - Everything you need to know about SharePoint site ...
ECS19 - Laura Kokkarinen - Everything you need to know about SharePoint site ...ECS19 - Laura Kokkarinen - Everything you need to know about SharePoint site ...
ECS19 - Laura Kokkarinen - Everything you need to know about SharePoint site ...
European Collaboration Summit
 
European SharePoint Conference Training Week - Installing SharePoint 2013
European SharePoint Conference Training Week - Installing SharePoint 2013European SharePoint Conference Training Week - Installing SharePoint 2013
European SharePoint Conference Training Week - Installing SharePoint 2013
Alan Richards
 
Oracle Webcenter Suite Overview
Oracle Webcenter Suite OverviewOracle Webcenter Suite Overview
Oracle Webcenter Suite Overview
Eslam Hafez
 
The Cireson Sessions: Cireson Portal
The Cireson Sessions: Cireson Portal The Cireson Sessions: Cireson Portal
The Cireson Sessions: Cireson Portal
Cireson
 
Manage how people use your SharePoint Online
Manage how people use your SharePoint OnlineManage how people use your SharePoint Online
Manage how people use your SharePoint Online
Suhail Jamaldeen
 
ECS19 - Rodrigo Pinto - Modernize Your Classic SharePoint Sites
ECS19 - Rodrigo Pinto - Modernize Your Classic SharePoint SitesECS19 - Rodrigo Pinto - Modernize Your Classic SharePoint Sites
ECS19 - Rodrigo Pinto - Modernize Your Classic SharePoint Sites
European Collaboration Summit
 
Trendspot ANZ 2014 - Federated Experience Manager - Thomas Eldblom
Trendspot ANZ 2014 - Federated Experience Manager - Thomas EldblomTrendspot ANZ 2014 - Federated Experience Manager - Thomas Eldblom
Trendspot ANZ 2014 - Federated Experience Manager - Thomas Eldblom
Thomas Eldblom
 
Sitecore xPlatform - Introduction
Sitecore xPlatform - IntroductionSitecore xPlatform - Introduction
Sitecore xPlatform - Introduction
Thomas Eldblom
 
Webcenter Portlal training...
Webcenter Portlal training...Webcenter Portlal training...
Webcenter Portlal training...
Vinay Kumar
 
SQL Saturday Columbus 2014 Exposing SQL Data with SharePoint
SQL Saturday Columbus 2014 Exposing SQL Data with SharePointSQL Saturday Columbus 2014 Exposing SQL Data with SharePoint
SQL Saturday Columbus 2014 Exposing SQL Data with SharePoint
Scott_Brickey
 
Custom Development for SharePoint
Custom Development for SharePointCustom Development for SharePoint
Custom Development for SharePoint
Talbott Crowell
 

Viewers also liked (16)

Handling Cross-Domain calls & authentication in SharePoint 2013
Handling Cross-Domain calls & authentication in SharePoint 2013Handling Cross-Domain calls & authentication in SharePoint 2013
Handling Cross-Domain calls & authentication in SharePoint 2013
BIWUG
 
Spsbe buildinganfaqforendusers-150422122027-conversion-gate02
Spsbe buildinganfaqforendusers-150422122027-conversion-gate02Spsbe buildinganfaqforendusers-150422122027-conversion-gate02
Spsbe buildinganfaqforendusers-150422122027-conversion-gate02
BIWUG
 
Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...
Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...
Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...
Marc D Anderson
 
A Kiss For You
A Kiss For YouA Kiss For You
A Kiss For You
Renny
 
WBS PROJECT
WBS PROJECTWBS PROJECT
WBS PROJECT
nurliyana Bakar
 
Same but Different - Developing for SharePoint Online -- SPSSTL
Same but Different - Developing for SharePoint Online -- SPSSTLSame but Different - Developing for SharePoint Online -- SPSSTL
Same but Different - Developing for SharePoint Online -- SPSSTL
John Ferringer
 
The 2016 Pirelli Calendar
The 2016 Pirelli CalendarThe 2016 Pirelli Calendar
The 2016 Pirelli Calendar
guimera
 
Lovely Planet Earth 6
Lovely Planet Earth 6Lovely Planet Earth 6
Lovely Planet Earth 6
guimera
 
Work Breakdown Structure Use This
Work Breakdown Structure Use ThisWork Breakdown Structure Use This
Work Breakdown Structure Use This
project management
 
Cloud Saturday Chicago 2016 - Modern Intranet Development Best Practices on S...
Cloud Saturday Chicago 2016 - Modern Intranet Development Best Practices on S...Cloud Saturday Chicago 2016 - Modern Intranet Development Best Practices on S...
Cloud Saturday Chicago 2016 - Modern Intranet Development Best Practices on S...
Nik Patel
 
Work Breakdown Structure
Work Breakdown StructureWork Breakdown Structure
Work Breakdown Structure
Emanuele Della Valle
 
10 Things Many IT Professionals Don’t Know About Office 365
10 Things Many IT Professionals Don’t Know About Office 36510 Things Many IT Professionals Don’t Know About Office 365
10 Things Many IT Professionals Don’t Know About Office 365
Richard Harbridge
 
WBS presentation
WBS presentationWBS presentation
WBS presentation
jpstewar
 
What is Office 365? A Simple Answer
What is Office 365? A Simple AnswerWhat is Office 365? A Simple Answer
What is Office 365? A Simple Answer
Aptera Inc
 
Get started with building native mobile apps interacting with SharePoint
Get started with building native mobile apps interacting with SharePointGet started with building native mobile apps interacting with SharePoint
Get started with building native mobile apps interacting with SharePoint
Yaroslav Pentsarskyy [MVP]
 
CANOVA: EROS I PSIQUE
CANOVA: EROS I PSIQUECANOVA: EROS I PSIQUE
CANOVA: EROS I PSIQUE
Antonio Núñez
 
Handling Cross-Domain calls & authentication in SharePoint 2013
Handling Cross-Domain calls & authentication in SharePoint 2013Handling Cross-Domain calls & authentication in SharePoint 2013
Handling Cross-Domain calls & authentication in SharePoint 2013
BIWUG
 
Spsbe buildinganfaqforendusers-150422122027-conversion-gate02
Spsbe buildinganfaqforendusers-150422122027-conversion-gate02Spsbe buildinganfaqforendusers-150422122027-conversion-gate02
Spsbe buildinganfaqforendusers-150422122027-conversion-gate02
BIWUG
 
Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...
Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...
Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...
Marc D Anderson
 
A Kiss For You
A Kiss For YouA Kiss For You
A Kiss For You
Renny
 
Same but Different - Developing for SharePoint Online -- SPSSTL
Same but Different - Developing for SharePoint Online -- SPSSTLSame but Different - Developing for SharePoint Online -- SPSSTL
Same but Different - Developing for SharePoint Online -- SPSSTL
John Ferringer
 
The 2016 Pirelli Calendar
The 2016 Pirelli CalendarThe 2016 Pirelli Calendar
The 2016 Pirelli Calendar
guimera
 
Lovely Planet Earth 6
Lovely Planet Earth 6Lovely Planet Earth 6
Lovely Planet Earth 6
guimera
 
Work Breakdown Structure Use This
Work Breakdown Structure Use ThisWork Breakdown Structure Use This
Work Breakdown Structure Use This
project management
 
Cloud Saturday Chicago 2016 - Modern Intranet Development Best Practices on S...
Cloud Saturday Chicago 2016 - Modern Intranet Development Best Practices on S...Cloud Saturday Chicago 2016 - Modern Intranet Development Best Practices on S...
Cloud Saturday Chicago 2016 - Modern Intranet Development Best Practices on S...
Nik Patel
 
10 Things Many IT Professionals Don’t Know About Office 365
10 Things Many IT Professionals Don’t Know About Office 36510 Things Many IT Professionals Don’t Know About Office 365
10 Things Many IT Professionals Don’t Know About Office 365
Richard Harbridge
 
WBS presentation
WBS presentationWBS presentation
WBS presentation
jpstewar
 
What is Office 365? A Simple Answer
What is Office 365? A Simple AnswerWhat is Office 365? A Simple Answer
What is Office 365? A Simple Answer
Aptera Inc
 
Get started with building native mobile apps interacting with SharePoint
Get started with building native mobile apps interacting with SharePointGet started with building native mobile apps interacting with SharePoint
Get started with building native mobile apps interacting with SharePoint
Yaroslav Pentsarskyy [MVP]
 
Ad

Similar to Developing for SharePoint Online (20)

SharePoint Development
SharePoint DevelopmentSharePoint Development
SharePoint Development
Malin De Silva
 
What SharePoint is My Ferrari?
What SharePoint is My Ferrari? What SharePoint is My Ferrari?
What SharePoint is My Ferrari?
Michael Hinckley
 
Session 2 Integrating SharePoint 2010 and Windows Azure
Session 2   Integrating SharePoint 2010 and Windows AzureSession 2   Integrating SharePoint 2010 and Windows Azure
Session 2 Integrating SharePoint 2010 and Windows Azure
Code Mastery
 
Introduction to SharePoint Framework
Introduction to SharePoint FrameworkIntroduction to SharePoint Framework
Introduction to SharePoint Framework
Małgorzata Borzęcka
 
SPSDenver - Wrapping Your Head Around the SharePoint Beast
SPSDenver - Wrapping Your Head Around the SharePoint BeastSPSDenver - Wrapping Your Head Around the SharePoint Beast
SPSDenver - Wrapping Your Head Around the SharePoint Beast
Mark Rackley
 
The Greatest Introduction to SharePoint Framework (SPFx) on earth!
The Greatest Introduction to SharePoint Framework (SPFx) on earth!The Greatest Introduction to SharePoint Framework (SPFx) on earth!
The Greatest Introduction to SharePoint Framework (SPFx) on earth!
Małgorzata Borzęcka
 
What’s New Share Point 2010
What’s New Share Point 2010What’s New Share Point 2010
What’s New Share Point 2010
Marwan Tarek
 
SharePoint Performance - Best Practices from the Field
SharePoint Performance - Best Practices from the Field SharePoint Performance - Best Practices from the Field
SharePoint Performance - Best Practices from the Field
Jason Himmelstein
 
SharePoint Performance: Best Practices from the Field
SharePoint Performance: Best Practices from the FieldSharePoint Performance: Best Practices from the Field
SharePoint Performance: Best Practices from the Field
Jason Himmelstein
 
2/15/2012 - Wrapping Your Head Around the SharePoint Beast
2/15/2012 - Wrapping Your Head Around the SharePoint Beast2/15/2012 - Wrapping Your Head Around the SharePoint Beast
2/15/2012 - Wrapping Your Head Around the SharePoint Beast
Mark Rackley
 
High-level Guide: Upgrading to SharePoint 2013
High-level Guide: Upgrading to SharePoint 2013High-level Guide: Upgrading to SharePoint 2013
High-level Guide: Upgrading to SharePoint 2013
C5 Insight
 
Sharepoint
SharepointSharepoint
Sharepoint
Naqash Ahmed
 
Module 1 - Introduction to the SharePoint Developer Landscape.pptx
Module 1 - Introduction to the SharePoint Developer Landscape.pptxModule 1 - Introduction to the SharePoint Developer Landscape.pptx
Module 1 - Introduction to the SharePoint Developer Landscape.pptx
AnkurBhardwaj87
 
Penny coventry auto-bp-spsbe31
Penny coventry auto-bp-spsbe31Penny coventry auto-bp-spsbe31
Penny coventry auto-bp-spsbe31
BIWUG
 
Practical Tips for Migrating SharePoint Customizations to Office 365
Practical Tips for Migrating SharePoint Customizations to Office 365Practical Tips for Migrating SharePoint Customizations to Office 365
Practical Tips for Migrating SharePoint Customizations to Office 365
Haniel Croitoru
 
Interoperability Ms Sap
Interoperability Ms SapInteroperability Ms Sap
Interoperability Ms Sap
richaroy
 
Module 1 - Introduction to the SharePoint Developer Landscape .pptx
Module 1 - Introduction to the SharePoint Developer Landscape     .pptxModule 1 - Introduction to the SharePoint Developer Landscape     .pptx
Module 1 - Introduction to the SharePoint Developer Landscape .pptx
AbdulalimBhnsawy
 
Replacing your fileshare with SharePoint 2013 Farm - SharePoint User Group UK...
Replacing your fileshare with SharePoint 2013 Farm - SharePoint User Group UK...Replacing your fileshare with SharePoint 2013 Farm - SharePoint User Group UK...
Replacing your fileshare with SharePoint 2013 Farm - SharePoint User Group UK...
Chirag Patel
 
SPConnections - Search Administration in SharePoint 2013
SPConnections - Search Administration in SharePoint 2013SPConnections - Search Administration in SharePoint 2013
SPConnections - Search Administration in SharePoint 2013
Agnes Molnar
 
Sharepoint server 2013 training
Sharepoint server  2013 trainingSharepoint server  2013 training
Sharepoint server 2013 training
FuturePoint Technologies
 
SharePoint Development
SharePoint DevelopmentSharePoint Development
SharePoint Development
Malin De Silva
 
What SharePoint is My Ferrari?
What SharePoint is My Ferrari? What SharePoint is My Ferrari?
What SharePoint is My Ferrari?
Michael Hinckley
 
Session 2 Integrating SharePoint 2010 and Windows Azure
Session 2   Integrating SharePoint 2010 and Windows AzureSession 2   Integrating SharePoint 2010 and Windows Azure
Session 2 Integrating SharePoint 2010 and Windows Azure
Code Mastery
 
Introduction to SharePoint Framework
Introduction to SharePoint FrameworkIntroduction to SharePoint Framework
Introduction to SharePoint Framework
Małgorzata Borzęcka
 
SPSDenver - Wrapping Your Head Around the SharePoint Beast
SPSDenver - Wrapping Your Head Around the SharePoint BeastSPSDenver - Wrapping Your Head Around the SharePoint Beast
SPSDenver - Wrapping Your Head Around the SharePoint Beast
Mark Rackley
 
The Greatest Introduction to SharePoint Framework (SPFx) on earth!
The Greatest Introduction to SharePoint Framework (SPFx) on earth!The Greatest Introduction to SharePoint Framework (SPFx) on earth!
The Greatest Introduction to SharePoint Framework (SPFx) on earth!
Małgorzata Borzęcka
 
What’s New Share Point 2010
What’s New Share Point 2010What’s New Share Point 2010
What’s New Share Point 2010
Marwan Tarek
 
SharePoint Performance - Best Practices from the Field
SharePoint Performance - Best Practices from the Field SharePoint Performance - Best Practices from the Field
SharePoint Performance - Best Practices from the Field
Jason Himmelstein
 
SharePoint Performance: Best Practices from the Field
SharePoint Performance: Best Practices from the FieldSharePoint Performance: Best Practices from the Field
SharePoint Performance: Best Practices from the Field
Jason Himmelstein
 
2/15/2012 - Wrapping Your Head Around the SharePoint Beast
2/15/2012 - Wrapping Your Head Around the SharePoint Beast2/15/2012 - Wrapping Your Head Around the SharePoint Beast
2/15/2012 - Wrapping Your Head Around the SharePoint Beast
Mark Rackley
 
High-level Guide: Upgrading to SharePoint 2013
High-level Guide: Upgrading to SharePoint 2013High-level Guide: Upgrading to SharePoint 2013
High-level Guide: Upgrading to SharePoint 2013
C5 Insight
 
Module 1 - Introduction to the SharePoint Developer Landscape.pptx
Module 1 - Introduction to the SharePoint Developer Landscape.pptxModule 1 - Introduction to the SharePoint Developer Landscape.pptx
Module 1 - Introduction to the SharePoint Developer Landscape.pptx
AnkurBhardwaj87
 
Penny coventry auto-bp-spsbe31
Penny coventry auto-bp-spsbe31Penny coventry auto-bp-spsbe31
Penny coventry auto-bp-spsbe31
BIWUG
 
Practical Tips for Migrating SharePoint Customizations to Office 365
Practical Tips for Migrating SharePoint Customizations to Office 365Practical Tips for Migrating SharePoint Customizations to Office 365
Practical Tips for Migrating SharePoint Customizations to Office 365
Haniel Croitoru
 
Interoperability Ms Sap
Interoperability Ms SapInteroperability Ms Sap
Interoperability Ms Sap
richaroy
 
Module 1 - Introduction to the SharePoint Developer Landscape .pptx
Module 1 - Introduction to the SharePoint Developer Landscape     .pptxModule 1 - Introduction to the SharePoint Developer Landscape     .pptx
Module 1 - Introduction to the SharePoint Developer Landscape .pptx
AbdulalimBhnsawy
 
Replacing your fileshare with SharePoint 2013 Farm - SharePoint User Group UK...
Replacing your fileshare with SharePoint 2013 Farm - SharePoint User Group UK...Replacing your fileshare with SharePoint 2013 Farm - SharePoint User Group UK...
Replacing your fileshare with SharePoint 2013 Farm - SharePoint User Group UK...
Chirag Patel
 
SPConnections - Search Administration in SharePoint 2013
SPConnections - Search Administration in SharePoint 2013SPConnections - Search Administration in SharePoint 2013
SPConnections - Search Administration in SharePoint 2013
Agnes Molnar
 
Ad

Recently uploaded (20)

Semantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AISemantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AI
artmondano
 
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
BookNet Canada
 
Linux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdfLinux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdf
RHCSA Guru
 
HCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser EnvironmentsHCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser Environments
panagenda
 
Drupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy ConsumptionDrupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy Consumption
Exove
 
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven InsightsAndrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell
 
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-UmgebungenHCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
panagenda
 
Electronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploitElectronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploit
niftliyevhuseyn
 
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc
 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
 
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptxIncreasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Anoop Ashok
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
Cyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of securityCyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of security
riccardosl1
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
Mobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi ArabiaMobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi Arabia
Steve Jonas
 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...
Vishnu Singh Chundawat
 
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep DiveDesigning Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
ScyllaDB
 
Semantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AISemantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AI
artmondano
 
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
BookNet Canada
 
Linux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdfLinux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdf
RHCSA Guru
 
HCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser EnvironmentsHCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser Environments
panagenda
 
Drupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy ConsumptionDrupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy Consumption
Exove
 
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven InsightsAndrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell
 
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-UmgebungenHCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
panagenda
 
Electronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploitElectronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploit
niftliyevhuseyn
 
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc
 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
 
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptxIncreasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Anoop Ashok
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
Cyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of securityCyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of security
riccardosl1
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
Mobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi ArabiaMobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi Arabia
Steve Jonas
 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...
Vishnu Singh Chundawat
 
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep DiveDesigning Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
ScyllaDB
 

Developing for SharePoint Online

  • 1. Developing for SharePoint Online Ari Bakker @aribakker
  • 2. Goals • Learn how to develop applications for SharePoint Online deployments – Gain a basic understanding of the SharePoint Online offering – Understand the limitations of developing in SharePoint Online – Understand techniques for overcoming some of these limitations
  • 3. SharePoint Online Flavours • Office 365 Public Cloud – Professionals and small businesses (P plans) • Limited to 50 users • Single site collection • Can deploy sandboxed solutions – Medium businesses and enterprises (E plans) • Can deploy sandboxed solutions • Office 365 Dedicated – Dedicated farm, aimed at 30,000+ seat deployments • Farm solutions allowed (requires Microsoft approval)
  • 4. Why SharePoint Online? • Handles variable load • Flexible cost of ownership • Business agility/time to market • Stability
  • 5. What’s In • My Sites • Office Integration (2007/2010) • Excel Services • SharePoint Workspace 2010 for • Access Services Offline Working • Visio Services • External Sharing • SharePoint Web Services • Simple Public-Facing Website • Document Libraries • Forms Services • Slide & Media Libraries • Custom Web Parts • Business Taxonomies & Tagging • Silverlight controls • Document Sets & ID’s • Sandboxed Solutions • Office Web Apps • Blogs • Cross-site Collection Search • Search Refiners • Wikis • Indexing Controls • Business Connectivity Services • People Search • Phonetic Search
  • 6. What’s Out • Records Center • Information Rights Management (IRM) • SharePoint for Internet Sites and WCM workflow and approval • Site Variations • PerformancePoint Services • Power Pivot • Full-Trust Code Solutions • FAST Search
  • 7. Development Options • Browser based customisations • SharePoint designer/InfoPath Forms • Sandboxed solutions • Windows Azure
  • 8. Key sandbox limitations • No access to the file system • Code restrictions: – GAC deployment prohibited – Restricted set of allowed assemblies • No server side external calls • No Web Application or Farm scoped functionality • No full-trust proxy allowed in SP-O standard
  • 9. Getting started • Install Visual Studio 2010 SharePoint Power Tools – Sandboxed visual web part – Compile against allowed assemblies • Debug using SPUCWorkerProcess locally • Use FXCop rules to validate solution against SPO – SPO contains custom solution validator • Create a test site collection in SPO
  • 10. Limitation #1 - File system access • Limited access to the file system – Site definitions – User controls – Application pages – Branding resources – Web.config – ULS logs
  • 11. Limitation #1 - File system access • Limited access to the file system – Site definitions – Use WebTemplates – User controls – Install Visual Studio Power Tools – Application pages – Use web parts – Branding resources – Use style library – Web.config – Use SPWeb property bag or lists – ULS logs – Log to lists. Consider resource usage e.g. #if DEBUG or a property
  • 12. Limitation #2 - Accessing external data • Server side external calls – Web service calls – Cross site-collection calls
  • 13. Limitation #2 - Accessing external data • Server side external calls – Web service calls – Cross site-collection calls • Solutions – Client side script – Silverlight, JavaScript, Managed client OM – Business connectivity services – Data view web part
  • 14. Limitation #3 - Code restrictions • GAC deployment prohibited – Custom workflow solution – Timer jobs • Restricted set of allowed assemblies – SPSecurity.RunWithElevatedPriviledges • Execution context in sandbox process – Only partial access to the Page and HttpRequest objects
  • 16. Limitation #3 - Code restrictions • Consider moving application logic into Azure – Supports complex business logic – Cheap data storage – Pay for what you use
  • 17. Limitation #4 - Deployment scope • Web Application or Farm scoped functionality – Search managed properties – Service applications – Authentication providers (uses Windows Live or ADFS)
  • 18. How do I get started? • Office 365 free 30 day trial http://www.office365.com • Visual Studio 2010 SharePoint Power Tools: http://tinyurl.com/spo-vspt • FxCop Rules for SharePoint Online http://o365fxcoprules.codeplex.com • Microsoft Cloud Essentials Pack http://www.microsoftcloudpartner.com
  • 19. Thanks for listening • Get in touch – [email protected] – @aribakker – http://www.sharepointconfig.com

Editor's Notes

  • #4: Other plans such as education or kiosk worker. Not possible to upgrade from P to E plans.P plans lack content type hub, document sets, managed metadata, no AD sync.