Oh, I’m so torn on this issue. In principle I love the idea that everything should be open access and free, but the fact of the matter is that all of us need to make a living, and without knowing the specifics of this particular situation.
I’m not really torn i just find it fascinating
Open source can get REALLY confusing when it comes to this kind of stuff. I kinda like free markets, we all decide what we get to do with our time, what we’re going to eat and where we’re going to live etc. Everyone who contributed to three.js is a volunteer and is aware of the fact that they’re giving up their labor for free from the get go.
This all depends on the circumstances. Some people involved in the project live here in the Bay Area which means that their contribution is heavily subsidized by some tech giant, or millions in VC cash. It’s just how it works, it’s one of the most expensive places in the world, the most expensive in the US to live in, so your employer simply covers that. Your free time is basically on their dime.
On the other hand there was a thread here describing the universal income in Finland which makes it seem so that a government is subsidizing three.js
Regarding a book, i think it’s extremely taxing to keep one up to date for a project such as three.js. Back in the day there have even been print versions available, but i think they were quickly dated.
It would be really great if a book like this were to be live - constantly updated. The tremendous amount of effort would simply have to be covered by someone or something. It could be one individual with an inheritance or a lottery winner. It could be a highly paid individual with a lot of free time. It could be an individual that lives off of donations, or sales. This could have a monthly access for example.
But it could also be a consortium of people, volunteers, that keep this live. Which brings us back to the starting point, since it looks exactly like the development of three.js itself. If this book were available as a project on github, or even as part of the main three.js repo, everyone could contribute at the same time they’re making a feature. PR’s could even be blocked if the “book is broken”.