Dscanner - DCD - Dfix ... Editor support or the lack of it.
Benny
benny.luypaert at rhysoft.com
Sun Jan 28 00:03:38 UTC 2018
On Saturday, 27 January 2018 at 22:58:27 UTC, H. S. Teoh wrote:
> I never said we should not offer good IDE support, in fact I
> said that we *need* good IDE support. But that in no way
> justifies the wrong claim that you can't be productive without
> an IDE. In fact, I find myself *more* productive without
> needing a memory-hogging, CPU-hogging GUI program that requires
> taking my hands off the keyboard all the time, just to edit
> code. But I'm sure you think the same about Vim/Emacs, so we're
> square. :-)
The problem is Teoh that learning a language in Vim or a IDE are
two totally different things.
I used to program in Notepad because i grew up with PHP and knew
it like the back of my hand. The result was very little need to
see the documentation. The moment i found PHPStorm, i fell in
love. Fast function jumping, remote tools, database at your
fingertips, code checkers and hinters and all the other niceties.
But for anybody who is not a master of a language or even
intermediate, a good IDE can make one so much more productive
compared to the same person just relying on a default notepad
type environment. The fact that a good IDE expands the methods
from a class, it shows you the basic help / buildup of the
methods calls so you know exactly where you write what, without
the need to visit the developers documentation website.
It massif increases the adoption rate of a language, when your
new to a language or not a 10 year expert.
And for the people who are used to a language, a IDE can still be
useful by increasing productivity as you simply do ... example
"fu" ... enter ... "function " or automated braked closing, or
error indicators when you forget something so you do not wast
your time discovering a stupid issue during compilation.
Its the same issue i personally have with languages that get lazy
and trow out readability in exchange for less keystrokes. You can
at times tell what development ides a language uses simply by
looking at the language. Everything awkwardly shortcut like "fn"
and other shorthand ( but what do make it much more brain taxing
for anybody new ).
Advanced programmers have the skills to make new languages,
unlike beginner programmers but they also are so used to a
specific environment that they build up to speed up, over the
year, that they assume that everybody else can get going just as
fast as they are.
As a side note, despite working years in Vim, i still prefer a
normal but well equip IDE because there are just some things VIM
is not good at ( unless you customize it to hell with 100's of
plugins what tends to take years to find your sweet spot and
build up the know how to use them all perfectly ). VIM with all
the plugins is simply a IDE, just one where you do not move your
hands too much away from the keyboard. As your example of your
colleagues: a IDE where it takes ages to jump to a definition in
a file, is simply a incomplete IDE. Or maybe those colleges have
not master the IDE. I know for a fact from myself that there is a
massive amount of things still "hiding" in Jetbrain there
products or Visual Studio Code that can make me more productive
but you learn over time or when you stumble upon it.
From my point of view, without a working IDE its much more
difficult for a non-specific-language to learn and get better at
the language. And again, VIM with the right plugins is a IDE,
simple as that. Its annoying that people do not see this. The big
difference is that VIM is designed around not moving your hand to
your mouse and that is its major strength.
On a side note: The issue i had with the plugins, well one of the
plugin authors found the issue and it came down to it that the D
compiler had a regression that effect DCD. I remember mentioning
before as how many times the compiler ends up breaking code.
Going over the D release list, you see way too many times: Major
release - fix - fix, Major release - fix, Major release - fix -
fix... What indicates to me a lack of cross platform testing.
Especially the amount of regressions surprises even me. It feels
like too much focus is put upon new features and too few upon a
test setup that does not only tests the compiler but also all the
dub packages.
More information about the Digitalmars-d
mailing list