A balance between CP's past and its future

As some of you may know, I’m in the processing of creating and planning a blog about web publishing, and one of the platforms that I’m going to feature in my articles and tutorials is ClassicPress.

Now, I’m new to this community, and I’m not a developer, and I’ve only been using WordPress (via WordPress/com) since 2017. And so I don’t know much about the history of WP and CP, and I can only imagine the griefs that our developers have (had) against Automattic and the WordPress project. Personally, as a user, my only real grievance against WordPress is the enforced use of the block editor.

I’m writing this post because I want to know what the community really thinks and feels about pushing progress for ClassicPress. Because it seems to me that there are those who truly wants to push development for CP with little regard to WP, but there are also those who are conservative about development and are careful about breaking changes and departing too much from WP.

As for me, I tend to be conservative. Yes, I do want progress for CP, but not at the cost of disregarding the rich heritage that we’ve inherited from WordPress (and not just the code, but the culture and way of doing things). After all, parts of our promotion for CP is that it is “instantly familiar” and (for CP 1.x) a drop-in replacement for WordPress 4.9. And even when we reach CP 2.x and start going our own way, I don’t think that we can or ought to divest CP of the things that make it (and WP) unique and useful to many people.

My point of view in this matter is that ClassicPress simply cannot completely divorce itself from WordPress, and so instead of trying to deny that fact, we should just embrace it and make our own future in the light of it.

In fact, the first article for CP that I’m musing about is ClassicPress being a continuation of the “WordPress dream” – with the dream being different for each user. For some that dream may mean being able to continue to use the ClassicEditor. And for some it may mean being able to continue to publish on the web as easily and painlessly as before.

And so… what do you think? I need materials for my article, and I need to know what the community really feels about this.

The way things are done in WordPress is what got us to Gutenberg. We had to change the way things were done in WordPress. The petitions process, hence community voice, is absent from WordPress. We don’t have one person in charge making all the important decisions driven by the need to provide a return on $600 mil investment.

CP versioning using SemVer 2.0 is more in line with the industry standards and ensures predictable releases. So things don’t break with minor versions, only major versions are allowed to have breaking changes.

Version 1 will always remain fully compatible with WordPress 4.9, but breaking changes starting with version 2 doesn’t mean everything will break in CP if a plugin compatible with 4.9 is installed. However, any breaking changes used by CP plugins could cause fatal errors in WordPress since new functions in CP wouldn’t exist in WordPress.

We will provide information about breaking changes ahead of public release of that version, so users and developers can prepare for them if necessary. So you shouldn’t be caught off guard.

A lot of people want CP to move faster in its own direction, but the reality is we have to be conservative due to a limited number of core developers doing the work. It’s a slower pace, but CP is moving in the right direction. As it grows, more core developers will join the project and development will pick up speed. That’s why blogs like yours are important for CP, to help grow its user base which will attract more developers.

5 Likes

Yes, I didn’t forget about this, and this is a very important and necessary change indeed, but I was thinking more about the way things are done in the code level. For there seems to be some disagreements (sometimes) on how things are to supposed be implemented (or not), based on how things were done in WP. Sorry I was not clear about this.

Thanks for pointing this out. Again it is a change from WP that I also personally feel is important.

I reviewed the project’s roadmap, and I see nothing there that I disagree with or don’t like. And so as long as things are moving along in that direction, it doesn’t really matter to me if the development’s pace is slow or not. After all, we already have a working and excellent CP 1.x.

Anyway, starting this blog is a big commitment for me. Right now it is my top priority. Perhaps like many of you, I’m seeing in this project great opportunities, and so I’m going to do my part. In my case, it is the opportunity to fill in the need for good literature, and it is my hope that I’ll also make some income out of it.

3 Likes

First of all, I apologize for the bad English. I hope to be able to give you an insight into what made me, as an Austrian webmaster, rely on ClassicPress.
Well, first of all, the annoyance with Jetpack and Co has annoyed me for years, but the decisive point was ultimately the introduction of Gutenberg. The maintenance effort and maintenance of productive systems is made extremely difficult by regular, serious changes. If you operate a lot of larger and sensitive infrastructures, especially in the multisite area, you are only busy chasing after your users to instruct them in the use of Gutenberg and the procedure starts over with each update.
The increasing pressure to commercialize WordPress is of course understandable, but not user-friendly.
ClassicPress does a lot better here and you can still use twelve billion existing plugins and themes.
ClassicPress has moved me personally to deal more with plugin and theme development and its stable environment benefits the learning process, as I have to spend less time paying attention to the updates and changes to WordPress.
Sure, ClassicPress isn’t perfect, but it shouldn’t sweep its WordPress legacy under the carpet, it’s a very good alternative, especially if you have a long-term focus on a stable environment for web projects.
I see great potential in ClassicPress for a whole new community of developers and the open source scene.
At the moment I am converting all of the remaining WordPress installations in my clientele to ClassicPress and the clients are also more enthusiastic about the simplicity of the TinyMCE editor than about the confusing Gutenberg blocks. With ClassicPress you can give your customers a system that is easy to learn and easy to understand.
In my opinion, WordPress has simply developed in the wrong direction in recent years and instead of responding to the users, one tries compulsively to jump on the bandwagon of PageBuilders and Co and compete with them, which has always been the case lately makes more confusing code and security gaps noticeable.
For my part, I will certainly support ClassicPress in the future, also because it is a bit “conservative”, which I would not call that, because more important than constantly new functions is a safe and simple environment that offers maximum flexibility and that Developers concentrate on securing the basic platform.

9 Likes

Thank you for this wonderful reply! You’ve given me a lot to think about, esp. from the point of view of a webmaster/developer.

Like you, I’m a big fan of stability. Like everyone else, I’m going to use CP for my own purposes — it is a tool, not an end in itself — and it is always good to be able to reliably depend on something that helps us pursue those goals.

I agree with you 100%. I’m also a fan of the KISS principle. My own CP site that is under development is as simple as I can make it. Because at the end of the day, as a writer, my only real concerns are to be able to publish my works and to secure them for the future.

3 Likes

This statement embodies my own “WordPress dream” that I see being continued by ClassicPress.

There is much power (and empowerment) in being able to share one’s thoughts on the web, and using one’s own websites. However, not all the paths to personal web publishing are as easy to walk as the path that WordPress offers (or used to offer, before the introduction of Gutenberg). Let’s not underestimate this.

Advanced users of web technologies often demean WP because it is geared towards beginners and non-technies. But the majority of people who want their voice to be heard, and the majority of people who have amazing creative talents, are either beginners or non-techies. And these are the very people who can give this project such a boost if CP can truly help them achieve their own dreams. And so let’s always keep them in our minds.

2 Likes

Exactly the way of doing things is the worst part of WordPress. In general, the ClassicPress was born, because the way of doing things was unacceptable.

3 Likes

Okay. I hear you. Viktor has already explained that to me. That’s why we are a democracy and why we have petitions. I totally understand that, and I’m on board 100%.

But I’ve also already clarified that I mean more the way things are being done in the code level. (This doesn’t include Gutenberg, of course, which we are all agreed is not good.)

The latest example is the petition to center the links in the login page. There are those who are against it, arguing for caution and more historical research (why WordPress has done it that way), but there are those who care little for that and just want the change to happen.

My point is, WordPress is already an excellent software. As its fork, CP should not forget but respect that heritage, and not push for progress for the sake of progress. That’s all.

1 Like

Progress is never for the sake of it. Things that don’t progress, at a certain point reach the expiry date.

(Read about the five stages of products’ life to understand my statement)

We are thankful to WP and are respectful of its history and values. But we need to go ahead.
We need to make CP its own thing.

Because that is the real goal of being able to fork things.

Forking means you start with a copy of something, to make it its own thing that sometimes becomes even better than the original.

It’s not just copying and backporting.

Certainly it is not wrong to copy and backport. CP however was forked to be a starting point for a new thing from the start.

This does not mean we aren’t recognizing the value of WP that still lives in it, but that this value is now used as a foundation to build a real new thing (and IMHO this making new things out of it it’s the best tribute we can give to this value. We wouldn’t be able to build this new thing that is CP if this value didn’t exist).

The concept of forking is not a “conservative” one. It fosters growth and further development. It encourages people to explore every possible avenue by allowing to benefit from the work that others did. It’s a way to empower people to push things forward.

I agree that some things like centering the login screen appearance seem trivial, but they are not.

They demonstrate that we are an healthy project where proposals for growth and further development are boiling. It demonstrates that CP is every day more and more its own thing. In that regard we can consider it a successful fork.

3 Likes

Thanks for this even deeper insight into the project from a developer’s point of view. And for the reassurance that the community does value WordPress’ contribution, even though ClassicPress does need to go its own way. (Like I said, I do want progress for CP, and I understand the necessity for continued development.)

Well, I’m speaking from a user’s point of view, and I hope that you can understand my concerns. I chose ClassicPress because of its WordPress background — the chance to experience the best of WordPress again before Gutenberg. And I think that it’s safe to say that most users who have switched to CP (and most users who will) have or will have similar reasons.

As I said in my original post, I’m musing about an article about ClassicPress being the continuation of each user’s “WordPress dream.” Hopefully someday, as CP becomes its own CMS more and more, that will become “ClassicPress dream” and users will choose CP for itself, and not because of its WordPress connection. But for now, CP’s strongest selling point is this connection, and so let’s capitalize on that.

The fact it is going to be its own doesn’t mean it’s going to completely turn tables, for example at present @Code_Potent started discussion and proposals about updating TinyMCE from v. 4 to 5, making the classic editor that is CP default editor even better.
V.1 of CP is a lts, meaning it is going to be supported for a long time, and will be the entry point for people coming from WP most likely.
V. 2 will start to diverge, having its own plugin and theme directory and starting on the concept of core plugins that people can activate if needed.
People will still feel at home, basically the engine under it will not change in a considerable way. It’s PHP, with HTML, CSS and a bit of JavaScript as the old and loved WP.
WP devs will feel at home, not having to develop for things like GB or full-size editing and slowly an ecosystem with robust plugins and themes will consolidate around CP.
I envision it like WP 4.9 continuing its journey, as if GB and all related turmoil never happened.
The old WP is not going to die as long as CP goes ahead.

4 Likes

Yes, this is what I want to hear… :heart:

3 Likes

That idea was met too much resistance and the actual implementation is a virtual clone of the existing editor to keep it inline with The WordPress Way. This is somewhere we have an opportunity to not only add new features, but, to shed technical debt and to differentiate ourselves from WordPress in a very visible way – sadly, it already feels like a squandered opportunity and my interest in updating the editor has faded.

2 Likes

Since this is your experimental project, I thought you were doing it your way. You have full control over what makes into the project. You should do it your way, it’s your time and project. If you disagree with anything, it’s your choice to not include it :cowboy_hat_face:

When the plugin is complete and it’s ready for core, then core team can decide how to implement it.

At least that’s the way I see it.

I say continue doing what you think is right, it’s your project. Reject any ideas that deviate from the plan.

5 Likes

Could you point us to the resistance?

For the Editor it has been none stop resistance to changing things, I don’t blame @Code_Potent for his fading interest. Not calling anyone out, but it clear that should we want to “to shed technical debt and to differentiate ourselves from WordPress in a very visible way” then as a community we need to reevaluate what we are prioritizing. My vote has always been to differentiate ourselves, but that has become ever more clear that a handful of vocal community members do not feel that way.

2 Likes

This “vocal community members” thing is a vague phrase that appears to mention a group of people and marginalize their viewpoints without taking responsibility for naming them. In the future I suggest that you criticize the viewpoints instead of the community members. I am pretty sure that I’m intended to be included there, though, so I will respond personally and as a director.

I did not found ClassicPress, but without my technical work over the past few years it would not exist. I have overseen and built the majority of our systems and APIs as well as most of the changes to ClassicPress itself and most of the releases we’ve done so far.

Most of the people who are proposing changes that would break compatibility with WordPress lack experience in one or more of the following:

  • Working together with other software developers to create a project that works for everyone, as opposed to working on their own and creating something that works for them (and their clients).
  • Maintaining a software package that is used by thousands of people.
  • Making changes to WordPress itself.

Because I do have this experience, I can tell you what is going to happen if you succeed in forcing through changes just for the sake of differentiating ourselves from WordPress: You will break many people’s sites and they will complain.

The entire reason I got involved with ClassicPress was to work on a CMS that doesn’t do this.

I think the upgrade from TinyMCE v4 to v5 is a great idea. It can and should be done without breaking the majority of people’s sites.

I’m not saying that we should never break compatibility with WordPress. That’s impossible and not a good idea either. I’m saying that several of the changes that have been proposed recently are not being considered carefully enough for their impact on our existing users and ecosystem.

1 Like

I think you are mischaracterizing my reply, the viewpoint I disagree with is not differentiating from WP or keeping status quo to avoid potentially breaking things. Not the community members who all are actively involved in CP, and contributions/involvement is key for our long term success.

1 Like

I’m confused and more than a little dismayed. I thought CP1.x was going to retain the v.4 editor, and that fulfilled ‘non-breaking’ requirements for those who did not want to move ahead to CP2.x, which was to include the v.5 editor.

What’s the issue with moving to TinyMCE v.5 for CP2.x?

Frankly, if we can’t improve the editor (our most distinguishing feature departure from WP) as we move forward, how are we ever going to move forward? In my opinion, if we fail to make improvements that differentiate CP from WP4.9, we’re probably fooling ourselves that CP is a viable platform.

@Code_Potent thinks the current direction of TinyMCE upgrade isn’t moving in the right direction, sticking too much to the old ways and not departing from WP enough. That’s why he’s no longer working on it. There is a discussion on Slack in #random channel if you want a bit more details. I’ll post his one comment relevant to this discussion:

That’s your opinion, though. My opinion is that it perfectly characterizes what happened.

There’s never any reference to the WordPress Way – that’s just a general thing hanging over everyone’s heads because ClassicPress seems dead-set on not deviating from how WordPress does things.

The technical debt we could have shed was all the v3/4 code by doing the editor project as a v2 thing (which it is anyway) But, no, CP wants to continue dragging the balls-n-chains of WordPress.

We could have added “everything” and let users decide what to enable. To update the editor and still have users installing an extra plugin to get at any of the features…is misguided…and squanders a big opportunity to differentiate ClassicPress.

Next.

I was also under this impression. But it seems there is a strong preference to maintain compatibility with WordPress even with introduction of breaking changes.

Isn’t this inevitable with breaking changes? I’m not really understanding the purpose of maintaining LTS version 1.x if we’re afraid to break things in version 2, 3, etc.

People who don’t want their websites to break should remain on LTS 1.x. That’s what’s it for.

1 Like