Simplify CSOM for using w/Angular/Backbone/Sencha - for Real World Scenarios, use CSS than JS, overcome OData constraints (oriented to CRUD)
All the things are related to SharePoint Online development:
1. SharePoint CSOM model is too complex for using with leading technologies, such as AngularJS, Backbone, Sencha ExtJS and so on. And there is a lack of documentation for "built-in" CSOM/SharePoint JS API function, for example user name extraction from user field). You have to google a lot to find if anyone has found any solution how to solve it.
3. The OData constraints are really complicated, cause they are oriented to CRUD operations (i.e. working with one list/list view), it is really hard to expand list with joined list (using lookup field) to join multiple fields. And there are still problems with responsive design and user experience, You just cannot mate SharePoint design whatever You want - I always have to keep in mind all the masterpage and placeholders constraints (like search control delegate placeholder and so on).
5. Another thing is Responsive SharePoint design stuff and related things. SharePoint Document Object Model is too complex - I would recommend simplifying it and leave SharePoint Designer, otherwise lots of User Experience professional developer would choose another platform.
6. Problems with anonymous authentication and list view pagination. Pagination does not work, because it requires some extra permission that prevents from functioning.
7. SharePoint Online API is really complicated: the functionality for Event Receivers, Time Jobs, WebParts and so one creates really big challenge, which causes System Architects to consider other platforms and so on. For example: if You have to create solution for On Premises solution it would take few months of development, but if You would have to do the same functionality on SharePoint Online – some of the solutions event Would be almost impossible or would be much higher cost (not only cost of money), but lost of performance and other issues and some of the functions would be almost impossible (like incoming emails and so one – consider scenarios where You can’t use 3rd side solutions or Hybrid architectures).
2. Create your own navigation menu, you don't have to use Microsoft's.
3. Don't use lists, it is well documented how terrible they are. Use a database like you would for any other CMS.
4. I would be happier if SharePoint outright dropped ActiveX requirements and provided HTML5 alternatives to the Office and Windows explorer integration. Having to use IE all the time for document management is much more painful.
5. Don't use SharePoint Designer. It's terrible, I never use it for any SharePoint solution, app or even content.
7. Just because you don't understand it, doesn't make it bad. Event Receivers are great, Timer Jobs are great, re-usable web-parts aka widgets are great. I built an Timer Job yesterday in 15 minutes.
Sounds like you just don't understand how to develop for the platform and are complaining about functionality outside of your experience and understanding. So fix that, go to pluralsight and learn.
a few of your problems are solved if you visit MSDN. That being said, JSOM is significantly under-developed and needs to be brought up to level.
Too many issues. You should have split them out into individual issues.
List view pagination is the real issue here that needs fixing :)
IE8 still lives in many corporate environments, sad but true.
A few valid points here, but cannot vote for this as a whole. Too complicated.