cover

airbnb repo


76 open 947 closed 100k stars 20k forks


overall, the main dude ljhard has the dual role of community building and code-fixing, and explains the rationale, thus moving the debate from personal preferences to technical know-how to practical implementation (eslint configs)


OPEN ISSUES

at the bottom of the README, there is:

We encourage you to fork this guide and change the rules to fit your team’s style guide. Below, you may list some amendments to the style guide. This allows you to periodically update your style guide without having to deal with merge conflicts.

that means they are keenly aware that there are technical implications (as in, tools are there), and perhaps their success could be by acknowledging those and creating a sort of network/cooperation of the willing

i guess this is an example in which the discursive strategies on github are first and foremost established by the organization in such a way that prevents too much debate (commercial weight, acknowledgement of alternatives)

[https://github.com/airbnb/javascript/issues/2208#issuecomment-613067919] “the guide is a mixture of instruction and guidelines, and that’s OK” (as opposed to mostly guidelines for other guides) —the dude is also a member of the JS specification steering committee!

this issue is an example of having exeternal repos referecing: influence network also

again, very much about whether or not the linter rules would complain src

and about tools as solutions src

refers to the Airbnb config [https://github.com/airbnb/javascript/issues/1640#issuecomment-533237903]

the discussion is more about technical implementation rather than about stylistic debates: [https://github.com/airbnb/javascript/issues/1660] - it is mostly about asking ljhard about his opinion

assumption that ESLint and Airbnb are tightly coupled, so that if it’s not in Airbnb it’s not possible (i.e. guide is exhaustive) src

he’s even fucking fixing code [https://github.com/airbnb/javascript/issues/1311]

[https://github.com/airbnb/javascript/issues/761#issuecomment-195756518] rational approach

kinda street-level bureaucracy, what ljharb is doing

other technical justification src

what’s up with not closing questions?

seems the guide is based on experience rather than imposition: [https://github.com/airbnb/javascript/issues/216#issue-49306579]

First of all, great job on this guide, I agree with it almost 100%. All of this should really be common knowledge, but I sure as hell didn’t know most of these things when I started, so kudos for writing it all down.

the above dude is refering specifically to AirBnB (as the org)

which also makes sense: the guide itself is not up to debate, only its implementation

but then here he says that the guide is more important than the linter (#1 guide, which is solved for airbnb, #2 linter)


polling all contributors -> by opening the issue, they control the narrative, and also ruling out aeshtetic preferences, which commenters follow

reference to [https://github.com/airbnb/javascript/issues/1089#issuecomment-400710202] tc39, which ljhard works for

this:

If avoiding it was an official stance, or if there was a real technical hurdle to using it, I would drop this. But I don’t like the idea of just arbitrarily banning something without technical merit.

[https://github.com/airbnb/javascript/issues/1089#issuecomment-259335955] personal preference doubled with invoking institutional authority

[https://github.com/airbnb/javascript/issues/1089#issuecomment-265802675] acknowledges changing the airbnb codebase

[https://github.com/airbnb/javascript/issues/1089#issuecomment-325798808] referring to a11y to settle a debate

[https://github.com/airbnb/javascript/issues/1089#issuecomment-510156670] “best practice” seems to be an overarching argument

[https://github.com/airbnb/javascript/issues/1408] nice didactic explanations, in which he concludes with “you’re free to fork”

[https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/issues/527] following the town hall discussion, he concludes with “just override”

CLOSED ISSUES

by the creator, listed on his website: [https://github.com/airbnb/javascript/issues/102]

[https://github.com/airbnb/javascript/issues/102#issue-22412698] GOLD reference to picasso concludes with the author forking

[https://github.com/airbnb/javascript/issues/2251#issue-647972614] begging for clarification so that it can be added to their rules, even though the maintainer is saying explicitly that it doesn’t matter

[https://github.com/airbnb/javascript/issues/1122] most commented issue (ish) is about technical clarity, and not debate //// going deep into functional vs. functional-like programming

[https://github.com/airbnb/javascript/issues/1365] most commented ish

[https://github.com/airbnb/javascript/issues/851] this one is just office hours

[https://github.com/airbnb/javascript/issues/1718#issuecomment-413965116] again, long discussion which ends up in tool-editing

original post