Nextcloud’s beginning was so bright. A nimble file sync and share application underpinned by honest free and open source software principles.
I was so disappointed to see Nextcloud degrading with every new version. With every new version it became slower and slower, new unnecessary features that nobody asked for were added into the core instead of being offered as separate optional apps, highly questionable user experience decisions were made. Nextcloud is on the verge of becoming one of the best examples of ‘how to destroy an application by “improving” it’. Let me be specific:
‘Rich workspaces’. Who asked for this feature ? Why is this feature imposed upon the user, being activated by default, in every new installation. I can understand that in certain rare situations, some users may find it useful, but this doesn’t mean it should be enabled by default. The best approach would have been to include this feature in an app and let the users decide if they want to install it or not.
‘Recommendations’. Who asked for this feature ? Aren’t we all tired of things the Internet recommends to us ? Isn’t it obvious that a simple, clean and clear dashboard is the key to ease of use and better user experience ? I can understand that one user in a million may want to see recommendations, but this doesn’t justify to have them enabled by default.
The ‘Dashboard’ app. Again, I can understand that some users may want to see a ‘Dashboard’ page with status, events, weather, etc., but why is this app installed and enabled by default ? Why don’t you let the user decide if they want to see such a page each and every time they log in ? Instead of clarifying things and helping, the ‘Dashboard’ app will most likely confuse
and disorient new users. Isn’t file sharing the core of Nextcloud ? Then why does every new user see a page with weather and status the first moment they log in ?
The ‘Text’ app. In the old Nextcloud versions, the ‘Text’ app was decent from the user experience point of view. Unfortunately, in the last Nextcloud versions a decision has been made to cover Nextcloud upper bar with the ‘Text’ app’s upper bar when the ‘Text’ app is open. This way, when the user opens a txt or md file, they can’t see the Nextcloud’s upper bar. This is a huge mistake. I understand that the developers who introduced this feature thought that they will gain screen space on mobile devices, but the upper bar of Nextcloud is too important to have it covered and it doesn’t take that much space. Please ask every UX expert and they will tell you the same thing: the user needs to always know where they are when they open various files or apps inside Nextcloud. Thus, the Nextcloud upper bar has to be visible at all times, including when the ‘Text’ app is open. If a user opens a md file, the only bar that they see is the black upper bar of the ‘Text’ app. They don’t know if they are still in Nextcloud, or they have entered something else, etc. ? This mistake of covering the upper Nextcloud bar with an app’s upper bar is repeated in the ‘PDF viewer’ app.
The ‘PDF viewer’ app. Exactly the same problem as with the ‘Text’ app.
Please understand that the layout of all the items displayed in a Nextcloud window cannot be improved endlessly. There is an optimal layout for everything: that layout that is
logically constructed and that it is found to be the most intuitive and easiest to use by the majority of users. After you think you have found that optimal layout, for Nextcloud as a whole or for an application inside Nextcloud, keep it. Don’t try to improve it even further because you will just destroy the good things that have been achieved.
In the future, when you want to introduce some radical layout changes, please consider organizing polls to see how users find those changes.
Instead of adding more and more features to the core, which will inevitably make Nextcloud slower and slower, please try to focus on having the leanest core possible, maybe by getting some code out of the core. Add every new feature as an optional app. The page loading speed is of the utmost importance for a successful application. Also, the ease of use will make the difference between a popular application and an application that will slowly wither and die. The world that we live in is already very complicated. Nobody likes programs that look complicated.
Also, modularity is very important. The core should only implement the basic features closely related to file sharing. All the other features should be implemented as apps. This way, if one application breaks, the other will continue to work. Also, the users will have the freedom to choose and install only the applications that they need. This is what made WordPress so successful. If you try to add more and more functionalities to the core, such as an ERP, a CRM, etc., it will ruin everything.
Regarding future development, some suggested to consider switching from PHP to Node.js. This would be the worst mistake imaginable. Node.js has a structural deficiency because it is based
see its decline, but only after a generation of programmers will have wasted their time with this mediocre technology.
I’m not writing this for the pleasure of criticizing. I’m writing it because I consider Nextcloud one of the most important free and open source software applications, I liked it and I believed in it and I still hope it will recover and find its way back to sound structural principles.
Please analyze my criticism objectively. Nextcloud has already begun to loose users because of its ever increasing core and slow performance: https://www.reddit.com/r/selfhosted/comments/ay2jj1/alternatives_to_nextcloud/
Later edit: Please, don’t suggest that the first 3 problems that I mentioned above can be avoided by disabling ‘Rich workspaces’, and ‘Recommendations’ from Settings or by disabling the ‘Recommendations’ app, and by disabling the ‘Dashboard’ app or by limiting the use of apps to user groups. I know they can be disabled. I’ve already done that in my installation. The whole point of my criticism is that all these features were enabled by default so that they appear in every new installation. The admin has to take additional steps to disable them. This wouldn’t be a big problem if it didn’t signal a very wrong understanding of user experience, a wrong path for future development. What I’m saying is that if Nextcloud developers continue on this wrong path, in time, Nextcloud can loose its user base and will trigger the apparition of cleaner looking alternatives. The ever decreasing speed of Nextcloud will also make users look for alternatives.
As about the ‘Text’ app and the ‘PDF viewer’ app, the fact that their upper bar covers Nextcloud’s upper bar when they are open, can’t be disabled. These two apps are too important to have them disabled and forget about them. In fact they are the best proof of ‘breaking things while trying to improve them’. The developers probably thought to simplify the look of these apps and gain screen space, but in fact they covered up the Nextcloud upper bar confusing the user.
I thought of posting these problems as an issue on github but these are general problems related to the direction that Nextcloud development took, to the long term strategy, so this is the place to post them.