Python : Pythonista / Ruby: Rubyist : / D : ?
Vasudev Ram via Digitalmars-d
digitalmars-d at puremagic.com
Sat Apr 22 10:17:46 PDT 2017
On Saturday, 22 April 2017 at 08:30:03 UTC, Russel Winder wrote:
> On Fri, 2017-04-21 at 17:20 +0000, Vasudev Ram via
> Digitalmars-d wrote:
>> Hi list,
>>
>> I hope the question is self-evident from the message subject.
>> If not, it means: what are D developers generally called (to
>> indicate that they develop in D)? The question occurred to me
>> somehow while browsing some D posts on the forums just now.
>>
>> DLanger? DLangist? D'er? Doer? :)
>>
>> I tend to favor DLanger, FWIW.
>
> I would hope none of these, but as ketmar said "programmer".
See my reply to Jonathan M Davis, above.
> Terms such as Pythonista, Rubyist, Rustacean, Gopher, etc. are
> terms of tribalism and exclusion. They are attempts to ensure
> people claiming membership of the tribe reject being polyglot
> by pressuring them to eschew all other languages.
I think you are over-generalizing, and don't fully agree.
Definitely, some people may use those terms in that manner and
for that reason. Boo to them :) I'm never in favor of such
pressuring, exclusion or whatever. And BTW I know what I am
talking about, having seen some of it in real life, one example
being in the Ruby world. I did Ruby commercially for a while,
learned it even before Rails was created or became popular. And I
frequented the Ruby message boards and blogs for a while, and
participated in them. Saw a lot of what you describe, others have
written about it too. A good amount ofjuvenile and one-up-manship
behavior. That is one reason why I moved to Python (apart from
liking it after using it some). The community tended to me more
mature and engineering-oriented, rather than like the Ruby
people, many of whom were hackish and gloated over having done
some cool stuff with Ruby "magic" or monkey-patching (which often
results in hard-to-find bugs - cool for experimenting, bad for
production use). As far as being polyglot is concerned, I'm quite
in favor of that too, and would never dream of even suggesting,
let alone pressuring, people to "eschew all other languages", as
you put it (this is the point about which I don't agree and think
you are over-generalizing). In fact, I do training too, and once,
a student who was taking a Python course from me, was talking
about his goals (he works in another field and is trying to get
into development). As part of that, he mentioned wanting "to
become a good programmer (Python)" - at which point I immediately
replied to him, that his goal should not be to become a good
_Python_ programmer, per se, but to become a good _programmer_,
period, because there is much more to programming than one or
even many languages - databases, use of libraries, software
design, testing, debugging, use of source control and other
tools, naming conventions, other programming conventions and
style, etc. Mentioned books like Code Complete to him - as a
great resource on those lines.
And I'm a polyglot programmer myself, having worked on BASIC
(learnt on home computers), Pascal, C, Java, Informix 4GL. Done
real commercial work in all of those, apart from the same in both
Ruby and Python. And even keep dabbling in new languages now and
then. That's how I came across D, for example, which I like a lot
- IIRC it was by reading some article in a computer magazine,
could have been Dr. Dobbs.
> A good programmer can work professionally with a number of
> languages, the psychology of programming people have data
> supporting this theory – if the languages have different
> computational models.
Totally agreed.
> Thus I would claim to be a programmer currently working with D
> for the project I am working on just now, with SCons/Python for
> the build system. In a while it will be C++ on another project
> with CMake. Later still it will be C and Meson on a different
> project. Further on it will be Kotlin and Frege using Gradle
> for yet another project.
Same here. Language agnostic. It's the best way. Another anecdote
- once, in a company where I worked and was managing a product
team, I had a need to write a small reminder utility for my own
use. The project was in C++ and Java (I worked on the Java side),
but since I knew Python and it was a good fit for the tool, I did
it in Python - in a few minutes. One of my team members wanted to
do it too, so, since he only knew Java, when I told him I was
doing it in Python and it would be done very fast, he smiled and
said "I'll do it in Java" - and proceeded take more time than I
did for the same functionality. Nor was there any performance or
other requirement that necessitated Java - he did it because it
was the only language he knew. "Use the right tool for the job"
and all that ...
More information about the Digitalmars-d
mailing list