Too focused on C++ programmers?
Etienne
etcimon at globecsys.com
Mon Dec 2 05:12:34 PST 2013
On 2013-11-28 15:27, qznc wrote:
> I read an interesting article [0] with a weird title. It got me thinking
> about Ds marketing [1]. Are we too focused on the C++ programmers? Most
> of them are very unlikely to switch. In comparison, D should be much
> easier to sell to people, who are already considering
> Go/Scala/Clojure/Node.js/etc. I restructured [2] the tutorial to target
> them more specifically.
>
> [0] http://braythwayt.com/2013/11/27/herd-thither-me-hither.html#revised
> [1] https://news.ycombinator.com/item?id=6814922
> [2] http://qznc.github.io/d-tut/basics.html
I started reading seriously about D about 3 months ago so maybe I can
comment a bit on this while my newcomer experience is fresh.
My background is PHP (turned away when searching for speed with
benchmarks), I was reading about C++ since 6 months trying to develop a
compiled application that has enough libraries to let me choose from. I
ended up choosing Qt for my desktop app but I wanted type-genericity so
I needed templates or tuples, and there was no way to make a templated
QObject, I was a bit disappointed by that, and the lack of
comprehensible errors in templated c++.
I found D multiple times when searching for C++ libraries, and when I
decided to just "fuck it and read the unrelated stuff" got thrilled when
I saw how well D has integrated tuples. It was a promising way to keep
my old PHP ways while improving my abilities.
I think D seized me because it introduced the Ranges concept in a
compiled language. Of course, I had to do some research about the
libraries depending on what I needed, but as soon as I saw how easy D
bindings to C libraries were it was obvious I'd find what I need. Also
what helped were the tools like pegged, vibe.d, and knowing any
application can just wrap around a C library and turn into something
intuitive and fast thanks to the introspective capabilities of D.
So I would assume, from PHP to C++ to D, I wanted to see this within 20
seconds in this order:
1) Tuples, Ranges & Templates (with intuitive error examples)
2) C Bindings easily extended with D introspective wrappers (for quick
metaprogramming support)
3) Open Networking / DB libraries with static compilation
4) GTKd, because you have to admit there's no other stable way of making
a GUI
Maybe an example of signals and slots with associative arrays or tuples
would be a quick example of most of the features in D, with a __traits
static if / foreach loop.
Also, I wish I had learned about Dub, Mono-D & Visual-D sooner with an
easier tutorial. Maybe an installer with Visual Integrated Shell and
Visual-D combined would help newcomers, and instrudctions for Mono-D's
handling of package.json files as project solutions. I had to try too
many out-of-date or not-good-yet tools.
Hope it helps, this is also my first post on these forums ;)
Etienne
More information about the Digitalmars-d
mailing list