On Monday, 3 September 2018 at 14:26:46 UTC, Laeeth Isharc wrote:
On Monday, 3 September 2018 at 11:32:42 UTC, Chris wrote:
[...]
D has never been about smooth experiences! That's a commercial
benefit if you think that hormesis brings benefits and you are
not looking for programmers of the trained-monkey, strap a few
APIs together type.
It's high time it got a bit smoother if you want people to use
it. Is everybody who doesn't use cli and knows all compiler flags
by heart a coding monkey? Has it ever occurred to you that people
want a smooth experience so they can concentrate on a job and get
done with it?
It's a question of developmental stages too. I was a late
developer as a person, but then I continued to develop into my
30s and perhaps 40s too. For human beings there are different
kinds of people and implicit life strategies and natural fits
with niches. Some are quick to grow up, but stop developing
sooner and others mature more slowly but this process may
continue long after others are done. I'm not saying a computer
language is like a human being, but it is in part an organic
phenomenon and social institutions develop according to their
own logic and rhythm in my experience of studying them.
This is not a yoga class.
D is a late developer, and I think that's because it is a
tremendously ambitious language. What use case is D intended
to target? Well it's not like that - it's a general purpose
programming language at a time when people have given up on
that idea and think that it simply must be that you pick one
tool for the job and couldn't possibly have a tool that does
many different kind of things reasonably well. So the kind of
use cases D is suited for depends much more on the capabilities
and virtues of the people using it than is the case for other
languages. (In truth in a negative sense that's true also of
other languages - Go was designed to be easy to learn and to
use for people who didn't have much programming experience).
It's not D's usefulness I'm concerned with, it can do a lot of
things. It's just a bit awkward to use in production and there's
no reason why things should still be like in 2010.
[...]
Sure. I would agree with what you write but say that it's a
case of capabilities and hormesis too sometime. Nassim Taleb
told a story about checking into a hotel and seeing a guy in a
suit tip the bellboy to carry his bags upstairs. Later on he
saw the same guy in a gym lifting weights (and I think on a
Nautilus-type machine which is much inferior to free weights).
So any tool can make you lazy, and yet any tool - no matter how
shiny, polished, and expensive - sometimes will break and then
if you are afraid of the command line or just very out of
practice you can end up utterly helpless. It's a matter of
balance to be sure.
Funny story, but this is not the place for esoteric
contemplations.
[...]
I didn't find the experience last time I tried to be worse than
just going through the Android C/C++ native SDK instructions.
The first time I tried it was quite tough as I struggled to
even build the compiler as the instructions weren't quite
right. I disagree about it not being maintainable as it's much
easier to keep something you understand and can reason about
working, but it's harder to use in the beginning, for sure.
I think that the point for Android and ARM is not the build
process but integration with Java APIs. If you can't figure
out a build process that when I tried it mostly just worked and
that doesn't have too much dark magic, I fear for how easy you
are going to find JNI. (JNI is fine, but building a D project
on Android requires less demanding technical capabilities).
I know JNI, I've connected D with Java (and vice versa) a few
times.
[...]
You had one or two people who stubbornly devoted considerable
parts of their lives to getting D to build on Android. And
instead of saying what a remarkable achievement, and thank you
so much for this work, and this is very cool but we really
should consider in a constructive manner how to make this easy
to use, you are saying I want more! Fair enough - it's a free
society, although I don't think you were ever promised that the
Android experience would be something different from what it is.
I never gave out about the guys (I think one of them is Joakim)
who made it possible in the end, because without their efforts we
wouldn't have anything. I'm just surprised they don't get more
full time support to wrap it up nicely.
But I really am not surprised that people burn out doing open
source. It's very odd to see, because I came back to this
world after a long break. My first 'open source' contribution
was to part of Tom Jenning's work on FidoNet in 1989 - an
improvement to some node routing table, and in those days
people used to be pretty appreciative. Same thing with Chuck
Forsberg who invented ZModem and came to that same conference -
people then didn't talk about all the deficiencies but they
understood this was a labour of love and the kind of attitude
one sees so commonly today I couldn't have imagined.
[...]
Dude - it's open-source and a community-developed language with
some - and increasing - commercial support. I'm not saying
that the things you ask for might not be valuable things. But
I'm curious to know from a rational means-ends perspective how
you think your chosen means will be helpful in achieving your
desired ends. Do you think that complaining without taking the
smallest step towards making things a reality (if you have done
so, then I apologise - but your message would have been more
effective had you articulated what those steps were) will
change things?
The default answer: it's open source therefore it's
under-resourced.
[...]
Gesellschaft and gemeinschaft, and open-source is something
new. One can pick only from the options available and those
one can imaginatively create. Suppose we made you dictator of
D, but subject to the same constraints that currently exist.
What steps would you take to achieve the ends you desire?
[...]
Don't use D if you don't want to. Almost certainly it's not
suitable for everyone. But the opposite of love is
indifference.
Somehow you still choose to spend your time here for now. And
since that's the case, I strongly encourage you to think about
what little baby steps in concrete ways you can take to be the
change you wish to become.
I just spoke with Dicebot about work stuff. He incidentally
mentioned what I said before based on my impressions. The
people doing work with a language have better things to do than
spend a lot of time on forums. And I think in open source you
earn the right to be listened to by doing work of some kind.
He said (which I knew already) it was an old post he didn't put
up in the end - somebody discovered it in his repo. He is
working fulltime as a consultant with me for Symmetry and is
writing D as part of that role. I don't think that indicates
he didn't mean his criticisms, and maybe one could learn from
those. But a whole thread triggered by this is quite
entertaining.
So the essence of your message is what I've been hearing for
years.
1 It's open source, so it cannot be smooth / reliable /
streamlined / consistent.
2. If you complain and want any of the features listed in 1.
you're probably just a well-trained monkey. D is only for the
chosen few. And maybe that was true in 2010. But it's 2018 and D
is losing the edge it had on other languages.
3. Shame anyone who complains, ungrateful little brats!
But it's my own fault. When the D Foundation was founded I really
thought that we would soon have something that resembles a good
product. I didn't expect the endless discussions about features,
and the breakages etc. to continue like back in the day. I
thought more effort would be put into packaging D into a good
product. Mea maxima culpa.