[OT] Leverage Points

Laeeth Isharc laeeth at laeeth.com
Mon Aug 20 04:46:35 UTC 2018


On Sunday, 19 August 2018 at 18:49:53 UTC, Joakim wrote:
> On Saturday, 18 August 2018 at 13:33:43 UTC, Andrei 
> Alexandrescu wrote:
>> A friend recommended this article:
>>
>> http://donellameadows.org/archives/leverage-points-places-to-intervene-in-a-system/
>>
>> I found it awesome and would recommend to anyone in this 
>> community. Worth a close read - no skimming, no tl;rd etc. The 
>> question applicable to us - where are the best leverage points 
>> in making the D language more successful.
>
> I read the whole thing, pretty much jibes with what I've 
> already realized after decades of observation, but good to see 
> it all laid out and prioritized, as Jonathan said.
>
> I thought this paragraph was particularly relevant to D:
>
> "So how do you change paradigms? Thomas Kuhn, who wrote the 
> seminal book about the great paradigm shifts of science, has a 
> lot to say about that. In a nutshell, you keep pointing at the 
> anomalies and failures in the old paradigm, you keep coming 
> yourself, and loudly and with assurance from the new one, you 
> insert people with the new paradigm in places of public 
> visibility and power. You don’t waste time with reactionaries; 
> rather you work with active change agents and with the vast 
> middle ground of people who are open-minded."
>
> This pretty much reflects what Laeeth always says about finding 
> principals who can make their own decisions about using D. 
> "Places of public visibility and power" for D are commercial or 
> open-source projects that attract attention for being well done 
> or at least popular.

Read Vilfredo Pareto on the circulation of the elites, Toynbee on 
the role of creative minorities, and Ibn Khaldun on 
civilisational cycles.

There's not much point focusing on the influential and powerful 
people and projects of today - they have too much else going on; 
powerful people tend to become a bit disconnected from reality, 
complacent and they and hangers-on have too much vested in the 
status quo to change.  When you have nothing, you have not much 
to lose, but after considerable success most people start to move 
to wanting to keep what they have.  This doesn't bring 
open-mindedness to new ideas or approaches.

But we live in a dynamic economy and time and the winners of 
tomorrow might look unremarkable today.  Linus said it was just a 
hobby project, nothing big like Minix.  Would you have thought a 
few German PhDs had a chance with no capital, starting amidst a 
bad financial crisis and using a language that was then of 
questionable stability and commercial viability?

New things often start small, growing at the fringe where there's 
no competition because at that point it's not obvious to others 
there is even an opportunity there.

It's much better to appeal to new projects or commercial projects 
where people are in pain and therefore open-minded because 
suffering will do that to you.

D is a general purpose quite ambitious language so I wouldn't 
expect necessarily that there is a pattern by industry or sector. 
  Probably it will be organic and grass-roots.  You have one 
unusual person in an unusual situation who is open to trying 
something different.  And in the beginning it might not look like 
much, particularly to outsiders.

Note that when you start a small business it takes a long time 
before you hire significant numbers of people usually.  Yet in 
the US SMEs create more than 100% of the jobs.  So there is a lag 
between people starting to play with D and them doing a lot in it 
or hiring many people to work with it.  Five years even isn't a 
long time.

Perceptions also take a long time to change, but they do tend to 
catch up with reality eventually.

When I started looking at D in 2014 it really wasn't yet ready 
for primetime.  The compiler would crash too often for comfort, 
and I wasn't even trying to do anything clever.  The 
std.algorithm docs were perfectly clear - if you had a training 
or sort of mind that understood formalisms.  But j tried to 
interest one ex trader in D - he could work with Python but back 
then he was absolutely terrified of the Phobos documentation.  
It's much better today, but the reaction from past improvements 
is still unfolding.

Little things like dpp /dtoh combined with BetterC can make a 
huge difference I think.  Being able to incrementally replace a C 
codebase without having to do lots of work porting headers (and 
keeping them in sync) brings down cost of trying D a lot.

If DPP works for C++ so you can just #include <vector> then even 
better but it will take some time.  I am trying to persuade Atila 
to have possibility to just handle some types as opaque.  You can 
always write shims for the parts of the API you need but at least 
this way you can #include cpp headers and get something.


> I'm not sure we're doing a good job of publicizing those we 
> have though, here's a comment from the proggit thread on 
> BBasile's recent post about writing a language in D:
>
> "I keep seeing articles telling me why D is so great, but 
> nothing of note ever gets written in D."
> https://www.reddit.com/r/programming/comments/97q9sq/comment/e4b36st


I don't think it matters a lot what people like that think.  In 
aggregate yes, but as Andrei says people are looking for an 
excuse not to learn a new language.  Somebody actually ready to 
try D will sooner or later come across the organisations using D 
page and see that the situation is a bit different.

One observation - people getting work done aren't going to be in 
the forums much and they may not have time to spend writing blog 
posts.  It's different for a regular business than a large tech 
company.   So Michael plays a very valuable role in making these 
as easy as possible for end users to tell their story.

> We could probably stand to publicize D's commercial successes 
> more. I've been trying to put together an interview blog post 
> with Weka about their use of D, got some answers this summer, 
> but no response in months to a follow-up question about how 
> they got their team trained up on D. We could stand to talk 
> more about Sociomantic, D's biggest corporate success so far, 
> I'll put out an email to Don. Maybe Laeeth would be willing to 
> do an interview.

Sounds a good idea.


> On the OSS front, I've sent several interview questions to Iain 
> earlier this year about gdc, after he agreed to an interview, 
> no responses yet. Tough to blame others for being ignorant of 
> D's successes when we don't do enough to market it.

I think we are still in very early stages.  Lots of companies in 
orgs using D I don't know much about.  The Arabia weather channel 
have a YouTube on their use of D, but I don't speak Arabic.  Hunt 
the Chinese toy company is interesting.  Chinese tech scene is 
huge and very creative, possibly more so than the US in some ways.

You might ask EMSI and also AdRoll.

By early days I mean it's better to look for interesting stories 
where people are doing real work on a small scale with D than 
trying to find super impressive success stories only.


> Finally, regarding leverage, I keep pointing out that mobile 
> has seen a resurgence of AoT-compiled native languages, but 
> nobody seems to be trying D out in that fertile terrain, other 
> than me.

I did try, but it's not exactly easy to make a complete app in D, 
even on Android.  It would be great if there were some way to 
automatically wrap the APIs.



More information about the Digitalmars-d mailing list