On Sunday, 24 December 2017 at 20:58:51 UTC, Russel Winder wrote:
On Sun, 2017-12-24 at 17:13 +0000, Laeeth Isharc via
Digitalmars-d wrote:
[…]
New things grow at the fringes. See the work of Clayton
Christensen and his book the Innovator's Dilemma. A head-on
assault is ill-advised. People looking for salvation are
easier to talk to than those who don't see anything wrong with
what they're doing currently.
Not my experience in the JVM-related community, and to an
extent the Python community, at least in the UK. Head on
collisions create debate, and get you remembered. The debate
generally leads to change, even if not the change initially
envisaged. At least the status quo gets perturbed.
Just dealing with the fringes and solving their problems rarely
get serious traction. cf. Golo, Gosu, Fantom, Crystal, Pony,
all of which solve definite problems but none of which have any
serious traction to move programming on.
It's much better to have a monopoly of some niche or set of
niches and to use energy from success to expand out from there,
than to have a small market share of an enormous market. And
niche in this case is not something simple - it's people who have
a certain set of kinds of problems and certain capabilities and
who have the ability to make decisions on merits for them rather
than primarily social factors.
See Peter Thiel's Zero to One for another expression of the same
point.
From a strategic perspective, it's by far better for the
challenger not to be taken seriously for the longest possible
time until the moment is ripe, if it's possible to achieve that.
It takes a long time for a programming language to be adopted.
And the more ambitious the language, perhaps the longer it takes
to mature and the longer it will be for it to achieve wide
adoption. D is a pretty ambitious language!
I can appreciate that if one's business involves teaching people
a language then this is frustrating. But I'd suggest taking a
step back and looking at things from the point of view of the
language itself, which is an organic creature not wholly under
the control of its creators. (See node.js).