The governance of elm docs and smaller tools

One way to think about this is to consider that in an open source project there are two distinct roles: contributor and maintainer. The contributor contributes some change (a PR), the maintainer role is to evaluate the contribution and merge it or reject it based on some criteria.

Right now, the elm organization has only one maintainer: Evan. Evan is also the main contributor to that organization. Because of this setup and because some things are more important than others, various PRs do get delayed. Evaluating a PR is not as trivial as it might seam when you want to do a good job. A lot of consequences have to be weighted and sometimes, a huge chunk of code has to be uploaded to “main memory” in order to properly evaluate the PR. Context switching is very costly when you do deep work.

This setup is what was decided to be the best setup for the evolution of Elm. It might not be perfect and it has its downsides but this is what was considered to work best. There are historical reasons for this. There were various other setups that were tried.

Also, historically, some discussions around this topic ended up with a lot of emotions. Two relevant resources that I recommend you read/watch are:

  1. What is “constructive” input?
  2. The Hard Parts of Open Source

It’s all a game of trade-offs. Each option/setup has its own advantages and disadvantages.

I suspect that I’m Mr. Helpful from the above post and in the time that has passed since that post was written, I realized that the best way forward is to accept the things the way they are. The best way to criticize is by creating.

“It is not the critic who counts; not the man who points out how the strong man stumbles, or where the doer of deeds could have done them better. The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood; who strives valiantly; who errs, who comes short again and again, because there is no effort without error and shortcoming; but who does actually strive to do the deeds; who knows great enthusiasms, the great devotions; who spends himself in a worthy cause; who at the best knows in the end the triumph of high achievement, and who at the worst, if he fails, at least fails while daring greatly, so that his place shall never be with those cold and timid souls who neither know victory nor defeat.”
― Theodore Roosevelt

In closing I would also like to add two other resources that I consider very useful for a person new to Elm, especially if they want to approach contributing :

  1. Building Trust: What Has Worked
  2. Code is the Easy Part
1 Like