Is Mojolicious a sensible long-term choice for web services?

245 views
Skip to first unread message

Alois

unread,
Mar 22, 2016, 8:24:11 AM3/22/16
to Mojolicious
I am responsible for a large and active website based on CGI and perl scripts. Over the years, this has grown into a little 'zoo' of CGI scripts.

We face the task to consolidate this into a more modern and more maintainable web application.

The choice of tools is not easy.

We like Perl, and are quite good with it (more than 16 years experience, about 100k lines of Perl code). But younger programmers are not much drawn to it.
We are also good with C.

This is why we look at Mojo.

We can consider switching to a totally different environment, where attractive Web Fraameworks and related development tools are available,
like Java-based (a lot of choices), Python (Django seems in the front), Javascript (Ember.js ?)

An important point:
- will it be around and maintained 5 year, 10 years, 20 years from now?
- will there be maintainers and developers for it?

How does Mojolicious stand in this respect? It seems to depend on a single man, Sebastian Riedel. Will Mojo die when he turns elswehere?


Ben van Staveren

unread,
Mar 22, 2016, 10:40:15 AM3/22/16
to mojolicious

Personal opinion; it won't die, and I'd say it's an excellent choice if you want the freedom of doing things how you want, Mojo doesn't often get in the way, and if it does its often for a real good reason

--
You received this message because you are subscribed to the Google Groups "Mojolicious" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mojolicious...@googlegroups.com.
To post to this group, send email to mojol...@googlegroups.com.
Visit this group at https://groups.google.com/group/mojolicious.
For more options, visit https://groups.google.com/d/optout.

Sebastian Riedel

unread,
Mar 22, 2016, 12:02:14 PM3/22/16
to mojol...@googlegroups.com
> An important point:
> - will it be around and maintained 5 year, 10 years, 20 years from now?
> - will there be maintainers and developers for it?
>
> How does Mojolicious stand in this respect? It seems to depend on a single
> man, Sebastian Riedel. Will Mojo die when he turns elswehere?

You don't really have to guess, this happened once before with
Catalyst, like 10 years ago. It's not as actively maintained as it
used to be, but still around.

--
Sebastian Riedel
http://mojolicio.us
http://github.com/kraih
http://twitter.com/kraih

sri

unread,
Mar 22, 2016, 6:01:33 PM3/22/16
to Mojolicious
You don't really have to guess, this happened once before with
Catalyst, like 10 years ago.

That said, i have no intention of leaving the project anytime soon. Releases might have been less frequent recently (compared to previous years), but that's simply because the project has stabilized and there's less work to do. The few big features remaining to be implemented, like HTTP/2 support, are so big that they are not doable with volunteers, and will require sponsors.

--
sebastian 

Ed W

unread,
Mar 23, 2016, 7:36:10 AM3/23/16
to mojol...@googlegroups.com
Hi

> The choice of tools is not easy.
>
> We like Perl, and are quite good with it (more than 16 years
> experience, about 100k lines of Perl code). But younger programmers
> are not much drawn to it.
> We are also good with C.
>
> This is why we look at Mojo.

I think these opinions quickly can become overly passionate... However,
I think we can summarise that in general the trend is that web stacks
are generally popular and developers like them. They remove a lot of the
repeated work in developing an app

I think opinions then tend to be around whether people want "full stack"
or just a skeleton. Plus some philosophical differences on how you
construct your MVC, etc.

I presume anyone on this list is going to be a Mojo fan, so feedback
should be positive! I personally use mojolicious in production for a
small project and like how flexible it is. There isn't too much "magic"
so that the structure seems mostly obvious to me (contrast say with some
huge frameworks like Rails where you have a lot of magic, especially if
you need to actually understand the details of some rendering path).

Most of my critiques would boil down to some feature that *I* felt was
missing, and others would be about some unique requirement that *I* have
which would feel tricky to me because my perl fu isn't strong enough (ie
they would be "opinion" criticisms only). So basically, Mojo seems more
than good enough to build both small and huge projects around, any
complaints will be small things that you can build yourself.

Also, I think perl + mojo is the best (of the scripting type languages)
at avoiding "callback hell". It's not totally avoidable, but we have a
lot of tools (mojo + anyevent) to keep it mostly under control.

> We can consider switching to a totally different environment, where
> attractive Web Fraameworks and related development tools are available,
> like Java-based (a lot of choices), Python (Django seems in the
> front), Javascript (Ember.js ?)

Dunno, it's only a datapoint, but for me the "new hotness" is Elixir. I
like the way the language "thinks", and in many ways I find it quite
compatible with perl (I think perl never totally embraced OO and hence a
lot of code is kind of partly OO and partly functional. In fact there is
quite a lot of functional style thinking in many perl projects)

The philosophy of web dev in Elixir is that the language easily supports
even millions of (green) threads, so you can write your code in a
"blocking style" and never worry about blocking other threads. If you
are tempted I would recommend Joe Armstrong's thesis paper, this gives
you insight on why the language "thinks" in the way it does. Examples
of successes in Erlang/Elixir might include Whatsapp and there was a non
trivial multi user chat app demo'd recently running 2 million
connections to a single server.

Again, just a datapoint, but I'm planning to move my Rails projects to
Elixir, but no plans to move the Mojo stuff (in fact we will probably
increase the number of mojolicious apps, mainly for lightweight,
compartmentalised type deployments)


Good luck!

Ed W

Alois

unread,
Mar 23, 2016, 3:43:12 PM3/23/16
to Mojolicious
Thank you!

On Wednesday, March 23, 2016 at 12:36:10 PM UTC+1, The Wildgoose wrote:
Hi

..
Reply all
Reply to author
Forward
0 new messages