July 22, 2019
On Sunday, 21 July 2019 at 00:22:11 UTC, Walter Bright wrote:
> On 7/18/2019 5:12 PM, Mike Franklin wrote:
>> ... and D could complete better with Rust if it had @safe-by-default and statically-check ownership/borrowing mechanism as Walter recently proposed.
>
> D has some huge advantages over Rust.
>
> For example, D has a familiar syntax and jargon. For another, you'll be able to move to memory safety incrementally with D, you won't have to rewrite your app from the start.

If you can not convince a company like Jetbrain, to support a official D language plugin, then those few advantages do not rack up to much. Rust language plugins, be it vscode, jetbrain products or other ides are well developed allowing for more developers choice.

There is a reason why some major companies look at Rust for replacing C++ and not D. No matter how much advantages you think D has, it can be said, that without the actual support system to convince the companies and developers, D will simply keep trampling on the same spot.

Recently i needed some specific crates for a Rust project, i looked over at D. More then half the stuff simply did not even exist for D.

D package growth is like 1 per day, with Rust growing by 25 per day. Its easy to see not just momentum diference but also how easier it is to get going with a project in Rust ( and half a dozen other languages ) compared to D.

https://www.youtube.com/embed/TkNep5zHWNw?start=1496

Shows the exact reason why D has issues. Stand alone D is usable but the moment you need specific packages or tools, D can not be considered a main application language.

And no, we do not have the time to write packages for D, when we can find perfectly good quality and supported packages for Rust ( and half a dozen other GC languages! ).

Stop confusing your language with its eco system. Nobody gives a darn about a language if everything around it is limited and frustrating. Its like having a 15" dong but having the face of a mull. Sure, you can be proud of that one thing but its not going to get you the girls ( or guys, we do not discriminate :) ) if the rest is lacking.

In short:

Language: A- ( some stuff is simply in conflict and half unfinished )
Library: C+ ( many past issues that haunt it today, ... )
Plugins: D- ( missing even basic plugins, low activity/support for many plugins, ... )
IDE Support: C- ( Only one really good supported IDE plugin, rest is basically C level, limited choice )
...

In other words: Stop being so darn proud of the language and realize that the language without the rest is simply not accepted for mainstream support. Its 2019 and beyond a few companies and some side project, nobody really gives a darn about D. Rust simply moves faster, has a better Eco system, better support, ... So unless you plan on trowing a truckload of money into hiring developers to speed up the development of those issues point, your simply no match for Rust.

Its frankly pathetic whenever a popular blog comes up about Rust as a potential choice for a big company, that people here think "but we are also a choice, why does nobody really look at us".

In essence, you had your chance for almost 20 years and wasted it. Resulting in the new kid on the block to run circles around you. Its like watching people who's football team that never left 3th league, think its going to be like those other guys. Sorry if it sounds cruel.

There is only 2 ways to fix this: Lots of money and a big daddy, preferably both. If you can not go that route, your simply going to be stuck forever going at a snails speed, surviving on volunteers time, thinking you will convince those big guys. While everybody else leaves you behind in the dust.

Walter, you remind me why some companies never become a success. Great ideas, genius, hard working but geniuses do not become fortune 500's without the marketing sales pitch to convince people to put the money into your company, for a (potential) payout years down the line.

Any talk about code refactoring, library splitting, etc is a wast of hot air. Again, sorry to say this but its like looking at a Echo Chamber whenever i past by here.
July 22, 2019
On Monday, 22 July 2019 at 01:31:17 UTC, Walter Bright wrote:
> On 7/21/2019 11:46 AM, aliak wrote:
>> A bug in Nullable cause of us to swear off working on the D version - but the same person got defeated by the Rust borrow checker but that for some reason did not make him swear it off.
>
>
> I'm not surprised. I see this all the time. It's the "social proof" thing at work.

Well one has bug(s) and is poorly named for what it actually implements. It isn't being fixed because of "reasons". The other is a feature that is working as intended, preventing the user from doing something they shouldn't be doing. I know which one I would be frustrated with more, especially if it wasn't the first bug I've encountered ;).
July 23, 2019
On Monday, 22 July 2019 at 19:52:33 UTC, XavierAP wrote:
> On Monday, 22 July 2019 at 16:29:16 UTC, Newbie2019 wrote:
>>
>> Lack of user  population is hurting D as vicious circle.  No people use, resulting in hidden bugs,   and then lead to less people use.
>
> I too think this is the biggest problem (I am repeating myself). So what can we do to encourage newcomers? Is D welcoming, and appealing? There are some good ideas posted above; are they listened to?
>
> My two cents: these newsgroups/forums could benefit from some reorganization; many people have asked/proposed changes. As for Learn, the last community survey voted in favor of moving that to StackOverflow (where there is already D traffic); this is a more suitable, powerful and searchable platform, and would provide free exposure and immense search engine exposure compared to here.
>
> Does D have or want a plan to promote itself, given that the results so far in this regard have not been good at all? Are we too busy putting out fires, and too stressed because we don't have enough firefighters, that we don't stop to realize that no one besides the firefighters care that fires are burning? Are other people not open to D, or is it that D neglects to promote itself properly at all?

What matters for a tool is are people using it to accomplish things.  Not so long ago it seemed like it was mostly Sociomantic and now there are quite a few more cases where people are using it to accomplish things.

Enterprise users in particular post very little in the forums, maybe because they have a lot of work to do. You can even see this happen as people move from having primarily a community involvement to actually using D at work.  Most obvious to me in people that I work with that came from the community.

It's a time of transition.  Most companies don't speak at technical conferences and aren't involved at all in open source.  So for internal innovation it's not going to leave much of a footprint in the open source world.

D isn't competing with Rust or Go really,in my opinion.  It's definitely competing with Excel, but it might even be competing with paper and telephone calls.  In a sense with the introduction of search at Google there was a fight to the death between C++ and paper, and it really wasn't a fair battle.

It's not very nice of you to say the results so far in language outreach have not been good at all without being more specific.  The Foundation is just getting started and same thing with the D blog.  Seems to me the latter has had a pretty strong start.

The world is long people with strong views about what to do,short on those willing to contribute something to make their vision a reality.

Just imagine if Seb Wilzbach had spent all his time arguing for why we should have executable examples on the web docs rather than just doing the work needed to make it happen.

I do agree that D can still do better to get across its merits but I think the answer to that is contributing educational blog posts and success stories.

The values of D are a bit different from those of Rust or Go it seems to me.  Bryan Cantrill talk on platform as values is very good on this.  It's not that it's a bad idea to do more, but I think that accessibility just is one value that's less important to the D community than for example to Rust.  Oh well - values are about how you choose when you can't have everything and accessibility, particularly prematurely, isn't only a benefit.

Quality of adopter dominates quantity I think at this stage.  One Manu or Liran or Bastiaan or Dragos or Ali is worth quite a few assorted Reddit commentators because there's a much greater contagion effect and because adoption within organisations is driven by different sorts of people who look at different things from what you might expect.

Board level people are quite open minded.  It's the middle managers that are most caught up in social proof dynamics.  I had the outgoing COO of a large UK investment bank (responsible for technology too) stop by to see what we were doing and he was quite open and curious.  But I bet the guy five levels down would likely have a rather different mindset; on the other hand it wouldn't be the junior guy that is deciding.

There's a massive tech spending boom underway in finance and maybe other non-tech companies.  Deutsche Bank is spending 13bn by 2022 and their market cap is only 16bn.  Generali,the insurance company, had a similar sized programme.  Digital transformation changes so many things that what seemed impossible becomes so.  I'm not saying they are going to use D because I don't know.  But the context is the pie is expanding and I don't think a zero sum mindset gets you anywhere.

Digital transformation is about adaptiveness and speed.  Moore's Law is dead in economic terms and yet useful data sets might grow 10x in the next dozen years.  I don't think there will be a shortage of people in coming years wanting to write fast code fast and some of those will use D.  I've been saying this for a few years now and since then Mercedes, Audi and Weka are just a few of the notable adopters.  I don't think people were expecting that to happen five years ago.  These things take a long time.



July 23, 2019
On Monday, 22 July 2019 at 23:16:26 UTC, Margo wrote:
> On Sunday, 21 July 2019 at 00:22:11 UTC, Walter Bright wrote:
>> On 7/18/2019 5:12 PM, Mike Franklin wrote:
>>> ... and D could complete better with Rust if it had @safe-by-default and statically-check ownership/borrowing mechanism as Walter recently proposed.
>>
>> D has some huge advantages over Rust.
>>
>> For example, D has a familiar syntax and jargon. For another, you'll be able to move to memory safety incrementally with D, you won't have to rewrite your app from the start.
>
> If you can not convince a company like Jetbrain, to support a official D language plugin, then those few advantages do not rack up to much. Rust language plugins, be it vscode, jetbrain products or other ides are well developed allowing for more developers choice.

Not everyone uses an IDE.  It's obviously an impediment to adoption in the games industry judging by what Manu says, but there are other industries besides games and in some places people don't use IDEs much at all.

> There is a reason why some major companies look at Rust for replacing C++ and not D. No matter how much advantages you think D has, it can be said, that without the actual support system to convince the companies and developers, D will simply keep trampling on the same spot.

Why so concerned about major companies when small and medium sized enterprises are in many places (the US being one) responsible for the majority of job creation.

The Mittelstand in Germany has a bunch of world leading companies I have mostly never heard of.  I think it would be much more interesting to know what the impediments are for them to adopt D than large companies.  The moment you have a committee involved formed of people who are not owners then the facts become much less important than social perceptions.  So why bother playing that game when you don't have to.

> Recently i needed some specific crates for a Rust project, i looked over at D. More then half the stuff simply did not even exist for D.
>
> D package growth is like 1 per day, with Rust growing by 25 per day. Its easy to see not just momentum diference but also how easier it is to get going with a project in Rust ( and half a dozen other languages ) compared to D.
>
> https://www.youtube.com/embed/TkNep5zHWNw?start=1496
>
> Shows the exact reason why D has issues. Stand alone D is usable but the moment you need specific packages or tools, D can not be considered a main application language.

Using DPP you have all of C libraries and progressively the C++ capabilities are being extended although it's not there yet.

D can easily call python and Lua libraries.  I'm working on C# though it's not the number one priority for me right now.


> And no, we do not have the time to write packages for D, when we can find perfectly good quality and supported packages for Rust ( and half a dozen other GC languages! ).
>

Well then maybe you shouldn't use D if that's your own calculus.  Others might have a different calculus.  My own experience has been that wrapping libraries takes time but it's a rounding error you can amortise in my context.

The world is a very big place and it's amazing how different situations can be.

> Stop confusing your language with its eco system. Nobody gives a darn about a language if everything around it is limited and frustrating. Its like having a 15" dong but having the face of a mull. Sure, you can be proud of that one thing but its not going to get you the girls ( or guys, we do not discriminate :) ) if the rest is lacking.

That's the thing - there's tremendous variation in what's important to people or even what they find appealing and not.

I think whether D is right for you also depends on time preference of the people involved and the culture.  I don't think it's a coincidence that D is surprisingly popular in Germany and Japan and is less appealing to Americans than one might have guessed. Academic work finds quite a big difference in time preference between the US and Germany.

If you decide to use D, better be prepared for discomfort and suffering and the pain is front-loaded too.  That may or may not be a problem and different people and groups within organisations will have a different degree of pain tolerance.  My own view is it's just pain and discomfort and to try to focus on enterprise value added, and from that point of view these things are relevant but not that important.


> In other words: Stop being so darn proud of the language and realize that the language without the rest is simply not accepted for mainstream support. Its 2019 and beyond a few companies and some side project, nobody really gives a darn about D. Rust simply moves faster, has a better Eco system, better support, ... So unless you plan on trowing a truckload of money into hiring developers to speed up the development of those issues point, your simply no match for Rust.

Why is mainstream adoption so important to you ?  And I wonder if you have considered that the only way to change something about the world that bugs you is to act.  Complaining by itself, I wonder how you think that will change anything.

> Its frankly pathetic whenever a popular blog comes up about Rust as a potential choice for a big company, that people here think "but we are also a choice, why does nobody really look at us".

Big companies again.  Can you explain in logical chain of causation terms why people should be particularly concerned about big companies?  It reminds me of Americans planning to sell washing machines to China a few years back.  But if we could get just 2% share of this enormous market...  Yeah but you are thinking about it all wrong.

That's simply not the way waves of the adoption of technologies tend to unfold and it definitely isn't going to be the story for D.

> Walter, you remind me why some companies never become a success. Great ideas, genius, hard working but geniuses do not become fortune 500's without the marketing sales pitch to convince people to put the money into your company, for a (potential) payout years down the line.

Study the history of the German Mittelstand.  It's a much bigger world than just Anglo culture and in other places things can work quite differently.  Marketing in particular is also in flux because people wised up.  And btw plenty of companies are very successful not doing any marketing at all.  It depends on your context.  High trust cultures with a high future time orientation can work a bit differently.

Have you ever started a company and sold it for a decent result?  You might remember when speaking to Walter that he has, competing for years as a one man band with Microsoft and eventually being acquired.

I think myself that yes dub could be improved and the registry also.  Maybe we can make it an SAOC project.   And that a start has been made on getting the merits of the language across and that from here what's necessary is just to build on that beginning.

Success stories are the best form of marketing really I think.  That and just educational posts and people quietly doing great work.

Seb Wilzbach has achieved by far more in that respect than the total of all the naysayers and people complaining laid end to end.

If you want to change reality then unless you have a very unusual mind with insights people are ready to hear,then nothing is going to happen unless you take action.  And if one isn't interested in doing so,I wonder why it is that there would be an expectation that there will be a receptiveness to words.

Without skin in the game, talk by itself is cheap.


July 23, 2019
On Tuesday, 23 July 2019 at 00:47:09 UTC, Laeeth Isharc wrote:
> On Monday, 22 July 2019 at 23:16:26 UTC, Margo wrote:
>> On Sunday, 21 July 2019 at 00:22:11 UTC, Walter Bright wrote:
>>> On 7/18/2019 5:12 PM, Mike Franklin wrote:
>>>> ... and D could complete better with Rust if it had @safe-by-default and statically-check ownership/borrowing mechanism as Walter recently proposed.
>>>
>>> D has some huge advantages over Rust.
>>>
>>> For example, D has a familiar syntax and jargon. For another, you'll be able to move to memory safety incrementally with D, you won't have to rewrite your app from the start.
>>
>> If you can not convince a company like Jetbrain, to support a official D language plugin, then those few advantages do not rack up to much. Rust language plugins, be it vscode, jetbrain products or other ides are well developed allowing for more developers choice.
>
> Not everyone uses an IDE.  It's obviously an impediment to adoption in the games industry judging by what Manu says, but there are other industries besides games and in some places people don't use IDEs much at all.

Autocomplete is a basic feature not limited to an IDE. VIM supports autocomplete, emacs, etc... It is an instrument that makes everything much easier to use when you can see all the functions you can call along with their respective documentation right as you are typing.

>> There is a reason why some major companies look at Rust for replacing C++ and not D. No matter how much advantages you think D has, it can be said, that without the actual support system to convince the companies and developers, D will simply keep trampling on the same spot.
>
> Why so concerned about major companies when small and medium sized enterprises are in many places (the US being one) responsible for the majority of job creation.
>
> The Mittelstand in Germany has a bunch of world leading companies I have mostly never heard of.  I think it would be much more interesting to know what the impediments are for them to adopt D than large companies.  The moment you have a committee involved formed of people who are not owners then the facts become much less important than social perceptions.  So why bother playing that game when you don't have to.

Having small/medium companies that are simply using the language and aren't that affiliated with the language is different than having a larger company driving the language. Those small medium companies don't work together for one. A large company can have numerous projects that out number those small medium companies. All the teams working together, in communication with each other and the development team working on the language.

This also doesn't help what you have observed:

     "Enterprise users in particular post very little in the forums, maybe because they have a lot of work to do. You can even see this happen as people move from having primarily a community involvement to actually using D at work.  Most obvious to me in people that I work with that came from the community."


>> Recently i needed some specific crates for a Rust project, i looked over at D. More then half the stuff simply did not even exist for D.
>>
>> D package growth is like 1 per day, with Rust growing by 25 per day. Its easy to see not just momentum diference but also how easier it is to get going with a project in Rust ( and half a dozen other languages ) compared to D.
>>
>> https://www.youtube.com/embed/TkNep5zHWNw?start=1496
>>
>> Shows the exact reason why D has issues. Stand alone D is usable but the moment you need specific packages or tools, D can not be considered a main application language.
>
> Using DPP you have all of C libraries and progressively the C++ capabilities are being extended although it's not there yet.
>
> D can easily call python and Lua libraries.  I'm working on C# though it's not the number one priority for me right now.

Yes you can, but you won't have access to D's features when using a C library. You will have to do everything the way you do it in C. Including not having overloads. Unless you write a wrapper over it yourself, but then that kind of defeats the entire purpose. I use a C++ library and they have a new release almost every month or two. I've given up keeping my wrapper up to date even though there are features and improvements I want to use in the newer versions.

>> In other words: Stop being so darn proud of the language and realize that the language without the rest is simply not accepted for mainstream support. Its 2019 and beyond a few companies and some side project, nobody really gives a darn about D. Rust simply moves faster, has a better Eco system, better support, ... So unless you plan on trowing a truckload of money into hiring developers to speed up the development of those issues point, your simply no match for Rust.
>
> Why is mainstream adoption so important to you ?  And I wonder if you have considered that the only way to change something about the world that bugs you is to act.  Complaining by itself, I wonder how you think that will change anything.

Assurance of survival. I can see D dying a slow death as it stands now, there isn't enough to keep it going on it's own like say C++.

> Have you ever started a company and sold it for a decent result?  You might remember when speaking to Walter that he has, competing for years as a one man band with Microsoft and eventually being acquired.

First I've heard of it. Though companies like Microsoft swallow small companies whole all the time so not too strange to hear. The one's you hear about are those that don't concede and take a payout, though those are few and far between.

> I think myself that yes dub could be improved and the registry also.  Maybe we can make it an SAOC project.   And that a start has been made on getting the merits of the language across and that from here what's necessary is just to build on that beginning.
>
> Success stories are the best form of marketing really I think.  That and just educational posts and people quietly doing great work.
>
> Seb Wilzbach has achieved by far more in that respect than the total of all the naysayers and people complaining laid end to end.
>
> If you want to change reality then unless you have a very unusual mind with insights people are ready to hear,then nothing is going to happen unless you take action.  And if one isn't interested in doing so,I wonder why it is that there would be an expectation that there will be a receptiveness to words.

The problem is who has control of these things. I've made pull requests to dub, they just sit around and nothing gets done. Very few people have access to actually enact change. Don't say stuff like "you have to do action yourself" cause it's not on me or anyone else. There's hundreds of pull requests for DMD and DUB combined. There's only so much people can do when pull requests sit idle for months/years, especially worse when there's no responding. When something somewhat default appears, no one on the D team is willing to do anything about it. They all look to Walter, and Walter is usually to busy doing something else so he never gets around to it. But yah, a very naive thing to say considering the current state of how things are managed with the project. God bless Seb for having enhanced permission status ^TM.

July 23, 2019
On Tuesday, 23 July 2019 at 00:47:09 UTC, Laeeth Isharc wrote:
>
> D can easily call python and Lua libraries.  I'm working on C# though it's not the number one priority for me right now.
>

What's your goals with aiming C#? What's the use case?

I did wrapping mono for unity engine interop, however despite that D has many similarities with C#, its VM API is not designed for such scenario. I've also read Unity devs experience with .net core, and they were having troubles with internal calls(i.e. registering native function to implement .net method), because unlike Mono in .NET Core those are hardcoded.

And my biggest problem with Mono is that it seems there is no way to bind native function as delegate, that means events are not possible without writing C# wrappers, and having to write them manually defeats the whole purpose. There is still at least one possible option, to implement utility that automatically generates glue code necessary between C#/D, but Roslyn based plugin itself will add ~15Mb to distribution of 1Mb D plugin. But sure, this is not a problem comparing to monolithic UE4 build ~100Mb executable...
July 23, 2019
On Sunday, 21 July 2019 at 00:22:11 UTC, Walter Bright wrote:
> On 7/18/2019 5:12 PM, Mike Franklin wrote:
>> ... and D could complete better with Rust if it had @safe-by-default and statically-check ownership/borrowing mechanism as Walter recently proposed.
>
> D has some huge advantages over Rust.
>
> For example, D has a familiar syntax and jargon. For another, you'll be able to move to memory safety incrementally with D, you won't have to rewrite your app from the start. D's metaprogramming abilities far exceed Rust's. Etc.


To my point of view Dlang should focus on libraries and services.

If the question is what to be done to make D language popular. The answer is simple:
1/ libraries on trending field: AI, big data, cloud computing, web, containerization...

I think W&A should focus the energy to provide some open sources tools on these fields


2/ Some services to get a reasonable quality of life: which is explained by Margo -> https://forum.dlang.org/post/kxtzthubfuwiszxgejkf@forum.dlang.org
July 23, 2019
On Tuesday, 23 July 2019 at 00:03:28 UTC, Laeeth Isharc wrote:
[...]
> Enterprise users in particular post very little in the forums, maybe because they have a lot of work to do. You can even see this happen as people move from having primarily a community involvement to actually using D at work.  Most obvious to me in people that I work with that came from the community.
[...]

True. So thank you for finding the time to share your valuable views.

Bastiaan.
July 23, 2019
On Mon, 2019-07-22 at 07:06 +0000, Paulo Pinto via Digitalmars-d wrote:
> 
[…]
> Kotlin will never win the hearts of all Java devs, because platform languages always win in the end, so it will just limp along just like any other JVM alternative language.
> 
> […]

There is often a deeply conservative approach within medium-sized and big organisations such that programmers stick with Java and only start using new Java features when there is a change of (usually LTS) JVM/JDK version. This has it's real downsides as well as upsides.

What is really sad in the JVM-based milieu in far too many organisations is the use of Java and only Java. So many of the systems would benefit from making use of multiple languages on the JVM, in particular Java/Groovy or Java/Clojure to get statically typed and dynamically typed subsystems. Whilst the JVM was created for Java, it is now an inherently multi-paradigm platform.

-- 
Russel.
===========================================
Dr Russel Winder      t: +44 20 7585 2200
41 Buckmaster Road    m: +44 7770 465 077
London SW11 1EN, UK   w: www.russel.org.uk



July 23, 2019
On Tue, 2019-07-23 at 00:47 +0000, Laeeth Isharc via Digitalmars-d wrote:
> 
[…]
> Not everyone uses an IDE.  It's obviously an impediment to adoption in the games industry judging by what Manu says, but there are other industries besides games and in some places people don't use IDEs much at all.
[…]

Restricting a programming language to Emacs/VIM/Atom/etc. users is clearly a bad idea, especially when the (e.g. Emacs) support really isn't that great.

Rust support in CLion is fantastic, D support is currently (huge apologies to the splendid volunteer team, but it is nonetheless true) inadequate. JetBrains see an income stream from the Rust plugin, they see no user community using D and CLion – I emphasise CLion over IntelliJ IDEA here as CLion has gdb support.

I am (was) an Emacs person, but compared to using CLion, Emacs is inadequate for software development.

(I have a guest post on the JetBrains CLion blog currently going through production, hopefully my plea for JetBrains support for the D plugin gets picked up by many, many others so that JetBrains can see an income potential.)

-- 
Russel.
===========================================
Dr Russel Winder      t: +44 20 7585 2200
41 Buckmaster Road    m: +44 7770 465 077
London SW11 1EN, UK   w: www.russel.org.uk