www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Civility

reply Don Allen <donaldcallen gmail.com> writes:
I've been bothered by the tone of some of the messages in this 
forum recently, particularly in the "Why isn't D more popular?" 
threads.

Certainly D, like every other language, isn't perfect. I think it 
is fine to make suggestions about how it could be improved. I've 
done it myself recently. But given the extraordinary amount of 
hard work and skill that has gone into producing the software as 
it is today, combined with the fact that D is given to us without 
cost, reinforces our obligation to conduct these discussions in a 
civil manner.

I readily concede that I am a newcomer to the D community and I 
sense that there may be some scar tissue from a past with which I 
am not familiar. But what I see is a language and supporting 
documentation, tools and libraries that, however imperfect (join 
the crowd!), are awfully good in my estimation. I recently 
finished porting about 10,000 lines of C to D that, despite my 
best efforts and long experience had become impossibly ugly and 
hard to maintain. As someone recently observed in this forum, the 
D code is far more readable and concise and the performance and 
reliability (so far) are excellent. And the port was easy, mostly 
taking the existing C and simplifying it, by taking advantage of 
D's greater power.

So while I encourage all of you to submit your best ideas for D 
improvement to this forum, I also suggest that you avoid getting 
nasty or personal.

I'd also like to take a moment to address the "why isn't D more 
popular" question. Popularity is not necessarily an indication of 
merit. Windows still occupies something like 90% of the 
desktops/laptops and while it has improved since Ballmer's exit, 
I think it is a distant last among the operating systems 
available for desktop computers and laptops. A lot of factors 
contribute to popularity and I don't think they add up to a 
meritocracy. As a lifelong amateur classical musician, this 
reminds me of the music business, where extraordinary musicians 
too frequently get overlooked by an unknowing public that is 
easily seduced by extra-musical factors.
Jun 23 2022
next sibling parent mw <mingwu gmail.com> writes:
On Thursday, 23 June 2022 at 18:02:13 UTC, Don Allen wrote:
 ... reinforces our obligation to conduct these discussions in a 
 civil manner.

 So while I encourage all of you to submit your best ideas for D 
 improvement to this forum, I also suggest that you avoid 
 getting nasty or personal.
indeed! +1.
Jun 23 2022
prev sibling next sibling parent reply Abdulhaq <alynch4047 gmail.com> writes:
On Thursday, 23 June 2022 at 18:02:13 UTC, Don Allen wrote:
 I've been bothered by the tone of some of the messages in this 
 forum recently, particularly in the "Why isn't D more popular?" 
 threads.
 I'd also like to take a moment to address the "why isn't D more 
 popular" question. Popularity is not necessarily an indication 
 of merit. Windows still occupies something like 90% of the 
 desktops/laptops and while it has improved since Ballmer's 
 exit, I think it is a distant last among the operating systems 
 available for desktop computers and laptops. A lot of factors 
 contribute to popularity and I don't think they add up to a 
 meritocracy. As a lifelong amateur classical musician, this 
 reminds me of the music business, where extraordinary musicians 
 too frequently get overlooked by an unknowing public that is 
 easily seduced by extra-musical factors.
You really had me there Don until you snuck in the 'why D is unpopular' at the end LOL. This thread should be renamed 'Why D for Bauss but you snuck in there.
Jun 23 2022
parent reply bauss <jj_1337 live.dk> writes:
On Thursday, 23 June 2022 at 18:33:21 UTC, Abdulhaq wrote:
 You really had me there Don until you snuck in the 'why D is 
 unpopular' at the end LOL. This thread should be renamed 'Why D 

 for Bauss but you snuck in there.
Maybe I don't get it, but what exactly is the reference for me here?
Jun 23 2022
parent reply Abdulhaq <alynch4047 gmail.com> writes:
On Friday, 24 June 2022 at 06:38:29 UTC, bauss wrote:
 On Thursday, 23 June 2022 at 18:33:21 UTC, Abdulhaq wrote:
 You really had me there Don until you snuck in the 'why D is 
 unpopular' at the end LOL. This thread should be renamed 'Why 

 waiting for Bauss but you snuck in there.
Maybe I don't get it, but what exactly is the reference for me here?
Yes sorry Bauss it was a while ago but you joked you would start the next 'Why D Is Unpopular' thread (in response to all the new Why D Is Unpopular threads)
Jun 24 2022
parent bauss <jj_1337 live.dk> writes:
On Friday, 24 June 2022 at 07:06:59 UTC, Abdulhaq wrote:
 On Friday, 24 June 2022 at 06:38:29 UTC, bauss wrote:
 On Thursday, 23 June 2022 at 18:33:21 UTC, Abdulhaq wrote:
 You really had me there Don until you snuck in the 'why D is 
 unpopular' at the end LOL. This thread should be renamed 'Why 

 waiting for Bauss but you snuck in there.
Maybe I don't get it, but what exactly is the reference for me here?
Yes sorry Bauss it was a while ago but you joked you would start the next 'Why D Is Unpopular' thread (in response to all the new Why D Is Unpopular threads)
Oh, I remember it now. I totally forgot about it, so the context of your message was totally lost to me, my bad :)
Jun 24 2022
prev sibling next sibling parent forkit <forkit gmail.com> writes:
On Thursday, 23 June 2022 at 18:02:13 UTC, Don Allen wrote:

I can assure you, that 'robust' discussions have always been, and 
will always be, a part of human interaction.

There is nothing unique about the D forums, in this respect.

If somone ever genuiely crosses the line of 'civiilty', they are 
called out.

I've never seen a situation where they haven't been.

But shutting down robust discussions, is not my thing, and I'd 
encourage you, to not make it your thing.

btw. You mentioned the 'most controversial' threads, but there 
are other threads, discussions, besides the one you mention ;-)
Jun 23 2022
prev sibling next sibling parent reply IGotD- <nise nise.com> writes:
On Thursday, 23 June 2022 at 18:02:13 UTC, Don Allen wrote:
 So while I encourage all of you to submit your best ideas for D 
 improvement to this forum, I also suggest that you avoid 
 getting nasty or personal.
The thread "Why isn't D more popular?" was mostly objective and I hardly noticed any personal attacks but maybe I skimmed through it fast. The leadership/management of the D project remains a controversial topic and people have their right to express their thoughts about it. Some people might be dejected because how the project is managed and might be expressed in a negative way. That is mostly because people care about the project and want it to improve, otherwise they wouldn't write a word about it. If I'm going to criticize how things are discussed in the forum is that often that threads are derailed off topic. One thread, one topic should be the rule.
Jun 23 2022
parent forkit <forkit gmail.com> writes:
On Thursday, 23 June 2022 at 22:18:14 UTC, IGotD- wrote:
 ..
 If I'm going to criticize how things are discussed in the forum 
 is that often that threads are derailed off topic. One thread, 
 one topic should be the rule.
That's to be expected, particuarly in threads that spark an 'emotional' connection to the topic being discussed. When dealing with humans, you need to allow some leniency here... otherwise.. bad things sometimes happen when people cannot express their emotional state... Again, lets keep this in context. Most threads in the D forums, do not evolve into 'robust' discussion, and 'most' threads remain, for the most part, on topic. Unfortunately, as humans, our attention is always directed immediately to the most emotionally salient content. But the vast majority of threads in the D forum do not have emotionally salient content ;-)
Jun 23 2022
prev sibling next sibling parent forkit <forkit gmail.com> writes:
On Thursday, 23 June 2022 at 18:02:13 UTC, Don Allen wrote:

Also, if you are new to the D forums, you will often find this 
verb below, as the last part of an opening thread:

Destroy!

If I'm correct, we can thank (I mean genuiely thank) Andrei 
Alexandrescu for this!

While it's certainly not permission to go be uncivil to each 
other, it is a clear indication that 'group think', thankfully, 
is not actively encouraged in the D forums.

You need to get comfortable with this ;-)
Jun 23 2022
prev sibling next sibling parent claptrap <clap trap.com> writes:
On Thursday, 23 June 2022 at 18:02:13 UTC, Don Allen wrote:
 I've been bothered by the tone of some of the messages in this 
 forum recently, particularly in the "Why isn't D more popular?" 
 threads.
I think the D forums need a crèche.
Jun 23 2022
prev sibling next sibling parent reply Walter Bright <newshound2 digitalmars.com> writes:
Thanks for your kind words, Don! And thanks for recounting your success story 
with converting C to D.

Frankly, it has a lot to do with marketing. We're all engineers here, not 
marketers, and it shows.

Since you brought up the music business, it's the same thing. It's only 
partially a meritocracy. The rest is skill at marketing, packaging, and 
promotion. Even The Beatles languished in obscurity until they met Epstein.

My own C compiler did poorly until I partnered with John Haggins, a born 
marketer. Wow, what a difference he made!

I've known many engineers over the years who created very nice products. They'd 
come and complain to me that there was no uptake, what should they do? I
replied 
that they needed marketing and promotion, and I'd outline things they needed to 
do (like write articles, give presentations at conferences, etc.).

None of them would do this. Several had the attitude that it was unethical to
do 
any marketing and promotion. The rest just didn't want to make the effort. All 
wound up very discouraged and bitter.

Remember that movie "Field of Dreams"? To have a successful baseball field, 
"build it and they'll come". That's a pernicious lie. Things don't happen that 
way. Do you think Hollywood did no marketing and promotion for "FoD"? Of course 
they did! Lots of it.

Yes, we in the D community do do marketing and promotion. It's just that we're 
up against other communities that are very good at it.

P.S. Yes, I know there are products that took off with zero marketing and 
promotion. They are very, very rare.
Jun 23 2022
next sibling parent reply Max Samukha <maxsamukha gmail.com> writes:
On Friday, 24 June 2022 at 02:48:32 UTC, Walter Bright wrote:
 Remember that movie "Field of Dreams"? To have a successful 
 baseball field, "build it and they'll come". That's a 
 pernicious lie.
Another lie is "There's no such thing as bad publicity”. Bad press is bad. Threads like "Why D is unpopular?" shouldn't reach 1000 posts.
Jun 23 2022
next sibling parent reply Walter Bright <newshound2 digitalmars.com> writes:
On 6/23/2022 9:43 PM, Max Samukha wrote:
 Another lie is "There's no such thing as bad publicity”. Bad press is bad. 
 Threads like "Why D is unpopular?" shouldn't reach 1000 posts.
One thing we do is wear the hairshirt a lot. It's really unnecessary, no other language project does that.
Jun 23 2022
next sibling parent reply forkit <forkit gmail.com> writes:
On Friday, 24 June 2022 at 05:15:22 UTC, Walter Bright wrote:
 One thing we do is wear the hairshirt a lot. It's really 
 unnecessary, no other language project does that.
That's because we all to often, including me, forget that D is not a multibillion dollar organisation that can throw limitless amount of talent and money at the language. But still, what else to we have to compare D with, other than those languages. Just wear something under it. It'll make it a little less uncomfortable.
Jun 23 2022
parent reply Walter Bright <newshound2 digitalmars.com> writes:
On 6/23/2022 10:30 PM, forkit wrote:
 Just wear something under it. It'll make it a little less uncomfortable.
What I mean by wearing a hairshirt is insistence on negging D. There are many ways to be honest about D's capabilities without describing them in negative terms. For example: Hairshirt - D's gc is terrible compared with Java's. Honesty - Since Java is heavily dependent on the gc, it is worth it to insert write gates into the generated code to accurately track usage of gc allocated memory. Usage of D's gc is optional, and D's semantics are much less reliant on the gc. Hence, in the interest of maximum performance for most code, D does not insert write gates in the generated code.
Jun 24 2022
next sibling parent reply rikki cattermole <rikki cattermole.co.nz> writes:
On 25/06/2022 7:51 AM, Walter Bright wrote:
 Honesty - Since Java is heavily dependent on the gc, it is worth it to 
 insert write gates into the generated code to accurately track usage of 
 gc allocated memory. Usage of D's gc is optional, and D's semantics are 
 much less reliant on the gc. Hence, in the interest of maximum 
 performance for most code, D does not insert write gates in the 
 generated code.
Unfortunately pretty much all the advanced GC's require write barriers. We are almost maxed out on what we can do. At some point its going to have to be implemented as opt-in if we want to allow people to experiment with them.
Jun 24 2022
next sibling parent Walter Bright <newshound2 digitalmars.com> writes:
On 6/24/2022 12:57 PM, rikki cattermole wrote:
 At some point its going to have to be implemented as opt-in if we want to
allow 
 people to experiment with them.
Since D does not distinguish between gc and non-gc pointers, it would be a heavy penalty. Consider the following: struct S { ... } class C { int a; S s; } In Java, an instance of C would require two different allocated objects. This is a heavy burden on the GC, and justifies the write gates. Even if D allocations were all on the GC, D just does not have such a heavy reliance on the GC, and so write gates are much less justifiable. It's also kinda off-topic for this thread. I don't really want to debate gc or non-gc here, just pointing out how positive framing can be while still being totally honest.
Jun 24 2022
prev sibling parent "H. S. Teoh" <hsteoh qfbox.info> writes:
On Sat, Jun 25, 2022 at 07:57:03AM +1200, rikki cattermole via Digitalmars-d
wrote:
 
 On 25/06/2022 7:51 AM, Walter Bright wrote:
 Honesty - Since Java is heavily dependent on the gc, it is worth it
 to insert write gates into the generated code to accurately track
 usage of gc allocated memory. Usage of D's gc is optional, and D's
 semantics are much less reliant on the gc. Hence, in the interest of
 maximum performance for most code, D does not insert write gates in
 the generated code.
Unfortunately pretty much all the advanced GC's require write barriers. We are almost maxed out on what we can do. At some point its going to have to be implemented as opt-in if we want to allow people to experiment with them.
Experimenting with advanced GCs is definitely something worth exploring IMO. Memory-related bugs are a constant scourge in code with manual memory management. Random example: this week I just got another chromium update from my distro, fixing a bunch of issues. 4/9 issues were use-after-free bugs. Out of curiosity, I did a little investigation to get an idea of just how prevalent use-after-free bugs are. Here's a brief run-down: - 21 Jun 2022: 4 use-after-free bugs. - 10 Jun 2022: 2 use-after-free bugs. - 25 May 2022: 12 use-after-free bugs. - 10 May 2022: 7 use-after-free bugs. - 26 Apr 2022: 11 use-after-free bugs. - 11 Apr 2022: 6 use-after-free bugs. - 1 Apr 2022: 9 use-after-free bugs. - 16 Mar 2022: 9 use-after-free bugs. - 2 Mar 2022: 8 use-after-free bugs. - 15 Feb 2022: 6 use-after-free bugs. - 5 Feb 2022: 11 use-after-free bugs. - 19 Jan 2022: 12 use-after-free bugs. In total, there were a whopping 97 use-after-free bugs from the beginning of the year until now. And this is just *one* of numerous memory-related bugs, in *one* piece of software. A disproportionately large number of bugs per update are memory-related problems, such as use-after-free, out-of-bounds memory access, heap buffer overflow, etc.. And mind you, these are only the bugs that were *discovered* and reported. I suspect a fair number of them lie latent, either undiscovered or discovered but unreported by unscrupulous parties. Manual memory management may have its place, perhaps in low-level code in the kernel or something, but in application code it's just a constant source of bugs and a non-stop drain on resources to find and fix said bugs. It's time the world moved on to GC'd languages. And for that, D needs a competitive GC. If write barriers are what it takes to get one, then it's well worth the effort IMO. T -- If you look at a thing nine hundred and ninety-nine times, you are perfectly safe; if you look at it the thousandth time, you are in frightful danger of seeing it for the first time. -- G. K. Chesterton
Jun 24 2022
prev sibling next sibling parent Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= <ola.fosheim.grostad gmail.com> writes:
On Friday, 24 June 2022 at 19:51:29 UTC, Walter Bright wrote:
 Hence, in the interest of maximum performance for most code, D 
 does not insert write gates in the generated code.
Waiting for "all" threads to hit a checkpoint is not maximum performance…
Jun 24 2022
prev sibling next sibling parent reply forkit <forkit gmail.com> writes:
On Friday, 24 June 2022 at 19:51:29 UTC, Walter Bright wrote:
 On 6/23/2022 10:30 PM, forkit wrote:
 Just wear something under it. It'll make it a little less 
 uncomfortable.
What I mean by wearing a hairshirt is insistence on negging D. There are many ways to be honest about D's capabilities without describing them in negative terms. ...
Saying something in a postive way, is not necessarily good. Saying something in a negative way, is not necessarily bad. What is important, is the motivation - which is not always clear, whether the message was delivered in a positive way, or a negative way. In any case. I better understand your point, and for the most part, accept it. Certainly too much negativity, or negativity motivated by an excessive pursuit of ones own goals - ;-) .. can, and almost certainly will, have an aversive effect. But I'm struggling to see a day, where people in the D forums, sit around a fire together, and start singing kumbaya, in harmony with each other. The struggle to balance self-oriented goals against group-oriented goals, has always existed, and will continue to exist for some time yet... even in the D community.
Jun 24 2022
parent reply Mike Parker <aldacron gmail.com> writes:
On Friday, 24 June 2022 at 23:12:02 UTC, forkit wrote:

 But I'm struggling to see a day, where people in the D forums, 
 sit around a fire together, and start singing kumbaya, in 
 harmony with each other.
Then you've never been to DConf. That's metaphorically what we do, especially in the evenings when we gather for BeerConf, but also between the talks and during the Hackathon. I'm not saying everyone agrees all the time, but any debates that are had have a much, much different tone when they're face-to-face than they do in the forums.
Jun 24 2022
parent forkit <forkit gmail.com> writes:
On Saturday, 25 June 2022 at 00:26:55 UTC, Mike Parker wrote:
 On Friday, 24 June 2022 at 23:12:02 UTC, forkit wrote:

 But I'm struggling to see a day, where people in the D forums, 
 sit around a fire together, and start singing kumbaya, in 
 harmony with each other.
Then you've never been to DConf. That's metaphorically what we do, especially in the evenings when we gather for BeerConf, but also between the talks and during the Hackathon. I'm not saying everyone agrees all the time, but any debates that are had have a much, much different tone when they're face-to-face than they do in the forums.
So I've never been sure. Maybe that's because you never had one in Australia. But I think I've watched every single video that's been published, since they first began. I've worked in teams (real and virtual) before too ;-) I did specifically say the D 'forum' though. When you're in person, even in person virtually, 'social dynamics' tend to get priortised. Much less so in online forums. If only we were not 'autonomous existing objects', then there would be no tension whatsover.
Jun 24 2022
prev sibling parent reply mee6 <mee6 lookat.me> writes:
On Friday, 24 June 2022 at 19:51:29 UTC, Walter Bright wrote:
 On 6/23/2022 10:30 PM, forkit wrote:
 Just wear something under it. It'll make it a little less 
 uncomfortable.
What I mean by wearing a hairshirt is insistence on negging D. There are many ways to be honest about D's capabilities without describing them in negative terms. For example: Hairshirt - D's gc is terrible compared with Java's. Honesty - Since Java is heavily dependent on the gc, it is worth it to insert write gates into the generated code to accurately track usage of gc allocated memory. Usage of D's gc is optional, and D's semantics are much less reliant on the gc. Hence, in the interest of maximum performance for most code, D does not insert write gates in the generated code.
I don't think D's semantics are much less reliant on the GC. Have you tried writing CTFE without the GC? D has a worse GC than java, that's a fact. You can do manual memory management in D, even though it isn't really supported by its own feature set. Using something like C++ and Java together is the better option as it provides the best of both worlds. Like what Android did. D went a direction that provides a worse GC without providing the tools needed for the alternative it claims to support.
Jun 25 2022
parent reply Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= <ola.fosheim.grostad gmail.com> writes:
On Saturday, 25 June 2022 at 12:56:37 UTC, mee6 wrote:
 D has a worse GC than java, that's a fact. You can do manual 
 memory management in D, even though it isn't really supported 
 by its own feature set. Using something like C++ and Java 
 together is the better option as it provides the best of both 
 worlds. Like what Android did. D went a direction that provides 
 a worse GC without providing the tools needed for the 
 alternative it claims to support.
IIRC Atila Neves has expressed some positivity towards having some kind of actor model with local GC per actor in the forums. That in combination with ARC for shared objects could be an interesting direction. Applications have to be given control over scheduling though, and actors should be written to have short life times so that you can bypass garbage collection as long as you have low memory usage. (The GC heap then becomes an area-collector in practice, so everything is freed wholesale when the actor dies.). LLVM also makes it possible to do 100% precise collection, but the current blocker is the C union. It would also help to ban destructors on GC-allocated objects. So the main issue isn't that there are no options, but that there are no signs of future movement towards something better beyond those very sparse positive bleeps from Atila.
Jun 25 2022
parent reply mee6 <mee6 lookat.me> writes:
On Saturday, 25 June 2022 at 13:14:46 UTC, Ola Fosheim Grøstad 
wrote:
 On Saturday, 25 June 2022 at 12:56:37 UTC, mee6 wrote:
 D has a worse GC than java, that's a fact. You can do manual 
 memory management in D, even though it isn't really supported 
 by its own feature set. Using something like C++ and Java 
 together is the better option as it provides the best of both 
 worlds. Like what Android did. D went a direction that 
 provides a worse GC without providing the tools needed for the 
 alternative it claims to support.
IIRC Atila Neves has expressed some positivity towards having some kind of actor model with local GC per actor in the forums. That in combination with ARC for shared objects could be an interesting direction. Applications have to be given control over scheduling though, and actors should be written to have short life times so that you can bypass garbage collection as long as you have low memory usage. (The GC heap then becomes an area-collector in practice, so everything is freed wholesale when the actor dies.). LLVM also makes it possible to do 100% precise collection, but the current blocker is the C union. It would also help to ban destructors on GC-allocated objects. So the main issue isn't that there are no options, but that there are no signs of future movement towards something better beyond those very sparse positive bleeps from Atil
All of the options you mentioned probably won't happen, especially the LLVM option is never going to happen.
Jun 26 2022
parent Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= <ola.fosheim.grostad gmail.com> writes:
On Sunday, 26 June 2022 at 11:51:31 UTC, mee6 wrote:
 All of the options you mentioned probably won't happen, 
 especially the LLVM option is never going to happen.
I agree that the LLVM option isn't going to happen. The most I would hope for is that Atila has enough interests in the actor model to push for destruction free GC and actor local GC as an option. If ~5 capable devs are interested then it could happen as an alternative runtime option. (Ideally, an actor local GC should be compacting when memory pressure is high, but I doubt that will ever happen for D.)
Jun 26 2022
prev sibling parent mee6 <mee6 lookat.me> writes:
On Friday, 24 June 2022 at 05:15:22 UTC, Walter Bright wrote:
 On 6/23/2022 9:43 PM, Max Samukha wrote:
 Another lie is "There's no such thing as bad publicity”. Bad 
 press is bad. Threads like "Why D is unpopular?" shouldn't 
 reach 1000 posts.
One thing we do is wear the hairshirt a lot. It's really unnecessary, no other language project does that.
There's a lot of things no other language does that D does. 🙄. Most of them probably net negative.
Jun 24 2022
prev sibling next sibling parent reply forkit <forkit gmail.com> writes:
On Friday, 24 June 2022 at 04:43:34 UTC, Max Samukha wrote:
 Another lie is "There's no such thing as bad publicity”. Bad 
 press is bad. Threads like "Why D is unpopular?" shouldn't 
 reach 1000 posts.
1000+ does seem a little high ;-) But I think is was motivated by someone actually wanting to make it more popular, not less popular. I don't want to be part of a world, where people don't feel comfortable, or feel unsafe, to express their thoughts and feeling about this or that matter. I think that would have a much greater, negative effect on the D brand. I personally believe the D brand is better and stronger, because it can tolerate threads like that one. But that's just my own perspective.
Jun 23 2022
parent reply Walter Bright <newshound2 digitalmars.com> writes:
On 6/23/2022 10:26 PM, forkit wrote:
 But I think is was motivated by someone actually wanting to make it more 
 popular, not less popular.
Unhelpful Hairshirt: Why is D unpopular? Helpful: How can we expand D into new areas?
Jun 24 2022
parent reply drug007 <drug2004 bk.ru> writes:
On 6/24/22 23:01, Walter Bright wrote:
 On 6/23/2022 10:26 PM, forkit wrote:
 But I think is was motivated by someone actually wanting to make it 
 more popular, not less popular.
Unhelpful Hairshirt: Why is D unpopular? Helpful: How can we expand D into new areas?
Allow me to disagree. Trying to expand D in its current state is not helpful. Example of helpful could be: let's polish features we have and fix at least majority of reported bugs.
Jun 24 2022
parent Walter Bright <newshound2 digitalmars.com> writes:
On 6/24/2022 1:18 PM, drug007 wrote:
 Example of helpful could be: let's polish features we have and fix at least 
 majority of reported bugs.
That's more hairshirt wearing. Better: continuously improve features based on experience and stay in the vanguard of modern language technology
Jun 24 2022
prev sibling next sibling parent Dukc <ajieskola gmail.com> writes:
On Friday, 24 June 2022 at 04:43:34 UTC, Max Samukha wrote:
 On Friday, 24 June 2022 at 02:48:32 UTC, Walter Bright wrote:

 Threads like "Why D is unpopular?" shouldn't reach 1000 posts.
I do recall that the thread did stall for a few weeks, I think it did that twice. But then someone resurrected it.
Jun 24 2022
prev sibling next sibling parent reply claptrap <clap trap.com> writes:
On Friday, 24 June 2022 at 04:43:34 UTC, Max Samukha wrote:
 On Friday, 24 June 2022 at 02:48:32 UTC, Walter Bright wrote:
 Remember that movie "Field of Dreams"? To have a successful 
 baseball field, "build it and they'll come". That's a 
 pernicious lie.
Another lie is "There's no such thing as bad publicity”. Bad press is bad. Threads like "Why D is unpopular?" shouldn't reach 1000 posts.
That "quote" is usually attributed to P T Barnum, (or some variation to Oscar Wilde), so i think it has to be taken in context, if you're running a circus / freak show bad press can sometimes be good in the same way press outrage at an "offensive" film can drive people to see it. Not so good otherwise though.
Jun 24 2022
parent reply forkit <forkit gmail.com> writes:
On Friday, 24 June 2022 at 08:44:56 UTC, claptrap wrote:
 That "quote" is usually attributed to P T Barnum, (or some 
 variation to Oscar Wilde), so i think it has to be taken in 
 context, if you're running a circus / freak show bad press can 
 sometimes be good in the same way press outrage at an 
 "offensive" film can drive people to see it.

 Not so good otherwise though.
Look. C++ has been on the receiving end of constant negativity for...well..decades. Even from the hard-core within it... who continue to use it. And yet, the C++ brand remains strong. Very strong. And getting stronger. On the other hand, if I were a professional psychologist, I would not want to be attracting constant negativity. But a programming language should be able to deal with, just fine. If it's not,. it needs to work out why that is. If you just focus on trying to stop negativty, you will accomplish nothing. You may as well give up now.
Jun 24 2022
parent reply claptrap <clap trap.com> writes:
On Friday, 24 June 2022 at 08:53:23 UTC, forkit wrote:
 On Friday, 24 June 2022 at 08:44:56 UTC, claptrap wrote:
 That "quote" is usually attributed to P T Barnum, (or some 
 variation to Oscar Wilde), so i think it has to be taken in 
 context, if you're running a circus / freak show bad press can 
 sometimes be good in the same way press outrage at an 
 "offensive" film can drive people to see it.

 Not so good otherwise though.
Look. C++ has been on the receiving end of constant negativity for...well..decades. Even from the hard-core within it... who continue to use it.
It has likely still driven people away from C++, i mean you're posting this in a forum of a language that was in large a reaction to the flaes in C++, where most of the users are ex-C++ programmers. IE. That C++ is still popular does not mean the negative view of it hasn't driven people away. I dont miss it and hope I never have to use it ever again.
Jun 24 2022
parent reply forkit <forkit gmail.com> writes:
On Friday, 24 June 2022 at 09:31:02 UTC, claptrap wrote:
 It has likely still driven people away from C++, i mean you're 
 posting this in a forum of a language that was in large a 
 reaction to the flaes in C++, where most of the users are 
 ex-C++ programmers.
True. But it's been 22 years now.
 IE. That C++ is still popular does not mean the negative view 
 of it hasn't driven people away. I dont miss it and hope I 
 never have to use it ever again.
That's interesting. Cause I feel the opposite. That is, I feel like I'm becoming more interested in C++ again. I think it's because C++ finally decided to embrace change. But I'm sure all the 'negativity' played a role, in prompting them to do so. That, and they were losing programmers to other languages, as you say. The question is, how is D going to keep programmers (not so much attract them), when these other languages are going full-speed ahead. An experimental branch might actually help here.
Jun 24 2022
parent claptrap <clap trap.com> writes:
On Friday, 24 June 2022 at 09:44:43 UTC, forkit wrote:
 On Friday, 24 June 2022 at 09:31:02 UTC, claptrap wrote:
 It has likely still driven people away from C++, i mean you're 
 posting this in a forum of a language that was in large a 
 reaction to the flaes in C++, where most of the users are 
 ex-C++ programmers.
True. But it's been 22 years now.
So what?
 IE. That C++ is still popular does not mean the negative view 
 of it hasn't driven people away. I dont miss it and hope I 
 never have to use it ever again.
The question is, how is D going to keep programmers (not so much attract them), when these other languages are going full-speed ahead.
Is D losing programmers? Seems like people go.. D is cool, except i dont like X, and if D had Y it would be huge, why arent things being fixed / added quicker? D needs more users, being more popular would solve all the problems.
Jun 24 2022
prev sibling parent reply Antonio <antonio abrevia.net> writes:
On Friday, 24 June 2022 at 04:43:34 UTC, Max Samukha wrote:
 Another lie is "There's no such thing as bad publicity”. Bad 
 press is bad. Threads like "Why D is unpopular?" shouldn't 
 reach 1000 posts.
1000 posts in which it was not necessary to use "Godwin's law" seems like a great success to me :-) D is "so open" and developers so heterogeneous. It is normal that, time to time, forum will transform in a real agora where all this egos and ideas are confronted... It is not good for enterprise/marketing purposes, but very democratic. May be a trending analysis of these "threads" and some participant profile correlation could be useful. Better than banning this kind of threads (in my opinion) is to give developers a "quick" way to expose it's needs (without discussions) and to know the needs of other developers (without confrontation) based on surveys: * Flutter proposes me, time to time, to fill out a survey about a lot of aspects including the possibility to propose some improvements I consider necessary. What if "dub" proposes time to time a link to an official "D" survey? It will attract people using D that is not participating on forum threads. May be it shows up a better picture of the community and reduces the need of "visions" confrontation.
Jun 28 2022
parent reply Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= <ola.fosheim.grostad gmail.com> writes:
On Tuesday, 28 June 2022 at 13:33:58 UTC, Antonio wrote:
 What if "dub" proposes time to time a link to an official "D" 
 survey?  It will attract people using D that is not 
 participating on forum threads.
Sure, but I think there should be more forums. At least one advocacy forum relating to features/process and more than one question/answer forum. It would not hurt to add: - DIPs and Advocacy And also add a section called *Frameworks* with forums such as: - Web / vibe.d - Mir - DPlug That could make it easier for people getting started with the more promising frameworks. Yes, it is preferential treatment… but maybe that is positive given the limited presence on StackOverflow.
Jun 28 2022
next sibling parent reply rikki cattermole <rikki cattermole.co.nz> writes:
On 29/06/2022 1:51 AM, Ola Fosheim Grøstad wrote:
 Yes, it is preferential treatment… but maybe that is positive given the 
 limited presence on StackOverflow.
What has appeared to happen is most people who would otherwise use SO have moved to Discord. Not that we were getting many questions there to begin with.
Jun 28 2022
parent Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= <ola.fosheim.grostad gmail.com> writes:
On Tuesday, 28 June 2022 at 13:55:16 UTC, rikki cattermole wrote:
 Not that we were getting many questions there to begin with.
Newbies might not use that… One should try to consolidate less experienced users behind the frameworks that are «complete» and that has existed for some time, and also reduce the threshold for starting using them. The volume of such topical forums might be low, but the answers would not be lost, like they are in the Learn forums. Newbies might have a high threshold of asking questions (fear of being perceived as incompetent etc) and might have trouble figuring out what to search for (which also is very tedious).
Jun 28 2022
prev sibling next sibling parent zjh <fqbqrr 163.com> writes:
On Tuesday, 28 June 2022 at 13:51:17 UTC, Ola Fosheim Grøstad 
wrote:

 - Web / vibe.d
 - Mir
 - DPlug
It's a good idea. D needs to `integrate` various resources `in the forum or other places` as much as possible.
Jun 28 2022
prev sibling parent reply Paul Backus <snarwin gmail.com> writes:
On Tuesday, 28 June 2022 at 13:51:17 UTC, Ola Fosheim Grøstad 
wrote:
 On Tuesday, 28 June 2022 at 13:33:58 UTC, Antonio wrote:
 What if "dub" proposes time to time a link to an official "D" 
 survey?  It will attract people using D that is not 
 participating on forum threads.
Sure, but I think there should be more forums.
The primary effect of breaking up forums is to reduce the amount of traffic each individual forum gets. Given that the D forums are not currently suffering from excessive traffic, I do not think it makes sense to break any of them up.
Jun 28 2022
parent reply Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= <ola.fosheim.grostad gmail.com> writes:
On Tuesday, 28 June 2022 at 15:22:51 UTC, Paul Backus wrote:
 The primary effect of breaking up forums is to reduce the 
 amount of traffic each individual forum gets. Given that the D 
 forums are not currently suffering from excessive traffic, I do 
 not think it makes sense to break any of them up.
That was not the primary purpose I gave. I gave this rationale: - make it easier to find information from the past for new users - to consolidate around key frameworks that has the potential to become «complete» But it probably should be listed under the «learn» header to lower the threshold for asking questions. You can also find other reasons: - lower the pressure on creators of frameworks by having users help each other - increase the reasons for participating in forums - create a sense of belonging to a sub-community (e.g. the Turkish forums). - channel more users in, by having direct links from framework websites
Jun 28 2022
next sibling parent reply Paul Backus <snarwin gmail.com> writes:
On Tuesday, 28 June 2022 at 15:45:09 UTC, Ola Fosheim Grøstad 
wrote:
 On Tuesday, 28 June 2022 at 15:22:51 UTC, Paul Backus wrote:
 The primary effect of breaking up forums is to reduce the 
 amount of traffic each individual forum gets. Given that the D 
 forums are not currently suffering from excessive traffic, I 
 do not think it makes sense to break any of them up.
That was not the primary purpose I gave. I gave this rationale: - make it easier to find information from the past for new users - to consolidate around key frameworks that has the potential to become «complete»
It does not matter what your *intended* purpose was. The *effect* will be to reduce traffic (and consequently user engagement/participation). I have been a user of web forums since the early 2000s, and I have seen forum administrators make this exact mistake more times than I can count. If you want an organized store of past information, you should focus on reviving [the official D wiki][1]. [1]: https://wiki.dlang.org/
Jun 28 2022
parent Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= <ola.fosheim.grostad gmail.com> writes:
On Tuesday, 28 June 2022 at 15:59:43 UTC, Paul Backus wrote:
 I have been a user of web forums since the early 2000s, and I 
 have seen forum administrators make this exact mistake more 
 times than I can count.
What you need is someone to take care of the forums and promote them, of course. You cannot just create them. You need to actively seed online communities with content and make them more visible. Formation of group identity is very important. Most mailing-lists and forums have a very large number of lurkers. You want them to get out of lurking and have them engage. A bit of kind-hearted Machiavellian thinking does not hurt. With no technical and social strategy the stagnation will continue, nothing will change, and D will end up on a long tail of decline. (I don't really want to start a lecture on this topic… but I have participated/studied online communities since 300 baud…)
Jun 28 2022
prev sibling parent reply Salih Dincer <salihdb hotmail.com> writes:
On Tuesday, 28 June 2022 at 15:45:09 UTC, Ola Fosheim Grøstad 
wrote:
 You can also find other reasons:
 - lower the pressure on creators of frameworks by having users 
 help each other
 - increase the reasons for participating in forums
 - create a sense of belonging to a sub-community (e.g. the 
 Turkish forums).
 - channel more users in, by having direct links from framework 
 websites
I think we should continue with one language. Turkish forums are almost inactive! SDB 79
Jun 28 2022
next sibling parent zjh <fqbqrr 163.com> writes:
On Wednesday, 29 June 2022 at 02:02:44 UTC, Salih Dincer wrote:

 I think we should continue with one language. Turkish forums 
 are almost inactive!
There are few users of `turkuesh`. A `Chinese forum` will be absolutely lively.
Jun 28 2022
prev sibling parent Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= <ola.fosheim.grostad gmail.com> writes:
On Wednesday, 29 June 2022 at 02:02:44 UTC, Salih Dincer wrote:
 I think we should continue with one language. Turkish forums 
 are almost inactive!
I am talking about being topical, not national (although zjh has a point about chinese). E.g. if you have graphics/audio as a topic and a skilled moderator that drops interesting things (not only about D) then you can activate passive users and make them interested.
Jun 28 2022
prev sibling next sibling parent reply rikki cattermole <rikki cattermole.co.nz> writes:
On 24/06/2022 2:48 PM, Walter Bright wrote:
 Yes, we in the D community do do marketing and promotion. It's just that 
 we're up against other communities that are very good at it.
We certainly need to do better, part of that is curbing the negative non-productive talks on the forum. I need to bring this back up with Mike, but ya know he is busy so I'm not too keen to bother him until a bit of time has passed since last time I brought it up. One thing that we could do, is pay someone about once a year to make an album of music (royalty free so it can be used for live streamers!) to commemorate the year released around DConf. Somebody like Popskyy. While I don't think any other programming language does this, the OpenBSD community does[0]. [0] https://www.openbsd.org/lyrics.html
Jun 23 2022
next sibling parent forkit <forkit gmail.com> writes:
On Friday, 24 June 2022 at 06:31:37 UTC, rikki cattermole wrote:
 We certainly need to do better, part of that is curbing the 
 negative non-productive talks on the forum.

 I need to bring this back up with Mike, but ya know he is busy 
 so I'm not too keen to bother him until a bit of time has 
 passed since last time I brought it up.
Just don't curb the negative-productive ones please ;-) i.e. the one that resulted in this: https://github.com/dkorpel/dmd/tree/private-this Although i must mention, Dennis implementing this, is *****NOT***** an indication of his support for it.
Jun 24 2022
prev sibling next sibling parent reply claptrap <clap trap.com> writes:
On Friday, 24 June 2022 at 06:31:37 UTC, rikki cattermole wrote:
 On 24/06/2022 2:48 PM, Walter Bright wrote:
 Yes, we in the D community do do marketing and promotion. It's 
 just that we're up against other communities that are very 
 good at it.
We certainly need to do better, part of that is curbing the negative non-productive talks on the forum.
Just make an off topic forum and move the bitch fests to that. That way there's no censorship and people who want to grumble and posture can do so without dragging down the main forum. It's not rocket science.
Jun 24 2022
parent reply forkit <forkit gmail.com> writes:
On Friday, 24 June 2022 at 08:48:02 UTC, claptrap wrote:
 On Friday, 24 June 2022 at 06:31:37 UTC, rikki cattermole wrote:
 On 24/06/2022 2:48 PM, Walter Bright wrote:
 Yes, we in the D community do do marketing and promotion. 
 It's just that we're up against other communities that are 
 very good at it.
We certainly need to do better, part of that is curbing the negative non-productive talks on the forum.
Just make an off topic forum and move the bitch fests to that. That way there's no censorship and people who want to grumble and posture can do so without dragging down the main forum. It's not rocket science.
As I said before, as humans, our attention is always directed immediately to the most emotionally salient content. But most threads, the vast majority in fact, do not contain emotionally salient content. People should try directing their attention to those for a change. Even the title of this thread contains emotive content. So I wouldn't be suprised if this thread becomes the very thread it didn't want to become ;-) Please all, look at all the other threads, and keep the topic of this thread in context. No negativity at all would indicate possible group think to me. Errhhh! That's the last thing D needs.
Jun 24 2022
parent reply claptrap <clap trap.com> writes:
On Friday, 24 June 2022 at 08:59:47 UTC, forkit wrote:
 On Friday, 24 June 2022 at 08:48:02 UTC, claptrap wrote:
 On Friday, 24 June 2022 at 06:31:37 UTC, rikki cattermole 
 wrote:
 On 24/06/2022 2:48 PM, Walter Bright wrote:
 Yes, we in the D community do do marketing and promotion. 
 It's just that we're up against other communities that are 
 very good at it.
We certainly need to do better, part of that is curbing the negative non-productive talks on the forum.
Just make an off topic forum and move the bitch fests to that. That way there's no censorship and people who want to grumble and posture can do so without dragging down the main forum. It's not rocket science.
As I said before, as humans, our attention is always directed immediately to the most emotionally salient content. But most threads, the vast majority in fact, do not contain emotionally salient content. People should try directing their attention to those for a change.
Its not hard to stick to arguing facts. Just avoid things like calling people passive aggressive when they disagree with you. And I'm not advocating quashing criticism, just that when a thread veers off topic or becomes unproductive move it to to the off topic. Give people a place to vent and talk sh*te. Keep the general forum for people who are being reasonable and sticking on topic.
Jun 24 2022
parent reply forkit <forkit gmail.com> writes:
On Friday, 24 June 2022 at 09:41:46 UTC, claptrap wrote:
 Its not hard to stick to arguing facts. Just avoid things like 
 calling people passive aggressive when they disagree with you.
Lets compromise on that a little. When people are being passive-aggressive, I call them as being passive-aggresive. And when their not, I won't. How does that sound?
Jun 24 2022
next sibling parent reply Jordan Wilson <wilsonjord gmail.com> writes:
On Friday, 24 June 2022 at 09:48:21 UTC, forkit wrote:
 On Friday, 24 June 2022 at 09:41:46 UTC, claptrap wrote:
 Its not hard to stick to arguing facts. Just avoid things like 
 calling people passive aggressive when they disagree with you.
Lets compromise on that a little. When people are being passive-aggressive, I call them as being passive-aggresive. And when their not, I won't. How does that sound?
That's not what you were doing. A large proportion of responses to your messages were reasonable. The proportion of your messages accusing people of being passive-aggressive/ignorant/gutless etc. is not. Jordan
Jun 24 2022
parent reply forkit <forkit gmail.com> writes:
On Friday, 24 June 2022 at 10:23:24 UTC, Jordan Wilson wrote:
 On Friday, 24 June 2022 at 09:48:21 UTC, forkit wrote:
 On Friday, 24 June 2022 at 09:41:46 UTC, claptrap wrote:
 Its not hard to stick to arguing facts. Just avoid things 
 like calling people passive aggressive when they disagree 
 with you.
Lets compromise on that a little. When people are being passive-aggressive, I call them as being passive-aggresive. And when their not, I won't. How does that sound?
That's not what you were doing. A large proportion of responses to your messages were reasonable. The proportion of your messages accusing people of being passive-aggressive/ignorant/gutless etc. is not. Jordan
I choose not to engage you any further on this, except to say, that yes, there was a definite tug-of-war between people with very firm views. And my view remains very firm, as I'm sure is the case for the view of others. At least it all resulted in something practical. That is, something you can test for yourself write now, in your code, if you choose to. Or not, if you choose that.
Jun 24 2022
parent Jordan Wilson <wilsonjord gmail.com> writes:
On Saturday, 25 June 2022 at 03:54:03 UTC, forkit wrote:
 At least it all resulted in something practical. That is, 
 something you can test for yourself write now, in your code, if 
 you choose to.
We can both agree that the "ends" was something relatively good, and we clearly disagree on the "means" by which it was partly achieved; regardless, we can move on. I hope the experimental feature flag is positive, and perhaps it ends up in the language proper. Jordan
Jun 25 2022
prev sibling parent reply claptrap <clap trap.com> writes:
On Friday, 24 June 2022 at 09:48:21 UTC, forkit wrote:
 On Friday, 24 June 2022 at 09:41:46 UTC, claptrap wrote:
 Its not hard to stick to arguing facts. Just avoid things like 
 calling people passive aggressive when they disagree with you.
Lets compromise on that a little. When people are being passive-aggressive, I call them as being passive-aggresive. And when their not, I won't. How does that sound?
Dont call people anything. If you want a respectful technical discusion avoid anything personal. Argue the facts of what they say not your emotional response to it. Which is exactly how i responded to you in the "adding a new design constraint thread" and your response was to label me passive aggressive. Seriously go back and read it. You dont even know what passive aggressive means. Me replying to other people saying things i knew would indirectly set you off was passive aggressive. Me replying to you directly and respectfully was not. Savy?
Jun 24 2022
parent reply forkit <forkit gmail.com> writes:
On Friday, 24 June 2022 at 11:11:12 UTC, claptrap wrote:
 On Friday, 24 June 2022 at 09:48:21 UTC, forkit wrote:
 [...]
Dont call people anything. If you want a respectful technical discusion avoid anything personal. Argue the facts of what they say not your emotional response to it. Which is exactly how i responded to you in the "adding a new design constraint thread" and your response was to label me passive aggressive. Seriously go back and read it. You dont even know what passive aggressive means. Me replying to other people saying things i knew would indirectly set you off was passive aggressive. Me replying to you directly and respectfully was not. Savy?
Ummm.. where do I begin... I know... https://forum.dlang.org/post/mrrwoltoqfohnidkjucd forum.dlang.org
Jun 24 2022
parent reply Mike Parker <aldacron gmail.com> writes:
On Saturday, 25 June 2022 at 04:07:32 UTC, forkit wrote:
 On Friday, 24 June 2022 at 11:11:12 UTC, claptrap wrote:
 On Friday, 24 June 2022 at 09:48:21 UTC, forkit wrote:
 [...]
Dont call people anything. If you want a respectful technical discusion avoid anything personal. Argue the facts of what they say not your emotional response to it. Which is exactly how i responded to you in the "adding a new design constraint thread" and your response was to label me passive aggressive. Seriously go back and read it. You dont even know what passive aggressive means. Me replying to other people saying things i knew would indirectly set you off was passive aggressive. Me replying to you directly and respectfully was not. Savy?
Ummm.. where do I begin... I know... https://forum.dlang.org/post/mrrwoltoqfohnidkjucd forum.dlang.org
Alright folks, please let's not get into a tit for tat here. The original post in this thread was phrased in broad terms, speaking to the community as a whole. It has since veered off into the personal. Please let's bring it back to the broader topic and stay away from calling out personal behavior, directly or indirectly. We should be able to have a civil discussion about civility. And to be clear, I've replied directly to forkit's post, but I'm speaking to everyone. I'm going to delete any further posts in this thread that get personal.
Jun 24 2022
parent forkit <forkit gmail.com> writes:
On Saturday, 25 June 2022 at 05:22:54 UTC, Mike Parker wrote:

Umm.. isn't (essentially) calling people uncivil (the premise of 
the thread topic) kinda 'personal'?
Jun 24 2022
prev sibling next sibling parent forkit <forkit gmail.com> writes:
On Friday, 24 June 2022 at 06:31:37 UTC, rikki cattermole wrote:
 One thing that we could do, is pay someone about once a year to 
 make an album of music (royalty free so it can be used for live 
 streamers!) to commemorate the year released around DConf. 
 Somebody like Popskyy.

 While I don't think any other programming language does this, 
 the OpenBSD community does[0].

 [0] https://www.openbsd.org/lyrics.html
You know, I used OpenBSD extensively, for more than a decade. I cannot recall ever paying attention to their marketing ploys. A secure operating system, by design, was sufficient for me. (although, I readily acknowledge, not everyone considers it to be 'secure'). btw, back in the 90s', when I was learning C++, my friend and I walked into the software store one day (yeah, no online back then), and the product we both decided on, was the product with the biggest box (i.e. the most books). At that particular time, it was Borland C++ that had the biggest box, with the most books. So we settled on that. Of course I never read them all. If we were in the 90's still, I'd say that maybe D needs a bigger box. But other than a bigger box, I'm not so sure... perhaps a product that delivered on what it claims it is, would probably do just fine ;-)
Jun 25 2022
prev sibling parent forkit <forkit gmail.com> writes:
On Friday, 24 June 2022 at 06:31:37 UTC, rikki cattermole wrote:
 One thing that we could do, is pay someone about once a year to 
 make an album of music (royalty free so it can be used for live 
 streamers!) to commemorate the year released around DConf. 
 Somebody like Popskyy.

 While I don't think any other programming language does this, 
 the OpenBSD community does[0].

 [0] https://www.openbsd.org/lyrics.html
You know, I used OpenBSD extensively, for more than a decade. I cannot recall ever paying attention to their marketing ploys. Actually being a secure operating system, as it claimed, was sufficient for me. (although, I readily acknowledge, not everyone considers it to be 'secure'). btw, back in the 90s', when I was learning C++, my friend and I walked into the software store one day (yeah, no online back then), and the product we both decided on, was the product with the biggest box (i.e. the most books). At that particular time, it was Borland C++ that had the biggest box, with the most books. So we settled on that. Of course I never read them all. If we were in the 90's still, I'd say that maybe D needs a bigger box. But other than a bigger box, I'm not so sure... perhaps a product that delivered on what it claims it is, would probably do just fine ;-)
Jun 25 2022
prev sibling next sibling parent reply Dukc <ajieskola gmail.com> writes:
On Friday, 24 June 2022 at 02:48:32 UTC, Walter Bright wrote:
 My own C compiler did poorly until I partnered with John 
 Haggins, a born marketer. Wow, what a difference he made!
Did he just help you market existing features in your C compiler, or did he point out what features you should add to win sales?
Jun 24 2022
parent reply Walter Bright <newshound2 digitalmars.com> writes:
On 6/24/2022 4:59 AM, Dukc wrote:
 On Friday, 24 June 2022 at 02:48:32 UTC, Walter Bright wrote:
 My own C compiler did poorly until I partnered with John Haggins, a born 
 marketer. Wow, what a difference he made!
Did he just help you market existing features in your C compiler, or did he point out what features you should add to win sales?
He knew how to work with magazines and journalists. He knew how to design advertisements. He knew how to bundle it with other desirable products. He'd organize press events. He knew how to frame the compiler's capabilities in a very positive (but still accurate) light. He knew how to put the product in an attractive box that was a pleasure to have on one's shelf. BTW, the most effective marketing we do is write books and articles and make videos about D. Also attending conferences and make presentations about D. For example, I just returned from a 2 city tour in Poland making presentations about D, and I did another remote one for a Romanian coding conference.
Jun 24 2022
parent reply Dukc <ajieskola gmail.com> writes:
On Friday, 24 June 2022 at 19:58:32 UTC, Walter Bright wrote:
 On 6/24/2022 4:59 AM, Dukc wrote:
 Did he just help you market existing features in your C 
 compiler, or did he point out what features you should add to 
 win sales?
He knew how to work with magazines and journalists. He knew how to design advertisements. He knew how to bundle it with other desirable products. He'd organize press events. He knew how to frame the compiler's capabilities in a very positive (but still accurate) light. He knew how to put the product in an attractive box that was a pleasure to have on one's shelf.
Yes, I tend to believe that this kind of stuff is as important to become popular as getting the engineering right. It's also something that I'm definitely not known at being good at. That's why it's good that you reviewed my D blog post before it went public. Anyone who wants D to become popular should think about this when posting at these forums, or HN, or Reddit, etc. Not at the expense of being clear about issues. But it's just stupid to spend evenings contributing issue reports and code, and then miss easy opportunities to attract more users when talking about the language.
Jun 24 2022
parent reply Timon Gehr <timon.gehr gmx.ch> writes:
On 25.06.22 00:02, Dukc wrote:
 He knew how to work with magazines and journalists. He knew how to 
 design advertisements. He knew how to bundle it with other desirable 
 products. He'd organize press events. He knew how to frame the 
 compiler's capabilities in a very positive (but still accurate) light. 
 He knew how to put the product in an attractive box that was a 
 pleasure to have on one's shelf.
Yes, I tend to believe that this kind of stuff is as important to become popular as getting the engineering right. It's also something that I'm definitely not known at being good at. That's why it's good that you reviewed my D blog post before it went public. Anyone who wants D to become popular
D is already popular.
Jun 24 2022
next sibling parent reply zjh <fqbqrr 163.com> writes:
On Saturday, 25 June 2022 at 01:24:43 UTC, Timon Gehr wrote:

 D is already popular.
It doesn't matter whether it's popular or not. You should first satisfy `existing users` and don't `aim` too high. `Marketers` are really `unimportant`. Good things will naturally be `used` by others!
Jun 24 2022
next sibling parent reply Walter Bright <newshound2 digitalmars.com> writes:
On 6/24/2022 6:57 PM, zjh wrote:
 `Marketers` are really `unimportant`. Good things will naturally be `used` by 
 others!
I wish both of these statements are true. But they are not.
Jun 24 2022
parent zjh <fqbqrr 163.com> writes:
On Saturday, 25 June 2022 at 03:14:40 UTC, Walter Bright wrote:
 On 6/24/2022 6:57 PM, zjh wrote:
 `Marketers` are really `unimportant`. Good things will 
 naturally be `used` by others!
The main thing is that `D` official should listen to `users'` reasonable opinions. If it were me, I would think about how to reasonably arrange `'manpower/money/time'`? What is `important` and what is `less and simple`. Make a `task list` and give it to people to complete .This will inevitably involve a lot of `'DMD'` related knowledge. Therefore, D should `carefully/detailed` introduce `'DMD'` to facilitate people's `'contributions'`. And should also introduce how to use `'betterC'` purely? How can I avoid `'betterC'` and simply stay away from `'Garbage Collection'`? What if we `make full use of 'GC'` without affecting `'speed/memory'` and bring `benefits` to programmers? And the `'container'` of `'d's'` `vector/unordered map/unordered set` .Where is the `unordered set` of D? `D` also needs several lists: `excellent post list'`,`'d excellent person's post list'`,`'d main problem list '`,`'d beginner's garden list'`,`'d future features and implementation schedule '`,`'d comparison list with other languages'`, etc. They should be placed in an `obvious position` for the convenience of `beginners`.
Jun 24 2022
prev sibling parent reply Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= <ola.fosheim.grostad gmail.com> writes:
On Saturday, 25 June 2022 at 01:57:08 UTC, zjh wrote:
 It doesn't matter whether it's popular or not. You should first 
 satisfy `existing users` and don't `aim` too high.
Indeed, but you should pick a target group. If there are 5 different use scenarios for D and 5% is missing for each scenario then you have a 95% solution for each, but maybe a 75% solution in total. So if Walter tries to keep everyone happy then the next 5% brings it up to 80% and each scenario to 96%. Which doesn’t make a significant difference. It is better to focus on one scenario and get that to 100%. So it is better to tell 4 out of 5 NO and give special treatment to 1/5. Just pick the most promising scenario.
 `Marketers` are really `unimportant`. Good things will 
 naturally be `used` by others!
If the tool is the hands down best for some specific purpose then yes, word of mouth is the best marketing when the product is exceptional. If it is one of many or bland then marketing becomes an issue.
Jun 25 2022
next sibling parent reply forkit <forkit gmail.com> writes:
On Saturday, 25 June 2022 at 07:37:51 UTC, Ola Fosheim Grøstad 
wrote:
 If the tool is the hands down best for some specific purpose 
 then yes, word of mouth is the best marketing when the product 
 is exceptional.

 If it is one of many or bland then marketing becomes an issue.
Well, back in the 90s', when I was learning C++, my friend and I walked into the software store one day (yeah, no online back then), and the product we both decided on, was the product with the biggest box (i.e. the most books). At that particular time, it was Borland C++ that had the biggest box, with the most books. So we settled on that. Of course I never read them all. If we were in the 90's still, I'd say that maybe D needs a bigger box.
Jun 25 2022
parent Walter Bright <newshound2 digitalmars.com> writes:
On 6/25/2022 1:05 AM, forkit wrote:
 At that particular time, it was Borland C++ that had the biggest box, with the 
 most books. So we settled on that.
Borland had stellar marketing. They were adept at branding mundane features as incredible new technology.
Jun 25 2022
prev sibling next sibling parent reply zjh <fqbqrr 163.com> writes:
On Saturday, 25 June 2022 at 07:37:51 UTC, Ola Fosheim Grøstad 
wrote:

 Indeed, but you should pick a target group. If there are 5 
 different use scenarios for D and 5% is missing for each 
 scenario then you have a 95% solution for each, but maybe a 75% 
 solution in total.
Yes. So, finally, the question is `"positioning"`. Who is your `"target user"`? What kind of people are you going to `attract` to join `'d'`? I have been proposing to attract `talents in c++`. Because `'c++' talents` care about `'speed/memory'` most, and they are also willing to write `libraries`. This is an `excellent group`! Why not `attract` them? Listen carefully to `their opinions`. What they are not `satisfied` with is the direction of `D's efforts`! Through them to help `'d'` writing the library and increasing the `peripheral ecology` of `'d'`! Our opponent is `'rust'` , so we must compete with with `rust` in who attract most `C++` talents! This is where D should go.`Talents` is the most important! Meeting their needs is more important than meeting the needs of `ordinary users`!
Jun 25 2022
parent reply Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= <ola.fosheim.grostad gmail.com> writes:
On Saturday, 25 June 2022 at 08:08:46 UTC, zjh wrote:
 On Saturday, 25 June 2022 at 07:37:51 UTC, Ola Fosheim Grøstad 
 wrote:
 Yes. So, finally, the question is `"positioning"`. Who is your 
 `"target user"`?
 What kind of people are you going to `attract` to join `'d'`?
 I have been proposing to attract `talents in c++`.
 Because `'c++' talents` care about `'speed/memory'` most, and 
 they are also willing to write `libraries`. This is an 
 `excellent group`! Why not `attract` them?
Yes, I agree, but D has to be a language that C++ programmers want to use in their spare time, so it has to less complex with clean syntax and not try to become like C++. There is also no point in becoming a language like Rust. You could also look at github, to see what kind of projects people make. Btw here are the stats for number of created repositories on github in the past 6 months (roughly, github search is a bit inaccurate): language | new repos in past 6 months (rounded to 1 digit) --------- | --- Java |1000000 TypeScript | 500000 C++ | 300000 Go | 100000 Rust |60000 haskell | 5000 Zig | 700 Nim | 600 D | 400 Crystal |300 Odin |100 Pony | 30 There is a big gap between popular languages and niche languages.
Jun 26 2022
next sibling parent reply zjh <fqbqrr 163.com> writes:
On Sunday, 26 June 2022 at 11:58:31 UTC, Ola Fosheim Grøstad 
wrote:
so it has to less complex with
 clean syntax and not try to become like C++. There is also no 
 point in becoming a language like Rust.
In `D`'s what partion do you think can be `simplified`? Language is borned to be complex, because you have `a variety of` needs to meet. `D ` language needs to raise `'95%'` to `100%` one by one. Then, as `d users`, we can proudly help `d's` promote in `various fields`! What is needed is reasonable arrangement of `time/manpower/money`. The most important things should be done one by one Don't worry about the small number of users now. First meet the needs of `existing users` . Stabilize the `basic users`! First sort the `'todo priority'`, and there is no one so far. I didn't see the `D's task list`. We should make rational use of the power of the community. It's too difficult to rely on just a few key people to compete with other lanuguage.
Jun 26 2022
next sibling parent reply zjh <fqbqrr 163.com> writes:
On Sunday, 26 June 2022 at 12:24:11 UTC, zjh wrote:

 ...
We should let d users actively participate in `'d'`. Explain `'DMD' and 'backends'` in detail. `'D'` needs to `rely on` the `'power'` of the community. Other languages also rely on it. D official should put forward `a list of important todos` so that the community can actively participate! Just like distributing tasks, you should first 'list tasks' instead of just 'writing code'. D's improvement needs constantly promoted by `D's users`. The same is true for other languages. Therefore, should listen carefully to the needs of the `'users'`! The slogan can be simply `'serve for expert programmers'`! With `experts` to help you expand the `lib base`, won't ordinary users come?
Jun 26 2022
parent reply zjh <fqbqrr 163.com> writes:
On Sunday, 26 June 2022 at 12:35:51 UTC, zjh wrote:

 `'serve for expert programmers'`!
Or ,`D is for expert!` The direction of D is not obvious now, that is, the number of `users` is small. What D needs most is `experts`! If `the direction` is not obvious, then we can just `'serve for the experts'` ! Where `experts `go, where `d`! At least, this is also a direction! D needs `experts` to write the `lib base`, and also requires experts to `improve DMD`. Therefore, `D` should introduce `'DMD'` in detail . Attract `experts` in different fields to improve `'DMD'`! Where `experts` go,Where `d` go! In this way, D has a `direction` . If there are many experts in some field, naturally `'d'` is good at `that field`, isn't it?
Jun 26 2022
parent reply zjh <fqbqrr 163.com> writes:
On Sunday, 26 June 2022 at 12:56:00 UTC, zjh wrote:

 ...
Yes, `d` needs to be `organized`! At present, it is very important to make a `to-do list`! We can solve the `"small problems"` first, and then the `"big problems"`. In any case, we should list the problems `first`! Simple problems are handed over to `'d'` ordinary users, and to users of different levels according to the `difficulty` of the problem. Also need a branch to `'radical'` reconstruct `dmd`. Now, after finishing the features at hand , stop new features. solve `the problems` that `'users'` are most dissatisfied with first!
Jun 26 2022
next sibling parent zjh <fqbqrr 163.com> writes:
On Sunday, 26 June 2022 at 13:09:04 UTC, zjh wrote:


 ..
`'radical'` reconstruct `dmd` is a must. If experts can not implement `features` well, how can ordinary users `contribute` for `dmd`?
Jun 26 2022
prev sibling parent reply Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= <ola.fosheim.grostad gmail.com> writes:
On Sunday, 26 June 2022 at 13:09:04 UTC, zjh wrote:
 Yes, `d` needs to be `organized`!
 At present, it is very important to make a `to-do list`!
 We can solve the `"small problems"` first, and then the `"big 
 problems"`.
I think it is a good idea to focus on the "big issues" as those most likely are the ones that make people reduce their activity and use the language less. Anyway, Mike Parker said he would publish a vision document soon, so we just have to wait and see what is possible and what is not (in the near future).
Jun 26 2022
parent reply zjh <fqbqrr 163.com> writes:
On Sunday, 26 June 2022 at 15:10:42 UTC, Ola Fosheim Grøstad 
wrote:

 I think it is a good idea to focus on the "big issues" as those 
 most likely are the ones that make people reduce their activity 
 and use the language less.
One small problem a day. The experience changes every day. Isn't it good? `The big ones` are easy to make mistakes. The big ones should be broken down into `small ones` first. Take your time. If you are urgent, you are easy to make mistakes.
Jun 26 2022
parent reply Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= <ola.fosheim.grostad gmail.com> writes:
On Monday, 27 June 2022 at 00:20:06 UTC, zjh wrote:
 `The big ones` are easy to make mistakes. The big ones should 
 be broken down into `small ones` first. Take your time. If you 
 are urgent, you are easy to make mistakes.
I understand what you are saying, but basically all languages, except C, have a more attractive memory management solution. D also needs to get some real benefits from ‘shared’ and clear move semantics/RAII. So starting with big things matters. If we don’t start now then it will never be done and then you will never get the attention of C++ programmers. We can avoid mistakes by keeping it separate from regular D until it is a good solution. If it turns out bad, just abandon it.
Jun 27 2022
parent reply zjh <fqbqrr 163.com> writes:
On Monday, 27 June 2022 at 20:57:40 UTC, Ola Fosheim Grøstad 
wrote:
but basically all languages,
 except C, have a more attractive memory management solution. D 
 also needs to get some real benefits from ‘shared’ and clear 
 move semantics/RAII.

 So starting with big things matters. If we don’t start now then 
 it will never be done and then you will never get the attention 
 of C++ programmers.
I mean, `big problems` should be broken down into small ones `first` . `D` can solve it at the same time as other `small problems`.It's better to break it down into `task lists` to `distribute tasks`. If we only deal with `'big problems'` and ignore `'small problems'` and do not decompose them, it is likely that the small problems have not been solved and the `'big problems'` have not been solved too. Priority of problems: it should be sorted according to `"urgency/severity/importance/..."`.
Jun 27 2022
parent Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= <ola.fosheim.grostad gmail.com> writes:
On Tuesday, 28 June 2022 at 00:27:15 UTC, zjh wrote:
 I mean, `big problems` should be broken down into small ones 
 `first` .
«Big problems» need high level decisions to be made first. Then design. Then a break down into tasks. Small problems are in the issue tracker, but could probably be broken down to a todo list as you say.
Jun 27 2022
prev sibling parent Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= <ola.fosheim.grostad gmail.com> writes:
On Sunday, 26 June 2022 at 12:24:11 UTC, zjh wrote:
 In `D`'s what partion do you think can be `simplified`?
 Language is borned to be complex, because you have `a variety 
 of` needs to meet.
Depends on what we mean with «complex». Simple languages can be powerful (Scheme/Prolog). Primitive languages can be complex to use (bad syntax, inconsistencies, special cases). The easiest way to avoid being perceived as complex is to not deviate from other languages on basic stuff and have a high degree of consistency internally. The less additional things you have to remember, the less complex it will feel. Right now the most important thing is to not add additional complexity and still solve remaining issues. Then one can take one step back later and do a syntax cleanup when all the semantics are right.
 What is needed is reasonable arrangement of 
 `time/manpower/money`.
Yes, well, that is an issue. Not many people will volunteer to work on the DMD code base without a cleanup. And not many people will volunteer to work on SDC until it has reached a more mature stage as they don't know if it will reach completion… It is a [catch-22 situation](https://en.wikipedia.org/wiki/Catch-22_(logic)) that can only be fixed by the core team setting a new direction.
 First sort the `'todo priority'`, and there is no one so far.
 I didn't see the `D's task list`.
Yes. The problem is that you need a high level design that people believe in first. I don't believe in live or DIP1000 or Rust-semantics. I could believe in actor-local GC. I could believe in concurrent GC. I could believe in ARC. But with no high level design decision by the core team, not many will be motivated to move as they would be alone and would not know if their efforts would be undermined by new language semantics coming out of nowhere. So the «do it yourself» does not work in this case, it is a high risk to take. It is lower risk to go create your own language.
Jun 26 2022
prev sibling parent Salih Dincer <salihdb hotmail.com> writes:
On Sunday, 26 June 2022 at 11:58:31 UTC, Ola Fosheim Grøstad 
wrote:
 Yes, I agree, but D has to be a language that C++ programmers 
 want to use in their spare time, so it has to less complex with 
 clean syntax and not try to become like C++. There is also no 
 point in becoming a language like Rust.
I agree, we should stay out of the conplex. After all, D is a highly readable language. Why should we break your motivation? It should focus on a single subject, to make an error-free language. Even if we don't develop it for a while... SDB 79
Jun 28 2022
prev sibling parent reply zjh <fqbqrr 163.com> writes:
On Saturday, 25 June 2022 at 07:37:51 UTC, Ola Fosheim Grøstad 
wrote:

 So it is better to tell 4 out of 5 NO and give special 
 treatment to 1/5.

 Just pick the most promising scenario.
This is also very important. One `'100%'` is better than three `'95%'`! Now, since this is the case, we should list all the `existing problems` and sort them according to the `important procedures`. The most important problems should be solved `first`, and then the second important ones. `One by one`. Then `d users` can boldly boast all over the world If the foundation is `not qualified`, marketing will only be `counterproductive`!
Jun 25 2022
parent zjh <fqbqrr 163.com> writes:
On Saturday, 25 June 2022 at 08:13:56 UTC, zjh wrote:

 This is also very important. One `'100%'` is better than three 
 `'95%'`!
`D` must establish a list of `'excellent articles'`. Even if people don't use `d`, they can access these `'excellent articles'` to learn! Here are two `Chinese versions` of comparison to `rust`: [1](https://fqbqrr.blog.csdn.net/article/details/123035356)And[2](https://fqbqrr.blog.csdn.net/article/details/123035356) [here, this is the Chinese version]( https://blog.csdn.net/fqbqrr/category_9101560.html )List of posts for `'d beginners'`. See the `link` at the beginning of the article for the `English version`. It would be `great` if could provide a 'link' to `it` somewhere in the `'d'` official website.
Jun 25 2022
prev sibling parent Dukc <ajieskola gmail.com> writes:
On Saturday, 25 June 2022 at 01:24:43 UTC, Timon Gehr wrote:
 On 25.06.22 00:02, Dukc wrote:
 Anyone who wants D to become popular
D is already popular.
Yes, good correction. Should be "more popular than already" or something like that.
Jun 25 2022
prev sibling next sibling parent reply Dom Disc <dominikus scherkl.de> writes:
On Friday, 24 June 2022 at 02:48:32 UTC, Walter Bright wrote:
 My own C compiler did poorly until I partnered with John 
 Haggins, a born marketer. Wow, what a difference he made!
If you know such capable people, why don't you try to win them over to work on D? Or did you, and they refused?
Jun 24 2022
parent Walter Bright <newshound2 digitalmars.com> writes:
On 6/24/2022 8:31 AM, Dom Disc wrote:
 On Friday, 24 June 2022 at 02:48:32 UTC, Walter Bright wrote:
 My own C compiler did poorly until I partnered with John Haggins, a born 
 marketer. Wow, what a difference he made!
If you know such capable people, why don't you try to win them over to work on D? Or did you, and they refused?
John found me, and pitched his skills.
Jun 24 2022
prev sibling parent reply Chris <wendlec tcd.ie> writes:
On Friday, 24 June 2022 at 02:48:32 UTC, Walter Bright wrote:
 Thanks for your kind words, Don! And thanks for recounting your 
 success story with converting C to D.

 Frankly, it has a lot to do with marketing. We're all engineers 
 here, not marketers, and it shows.
This begs the question why no marketer ever approached the D community to embrace the product. If a clever marketer sees potential s/he will certainly have a go at it. Have you ever been approached by marketer about D?
 Since you brought up the music business, it's the same thing. 
 It's only partially a meritocracy. The rest is skill at 
 marketing, packaging, and promotion. Even The Beatles 
 languished in obscurity until they met Epstein.
This is sadly true, isn't it weird that so many famous female classical musicians have the perfect looks for fashion magazines? That's statistically not possible. Image over talent, that also happens in other genres like Blues, Rock and Jazz.
 My own C compiler did poorly until I partnered with John 
 Haggins, a born marketer. Wow, what a difference he made!

 I've known many engineers over the years who created very nice 
 products. They'd come and complain to me that there was no 
 uptake, what should they do? I replied that they needed 
 marketing and promotion, and I'd outline things they needed to 
 do (like write articles, give presentations at conferences, 
 etc.).

 None of them would do this. Several had the attitude that it 
 was unethical to do any marketing and promotion. The rest just 
 didn't want to make the effort. All wound up very discouraged 
 and bitter.
You sure can't blame the lack of marketing for D's relative obscurity. What about all the initially enthusiastic users who abandoned D for technical reasons not because of the lack of marketing? Other small open source languages attract users and contributors without much hype too. In D's case it's not just the marketing. It's the many unresolved issues the language has (I won't reiterate them here). Harsh criticism of D usually comes from users who are / were really interested in D, not from the random developer who has to churn out silly apps for smart phones. The usual steps after discovering D are roughly like this: enthusiasm > start a project in D > experience / proficiency > slowly discover all the flaws > despair > no remedy in sight > good-bye. Of course, each Reddit thread or whatever attracts the criticism of ex-users and / or long-time observers. As for the hairshirt business, it does not help to rephrase things in a positive way. That's called framing and is usually a sign of decay. Once we're asked to use politically correct language, we know that there are issues we're not allowed to talk about. That won't make the issues go away though.
Jun 28 2022
parent reply Paul Backus <snarwin gmail.com> writes:
On Tuesday, 28 June 2022 at 09:10:09 UTC, Chris wrote:
 You sure can't blame the lack of marketing for D's relative 
 obscurity. What about all the initially enthusiastic users who 
 abandoned D for technical reasons not because of the lack of 
 marketing? Other small open source languages attract users and 
 contributors without much hype too.
I reject the premise of this argument. D is only "relatively obscure" if you compare it to the small handful of "superstar" languages like C, Python, Javascript, and so on. The vast majority of programming languages never achieve even D's level of popularity, and would be overjoyed to have as many users and open-source contributors as D does.
 In D's case it's not just the marketing. It's the many 
 unresolved issues the language has (I won't reiterate them 
 here). Harsh criticism of D usually comes from users who are / 
 were really interested in D, not from the random developer who 
 has to churn out silly apps for smart phones. The usual steps 
 after discovering D are roughly like this: enthusiasm > start a 
 project in D > experience / proficiency > slowly discover all 
 the flaws > despair >  no remedy in sight > good-bye.
Sure, D has problems. So does everything else. If your reaction to discovering that a technology has serious flaws is to give up in despair, you may as well quit computers. For example: you know what else has serious flaws with no remedy in sight? Files.
 We're going to look at the file "stack" starting at the top 
 with the file API, which we'll see is nearly impossible to use 
 correctly and that supporting multiple filesystems without 
 corrupting data is much harder than supporting a single 
 filesystem; move down to the filesystem, which we'll see has 
 serious bugs that cause data loss and data corruption; and then 
 we'll look at disks and see that disks can easily corrupt data 
 at a rate five million times greater than claimed in vendor 
 datasheets.
Source: https://danluu.com/deconstruct-files/ If you dig deep enough, you will eventually discover that everything is like this. Programming languages are like this, operating systems are like this, even hardware is like this. If you think you've found something that isn't like this, it's almost certainly because you aren't looking closely enough. Dan McKinley articulates the same point in his talk, "Choose Boring Technology":
 I have noticed that every piece of software obeys this law. 
 When you first start using it, it’s awful. It’s awful because 
 you find all of the problems.

 If you are naive, you put a new thing into production, and 
 experience this law in practice. And then you conclude from 
 this that you should use a different thing for the next feature.

 [...]

 The new thing won’t be better, you just aren’t aware of all of 
 the ways it will be terrible yet.
Source: https://boringtechnology.club/ The only way to find peace is to accept that (a) serious flaws in the technology we depend on are an unavoidable fact of life, and (b) in spite of that, we can still use technology to do useful things and solve real problems.
Jun 28 2022
parent reply Chris <wendlec tcd.ie> writes:
On Tuesday, 28 June 2022 at 15:20:34 UTC, Paul Backus wrote:

 I reject the premise of this argument. D is only "relatively 
 obscure" if you compare it to the small handful of "superstar" 
 languages like C, Python, Javascript, and so on. The vast 
 majority of programming languages never achieve even D's level 
 of popularity, and would be overjoyed to have as many users and 
 open-source contributors as D does.
Yes, relatively means in relation to others. Sure, it's huge in relation to V. The point, however, is that it is members of the D community / users of D who are constantly whining about why it's not as least as big as C/C++ etc. D always strives (and claims) to be an alternative to C++, Rust, Go and whatnot. In other words, the aim is to be a "superstar" language. Of course people compare it to bigger languages. (Python and Javascript are beside the point, due to their distinct history and use cases).
 Sure, D has problems. So does everything else. If your reaction 
 to discovering that a technology has serious flaws is to give 
 up in despair, you may as well quit computers.
Oh please! So you're saying that nothing is perfect so I have to put up with D's flaws, it's my basically fault, I'm not tough enough. Please! I wonder why other languages don't make me run away in despair. I guess, because they tend to sort things out and / or their flaws don't affect my everyday work.
 For example: you know what else has serious flaws with no 
 remedy in sight? Files.
Sure, but files don't affect my work negatively.
 If you dig deep enough, you will eventually discover that 
 everything is like this. Programming languages are like this, 
 operating systems are like this, even hardware is like this. If 
 you think you've found something that isn't like this, it's 
 almost certainly because you aren't looking closely enough.
Thanks for telling me. I didn't know that all technology is flawed. That's a first one. Thought is was only D, as C++ and C are perfect. But now I'll have a closer look at C, see if it has any flaws.
 The only way to find peace is to accept that (a) serious flaws 
 in the technology we depend on are an unavoidable fact of life, 
 and (b) in spite of that, we can still use technology to do 
 useful things and solve real problems.
D, at this stage, is flawed beyond repair. It's not only a technical issue but a cultural one. If a tool keeps you from doing useful things and impedes your progress, then yes, I reserve the right to change the tool. You talk as if anyone who's ever used D is obliged to use it and may not say anything bad about it. I refuse to argue at this level.
Jun 28 2022
next sibling parent reply Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= <ola.fosheim.grostad gmail.com> writes:
On Tuesday, 28 June 2022 at 15:48:10 UTC, Chris wrote:
 Yes, relatively means in relation to others. Sure, it's huge in 
 relation to V.
D ≈ 500 new repos on github in the past 12 months. https://github.com/search?q=created%3A%3E2021-06-28+language%3AD&type=Repositories V ≈ 250 new repos on github in the past 12 months. https://github.com/search?q=created%3A%3E2021-06-28+language%3AV&type=Repositories So, roughly 2 times larger? But the real question is if you will grow without taking both technical and social engineering seriously when the market is becoming saturated. Some will grow more than others… for a reason or two.
Jun 28 2022
parent Salih Dincer <salihdb hotmail.com> writes:
On Tuesday, 28 June 2022 at 16:08:02 UTC, Ola Fosheim Grøstad 
wrote:
 On Tuesday, 28 June 2022 at 15:48:10 UTC, Chris wrote:
 Yes, relatively means in relation to others. Sure, it's huge 
 in relation to V.
D ≈ 500 new repos on github in the past 12 months. https://github.com/search?q=created%3A%3E2021-06-28+language%3AD&type=Repositories V ≈ 250 new repos on github in the past 12 months. https://github.com/search?q=created%3A%3E2021-06-28+language%3AV&type=Repositories So, roughly 2 times larger? But the real question is if you will grow without taking both technical and social engineering seriously when the market is becoming saturated. Some will grow more than others… for a reason or two.
I don't want to be unfair to D at all. Because we are being on D's turf. But something caught my attention in V:
 v translate ../C/donut.c
Yes, I know there is a miracle like ImportC. It still needs to be integrated into DMD though. By the way, thank you everyone for the friendly conversation without crossing the borders. SDB 79
Jun 28 2022
prev sibling next sibling parent reply Dukc <ajieskola gmail.com> writes:
On Tuesday, 28 June 2022 at 15:48:10 UTC, Chris wrote:
 D, at this stage, is flawed beyond repair. It's not only a 
 technical issue but a cultural one.
If you view it like that, I don't see anything for you to accomplish by posting here. I suppose you are just venting your disappointment, not trying to convince us of anything? I understand if you want to do that, but I still think you could, and ought, to do that in a less hostile tone.
Jun 28 2022
parent reply Chris <wendlec tcd.ie> writes:
On Tuesday, 28 June 2022 at 20:58:07 UTC, Dukc wrote:

 I understand if you want to do that, but I still think you 
 could, and ought, to do that in a less hostile tone.
That's a tough one now, how could I make "flawed beyond repair" sound nicer (I don't think it sounds "hostile", though, seriously. Inconvenient opinions are not automatically "hostile". Maybe it's a generational issue.). Let me try: D users frequently encounter difficulties that are hard and sometimes impossible to overcome and for which there seems to be no viable short, mid or long term solution. Here's a longer explanation: https://forum.dlang.org/post/qnynzfpztnprbvyhthhk forum.dlang.org
Jun 29 2022
next sibling parent Dukc <ajieskola gmail.com> writes:
On Wednesday, 29 June 2022 at 10:42:03 UTC, Chris wrote:
 On Tuesday, 28 June 2022 at 20:58:07 UTC, Dukc wrote:

 I understand if you want to do that, but I still think you 
 could, and ought, to do that in a less hostile tone.
That's a tough one now, how could I make "flawed beyond repair" sound nicer.
Meant your post as a whole.
Jun 29 2022
prev sibling parent Guillaume Piolat <first.last gmail.com> writes:
On Wednesday, 29 June 2022 at 10:42:03 UTC, Chris wrote:
 Let me try: D users frequently encounter difficulties that are 
 hard and sometimes impossible to overcome and for which there 
 seems to be no viable short, mid or long term solution.
No, I think that's just your personal experience. A lot of us are perfectly happy with D.
Jun 29 2022
prev sibling parent reply zjh <fqbqrr 163.com> writes:
On Tuesday, 28 June 2022 at 15:48:10 UTC, Chris wrote:


 D, at this stage, is flawed beyond repair. It's not only a 
 technical issue but a cultural one. If a tool keeps you from 
 doing useful things and impedes your progress, then yes, I 
 reserve the right to change the tool. You talk as if anyone 
 who's ever used D is obliged to use it and may not say anything 
 bad about it. I refuse to argue at this level.
If you want to say what `specific problems` D has, you can discuss them. If you say that D has problems, `D` has problems. This is not good.
Jun 28 2022
parent reply Chris <wendlec tcd.ie> writes:
On Wednesday, 29 June 2022 at 02:18:20 UTC, zjh wrote:
 If you want to say what `specific problems` D has, you can 
 discuss them. If you say that D has problems, `D` has problems. 
 This is not good.
We all know that D has numerous problems that render it unusable (not minor quirks one can live with), and I won't reiterate them here, you just need to browse around in the forum a little bit and you'll see that the same issues keep coming up year after year, and even the leadership has realized that "something is rotten in the state of D" [1], Andrei only phrased it differently: "a variety of decisions that did not withstand the test of time". What a nice way of putting it. If you only mentioned `autodecode` a few years ago, you'd be in for a flamewar. Now it's the big revelation that it was a bad idea. If Andrei describes how C++ finally came out of the "dark ages" and suggests that this is the way forward for D, what else is this but the acknowledgement that D is now in the same position as C++ was years ago? So don't ask me about "specific problems", if the leadership itself compares D to C++ during its winter. It is also an acknowledgement that the critics were right about many of D's issues. In my view, D is a weird mix of an 0.x language and C++. It has loads of baggage and dead weight, just like C++, but breaking changes and new features are introduced as if it was still below 1.0. So you get the worst of both: the clutter an old language accumulates in the attic over the years and the instability and unpredictability of a new language. Why would I want to use it for any serious stuff? [1] e.g. - https://forum.dlang.org/thread/sl7l32$1umj$1 digitalmars.com - https://forum.dlang.org/post/slnb0b$1edf$1 digitalmars.com
Jun 29 2022
next sibling parent max haughton <maxhaton gmail.com> writes:
On Wednesday, 29 June 2022 at 10:30:59 UTC, Chris wrote:

 Why would I want to use it for any serious stuff?
Because despite all that (show me a language with no warts) it's a very productive language for delivering value. Especially in projects that have to combine both high and low level concepts in the same codebase. You don't have to use it, either way
Jun 29 2022
prev sibling parent reply zjh <fqbqrr 163.com> writes:
On Wednesday, 29 June 2022 at 10:30:59 UTC, Chris wrote:
 On Wednesday, 29 June 2022 at 02:18:20 UTC, zjh wrote:
 Why would I want to use it for any serious stuff?

 [1] e.g.
 - https://forum.dlang.org/thread/sl7l32$1umj$1 digitalmars.com
 - https://forum.dlang.org/post/slnb0b$1edf$1 digitalmars.com
Although I am newbee, I also participated in the discussion. `AA` know the problem, isn't it good? `D2` is quite stable, but you need to pay attention to `some small details`. I suggest that we make a branch, radically restructure `'D2'` and prepare `'D3'`. I just don't know where is `'AA'` . He hasn't speak for a long time.
Jun 29 2022
parent Mike Parker <aldacron gmail.com> writes:
On Wednesday, 29 June 2022 at 11:49:32 UTC, zjh wrote:
 On Wednesday, 29 June 2022 at 10:30:59 UTC, Chris wrote:
 On Wednesday, 29 June 2022 at 02:18:20 UTC, zjh wrote:
 Why would I want to use it for any serious stuff?

 [1] e.g.
 - https://forum.dlang.org/thread/sl7l32$1umj$1 digitalmars.com
 - https://forum.dlang.org/post/slnb0b$1edf$1 digitalmars.com
Although I am newbee, I also participated in the discussion. `AA` know the problem, isn't it good? `D2` is quite stable, but you need to pay attention to `some small details`. I suggest that we make a branch, radically restructure `'D2'` and prepare `'D3'`. I just don't know where is `'AA'` . He hasn't speak for a long time.
As per my post above, please stay on the topic of the thread going forward. I'll delete any further posts in this thread that are off topic. Thanks!
Jun 29 2022
prev sibling next sibling parent reply Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= <ola.fosheim.grostad gmail.com> writes:
On Thursday, 23 June 2022 at 18:02:13 UTC, Don Allen wrote:
 I'd also like to take a moment to address the "why isn't D more 
 popular" question. Popularity is not necessarily an indication 
 of merit.
If you try to understand why languages got popular then you also understand the «merits». Perl got popular because it provided the unix tool set in a language that made it, at the time, superior for quick and dirty text manipulation as you did not have to reach for many different utilities. It was a 99% solution for that purpose. Python got popular among system developers because it was a big step up from other scripting languages, meaning, you got to use a «real» language for scripting. It got popular among educators because you only need to know a few concepts to get started and can expand to more advanced concepts gradually and it had a big eco system of libraries/quality editors (and it is increasingly replacing Matlab). And CPUs are fast enough now so many (most) tasks can be done well in Python. For many domains it is a 99.9% solution that cuts development costs. Php got popular because it was easy to mock up html with small amounts of scripting, it got more popular because it was shipped with web servers, and from there on it had installed base. Php basically got popular because other solutions were more difficult to get into at the time. It is a 99% solution for simple HTML sites. We can go on and on, with C++ and many other languages. It all come downs to being a 99% solution for something specific. Perl and Php are not good languages, but they had clear merits in their use context. C++ was loathed by many academics as a poorly designed mess of a language. Most academics would also say that a statically typed language is preferable to a dynamic one, yet universities still adopt Python (and that is a sensible choice given Python's other merits). It is not quite clear for what field D is a 99% solution and what the ideal use context is, and by and large it comes down to the last 10% missing or being «wrong» or being something you have to add yourself. Some things come down to small eco system, some things come down to very personal opinions on language design, some things come down to implementation choices or consistency issues. If you take every single application area and ask yourself what language provides the best percentage of suitability (including lowest development cost) then you end up with different languages. For many smaller languages the dominant issue is that another (perhaps less enjoyable language) provides a higher percentage (lower cost and better coverage of needs). Since it isn't clear what D is meant to be suitable for, people will have different ideas about what those missing 10% actually are as they come from different backgrounds and have different use contexts in mind. Yet, most agree that some percentage should be added/modified. The only way to resolve this is for the core team to narrow down and announce clearly which application area the language is supposed to cover really well.
Jun 24 2022
parent reply forkit <forkit gmail.com> writes:
On Friday, 24 June 2022 at 09:03:48 UTC, Ola Fosheim Grøstad 
wrote:
 ..
 The only way to resolve this is for the core team to narrow 
 down and announce clearly which application area the language 
 is supposed to cover really well.
I don't think that's enough. Someone else mentioned that D needs an experimental branch, where the barrier is lowered to what can be put into it. Since most users come to D from major languages, with vastly more features than D, they will not look nicely on a stagnant language that is missing features that are very important to them. An expermental branch would breathe new life into the D programming language. I expect most users of D would end up using that branch actually. I think core team is too small, and possibly to busy, to be responsive to the needs of its users. That's why an experimental branch, under the management of others, would be useful. needs ;-) Oops. Was I sounding a little negative there.
Jun 24 2022
parent Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= <ola.fosheim.grostad gmail.com> writes:
On Friday, 24 June 2022 at 09:14:04 UTC, forkit wrote:
 On Friday, 24 June 2022 at 09:03:48 UTC, Ola Fosheim Grøstad 
 wrote:
 ..
 The only way to resolve this is for the core team to narrow 
 down and announce clearly which application area the language 
 is supposed to cover really well.
I don't think that's enough.
Not enough, but it is generally difficult to keep a project focused without a clear target. How can you make a good evaluation of the design of a new feature if you don't understand the use context? You most likely can't…
 Someone else mentioned that D needs an experimental branch, 
 where the barrier is lowered to what can be put into it.
I said that D needs an experimental branch so that incomplete features like ImportC, live etc won't be made available to casual users until it is known if it is at all possible to bring it up to being a 99.5% solution. A 90% solution is not marketable. (The architecture of the existing code base is not suitable for evolution by outsiders, so something like SDC would be better for that. And that won't happen tomorrow or the day after.)
 Since most users come to D from major languages, with vastly 
 more features than D, they will not look nicely on a stagnant 
 language that is missing features that are very important to 
 them.
Actually, many C++ programmers seem to use Python as an add on. I would not bet on adding many additional high level features when the current ones are not completed. I would bet on a higher abstraction level than C++, simplicity, cleaner syntax than today. Yet, clearly system level. «paradigms» is not going to end well. Those are distractions. Perhaps fun, but also very time consuming distractions that pretty much ensures that a percentage of the feature set will remain incomplete/broken/unsound/inefficient. It will lead to a lack of focus and nothing will ever be brought to 99.9% that way. It is quite clear already that staying focused is a problem, Walter now says he is looking at APL for inspiration and encourages the addition of async/await by volunteers. It would be much more comforting if Walter just said flat out no to any new features before the existing feature set is fixed. D needs to nail down a believable memory management strategy that is no more complex than Swift and that does not involve blocking "all" threads. System programmers taking a break from their main language to do something in D are looking for something simple and clean with comparable performance, not something equally complex. Start there, branch out to exploration of less critical features later.
Jun 24 2022
prev sibling parent Mike Parker <aldacron gmail.com> writes:
 Everone The topic of this thread is 'Civility', not 'The pros 
and cons of D'. Let's get it back on topic please. Start a new 
thread if you want to discuss other topics.

Thanks!
Jun 29 2022