Ask HN: Why has nobody built a better Wordpress?

57 points by aml183 ↗ HN
Wordpress is terrible. CMS as a whole is bad. Why has no one built a better one? I know people have tried, but why lack of traction?

72 comments

[ 2.8 ms ] story [ 128 ms ] thread
Few thoughts.

1) It's "good enough". Sure it is slow. Sure it is kind of buggy. Sure it gets hacked a lot. But at the end of the day, it mostly works. Harder to disrupt something that mostly works.

2) Traction. It has 1000s of plugins and themes. To get big, someone else would need a lot of plugins and themes. But no one will make plugins and themes for someone that is not big.

3) ease of use. I know a lot of people that WP admin and make WP websites for a living. They are not technical in the programmer sense (although some can hack a little PHP). They don't really want to have a giant MVC architecture with DAOs and Angular and Node.js and blah blah blah. They just want to throw up a blog like website.

WordPress may be terrible for us developers who are trying to hack on it, but the Admin area for WordPress is stupid easy for how much functionality it contains.

Tens of thousands of plugins to do almost anything you could possibly ever need to do. When you're building websites for a client on a budget, the availability of plugins goes a long way.

Maintenance.

If you have a small business that needs a site, but your not savy to do it yourself, you ask a developer to build you a wordpress site. You know that even if said developer is gone in a few years, enough people know wordpress that it can be maintained..

> Wordpress is terrible

That's open to debate. I have 3 websites running on Wordpress, I don't have the intent to use anything else. It's simple and comes with batteries attached, especially for people who aren't hacking the code themselves. The plugins/themes are a big plus and so is the community. In what way is it terrible? Have you used it enough?

> CMS as a whole is bad

No. CMSes serve a purpose and serve it well. Btw, TechCrunch, Fortune.com run on Wordpress too.

> Why has no one built a better one?

There are a lot of other CMSes. Different names of course, Drupal, Joomla, Django-CMS. Different languages too.

> Why lack of traction?

There's enough traction... Updates to the core/themes/plugins are frequent. There are a lot of performance updates coming up, along with PHP7 and HHVM, which will speed things in general.

What's your background ? WP was a mental burden to me. Imperative loops and hooks, too fragile to my tastes (OOP freshman, Lisp/FP head), unless you know the house by heart.

Also, WP plugins can be monstrosities of cosmic scales. An pure exercise in delegation.

Not in the mood to post my resume here. You may guess or lookup. But if WP is such a big burden for you, why not move to something else.. if it's your main job, hope it allows you to move on.
Sorry, I didn't mean for you to prove anything. Just wanted to know what kind of systems or paradigm you knew before working on WP.

It's not my main job, but regularly people are looking for people to work on WP codebase, so I had to come back to it a few times.

It was in 3.7 days IIRC, I remember an article saying v4 would be a departure from the old model but I can't find it again.

It isn't worse than most other CMS code bases that I've used. Drupal is probably the worse, although I haven't looked at it in years.

Not sure what you have against hooks per say. They are just a form of event callbacks that any such system would require.

Seems like drupal is going full symfony2 bundles, from a distance it seems like a great move for quality.

Hooks are ok, too much hooks and too much global states made if hard for me to understand order of things.

You are looking at the implementation. Most people are using it, not trying to extend it. As noted by many others, WP is popular because it gets the job done for the users in a "worst is better" sort of way.

http://www.jwz.org/doc/worse-is-better.html

Indeed, this was a dev POV. I understand the appeal for 'userspace', WP is mainstream, big numbers are reassuring, and you can always find someone to fix issues (you shouldn't have) or at least make you feel like things are possible.
The traction comment was referring to new upstart alternatives to wordpress, not wordpress itself.
Wordpress is terrible, but none of the ways in which it's terrible matter.

From the point of view of the user, Wordpress is incredibly simple and intuitive. Don't underestimate how important it is for the average user to never see a terminal, and rarely if ever see the source code, for the application to feel comfortable to people most familiar with Windows applications and web forms. Anything more technical than that is intimidating.

Most people who use Wordpress aren't programmers, don't want to be programmers, and don't want to hire programmers to get their site up and running. The simplicity of installing new plugins and themes is far more important than the quality of the code.

Well said. I believe most programmers overlook the business utility of the product. You can have the product with the best quality code but users are not going to adopt it unless it solves their business problems. Code quality has nothing to do with the user acceptance of the product. With the entrenchment of WP in CMS space, OP is unlikely to unseat WP by rewriting the WP with the best possible code quality.

A few years ago, while searching for a development role, I was rejected by couple of people at a company with feedback that my code sample was not of good quality. Later I got the chuckle when I noticed the same people subscribed (paid) to my service that uses the provided code sample.

With respect to a software like Wordpress which is:

- huge and powerful

- vividly maintained and extended by lots of developers

- rarely features security issues which aren't fixed immediately

... the question arises whether the quality of its code base is in this case maybe rather an academic issue.

>- rarely features security issues which aren't fixed immediately

I tried to use WordPress once. I downloaded a theme from wordpress.org with the assumption that themes are reviewed before making there. Nevertheless, I did some basic pentesting before putting my app live, and I quickly found a XSS vulnerability in the search bar of the theme (their paid version featured the same vulnerability). Maybe my experience is not to be generalised to WordPress in general, but it put me off.

> Maybe my experience is not to be generalised to WordPress in general, but it put me off.

WordPress plug ins are - as far as I know - not reviewed. You're at the mercy of the respective developer.

They are, as this link seem to indicate: https://wordpress.org/plugins/add/

>Currently there are 224 plugins in the review queue, 198 of which are awaiting their initial review.

When you first add a new plugin it is reviewed, but once it's been accepted you are free to push out whatever changes you want without review.
"users are not going to adopt it unless it solves their business problems."

Pretty much the truth of any product (software or otherwise) really.

- I do use my console on a daily basis (fish bash)

- I am a programmer (at least that's part of what I do)

- My blog is 50% about programming

Still - I don't see any reason why I would want to spend even a minute longer on the layout or some backend processes.

And I even less understand why anybody using a blog would want to or even need to use a terminal for that purpose ...

When programmers see a terminal, they tend to see it in terms of the freedom and flexibility it provides. To everyone else, it looks broken, primitive and weird.

But most modern frameworks and CMS platforms seem to take for granted that everyone moved on from FTP to git ages ago, which isn't the case.

Where precisely within the workflow of blogging do you think the kind of programmer you describe would appreciate using a terminal?
I wasn't talking about blogging specifically, but in general terms, having to use one for updating and deploying.

I could possibly imagine someone writing blog posts in markdown or plaintext and pushing them somewhere, but that would be the edgiest of edge cases, and even then a native app or web form would be more intuitive.

and that's why your suggestion of missing shell involvement is not that much of a great point in this context of Wordpress
I do all my deployments for all of my applications in a shell.

If I were actively writing a blog, it would be administered in the shell as well.

Surely the point was that the shell is unimportant for the vast majority of users, despite some HN missing its power.

Piping stdout to a new blog post, of course.
1) Superior installability (and in recent releases, update-ability). This doesn't preclude others from making something better, but WP makes incredible ease of installation/deployment (including of themes, plugins, updates, etc.) "table stakes." That's a genuine "barrier to market entry" for any contender. IME, nothing else comes close to WP installability. There are some glitches around updates (esp. if themes and such have been customized), but updates are also increasingly smooth/automatic.

2) Momentum, inertia, market position, "path dependence," installed base, and community. Also not a show-stopper for those wishing to improve on WP technically, but a huge hurdle to cross for anyone wishing to encourage investment in alternatives. Large user bases create virtuous cycles of investment and improvement that fix previously broken things. Sure, it may not always be pretty, but WP now how has WYSIWYG editors, versioning, increasingly automated updates, ever improving admin features, and many other things that were hopeless in previous versions.

3) LCD. WP works on virtually all platforms, and is a credible lowest common denominator in terms of technology used (PHP, MySQL) and breadth of support. There have been some attempts to ramp up alternatives, but they often require one to use Ruby on Rails, Python and Django, or other less-LCD tech.

4) Chicken and egg problem. I have no doubt that at some point another CMS/publishing platform will arise to supersede WP. It's the nature of tech things. It's unlikely we'll all be using WP in 2025 or 2045. But as a developer who definitely wants a more elegant, extensible CMS platform, and who has the tech skills to jump languages and environments, I've never found a better alternative to invest in/build on. There are frameworks like Rails, Flask, Django, Meteor, etc. we might use for custom apps. But a built-out, reasonably-supported, rich CMS / web publishing environment? I haven't found an alternative I can credibly present to customers, co-developers, and designers as an up-and-coming, likable, very-likely-to-succeed platform we should build on. Linux over historical Unix, nginx over Apache, or Go over C or C++? Sure. There is no general-purpose X I could broadly recommend over WordPress.

Btw, if you'd like to see what a legitimate attempt to improve on WP looks like, check out Bolt: https://bolt.cm

Strong framework, component based, lots of basic features, looks and operates a lot like WP. But, much harder to install than WP, less featured (esp. when common plugins are considered), vastly smaller community and supporting base of plugins and themes, yadda yadda.

aka: useless.
Not useless--but certainly much closer to that end of the spectrum than WP's "runs a good chunk of the entire Web." Its strong underpinnings notwithstanding.
Well, it's definitely possible if executed correctly. It's certainly not impossible. It's just not as easy as it sounds, but there's an opportunity there to execute correctly
The simplest answer is many other CMSes try to solve the wrong problems. Many to try scratch the itch of a dogmatic programmer instead of a content generator. In the end, most end users aren't programmers.
I work teaching Wordpress (and other CMSs) and i can assure you that Wordpress is the best option available for less savvy users (no programmers looking for a professional website). To this kind of users your statement (Wordpress is terrible) don´t make any sense. Actually Wordpress have an amazing ecosystem (maybe the best) for normal people (like lawyers, salespersons, housewives, and so on) who wants to learn (fast) how to create a professional website (something beyond Wix, for example).
totally agree on that. I've seen so many people which are non programmers but they can somehow customize Wordpress. Is not that incredible... people using and maintaining a software without beeing a programmer? (For the record I also dislike PHP and many Wordpress internals).
Isn't that what Ghost is aiming for? It's beautiful, has a great writing experience, is Open Source just like Wordpress, cheap hosting, and is working on expanding it's plugin ecosystem.

https://ghost.org/

I wish they had a good system for setting up and managing user roles.
"I just wish they had a good <insert requirement here>" beautifully sums up why it's hard to get any alternative up to credible momentum / activation energy.

A lot of alternatives do individual X, Y, or Z functions better than WP. None I've seen have achieved a reasonable fraction (say, >40-70%) of the extremely broad set of aggregate requirements the entire developer, designer, and user communities would need to commit to a WP replacement.

Having a good plugin and theme system with an intiuitive web UI would make the rest of it easier. Bonus points for being able to add multiple repos.

Unfortunately, the can of worms that opens up in Wordpress is one of the worst things about it. Every plugin and theme is essentially its own ad-hoc web application running with global privileges.

No oauth or ldap integration. And they don't want to do it either.
Right now I'm sure there's other things that take higher priority they need to get out the door. LDAP in particular would be much later in their product development cycle.
All of it is true. But installation wise, WP is way easier than ghost, especially for non programmers.
The Wordpress ecosystem is where it's at. People making plugins, themes, blog posts, education, etc, etc, etc. The Ghost ecosystem feels anemic at best. Go look at the templates. The list barely changes from month to month, and a significant number of themes are released then completely abandoned by the developers. I don't know why, but it feels like Ghost has not been able to get the community activated in an effective manner.
(comment deleted)
The people who have have done so charge money for their stuff.
I recently found that MP3 upload fails if you have Unicode MP3 tags. Would have thought that a bug like this would have been fixed by now.
Like others here, I don't think WP is terrible if you look at it through the eyes of their typical users.

I also disagree that nobody is building a better WP: I recently started working with Webflow, which is very good, quite powerful, and writes very clean code (better than most developers could write themselves).

And, on a more wysiwyg level, there are plenty of new companies like Squarespace offering a service targeting the same user-base as WP.

People have been writing "Wordpress replacements" forever. Writing a new blog engine is practically a rite of passage for a web developer; the problem is that nobody has yet produced one which is as easy to deploy, configure, and maintain.

Even if they did manage to, they'd have a massive amount of momentum to overcome in the form of the theme and plugin communities; there is so much turnkey extensibility available (for better or worse) that it comes with an awful lot of end-user value baked in out of the box.

Wordpress is slow, and its plugin/theme architecture breeds security holes like nobody's business, but that doesn't matter to your average user who does 90 pageviews/month and doesn't care about security until they actually get attacked.

We've talked several times with my colleagues about this, and we ended up writing things down : http://makina-corpus.com/blog/metier/2014/why-cms-will-not-d...

TL;DR : The sheer amount of work to get at least to the level expected by the users outweights most motivations. Maybe one day someone will come with a way better solution, one which Wordpress cannot cope with. And then, we will have another cycle. ;)

(comment deleted)
This is my first HN comment - I must be the only WP developer who reads Hacker News or something. Let me preface this by saying I'm not going to be repeating what's already been said about non-technical user friendliness.

WordPress was my gateway in 2008-9 to web development. back when I was still a graphic design student. I started off hacking away at themes with my extremely limited HTML / CSS / PHP knowledge back then. Shit, my Google-fu was't really even halfway decent then.

Today, thanks to the large community of developers working on the core WordPress project every day, and the sheer number of bug fixes, security updates, and new features that get added with each release -- there's absolutely nothing to compare it to. It runs nearly a quarter of the entire internet.

And now, with the upcoming release of the JSON REST API as a part of core, developers will be able to take advantage of using WP as a data backend (read: users still control their content), while using the API to build applications with modern tech like React or Angular.

Just my two satoshis.

Edit: I'd also like to point out that several (not all) hacks come from popular themes and plugins that are created by 3rd party authors / sources. Some of these are not available on the wordpress.org theme and plugin repositories, and usually this is due to not following certain standards. I would blame most successful hacks on brute force attempts against sites with admins who leave their username as the default admin and have incredibly weak passwords. I would also venture to say most of these hacks come from through exploits in third party code or out of date code, which users often fail to update.

IMO there is no excuse for the lack of login rate limiting in Wordpress core. Drupal has had this for years and it causes no usability problems at all, while making it almost impossible to brute-force an admin session. It just boggles my mind that it takes a plugin to provide this basic protection on WP.
> CMS as a whole is bad. Why has no one built a better one?

In the next few months that's going to change dramatically. Shoot me an email to vlad@webflow.com for a demo if you're curious.

Wordpress is not terrible. People have made systems that improve on it though. Those systems just haven't been widely adopted because Wordpress has too much momentum, plugins for everything, etc.

People often confuse popularity with merit. All of the popular systems are technically obsolete. Mainly we are waiting for people to catch up.

There's tremendous inertia. Lots of bloggers have learned it and many of them are not technically proficient. Hence, it's an extreme uphill battle trying to get non-technical people to learn a new system.

And because WordPress isn't bad enough, none of the bloggers will learn.

Same reason why nobody has built a better Google.

PHP is not terrible, Wordpress is not terrible. It's just you, trying to be "different".

Why would Wordpress be terrible? I use it a lot for fast web development for clients. They don't pay much and i get the job done reasonably fast...

Everyone wins, because it gets the job done.

This question needs to be asked about mediawiki.