New User Experience

Nick Sabalausky a at a.a
Mon Jun 29 15:03:59 PDT 2009


-------------
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 
gets ugly, well, then see disclaimer #1 ;).

- 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.

- Not everyone uses one of the "#1 fastest" browsers (heh, see what I 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 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.

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

And...once again, disclaimer #1 ;)





More information about the Digitalmars-d mailing list