I didn't post about it, but I released Views 2 alpha 5 a few days ago. If you're using PHP4, you want to use the -dev version, though; there's a couple of critical bugs that are PHP4 specific that have since been fixed. Then again, sometime in the next few days (Monday maybe?) I will release Views 2 beta 1, so you may just want to wait.

While working on the Views 2 UI, I've realized for some time that I need to do more in the way of help. For everyone who's already familiar with Views, it's pretty easy to figure out where stuff is. There's a couple of new concepts you have to introduce yourself to and wrap your mind around, but my experience is that most people do that quite nicely.

But there's a couple of things that users who are unfamiliar with Views are going to have real trouble with, and it's not going to be possible to explain things in a place where it will be helpful. But there has to be a way, I've thought.

So I created a new help system. Drupal's built in help system is antiquated and largely not useful; there are several things wrong with it. The first being that all it really does is tack stuff to the top of of pages and sometimes it isn't even used fo rhelp, it's used to add headers to some pages.

The second is that help is part of the codebase, and HTML embedded within PHP is something that is hard to maintain. That's one reason the theme system tries to completely separate it out.

The third is that the actual indexing and availability of help is atrocious. If you're not attaching it to the top of a page, you have to go into the help system itself to get anything, and you have to find this and from most pages it's at least 2-3 links away. There's the 'more help' link that sometimes appears on pages, but for the most part the eyes don't even see this. And it takes you away from the page you're on, anyway.

What I've come up with is a system I've called advanced help that is a framework module developers can build off of. There's a config file and a set of HTML files; these are not code at all, which makes them a great deal safer to work with than PHP code, and there is also a facility to translate them.

Plus, it maintains its own popup, and provides a very easy facility for a module to embed a help icon wherever the author wants it; this icon will bring up help in a popup (or not, if the permission isn't set) and the topic can be directly read.

It supports hierarchical navigation through the breadcrumb, and the .ini file can define the hierarchy.

Finally, it integrates with Drupal's search mechanism, so the help can be indexed and search in a method similar to Windows' built in help system.

This is by no means a perfect system; I only spent about a day building it, and I've already got a small list of things that could be added to it. I probably won't add them myself, but would be more than happy if the community were to add features to this system to make it robust, powerful and core worthy. Given the time it is now, I think there's plenty of time for Drupal 6 modules to really use this system and see what its flaws are; in a couple months time, we can try to put it directly into core for Drupal 7 and replace the built-in help system entirely.

Over the next few days I hope to at least fill in some stub documentation for Views, trying to identify where the documentation links should go and how to organize the text. I need help with this. My plate is so full of stuff to do, I'd really love it if people would step in and help identify what and where to document. There's already a bunch of text by Keith Smith in hook_help; the first order of business will be to relocate that into the new help system, and put in some links. There are some obvious trouble spots, but I think more eyes will really help.

If you're interested in helping, here's what you do:

  1. Go get Views 2.
  2. Play with it for awhile.
  3. Check out the issue queue. this link will get you to the Views 2 queue, at least until another release is rolled (the URL embeds each release NID that qualifies; that's kind of annoying right now, but that's how it works).
  4. If there isn't an appropriate issue, create one, and put in your help text. If you know how to create patches that can add files, great, put in a patch! If not, create a .html file and attach it and note where it should be located.

Thanks!

Help updating the Views 2 development task wiki page

Congratulation on getting Alpha 5 out. I'd like to help by updating the wiki page: http://groups.drupal.org/node/9834

If you want to advise the best way to get that page updated, let me know.

Kieran

I update that page every

I update that page every time I do stuff, so it's actually quite accurate right now. Mostly what's left are the *_convert.inc files, a documentation item or two and the date popup. And a bunch of @todo items marked in the code itself that aren't on the list. Though I could probably spend a few minutes and pull some of those out to specific items.

Oh, I bet you mean with the

Oh, I bet you mean with the documentation.

Fleshing out documentation on the TODO list probably means at least coming up with a list of things that need to be documented. IMO that is going to be subjective; playing with (or getting people who've never used the system) to play with it and see where the best places to put little help icons will be.

Help system

I think this is the first time I've ever heard reference to the lack of a solid help system in Drupal that is part of a module but not part of the .module php files.

.php is an excellent place for API documentation, but it's a really bad place for end-user documentation. hook_help() is great for inline tips, but not very good for extended user documentation.

The admin/help page is OK, but it seems that very few contrib authors put any documentation there, and it's only good for site admin stuff anyway.

Great to see end user help getting a bit of attention.

Summer of Code Help project

Just wanted to drop a pointer to the Summer of Code project that Gurpartap Singh is heading up that looks like there might be some overlap with the Help.module -- http://groups.drupal.org/node/9448

Post new comment

The content of this field is kept private and will not be shown publicly.