I completely disagree with the above comment. It is completely not-ok to accept unnecessary complexity, and the complexity in Drupal is working in the Drupal ecosystem is not necessary in my opinion. People complain ocPortal is hard to use all the time and we take that as a signal to make it easier, we don't just bury our head and say "well, only pros should get powerful tools". The primary mission of the last 4 major ocPortal releases has been in improving ease of use, but we define it as ease of use for people to create the complex stuff they want to create. If things match a pattern then you can make that pattern relatively easy by implementing the UI/lexicon in the terms that people already understand ("nodes" aargh). Users have these complex ideas in their head, the software just needs to talk their language, and 80% of what most people are trying to do is really common anyway.
We've loads more work to do in ocPortal:
As web development standards raise I think it is absolutely crucial to make things easier. Could we write web sites in assembly language? I don't think so, it is increased usability of programming tools and languages that has made it viable to make complex software.
- we need to get to the point where people can just do a few clicks to install a choice of theme for a gallery, set to their own colour scheme
- we need to make theme editing as easy as it was to change layouts in Microsoft Frontpage back in the day
- we need to make it so you can modify all your content in your favourite tools (e.g. articles in word, databases as CSVs in excel) just by browsing the website from Windows explorer (Webdav…)
This said, people do need to either set some reasonable limits on either not being able to implement things that do 100% of what they want the way they want it, or have budgets that can pay the salaries of good experienced programmers (all too often we see people wanting really complex custom websites done by a proper agency for a weeks wages for one member of staff).
All CMSs need to be easier, and that does include ocPortal
This is a cross-post of the reply I made to this comment. Because my post is not yet validated I thought I would share the reply here too: