“Can’t bill a minute of it” is the crux of the problem.
There are all sorts of ways you can improve the management of customer WP sites. You can put each site in its own small VM, with caching, with FrankenPHP, set that up with cloud-init, manage the entire fleet remotely with WP-CLI, etc.
You can have your own themes, lock down your plugin choices, only use your own code in functionality plugins, all that.
But if your customers can administer the sites, something is going to burn you nonetheless, and when it happens nobody is paying.
Part of it is just that WordPress exists in the middle of the continuum between content and functionality, part of it is the odd mix of users: you can have technically unaware users who you inadvertently empower to make bad decisions. It’s not their fault: it’s an over-permissive architecture.
WordPress, in your own careful hands, can run brilliantly for years. In all the time I have run it (18 years now) my own sites have been fast, busy, stable, reliable: I have even run WP brochure sites for finance industry clients, and I have had full confidence in them.
But if you’re not going to be in charge of it, don’t run it. Because really no amount of monitoring and security mechanisms can stop this eventually happening.
Ultimately I have also decided I am not going to roll out any new WP sites that I have to maintain. But then (despite my admiration for Laravel) I am going to get out of using scripting languages for server side code at all. AI is going to make all internet-facing interpreters dangerous. It’s too large a surface and I don’t have the energy for php2shell Groundhog Day.
Yesterday it was a Show HN[0] about how you've built a CMS.. today it's a blog post about the incumbent. Of course you don't recommend your competitor, you probably never did.
You are entitled to your opinions. That doesn't make them right. You clearly did not read the post. It begins by saying we have built over 1500 sites in wordpress.
"Every Hatamoto install gets its own private admin address."
This might be more inconvenient than a feature, since if I deploy websites for customers I'd have to write down what's the equivalent of wp-admin for each website.
The number one hit on most wordpress install and all other static site logs I have had has been /wp-admin and /wp-admin/install.php .. Infact, right not one of the hatamoto instances is reporting top hit as /wp-admin/install.php
I once copied the wordpress files onto a new domain and a few minutes later a bot had already accessed /wp-admin/install.php and it helpfully installed the site for me using a database of their own to get RCE.
The number one criticism against Wordpress seems to be the plugin architecture. But if you only use a small set of plugins, maybe Akismet, and Loginizer, you can do a lot of things already. Plenty of people don't need many plugins. So maybe this alternative CMS is good too, but I think for a basic blog/website Wordpress is still a good choice. Of course, the author has a point if you have to use hundreds of plugins....
Let me tell you a story. A friend of mine earns a living creating WordPress sites for other people. Whenever there is a bigger problem I will get hired as the cavalry to fix it. That guy literally installs a plugin for everything. By that I mean every aspect of the original Wordpress is replaced by a set of plugins that were never intended to work together. Including layout. The content of posts is no longer stored in posts. There are multiple SEO plugins. There are plugins for simple things like image carousels that display ads in the admin interface, the code to display those ads is probably more complex than the plugin itself. There are paid themes, where the update would cost money that the customer usually is not willing to pay, since the website just works fine, until it does not. Needless to say if I wanted to build a ball of mud that is guaranteed to fail, I would probably call this guy the greatest of all time at that particular goal.
Needless to say, every now and then a plugin is not or cannot be updated and then a PHP update comes around and boom the house of card collapses. Or it is simply just a plugin that gets uninstalled and leaves the database vandalized. These are usually incredibly complex fixes and I am not cheap.
I have told the guy multiple times very precisely how to avoid these issues, but hey YOLO.
When he had a very important customer that demanded a low maintenance, high reliability website, he brought me on board from the start for once. Since I could not manage to steer him away from Wordpress, I at least told him every single plugin has to be vetted, and no fancy theme/layout builders. I still had to stop his urge to install plugins for some things and showed him how to fix them with simple CSS overrides, for the one thing we couldn't manage I wrote the plugin in extremely defensive PHP myself.
The site is going fine, but I didn't check in a while and he has admin rights.
seems like these days ai can create a better design layout and backend than WordPress in significantly less time. It's lost its edge in spinning up semi-complicated websites quickly. Any site I can create on wordpress I could have Ai replicate or recreate in a matter of hours.
This. I now get Claude to spin up sites as needed, with dynamic functionality using vanilla JS and CSS. No frameworks, no CMS, nothing. If it needs a server and database then there's a ton to choose from, I'm currently using Cloudflare Workers and D1 but that could change in an instant to any similar service. Posting a new page is a matter of editing the text and images and then asking Claude to upload it and format it properly. 2 minutes' work.
“Can’t bill a minute of it” is the crux of the problem.
There are all sorts of ways you can improve the management of customer WP sites. You can put each site in its own small VM, with caching, with FrankenPHP, set that up with cloud-init, manage the entire fleet remotely with WP-CLI, etc.
You can have your own themes, lock down your plugin choices, only use your own code in functionality plugins, all that.
But if your customers can administer the sites, something is going to burn you nonetheless, and when it happens nobody is paying.
Part of it is just that WordPress exists in the middle of the continuum between content and functionality, part of it is the odd mix of users: you can have technically unaware users who you inadvertently empower to make bad decisions. It’s not their fault: it’s an over-permissive architecture.
WordPress, in your own careful hands, can run brilliantly for years. In all the time I have run it (18 years now) my own sites have been fast, busy, stable, reliable: I have even run WP brochure sites for finance industry clients, and I have had full confidence in them.
But if you’re not going to be in charge of it, don’t run it. Because really no amount of monitoring and security mechanisms can stop this eventually happening.
Ultimately I have also decided I am not going to roll out any new WP sites that I have to maintain. But then (despite my admiration for Laravel) I am going to get out of using scripting languages for server side code at all. AI is going to make all internet-facing interpreters dangerous. It’s too large a surface and I don’t have the energy for php2shell Groundhog Day.
I simply bill full rate for it. The handful of people who rely on it for their business are happy to pay.
Yesterday it was a Show HN[0] about how you've built a CMS.. today it's a blog post about the incumbent. Of course you don't recommend your competitor, you probably never did.
[0] https://news.ycombinator.com/item?id=50256725
You are entitled to your opinions. That doesn't make them right. You clearly did not read the post. It begins by saying we have built over 1500 sites in wordpress.
Just kinda weird to pivot into promoting your vibe coded alternative that has been on GitHub for less than 24 hours.
"Every Hatamoto install gets its own private admin address."
This might be more inconvenient than a feature, since if I deploy websites for customers I'd have to write down what's the equivalent of wp-admin for each website.
The number one hit on most wordpress install and all other static site logs I have had has been /wp-admin and /wp-admin/install.php .. Infact, right not one of the hatamoto instances is reporting top hit as /wp-admin/install.php
I once copied the wordpress files onto a new domain and a few minutes later a bot had already accessed /wp-admin/install.php and it helpfully installed the site for me using a database of their own to get RCE.
The number one criticism against Wordpress seems to be the plugin architecture. But if you only use a small set of plugins, maybe Akismet, and Loginizer, you can do a lot of things already. Plenty of people don't need many plugins. So maybe this alternative CMS is good too, but I think for a basic blog/website Wordpress is still a good choice. Of course, the author has a point if you have to use hundreds of plugins....
Let me tell you a story. A friend of mine earns a living creating WordPress sites for other people. Whenever there is a bigger problem I will get hired as the cavalry to fix it. That guy literally installs a plugin for everything. By that I mean every aspect of the original Wordpress is replaced by a set of plugins that were never intended to work together. Including layout. The content of posts is no longer stored in posts. There are multiple SEO plugins. There are plugins for simple things like image carousels that display ads in the admin interface, the code to display those ads is probably more complex than the plugin itself. There are paid themes, where the update would cost money that the customer usually is not willing to pay, since the website just works fine, until it does not. Needless to say if I wanted to build a ball of mud that is guaranteed to fail, I would probably call this guy the greatest of all time at that particular goal.
Needless to say, every now and then a plugin is not or cannot be updated and then a PHP update comes around and boom the house of card collapses. Or it is simply just a plugin that gets uninstalled and leaves the database vandalized. These are usually incredibly complex fixes and I am not cheap.
I have told the guy multiple times very precisely how to avoid these issues, but hey YOLO.
When he had a very important customer that demanded a low maintenance, high reliability website, he brought me on board from the start for once. Since I could not manage to steer him away from Wordpress, I at least told him every single plugin has to be vetted, and no fancy theme/layout builders. I still had to stop his urge to install plugins for some things and showed him how to fix them with simple CSS overrides, for the one thing we couldn't manage I wrote the plugin in extremely defensive PHP myself.
The site is going fine, but I didn't check in a while and he has admin rights.
Good analogy for AI.
seems like these days ai can create a better design layout and backend than WordPress in significantly less time. It's lost its edge in spinning up semi-complicated websites quickly. Any site I can create on wordpress I could have Ai replicate or recreate in a matter of hours.
This. I now get Claude to spin up sites as needed, with dynamic functionality using vanilla JS and CSS. No frameworks, no CMS, nothing. If it needs a server and database then there's a ton to choose from, I'm currently using Cloudflare Workers and D1 but that could change in an instant to any similar service. Posting a new page is a matter of editing the text and images and then asking Claude to upload it and format it properly. 2 minutes' work.
`text-wrap: balance` looks terrible on these headings. At least use `pretty`.
text-wrap: pretty doesn't have great support yet (no firefox https://caniuse.com/wf-text-wrap-pretty)
Huh, looks like Firefox is the only one that doesn't support `pretty` as a syntax sugar for `balance` (when only `balance` is implemented). TIL
Personally I can't wait for Wordpress to be revibecoded by super experienced devs.
The idea of Wordpress rewritten in rust made me laugh
After seeing the alternative creative suite... I'm not so sure I can doubt it anymore.
Imagine the backwards compatibility.