December 23, 2014
On Tuesday, 23 December 2014 at 20:12:20 UTC, ketmar via Digitalmars-d wrote:
> and learning libraries is not free (if such libraies exists in the
> first place). yet people talking about Go tend to ignore this fact.

Yes, that is true. I tend to avoid frameworks and look for focused libraries. Go eco system is in the early stage, but there are several light weight frameworks that looks quite promising.

> with all the C support libraries available D is not in a bad position.

That's great in theory, but basic C-libraries are not as cheap to get working as an existing binding with a convenient abstraction on top if you start counting hours.

>> I have to connect to Google infrastructure
> no wonder google support this with one of their pet language. ;-)

Indeed, and you can probably expect the same from Azure, so that leaves D with AWS as the only big option. Yet, there is no solid AWS support in sight...

>> add encryption cross platform
> in a web-server? O_O

Easy integration across unsecured networks.

>> Every other project might need a new library if you are to integrate with existing solutions, so there is really no end to what you need to support...
> that's where C libraries comes to rescue.

Actually no. Some stuff actually requires a mix of languages and a platform that supports the mix makes it a lot easier (cheaper).

>> Reality check on stuff that could be relevant for a server:
>> https://github.com/trending?l=go&since=monthly
> yes, this is good indicator of "hypeness". that's all.

It is a good indicator of activity and direction.
December 23, 2014
On Tue, 23 Dec 2014 20:23:07 +0000
via Digitalmars-d <digitalmars-d@puremagic.com> wrote:

> > with all the C support libraries available D is not in a bad position.
> That's great in theory, but basic C-libraries are not as cheap to get working as an existing binding with a convenient abstraction on top if you start counting hours.
with good overall design plugging in a library is a matter of days. sure, if you choose to not abstract your needs and go with some library's API directly, this will be a PITA.

> Indeed, and you can probably expect the same from Azure, so that leaves D with AWS as the only big option. Yet, there is no solid AWS support in sight...
all that cloudy thing is another hype. ;-)

> >> add encryption cross platform
> > in a web-server? O_O
> Easy integration across unsecured networks.
ahem... encryption algorithms are platform-independent. and your server is running on known platform. am i missing something here?

> >> Every other project might need a new library if you are to integrate with existing solutions, so there is really no end to what you need to support...
> > that's where C libraries comes to rescue.
> Actually no. Some stuff actually requires a mix of languages and a platform that supports the mix makes it a lot easier (cheaper).
the solution is easy: don't use things that have no C libraries. C is "linuga franca" in this case.

> >> Reality check on stuff that could be relevant for a server: https://github.com/trending?l=go&since=monthly
> > yes, this is good indicator of "hypeness". that's all.
> It is a good indicator of activity and direction.
let me quote myself: "most people are morons." ;-)


December 23, 2014
On Tuesday, 23 December 2014 at 20:36:35 UTC, ketmar via Digitalmars-d wrote:
> all that cloudy thing is another hype. ;-)

It is hyped, but it is going to grow since businesses can save money on it. HP's The Machine also appears to be cloud centric. It is pretty much well established across the board as the future of computing.

> ahem... encryption algorithms are platform-independent. and your server
> is running on known platform. am i missing something here?

Not a big deal, but I'd rather have the same symmetric encryption code on all platforms and be sure that the implementation is 100% compatible with no corner cases.

This goes for all libraries:

I'd rather go for libraries+bindings that are tested by 1000s of projects, not 50 or 100.

I'd rather use a language where there are multiple competing libraries covering the same functionality so that I have another place to go if one library turns out to be buggy.

If D is spread thin all over the place, then you simply will not get the kind of attractive eco system that Go is building.

Having only one option is good enough for a hobby project. Having only one option when you have signed a contract is a liability.

> the solution is easy: don't use things that have no C libraries. C is "linuga franca" in this case.

If the customer wants a full featured web-forum for support integrated into his marketing web site... what options do you actually have? One really sucky language... Not Go. Not Java. Not Ruby. Not Python. Not D...

>> >> Reality check on stuff that could be relevant for a server:
>> >> https://github.com/trending?l=go&since=monthly
>> > yes, this is good indicator of "hypeness". that's all.
>> It is a good indicator of activity and direction.
> let me quote myself: "most people are morons." ;-)

We are all morons by thinking that morons cannot create great things...
December 23, 2014
On Tue, 23 Dec 2014 21:05:04 +0000
via Digitalmars-d <digitalmars-d@puremagic.com> wrote:

> On Tuesday, 23 December 2014 at 20:36:35 UTC, ketmar via Digitalmars-d wrote:
> > all that cloudy thing is another hype. ;-)
> It is hyped, but it is going to grow since businesses can save money on it. HP's The Machine also appears to be cloud centric. It is pretty much well established across the board as the future of computing.
i've heard this before. you know, "mainframes will die, personal computers is the future of computing". and now i see "the revenge of mainframes". i bet we'll see another wave of this, this time with "decentralized networks" (nope, "clouds" are not about that).

> > ahem... encryption algorithms are platform-independent. and
> > your server
> > is running on known platform. am i missing something here?
> Not a big deal, but I'd rather have the same symmetric encryption code on all platforms and be sure that the implementation is 100% compatible with no corner cases.
NaCl/libsodium is your friend! ;-)

> Having only one option is good enough for a hobby project. Having only one option when you have signed a contract is a liability.
seeing the kind of people using Go and other overhyped things... i'd better go with one C library than with 100 Go libraries. ;-)

> > the solution is easy: don't use things that have no C libraries. C is "linuga franca" in this case.
> If the customer wants a full featured web-forum for support integrated into his marketing web site... what options do you actually have?
don't work with that customer. that is exactly what we doing: either we do things our way or simply don't take the work.

> We are all morons by thinking that morons cannot create great things...
morons can create great things. the trouble is that morons don't know how to use the things they created. ;-)


December 23, 2014
On Tuesday, 23 December 2014 at 21:48:32 UTC, ketmar via Digitalmars-d wrote:
> computers is the future of computing". and now i see "the revenge of
> mainframes". i bet we'll see another wave of this, this time with
> "decentralized networks" (nope, "clouds" are not about that).

With new tech changes will come for sure, like break throughs in AI, real time raytracing hardware or memristors with integrated logic... We'll see (or our kids will).

> morons can create great things. the trouble is that morons don't know how to use the things they created. ;-)

They do, but I get a headache when looking at the source code... (e.g. wordpress...)
December 23, 2014
On Tuesday, 23 December 2014 at 17:00:55 UTC, Andrei Alexandrescu wrote:
> On 12/18/14 4:38 AM, bioinfornatics wrote:
>> - range even the basic io as ByLine which implement range can't work
>> with std.range.takeOne as is not an Input Range. While a basic function
>> such as takeOne do not really need to use save method to work a forward
>> range is enough.
>
> Could you please give an example of this? Thanks. -- Andrei

Unless I'm misunderstanding, it's really as simple as:

auto s = stdin.byLine.takeOne;

C:\...\std\range\package.d(1939): Error: template std.range.primitives.save cannot deduce function from argument types !()(ByLine!(char, char)), candidates are:
C:\...\std\range\primitives.d(1944):        std.range.primitives.save(T)(T[] a)
test.d(5): Error: template instance std.range.takeOne!(ByLine!(char, char)) error instantiating
December 23, 2014
On Tuesday, 23 December 2014 at 19:54:20 UTC, Ola Fosheim Grøstad wrote:
> 5 stars for arsd

I'm almost famous!

I actually seriously wonder how many users my random stuff has. Maybe I should set up an email list - when I make a breaking change, I often wonder how many people I'm inconveniencing... (I don't often make breaking changes, but I sometimes do.)
December 23, 2014
On Tue, 23 Dec 2014 22:16:32 +0000
via Digitalmars-d <digitalmars-d@puremagic.com> wrote:

> On Tuesday, 23 December 2014 at 21:48:32 UTC, ketmar via Digitalmars-d wrote:
> > computers is the future of computing". and now i see "the
> > revenge of
> > mainframes". i bet we'll see another wave of this, this time
> > with
> > "decentralized networks" (nope, "clouds" are not about that).
> 
> With new tech changes will come for sure, like break throughs in AI, real time raytracing hardware or memristors with integrated logic... We'll see (or our kids will).
all the tech for decentralized mesh networks is already here. and people starting to understand that centralized networks/servers sux.

i see that decentralized services are slowly rising: tox, bitmessage, diaspora... you got the idea. the snow avalanche is already started.

it worth noting that each "privacy information leaking" adds to it.


December 23, 2014
On Tue, 23 Dec 2014 23:12:45 +0000
"Adam D. Ruppe via Digitalmars-d" <digitalmars-d@puremagic.com> wrote:

> On Tuesday, 23 December 2014 at 19:54:20 UTC, Ola Fosheim Grøstad wrote:
> > 5 stars for arsd
> 
> I'm almost famous!
> 
> I actually seriously wonder how many users my random stuff has. Maybe I should set up an email list - when I make a breaking change, I often wonder how many people I'm inconveniencing... (I don't often make breaking changes, but I sometimes do.)
i'm using it from time to time. mostly html parser, but i'm watching for your scripting language changes too.

as for now it's ok for me to take a look at 'git diff' if something breaks. don't bother yourself with support list until there will be alot of personal emails asking something again and again (or just cursing for breaking the old code ;-).

your stuff is relatively easy to use and it's always fun to read your source code. ;-)


December 24, 2014
On 24/12/2014 8:54 a.m., "Ola Fosheim =?UTF-8?B?R3LDuHN0YWQi?= <ola.fosheim.grostad+dlang@gmail.com>" wrote:
> On Tuesday, 23 December 2014 at 19:14:02 UTC, ketmar via Digitalmars-d
> wrote:
>> and so D. and i still has to learn libraries for all that. yet people
>> talking Go being magic bullet: just use concurency and that's all!
>>
>> nope. that's not all. that's not even the biggest part.
>
> Library support is really important when doing web servers and
> integration with existing systems and workflows. This is not an area
> where D will be able to compete anytime soon, it is a crowded space:
> Java, Python, Ruby, Php, node.js and eventually Go. I have to connect to
> Google infrastructure, to legacy databases like Pervasive, parse Excel
> files, add encryption cross platform etc... Every other project might
> need a new library if you are to integrate with existing solutions, so
> there is really no end to what you need to support...
>
>
> Reality check on stuff that could be relevant for a server:
>
> https://github.com/trending?l=go&since=monthly
>
> 4943 stars for Go
> 2947 stars for Rocket
> 1029 stars for Docker
> 747 stars for  ssh-chat
> 622 stars for Kubernetes
> 672 stars for Jason
> 672 stars for aws-go
> 594 stars for bone
> 405 stars for influxdb
> 364 stars for etcd
> 356 stars for surgemq
> 246 stars for kite
>
> https://github.com/trending?l=d&since=monthly
>
> 28 stars for vibe.d
> 10 stars for phobos
> 6 stars for druntime
> 6 stars for libasync
> 5 stars for arsd
>
> That's a wipe out...
>
>> 1. take gw-basic.
>> 2. take Google.
>> 3. let Google to throw money into gw-basic hype.
>> 4. people start writing alot of software in gw-basic.
>>
>> there is no direct corellation between "being good in technical sense"
>> and "being successfull". but there is such corellation between
>> "advertising by Big Player" and "being successfull".
>
> There is a strong correlation between not having a stable release and
> getting less attention from people who write libraries and frameworks
> for commercial use.
>
> Besides, Basic got traction at a time where people charged for good
> languages, it was available for free and was not too demanding on
> resources so it was built into the ROM on basically all home computers
> in the 80s. That's how Basic got big.

Lets not forget things like barcode generators, qrcode and pdf editor.
People have a tendency to like having those things for web services...
Unfortunately they have a tendency to have a requirement to have things such as a image library already. Which we also have a bad tendency to not standardized in one library.