On 18/01/2017 12:38 AM, strymon wrote:
On Saturday, 14 January 2017 at 02:28:34 UTC, nbro wrote:
Hi!

I've been following D for at least one year. I like it and I think
it's a very good programming language, even though I do not agree with
everything it's being done.

One thing that has saddened me is seeing a lot of D's users trying to
implement their own library or maybe trying to implement multiple
libraries at the same time. Most of the results are very poor because
libraries are not

1. completed
2. maintained
3. well-written

I've seen comments like "I'm no more maintaining this library because
I'm not able to proceed since I do not have the skills". This of
course doesn't bring any credibility to the language, to the
community, etc. So we see some people trying bring the caravan
forward, but I many of these people are not qualified enough clearly,
since they do not even have the vision and the knowledge that starting
a project like creating a serious GUI or modern IDE is not an easy
task, and definitely it won't be a person alone that will create one a
decent amount of years that will compete with the most performant ones.

My idea (which is mostly directed to the big names behind D) is that
team work should somehow be promoted.

How could you do such a thing?

One possibility could be to announce interesting and useful projects
in D and somehow ask for people interesting in working in such
projects. These people should clearly be qualified for the job, but
this isn't an easy task to verified. The projects could eventually or
not be backed up by the announcer of the project.

These could be a few starting ideas and options.

Coincidentally I have been stalking the D community for about a year
too. I think I think I get what @nbro is trying to say - at least as far
as the D libraries are concerned. I am not a computer scientist, my
background is statistics and I have tried ALOT of programming languages
and I think D is head and shoulders above them all (at least the ones
I've tried).

As far as the core D language and standard libraries are concerned I
think they are pretty well looked after probably since their priority is
very high. The debates in the forum are also (or mostly) a good thing I
think - as long as they remain constructive.

Funnily enough I think Dub is fine (at least for my meagre
requirements), but the available libraries are quite woeful - and I
don't like saying this since I like D so much, it's also depressing
since I think that D is probably the best programming language in the
world. However, I think that D attracts highly driven and talented
people who also tend to be a little egomaniacal and territorial. There
are probably some commercial considerations too. If you turn up asking
about how to build a "doodad" and someone else is making money in D with
that "doodad" or feels that the topic of that "doodad" is their personal
territory, they may not want to join with you to work on it or want to
help you with it. Help is given up to a point for some basics or if you
discover a bug somewhere, but I see that things get territorial very
quickly.

On the other hand there are also projects that are so ambitious that
they alienate people. For instance, there are very few programmer that
understand how to build data structures, computer algorithms, scientific
algorithms, have an awareness of how to code for cpus and understand the
ieee context of creating algorithms. Then on top of that understand the
specific library configuration and the best way to contribute to it. I'm
not saying that people shouldn't have cool projects, but perhaps some
projects are trying to do too many things at once or need a better way
of organising themselves or need better documentation for contributors?

The support for learning advanced D programming is also quite poor, so
unless you come from a pretty good C++ background or have deep computer
science knowledge, you will struggle. The material on compile time
coding is woeful. The best source I have found is Philippe Sigaud's
tutorial but it isn't exactly an industrial strength text on the
subject. I think that Ali's Programming in D book is great, but after
reading this, "beginners" need more if they are going to productive with
D especially because of the dearth of quality libraries. The only other
source of good practice advanced D coding is the Github standard library
itself.

Its probably a good idea to have a suggested reading list for new
programmers that extend outside D at least until there are more suitable
D resources. For instance:

1. A book on algorithms and data structures.
2. A book on compilers, language design.
3. ...

Ironically I wrote the only (e)book on CTFE[0].

Its a bit out of date and needs some work, but if you want to give me some feedback please email me and I'll get you a coupon (free).

[0] https://leanpub.com/ctfe

Reply via email to