Thread overview
Reflection on the book D web development.
Nov 20, 2020
Alaindevos
Nov 20, 2020
CraigDillabaugh
Nov 21, 2020
aberba
Nov 21, 2020
Alaindevos
Nov 23, 2020
bachmeier
Nov 25, 2020
Alaindevos
Nov 25, 2020
bachmeier
Nov 28, 2020
Alaindevos
November 20, 2020
I bought the book "D Web Development".
I understand only 20% of the book,the other 80% is way above my head.
Compare, I own a book on flask development, and I understand 100% of it.
Which means I can use dlang for anything except QT and serious web development ...
November 20, 2020
On Friday, 20 November 2020 at 19:12:38 UTC, Alaindevos wrote:
> I bought the book "D Web Development".
> I understand only 20% of the book,the other 80% is way above my head.
> Compare, I own a book on flask development, and I understand 100% of it.
> Which means I can use dlang for anything except QT and serious web development ...

Could you explain some of the things that you found particularly challenging about the book?   What level of D proficiency did you have before you started with the book?
November 21, 2020
On Friday, 20 November 2020 at 19:12:38 UTC, Alaindevos wrote:
> I bought the book "D Web Development".
> I understand only 20% of the book,the other 80% is way above my head.
> Compare, I own a book on flask development, and I understand 100% of it.
> Which means I can use dlang for anything except QT and serious web development ...

How would you like this to be improved? I'm personally interested in making vibe.d more accessible.


November 21, 2020
It's not my related to a lack of knowledge of the d-language but the complexity of the vibe.d framework itself.
What I understand are :
1: jade/diet .dt templates, inheritance,includes,markdown.
2: A simple form with POST method.
Then it stops.
What I find too complex:
- Sessions, session data , session variables
- Handler functions and delegates, compile-time reflection, prefixes, annotation.
- Authentication
- Validating user input
This can be improved by improving documentation in very small steps.

As comparison here a tutorial of ruby-flask which uses only small steps so everything can easily and completely be understood.
Something like that for vibe.d would be very interesting.
https://www.youtube.com/watch?v=3mwFC4SHY-Y
November 23, 2020
On Saturday, 21 November 2020 at 16:18:39 UTC, Alaindevos wrote:
> It's not my related to a lack of knowledge of the d-language but the complexity of the vibe.d framework itself.
> What I understand are :
> 1: jade/diet .dt templates, inheritance,includes,markdown.
> 2: A simple form with POST method.
> Then it stops.
> What I find too complex:
> - Sessions, session data , session variables
> - Handler functions and delegates, compile-time reflection, prefixes, annotation.
> - Authentication
> - Validating user input
> This can be improved by improving documentation in very small steps.
>
> As comparison here a tutorial of ruby-flask which uses only small steps so everything can easily and completely be understood.
> Something like that for vibe.d would be very interesting.
> https://www.youtube.com/watch?v=3mwFC4SHY-Y

May or may not be related, but I eventually gave up on that book myself. It felt as if it were written for experienced web developers wanting to use D for things they were doing in other languages. It's been a long time now, though, so I don't recall anything specific.
November 25, 2020
hunt-http has no documentation and does not looks usable to me.
What looks usable is kemal & the crystal language,
https://kemalcr.com/guide/
November 25, 2020
On Wednesday, 25 November 2020 at 17:26:44 UTC, Alaindevos wrote:
> hunt-http has no documentation and does not looks usable to me.
> What looks usable is kemal & the crystal language,
> https://kemalcr.com/guide/

Looks like Sinatra. That makes sense given the relationship of Crystal to Ruby. Many languages have a Sinatra-inspired framework, but to my knowledge not D. I think Adam Ruppe's libraries are closer to that approach.
November 28, 2020
& Golang has Martini which is quite easy to use,
https://www.youtube.com/watch?v=tUFzdUIjVRg