All Together, As A Whole

Independent Developer and Web Site Builders Network

Amy Stephen

Should Joomla! 1.5 be upgraded for Mootools 1.2?

Earlier today, I posted in the Bug Squad, suggesting it's might be time to think about migrating Joomla! 1.5 to Mootools 1.2.

Andrew very correctly pointed out that this must be discussed broadly before any action is taken because upgrading will break existing Mootools plugins.

On the other hand, there are not many new 1.1 plugins or blog posts for community members to use, so, sticking with the old release is likely slowing innovation. I believe, in part at least, that is why many of us have switched over to jQuery.

If there is a Mootools 1.2 upgrade, it might make sense to do so with the 1.6 release (or, perhaps a few months later) so that there is an offsetting benefit of one set of extensions to maintain to lesson the pain of upgrading.

I'm posting here to draw people's attention to this issue and to get your feedback. How many of you continue to develop using Mootools 1.1 for new solutions? How many of you have moved to jQuery? Mootools 1.2? What kind of challenge would it be for you if Joomla! 1.5 were updated for Mootools 1.2? Do you see value in staying the course with 1.1, even two years after 1.6 release?

Joomla! has always tried to provide backward compatibility which is, in large part, why we have 1.1. Do you see this as a good approach? What types of problems does waiting create? In balance, how do you see this approach working for us?

In advance, thanks for sharing your perspectives.

Tags: joomla, mootools

Will Mavis Comment by Will Mavis on November 7, 2009 at 6:48pm
I'm a member of the JBS team, so I got to see Amy's email and knew this article was created, so I wanted to add my comment.

I have answered a lot of posts on the Joomla! forums and I think javascript conflicts are a popular issue. I think anything we could do to help minimize these conflicts would be good.

I would love to be able to use MooTools 1.2 functionality as long as I don't actually lose functionality by moving. I'm guessing that 1.2 has equivalent functionality to everything available in 1.11, so I don't think this would be an issue.

Is having MooTools 1.11 and 1.2 running side by side out of the question? I would want to eventually have developers move all their extensions to 1.2, but I think having a kind of legacy mode would help make the transition much easier for developers and users.

If the community wants to investigate this, I would be glad to help out. Let me know if anyone is already investigating a solution or if something starts up and they want my help.
Jacques Rentzke Comment by Jacques Rentzke on November 8, 2009 at 1:52am
This Joomla forum thread relates:
http://forum.joomla.org/viewtopic.php?f=502&t=273960

Why not give the web site developer (site admin) the choice?

As someone suggested: provide the option in the site configuration have the front-end load either the current 1.1 or the newer 1.2.4 or neither.

When v.2 is established, it could then be added with a maintenance release as another option.

The joomla core for the front-end should support any version (or no version) being loaded.
(unless there is some limitation in doing this?)

Logging in to edit in the front-end can load whatever is required.
Amy Stephen Comment by Amy Stephen on November 8, 2009 at 8:21am
That thread started in March 2008!

In July 2008, Rob Clayburn submitted changes for the Tool Tips updates and volunteered to do more.

In August 2008, ghazal submits a Caption patch, which is the only core Mootools in the front end.

Sbentz submits a patch for switcher and validate.

h13 submits a patch for behavior.php in November 2008.

bucabay gives h13 an answer to how to fix modal issues by telling him what to change in mootools-compat-custom.js

j13 returns a new copy of modal.js

dwj posts his first link to xxxx

On December 18, 2008 Ian posts in and asks for help testing 1.6. The doc page he points to is updated twice by him, and six times by mmaison on December 18th, then, never again.

A report of compatibility issue due to Phoca upgrading to 1.2.

Talk about jQuery conflicts.

Later, another community member offers a link to advise on updating the frontend to 1.2.

This pretty much confirms my suspicions that not keeping up to date with Mootools is causing problems for people who want to develop with JS. They are either trying to upgrade themselves, creating extensions that use upgraded Mootools or jQuery, and that is creating problems.

I would be very happy to have no JS Framework in core. But if we have to have one, I believe core should be up-to-date and we need to expect some issues, and third party developers need to be responsive.

I strongly suspect the problems created waiting are far bigger than the issues we'd face with a more ambitious attitude about our software. This is a period of time that JS frameworks are very rapidly innovating, ignoring that means Joomla! becomes less appealing to developers.

A lot of times, it seems like people complain but they aren't willing to help fix the problem. That thread says otherwise. 1 1/2 years ago, that thread started, and people are sharing code with one another. Isn't that the community-driven effort we are after? Why not adopt an attitude of leveraging that effort into a JS team? Help them meet their needs for 1.2 in core, now, and then ask them to champion the upgrades in 1.6? I honestly believe if the project tries to be more responsive to people and specifically what they are asking for, we can start to build more long-term involvement.

There were opportunities lost in that thread.
Ronak Bhagdev Comment by Ronak Bhagdev on November 8, 2009 at 8:36am
I do agree with Jacques. Choice option could be Good!
Brent Friar Comment by Brent Friar on November 8, 2009 at 8:43am
Due to JS conflicts we've basically developed exclusively in JQuery conflicts mode. Having Joomla stuck with 1.1 is a pain to say the least. I think that Jacques Rentzke pretty much nailed it. JS framework for the front end should be a config setting and let the dev pick on a site by site basis. It would be easy enough to include Moo 1.1 and 1.2 plus JQuery. For that matter, it wouldn't be hard to allow developers to upload what ever framework they want and pick from a generated list.

This makes the most sense since every developer has their personal preference and it does not needlessly limit anyone to a framework they don't like.
Marco Barbosa Comment by Marco Barbosa on November 8, 2009 at 8:52am
"But if we have to have one, I believe core should be up-to-date and we need to expect some issues" That's exactly what I think. Frameworks should be cutting edge, always!

In my opinion, sticking to 1.1 is like taking a step backwards. Of course you have to update to 1.2!
So I think it's best if it would be 1.2 on J 1.6 for a "fresh" start.

However, I'm one of those who moved to Jquery long ago and I remove mootools from all my templates :)

If only Joomla would use Jquery or provide a choice, everyone would win.
What Jacques mentioned about the choice has being going on the forums for a long time now. Once in a while someone will ask this again and again.
I just can't understand why isn't this considered.
Mitch Pirtle Comment by Mitch Pirtle on November 8, 2009 at 9:30am
The first thing I do when I install a fresh Joomla for development is rip out any front-end javascript.

I have yet to work with a UI developer that is willing to work with what comes stock. This spans many, many projects and developers and clients...

The one guy I found in all of Manhattan that actually liked working with Mootools ripped the stale one out and added the new one - that's the closest I can get to a happy UI developer working with Joomla.

This is bad. We don't want people that specialize in making feature rich, easy to use websites avoiding Joomla due to poor and outdated support of something as critical as javascript.

Worse yet is knowing you can't use anyone else's components either, as everyone seems to be adopting a different way of working with (insert favorite non-standard library here)... This further minimizes the benefits of using Joomla.

We need either a smarter implementation of javascript so you can pick and choose, or pick one and keep it current. Picking a library that is not very common and then letting it rot is unacceptable.
Wilco Jansen Comment by Wilco Jansen on November 8, 2009 at 10:47am
Well said Mitch! It is obvious that developers select their Javascript library that solves their challenges the best, so why not gove them the oppurtunity (in the frontend of course). Talking to some developers it becomes clear that people leave Mootools behind simply because it is outdated...and that is just very bad if you ask me.

As Amy points out, there are enough people out there who can, and want to help updating too Mootools 1.2(.4). Go get them! :-D The argument that an upgade will break extensions is not very solid in this situation if you ask me, updates always create the risk that things get broken (as 1.5.15 has learned us also), if communitcated properly (and ahead in time) I do not see that much problems at all.
Jacques Rentzke Comment by Jacques Rentzke on November 8, 2009 at 1:01pm
Mustaq: Aaron Newton (from MooTools) alerted Joomla! developers to the browser detection issue (with unreleased Firefox 3.6) here in the Joomla! CMS Development Google group.

I suspect that it was too close to the release of Joomla 1.5.15 to still make the change?
Stian Didriksen Comment by Stian Didriksen on November 8, 2009 at 1:09pm
It's just a matter of time anyways. You can argue about scripts breaking because of the upgrade in tons of component backends, but with 1.6 already on 1.2.4, if you ask me being a component developer and supporting both versions of joomla is a much bigger pain in the ass if joomla 1.5 continues the moo 1.1 route.

Not much fun in having multiple versions of your scripts I tell you.
Besides, upgrading to mootools gives developers nothing but much more powerful javascript tools. You're not loosing anything when updating, it's quite the opposite.
The biggest change in terms of the API that developers needs to be aware of when upgrading their scripts, is that setHTML and setText are changed to the much more consistent set('html') and set('text').

One other huge change is a feature jQuery developers is quite used to.
I'm speaking of this:
$('div.warning').css('color', 'red');
Which would be coded like this in moo 1.1:
$$('div.warning').each(function(el){ el.setStyle('color', 'red'); });
but can be done like this in moo 1.2:
$$('div.warning').setStyle('color', 'red');

So again, upgrade Mootools before j! 1.6 is out for 2 big reasons:
1. Upgrading before 1.6, will make extensions, and frankly everyone much more prepared for 1.6 whenever it's released.
2. We don't know when 1.6 is released, I for one is tired of waiting, we're already long overdue, lets upgrade YESTERDAY!

That's my word on it :)

Comment

You need to be a member of All Together, As A Whole to add comments!

Join All Together, As A Whole

© 2010   Created by Robert Vining on Ning.   Create a Ning Network!

Badges  |  Report an Issue  |  Privacy  |  Terms of Service

Sign in to chat!