It is a delicate matter. Yes, spreading over less important issues is harmful for focusing on core ones. But the same time having many small issues unresolved harms the contribution culture as those keep annoying people over and over again.

Excellence can come in part from getting many small things right (or at least just a little bit better) that most people think don't matter. I think Jobs was overrated compared to the technical people that made everything possible (and not just the ones at Apple), but his unreasonableness about not putting up with little things that irked him as a discerning judge did pay off for the user. A language ecosystem is not a consumer product, and an open source project is not a commercial venture; but perhaps it's worth bearing in mind whilst also wanting to make sure effort is marshalled towards things with demonstrably high payoffs. A difficult balance.

In this specific case I didn't take go at this because I was bored and wanted to do _something_. It was because problem with lack of reliable standard layout kept appearing every time we wanted to improve build tools and release automation. It was because I was annoyed that I still can't test Phobos pull requests on Windows machine even despite getting one - because setting up a dev environment is just too different between platforms.

A certain renowned language designer once said that he found that working on projects he found personally important tended to pay off in the end, even if others couldn't see it in the beginning. That's probably not true of everyone, but maybe Dicebot isn't everyone.

An economist I once knew said that entrepreneurship happens in the interstices of structure, because it is often hard to demonstrate the payoff in tangible terms...


Yet we do have matters that are important and urgent. We want to improve Phobos' take on memory allocation. Yet not one soul is working on RefCounted. Few know even what needs to be done of it. Why? Why are so many of us dedicating so much energy to tweaking what already works, instead of tackling real problems? Problems that e.g. - pardon my being pedantic - are in the vision document?

What needs to be done?

Reply via email to