April 13, 2019
On Saturday, 13 April 2019 at 03:46:51 UTC, Walter Bright wrote:
>
> Something you can do to help is as I said - when you see other languages mentioned, mention D. It helps a lot more than you might think.

I think D for the size of it's organization already has a good number of users, contributors, and sponsors what's left is to make the contributors work for the users and the sponsors for the contributors and the users for the sponsors this how it keeps on rolling.

April 13, 2019
On Friday, 12 April 2019 at 23:33:37 UTC, Walter Bright wrote:
> It's up to all of us whenver we see a thread like that, to respond appropriately. Don't wait for someone else to.
>
> For example, whenever there's a post about D on reddit, someone from Rust, usually Steve Blatnick, pops up and starts talking about Rust.

I try to! I try to stick up for D every chance I get... but honestly at this point it is starting to get a little embarrassing to do so. I have been using D for 7 years and been trying to tell people how awesome it is... but after so long and still almost nobody is using it... it kinda makes you wonder what's the point, why do I keep trying? Im not really good enough to contribute to the compiler or make some fancy new library or something.. but I love D and want people to love it too, that's why I find it so sad D is in the place it is.

When I started using D I was in my freshman year at university, back then it looked like D had a real chance of becoming a replacement for C++... now I feel like D has almost no chance compared to back then...

It just feels sad


April 13, 2019
On Saturday, 13 April 2019 at 08:28:37 UTC, Tofu Kaitlyn wrote:
> On Friday, 12 April 2019 at 23:33:37 UTC, Walter Bright wrote:
>> It's up to all of us whenver we see a thread like that, to respond appropriately. Don't wait for someone else to.
>>
>> For example, whenever there's a post about D on reddit, someone from Rust, usually Steve Blatnick, pops up and starts talking about Rust.
>
> I try to! I try to stick up for D every chance I get... but honestly at this point it is starting to get a little embarrassing to do so. I have been using D for 7 years and been trying to tell people how awesome it is... but after so long and still almost nobody is using it... it kinda makes you wonder what's the point, why do I keep trying? Im not really good enough to contribute to the compiler or make some fancy new library or something.. but I love D and want people to love it too, that's why I find it so sad D is in the place it is.
>
> When I started using D I was in my freshman year at university, back then it looked like D had a real chance of becoming a replacement for C++... now I feel like D has almost no chance compared to back then...
>
> It just feels sad

you are wright, that happened to me too, only earlier.
and now that you read that thread, it becomes hurtingly apparent, that the management and the compiler guru have no idea, or just don't care, on how to respond to people with valid objections.

this is just sad!
i guess they do it just another time as usual - just wait a little bit and let the shit float by.
maybe some of the disciples will come to the rescue and tell a story on how great everything is in there niche or with there hobby.

i hope somebody takes D1, strips the gc, adds templates, cleans up this mess and forgets about the rest of the bloat.




April 13, 2019
On Saturday, 13 April 2019 at 08:28:37 UTC, Tofu Kaitlyn wrote:

> I try to! I try to stick up for D every chance I get... but honestly at this point it is starting to get a little embarrassing to do so. I have been using D for 7 years and been trying to tell people how awesome it is... but after so long and still almost nobody is using it... it kinda makes you wonder what's the point, why do I keep trying? Im not really good enough to contribute to the compiler or make some fancy new library or something.. but I love D and want people to love it too, that's why I find it so sad D is in the place it is.
>
> When I started using D I was in my freshman year at university, back then it looked like D had a real chance of becoming a replacement for C++... now I feel like D has almost no chance compared to back then...
>
> It just feels sad


I don't know what your definition of "almost nobody" is, but the number one library on code.dlang.org right now is vibe.d, with the following stats:

488 downloads today

3402 downloads this week

12354 downloads this month

390085 downloads total

Look through the list. One of my packages, DerelictSDL2, has the following stats:

95 downloads today

521 downloads this week

2286 downloads this month

89247 downloads total

From my perspective, that's plenty of people.

Also, any expectation that D will be "a replacement for C++" is just misguided. No language is going to replace C++. It's an *alternative* to C++. And a good one. It's that philosophy that drives the ABI compatibility with both C and C++. We don't need D implementations of libraries that have years of development, debugging, testing and maintenance behind them when we can just interop with the existing ones. The ability to implement a new component or tool in D and be able to link with an existing codebase and libraries that the team are already familiar with is a big deal.

D's doing just fine. It's been slowly and steadily growing. Not fast enough for some folks, and that's fine. We've recently started quarterly D Foundation meetings involving foundation members and representatives from D shops. At the first meeting, we had the companies everyone knows about--Dunhumby (Sociomantic), Funkwerk, WekaIO, and Symmetry. At the second meeting, we added representatives from three companies you probably haven't heard of. Our third meeting is happening at DConf. I'll be blogging about all of this very soon and will talk about what's coming out of these meetings.

My advice is to get a little perspective. You have your own bubble in your own slice of the internet and your own slice of the real world. That you don't see or hear much about D in your bubble is not evidence that no one else is seeing or hearing about it.

Every post I public-facing post I publish on the D blog gets shared on reddit. Some generate discussions, some do not. But there's been a big difference since I first started managing the blog. Initially, every post I shared attracted trolls eager to bash D on principle and most posts were lucky to get over a 60% upvote rate. Now, the trolls rarely appear, the upvote rate tends to hover between 70-90%, and the total number of upvotes often goes over 50 (I used to think 30 was a lucky day). The most recent, a highlight of DPP, got 75 total votes and a 86% upvote rate:

https://www.reddit.com/r/programming/comments/bas2my/dpp_include_c_and_c_headers_directly_in_your_d/

That post has generated just over 1,000 views in the 5 days since it was published. The post on memoization in D that I published at the end of March only got 32 upvotes at reddit and a 76% upvote rate (and again, no trolls bashing it in the reddit thread), but it's had just shy of 15,000 page views:

https://www.reddit.com/r/programming/comments/b7augl/memoization_in_the_d_programming_language/

My point is that, yes, people are hearing about D and, from my perspective in my bubble, the positive messages and curiosity are outweighing the negativity.

People don't have to like D. That's fine. I respect some folks are unhappy and now and again will vocally express their critical opinions. That's a fact of life. But there are plenty of people who are happy (or at least satisfied) and who are using it both commercially and personally. Our focus needs to be on retaining them. We will lose some along the way, because not everyone will agree with every priority or every decision, or with the management process, or whatever. But improvements are happening, will continue to happen, and the language will be better for it. It's already better today than it was 5 years ago, or even 5 years before that. As it continues to improve, it will appeal to more people and some of them will become contributors to help make it even better.

And it may sound like a broken record, but we always need contributors. The bigger we get, the more we need. And there are never enough. We've got a new initative that has come out of the quarterly meetings that is one step to address that (I'm not ready to announce it just yet) and the ongoing fundraising campaigns are another (and note that donations to the Pull Request Manager campaign have slowed: https://www.flipcause.com/secure/cause_pdetails/NDUwNTY=).

D does not have the backing of a cash-laden organization, as someone pointed out earlier, so like it or not, it is a language where there's still a lot of DIY. Anyone expecting fully featured IDEs, native graphics libs, parity with languages like Rust, Swift, C#, etc..., is in the wrong place. There are some fair criticisms to be made about management, but that isn't one of them. Resources, resources, resources. One must either contribute, accept the status quo, or move on. Meanwhile, those who are contributing continue to do so, some for free some for compensation, but all because they accept that if they don't do it, it won't get done.

I've been following D since 2003 and using it since 2004. When I look back over the stretch of time, I can't help but see D as a success. I'm doing what I can to make it more so.
April 13, 2019
On Saturday, 13 April 2019 at 09:16:09 UTC, Mike Parker wrote:
> On Saturday, 13 April 2019 at 08:28:37 UTC, Tofu Kaitlyn wrote:
>

yes you are living in your bubble and to this thread there is more than just discontent.
this is just sad!
it's the same as usual - just wait a little bit and let the shit float by.
then - learn/change nothing.

April 13, 2019
On Saturday, 13 April 2019 at 08:43:06 UTC, silentwatcher wrote:
> you are wright, that happened to me too, only earlier.
> and now that you read that thread, it becomes hurtingly
> apparent, that the management and the compiler guru have no
> idea, or just don't care, on how to respond to people with
> valid objections.

Faced with non-response, you've decided that you're actually
experiencing a very specific response, which is also emotionally
convenient for you. This should be a red flag.

You are not in the middle of a direct conversation with "management
and compiler guru", nor have you pulled them onto their front
doorstep to face you and the angry mob at your back. Rather, you're
in a situation more like a noisy cafeteria in which you are
spreading rumors or are disparaging someone just loudly enough that
he can hear you from his other table.

In this cafeteria-like situation, the stock dialogue that should
come to mind is, not "cat got your tongue? You were talking so
happily before, but now you have nothing to say, huh?!" but rather
"I don't need to dignify that with a response." or "You can tell
you're over the target when you start to get flak."

People just don't care that much about rumors that are so off-base
nobody would believe them anyway. If someone's loudly insinuating
that you'd once cheated your brother in a business deal, and you
have no brothers, you may as well take anyone's concerns about this
insinuation when they come to you personally about them. They'll
feel silly for having even paid attention to the loud guy.

> maybe some of the disciples will come to the rescue and tell a
> story on how great everything is in there niche or with there
> hobby.

Have you ever asked yourself, "hmm, I wonder if there's a huge
number of people around here that are vegans, or if that's pretty
niche." ? Maybe you could wonder it now, to follow along. This
question is trivially answered: just go out to get food.

If you're in India, half of the hotel menu will be vegan dishes.
Every single restaurant you go to will have a good variety of vegan
options. Not "you can blow the cheese off the salad if you want,
weirdo" kinda options, but five different mushroom burgers, etc.
Fancy stuff.

If you're in Texas, the norm is closer to "you can blow the cheese
off the salad if you want, weirdo."

So here you are, looking at a blatant scarcity of GUI builders or
mobile development options, and you're exclaiming: where are all
the vegan options?!  Isn't like 70% of the Texas vegans?! Do you
all stay home to eat??  What's *wrong* with these stupid
restaurants that are all ignoring what must be a *huge* vegan
demand!

An actually productive thing to do would be to add "desktop GUI
development" and "mobile development" to a long chart of tiny niches
that programming languages can be variously useful for, and you can
give D a 1..10 score, with justifications. A score 11 language
would have an AI chatbot that hooks your entire desktop GUI up to
your application for you based on conversations with the AI about
it. A score 10 language might just have an extremely good GUI
builder that doesn't limit you or add extra overhead to the
resulting GUI. A score 4 language might have Gtk and Qt bindings
that you can use if you have independently good knowledge of Gtk or
Qt, but you'll have to work a bit.

The score's just a hint. The negative and positive justifications
are the real value of a chart like this. Someone wanting to add a
GUI to their D application might look at the chart and say, eh, I
guess I'll serve a local webpage with vibe. Someone wanting to
round out D's usefulness as a language might look at the chart, see
that "server-side scripting" is a niche impaired by std.regex's
performance, and add a GSoC task about that. Someone want to argue
that D's stagnated and isn't getting more useful as a language can
refer to versions of this chart over time.


April 13, 2019
Thanks Mike for writing. I have one addendum to this:

> And it may sound like a broken record, but we always need
> contributors. The bigger we get, the more we need. And there are
> never enough.

Closely related to the dearth of great contributors is the implication that we're blocking access of others to high-impact and leadership roles. Let me state for the record that I am not holding onto any seat, that I had to carry some roles simply by default because nobody else would, and that there's many more than two seats to start with, most of which are empty because there's nobody able and willing to take them. The folks whom I invited privately declined, thankfully save for Mike.

Regarding some posters' discontent over poor performance of the leadership/management. Speaking only of myself, let me state for the record that I hold absolutely no illusion of my performance as a leader in this community. Without being dramatic I reckon I'm unfit for leadership. (Most certainly not for lack of trying, but that doesn't matter.) An A leader should get A+ people to follow. We don't have enough of those.
April 13, 2019
On Saturday, 13 April 2019 at 11:20:07 UTC, Andrei Alexandrescu wrote:
> Thanks Mike for writing. I have one addendum to this:
>
>> And it may sound like a broken record, but we always need
>> contributors. The bigger we get, the more we need. And there are
>> never enough.
>
> Closely related to the dearth of great contributors is the implication that we're blocking access of others to high-impact and leadership roles. Let me state for the record that I am not holding onto any seat, that I had to carry some roles simply by default because nobody else would, and that there's many more than two seats to start with, most of which are empty because there's nobody able and willing to take them. The folks whom I invited privately declined, thankfully save for Mike.
>
> Regarding some posters' discontent over poor performance of the leadership/management. Speaking only of myself, let me state for the record that I hold absolutely no illusion of my performance as a leader in this community. Without being dramatic I reckon I'm unfit for leadership. (Most certainly not for lack of trying, but that doesn't matter.) An A leader should get A+ people to follow. We don't have enough of those.


I do not think think anyone is criticizing you or Walter personally or your capabilities in what you do. EXCEPT: You guys have to figure out how to take D to the next stage of growth. You guys are the leaders and so only you can do it. No one else can step in and say "This is how we are going to make it happen".

I believe you guys are talented in certain ways but those ways are not in ways that are large complex project management. You guys are too nice and laid back for that. There has to be someone willing to put their neck on the line and make good and hard decisions to fix the cracks in D rather than ignore them.

You guys are programmers first and foremost. Have you guys actually ever ran any large projects, say, of 10k people or more? What about 1k? I doubt this simply because you are programmers and such jobs would not involve programming. For example, the CEO of Nvidia doesn't sit around programming all day long as his job.

It's not that I don't think you guys are intelligent enough, I believe(I do not know if it is true) that you guys don't really have any any experience in running a very large successful project where if you fail the project fails and it's your ass. The kinda where it is all about dealing with people(unpredictable) as opposed to code(predictable).

So, in no way am I criticizing you as a person or trying to make you feel incapable, I'm simply trying to get you to recognize your limitations and for you to think about them enough as to maybe figure out how to overcome them. I don't know enough about how you guys function to even begin to dish out fault. My main point is to try to bring awareness. I think you are already somewhat aware, so what I have said so far might not be useful.

But there has to be a floor plan, laid out exactly and "everyone" has to agree that it is a good floor plan. Then that floor plan has to be stuck to. Imagine building a house where 1. The floor plan sucks. 2. It's always changing. It's a doomed project in almost all cases. The more complex the design the more failure points.

You guys really need to find someone that knows enough about D, knows enough about manging large projects(you could start smaller but the more experience the better), someone that has their neck on the line, someone that will do the required work(since a whole team will not exist to delegate it), and someone that can dedicate full time.

That is, you need someone who will essentially take the steering wheel and win the race. You could try it yourself, but that would require you to change your whole mentality and become a "business man". You'll have to start taking courses in leadership, project management, learn all kinds of stuff you never had a clue about and not accept failure as an option(which might require long days, very tough decisions, etc...). Basically you would have to change careers in some sense.


I really believe you guys just don't know what to do but you don't realize it. It's not because you are dumb but you simply do not have the kinda of experience that provides one with such knowledge. You have ideas and beliefs but that is not the same as real world experience of the day in and day out that builds up 6th senses and intuitive knowledge, tricks, networking, habits, etc.

It's kinda hard to explain, it is just a feeling I had. It is similar to how I have done certain things in my life where I thought I was capable and was making progress then I'd see a YT video of some "3yo" doing what I do. Digging deeper I realize that my conceptions about how I thought things worked were wrong(or faulty/weak). I didn't realize that other people did it so differently and then I realized that is why they were better... not because they were necessarily more intelligent or had more money or whatever but because of their experiences that helped them progress and not hit every speed bump. But always what I realized is that it was more complex and more work than I initially thought.

You have went through these things too, but you don't pay attention to them much. How many years of your life have you spent in programming? That is why you are good at it! How many years have you spent managing companies or large groups of people? Changes are you manage people like you program. That is, you view the world in a particular way that may or may not be conducive to solving certain problems. It is not a fault of you, it is a fault of all humans(it's a fault due to how the universe works and it's probably no fault at all but just how it works).



My suggestions is this:

1. Spend 5+ hours seriously thinking about the long term goal of D. What you guys want it to become. Dream a little, raise your expectations, don't worry about the likelihood of achieving them too much. [It's always better to lose to a higher ranked player than win to a lower ranked player] Also one must be a little predictive/adaptive since the time the dream becomes realized things will change.

This though should involve some concrete and useful things like: (EX)

   a. D is the a major competitor
   b. D is an efficient programming language that satisfies many users requirements.
   c. D has a large user base
   d. D has a well thought out and consistent structure, easy to maintain.
   e. D is just pure fun to program in. There really are no downsides for most people.
   etc...

2. Then figure out for each of those a little more details and realities behind them.
   for a, it might involve figure out some approximate numbers and requirements that a major competitor has. E.g., how many users, type of users, feature set, etc...

3. Then decide if you are willing to do all the work to get this going. You guys have to lay down the first few layers of the pyramid(well, D already exists so you have some layers to use). If not then you have to figure out how to get others to help you in a constructive way. You might need to seek out people who have been successful in large projects and learn from them(not just people who carry the torch but the ones who built it).

4. A tentative floor plan then must be created. This is the general outline that gives structure to the dream. It is a huge graph/chart/map that shows one the forest.

5. Then project management comes in to play to find the "optimal" solution to minimize the time required to complete the project. To deal with revisoning, versioning, issues, work distribution, hiccups, road blocks, etc...

6. Then just run the program. Yes, it is a program. To accomplish anything is a program. But without the source to the program and the compiler one can't get anywhere. The source to the program here is the planning. The compiler is the management team. All the details are filled in at "runtime" such as who builds that part of the wall, who corrects that mistake, etc.

After all, even with large computer programmers, there is almost always some type of divide and conquer approach, it is no different, it's just the machine is different.

And I'm not good at project management so even what I have said probably wouldn't be effective. This is why you guys need an expert, and someone that will invest the work so these things can get off. You might pay them based on performance/progress but you will still have to participate and understand things enough to keep them legit and to drive them.

Without some type of conscious effort in this area, D will stagnate almost surely. There is really no way to get around that. These things are not impossible to do. The energy is there(there are billions of people on this planet who regularly give up their time for other peoples causes on a daily basis), it just has too be focused.

Imagine this, if all the time and energy that has been put in D from the get go by everyone who has ever done anything for D was focused 100% in contributing in the perfect way for D. D would be the top programming language. One can say this about most languages too. So much energy is wasted, like a typical light bulb, which actually uses more energy than most lasers.

D just needs focus. You and Walter may be comfortable with it being your golf game, but most people are not because they don't want to play golf. Their time is real and it is an investment for them, they want a return. This is why I have stopped using D for anything serious, because I have concluded that it is not a good investment for me. I'm not alone in this of course and it is not an indicator of your abilities(it might be entirely Walters ;) Or something else). I do like D enough though to continue messing around with it here and there, I guess it has become my golf game in some sense ;/




















April 13, 2019
On Saturday, 13 April 2019 at 11:20:07 UTC, Andrei Alexandrescu wrote:
>
> Closely related to the dearth of great contributors is the implication that we're blocking access of others to high-impact and leadership roles. Let me state for the record that I am not holding onto any seat, that I had to carry some roles simply by default because nobody else would, and that there's many more than two seats to start with, most of which are empty because there's nobody able and willing to take them. The folks whom I invited privately declined, thankfully save for Mike.
>
> Regarding some posters' discontent over poor performance of the leadership/management. Speaking only of myself, let me state for the record that I hold absolutely no illusion of my performance as a leader in this community. Without being dramatic I reckon I'm unfit for leadership. (Most certainly not for lack of trying, but that doesn't matter.) An A leader should get A+ people to follow. We don't have enough of those.

I said a few months ago that one cannot be leader and developer at the same time, because one will inevitably under-perform in one of the two departments, or in both. And unless you are supernaturally disciplined your personal preferences will creep in. The impression I have is that you and Walter are interested in one particular aspect that may be interesting and rewarding to work on and this aspect becomes top priority - just because you *can*. You are the leaders after all, nobody can tell you what to do. And the aspect you're interested in may change according to the latest discussions in CS, if Go or Rust has it, D needs it immediately. How often have I heard sentences like "This is the future of programming! This is the way to go!"? But this approach has created a solid mess. Half baked features. You use the actual D release as a playground instead of having a D Lab or D Experimental implementation. With something like that a lot of pitfalls could have been avoided and users wouldn't feel like guinea pigs.

Often less attractive features are not only neglected but regarded as beneath D as they belong to the realms of "mediocre coders who use Java, cough cough". But in the real world programmers need to get things done and competitors don't sleep. If a customer wants an app you cannot tell him / her that the language you're using is "too good" for that.

When I look at new languages, what are the features I look for? C interop, cross platform and *ease of use*. Many new languages are designed with all-round usefulness in mind and the devs try to make it as easy as possible for users. This is very important as it boosts productivity. Also, programmers just don't want to go through all the hassle of million compiler flags, complicated set ups etc. Not because they're stupid, but because it's the year 2019 and what matters is the code and the product. Why would I use two stones to light a fire when I can just use a lighter?

One thing regarding the number of downloads. That doesn't tell you much. First, I often download languages out of curiosity, but do I use them? No. Second, I've often downloaded libs etc. in D but once they break, I have to stop using them. I have a graveyard on my machine. So the number of downloads does not necessarily tell you whether the language / library is actually being used.

It's too high a risk to use D in the real world. Imagine how a user feels when s/he reads on the forum that there will be yet another change that might break old code or that D / Phobos will now be rewritten. It's just mad.


April 13, 2019
On Friday, 12 April 2019 at 16:45:04 UTC, H. S. Teoh wrote:

> To be honest, I've seriously thought about forking D on several occasions.  I haven't gone through with it yet, for many reasons.  But if push comes to shove, I'm ready to take it on, and I'm pretty certain that I'm not alone.

Yes, you're not alone.

Mike