On Saturday, 28 July 2018 at 19:55:56 UTC, bpr wrote:
On Saturday, 28 July 2018 at 15:36:43 UTC, Abdulhaq wrote:
I think that I no longer fall into the category of developer
that D is after. D is targeting pedal-to-the-metal
requirements, and I don't need that. TBH I think 99% of
developers don't need it.
I'm 99% sure you just made that number up ;-)
Sure, I plucked it out of thin air. But I do think of the
software development world as an inverted pyramid in terms of
performance demands and headcount. At the bottom of my inverted
pyramid I have Linux and Windows. This code needs to be as
performant as possible and bug free as possible. C/C++/D shine at
this stuff. However, I number those particular developers in the
thousands.
Then we have driver writers. Performance is important here but as
I user I feel that I wish they would concentrate on the
'bug-free' part a bit more. Especially those cowboys who
develop printer and bluetooth drivers. Of course, according to
them it's the hardware that stinks. These guys and galls number
in the tens of thousands. Yes I made that up.
Then we have a layer up, Libc developers and co. Then platform
developers. Unity, Lumberyard for games. Apache.
I think a great bulk of developers, though, sit at the
application development layer. They are pumping out great swathes
of Java etc. Users of Spring and dozens of other frameworks. C++
is usually the wrong choice for this type of work, but can be
adopted in a mistaken bid for performance.
Any how many are churning out all that javascript and PHP code?
Hence I think that the number of developers who really need top
performance is much smaller than the number who don't.
For you, perhaps. I currently work mostly at a pretty low level
and I'm pretty sure it's not just self delusion that causes us
to use C++ at that low level. Perhaps you've noticed the rise
of Rust lately? Are the Mozilla engineers behind it deluded in
that they eschew GC and exceptions? I doubt it. I mostly prefer
higher level languages with GCs, but nothing in life is free,
and GC has significant costs.
If I had to write CFD code, and I'd love to have a crack, then
I'd really be wanting to use D for its expressiveness and
performance. But because of the domain that I do work in, I feel
that I am no longer in D's target demographic.
I remember the subject of write barriers coming up in order (I
think?) to improve the GC. Around that time Walter said he would
not change D in any way that would reduce performance by even 1%.
Hence I feel that D is ruling itself out of the application
developer market. That's totally cool with me, but it me a long
time to realise that it was the case and that therefore it was
less promising to me than it had seemed before.