Dicebot on leaving D: It is anarchy driven development in all its glory.
Chris
wendlec at tcd.ie
Sat Aug 25 13:15:25 UTC 2018
On Saturday, 25 August 2018 at 12:16:06 UTC, Laeeth Isharc wrote:
>
> Nassim Taleb writes about hormesis. I'm not sure that breakage
> of a non-serious kind is necessarily terrible. It might be
> terrible for you personally - that's not for me to judge. But
> it has the effect of building capabilities that have value in
> other ways.
>
>
Unless you can afford to spend a lot of time on just fixing
things, even small changes are annoying. I can understand that if
a change is for the better in the long run it's worth breaking
code, especially if you warn users so they know what's coming.
But being "afraid" of every new version is not exactly a thing
that encourages you to use D. Mind you, it's not just one program
you have to maintain. Usually you have libraries and modules (and
third party libs) that you haven't touched for a year or so and
all of a sudden they don't compile anymore. You basically have to
fix everything. And then there's vibe.d that has a hard time
catching up with everything (Sönke is doing a great job, btw.) So
you have a service based on vibe.d and somebody asks you to
implement a trivial change (say sorting). You add it, compile it
with the latest version of dmd and it gives you an error "XYZ is
not supported when the moon is full". So you have to go back to a
compiler version that works and you cannot benefit from e.g. the
latest GC optimizations of D. You basically end up with a mess of
different compilers for different code until you have fixed
everything (which you don't have time for all the time). If your
code is older than 2 or 3 versions of dmd, you are already in
trouble and given the release frequency it happens quite fast.
Imagine, to fix a trivial bug or implement a simple feature you
may have to stick to an outdated version of dmd or you have a
ratio of 10% time spent on your own code 90% time spent on fixing
what the latest release broke. Not good.
I am not being emotional, as you suggest. I'm talking about my
practical experience and the challenges I face when I use D. And
the prevalent attitude of "It's for your own good in the long
run, you may not understand it now, but you will one day once
you've followed the discussions on the forum and read the new
specs!" is not helpful either when you need to get a job done. In
the long run this might kill off D. And I'm someone who talks
about it, imagine all the frustrated users who silently leave.
I have never encountered any such problems with any other
language so far. Something tells me that there's something wrong
with how D is managed.
More information about the Digitalmars-d
mailing list