Community

D is an extremely powerful language, but when I read complaints and sighs about
other languages, few seem to know that these problems are solved with D.
Essentially, we have a marketing problem.
One great way to address it is by writing articles about various aspects of D
and how they solve problems, like
http://www.reddit.com/r/programming/comments/cb14j/compiletime_function_execution_in_d/
which was well received on reddit.
Anyone have good ideas on topics for D articles? And anyone want to stand up and
write an article?
They don't have to be comprehensive articles (though of course those are
better), even blog entries will do.

On 04/06/10 00:58, Walter Bright wrote:
> D is an extremely powerful language, but when I read complaints and
> sighs about other languages, few seem to know that these problems are
> solved with D. Essentially, we have a marketing problem.
>
> One great way to address it is by writing articles about various aspects
> of D and how they solve problems, like
> http://www.reddit.com/r/programming/comments/cb14j/compiletime_function_execution_in_d/
> which was well received on reddit.
>
> Anyone have good ideas on topics for D articles? And anyone want to
> stand up and write an article?
>
> They don't have to be comprehensive articles (though of course those are
> better), even blog entries will do.
Given some ideas I'm happy to write an article or two. I guess the best
thing to write articles on are the problems D solves which other
languages have, or how D makes something easier to do - we'd need to
pick out some specific areas though.
Robert

On 6/3/2010 5:15 PM, Robert Clipsham wrote:
> On 04/06/10 00:58, Walter Bright wrote:
>> D is an extremely powerful language, but when I read complaints and
>> sighs about other languages, few seem to know that these problems are
>> solved with D. Essentially, we have a marketing problem.
>>
>> One great way to address it is by writing articles about various aspects
>> of D and how they solve problems, like
>> http://www.reddit.com/r/programming/comments/cb14j/compiletime_function_execution_in_d/
>>
>> which was well received on reddit.
>>
>> Anyone have good ideas on topics for D articles? And anyone want to
>> stand up and write an article?
>>
>> They don't have to be comprehensive articles (though of course those are
>> better), even blog entries will do.
>
> Given some ideas I'm happy to write an article or two. I guess the best
> thing to write articles on are the problems D solves which other
> languages have, or how D makes something easier to do - we'd need to
> pick out some specific areas though.
>
> Robert
Rewording that a little: How D solved a problem particularly well for you.
Demonstrations are FAR more effective than statements.
Also, not responding to you but rather the general topic, getting the word out
in other venues would help too. There's been many posts that hit reddit. That
venue isn't bad, but also has already built up a set of automatic detractors.
Later,
Brad

Thu, 03 Jun 2010 16:58:03 -0700, Walter Bright wrote:
> D is an extremely powerful language, but when I read complaints and
> sighs about other languages, few seem to know that these problems are
> solved with D. Essentially, we have a marketing problem.
>
> One great way to address it is by writing articles about various aspects
> of D and how they solve problems, like
> http://www.reddit.com/r/programming/comments/cb14j/compiletime_function_execution_in_d/
> which was well received on reddit.
>
> Anyone have good ideas on topics for D articles? And anyone want to
> stand up and write an article?
>
> They don't have to be comprehensive articles (though of course those are
> better), even blog entries will do.
Well, I for one, like to know when the D2 will be officially published. I
thought there was a bugfix week and the TDPL was written because D2 is
almost ready and there was supposed to be a big kaboom.
The version number is already at 2.046 but there are maybe 100 bugs
waiting in the bugzilla with patches and the compiler & spec are
seriously broken. When will it be usable? What will be the version number
of the first usable D2 dmd? There was a "huge" D1 release party, but I'm
not sure when it's a good time to move to D2. It's not enough that the
examples from the book work, D needs to be ready for commercial quality
applications. What's the library status? Where are the official
milestones? Future plans? What's happening here?

Walter Bright:
> Anyone have good ideas on topics for D articles?
Here are 7 possible articles:
1) We can write some cool larghish library/program and then show the results of the program, something like a small 2D or 3D game, a numerical plotting lib, etc. Graphics is very good because it catches the eye even if it's something simple.
For example I'd like to translate a small CPS (Constraint Problem Solver) like this into a single D2 module:
http://labix.org/python-constraint
Once written such module can be the basis for a "cool" article about one D2 usage (and then I can use the CPS module in various ways).
I have other ideas for useful/nice single modules for D2, there are plenty of ideas to copy from in repositories of modules/programs written in Python, Perl, Ruby, Clojure, etc.
2) Another possibility is to appeal to the C++ crowd, for example translating this C++ to D2:
http://accu.org/index.php/journals/1422
A literal translation of the C++ code of this article to D2 is possible, but at the end of the D2 article it can show that there is a better solution in D2, like using variable-argument templated structs to implement n-way trees of types, as I have discussed a bit with Downs (keeping in mind that C++0x too has variable-argument templates. If you want to compare D2 with C++ to show D2 then you *must* use C++0x otherwise people will say you are cheating).
3) This is another awesome small C++ program that must be translated to D2 (but I am not certain this is the most updated version of this program), it's just a single C++ file about 24 KB of code and heavely templated, and in my opinion no other language beside C++ and D (and maybe Lisp) can be used to write a program so fast and so short to solve this:
http://www.codeguru.com/cpp/misc/samples/games/article.php/c13607/
It's textual and console-based code, so almost no libs are required.
Once translated, this can be the basis for a good article that explains the D2 code, templates, etc.
4) Another quite interesting article can show how to implement Expression templates in D2, like the ones used in Blitz++ and successive libs:
http://en.wikipedia.org/wiki/Expression_templates
(If this article uncovers problems in D2 language then it's better to find them now than later :-) ).
5) You have noticed that I write a lot in this newsgroup. My recent "Huffman coding comparison" post can be seen as an article that shows D2 and Phobos2 because the D2 code I've shown there is nice looking.
6) You can find C++0x variadic templates articles that can be translated to D2:
http://www.jot.fm/issues/issue_2008_02/article2/http://mlangc.wordpress.com/2010/04/18/using-c0x-variadic-templates-to-pretty-print-types/
7) This is one of the changes in G++ 4.5:
http://gcc.gnu.org/gcc-4.5/changes.html>Compilation time for code that uses templates should now scale linearly with the number of instantiations rather than quadratically, as template instantiations are now looked up using hash tables.<
So an article about D2 can show how DMD template performance is compared to the template performance of G++ 4.5. See also:
http://cpptruths.blogspot.com/2010/03/faster-meta-programs-using-gcc-45-and.html
Bye,
bearophile

I recently rewrote a huge PHP application in D2. It isn't a completely
fair comparison, since the PHP was written by, well to be polite, PHP
"programmers", but the results were pretty astounding.
90% reduction in lines of code [!], 200% improvement in speed under
heavy load (only 50% improvement under light load, still good, but not
as good), and the code is actually maintainable! Also, the original
took about a year for the first team to write. My D rewrite took 6
weeks. Oh yeah, and the PHP is riddled with security holes. Not so
much with the D.
The best part about the speed is that it is just running as plain old
CGI and my code does a lot of inefficient looping through XML. I could
probably double the speed again by improving that.
I might be able to write this into an article, but what I've done so
far is just showed it off to other coders in some private messages on
forums. A complication in publically showing it off is it is closed
source though. The speed advantage isn't apparent until the code
actually does something; PHP is much faster for hello world, but gets
spanked when it comes to the actual work.

"Adam Ruppe" <destructionator@gmail.com> wrote in message
news:mailman.103.1275615255.24349.digitalmars-d@puremagic.com...
>I recently rewrote a huge PHP application in D2. It isn't a completely
> fair comparison, since the PHP was written by, well to be polite, PHP
> "programmers", but the results were pretty astounding.
>
> 90% reduction in lines of code [!], 200% improvement in speed under
> heavy load (only 50% improvement under light load, still good, but not
> as good), and the code is actually maintainable! Also, the original
> took about a year for the first team to write. My D rewrite took 6
> weeks. Oh yeah, and the PHP is riddled with security holes. Not so
> much with the D.
>
> The best part about the speed is that it is just running as plain old
> CGI and my code does a lot of inefficient looping through XML. I could
> probably double the speed again by improving that.
>
Comparing D to PHP is like comparing a 747 to the Hindenburg. :)

"Walter Bright" <newshound1@digitalmars.com> wrote in message
news:hu9fic$24ic$1@digitalmars.com...
>D is an extremely powerful language, but when I read complaints and sighs
>about other languages, few seem to know that these problems are solved with
>D. Essentially, we have a marketing problem.
>
> One great way to address it is by writing articles about various aspects
> of D and how they solve problems, like
> http://www.reddit.com/r/programming/comments/cb14j/compiletime_function_execution_in_d/
> which was well received on reddit.
>
> Anyone have good ideas on topics for D articles? And anyone want to stand
> up and write an article?
>
> They don't have to be comprehensive articles (though of course those are
> better), even blog entries will do.
More of a long term-thing, but D needs a couple of "killer libs" (for
instance, a really good D version of something Rails-like). Then, of course,
an article walking through the use of it to easily create something fancy.

"Nick Sabalausky" <a@a.a> wrote in news:hu9na8$2hho$1@digitalmars.com:
> More of a long term-thing, but D needs a couple of "killer libs" (for
> instance, a really good D version of something Rails-like). Then, of
> course, an article walking through the use of it to easily create
> something fancy.
I think I've said this before, but D needs a two killer apps plus one
medical journal article. One of the killer apps needs to be
commercial/proprietary so that people can see money being made with D.
The other killer app needs to be open source so that contributors have
to use D to work on it. The medical journal article needs to report
that contributing to the open source app cures erectile dysfunction
disorder.

== Quote from retard (re@tard.com.invalid)'s article
> Thu, 03 Jun 2010 16:58:03 -0700, Walter Bright wrote:
> > D is an extremely powerful language, but when I read complaints and
> > sighs about other languages, few seem to know that these problems are
> > solved with D. Essentially, we have a marketing problem.
> >
> > One great way to address it is by writing articles about various aspects
> > of D and how they solve problems, like
> > http://www.reddit.com/r/programming/comments/cb14j/
> compiletime_function_execution_in_d/
> > which was well received on reddit.
> >
> > Anyone have good ideas on topics for D articles? And anyone want to
> > stand up and write an article?
> >
> > They don't have to be comprehensive articles (though of course those are
> > better), even blog entries will do.
> Well, I for one, like to know when the D2 will be officially published. I
> thought there was a bugfix week and the TDPL was written because D2 is
> almost ready and there was supposed to be a big kaboom.
> The version number is already at 2.046 but there are maybe 100 bugs
> waiting in the bugzilla with patches and the compiler & spec are
> seriously broken. When will it be usable? What will be the version number
> of the first usable D2 dmd? There was a "huge" D1 release party, but I'm
> not sure when it's a good time to move to D2. It's not enough that the
> examples from the book work, D needs to be ready for commercial quality
> applications. What's the library status? Where are the official
> milestones? Future plans? What's happening here?
http://www.youtube.com/watch?v=8r1CZTLk-Gk
thanx fer yer self entitlement asshole.