Rust for WordPress people

I met someone I've known for a while in person for the first time yesterday. He owns a company that, among other things like publishing, does Wordpress hosting. He has started learning css, html and PHP recently in order to get a deeper insight into what his company does from a non-managerial level. Part of the reason for getting in touch was that he was curious about Rust, which I tend to post about quite a bit on LinkedIn.

Fast forward a day and after a conversation with me and a choice Bryan Cantrill video he's now somewhat acquainted with Rust and very excited about its potential - not just for his company but for the world as a whole. It helps that he's already a Mozilla fan and heard about Rust's original success in the Servo rewrite. But after that followed a number of questions about WordPress such as plugins, whether Rust has a CMS similar to it, etc. etc. that I can't answer because I don't know much about it besides having a blog or two in it quite some time ago.

So are there any areas I should point him to?

Rust does not have anything that is similar to Wordpress. The web-frameworks that exist are much more similar to something like Flask for Python, and certainly do not have a built-in web interface of any kind, let alone one where you can create new pages from the web-interface.

2 Likes

Hello @Mithridates

As far as I know there are no wordpress like frameworks written in Rust. Anyway there are some very good webserivce container frameworks such as actix or rocket. But those are frameworks to build webservices on and wordpress is a content management system.

Stefan

Rust and Wordpress don't have much overlap and there is a long but rewarding road ahead regarding learning Rust. But it is very worthwhile for the developer who wants to go deeper into how computers work, go deeper in their programming journey, and ultimately build robust, maintainable, performant applications.

After that prelude, the next bit of advice would be answering 'what is a good way to start the journey with Rust', and I think the best answer is to read the book, then try to build a small project. It would help if the project has some personal value or interest and is focused on a specific goal. Those two things provide motivation to push through the inevitable bumps in the road. The last bit of advice is to ask questions (this forum is a good place); as the community is very helpful and welcoming.

Thanks for the replies. Fortunately he is very much sold on Rust and doesn't mind the lack of a similar CMS in Rust right now - his goals for the near future include learning Rust along with the others I mentioned and then going from there.

Direct quote from him: "Most people think you're a quirky developer. I feel like you gave me the keys to the kingdom the other day by teaching me about Rust. If I start studying it now, I'll be one of the most experienced developers at it when I'm 55 - 60 and 10 million people are using it."

I'll be mentoring him whenever necessary and I'm sure actix etc. are some of the first frameworks he'll want to try out.

I don't think Rust is a good fit for a CMS, and there are already way too many out there.
Manual memory management and a very explicit writing style mean that it will take much longer to write the same code.
And caching solves the performance problems of PHP/Python quite nicely, so Rust can't really win there either.

What I have experimented with is real-time interactive editors (Think LaTeX with a live view and edit, where you can choose to work in plain text or the final view). Here the performance benefits of Rust make it possible to do this in real-time. And with wasm the same application can run on the desktop and in the browser.

1 Like

This is what I think will matter 90% of the time on the web. Good caching strategies make the choice of programming language less important.

That said, I have a lot of experience with programming in PHP (I stopped programming in PHP some time after the release of 7.0) and enough experience with writing tests, that I can say, what pained me the most is, that a large part of unit tests was simply about performing type checks. Since I had to test for types, anyway, it made dynamic type systems far less attractive for production-level programs.

With the advance of more powerful type systems and type inference, IMO, the sole remaining advantage of existing dynamically-typed languages for production is, that they have a larger ecosystem of libraries and applications, as well as more available developers. Whenever a new programming language comes into existence, people have to reinvent the wheel and whether that's worth it is, what decides the success or failure of that new language.

Rust has come out as a winner despite facing an uphill battle and that's extremely rare, nowadays, especially with the lack of initial support from giants like Microsoft (C#, Typescript) and Google (Go). Mozilla might not be small, but they're insignificant compared to the other tech companies.

Whether Rust is worth using for the web is difficult to say. I do think it's worth a look, though.

2 Likes