Make WordPress Core

Opened 7 months ago

Closed 7 days ago

Last modified 7 days ago

#59335 closed feature request (invalid)

Explore Integration of Node.js into WordPress Core

Reported by: harshgajipara's profile harshgajipara Owned by:
Milestone: Priority: normal
Severity: normal Version:
Component: General Keywords:
Focuses: Cc:

Description

I recently came across the topic on wordpress support forum mentioning about exploring integration of node.js into wordpress. As the topic seems interesting, I am creating a ticket here to make it more accessible to the team. Below is the detailed description.

Original topic: https://wordpress.org/support/topic/wordpress-for-node-js/

Now I know this may have been discussed before, but considering I couldn’t find anything on the topic, I thought I should bring it up just in case, to create healthy debate on the topic.

WordPress for a long time has relied on PHP as its only platform, which has been fine since PHP is nearly universally adopted by all hosts big and small. However, PHP has been declining in usage. According to github’s octoverse, it went from 4th most used programming language to 7nth in just 3 years, with tendency to continue going down.

On the opposite hand, javascript and its twin typescript have been on the rise since 2009 thanks to Node.js. Many hosts nowadays offer node.js as an option to create projects, and it tends to be even cheaper than normal php hosting.

So my idea here is to create a side version of wordpress, like tensorflow did with tensorflow.js. Something that internally works exactly the same, and can be connected to the same kinds of databases and whatnot, but use separate plugins and themes(ones made for node.js) in a separate repository. This way, wordpress as a project would be better future proofed and, considering that node.js is faster and provides things that PHP doesn’t such as asynchronous programming, could also allow for better performance(which would be a massive plus, incentivizing early adoption and getting the project a jumpstart). Not to mention that javascript in general has far better backwards compatibility than PHP, which means easier backend updates to newer versions of node.js.

Change History (6)

#1 follow-up: @jrf
7 months ago

  • Focuses performance sustainability coding-standards php-compatibility removed
  • Keywords close added

Popularity of a programming language amongst programmers is not a good indicator. Actual usage is. And PHP is still way ahead of everything and anything else by miles: https://w3techs.com/technologies/overview/programming_language

Rewriting the PHP to JS would be a huge breaking change and would break most of the plugin/theme/tooling infrastructure around WordPress.

Aside from that it would require a huge effort, with the associated costs around that and is likely to re-open the platform to lots of security issues which had previously already been fixed.

Suggest: close.

#2 in reply to: ↑ 1 @peq42
7 months ago

Replying to jrf:

Popularity of a programming language amongst programmers is not a good indicator. Actual usage is. And PHP is still way ahead of everything and anything else by miles: https://w3techs.com/technologies/overview/programming_language

Rewriting the PHP to JS would be a huge breaking change and would break most of the plugin/theme/tooling infrastructure around WordPress.

Aside from that it would require a huge effort, with the associated costs around that and is likely to re-open the platform to lots of security issues which had previously already been fixed.

Suggest: close.

It was specified in the post that "wordpress.js" would be a side version, instead of replacement. And while yes, php is currently the most popular, javascript on the server side hasn't stop growing ever since 2009 with node.js being released(and being honest, wordpress is the only thing keeping php popular).

The plugin/theme/tooling was already addressed, please read the post.

The required costs can be minimized by making, again, making this a side project with lower priority than the main one(wordpress for php).

The advantages, on the other side, are future proofing wordpress as a project(existing in 2 languages is better than one) and possible massive performance upgrades with asynchronous programming and whatnot. This could also bring more developers to wordpress, as not as many people likes/knows php.

EDIT: Not to forget, while php is popular for small dev teams, node.js is far more used in big projects and companies, such as Paypal, uber, Nasa, linkedin, twitter, eBay, Netflix, etc

Last edited 7 months ago by peq42 (previous) (diff)

#4 @jorbin
4 months ago

  • Keywords close removed
  • Milestone Awaiting Review deleted
  • Resolution set to invalid
  • Status changed from new to closed

As @jrf noted:

Rewriting the PHP to JS would be a huge breaking change and would break most of the plugin/theme/tooling infrastructure around WordPress.
Aside from that it would require a huge effort, with the associated costs around that and is likely to re-open the platform to lots of security issues which had previously already been fixed.

There is no intent to change the server-side language of WordPress.

#5 @ivanzusko
7 days ago

  • Resolution invalid deleted
  • Status changed from closed to reopened

Dear @jrf and @jorbin,

As @peq42 has already said, the idea is not a replacement of PHP with JavaScript, but creating a parallel version of the WordPress (eg WordPressJS, if you will).

No breaking changes, nothing exciting will be affected

#6 @jorbin
7 days ago

  • Resolution set to invalid
  • Status changed from reopened to closed

There is no intent to create a parallel version of WordPress in any other languages, though if you would like to try you are welcome to. The GPL gives you a lot of rights including the freedom to study how the program works and change it to make it do what you wish and the freedom to distribute copies of your modified versions to others.

Discussion can continue on closed tickets, there is no need to reopen to add a comment.

#7 @ivanzusko
7 days ago

Thank you for your response, @jorbin

there is no need to reopen to add a comment.

Roger that, apologies

Note: See TracTickets for help on using tickets.