Indicators and traction…
Joakim via Digitalmars-d
digitalmars-d at puremagic.com
Thu Sep 24 02:38:14 PDT 2015
On Wednesday, 23 September 2015 at 23:00:29 UTC, Laeeth Isharc
wrote:
> I don't know if focusing on trying to produce a killer app (not
> that I suggest you suggest that) will produce the desired
> result, since it's trying to short-cut a process that is
> essentially organic. Too large an influx of new arrivals
> before you are ready for them (docs, libraries, etc) isn't
> necessarily only positive. If you are going to host the
> Olympics, it's a good idea to make sure the street signs are up
> first.
>
> Of course often much better to visit a place before a massive
> influx of tourists or permanent overseas residents.
I agree that D may not be ready for a large influx of new users,
but that is a cyclic process that is necessary for growth, ie 10k
new users come in, 5k go away because they run into issues, 5k
stick around and a few pitch in to make things better. A killer
app is a way to get a lot of attention and potential new users
quickly, but nobody's saying that alone is enough. But it is one
way to add to the userbase that might lead to more growth and
more killer apps and libraries later.
Rails led to a lot of new ruby users, some of whom found flaws
with the language and left. Others worked on alternate
implementations and improvements.
> What could be done to make its benefits on the server clearer?
> One obvious thing is better documentation and more blog posts.
Same as always, publicizing the server successes it has had and
blog posts comparing D and benchmarking vibe.d against other
popular web languages and frameworks. Some on the forums have
suggested getting vibe.d in this apparently popular web benchmark:
https://www.techempower.com/benchmarks/
More D libraries aimed at use on the server, that make getting up
and running there easier, along with posts publicizing them. I
thought this was an interesting snippet from a recent blog post,
highlighting the importance of such marketing:
"What we never know is how quickly diffusion happens. I’ve
observed 'no-brainer' technologies or ideas lie unadopted for
decades, languishing in perpetual indifference and suddenly, with
no apparent cause, flip into ubiquity and inevitability at a
vicious rate of adoption.
Watching this phenomenon for most of my life, I developed a
theory of causation. This theory is that for adoption to
accelerate there has to be a combination of conformability to the
adopter’s manifest needs (the pull) combined with a concerted
collaboration of producers to promote the solution (the push).
Absent either pull or push, adoption of even the brightest and
most self-evident ideas drags on."
http://www.asymco.com/2015/09/21/how-quickly-will-ads-disappear/
>> There will need to be a paid toolchain at some point, to spur
>> more development and more manpower on sanding down the rough
>> edges of the tools. That's a chicken-and-egg situation right
>> now, as there might not be enough devs and businesses making
>> money off D to pay for such tools yet.
>
> Hobby/open-source project today, business tomorrow? Who would
> wish to bet against that happening with some of the free tool
> sets that are already here? (And that would be something to be
> welcomed).
Since the D frontend and druntime/phobos are boost-licensed and
at least ldc is mostly BSD-licensed, it is certainly allowed to
integrate proprietary fixes and additions with some of the D
compilers and the standard library. This could be the basis for
a paid toolchain, as I've pointed out before. llvm/clang
certainly started out as such a project and is part of a big
business today, with proprietary additions.
On a related note, I feel like Microsoft is really missing the
boat here, especially when reading Manu and Walter on why llvm
doesn't support MS debuginfo:
"I've actually had quite a few conversations with LLVM dev's about
this, and one of the key excuses for not supporting MS debuginfo
was
the classic 'it's not documented.' I promptly pointed them at your
work every single time it came up, but they ignored or dismissed
it
every time. Dev's are funny like that."
http://forum.dlang.org/post/mailman.80.1439216033.13986.digitalmars-d@puremagic.com
The problem for Microsoft is that all new languages are using
llvm to generate code. If that code cannot be debugged on
Windows not only because they don't provide any open source way
to integrate such languages with their platform but _do not even
bother to document_ their debuginfo format, so the only way it
gets supported is if Walter reverse-engineers it, there go all
those potential Windows developers. By contrast, the two major
OS platforms of the last decade, iOS and Android, have toolchains
that are almost completely or completely open-source. This means
random people on the internet, like Dan and me, have been able to
get D mostly working on those platforms, with much less work.
Microsoft wouldn't even have to open source everything in their
toolchain, just the parts that would make it easy for other
languages to integrate. Or at least document your damn debug
format! Maybe Microsoft thinks their in-house languages are much
better, but even if that's true, you're missing out on all the
devs using those outside languages.
Of course, part of this, which goes unmentioned by Manu, is that
the llvm devs likely work for Apple and aren't incented to
support Microsoft. But there's nothing stopping Microsoft from
contributing to llvm or just documenting the format. They've
been doing some stuff with llvm lately, so maybe things are
changing, but this is a clear win that is likely much more
important:
http://blog.llvm.org/2015/04/llilc-llvm-based-compiler-for-dotnet.html
http://blogs.msdn.com/b/vcblog/archive/2015/05/01/bringing-clang-to-windows.aspx
In that second link, they actually note "debugging-friendly
code-generation" as a benefit of using the VC++ backend. I'm
sorry, if you have to refrain from documenting your format in
order to help your backend, you've already lost.
More information about the Digitalmars-d
mailing list