www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - One Stop Shop?

reply "Sativa" <Sativa Indica.org> writes:
I think it would be helpful to have the d lang site host 
tutorials/lessons on various aspects of D. D is hard to use for 
certain things like gui's, graphics(ogl, dx, etc), etc... not 
necessarily because D can't do these things but because the 
information is not out there.

If The D site hosted, sort of like a wiki, but with properly 
designed articles about how to do things in D, maybe more people 
would start to use it?

For example,

I'd like to get into graphics and gui programming using D. I 



But trying to find coherent information, say, to draw an image on 
screen using opengl and D is nearly impossible... and way too 
time consuming, compared to finding similar information using 
C/C++ or most other popular languages.

Getting D to work in these scenarios are already complicated 
enough. Usually it relies on the work of one person who hasn't 
made it clear how to do it well. I know D can do graphics, I've 
seen it done... I've even read some tutorials on it... but 
nothing is clear, relevant, or updated.

Having a quick way to access stuff in the categories like

Sound(playing sounds, VST design)

Graphics(Gui, 2D/3D using open GL, etc...)

etc...


e.g., suppose I want to create a vst in D... google "D lang vst", 
and the only relevant site that comes up is:

http://le-son666.com/software/vstd/

Woo hoo! looks like someone did the work for us!

But seriously? There is just enough information to hang myself. 
Do I really want to go down this path and potentially waste 
countless hours trying to get something to work that might not?

I feel many others go through the same thought processes.

If there was a wiki like site for D that is based on tutorials 
and experiences/results then surely it would help a lot of 
people. If people could contribute there problems or solutions in 
a unified and connected way, it would be easier to find the 
relevant information than it is now.

About 95% of the time when I search for something that I want to 
do in D, I get a forum post... and about 15% of the time it 
actually leads to something useful. Maybe bout 5% of the time it 
actually solves my problem.

There is just so much junk out there and all the gems are lost. 
Most of the gems need some polishing to show their true beauty.
Aug 30 2014
next sibling parent reply "Joakim" <dlang joakim.airpost.net> writes:
On Saturday, 30 August 2014 at 19:19:48 UTC, Sativa wrote:
 I think it would be helpful to have the d lang site host 
 tutorials/lessons on various aspects of D. D is hard to use for 
 certain things like gui's, graphics(ogl, dx, etc), etc... not 
 necessarily because D can't do these things but because the 
 information is not out there.

 If The D site hosted, sort of like a wiki, but with properly 
 designed articles about how to do things in D, maybe more 
 people would start to use it?

 For example,

 I'd like to get into graphics and gui programming using D. I 



 But trying to find coherent information, say, to draw an image 
 on screen using opengl and D is nearly impossible... and way 
 too time consuming, compared to finding similar information 
 using C/C++ or most other popular languages.

 Getting D to work in these scenarios are already complicated 
 enough. Usually it relies on the work of one person who hasn't 
 made it clear how to do it well. I know D can do graphics, I've 
 seen it done... I've even read some tutorials on it... but 
 nothing is clear, relevant, or updated.

 Having a quick way to access stuff in the categories like

 Sound(playing sounds, VST design)

 Graphics(Gui, 2D/3D using open GL, etc...)

 etc...


 e.g., suppose I want to create a vst in D... google "D lang 
 vst", and the only relevant site that comes up is:

 http://le-son666.com/software/vstd/

 Woo hoo! looks like someone did the work for us!

 But seriously? There is just enough information to hang myself. 
 Do I really want to go down this path and potentially waste 
 countless hours trying to get something to work that might not?

 I feel many others go through the same thought processes.

 If there was a wiki like site for D that is based on tutorials 
 and experiences/results then surely it would help a lot of 
 people. If people could contribute there problems or solutions 
 in a unified and connected way, it would be easier to find the 
 relevant information than it is now.

 About 95% of the time when I search for something that I want 
 to do in D, I get a forum post... and about 15% of the time it 
 actually leads to something useful. Maybe bout 5% of the time 
 it actually solves my problem.

 There is just so much junk out there and all the gems are lost. 
 Most of the gems need some polishing to show their true beauty.
Sorry to say, but this is how a community-backed language works. for reams of documentation and tutorials. You're expected to like D enough to learn the language on your own (http://ddili.org/ders/d.en/index.html) and then either be able to pick up OpenGL on your own (http://open.gl/) or know it already and be able to apply D to the OpenGL API, which as a C-style API is pretty straightforward to call from D. Yes, it would be nice if D had a bunch of tutorials for all these things, but they don't usually exist right now because the community hasn't written them, for a variety of reasons including nobody is paying for it. It would be nice if O'Reilly or whoever started selling such tutorials, but maybe D isn't big enough yet for them to care. D is still in the early stages of adoption (http://en.wikipedia.org/wiki/Diffusion_of_innovations), and since you're not getting charged lots of money for the privilege, as you might to buy early cutting-edge hardware like Google Glass or Oculus Rift, it will cost you time instead. Sorry to say you'll just have to keep panning around for gems, as that's where D is at right now. Those of us who stick around think the time spent is worth it.
Aug 31 2014
parent reply "Marc =?UTF-8?B?U2Now7x0eiI=?= <schuetzm gmx.net> writes:
On Sunday, 31 August 2014 at 08:44:39 UTC, Joakim wrote:
 Sorry to say, but this is how a community-backed language 

 can pay for reams of documentation and tutorials.  You're 
 expected to like D enough to learn the language on your own 
 (http://ddili.org/ders/d.en/index.html) and then either be able 
 to pick up OpenGL on your own (http://open.gl/) or know it 
 already and be able to apply D to the OpenGL API, which as a 
 C-style API is pretty straightforward to call from D.

 Yes, it would be nice if D had a bunch of tutorials for all 
 these things, but they don't usually exist right now because 
 the community hasn't written them, for a variety of reasons 
 including nobody is paying for it.  It would be nice if 
 O'Reilly or whoever started selling such tutorials, but maybe D 
 isn't big enough yet for them to care.  D is still in the early 
 stages of adoption 
 (http://en.wikipedia.org/wiki/Diffusion_of_innovations), and 
 since you're not getting charged lots of money for the 
 privilege, as you might to buy early cutting-edge hardware like 
 Google Glass or Oculus Rift, it will cost you time instead.

 Sorry to say you'll just have to keep panning around for gems, 
 as that's where D is at right now.  Those of us who stick 
 around think the time spent is worth it.
It's not that bad, though. For one, http://code.dlang.org/ has established itself as _the_ central hub for D libraries. Then, there is a redesign of the website underway (albeit slowly), which hopefully will greatly improve visibility of the documentation, tutorials, and of course, should have a link to code.dlang.org in a prominent place. And last but not least, the Wiki has lots of tutorials, though again it's IMO not discoverable enough: http://wiki.dlang.org/Articles http://wiki.dlang.org/Tutorials
Aug 31 2014
parent reply "Joakim" <dlang joakim.airpost.net> writes:
On Sunday, 31 August 2014 at 10:14:05 UTC, Marc Schütz wrote:
 And last but not least, the Wiki has lots of tutorials, though 
 again it's IMO not discoverable enough:
 http://wiki.dlang.org/Articles
 http://wiki.dlang.org/Tutorials
You're moving the goal posts. He specifically asked about D tutorials for "playing sounds, VST design, Gui, 2D/3D using open GL." I don't see anything like that in your links. D programmers are expected to learn D through your links and then apply it towards those topics on their own, whereas other languages provide even more instruction to beginners who want to use D for those subjects, which is what he's asking for. D is not at the stage to provide that yet.
Aug 31 2014
parent "Marc =?UTF-8?B?U2Now7x0eiI=?= <schuetzm gmx.net> writes:
On Sunday, 31 August 2014 at 10:36:52 UTC, Joakim wrote:
 On Sunday, 31 August 2014 at 10:14:05 UTC, Marc Schütz wrote:
 And last but not least, the Wiki has lots of tutorials, though 
 again it's IMO not discoverable enough:
 http://wiki.dlang.org/Articles
 http://wiki.dlang.org/Tutorials
You're moving the goal posts. He specifically asked about D tutorials for "playing sounds, VST design, Gui, 2D/3D using open GL." I don't see anything like that in your links. D programmers are expected to learn D through your links and then apply it towards those topics on their own, whereas other languages provide even more instruction to beginners who want to use D for those subjects, which is what he's asking for. D is not at the stage to provide that yet.
That's true, but your reply sounds overly pessimistic: "this is how a community-backed language works", "you'll just have to keep panning around for gems". I wanted to point out that there is some work underway to improve the situation.
Aug 31 2014
prev sibling next sibling parent "bachmeier" <no spam.net> writes:
On Saturday, 30 August 2014 at 19:19:48 UTC, Sativa wrote:
 I think it would be helpful to have the d lang site host 
 tutorials/lessons on various aspects of D. D is hard to use for 
 certain things like gui's, graphics(ogl, dx, etc), etc... not 
 necessarily because D can't do these things but because the 
 information is not out there.

 If The D site hosted, sort of like a wiki, but with properly 
 designed articles about how to do things in D, maybe more 
 people would start to use it?

 For example,

 I'd like to get into graphics and gui programming using D. I 



 But trying to find coherent information, say, to draw an image 
 on screen using opengl and D is nearly impossible... and way 
 too time consuming, compared to finding similar information 
 using C/C++ or most other popular languages.

 Getting D to work in these scenarios are already complicated 
 enough. Usually it relies on the work of one person who hasn't 
 made it clear how to do it well. I know D can do graphics, I've 
 seen it done... I've even read some tutorials on it... but 
 nothing is clear, relevant, or updated.

 Having a quick way to access stuff in the categories like

 Sound(playing sounds, VST design)

 Graphics(Gui, 2D/3D using open GL, etc...)

 etc...


 e.g., suppose I want to create a vst in D... google "D lang 
 vst", and the only relevant site that comes up is:

 http://le-son666.com/software/vstd/

 Woo hoo! looks like someone did the work for us!

 But seriously? There is just enough information to hang myself. 
 Do I really want to go down this path and potentially waste 
 countless hours trying to get something to work that might not?

 I feel many others go through the same thought processes.

 If there was a wiki like site for D that is based on tutorials 
 and experiences/results then surely it would help a lot of 
 people. If people could contribute there problems or solutions 
 in a unified and connected way, it would be easier to find the 
 relevant information than it is now.

 About 95% of the time when I search for something that I want 
 to do in D, I get a forum post... and about 15% of the time it 
 actually leads to something useful. Maybe bout 5% of the time 
 it actually solves my problem.

 There is just so much junk out there and all the gems are lost. 
 Most of the gems need some polishing to show their true beauty.
Professional tutorials would, of course, be ideal. Unfortunately they take a lot of time and effort to write. There is a middle ground between an API such as the link you've given and writing full-blown tutorials. It's relatively easy to write up a set of examples covering the most common cases. First a "Hello World" example to get started and then a dozen more involved examples. They could be posted on the wiki or put in a Git repo and then linked from the wiki.
Aug 31 2014
prev sibling next sibling parent "Israel" <tl12000 live.com> writes:
On Saturday, 30 August 2014 at 19:19:48 UTC, Sativa wrote:
 I think it would be helpful to have the d lang site host 
 tutorials/lessons on various aspects of D. D is hard to use for 
 certain things like gui's, graphics(ogl, dx, etc), etc... not 
 necessarily because D can't do these things but because the 
 information is not out there.
Youre right about alot of things and nobody here can disagree. Although the situation is different from what you would expect. D is a community backed language so everything is done by the community for the community, even documentation. Tutorials and stuff like that are extremely difficult to find because not everyone has had experience. I myself am trying to understand how to use GFM for graphics and stuff using SDL. Actually, if you want to do some graphics and stuff, look at the gfm code package. "http://code.dlang.org/packages/gfm". Make sure to download and install the SDL library - "https://www.libsdl.org/download-2.0.php". Then add these dependencies to your dub.json file. Everything will just download, compile and work right out of the box. "gfm:core": ">=0.0.0", "gfm:math": ">=0.0.0", "gfm:image": ">=0.0.0", "gfm:sdl2": ">=0.0.0" "https://github.com/d-gamedev-team/gfm/blob/master/sdl2/gfm/sdl2/window.d" This is the crappiest part about D, you have to look through peoples source code and try to understand how to use it. Its terrible i know, but its the only way...
Aug 31 2014
prev sibling parent "Casper =?UTF-8?B?RsOmcmdlbWFuZCI=?= <shorttail gmail.com> writes:
I ported a C++ ray tracer to D for a course, using one of the 
minimalist OpenGL wrappers (some three letter name) and its D 
binding. Once the worst problems had been ironed out, I was using 
a pure C++ tutorial to get things to work displaying graphics. 
There's really not much "D" about doing OpenGL. I've written 
another project in Java and all the code pretty much looks the 
time.

I suppose it would be nice with gluing things together, but 
beyond that it's plain OpenGL.
Sep 02 2014