The Lua Development Process: Why Closed?

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

The Lua Development Process: Why Closed?

Rob Hoelz-2
Hey everyone,

This is a question I've been thinking about for some time; although my
wording may come off as a bit aggressive to some, please know that that
is not my intent.  This is an aspect of the Lua language and community
that I'm rather curious about; if this thread devolves into a sort of
flame war, please feel free to ignore it, or, if you have admin
privileges, close it.

So, the question is (if you couldn't tell from the title): why did the
authors of Lua decide to adopt a closed development process, and why
does this continue to this day?  By "closed development process", I
mean that unlike Perl, Python, Ruby, and other popular open source
languages, the canonical implementation's development is done by an
exclusive group, and the "work in progress" tree is not visible to the
public.  I find this very interesting, especially considering how
liberal Lua's license is.  I think it would be cool it other developers
would be able to directly contribute to Lua's development, but maybe
I haven't spent enough time thinking about this. =)

Thanks,
Rob

signature.asc (205 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: The Lua Development Process: Why Closed?

Luiz Henrique de Figueiredo
> why did the authors of Lua decide to adopt a closed development
> process, and why does this continue to this day?

See http://lua-users.org/lists/lua-l/2008-06/msg00407.html

Reply | Threaded
Open this post in threaded view
|

Re: The Lua Development Process: Why Closed?

Volodymyr Bezobiuk
In reply to this post by Rob Hoelz-2
Hello Rob,

and if there were voting or so I will vote for the continuation of closed development process. Let me describe my point. As far as I know (from my own experience and also read and heard from others) maintenance of piece of code is quite a time-consuming task. If it's fairly big enough i mean _really time consuming_. Either you lose the control over things and then the code loses his clear insight shape (leading to small but ugly and annoting inconsistencies), or you spend more time checking and reviewing patches etc, instead of developing the masterpiece. Yay, I understand the Lua parents, really. It's like giving your child to some 'really careful babysitters', this is not ok. I personally like the spirit of Lua as being much less commercial than, f.e. Ruby world. Ruby are getiing bloated by 'features' because of this, and it's not so stable, etc.

So it would be better to continue as is, in my opinion...


On Mon, Nov 12, 2012 at 11:18 PM, Rob Hoelz <[hidden email]> wrote:
Hey everyone,

This is a question I've been thinking about for some time; although my
wording may come off as a bit aggressive to some, please know that that
is not my intent.  This is an aspect of the Lua language and community
that I'm rather curious about; if this thread devolves into a sort of
flame war, please feel free to ignore it, or, if you have admin
privileges, close it.

So, the question is (if you couldn't tell from the title): why did the
authors of Lua decide to adopt a closed development process, and why
does this continue to this day?  By "closed development process", I
mean that unlike Perl, Python, Ruby, and other popular open source
languages, the canonical implementation's development is done by an
exclusive group, and the "work in progress" tree is not visible to the
public.  I find this very interesting, especially considering how
liberal Lua's license is.  I think it would be cool it other developers
would be able to directly contribute to Lua's development, but maybe
I haven't spent enough time thinking about this. =)

Thanks,
Rob

Reply | Threaded
Open this post in threaded view
|

Re: The Lua Development Process: Why Closed?

James Graves-2
In reply to this post by Rob Hoelz-2
Rob Hoelz <[hidden email]> wrote:

> So, the question is (if you couldn't tell from the title): why did the
> authors of Lua decide to adopt a closed development process, and why
> does this continue to this day?  By "closed development process", I
> mean that unlike Perl, Python, Ruby, and other popular open source
> languages, the canonical implementation's development is done by an
> exclusive group, and the "work in progress" tree is not visible to the
> public.  I find this very interesting, especially considering how
> liberal Lua's license is.  I think it would be cool it other developers
> would be able to directly contribute to Lua's development, but maybe
> I haven't spent enough time thinking about this. =)

I think you're asking the wrong question.

If the "closed development process" of Lua was an actual problem to
this language's community, a popular fork would have created long ago.
 This has happened for even major projects recently, like the
OpenOffice / LibreOffice split.

And in fact many forks of Lua do exist now.  Of the languages you
listed above, Lua is at least one or two orders of magnitude easier to
maintain than those.  It is quite reasonable for a single person to
fork Lua and maintain it.  The code base is small enough for even a
single developer to understand and improve.  Contrast that with
OpenOffice, GCC, and other popular projects which require large and
enthusiastic teams to create a viable fork.

So the correct question is: Why is the PUC-Rio version of Lua so popular?

One reason is that Roberto and Luiz and great guys, and they have made
great efforts to help the Lua community.  They are very responsive,
especially in the case of bugs.  Contrast that to most other
(admittedly much larger) language implementations, that have long
lists of bugs, many of which are open for years and years.  Even
documentation problems are taken very seriously, and promptly fixed.
This is wonderful, and many people appreciate it.

Another main area is the design and engineering capability of the core
team.  These guys have done a great job maintaining and enhancing Lua
over the years.  Through their hard work, they have garnered the deep
respect of many, many people.  They have been very careful, and been
good stewards of the language over the years.  They have listened to
all the requests to "enhance" Lua over the years, and paid careful
attention to the ones which actually had merit.

They are doing something that works, and I'm fine with the status quo.

James Graves

Reply | Threaded
Open this post in threaded view
|

Re: The Lua Development Process: Why Closed?

Coda Highland
On Mon, Nov 12, 2012 at 1:50 PM, James Graves
<[hidden email]> wrote:

> Rob Hoelz <[hidden email]> wrote:
>
>> So, the question is (if you couldn't tell from the title): why did the
>> authors of Lua decide to adopt a closed development process, and why
>> does this continue to this day?  By "closed development process", I
>> mean that unlike Perl, Python, Ruby, and other popular open source
>> languages, the canonical implementation's development is done by an
>> exclusive group, and the "work in progress" tree is not visible to the
>> public.  I find this very interesting, especially considering how
>> liberal Lua's license is.  I think it would be cool it other developers
>> would be able to directly contribute to Lua's development, but maybe
>> I haven't spent enough time thinking about this. =)
>
> I think you're asking the wrong question.
>
> If the "closed development process" of Lua was an actual problem to
> this language's community, a popular fork would have created long ago.
>  This has happened for even major projects recently, like the
> OpenOffice / LibreOffice split.
>
> And in fact many forks of Lua do exist now.  Of the languages you
> listed above, Lua is at least one or two orders of magnitude easier to
> maintain than those.  It is quite reasonable for a single person to
> fork Lua and maintain it.  The code base is small enough for even a
> single developer to understand and improve.  Contrast that with
> OpenOffice, GCC, and other popular projects which require large and
> enthusiastic teams to create a viable fork.
>
> So the correct question is: Why is the PUC-Rio version of Lua so popular?
>
> One reason is that Roberto and Luiz and great guys, and they have made
> great efforts to help the Lua community.  They are very responsive,
> especially in the case of bugs.  Contrast that to most other
> (admittedly much larger) language implementations, that have long
> lists of bugs, many of which are open for years and years.  Even
> documentation problems are taken very seriously, and promptly fixed.
> This is wonderful, and many people appreciate it.
>
> Another main area is the design and engineering capability of the core
> team.  These guys have done a great job maintaining and enhancing Lua
> over the years.  Through their hard work, they have garnered the deep
> respect of many, many people.  They have been very careful, and been
> good stewards of the language over the years.  They have listened to
> all the requests to "enhance" Lua over the years, and paid careful
> attention to the ones which actually had merit.
>
> They are doing something that works, and I'm fine with the status quo.
>
> James Graves
>

And the most popular fork of Lua, LuaJIT, also has a similar
development model and a similarly friendly and responsive maintainer.

/s/ Adam

Reply | Threaded
Open this post in threaded view
|

Re: The Lua Development Process: Why Closed?

spir ☣
In reply to this post by Rob Hoelz-2
On 12/11/2012 22:18, Rob Hoelz wrote:

> Hey everyone,
>
> This is a question I've been thinking about for some time; although my
> wording may come off as a bit aggressive to some, please know that that
> is not my intent.  This is an aspect of the Lua language and community
> that I'm rather curious about; if this thread devolves into a sort of
> flame war, please feel free to ignore it, or, if you have admin
> privileges, close it.
>
> So, the question is (if you couldn't tell from the title): why did the
> authors of Lua decide to adopt a closed development process, and why
> does this continue to this day?  By "closed development process", I
> mean that unlike Perl, Python, Ruby, and other popular open source
> languages, the canonical implementation's development is done by an
> exclusive group, and the "work in progress" tree is not visible to the
> public.  I find this very interesting, especially considering how
> liberal Lua's license is.  I think it would be cool it other developers
> would be able to directly contribute to Lua's development, but maybe
> I haven't spent enough time thinking about this. =)
>
> Thanks,
> Rob

While I'm a fair supporter of openness, freedom and cooperation (and all I do
outside software concretely is such), I changed my mind on this point about Lua
specifically. When judging on result rather than principles, then, well lua is
my favorite language. Though if I had my word to say... a few things would
change ;).
(Also, in software, collaborative development leads either to bloat or constant
fight against it. But it's more a civilisation issue, maybe.)

Denis

Reply | Threaded
Open this post in threaded view
|

Re: The Lua Development Process: Why Closed?

Javier Guerra Giraldez
In reply to this post by Coda Highland
On Mon, Nov 12, 2012 at 4:59 PM, Coda Highland <[hidden email]> wrote:
> And the most popular fork of Lua, LuaJIT, also has a similar
> development model and a similarly friendly and responsive maintainer.

with the small difference that Mike's git repo is visible for
everybody.  In fact, he actively advises to try HEAD first.

still, i think that the key is the great amount of respect that
Roberto, Luiz and Mike have well earned.

--
Javier

Reply | Threaded
Open this post in threaded view
|

Re: The Lua Development Process: Why Closed?

Matthew Wild
In reply to this post by Rob Hoelz-2
On 12 November 2012 21:18, Rob Hoelz <[hidden email]> wrote:
> Hey everyone,

> So, the question is (if you couldn't tell from the title): why did the
> authors of Lua decide to adopt a closed development process, and why
> does this continue to this day?

Every time I have this thought, I simply remind myself that this team
and this development process brought us the language as we know (and
love) it today.

If I need any further convincing, I simply remind myself of the
alternatives around today that have more open community-oriented
development processes. Then I shudder and continue to code.

Regards,
Matthew

PS. I just present these observations semi-seriously as sample data
points. I do not believe the only way to develop a good software
project is in private, there are many other factors involved. However
I do know that managing a community of contributors is hard to do
well, and I don't blame the Lua team for choosing not to go down that
road.

Reply | Threaded
Open this post in threaded view
|

Re: The Lua Development Process: Why Closed?

William Ahern
In reply to this post by Coda Highland
On Mon, Nov 12, 2012 at 01:59:20PM -0800, Coda Highland wrote:
<snip>
> And the most popular fork of Lua, LuaJIT, also has a similar
> development model and a similarly friendly and responsive maintainer.

Isn't LuaJIT more an independent implementation than a fork? Notwithstanding
some of the library code, like string matching expressions.

I point that out to credit Mike Pall's hard work, as well as the careful
thought that the Lua authors put into the language semantics and its
library.

I think the bigget "pro" for keeping development relatively closed doesn't
concern the code so much as the language specification. Opening up
development would doubtless add features and improve performance, but the
cost would be more questionable corner cases. The language specification and
the "reference" implementation are inextricably bound together.

Reply | Threaded
Open this post in threaded view
|

Re: The Lua Development Process: Why Closed?

spir ☣
In reply to this post by Matthew Wild
On 13/11/2012 00:22, Matthew Wild wrote:
> If I need any further convincing, I simply remind myself of the
> alternatives around today that have more open community-oriented
> development processes. Then I shudder and continue to code.

   names ! ;-)

Denis


Reply | Threaded
Open this post in threaded view
|

Re: The Lua Development Process: Why Closed?

James Graves-2
In reply to this post by James Graves-2
Rob Hoelz <[hidden email]> wrote:

> So, the question is (if you couldn't tell from the title): why did the
> authors of Lua decide to adopt a closed development process, and why
> does this continue to this day?  By "closed development process", I
> mean that unlike Perl, Python, Ruby, and other popular open source
> languages, the canonical implementation's development is done by an
> exclusive group, and the "work in progress" tree is not visible to the
> public.  I find this very interesting, especially considering how
> liberal Lua's license is.  I think it would be cool it other developers
> would be able to directly contribute to Lua's development, but maybe
> I haven't spent enough time thinking about this. =)

As an addendum to my previous comments, also consider that the rate of
Lua development is quite low compared to these other languages.

For good or for bad, 'Lua' itself is a small, tightly integrated
language, and the core distribution is not "batteries included".

A programming language that is already in widespread use does not
necessarily benefit from rapid development.  Either you introduce
breaking changes (which the Lua team does, but only once every few
years), or you don't introduce breaking changes.  And if you don't,
then you tend to end up with a lot of cruft and bad compromises when
new features of the language itself are added.  For example: Java,
C++, and many more languages than I'd care to name.

James