On Monday, 16 October 2017 at 08:56:21 UTC, Rion wrote:
On Sunday, 15 October 2017 at 20:27:35 UTC, Laeeth Isharc wrote:
D is much less gratifying than other languages for most people.
Just like Windows was more gratifying than Linux for most
people in 2000. And I suppose that's likely to change slowly,
but continue to be the case for a while so long as people
working on Windows don't notice when something isn't working
and fix things at root cause. It's usually not that much more
difficult to do so than work around it, and it usually pays
off even considered selfishly.
I can appreciate your frustration, but considering how many
years knowing a programming language can pay off for, a few
hundred hours spent to learn something new isn't that much.
That's like a couple of months full-time and if it works out
the payback period should easily be a year. Viewed
rationally, that's a pretty good return on investment compared
to most other opportunities available.
In a world where there are lots of smart people and knowledge
is widely available, the barriers to opportunity (there must
be barriers, otherwise the opportunity would be competed away)
are often emotional ones. So I like things where the
difficulty is front-loaded, because they tend to be neglected
by modern people who are used to quick gratification. And
whilst it surely can be frustrating, the situation is already
better both on Windows and as regards documentation and
tooling than it was in 2014. It's not difficult to make
little changes towards what one would like to see oneself.
When you invest this time into a language, you have
expectations. A person expects for a language this old, that
every puzzle fits together without issue.
Call me spoiled if you want but quick gratification it is not.
The time wasted on dealing with issue on D, is time you can
have spend in a different language actually writing
code/testing. Its a barrier to the language its own success
when its not as user friendly as the other languages.
If a person needs to do a action in Windows and it takes him 5
mouse clicks. But hey, under Linux you can do it with one
command line arg, ... the Linux approach sound more easy right?
Until you add the time needed to learn the command and assuming
there are no issues. What is more rewarding or punishing? There
is a reason that Windows is still so popular. Windows does not
get in the way. It just keep working. Can it be improved, yes!
MS puts a massive amount of time and money in there testing.
And it shows in there platform.
Its the same reason why Linux as a desktop OS will never work
out. Too much puzzle pieces that do not fit, too much assumed
that people need ( and have the time ) to learn the complicated
way. A lack of inter-testing beyond just the basic compile
tests ( i mean really usage ).
Its easy to see the same attitude in D as a community project.
There are GREAT pieces being written but everybody is working
more as a solo developer, with no clear guideline. That is the
big difference between a language like D and corporate backed
languages.
I can easily think of a dozen extensions to D, that need to be
part of the standard library or extended library of D, like
DCompute, mir-algorithm, ...
Why? Because its again lose projects that you as a end consumer
need to discover. Most of the time written and maintained by
one person. Too much here is so single person focused, that its
hard to see people continue the work if that person has no more
time.
Too much here is single issue focused and it shows in the
developers there background, what results in the testing of
platforms, the interaction etc.
Maybe i explain this badly, but D seems has a lot of issues
that people here are not aware off because they are already in
the D mindset. And its those issues that show up the most, when
one first tries this language.
Once again what you say confirm what I'm repeating all the time :
D hasn't enough the "plug-n-play" mindset.
The current view is elitist : "D needs some investment blablabla".
The sad result is that NONE of my friend have liked their first
experience with D.
Really. NONE of them.
Despite they said initially that it "looks interesting".
The website should be more clear and make a choice "by default".
1/ install DMD (or ...)
2/ install CoEdit (or ...)
You should say to the beginners how to install what will work
most of the time, and bring the less annoyance. While giving them
other options too, but the simplest main path to success should
be obvious.
CoEdit, along with DMD, gets the job done.
Maybe it's not the sexiest IDE, but it works very well for
"beginners" scripts.
You create an empty file, you type your code, you ask to run it.
If there are errors, it's ergonomic too.
And for "power users", indeed, there are PLENTY of opportunities,
in PLENTY of environments.
But D NEEDS a DEFAULT IDE, something that should even be
pre-installed by the DMD compiler installer, if the user doesn't
"uncheck" the installation option.
Again, marketing errors.
Make D MORE EASY for BEGINNERS.
And by beginners, as you know me, I mean scripters, who come from
JavaScript, Python, Ruby.
I know that at the moment they may not be much, considering the
website which obviously targets C++/Rust-like developers.
But I still think it's an error.
Put D on the "easy to pick up" road. It's where it should be.
Because D IS EASY to learn. And it's also EASY to use.
But make the installation and learning curve as smooth as
possible for less-skilled developers, by allowing them to
download an all-in-one bundled installer
(compiler+ide+tutorials+examples), and they will be much more to
join the D community !
They have their place here too, so be more welcoming with them.
Because you may think it's already the case, but you should trust
Rion and the others when they say it's not really the case,
especially on windows.