More complex creatures may take longer to mature than simpler ones. At the age of five, an infant is a much less impressive creature than a dog of the same age. (And one might sometimes feel the same way also when it reaches the age of 15 ;) Social institutions have organic traits too, so the metaphor may have some application.

Sometimes in the growth of a business there are some limiting factors that simply need to be worked through, and there may be no viable short-cut. It's easy to become frustrated if one makes comparisons, but it may be that the situations simply are not comparable because the problems faced are different.

The growth of a business also often depends on external factors. It just trundles along for years, and suddenly the stars align, and there is explosive growth. People attribute overnight success to overnight causal factors, but that is rarely how it works beyond the most superficial level of understanding. When the stars align, it isn't just one thing, but rather a whole bunch of often slow but powerful developments coming together.

I am a newcomer to D, and by far not an expert in computer science, processor and memory tends etc. But perhaps it may be the case that changing cost conditions dramatically influence the kinds of tools that best suit the most pressing problems. These problems too may be becoming more ambitious in terms of magnitude. For a long time in the business world, processing power was essentially a free resource (and often RAM was too). Gamers had more powerful machines, even compared sometimes to those used in the financial sector. But people do respond to relative prices, and when something is cheap they find ways to use lots of it although it does take some time.

Ie it was once perhaps true as a simple generalisation for quite some time that much activity was I/O bound, and so the speed of interpreted languages with a C back-end like Python simply didn't matter. It may perhaps also be true that the world of the future will be quite different.

That is why I am interested in D - it seems to be the only viable option that seems likely to perform well whilst meeting a certain set of constraints that I believe will be important for me. Sometimes I get things wrong, but often I tend to identify changes in trends early enough, and it may be that others come to similar conclusions in time.

Its adoption at Facebook is intriguing. The temptation is to dismiss it and suggest that they have a lot of resources for R&D, and a handsome salary for Dr Andreiscu is a rounding error compared to the productivity of a talented person, and if he wants to program in VBA then if it works, why fight him! Also, to say that Facebook has some extraordinary challenges that are not representative of those faced by other business applications, and that are not ever representative to be so.

But I have a different perspective, and I think perhaps the kinds of challenges faced by Facebook may be more like the leading edge of what many more people may be facing in the years to come. William Gibson's "The future is here already, but not evenly distributed".

In any case, there is little point speculating about the future, and certainly none throwing up one's hands in woe at what seems to be slow adoption. (If one compares oneself to the languages that have been most quickly adopted, one will always feel bad because that is the nature of comparison).

Strife is good, if one responds to it in a creative fashion. One also should not be limited by what seem to be immediate constraints of lacking resources - budget, people etc. First of all one comes up with a vision and plan to execute it, and somehow magically the path to get there emerges slowly out of the fog. The amounts of money at stake to me really seem to be quite small in the bigger picture of things. I cannot personally help today, but that may change in a few years, and I will if I can then.

I don't claim to have great technical expertise, but it does seem to me that - contrary to what might be inferred from the original post - D has made very substantial progress since it was launched. The years have not been wasted, because it is a much better language that has kind of discovered further sources of beauty that were unexpected perhaps even by its creators.

I personally think the following would be very helpful

- better reference documentation. I don't believe I lack the ability generally to figure things out, but the dlang.org library reference is far from being utterly clear if you don't start from a place of understanding the language and its concepts. once you get the spirit of it, it all makes sense, but modern people don't tend to be distinguished by their grit and many will give up first.

- better worked examples. python is outstanding for this. you can figure out how to do anything by looking at someone else's example. of course there isn't presently the support for this, and I recognize that one attracts a different kind of person when it becomes easy to learn a language. but such is the price of maturity.

- agree about commercial support. if you are using it at an enterprise level you want to know you can call someone and get it fixed because the price of not doing so may be incalculably high, and people don't necessarily trust themselves to be able to fix it. entrepreneurs don't like uncertainty outside their home ground that they cannot pin down.

- some degree of strategic planning as regards use cases. if someone owned the product they would be very interested and inquisitive about the nitty gritty details to see who is using it in different domains, why (and why don't people go for the competition), what the language does really well, and whether the problems perceived to be the biggest ones actually align with what end-users find important.

- also a degree of relating D's power to emerging trends in different sectors and some writing up of stories, case studies, interviews with end users. this is a kind of community-building task and requires very different skills and emotional makeup to other aspects. the obvious areas I might think about would be the financial sector (hedge funds, investment banks, financial exchanges, platforms etc), machine learning media analysis problems, economic analysis (much larger data sets than economists are used to, and the don't have the right tools for it), bioinformatics, processing logs for the internet of things, etc.

if you were running a business you would want there to be somebody you could call if you were a practitioner in bioinformatics and wanted to know the experience of people using D in that area. I appreciate that's highly unrealistic for the time being, but it may be worth bearing in mind as something helpful for the distant future.

- finally, a bit better organisation. Andrei spoke about needing more lieutenants. Of course it's a no-brainer that he shouldn't be spending his time designing a conference web site. But perhaps you could make it clearer by adding a section on the D wiki front page: "Interested in supporting D? Here's how you can help". It could then take you to a page that breaks down different areas to work on and tasks to be accomplished on each of them. Then someone with time and inclination can see "oh - it would be great to have someone promote this event on Reddit". But as things stand, I imagine to a certain extent nobody knows what specifically they can do.

I am horribly disorganized, so I am not the right one here.


- and one could have a bit of patience and self-confidence. having high standards and wanting to achieve excellence does not mean one cannot recognize one cannot get there overnight and that it is more a matter of taking steps in the right direction, sustained over time. I liked Andrei's attitude of brutal honesty in this respect.

Reply via email to