Marketing for D: Making D an official Cloud Foundry built-in language
Andre via Digitalmars-d
digitalmars-d at puremagic.com
Fri Oct 9 11:26:42 PDT 2015
I want to share my experiences with making marketing for D.
At the company I am working for, Cloud and Cloud Foundry is a big
thing.
At the office github there are several coding examples how to
develop applications for the languages Cloud Foundry supports
out of box: Java, Node.js, Ruby, Go, PHP and Python.
I decided to also develop a coding example in the D Language to
make some marketing for D.
Unfortunately it was not added directly to the coding examples,
because it is not an official Cloud Foundry language.
Using a third party buildpack it is possible to also support D
but the marketing
effect for D would be huge if it would be listed as official
supported language.
Short explanation for buildpack: Cloud Foundry gives your
application an environment
which is prepared by using 3 shell scripts called the buildpack.
You only upload the D
source code to Cloud Foundry. In Cloud Foundry dmd / dub ... are
downloaded and executed
to compile your application.
There are some prerequisites which would maximize the chance for
D to become an official CF language:
1. Easy installation: Bundle dmd with dub
The buildpack coding should be small and easy. At the moment dmd
and dub must
be downloaded from different places to different cache folders,
extracted with different tools...
2. Stable link to last released dmd
Is there an archive link, always pointing to the last released
dmd archive?
Instead of always adapting the buildpack, a stable link to the
recent dmd archive
would be a great benefit
3. Fast installation: Currently the dmd zip is about 60 Mb. The
download size doesn't
matter that much, because it is downloaded once and then cached.
But it must be unzipped on every push of the
application. This makes the push slow. Could be a minimized
archive provided, with only these
files absolutely necessary to compile a D application?
4. Dub support for git repositories
I wrote a http/OData library in the office and uploaded it to the
company internal github.
The buildpack shell script loads in addition to the dmd and dub
archive also this git repository
and added it to DUB with command "add-local". This is a bad hack,
but I cannot publish it on code.dlang.org
due it is an company internal library.
I wish dub would support to specifiy a git repository.
With this feature, you could push d applications to Cloud Foundry
which either uses a http engine
from code.dlang.org (vibe-d with libasync) or in a company
scenario, from an internal git repository.
5. Dub support for package registries other than code.dlang.org
Either by manipulation a DNS or by taking over code.dlang.org or
an github repository,
an attacker could insert malicious code into your application. To
reduce the attack vector,
companies have their own package registries with proven packages.
I would like to specify in
dub.json which package registries, DUB will load the packages
from.
Kind regards
André
More information about the Digitalmars-d
mailing list