SharePoint VS .NET Project Challenges

SharePoint is one of the most successful and fastest growing Microsoft Server products, During the past 10 years; SharePoint has evolved from being a regular product to an extendable business platform that capitalizes & utilizes most of Microsoft products to deliver a super business experience for the enterprise.

A lot of practical cases proved that working with SharePoint for small/medium projects is very useful, it saves a lot of time; you can make a very rich, reliable & extendable application in few days with the least effort compared to coding everything from scratch.

Surprisingly, On the other hand; If we compare SharePoint Out Of the Box implementation with a normal ASP.NET implementation, we are going to find that a lot of technical people prefer to go with ASP.NET option or SharePoint Webparts with custom SQL database rather than SharePoint OOB implementation (Lists, OOB forms…) for the argument that is SharePoint projects are more complex and cannot be guaranteed to be delivered on time. I believe -initially- that this is true and here I am listing down -according to my technical experience- what are the reasons for this:

Before we go through the points let us agree on this:

“The success criterion of the right usage of SharePoint in a project should be measured according to how much Out Of the Box features are being used, otherwise; the decision of using SharePoint might be a big mistake and ASP.NET is supposed to be the right solution”

  1. Missing comprehensive knowledge in the technical team:
    SharePoint is a big product that has a lot of business features; not knowing all those features can lead you to reinventing the wheel in many cases.
  2. ASP.NET background reverse effect:
    Most of the people who considered good “SharePointers” are originally ASP.NET developers who have a mature development experience and tend to follow practices that might not be suitable in SharePoint; not to mention that not understanding important concepts like content types, site columns, SharePoint designer workflows, out of the box forms & taxonomies…etc. can lead to wrong implementation.
  3. High potential of Inconsistency:
    When you do Out Of the Box; the potential of getting spaghetti unstructured solution is very high, for example, in ASP.NET the code that does “Add“, “Update” and “Delete” is the same in all the pages, so if you understand one functionality; it would be easy to understand the rest of the pattern; In SharePoint; you might start by building 5 OOB lists and utilize OOB forms for DML operations, then after a while you discover that one of those lists has some complex functionality that cannot be achieved using OOB forms; so you convert it to custom Webparts. Another list is OK but needs a codeplex add-in feature to make it works 100% according to your customer’s needs! That what we call spaghetti implementation which is difficult to maintain & test.
  4. Customers & analysis awareness:
    In many cases, Business Analysts (and some times IT background customers) are not that familiar with SharePoint business platform; so when they do analysis they think of it as a normal ASP.Net application (From scratch application) and they will end up with requirements that fit ASP.NET application rather than SharePoint; Business analysts should always “think SharePoint” and try to give solutions that are more supported by SharePoint, otherwise; we will end up with a week & crappy implementation which was better to be done in ASP.NET. (I am not saying that analysts should be “technology oriented” instead of “business oriented”, actually the business orientation should be dominant during the Envisioning Phase, but should be replaced by the technical orientation during the Design Phase).
  5. ASP.NET simplifies developer’s life:
    Things are easier when dealing with a plain ASP.NET & SQL based implementation; For example, In ASP.NET with SQL DB, you can always empty a table by executing “delete from Table1“; in SharePoint you need to write more than 10 lines of PowerShell commands to do this, generally ASP.NET as a technology is more mature than SharePoint in terms of tools, resources & flexibility.
  6. Complex troubleshooting:
    Troubleshooting in SharePoint is challenging (ULS logs, enable errors trouble shooting, event log… ) network issues, services & authentication… Endless stories & reasons for issues
  7. SharePoint is an “Over-rich” platform:
    SharePoint UI gives u a lot of options and flexibility! This opens a very complex scenarios and increase the probability of end user misbehavior, In addition, a very mature testing plan which includes unit tests, integration test, performance test… and so forth is required, not to mention that this richness imposes a high level of governance plan to be available after delivery.
  8. Difficult to estimate:
    Estimation is something challenging in general! But with SharePoint, it is something that few people can do right! in many cases a simple requirement that you overlooked could make you repeat the whole work; other times a codeplex tool or other third party tool can save months if you know it is exist!
  9. Project Resources challenge:
    This issue can be summarized in four points:
    1. People: it is always easier to find ASP.NET developers than SharePoint developers.
    2. Hardware: SharePoint development machine requirement is extremely high compared to ASP.NET development machine, and that also applies on testing environment.
    3. Time: developers normally use visual studio to build & deploy many times during the day, moreover the time spent for building & deploying a SharePoint solution is normally double or triple the time for a normal ASP.NET application.
    4. Licensing: SharePoint licensing requirements are more expensive than ASP.NET Requirements, and my personal experience shows that 50% of project that I worked on was using licensing scheme  that is higher than what the project really needs! like getting SharePoint enterprise version instead of standard version or sometimes SharePoint Server instead of the free SharePoint foundation.
  10. Complex knowledge platform:
    SharePoint seems to be an easy platform from the end user perspective, but unfortunately it requires a very advanced understanding of the most complex concepts of ASP.NET, database & windows server like memory management, caching, hardware capabilities & networking.
  11. Complex Skills requirements:
    In SharePoint project you might need a complex criteria of development team skills : (C#, HTML, JavaScript, jQuery, CAML, CSOM, XSLT, power sell, batching commands, XML & Xpath…) and from Administration side as well (SharePoint end users skills, infrastructure, scalability, availability, security, firewalls, exchange ….) these skills are not easily found combined together.
  12. Decisions, Decisions & Decisions:
    There are always a lot of big & highly influencing decisions that you need to take at the beginning of each project … Think of how you can do the following scenarios:
    1. A form with two text boxes & 1 button can be done by: Out of the box forms, Out of the box form with custom fields, SharePoint Designer Customized forms, InfoPath forms, BCS, Custom Webparts, Custom smart Webparts, SharePoint hosted app, cloud hosted app, normal HTML+JQuery, Page Viewer Webparts pointing to a custom application, Silverlight, third party based form like kaldeera.
    2. Creating a site can be done by: site definition, site template, PowerShell, custom coding or may be through the browser.
    3. Creating a list can be done by: list definition, list templates, PowerShell, custom coding or may be through the browser.
    4. Placing your configuration data can be in: web.config, site property’s bag, Webparts property or SharePoint list.
    5. Custom business can be placed in: event receiver, prevalidation(), client jQuery, SharePoint designer workflow
    6. Workflow can be implemented by: SharePoint out of the box, SharePoint designer, Visual Studio WWF, third parties K2 Nintex
    7. Data access can be done: object model (Linq to SP or CAML), web services, REST, BCS or CSOM.
  13. Tools & Tools & Tools:
    SharePoint developers use a lot of tools (Visual studio, SharePoint Designer, office client applications, SharePoint manager, internet explorer, SharePoint log viewer, content deployment wizard, U2U… ) all these tools are helpful; but need a lot of knowledge, and when you mix things together. you will lose the control if you are not fully aware of each tool’s problems and capabilities
  14. Administrative Richness Overhead:
    As a very flexible and rich platform; you need always to pay attention to a lot of issues that are not there with normal .NET implementations like (large lists issue, internet website JS and CSS file size…) application services running (Search Services, BCS, excel services…) and features based concept (scoping, dependency, stapling…)
  15. SharePoint Branding is not easy:
    Branding is a very complex process which requires a lot of skills (CSS understanding, SharePoint branding artifacts structure like master pages, page layouts, publishing controls, CSS structure, themes, navigation…) and it is very rare to find the designer who can really understand this structure… and ironically; artistic & technical skills are usually inversely proportionate🙂 (things are way improved in SharePoint 2013 but still not that ideal)
  16. Complex security platform:
    SharePoint Security platform (groups, permission set, permissions, object level permissions) are a little bit confusing for new SharePointers; and fully understanding this is considered one of the ABCs of your implementation, considering that hiding an item from UI doesn’t mean that it is secured since it can be exposed in many ways (like search)! Not to mention that security stores are also not easy to be configured and challenging when troubleshooting if we go beyond active directory membership.
  17. Deployment is a real pain:
    Deployment is one of the most complex processes in SharePoint; especially when you talk about out of the box implementations. ALM and source control is not easy as well; deploying version 1.0 might be -relatively- easy; but going beyond that (version 1.1) is very difficult specially in cases where you have data & content on production. The main reason for that if you compare it with normal ASP.NET application is that in ASP.NET, you are only concerned with dropping your DLLs, aspx, ascx, JS & CSS files into the right place then restore the database & you will be ok… then in version 1.1; you just overwrite those files (DLLs, aspx…) and with some little SQL skills you can run a custom script to add a table or fill a lookup or may be add a column to a table… In SharePoint; deployment is a totally different story!! Because the changes are a complex mix between files & “untouchable” SQL database in addition to having to write code & do a lot of PowerShell & tracking techniques to insure a right 1.1 deployment.

 

Some of the previous points are sad facts that we have to live with, but most of them can be cured if you do things the right way! So here we go…

Internet is full of blogs & articles on how to do a lot of tasks, but I have not seen a full life cycle application that describes an out of the box implementation that teaches you how to “think” SharePoint rather than to “Do” SharePoint, so this is the purpose of this series.

Posted in Sharepoint | Tagged | Leave a comment

Simple steps to configure email testing in SharePoint development environment

Introduction:

Many times when building SharePoint development environment; we need to do testing for emails for workflows, alerts, logging & other stuff. Windows Server 2003 was supporting configuring pop3 email which was amazing; but for some reason; it was removed in Windows Server 2008, in this article I will give you a simple way to configure SharePoint development environment testing emails.

Technology and environment preparation

  • I am using Windows Server 2008 R2 (Windows Server 2008 should work, and windows Server 2012 Should work as well,I would appreciate if somebody confirm this in a comment)
  • I am using SharePoint 2010 (SharePoint 2007 & 2013 versions should work as well, I would appreciate if somebody try it and confirm this in a comments area)
  • I am using a single box development environment (SharePoint + SQL Server + Active Directory + Outlook)

Assumptions:

  • Users who reads this should be familiar with Windows Server, SharePoint and SQL Server basic administration tasks.
  • During this tutorial I will be accessing SharePoint Content Database which is not a good practice to be done in production, (Use this technique on development)

Plan:

  1. Install Mail enable tool (from http://www.mailenable.com/)
  2. Create new mail boxes & make sure that outlook is working.
  3. Configure SharePoint stuff
  4. Do the full test

Solution:

1. Install Mail enable tool (from http://www.mailenable.com/)

– Go to mail enable (http://www.mailenable.com/) and download the Standard Free Edition.

clip_image001

– Start the simple installation process as the following:

– Double Click on the EXE file you will see this form, Keep this as it is.

clip_image002

– Keep this as it is.

clip_image003

– Keep this as it is.

clip_image004

– Keep this as it is.

clip_image005

– Keep this as it is.

clip_image006

– Put what ever domain you like to have (this way my email will be jamil@dev.net).

clip_image007

– Keep it as it is (The application is smart enough to get your default DNS).

clip_image008

– Next…

clip_image009

– I cleared this for simplicity (I like to use outlook more than web access).

clip_image010

Back

2. Create new mail boxes & make sure that outlook is working.

– Go to start menu and type mail…

clip_image001[4]

– Expand the nodes… You may need to Wait for 5 minutes until you see this menu.

clip_image002[4]

– Create new email.

clip_image003[4]

– Configure outlook.

– Open outlook

clip_image004[4]

clip_image005[4]

– Be careful to use the same parameter here.

clip_image006[4]

-Test the email now.

clip_image007[4]

Back

 3. Configure SharePoint stuff

– Assuming that users are already created in active directory; Go to site collection that you want to work on and add those users to it (i.e. into contributor group).

clip_image001[6]

– Then go to SharePoint site collection content database that you want to work on (in my case WSS_Content), find a table called UserInfo.

clip_image002[6]

– Edit the column (tp_Email) for the users that you want to set emails for.

clip_image003[6]

– Go to Central Administration || System Settings || Configure Outgoing Email and type (<Machine Name>) in Outbound SMTP: (Ignoring this step will make alert button missing on document library).

clip_image004[6]

– You are done!

Back

4. Do the Full Test

– Login with Jamil and register your self on a List Alerts to test.

clip_image001[8]

– Keep it as default (any changes).

clip_image002[8]

– You will receive an email telling you that you have registered in this library on outlook.

clip_image003[8]

Back

Conclusion:

This is very important to give the facility to a developer to Test Email Communications (templates, parameters, timing…) and I find this way the most convenient and fast way of doing this job.

Posted in SharePoint - How To | Tagged | Leave a comment

Export-SPMetadataWebServicePartitionData : The current user has insufficient permissions to perform this operation.

clip_image001

Seems that the user does not have permission on the “Managed Metadata Service” (do it from Permissions NOT Admin.. I waste 2 hours on this😦 )

clip_image002

clip_image003

clip_image004

Now it is working

Posted in Errors | Leave a comment

FWD THINKER KEYNOTE ON BUSINESS PROCESS APPS

As part of my community activities in UAE; I was honored to be the Keynote speaker for K2 User Conference Middle East – Dubai on 28-May-2014, with an enthusiastic audience and great organization by the amazing K2 team, I shared my experience about the future trends of business process management, challenges & best practices to follow in order to make sure that your business process automation implementation is happening smoothly

Feel free to download my presentation below:

 
 

Some Photos from event:

DSC00880

DSC00882

Posted in Community Activities | Tagged , , | Leave a comment

[UAE SharePoint User Group] SharePoint 2013–JavaScript Client Object Model

We had one of our joyful and lovely sessions in Microsoft Offices – Dubai on 5th Feb 2014, people were amazing, knowledgeable & interactive; my co-speaker Iman al Maskari was doing one of her best presentations and finally; the event organization was perfect!

Here is some photos….

Doing the presentation:

DSC_9377-117

 

Part of the audience:DSC_9379-119

 

The smart winner who answered the quiz! thanks for our sponsor O’REILLY for the gift!

DSC_9381-122

Posted in Announcements | Tagged | Leave a comment

[UAE SharePoint User Group] SharePoint 2013 – JavaScript Object Model In Abu Dhabi

 

 

image

About the session:

JavaScript is becoming the new de-facto standard for developing solutions on top of SharePoint, thanks to the new App model!

This session will cover the fundamental use of the SharePoint 2013 JavaScript Object Model (JSOM), explain how JSOM has evolved in SharePoint 2013, and highlight many of JSOM new features.

Agenda:

  • Introduction to CSOM
  • How CSOM works
  • CSOM Advantages
  • Read list data and query
  • Add/Update & Delete list Items

UAE SharePoint User Group (UAESPUG)

UAE SharePoint User Group is a community group that has been established by a group of industry pioneers to help SharePoint users in the United Arab Emirates develop their skills and knowledge in this technology.

To Register please click here!

Posted in Announcements | Tagged , , , , , , , | Leave a comment

[UAE SharePoint User Group] Developing Apps for SharePoint 2013

About the session:
SharePoint 2013 provides a  flexible platform and introduces the concept of SharePoint modern development. In addition to the conventional development methods, SharePoint 2013 introduces various APIs that allow for remote customization and development thus avoiding the need of local installations.

The session will introduce different ways in which apps could be developed and how those apps could be packaged and published for others to use.

Agenda:

  • Development Environment
  • The New App Model
  • Building Your First App
  • Choose the API
  • Packaging & Publishing
UAE SharePoint User Group (UAESPUG)

UAE SharePoint User Group is a community group that has been established by a group of industry pioneers to help SharePoint users in the United Arab Emirates develop their skills and knowledge in this technology.

To Register please Click here!

 

For more information and upcoming events visit:
www.uaesharepoint.org

Posted in Announcements | Tagged | Leave a comment

UAE Community Services :: 4 days SharePoint Development training

During the time between 21-Oct-2013 & 24-Oct-2013; I was involved in 4 days training for UAE National developers as a part of my local community services; the training was covering SharePoint 2013 latest and advanced development techniques with Visual studio 2012, the training was very successful and the feedback was amazing. It was one of my best experiences as a trainer since the audience were very enthusiastic and keen to see how SharePoint 2013 is going to solve a lot of pain that we used to suffer from the previous versions.

2013-11-18T17-39-34_1

 

2013-11-18T17-47-48_0

 

The best way to say thank you for people whom you are living with is always by sharing your experience… you will be appreciated whenever your knowledge is being in use.

Posted in Community Activities | Tagged | Leave a comment

Full SharePoint Project implementation real case example – Part 1 (Understanding SharePoint Challenges)

SharePoint is one of the most successful and fastest growing Microsoft Server products, During the past 10 years; SharePoint has evolved from being a regular product to an extendable business platform that capitalizes & utilizes most of Microsoft products to deliver a super business experience for the enterprise.

A lot of practical cases proved that working with SharePoint for small/medium projects is very useful, it saves a lot of time; you can make a very rich, reliable & extendable application in few days with the least effort compared to coding everything from scratch.

Surprisingly, On the other hand; If we compare SharePoint Out Of the Box implementation with a normal ASP.NET implementation, we are going to find that a lot of technical people prefer to go with ASP.NET option or SharePoint Webparts with custom SQL database rather than SharePoint OOB implementation (Lists, OOB forms…) for the argument that is SharePoint projects are more complex and cannot be guaranteed to be delivered on time. I believe -initially- that this is true and here I am listing down -according to my technical experience- what are the reasons for this:

Before we go through the points let us agree on this:

“The success criterion of the right usage of SharePoint in a project should be measured according to how much Out Of the Box features are being used, otherwise; the decision of using SharePoint might be a big mistake and ASP.NET is supposed to be the right solution”

  1. Missing comprehensive knowledge in the technical team:
    SharePoint is a big product that has a lot of business features; not knowing all those features can lead you to reinventing the wheel in many cases; in addition to knowing SharePoint market third party tools & community add-ins which might save months of development!
  2. SharePoint project is simply an ocean of Workarounds:
    SharePoint is an ocean of workarounds! it is impossible to deliver an Out Of the Box implementation that satisfies your customer without making tons of workarounds.
  3. ASP.NET background reverse effect:
    Most of the people who considered good “SharePointers” are originally ASP.NET developers who have a mature development experience and tend to follow practices that might not be suitable in SharePoint; not to mention that not understanding important concepts like content types, site columns, SharePoint designer workflows, out of the box forms & taxonomies…etc. can lead to wrong implementation.
  4. High potential of Inconsistency:
    When you do Out Of the Box; the potential of getting spaghetti unstructured solution is very high, for example, in ASP.NET the code that does “Add“, “Update” and “Delete” is the same in all the pages, so if you understand one functionality; it would be easy to understand the rest of the pattern; In SharePoint; you might start by building 5 OOB lists and utilize OOB forms for DML operations, then after a while you discover that one of those lists has some complex functionality that cannot be achieved using OOB forms; so you convert it to custom Webparts. Another list is OK but needs a codeplex add-in feature to make it works 100% according to your customer’s needs! That what we call spaghetti implementation which is difficult to maintain & test.
  5. Customers & analysis awareness:
    In many cases, Business Analysts (and some times IT background customers) are not that familiar with SharePoint business platform; so when they do analysis they think of it as a normal ASP.Net application (From scratch application) and they will end up with requirements that fit ASP.NET application rather than SharePoint; Business analysts should always “think SharePoint” and try to give solutions that are more supported by SharePoint, otherwise; we will end up with a week & crappy implementation which was better to be done in ASP.NET. (I am not saying that analysts should be “technology oriented” instead of “business oriented”, actually the business orientation should be dominant during the Envisioning Phase, but should be replaced by the technical orientation during the Design Phase).
  6. ASP.NET simplifies developer’s life:
    Things are easier when dealing with a plain ASP.NET & SQL based implementation; For example, In ASP.NET with SQL DB, you can always empty a table by executing “delete from Table1“; in SharePoint you need to write more than 10 lines of PowerShell commands to do this, generally ASP.NET as a technology is more mature than SharePoint in terms of tools, resources & flexibility.
  7. Complex troubleshooting:
    Troubleshooting in SharePoint is challenging (ULS logs, enable errors trouble shooting, event log… ) network issues, services & authentication… Endless stories & reasons for issues
  8. SharePoint is an “Over-rich” platform:
    SharePoint UI gives u a lot of options and flexibility! This opens a very complex scenarios and increase the probability of end user misbehavior, In addition, a very mature testing plan which includes unit tests, integration test, performance test… and so forth is required, not to mention that this richness imposes a high level of governance plan to be available after delivery.
  9. Difficult to estimate:
    Estimation is something challenging in general! But with SharePoint, it is something that few people can do right! in many cases a simple requirement that you overlooked could make you repeat the whole work; other times a codeplex tool or other third party tool can save months if you know it is exist!
  10. Project Resources challenge:
    This issue can be summarized in four points:
    1. People: it is always easier to find ASP.NET developers than SharePoint developers.
    2. Hardware: SharePoint development machine requirement is extremely high compared to ASP.NET development machine, and that also applies on testing environment.
    3. Time: developers normally use visual studio to build & deploy many times during the day, moreover the time spent for building & deploying a SharePoint solution is normally double or triple the time for a normal ASP.NET application.
    4. Licensing: SharePoint licensing requirements are more expensive than ASP.NET Requirements, and my personal experience shows that 50% of project that I worked on was using licensing scheme  that is higher than what the project really needs! like getting SharePoint enterprise version instead of standard version or sometimes SharePoint Server instead of the free SharePoint foundation.
  11. Complex knowledge platform:
    SharePoint seems to be an easy platform from the end user perspective, but unfortunately it requires a very advanced understanding of the most complex concepts of ASP.NET, database & windows server like memory management, caching, hardware capabilities & networking.
  12. Complex Skills requirements:
    In SharePoint project you might need a complex criteria of development team skills : (C#, HTML, JavaScript, jQuery, CAML, CSOM, XSLT, power sell, batching commands, XML & Xpath…) and from Administration side as well (SharePoint end users skills, infrastructure, scalability, availability, security, firewalls, exchange ….) these skills are not easily found combined together.
  13. Decisions, Decisions & Decisions:
    There are always a lot of big & highly influencing decisions that you need to take at the beginning of each project … Think of how you can do the following scenarios:
    1. A form with two text boxes & 1 button can be done by: Out of the box forms, Out of the box form with custom fields, SharePoint Designer Customized forms, InfoPath forms, BCS, Custom Webparts, Custom smart Webparts, SharePoint hosted app, cloud hosted app, normal HTML+JQuery, Page Viewer Webparts pointing to a custom application, Silverlight, third party based form like kaldeera.
    2. Creating a site can be done by: site definition, site template, PowerShell, custom coding or may be through the browser.
    3. Creating a list can be done by: list definition, list templates, PowerShell, custom coding or may be through the browser.
    4. Placing your configuration data can be in: web.config, site property’s bag, Webparts property or SharePoint list.
    5. Custom business can be placed in: event receiver, prevalidation(), client jQuery, SharePoint designer workflow
    6. Workflow can be implemented by: SharePoint out of the box, SharePoint designer, Visual Studio WWF, third parties K2 Nintex
    7. Data access can be done: object model (Linq to SP or CAML), web services, REST, BCS or CSOM.
  14. Tools & Tools & Tools:
    SharePoint developers use a lot of tools (Visual studio, SharePoint Designer, office client applications, SharePoint manager, internet explorer, SharePoint log viewer, content deployment wizard, U2U… ) all these tools are helpful; but need a lot of knowledge, and when you mix things together. you will lose the control if you are not fully aware of each tool’s problems and capabilities
  15. Administrative Richness Overhead:
    As a very flexible and rich platform; you need always to pay attention to a lot of issues that are not there with normal .NET implementations like (large lists issue, internet website JS and CSS file size…) application services running (Search Services, BCS, excel services…) and features based concept (scoping, dependency, stapling…)
  16. SharePoint Branding is not easy:
    Branding is a very complex process which requires a lot of skills (CSS understanding, SharePoint branding artifacts structure like master pages, page layouts, publishing controls, CSS structure, themes, navigation…) and it is very rare to find the designer who can really understand this structure… and ironically; artistic & technical skills are usually inversely proportionate🙂 (things are way improved in SharePoint 2013 but still not that ideal)
  17. Complex security platform:
    SharePoint Security platform (groups, permission set, permissions, object level permissions) are a little bit confusing for new SharePointers; and fully understanding this is considered one of the ABCs of your implementation, considering that hiding an item from UI doesn’t mean that it is secured since it can be exposed in many ways (like search)! Not to mention that security stores are also not easy to be configured and challenging when troubleshooting if we go beyond active directory membership.
  18. Deployment is a real pain:
    Deployment is one of the most complex processes in SharePoint; especially when you talk about out of the box implementations. ALM and source control is not easy as well; deploying version 1.0 might be -relatively- easy; but going beyond that (version 1.1) is very difficult specially in cases where you have data & content on production. The main reason for that if you compare it with normal ASP.NET application is that in ASP.NET, you are only concerned with dropping your DLLs, aspx, ascx, JS & CSS files into the right place then restore the database & you will be ok… then in version 1.1; you just overwrite those files (DLLs, aspx…) and with some little SQL skills you can run a custom script to add a table or fill a lookup or may be add a column to a table… In SharePoint; deployment is a totally different story!! Because the changes are a complex mix between files & “untouchable” SQL database in addition to having to write code & do a lot of PowerShell & tracking techniques to insure a right 1.1 deployment.

 

Some of the previous points are sad facts that we have to live with, but most of them can be cured if you do things the right way! So here we go…

Internet is full of blogs & articles on how to do a lot of tasks, but I have not seen a full life cycle application that describes an out of the box implementation that teaches you how to “think” SharePoint rather than to “Do” SharePoint, so this is the purpose of this series.

Posted in SharePoint - How To | Tagged | 5 Comments

Managing Video Experience in SharePoint 2013 online session

UAE SharePoint User Group is organizing a very interesting session this time!

Title: Managing Video Experience in SharePoint 2013

Description: The video experience in SharePoint 2013 is enhanced big time!  videos are easier to upload, easier to search and UI now is clean and simple! Join us to Learn how to play around videos in SharePoint 2013.

Speaker: Mai Dasouki (@MaiOmarDesouki) – SharePoint consultant and one of the big experts in UAE.

Date & time: Wed, May 22, 2013 7:00 PM – 8:00 PM GST (UAE Time)

Registration link: https://attendee.gotowebinar.com/register/8639546006589410560

Language: English

It is going to be 1 hour only! You dare not miss it guys..

Posted in Announcements | Tagged | Leave a comment