New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Being prepared for getting hit by a bus #1888

Closed
benjamingr opened this Issue Jul 1, 2015 · 20 comments

Comments

Projects
None yet
7 participants
@benjamingr

benjamingr commented Jul 1, 2015

So, I had a discussion with a colleague today about Babel, we're very early adopters of babel and fans of the project.

I get a strong feeling that @sebmck , having amazing execution and being a total baller is babel in a sense. He makes the most commits and most contributions by far, has the most insight and knows the code base the best by far. This is not to take from the contributions others have made of course.

Now, I'm a fan of @sebmck and I've enjoyed interactions with him very much - but I wonder, what happens if he ever loses interest, has something else he has to take care of or just feels like taking a year-long trip around the world?

I'm sorry if this comes off the wrong way - but what happens when @sebmck is no longer interested or able to take care of the project for whatever reason? I think given how much money people have invested in code that runs Babel it would be wise to at least have a clear plan for when/if that day comes.

@benjamingr benjamingr changed the title from Being prepared to getting hit by a bus to Being prepared for getting hit by a bus Jul 1, 2015

@kittens

This comment has been minimized.

Show comment
Hide comment
@kittens

kittens Jul 1, 2015

Member

@thejameskyle has access to everything that I do. I've been very vocal about wanting more core contributors (#1347) so I'm unsure what else can be done?

Member

kittens commented Jul 1, 2015

@thejameskyle has access to everything that I do. I've been very vocal about wanting more core contributors (#1347) so I'm unsure what else can be done?

@benjamingr

This comment has been minimized.

Show comment
Hide comment
@benjamingr

benjamingr Jul 1, 2015

I'm unsure either, I think it's important to discuss. Honestly what I'm rooting for is some company like Facebook or Yahoo that uses Babel extensively to step up and dedicate resources and people to work with/for you.

Pretty much the way the open source projects like NodeJS and io.js (or the Linux kernel for that matter) where there is a TC (which presumably you'll be in charge of) and companies contribute resources and people to maintain the project.

benjamingr commented Jul 1, 2015

I'm unsure either, I think it's important to discuss. Honestly what I'm rooting for is some company like Facebook or Yahoo that uses Babel extensively to step up and dedicate resources and people to work with/for you.

Pretty much the way the open source projects like NodeJS and io.js (or the Linux kernel for that matter) where there is a TC (which presumably you'll be in charge of) and companies contribute resources and people to maintain the project.

@jmm

This comment has been minimized.

Show comment
Hide comment
@jmm

jmm Jul 1, 2015

Member

IMO the most helpful thing for delegating the workload in the short term would be more comprehensive documentation of the APIs and architecture (including in source code comments). I know it's probably a catch-22 for finding the time to do it, but I think it can really help get more people involved.

Member

jmm commented Jul 1, 2015

IMO the most helpful thing for delegating the workload in the short term would be more comprehensive documentation of the APIs and architecture (including in source code comments). I know it's probably a catch-22 for finding the time to do it, but I think it can really help get more people involved.

@kittens

This comment has been minimized.

Show comment
Hide comment
@kittens

kittens Jul 1, 2015

Member

@benjamingr I may have some relevant news in the next few weeks then.

Member

kittens commented Jul 1, 2015

@benjamingr I may have some relevant news in the next few weeks then.

@benjamingr

This comment has been minimized.

Show comment
Hide comment
@benjamingr

benjamingr Jul 1, 2015

@sebmck That's very reassuring, like I said - I have nothing but mad respect for your firm grip of the project, responsiveness and execution ability, but babel's maintenance has become business-critical to a lot of companies. I hope this issue didn't come off the wrong way.

If you don't object - can we keep this issue open for a few days to see if anyone has anything to add to the discussion?

benjamingr commented Jul 1, 2015

@sebmck That's very reassuring, like I said - I have nothing but mad respect for your firm grip of the project, responsiveness and execution ability, but babel's maintenance has become business-critical to a lot of companies. I hope this issue didn't come off the wrong way.

If you don't object - can we keep this issue open for a few days to see if anyone has anything to add to the discussion?

@kittens

This comment has been minimized.

Show comment
Hide comment
@kittens

kittens Jul 1, 2015

Member

I'm more than happy for this issue to be open for as long as it's a concern to you and the community. No problem about it coming off the wrong way, I know exactly what you mean and feel the same way.

Member

kittens commented Jul 1, 2015

I'm more than happy for this issue to be open for as long as it's a concern to you and the community. No problem about it coming off the wrong way, I know exactly what you mean and feel the same way.

@kittens kittens added the discussion label Jul 1, 2015

@chicoxyzzy

This comment has been minimized.

Show comment
Hide comment
@chicoxyzzy

chicoxyzzy Jul 1, 2015

Member

I think @jmm is right. Every time I trying to start learning Babel's internals I realise that it is very hard and I have no so much free time for reverse engineering. Would be cool if someone will add some docs for developers who are interested in contribution.

Member

chicoxyzzy commented Jul 1, 2015

I think @jmm is right. Every time I trying to start learning Babel's internals I realise that it is very hard and I have no so much free time for reverse engineering. Would be cool if someone will add some docs for developers who are interested in contribution.

@kittens

This comment has been minimized.

Show comment
Hide comment
@kittens

kittens Jul 1, 2015

Member

Is there any precedent for this in existing projects? Would be good to have some references. It's a circular problem where if there's not enough time for core development then there's certainly not enough time to write docs.

Member

kittens commented Jul 1, 2015

Is there any precedent for this in existing projects? Would be good to have some references. It's a circular problem where if there's not enough time for core development then there's certainly not enough time to write docs.

@jmm

This comment has been minimized.

Show comment
Hide comment
@jmm

jmm Jul 1, 2015

Member

Precedent regarding the documentation part of it? There's certainly a rich tradition of underdocumented open source software. I think this project is a pretty special combination of complexity and rapid adoption (EDIT: I should probably add rapid evolution as well) though, with the vast majority of knowledge about how it all works concentrated in one person.

It's a circular problem where if there's not enough time for core development then there's certainly not enough time to write docs.

I think it'd be valuable to discuss how to chip away at that -- in my opinion it has to happen for contribution to rise significantly.

Member

jmm commented Jul 1, 2015

Precedent regarding the documentation part of it? There's certainly a rich tradition of underdocumented open source software. I think this project is a pretty special combination of complexity and rapid adoption (EDIT: I should probably add rapid evolution as well) though, with the vast majority of knowledge about how it all works concentrated in one person.

It's a circular problem where if there's not enough time for core development then there's certainly not enough time to write docs.

I think it'd be valuable to discuss how to chip away at that -- in my opinion it has to happen for contribution to rise significantly.

@kittens

This comment has been minimized.

Show comment
Hide comment
@kittens

kittens Jul 1, 2015

Member

Precedent for large documentation on project internals.

Member

kittens commented Jul 1, 2015

Precedent for large documentation on project internals.

@benjamingr

This comment has been minimized.

Show comment
Hide comment
@benjamingr

benjamingr Jul 1, 2015

Well, there's linux, but that's hardly a good example. In terms of
compilers and runtimes the most common thing by far is blog post tutorials
like
http://blog.ircmaxell.com/2012/03/phps-source-code-for-php-developers_21.html

On Wed, Jul 1, 2015 at 4:56 PM, Sebastian McKenzie <notifications@github.com

wrote:

Precedent for large documentation on project internals.


Reply to this email directly or view it on GitHub
#1888 (comment).

benjamingr commented Jul 1, 2015

Well, there's linux, but that's hardly a good example. In terms of
compilers and runtimes the most common thing by far is blog post tutorials
like
http://blog.ircmaxell.com/2012/03/phps-source-code-for-php-developers_21.html

On Wed, Jul 1, 2015 at 4:56 PM, Sebastian McKenzie <notifications@github.com

wrote:

Precedent for large documentation on project internals.


Reply to this email directly or view it on GitHub
#1888 (comment).

@jmm

This comment has been minimized.

Show comment
Hide comment
@jmm

jmm Jul 1, 2015

Member

@sebmck Right now it's kind of non-existent, so I would suggest focusing on going from that to "some", instead of thinking about going from that to "large".

Member

jmm commented Jul 1, 2015

@sebmck Right now it's kind of non-existent, so I would suggest focusing on going from that to "some", instead of thinking about going from that to "large".

@jamiebuilds

This comment has been minimized.

Show comment
Hide comment
@jamiebuilds

jamiebuilds Jul 1, 2015

Member

_If Seb Dies Contingency Plan:_

  • Sell out.

Kidding aside, this has been a concern of mine for months. I've been hoping that the plugin ecosystem would kick off and pull in people who know about how ASTs/Compilers/Parsers/etc. work and are willing to contribute back.

In case of things going terribly wrong, I'd likely try getting people from the biggest users like Facebook, Netflix, Yahoo, etc. to help take it over. Although I haven't contributed to the babel codebase itself in awhile, I do try and keep myself familiar with the codebase and could give people introductions to it.

I think a good place to start would be to scatter some READMEs in the various directories explaining what's there and how they relate to each other. Once that is there we can dive into the most important files are start leaving code comments to explain them.

I'll start something now

Member

jamiebuilds commented Jul 1, 2015

_If Seb Dies Contingency Plan:_

  • Sell out.

Kidding aside, this has been a concern of mine for months. I've been hoping that the plugin ecosystem would kick off and pull in people who know about how ASTs/Compilers/Parsers/etc. work and are willing to contribute back.

In case of things going terribly wrong, I'd likely try getting people from the biggest users like Facebook, Netflix, Yahoo, etc. to help take it over. Although I haven't contributed to the babel codebase itself in awhile, I do try and keep myself familiar with the codebase and could give people introductions to it.

I think a good place to start would be to scatter some READMEs in the various directories explaining what's there and how they relate to each other. Once that is there we can dive into the most important files are start leaving code comments to explain them.

I'll start something now

@jamiebuilds jamiebuilds referenced this issue Jul 2, 2015

Merged

Code docs #1897

@benjamingr

This comment has been minimized.

Show comment
Hide comment
@benjamingr

benjamingr Jul 2, 2015

@thejameskyle switch to a freemium model 😅😅😅

I think documenting this way is a good first step!

benjamingr commented Jul 2, 2015

@thejameskyle switch to a freemium model 😅😅😅

I think documenting this way is a good first step!

@mathieumg

This comment has been minimized.

Show comment
Hide comment
@mathieumg

mathieumg Jul 2, 2015

switch to a freemium model

All stage 2+ transforms are free, open your wallet for the rest! 😜

mathieumg commented Jul 2, 2015

switch to a freemium model

All stage 2+ transforms are free, open your wallet for the rest! 😜

@PinkaminaDianePie

This comment has been minimized.

Show comment
Hide comment
@PinkaminaDianePie

PinkaminaDianePie Jul 3, 2015

@sebmck good example, internal part of Angular.js: https://github.com/angular/angular.js/blob/master/src/auto/injector.js

it's really bad that babel dont have any internal documentation, i think many people want to help with some issues, but the cant. for example i still can't use native generators in iojs cause of one small bug with async-to-regenerator, but i can't fix it myself. @sebmck simply dont want to fix it (or have no time).

PinkaminaDianePie commented Jul 3, 2015

@sebmck good example, internal part of Angular.js: https://github.com/angular/angular.js/blob/master/src/auto/injector.js

it's really bad that babel dont have any internal documentation, i think many people want to help with some issues, but the cant. for example i still can't use native generators in iojs cause of one small bug with async-to-regenerator, but i can't fix it myself. @sebmck simply dont want to fix it (or have no time).

@kittens

This comment has been minimized.

Show comment
Hide comment
@kittens

kittens Jul 3, 2015

Member

We aren't talking abou internal documentation a. There are already a lot of
comments documenting how internal code works. Internal docs is referencing
design and architecture documentation.

On Friday, 3 July 2015, PinkaminaDianePie notifications@github.com wrote:

@sebmck https://github.com/sebmck good example, internal part of
Angular.js:
https://github.com/angular/angular.js/blob/master/src/auto/injector.js

it's really bad that babel dont have any internal documentation, i think
many people want to help with some issues, but the cant. for example i
still can't use native generators in iojs cause of one small bug with
async-to-regenerator, but i can't fix it myself. @sebmck
https://github.com/sebmck simply dont want to fix it (or have no time).


Reply to this email directly or view it on GitHub
#1888 (comment).

Sebastian McKenzie

Member

kittens commented Jul 3, 2015

We aren't talking abou internal documentation a. There are already a lot of
comments documenting how internal code works. Internal docs is referencing
design and architecture documentation.

On Friday, 3 July 2015, PinkaminaDianePie notifications@github.com wrote:

@sebmck https://github.com/sebmck good example, internal part of
Angular.js:
https://github.com/angular/angular.js/blob/master/src/auto/injector.js

it's really bad that babel dont have any internal documentation, i think
many people want to help with some issues, but the cant. for example i
still can't use native generators in iojs cause of one small bug with
async-to-regenerator, but i can't fix it myself. @sebmck
https://github.com/sebmck simply dont want to fix it (or have no time).


Reply to this email directly or view it on GitHub
#1888 (comment).

Sebastian McKenzie

@PinkaminaDianePie

This comment has been minimized.

Show comment
Hide comment
@PinkaminaDianePie

PinkaminaDianePie Jul 3, 2015

@sebmck just look at my link =) Angular.js have all needed documentation for contributing and this docs included in source files. If module doing something - that functionality are described in it. Babel for now have almost no documentation for code or its design.

PinkaminaDianePie commented Jul 3, 2015

@sebmck just look at my link =) Angular.js have all needed documentation for contributing and this docs included in source files. If module doing something - that functionality are described in it. Babel for now have almost no documentation for code or its design.

@benjamingr

This comment has been minimized.

Show comment
Hide comment
@benjamingr

benjamingr Jul 7, 2015

Ok, looks like this inspired action (what I was hoping for). I think we can close it now, thanks!

benjamingr commented Jul 7, 2015

Ok, looks like this inspired action (what I was hoping for). I think we can close it now, thanks!

@benjamingr benjamingr closed this Jul 7, 2015

@kittens

This comment has been minimized.

Show comment
Hide comment
@kittens

kittens Sep 1, 2015

Member

I may have some relevant news in the next few weeks then.

This is very late but I'm now working at Facebook on Babel.

Member

kittens commented Sep 1, 2015

I may have some relevant news in the next few weeks then.

This is very late but I'm now working at Facebook on Babel.

@lock lock bot added the outdated label Jul 12, 2018

@lock lock bot locked as resolved and limited conversation to collaborators Jul 12, 2018

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.