SharePoint is an enterprise-level platform.SharePoint can be configured to provide the document, intranet portals, & file management, social networks, extranets, collaboration, enterprise search, business intelligence, and websites.
All of these SharePoint "modules", you could call them, are sure to play well together. On the other hand, Drupal modules, developed by third-party developers, may have to be work again so that their code is adaptable with each new update of the Drupal core.
SharePoint is bloated
Unfortunately, regular feedback from people who feel they only need a restricted subset of the available functions in an application and the others are not required bloat, even if other people do use them. SharePoint services a large, diverse marketplace with several requirements. I wouldn't call it bloated; instead, it is "feature-rich."
Drupal is open source
And this is beneficiary in which way? SharePoint is supported by a $230 billion company that PAYS their product developers/specialists/marketing people/project managers to make SharePoint a superior product and to make sure its success. Capitalism will make SharePoint a better product than the open-source can.
SharePoint produces spaghetti code
To the untrained eye, perhaps. But like learning to read a foreign language.
Once you understand how the syntax and lines are created and what they mean, there is a way to the insanity.
SharePoint is too complicated for users
That's true. I've witnessed the same about Drupal. Just as my father uses his computer to check email, SharePoint offers something for everybody, and it doesn't matter at what skill level. Want to use it for document storage? Done! Create a website? Done! Create a workflow to make your job easier? Done! Code an app? Done! There is always something new to learn about SharePoint for any user, no matter what level of expertise.
The bottom line is, complaints like these demonstrate a lack of knowledge of the SharePoint product.