← Back to team overview

launchpad-dev team mailing list archive

Re: Do we need the lazr namespace in our javascript?


On Thu, Jun 21, 2012 at 10:16 AM, Curtis Hovey
<curtis.hovey@xxxxxxxxxxxxx> wrote:
> On 06/21/2012 10:11 AM, j.c.sackett wrote:
>> On 06/20/2012 01:42 AM, Huw Wilkins wrote:
>>> When we pulled the external dependency into Launchpad we discussed that
>>> YUI and yui-gallery should be considered our upstreams. I still think
>>> this is a good idea, in that it would force us to write extensible,
>>> clean, documented widgets and it will mean that we'll be properly
>>> contributing back to the open source YUI community.
> We intended lazr.js to be our UI library that could be be used by all UI
> developers. We even dared to dream that as an early adopter of YUI3, our
> widgets would be the premier UI library. We adopted the documentation
> guidelines so that out work could be used by other communities. We were
> naive. We did not know how to build proper YUI widgets.
> /me is fixing the bug-tag widget that is not a widget.
>> I remember that conversation and still think this is a good idea; having
>> our own gallery-esque space didn't really work out--there's lots of
>> reasons for that, but the net take away is rather than silo-ing our work
>> if we want it shared we should share at the best level.
>> That said, before we move too far in the "shared code" conversation, I
>> take it that there are no disagreements with removing the "lazr"
>> namespace within the LP javascript?
> There was a recent discussion to have a Canonical JS UI library. When
> designers update the library, they update all Canonical sites. As an
> organisation we want it. We do not know how to have such a library
> because the principle users have conflicting design interests or
> infrastructures that must interact with the library. lazr.js failed
> because u1, landscape, and launchpad have divergent interests.
> I image we will want to reuse our js code as we do more non-launchpad
> projects. We probably want to reduce Lp line count by creating a project
> that we control and package easily so that landing a feature does not
> require painful orchestration of landing and deploying two branches
> simultaneously. This would not be a lazr project. This would be
> launchpad-js, or something to do with our new name [1].

I think the problem with laza.js was that it was premature.  There was
nothing built in lazr.js that was reusable in any way.  Even now, we
only have a couple js widgets shared across lp, maas, and maza-server.
 So I think talk of setting up anything too formal is again premature.
 I suggested to Rick when he brought it up to me recently that we get
these couple shared widgets in the YUI gallery as a start.  If sharing
continues, then we could go deeper.

As Curtis notes, one problem is that we have so much disparity and
churn between all our web projects.  I don't think we gain anything
but trying to force less disparity or less churn.  I think it's better
to have anything that can be shared to be done in a form that makes
sense given the churn/disparity.  The YUI Gallery makes sense to me,
and also, it makes you really ask "Is this genuinely generally usable
by others, or just something we're passing around ad hoc in a couple

This works better for js widgets than css, IMHO.  I'm not sure what
the answer for shared CSS should be, or if we even need an answer


Deryck Hodge