December 24, 2014
On Wednesday, 24 December 2014 at 01:20:13 UTC, Rikki Cattermole wrote:
> Lets not forget things like barcode generators, qrcode and pdf editor.

One of my larger D web projects included QR code generation - it was a printable coupon site.

I did it by just calling system("qrencode")... or whatever the program was called, instead of bothering with a library, then did the rest with plain image management (which I do have in D).

I'm sure I could have called a C lib or something too, but the command line interface was easy and quick to slap together.

It was easy and worked pretty well. Over years of using D in production for a few different startups, I never hit a problem I couldn't quickly solve.
December 24, 2014
On Tuesday, 23 December 2014 at 23:39:31 UTC, ketmar via Digitalmars-d wrote:
> i'm using it from time to time. mostly html parser, but i'm watching for your scripting language changes too.

I love dom.d. IMO it is better at doing what javascript's job in the browser is supposed to be than Javascript itself with the dynamic properties and all that.

The script thing just recently got property support so I can use it with a native class for my little json web api inspector thingy. That will enable automatic wrapping of arbitrary D objects when I get back to it, perhaps even whole modules, so exposing D code to the script will become even easier!

BTW, A couple weeks ago, I reopened my old twitter account and I post a little D code update there too if you're interested:

https://twitter.com/adamdruppe

Other recent modules added are some audio and joystick support. (I'm gearing up to write another game in D, but this time, I'm not even going to use SDL!)

> alot of personal emails asking something again and again

I like those because they tell me what trouble people are having..
December 24, 2014
On Wed, 24 Dec 2014 04:55:09 +0000
"Adam D. Ruppe via Digitalmars-d" <digitalmars-d@puremagic.com> wrote:

> I love dom.d. IMO it is better at doing what javascript's job in the browser is supposed to be than Javascript itself with the dynamic properties and all that.
the same for me. i'm not doing heavy dom jobs though.

> The script thing just recently got property support so I can use it with a native class for my little json web api inspector thingy. That will enable automatic wrapping of arbitrary D objects when I get back to it, perhaps even whole modules, so exposing D code to the script will become even easier!
yep, i've seen that in recent commits. inability to easily wrap native structs/objects was one of the major drawbacks for me. i was thinking about doing something with it myself, but... you know, lazyness and such. ;-)

> Other recent modules added are some audio and joystick support. (I'm gearing up to write another game in D, but this time, I'm not even going to use SDL!)
i've seen that too, and was curious to see what's coming next. ;-)

> > alot of personal emails asking something again and again
> I like those because they tell me what trouble people are having..
i meant that it may become boring to answer the same things again and again.

for me the biggest trouble is that your things looks handy and unencumbered, and it's hard to resist the temptation to write my own versions. you know, "it looks so easy that i MUST write my own variant". can you please make your interfaces convoluted and heavy-weight? ;-)


December 24, 2014
On Wednesday, 24 December 2014 at 01:20:13 UTC, Rikki Cattermole wrote:
> Lets not forget things like barcode generators, qrcode and pdf editor.

On-the-fly PDF generation is very useful for creating product sheets or printable versions of articles etc. There are few good solutions for that.
December 24, 2014
On Tuesday, 23 December 2014 at 23:12:46 UTC, Adam D. Ruppe 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 think people often look for narrow solutions to the concrete problems they have. Big frameworks tend to generate more buzz and get more visible in search engines and the like, but narrow solutions might be just as attractive if not more. The problem is finding them...
December 24, 2014
On Tuesday, 23 December 2014 at 23:32:59 UTC, ketmar via Digitalmars-d wrote:
> 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.

Good point, I too think this is going to be big soon, though the point of the spear for me is bitcoin and all its copycats.  Torrents did it first but haven't really taken the next step.  The cloud will wane as a result, as you say, while still having a role to play.
December 24, 2014
On Wed, 24 Dec 2014 16:53:16 +0000
Joakim via Digitalmars-d <digitalmars-d@puremagic.com> wrote:

> Good point, I too think this is going to be big soon, though the point of the spear for me is bitcoin and all its copycats. Torrents did it first but haven't really taken the next step. The cloud will wane as a result, as you say, while still having a role to play.
i completely agree with you, that is exactly what i mean. i just forgot about cryptocurrencies as they are almost the "normal everyday thing" already. ;-) see, banks and governments already trying to "regulate" bitcoin instead of ignoring it as a silly geek toy.


December 24, 2014
On Wednesday, 24 December 2014 at 05:26:21 UTC, ketmar via Digitalmars-d wrote:
> for me the biggest trouble is that your things looks handy and
> unencumbered, and it's hard to resist the temptation to write my own versions.

That's part of why I do it the way I do: you are hopefully able to customize the code just using mine as a starting point for your own hack jobs. I kinda assume everyone who wants to use them takes a look through the source - that's why I leave comments! (and my lack of traditional documentation means eyeballing the source (or asking me) is really the only way to find the hidden features anyway)

> you know, "it looks so easy that i MUST write
> my own variant". can you please make your interfaces convoluted
> and heavy-weight? ;-)

But then even I would get annoyed with them and just write a simpler version anyway!

This is how I pick libraries:

try
     solveMyProblem(close_to_exactly);
catch(Exception e)
     writeln("this library sucks");
finally {
     do it myself with exactly what i need and little more
}


Yes, DIY is finally :P Unless the lib actually happens to solve what I want exactly and has no other hassle... which basically never happens... I end up doing it myself whether it sucks or is actually OK.

y'all should do it too, it is informative!
December 24, 2014
On Wed, 24 Dec 2014 20:50:17 +0000
"Adam D. Ruppe via Digitalmars-d" <digitalmars-d@puremagic.com> wrote:

> Yes, DIY is finally :P Unless the lib actually happens to solve what I want exactly and has no other hassle... which basically never happens... I end up doing it myself whether it sucks or is actually OK.
> 
> y'all should do it too, it is informative!

same for me. most of my libraries (both published and private) was born
out of frustration. first i have to solve some task, then i found that
existing libraries sux, then i wrote a solution, and then i see that i
can turn this solution into a library. now the problem is solved
and i have a new library, tested with the actual data and solves
exactly what i need to solve, not "everything someone may want to
solve". win-win. ;-)


January 13, 2015
I know this thread is a little old now, and I'm not the most experienced programmer by a long shot, but I'll post my 2 cents from the n00b persepctive.

A question first: ... what do people actually have working in D?
I find very few "working examples" of things I want to do. Or things in general. That I can read and say "oooh that's close to what I want, I can tweak it a little here and there".

Eg.
I want a program to write tweets.
I can't just google "twitter example d" and find a nice starter program to connect a write a tweet.
Do the same with "twitter example java" and you'll probably have your problem solved within half an hour.
So in half an hour I have a java program, and not a d one. I'll probably make changes to my java one and grow that, rather than trying to rewrite it in D because I don't even know it will work.

The same can be said when I try to do other things too:
Like parse a webpage.
Or connect to APIs.
(maybe I'm constantly looking for things that other's don't do, but that's unlikely)

So for me, it's getting easier to solve my simple programming problems in other languages because I can find examples that a) others have posted and b) others have the same issues I face.
I can't find those things in D nearly as easily (is this a limit of searching the term "D" or dlang?)

> try
>      solveMyProblem(close_to_exactly);
> catch(Exception e)
>      writeln("this library sucks");
> finally {
>      do it myself with exactly what i need and little more
> }

I'd *love* to be able to do this, but if libraries don't work, personally, I don't know where to start most of the time. What if there isn't a library at all? html headers, oauth, blah blah. I may as well build a rocket. I have plenty of projects where I hit a wall (which I don't think is necessarily a language thing, but trying to use D to get to something else/do something).

So in summary, from my perspective I find it difficult to solve the programming challenges I face, using D. Maybe that's a skill thing.
Lack of working examples makes taking that first leap daunting.
Lack of connectivity (to the things I want to connect to) is frustrating. Through googling, I'll be able to get something running quicker in another language than continue trying to get D to work.
If I find these issues, and I'm moderately intelligent, I'm sure others have the same issues.
I love the language, but if someone wanted a language to learn, I don't think I would recommend D. :(