January 25, 2016
On Monday, 25 January 2016 at 18:17:09 UTC, André wrote:
> Hi,
>
> Inspired by the Go online language tour (https://tour.golang.org/) and the great experience it gave me learning the language I started a similar project for D some weeks ago. It's currently in a very pre-alpha state but I wanted to announce it in case someone had something similar in mind and is willing to contribute. The basic idea behind this tour is to introduce features of the language with short explanations and example code that is compiled and run online.
>
> The code is located here:
>
> https://github.com/stonemaster/dlang-tour
>
> I've setup a server which always runs the latest version:
>
> http://dlang-tour.steinsoft.net
>
> This tour doesn't allow compiling online because the current implementation would just make it too easy to hijack the server :-) Compiling and running online can be activated when compiling locally though. My goal would be to integrate the tour with DPaste in the long run.
>
> Working on this tour unfortunately stalled a little bit in this year but I am trying to work on the project constantly in the upcoming weeks. There is still a lot of content missing and, more importantly, good D source examples. But I have a rough guideline on which D topics I'd like to add content for.
>
> Any kind of feedback is highly appreciated, of course.
>
> Regards,
> André

Very nice work and very much needed!

Found some errors:

- http://dlang-tour.steinsoft.net/tour/basics/2

  * "long, ulong (32 bit)" <= should be "64 bit"

  * "real (depending on platform, 80 bit on Intel x64)" <= 80-bit on Intel x86 32-bit, not sure about Intel x86_64 and I think it depends.

  * "A conversion between variables of different types is only allowed by the compiler if no precision is lost." => except FP types. eg: double => float.


I think you have some room to introduce __gshared, I've seen one case on IRC with someone not knowing about it and wondering why threads read a different value.

You already say that "slices" and "dynamic arrays" are the same thing, but I think this need to be put in bold. For the longest time I had difficulty to envision the difference between the two concepts, but there seems to be none. It happens some D material present them separately.

January 25, 2016
On Monday, 25 January 2016 at 18:17:09 UTC, André wrote:
>
> Any kind of feedback is highly appreciated, of course.
>


I didn't go through it line by line, but my general impression is that it looks really good. Congrats.
January 26, 2016
On Monday, 25 January 2016 at 21:16:51 UTC, Craig Dillabaugh wrote:
>> [...]
>
> Looks promising.  You should rename it D-tours so that you can take advantage of D's underused, but excellent, pun making potential :o)
>
> Then you need to include some graphics:
>
> http://www.roadtrafficsigns.com/detour-signs

:-) That actually was my first working title! But I feared that the name could have a bad influence on the content so I decided for the straight forward version.
January 26, 2016
On Monday, 25 January 2016 at 21:42:04 UTC, Craig Dillabaugh wrote:
>
> I should do this myself, but since I can't access my Github account ATM and will likely forget.  The page:
>
> http://dlang-tour.steinsoft.net/tour/basics/1
>
> The line:
>
> "An import statement mustn't appear at the top ... "
>
> Should read:
>
> "An import statement need not appear at the top ... "

Oh stupid Denglish mistake. Thanks a lot for proof reading! Fixed and black magic will make sure this is going to be rolled out very soon.
January 26, 2016
On Monday, 25 January 2016 at 21:53:26 UTC, Guillaume Piolat wrote:
>
> Very nice work and very much needed!
>
> Found some errors:
>
> - http://dlang-tour.steinsoft.net/tour/basics/2
>
>   * "long, ulong (32 bit)" <= should be "64 bit"
>
>   * "real (depending on platform, 80 bit on Intel x64)" <= 80-bit on Intel x86 32-bit, not sure about Intel x86_64 and I think it depends.
>
>   * "A conversion between variables of different types is only allowed by the compiler if no precision is lost." => except FP types. eg: double => float.
>
>
> I think you have some room to introduce __gshared, I've seen one case on IRC with someone not knowing about it and wondering why threads read a different value.
>
> You already say that "slices" and "dynamic arrays" are the same thing, but I think this need to be put in bold. For the longest time I had difficulty to envision the difference between the two concepts, but there seems to be none. It happens some D material present them separately.

Thank you very much for going through the content! I integrated your comments and they will be online very soon. I added a paragraph for __gshared in the storage classes section and I added a sentence to emphasize that slices and dynamic arrays are the same. I am not sure about the latter so I might revise it after sleeping some days on it :-) Thanks again! - André
January 26, 2016
Looks great! For Windows dmd can also be installed using  https://chocolatey.org/packages/dmd
January 26, 2016
On Tuesday, 26 January 2016 at 10:30:17 UTC, André wrote:
> On Monday, 25 January 2016 at 21:53:26 UTC, Guillaume Piolat wrote:
>> [...]
>
> Thank you very much for going through the content! I integrated your comments and they will be online very soon. I added a paragraph for __gshared in the storage classes section and I added a sentence to emphasize that slices and dynamic arrays are the same. I am not sure about the latter so I might revise it after sleeping some days on it :-) Thanks again! - André

let's put it on github and let everyone contribute and make things easier for you. :)
January 26, 2016
On Tuesday, 26 January 2016 at 13:48:57 UTC, Mengu wrote:
> On Tuesday, 26 January 2016 at 10:30:17 UTC, André wrote:
>> On Monday, 25 January 2016 at 21:53:26 UTC, Guillaume Piolat wrote:
>>> [...]
>>
>> Thank you very much for going through the content! I integrated your comments and they will be online very soon. I added a paragraph for __gshared in the storage classes section and I added a sentence to emphasize that slices and dynamic arrays are the same. I am not sure about the latter so I might revise it after sleeping some days on it :-) Thanks again! - André
>
> let's put it on github and let everyone contribute and make things easier for you. :)

It is on Github (see post #1)
January 26, 2016
On Tuesday, 26 January 2016 at 14:25:33 UTC, CraigDillabaugh wrote:
>>
>> let's put it on github and let everyone contribute and make things easier for you. :)
>
> It is on Github (see post #1)

On a related note: because it's on GitHub it's even possible to contribute content and examples just through the web interface. A quick guide on how the content is structured (all written is standard markdown) can be found here: https://github.com/stonemaster/dlang-tour/tree/master/public/content. The tour's content files found in that folder can just be edited using the GitHub web interface which will then automagically create a pull request for you without the need to locally pull the repository. And the preview mode of GitHub makes sure the layout isn't broken that much :-) It has never been easier to contribute!

FYI, I've now added content + examples for the templates and  interface sections.

Thanks,
André
January 28, 2016
On Tuesday, 26 January 2016 at 18:45:55 UTC, André wrote:
> On Tuesday, 26 January 2016 at 14:25:33 UTC, CraigDillabaugh wrote:
>>>
>>> let's put it on github and let everyone contribute and make things easier for you. :)
>>
>> It is on Github (see post #1)
>
> On a related note: because it's on GitHub it's even possible to contribute content and examples just through the web interface. A quick guide on how the content is structured (all written is standard markdown) can be found here: https://github.com/stonemaster/dlang-tour/tree/master/public/content. The tour's content files found in that folder can just be edited using the GitHub web interface which will then automagically create a pull request for you without the need to locally pull the repository. And the preview mode of GitHub makes sure the layout isn't broken that much :-) It has never been easier to contribute!
>
> FYI, I've now added content + examples for the templates and  interface sections.
>
> Thanks,
> André

sorry, i must have missed the github link on the first post. forked it. here comes the turkish translation for the tour. it will follow the english content.

let's get this on people.