www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - New User Experience

reply "Nick Sabalausky" <a a.a> writes:
-------------
Some disclaimers first:

- It's possible it might be incredibly stupid for me to bring this up while 
there's been some recent heated debate about similar things. So if this ends 
up taking a turn the wrong way, feel free to place all the blame for it on 
me. Seriously. I am the one lighting a match near gasoline here, and I 
realize it, so I'm hoarding all responsibility for it in advance. It's my 
fault and responsibility. Mine mine mine. You can't have it! Mine! :)

- Nothing in this post is intended to be any jab at anybody, except perhaps 
myself (ie see previous disclaimer). Not that I'm saying "You're all likely 
to take it all the wrong way, ya big brutes!" or anything like that ;) Just 
want to be clear.

- Nothing in this post is intended to be a complaint of any sort. Just 
trying to be helpful. Or if it turns out I'm just spouting out worthless 
bikeshedy gibberish, well, I'll just have to live with that :)

- Nothing in this post is intended to be expectations or demands, or "we 
must do this" or anything like that. If some good comes out if it, great. If 
it's just useless crap we all already know and agree on, then fine, no harm 
done. If it's all terrible ideas and nothing comes of it, again, ok. If it 


- I'm not trying to pull a 
"talk-about-doing-something-instead-of-actually-helping-out-myself". I'm 
willing to try to help out with any of this that I'm able to. But I figure 
some of this is probably better to have some open discussion about *before* 
committing to. Not that I'm trying to be lazy or a procrastinator, either.

- Some other disclaimer stuff here. Misc. Etc. Whatever. Blah. Hello World. 
42.

-------------

Heh, ok, so:

There's been some really promising and inspiring initiative recently about a 
good final perpetually up-to-date D all-in-one installer. Obviously, that's 
great for new users (and existing ones too). That's gotten me thinking about 
The New-D-User Experience, which I think is something we've all cared a lot 
about for quite some time, and it's often worked its way into various 
conversations.

I'm hoping that it might be useful to try to enumerate the most important 
improvements to D's new user experience ones in one place, see how much of a 
consensus emerges, and see if there's anything we can/can't/should/shouldn't 
do about any of them, etc. Maybe even use it as a road-map reference of some 
sort.

So, my proposed list, in no order, based on things I've 
seen/heard/agree-with/etc (ie, not trying to steal anyone's ideas/thunder, 
in fact many of these are things we've all heard/said a lot, I'm mainly just 
trying to put them all together in one place here. And again, no insult is 
meant to anyone or anyone's work by anything in here, in fact I think 
everyone's done a great job on all these things, just looking at making 
things even better):

------------

Tools:

- The D installer/manager stuff, obviously (but there's already work and 
discussion going on about that).

------------

digitalmars.com/d:

- Being the official entry-point to all things D, www.digitalmars.com/d 
should take people directly to D1 
(http://www.digitalmars.com/d/1.0/index.html) instead of essentially a D2 
home that links primarily to D2 pages.

- Right there on www.digitalmars.com/d it should be made very clear that D1 
is the current standard and used by most libs, D2 is 
unstable/in-development. And either there or on the main D2 page that D2 may 
require some porting, but not too much, and primarily only for things 
relating to X, Y or Z, whatever X, Y and Z may actually be.

- Somewhere prominent (buy maybe not too prominent? FAQ page, maybe?), there 
should be an admission of the Phobos/Tango situation (because people are 
going to find out anyway) together with a well-written explanation of 
why/how it occurred, why people shouldn't just dismiss D because of it, 
what's being done about it, DRuntime, etc.

- digitalmars.com/d should be converted to run on some sort of wiki or 
content management software so that, not necessarily the public, but at 
least a select few individuals can help keep "official" content/links/etc 
up-to-date without Walter needing to be bothered to take extra time do it. 
The D Wiki is great, but it's existence isn't exactly obvious for someone 
coming in through digitalmars.com/d. This would solve that and keep the 
whole thing relatively future-proof.

- digitalmars.com/d (Sorry, I don't mean to keep picking on digitalmars.com, 
it's just that it probably is the most relevant site to the new user 
experience. We care about it!) should somehow treat digitalmars.D.learn as 
the "main" D newsgroup and/or lead new users there instead of here. And 
digitalmars.D should be treated as more advanced. Maybe some minor name 
changes might be in order after all. I mean, "digitalmars.D" does make it 
sound like it's the main ng, and "digitalmars.D.learn" makes it sound like 
getting-started/newbies-only stuff. (Yea, I know we've been over that 
before, sorry.)

------------

DSource:

-Can't tell what's old/new/popular/abandoned/stable/alpha/etc. At the very 
lest, a hand-picked "top star projects" added the top would make a big 
difference. We could do some sort of formal or informal voting or rough 
consensus here to be fair. Or not.


there?). For those people, like me, when they go to the "Projects" link, the 
page really comes across like it's hung or broken even though it says 
"Loading...". And it really takes awhile. That needs to be improved. Maybe 
shifting some of whatever processing is going on to the server side and 
caching it.

- When you're on one of the pages for a specific project, the big red 
visible "Forum" link (typically the only link to the forums) takes the user 
to the main forum page, not the project's forum. And there's so many 
projects listed there, it can be difficult to find the forum for the project 
you were already looking it (unless you're a non-newbie who's gotten used to 
automatically copying the project name before clicking "forums" and then 
going straight to "find in page". But, well, that's clumsy.)

I'd be willing to help out with any of these DSource things.

------------

Tango:

- I could be wrong, but I don't think "search" currently searches the API 
docs. At the very least, an online "What module is this 
class/struct/function/template in?" tool could be very helpful, because I've 
found myself needing that a lot. I've gotten used to using my editor's "Find 
In Files" on the tango include dir, but new users could be turned off.

- I'm probably biased on this, and trying to rationalize it as more of a 
"new user experience" issue than it really is, but the regex engine's been 
broken with open tickets for a while now. Ok, maybe not truly broken, but 
buggy enough that I haven't felt comfortable trusting it. Again, maybe I'm 
blowing it out of proportion, but I can't help think people might be turned 
off if they see that something that's become as ubiquitous as regexes are 
unreliable in D's most popular library.

------------


Jun 29 2009
next sibling parent reply BCS <none anon.com> writes:
Hello Nick,

 

 did there?). For those people, like me, when they go to the "Projects"
 link, the page really comes across like it's hung or broken even
 though it says "Loading...". And it really takes awhile. That needs to
 be improved. Maybe shifting some of whatever processing is going on to
 the server side
IIRC the slow load is because it is on the server side. Some scipt is loading the full set of projects every time the page loads.
 and caching it.
Um, Yah. Lets get it chached...
Jun 29 2009
parent reply "Nick Sabalausky" <a a.a> writes:
"BCS" <none anon.com> wrote in message 
news:a6268ff76dc8cbc6e39c453506 news.digitalmars.com...
 Hello Nick,


 did there?). For those people, like me, when they go to the "Projects"
 link, the page really comes across like it's hung or broken even
 though it says "Loading...". And it really takes awhile. That needs to
 be improved. Maybe shifting some of whatever processing is going on to
 the server side
IIRC the slow load is because it is on the server side. Some scipt is loading the full set of projects every time the page loads.
There's definitely at least something going on client side. Otherwise there wouldn't be that "Loading..." message that shows up at first and dissapears when it's loaded. Maybe it's just something trivial. But while it's loading my browser doesn't *seem* to behave as if it's waiting for content from the server...I really should take a look at that page source...
Jun 29 2009
parent reply Jarrett Billingsley <jarrett.billingsley gmail.com> writes:
On Mon, Jun 29, 2009 at 7:29 PM, Nick Sabalausky<a a.a> wrote:
 "BCS" <none anon.com> wrote in message
 news:a6268ff76dc8cbc6e39c453506 news.digitalmars.com...
 Hello Nick,


 did there?). For those people, like me, when they go to the "Projects"
 link, the page really comes across like it's hung or broken even
 though it says "Loading...". And it really takes awhile. That needs to
 be improved. Maybe shifting some of whatever processing is going on to
 the server side
IIRC the slow load is because it is on the server side. Some scipt is loading the full set of projects every time the page loads.
There's definitely at least something going on client side. Otherwise there wouldn't be that "Loading..." message that shows up at first and dissapears when it's loaded. Maybe it's just something trivial. But while it's loading my browser doesn't *seem* to behave as if it's waiting for content from the server...I really should take a look at that page source...
It basically consists of a div that says "Loading..." which is replaced by the content loaded asynchronously. Would it help if it had one of those spinny-wheel images? ;)
Jun 29 2009
next sibling parent "Nick Sabalausky" <a a.a> writes:
"Jarrett Billingsley" <jarrett.billingsley gmail.com> wrote in message 
news:mailman.325.1246318374.13405.digitalmars-d puremagic.com...
 On Mon, Jun 29, 2009 at 7:29 PM, Nick Sabalausky<a a.a> wrote:
 "BCS" <none anon.com> wrote in message
 news:a6268ff76dc8cbc6e39c453506 news.digitalmars.com...
 Hello Nick,


 did there?). For those people, like me, when they go to the "Projects"
 link, the page really comes across like it's hung or broken even
 though it says "Loading...". And it really takes awhile. That needs to
 be improved. Maybe shifting some of whatever processing is going on to
 the server side
IIRC the slow load is because it is on the server side. Some scipt is loading the full set of projects every time the page loads.
There's definitely at least something going on client side. Otherwise there wouldn't be that "Loading..." message that shows up at first and dissapears when it's loaded. Maybe it's just something trivial. But while it's loading my browser doesn't *seem* to behave as if it's waiting for content from the server...I really should take a look at that page source...
It basically consists of a div that says "Loading..." which is replaced by the content loaded asynchronously. Would it help if it had one of those spinny-wheel images? ;)
Ha ;) But, IMHO, a synchronous load would be much less confusing.
Jun 29 2009
prev sibling parent reply "Nick Sabalausky" <a a.a> writes:
"Jarrett Billingsley" <jarrett.billingsley gmail.com> wrote in message 
news:mailman.325.1246318374.13405.digitalmars-d puremagic.com...
 On Mon, Jun 29, 2009 at 7:29 PM, Nick Sabalausky<a a.a> wrote:
 "BCS" <none anon.com> wrote in message
 news:a6268ff76dc8cbc6e39c453506 news.digitalmars.com...
 Hello Nick,


 did there?). For those people, like me, when they go to the "Projects"
 link, the page really comes across like it's hung or broken even
 though it says "Loading...". And it really takes awhile. That needs to
 be improved. Maybe shifting some of whatever processing is going on to
 the server side
IIRC the slow load is because it is on the server side. Some scipt is loading the full set of projects every time the page loads.
There's definitely at least something going on client side. Otherwise there wouldn't be that "Loading..." message that shows up at first and dissapears when it's loaded. Maybe it's just something trivial. But while it's loading my browser doesn't *seem* to behave as if it's waiting for content from the server...I really should take a look at that page source...
It basically consists of a div that says "Loading..." which is replaced by the content loaded asynchronously. Would it help if it had one of those spinny-wheel images? ;)
I've been browsing through the html/js code for that page. Looks it what it does is asynchronously load an XML representation (generated by the server) of all the project information and then, on the client-side, that XML is parsed and used to generate the project list/links. Of course, I can't be certain just from looking at that where most of the time is being spent, client or server, but judging by the fact that I'm stubbornly holding on to FF2 (yea, I really, really hate FF3, and I am really, really picky) and nobody else seems to be complaining about the loading, I'd guess it's probably mostly the client code that's taking all the time. Also, a couple of the js files seem to have their entire content repeated. Weird. But I'm probably getting way offtopic now...
Jun 29 2009
next sibling parent reply Jarrett Billingsley <jarrett.billingsley gmail.com> writes:
On Mon, Jun 29, 2009 at 8:22 PM, Nick Sabalausky<a a.a> wrote:

 I've been browsing through the html/js code for that page. Looks it what it
 does is asynchronously load an XML representation (generated by the server)
 of all the project information and then, on the client-side, that XML is
 parsed and used to generate the project list/links. Of course, I can't be
 certain just from looking at that where most of the time is being spent,
 client or server, but judging by the fact that I'm stubbornly holding on to
 FF2 (yea, I really, really hate FF3, and I am really, really picky) and
 nobody else seems to be complaining about the loading, I'd guess it's
 probably mostly the client code that's taking all the time.
I use FF3 and there's still a considerable delay (~7s). Of course, it's _the Internet_ over a questionable Comcast connection. Half the time it takes servers several seconds to respond to static page requests anyway.
Jun 29 2009
next sibling parent Leandro Lucarella <llucax gmail.com> writes:
Jarrett Billingsley, el 29 de junio a las 20:30 me escribiste:
 On Mon, Jun 29, 2009 at 8:22 PM, Nick Sabalausky<a a.a> wrote:
 
 I've been browsing through the html/js code for that page. Looks it what it
 does is asynchronously load an XML representation (generated by the server)
 of all the project information and then, on the client-side, that XML is
 parsed and used to generate the project list/links. Of course, I can't be
 certain just from looking at that where most of the time is being spent,
 client or server, but judging by the fact that I'm stubbornly holding on to
 FF2 (yea, I really, really hate FF3, and I am really, really picky) and
 nobody else seems to be complaining about the loading, I'd guess it's
 probably mostly the client code that's taking all the time.
I use FF3 and there's still a considerable delay (~7s). Of course, it's _the Internet_ over a questionable Comcast connection. Half the time it takes servers several seconds to respond to static page requests anyway.
It's really slow here too (FF3 with a regular 1mbps ADSL connection). I find that delay really annoying too and I agree it looks like nothing is going on there, because FF don't show any progress, so I agree too that if the slowness can't be fixed, a client-side progress or a simple synchronous load would be better than nothing. -- Leandro Lucarella (luca) | Blog colectivo: http://www.mazziblog.com.ar/blog/ ---------------------------------------------------------------------------- GPG Key: 5F5A8D05 (F8CD F9A7 BF00 5431 4145 104C 949E BFB6 5F5A 8D05) ---------------------------------------------------------------------------- Ingeniero Juanjo Charlante, Linux es como una mermelada?
Jun 29 2009
prev sibling parent Daniel Keep <daniel.keep.lists gmail.com> writes:
Jarrett Billingsley wrote:
 I use FF3 and there's still a considerable delay (~7s).  Of course,
 it's _the Internet_ over a questionable Comcast connection.  Half the
 time it takes servers several seconds to respond to static page
 requests anyway.
I had a look at Firebug, and it looks like it's taking the server *six to ten seconds* to respond to the asynchronous load request. Sending the data itself only takes 2ms.
Jun 29 2009
prev sibling parent Robert Clipsham <robert octarineparrot.com> writes:
Nick Sabalausky wrote:
 "Jarrett Billingsley" <jarrett.billingsley gmail.com> wrote in message 
 news:mailman.325.1246318374.13405.digitalmars-d puremagic.com...
 On Mon, Jun 29, 2009 at 7:29 PM, Nick Sabalausky<a a.a> wrote:
 "BCS" <none anon.com> wrote in message
 news:a6268ff76dc8cbc6e39c453506 news.digitalmars.com...
 Hello Nick,


 did there?). For those people, like me, when they go to the "Projects"
 link, the page really comes across like it's hung or broken even
 though it says "Loading...". And it really takes awhile. That needs to
 be improved. Maybe shifting some of whatever processing is going on to
 the server side
IIRC the slow load is because it is on the server side. Some scipt is loading the full set of projects every time the page loads.
There's definitely at least something going on client side. Otherwise there wouldn't be that "Loading..." message that shows up at first and dissapears when it's loaded. Maybe it's just something trivial. But while it's loading my browser doesn't *seem* to behave as if it's waiting for content from the server...I really should take a look at that page source...
It basically consists of a div that says "Loading..." which is replaced by the content loaded asynchronously. Would it help if it had one of those spinny-wheel images? ;)
I've been browsing through the html/js code for that page. Looks it what it does is asynchronously load an XML representation (generated by the server) of all the project information and then, on the client-side, that XML is parsed and used to generate the project list/links. Of course, I can't be certain just from looking at that where most of the time is being spent, client or server, but judging by the fact that I'm stubbornly holding on to FF2 (yea, I really, really hate FF3, and I am really, really picky) and nobody else seems to be complaining about the loading, I'd guess it's probably mostly the client code that's taking all the time. Also, a couple of the js files seem to have their entire content repeated. Weird. But I'm probably getting way offtopic now...
While we're off topic... Firefox 3.5 is released later today, you might wanna give that a shot. That or switch to any other modern browser that doesn't have known unpatched security vulnerabilities in ;)
Jun 30 2009
prev sibling next sibling parent reply Robert Clipsham <robert octarineparrot.com> writes:
Nick Sabalausky wrote:
 digitalmars.com/d:
Agreed, the initial entry point to D for most people is this site, it would be awesome would undertake the task of redesigning it to be more user friendly and point the newbies in the right direction.
 DSource:
I believe there's quite a lot planned for dsource, but there just isn't the man power to do it... I'm sure if you picked something to do and got in touch with Brad he'd be more than willing to let you help :) There's a (sort of) to do list at http://www.dsource.org/projects/dsource/report/1 if you want to help with things that are already planned.
Jun 29 2009
parent "Nick Sabalausky" <a a.a> writes:
"Robert Clipsham" <robert octarineparrot.com> wrote in message 
news:h2bhmo$1nid$1 digitalmars.com...
 Nick Sabalausky wrote:
 digitalmars.com/d:
Agreed, the initial entry point to D for most people is this site, it would be awesome would undertake the task of redesigning it to be more user friendly and point the newbies in the right direction.
Don't leave me hanging in suspense! *Who* would it be awesome if (un)said person undertook the task?? :)
 DSource:
I believe there's quite a lot planned for dsource, but there just isn't the man power to do it... I'm sure if you picked something to do and got in touch with Brad he'd be more than willing to let you help :)
Yea, I think I'll do that.
 There's a (sort of) to do list at 
 http://www.dsource.org/projects/dsource/report/1 if you want to help with 
 things that are already planned.
Thanks, I'll take a look.
Jun 29 2009
prev sibling next sibling parent reply Jesse Phillips <jessekphillips gmail.com> writes:
On Mon, 29 Jun 2009 18:03:59 -0400, Nick Sabalausky wrote:



 
 digitalmars.com/d:
 
 - Being the official entry-point to all things D, www.digitalmars.com/d
 should take people directly to D1
 (http://www.digitalmars.com/d/1.0/index.html) instead of essentially a
 D2 home that links primarily to D2 pages.
 
 - Right there on www.digitalmars.com/d it should be made very clear that
 D1 is the current standard and used by most libs, D2 is
 unstable/in-development. And either there or on the main D2 page that D2
 may require some porting, but not too much, and primarily only for
 things relating to X, Y or Z, whatever X, Y and Z may actually be.
I am hoping to get Wiki4D into this state. It would be better on the official site, but I'm hoping that people will be able to use Wiki4D to navigate the official pages. I've already restructured the site, but it still has a lot of missing content.
 - Somewhere prominent (buy maybe not too prominent? FAQ page, maybe?),
 there should be an admission of the Phobos/Tango situation (because
 people are going to find out anyway) together with a well-written
 explanation of why/how it occurred, why people shouldn't just dismiss D
 because of it, what's being done about it, DRuntime, etc.
It is more of a community issue than a language issue. Though it might be appropriate mention and point to community maintained page about it i.e. http://www.prowiki.org/wiki4d/wiki.cgi?StandardLib Another thing I need to clean up to help explain the current situation.
 - digitalmars.com/d should be converted to run on some sort of wiki or
 content management software so that, not necessarily the public, but at
 least a select few individuals can help keep "official"
 content/links/etc up-to-date without Walter needing to be bothered to
 take extra time do it. The D Wiki is great, but it's existence isn't
 exactly obvious for someone coming in through digitalmars.com/d. This
 would solve that and keep the whole thing relatively future-proof.
The issues with this is that the Phobos docs are generated ddoc files. It wouldn't be a good mix to have part wiki part not wiki. I also don't think this would be necessary, Walter would probably be willing to let the select few restructure it with the current code. Also I don't see this working out considering how poorly Wiki4D has been kept up-to-date.
 - digitalmars.com/d (Sorry, I don't mean to keep picking on
 digitalmars.com, it's just that it probably is the most relevant site to
 the new user experience. We care about it!) should somehow treat
 digitalmars.D.learn as the "main" D newsgroup and/or lead new users
 there instead of here. And digitalmars.D should be treated as more
 advanced. Maybe some minor name changes might be in order after all. I
 mean, "digitalmars.D" does make it sound like it's the main ng, and
 "digitalmars.D.learn" makes it sound like getting-started/newbies-only
 stuff. (Yea, I know we've been over that before, sorry.)
Good idea, I'll work it into Wiki4D's structure. Can't do much about digitalmars.com
 
 DSource:
 
 -Can't tell what's old/new/popular/abandoned/stable/alpha/etc. At the
 very lest, a hand-picked "top star projects" added the top would make a
 big difference. We could do some sort of formal or informal voting or
 rough consensus here to be fair. Or not.
I'm going to work out something on Wiki4D where only usable projects are listed and common ones are more prominent. I think the second biggest issues with projects is what is supported. D1.x or D2.x uses Phobos or Tango. Also platform support is probably one.
Jun 29 2009
parent reply "Nick Sabalausky" <a a.a> writes:
"Jesse Phillips" <jessekphillips gmail.com> wrote in message 
news:h2bsqf$2374$1 digitalmars.com...
 On Mon, 29 Jun 2009 18:03:59 -0400, Nick Sabalausky wrote:

 - Somewhere prominent (buy maybe not too prominent? FAQ page, maybe?),
 there should be an admission of the Phobos/Tango situation (because
 people are going to find out anyway) together with a well-written
 explanation of why/how it occurred, why people shouldn't just dismiss D
 because of it, what's being done about it, DRuntime, etc.
It is more of a community issue than a language issue.
That's true, but it is something that affects all users of the language.
 - digitalmars.com/d should be converted to run on some sort of wiki or
 content management software so that, not necessarily the public, but at
 least a select few individuals can help keep "official"
 content/links/etc up-to-date without Walter needing to be bothered to
 take extra time do it. The D Wiki is great, but it's existence isn't
 exactly obvious for someone coming in through digitalmars.com/d. This
 would solve that and keep the whole thing relatively future-proof.
The issues with this is that the Phobos docs are generated ddoc files. It wouldn't be a good mix to have part wiki part not wiki. I also don't think this would be necessary, Walter would probably be willing to let the select few restructure it with the current code.
Good points.
 Also I don't see
 this working out considering how poorly Wiki4D has been kept up-to-date.
I could very well be completely wrong, but I suspect that may be partly because people know that Wiki4D tends to not be particularly visible to newcomers coming in through the main digitalmars site - ie the very people who would get the most usefulness from reading the wiki (not that the rest of us don't find it useful), and are thus discouraged from making the effort. At the very least, digitalmars.com/d could really use to make Wiki4D extremely visible and obvious, like an officially sanctioned third party D resource, or something like that. In fact, a major reason for my suggestion that digitalmars.com/d be updatable by more people than Walter (if it isn't already) is so that sites like Wiki4D could be given the prominence and visibility they need in order to accomplish their goals.
Jun 29 2009
parent Jesse Phillips <jessekphillips gmail.com> writes:
On Mon, 29 Jun 2009 23:59:03 -0400, Nick Sabalausky wrote:

 At the very least, digitalmars.com/d could really use to make Wiki4D
 extremely visible and obvious, like an officially sanctioned third party
 D resource, or something like that. In fact, a major reason for my
 suggestion that digitalmars.com/d be updatable by more people than
 Walter (if it isn't already) is so that sites like Wiki4D could be given
 the prominence and visibility they need in order to accomplish their
 goals.
Interesting thing I discovered while doing this work, Wiki4D is used as the host for Documentation Comments, the comments/Wiki link at the top of every page. In the past I personally was afraid to point new users to Wiki4D, and the reason for that is I couldn't even find my way around... some links would end up in the strangest places, everyone wanted to improve the content so they create their own page instead of modify an existing one. You ended up with not one thing out dated, but two or three of the same thing out dated. In any case, once I have completed what I want to get done, I'm going to see about getting Walter to link to the homepage a little more than just the D Wiki link under "Community."
Jun 29 2009
prev sibling parent Jason House <jason.james.house gmail.com> writes:
 - I'm probably biased on this, and trying to rationalize it as more of a 
 "new user experience" issue than it really is, but the regex engine's been 
 broken with open tickets for a while now. Ok, maybe not truly broken, but 
 buggy enough that I haven't felt comfortable trusting it. Again, maybe I'm 
 blowing it out of proportion, but I can't help think people might be turned 
 off if they see that something that's become as ubiquitous as regexes are 
 unreliable in D's most popular library.
 
Regex was absolutely horrible for me too.
Jun 29 2009