Lua Team - The Legacy

classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

Lua Team - The Legacy

Italo Maia
While discussing at the docker official images project the addition of lua images, which would be very helpful for large scale projects (coff coff lapis) and library testing, Tianon Gravi cooked up some very interesting questions regarding the Lua project development continuinity.

I think this was discussed to some degree in the past but I would like to shed some more light to the issue. I know that, even if Roberto is the main core developer and there are three at the moment, students, ex-students and others help improve the language by spoting problems in the documentation, making suggestions to the implementation and providing patches.

One thing that I would like to know more is about is if there are plans for the language growth and legacy. Big companies usually have to prepare people to take over positions when they become vacant by any reason (company needs more people for that task or the person fall sick or retired).

Are there plans for Lua to have more core developers or a guidance for new core developers? Like, "if you plan to become a developer of the language, this should be your mindset and compromises".

I'm fully aware this is not a trivial question nor has a trivial answer, but do believe it should be discussed, given other languages usually more people involved (which is not necessarely better) and that might affect the perception of new developers.

Thanks for reading this long message.

--
"A arrogância é a arma dos fracos."

===========================
Me. Italo Moreira Campelo Maia
Co-fundador do Grupo de Usuários Python do Ceará
Secretário ForHacker (fb.com/ForHackerSpace)
Desenvolvedor Full-Stack, Escritor, Empresário, Visionário
-----------------------------------------------------
Meu Livro, Site, Blog
===========================
Reply | Threaded
Open this post in threaded view
|

Re: Lua Team - The Legacy

Lorenzo Donati-3
On 22/03/2019 16:25, Italo Maia wrote:

> While discussing at the docker official images project
> <https://github.com/docker-library/official-images/issues/3404#issuecomment-475452237>
> the addition of lua images, which would be very helpful for large scale
> projects (coff coff lapis) and library testing, *Tianon Gravi* cooked up
> some very interesting questions regarding the Lua project development
> continuinity.
>
> I think this was discussed to some degree in the past but I would like to
> shed some more light to the issue. I know that, even if Roberto is the main
> core developer and there are three at the moment, students, ex-students and
> others help improve the language by spoting problems in the documentation,
> making suggestions to the implementation and providing patches.
>
> One thing that I would like to know more is about is if there are plans for
> the language growth and legacy. Big companies usually have to prepare
> people to take over positions when they become vacant by any reason
> (company needs more people for that task or the person fall sick or
> retired).
>
> Are there plans for Lua to have more core developers or a guidance for new
> core developers? Like, "if you plan to become a developer of the language,
> this should be your mindset and compromises".
>
> I'm fully aware this is not a trivial question nor has a trivial answer,
> but do believe it should be discussed, given other languages usually more
> people involved (which is not necessarely better) and that might affect the
> perception of new developers.
>
> Thanks for reading this long message.
>

I had thought about that for a while, too.

I've always thought that the open-source/close-development model used by
Lua team has, together with many advantages (e.g. no design-by-committee
bloat), some serious drawbacks: what you are talking about is one, IMO.

Unless PUC Rio already has a plan for that, of course.


Of course I don't know when, say, Roberto (I think he is the older
member of the team, IIRC) is going to retire, but since Lua copyright is
by PUC and not by Roberto&C. themselves, I don't think they have the
right to maintain ownership of the source code, in that case.

Well, probably PUC is not so dumb enough (I hope!) to NOT letting
Roberto lead the team also when he retires, if he so desire.
Universities around the world can make agreements with a professor
emeritus in order to keep him/her doing outstanding work.

But again, not every institution is smart, and dumbass
bureaucrats/managers hide everywhere. I've seen myself (good)
research/industrial projects ditched (or left to die by starvation, or
left to fall into pieces - choose your poison!) because just a single
senior key developer/engineer/designer/lead retired or changed his/her job.

So, in the end, the questions you pose are quite meaningful, IMO.

I hope Lua team has something (good) to say about that.

Cheers!

-- Lorenzo.



Reply | Threaded
Open this post in threaded view
|

Re: Lua Team - The Legacy

Steve Litt
On Sat, 23 Mar 2019 10:11:26 +0100
Lorenzo Donati <[hidden email]> wrote:

> On 22/03/2019 16:25, Italo Maia wrote:
[snip]

> >
> > One thing that I would like to know more is about is if there are
> > plans for the language growth and legacy. Big companies usually
> > have to prepare people to take over positions when they become
> > vacant by any reason (company needs more people for that task or
> > the person fall sick or retired).
> >
> > Are there plans for Lua to have more core developers or a guidance
> > for new core developers? Like, "if you plan to become a developer
> > of the language, this should be your mindset and compromises".

[snip]

>
> I had thought about that for a while, too.
>
> I've always thought that the open-source/close-development model used
> by Lua team has, together with many advantages (e.g. no
> design-by-committee bloat), some serious drawbacks: what you are
> talking about is one, IMO.

I like the non-Democratic way Lua development works. As you say, no
design by committee. In addition, not a week goes by when somebody
doesn't champion yet another change to the Lua language. And a whole
bunch of people agree. And the email thread goes on for days. And most
of these suggestions are edge case stuff easily accomplished with just
a few lines of the current Lua language. And Lua doesn't need syntactic
sugar: Nothing in Lua is particularly cumbersome.

Additions and changes aren't free. They typically add more nooks and
crannies where bugs can hang out. They have an alternative cost of Lua
developers developing something really important not already there (I
don't know what that could be) or fixing bugs. And last but not least,
I'd prefer not to add alternatives that I need to learn in order to
work with Other Peoples' Code.

Continuing, Lua's strong point is it's a minimalistic language. Last
time I looked hard (5.1), there were exactly two complex datatypes:
Table and Metatable, and you could do *anything* with those two. What a
breath of fresh air that is. Why people want to add more geegaws to
such an exquisitely succinct language is beyond me.

Fortunately, with the current non-democratic development paradigm,
those requesting features can go on for a week or so, have their
say, and nothing comes of it. Mainly because they didn't have enough
skin in the game to do most of the development themselves. They could
have made and distributed a patch, and if it were widely used perhaps
it would have ended up in the distribution. They could have developed a
Lua-only include file to fulfill the need, put it on their own website,
problem solved, and here again, if popular, it might become part of the
Lua curated libraries. They could have forked Lua. That's the ultimate
guarantee of freedom in Free Software, especially useful if the
project loses touch (which it hasn't).

In summary, 90%+ of those asking for enhancements aren't aware of the
cost of their request, so it's a good thing the developers don't scurry
to implement them.

The question was asked what to do when Roberto retires. Same thing as
any other Free Software project directed by a maintainer: He appoints a
competent successor, or else may the best fork win.

SteveT

Reply | Threaded
Open this post in threaded view
|

Re: Lua Team - The Legacy

Dirk Laurie-2
Op Di. 26 Mrt. 2019 om 03:21 het Steve Litt <[hidden email]> geskryf:

[I agree with just about everything that I snipped.]

> The question was asked what to do when Roberto retires. Same thing as
> any other Free Software project directed by a maintainer: He appoints a
> competent successor, or else may the best fork win.

Retirement from a full-time job does not mean that one drops out of
programming. Or out of language design. On the contrary: life starts
when you no longer need to teach and attend meetings.

-- Drk

Reply | Threaded
Open this post in threaded view
|

Re: Lua Team - The Legacy

Lorenzo Donati-3
In reply to this post by Steve Litt
On 26/03/2019 02:21, Steve Litt wrote:

> On Sat, 23 Mar 2019 10:11:26 +0100
> Lorenzo Donati <[hidden email]> wrote:
>
>> On 22/03/2019 16:25, Italo Maia wrote:
> [snip]
>>>
>>> One thing that I would like to know more is about is if there are
>>> plans for the language growth and legacy. Big companies usually
>>> have to prepare people to take over positions when they become
>>> vacant by any reason (company needs more people for that task or
>>> the person fall sick or retired).
>>>
>>> Are there plans for Lua to have more core developers or a guidance
>>> for new core developers? Like, "if you plan to become a developer
>>> of the language, this should be your mindset and compromises".
>
> [snip]
>
>>
>> I had thought about that for a while, too.
>>
>> I've always thought that the open-source/close-development model used
>> by Lua team has, together with many advantages (e.g. no
>> design-by-committee bloat), some serious drawbacks: what you are
>> talking about is one, IMO.
>
> I like the non-Democratic way Lua development works. As you say, no
> design by committee. In addition, not a week goes by when somebody
> doesn't champion yet another change to the Lua language. And a whole
> bunch of people agree. And the email thread goes on for days. And most
> of these suggestions are edge case stuff easily accomplished with just
> a few lines of the current Lua language. And Lua doesn't need syntactic
> sugar: Nothing in Lua is particularly cumbersome.
>
[snip]

> Fortunately, with the current non-democratic development paradigm,
> those requesting features can go on for a week or so, have their
> say, and nothing comes of it. Mainly because they didn't have enough
> skin in the game to do most of the development themselves. They could
> have made and distributed a patch, and if it were widely used perhaps
> it would have ended up in the distribution. They could have developed a
> Lua-only include file to fulfill the need, put it on their own website,
> problem solved, and here again, if popular, it might become part of the
> Lua curated libraries. They could have forked Lua. That's the ultimate
> guarantee of freedom in Free Software, especially useful if the
> project loses touch (which it hasn't).
>
> In summary, 90%+ of those asking for enhancements aren't aware of the
> cost of their request, so it's a good thing the developers don't scurry
> to implement them.
>

As I said in my previous post, I acknowledge the advantages of Lua
development model, but I pointed out one drawback (there is no perfect
model).

Another one is what you speak of as an advantage: "90%+ of those asking
for enhancements aren't aware of the cost of their request" Yep! right!
And I think many won't do those requests if the development process were
more open. Of course there would always be someone who would push for
their idea despite its "impedance mismatch" with the current
implementation/Lua team's view, but I think they could be a small minority.

A more open (in the sense of "the community knows what's going on")
development process would allow people to understand more easily why a
good idea taken in abstract term would not fit Lua effectively.


> The question was asked what to do when Roberto retires. Same thing as
> any other Free Software project directed by a maintainer: He appoints a
> competent successor, or else may the best fork win.

"He appoints a competent successor" Nope! That's just the problem I
pointed out: from a legal POV, as far as I understand, all legal aspects
of ownership of Lua are to be referred to PUC Rio, an institution of
which Roberto is only (legally speaking - I'm not talking about
reputation here!) an employee.

So I don't think Roberto has /the legal right/ to appoint a successor.
Lab Lua resources are in the /legal/ hands of PUC (please someone
correct me if I'm wrong). So if some extremely dumbass manager decides,
when the highly reputable leader of the project retires and is "out of
the way", to redirect the funds to some other project, Lua development
could be in trouble.

I repeat myself, sorry, I've already seen that: perfectly good projects,
with good teams, were scrapped by management as soon as the project
leader left!

The reasons could be plain stupidity, ignorance, shortsightedness, greed
(fund redistribution among other pet projects) or even political or
personal too! I've seen my share of "professional jealousy" in the past,
and that's one of the reasons why I don't work in academia any longer.

Anyway that sort of things sadly happens. Lua, from a legal perspective,
is not a project /owned/ by Roberto or anyone in Lua team (as far as I
know).

So if there would be a conflict between Roberto when he retires and PUC
management, the only thing Roberto could do is to fork Lua and name the
project differently (because also "Lua" name and logo are copyrighted by
PUC). So the new project could also suffer a big visibility hit outside
Lua community (which, moreover, is not so large as other communities,
like that of Python, for example).

Moreover, Roberto could have signed NDAs with PUC about any development
resource it is used at Lab Lua to develop Lua itself. Depending on which
kind of contract they are under, PUC could even prohibit other members
of Lab Lua/Lua team to contribute to Roberto's fork, while they are
still PUC employees!

Therefore, although Roberto could fork Lua and start, say, "BobLua",
(and I think the entire community would stand by his side), it is
debatable whether the old development process could be seamlessly
migrated to the new project (close development processes are
intrinsically "non-portable" - that's another disadvantage). All this
could slow Lua development to a crawl (worst case scenario, of course).

Please note that I'm purposefully depicting a catastrophic scenario
here, just because it seems to me that your answer to my post missed the
points I wanted to made (It wasn't a post about "how bad close
development is", but about "how dumb managers could be"). Hence I felt
compelled to describe a "nuclear scenario" here, just to make my point
clearer.

I'm actually not /that/ pessimistic about Lua, but my direct knowledge
of managers of educational institutions - both private and public -
makes me quite wary on the subject.

>
> SteveT
>
>

Cheers!

-- Lorenzo



Reply | Threaded
Open this post in threaded view
|

Re: Lua Team - The Legacy

Dirk Laurie-2
Reputation cannot be inherited.

May I remind the participants that Lua is distributed under the MIT
license, which allows you to do almost anything short of failure to
credit the original authors. Nothing stops any of them, even now, from
forking the project and applying whatever development model they think
fit to the fork. The law of the jungle will weed out what does not
work.

Except Steve's Litt's post, I find all of the present discussion (not
just the post to which technically I'm replying) in questionable
taste, rather (as the word "Legacy" in the title of the thread drives
one to think) like relatives squabbling over who will inherit while
the legator is still very much alive.

-- Dirk

Reply | Threaded
Open this post in threaded view
|

Re: Lua Team - The Legacy

Roberto Ierusalimschy
> Except Steve's Litt's post, I find all of the present discussion (not
> just the post to which technically I'm replying) in questionable
> taste, rather (as the word "Legacy" in the title of the thread drives
> one to think) like relatives squabbling over who will inherit while
> the legator is still very much alive.

:-)

-- Roberto

Reply | Threaded
Open this post in threaded view
|

Re: Lua Team - The Legacy

Lorenzo Donati-3
In reply to this post by Dirk Laurie-2
On 30/03/2019 12:38, Dirk Laurie wrote:
> Reputation cannot be inherited.
>

I never questioned that. Reread my posts, please!

> May I remind the participants that Lua is distributed under the MIT
> license, which allows you to do almost anything short of failure to
> credit the original authors. Nothing stops any of them, even now, from
> forking the project and applying whatever development model they think
> fit to the fork. The law of the jungle will weed out what does not
> work.
>
I didn't question that.

You missed my point! Please, reread my posts. The MIT license doesn't
allow you or anybody else but the copyright holder to use the registered
trademark and name "Lua".

And the copyright holder, as spelled out by the license here:

http://www.lua.org/license.html

is Lua.org, PUC-Rio.


> Except Steve's Litt's post, I find all of the present discussion (not
> just the post to which technically I'm replying) in questionable
> taste, rather (as the word "Legacy" in the title of the thread drives
> one to think) like relatives squabbling over who will inherit while
> the legator is still very much alive.

Comparing people discussing the future of Lua in a civil manner as
greedy "relatives squabbling over who will inherit while
the legator is still very much alive", is quite disrespectful, IMO, and
doesn't bring anything useful to the discussion.


>
> -- Dirk
>
>

-- Lorenzo

Reply | Threaded
Open this post in threaded view
|

Re: Lua Team - The Legacy

Italo Maia
In reply to this post by Roberto Ierusalimschy
I did not mean any disrespect or implied about Roberto's health or condition in any way. In our last chat at the airport, he seemed quite healthy and sharp. 
Just brought up a discussion that I think is valid and important. 

This is not a heartwarming topic, but having a plan is not a bad thing. Imagine if a project like python
was heavely dependent to a single person (not implying anything here) and that person got sick or worse, and then, from night to day, the language community had a big issue at hand? Who could do what that person did? How to ensure continuity of ideas, goals and vision? 

Em sáb, 30 de mar de 2019 às 18:36, Roberto Ierusalimschy <[hidden email]> escreveu:
> Except Steve's Litt's post, I find all of the present discussion (not
> just the post to which technically I'm replying) in questionable
> taste, rather (as the word "Legacy" in the title of the thread drives
> one to think) like relatives squabbling over who will inherit while
> the legator is still very much alive.

:-)

-- Roberto



--
"A arrogância é a arma dos fracos."

===========================
Me. Italo Moreira Campelo Maia
Co-fundador do Grupo de Usuários Python do Ceará
Secretário ForHacker (fb.com/ForHackerSpace)
Desenvolvedor Full-Stack, Escritor, Empresário, Visionário
-----------------------------------------------------
Meu Livro, Site, Blog
===========================