I was looking over NuVoc the other day, and thinking how it helped me learn
the J primitives. My next thought was how I wished that we could fix the J
search engine so that when newbies searched for stuff in the J wiki using
traditional programming lingo, they would automatically find the J
equivalent functions.

When J gave new names to all the J programming elements, it was all for
good reasons. However that made it really hard to learn J by searching the
wiki for programming concepts, using common programming names. When I am
programming in J, I often come to a point where I know what I want to do,
and I know what most other programming languages would call what I want to
do. If I search for that name in the J wiki though, I usually come up
empty-handed.

What we really need in NuVoc, as well as all of the J doc, is a set of
common-use keywords attached to every J concept. Thus if a newbie searches
for "assignment", he will get the vocabulary and dictionary pages for  Is
(local) and Is (global), When he searches for "indexing" he will get the
Catalog pages. I could go on like this for quite awhile.

Also  when newbies or anyone stumbles upon a new concept in any of the J
doc, we should make it easy for that person to add new keywords to that doc
page. Hopefully the keywords they add will make it easier for the next
person to find that concept in the future.

So my proposal is that each NuVoc page (and all J doc pages for that
matter) needs a list of keywords at (say) the bottom of the page, giving
common programming names for the J concept on that page. In that way, a
newbie searching for "assignment" would at least have a chance of finding
what he is looking for.

However, my idea is more that just putting a list of keywords on every doc
page, As has been discussed on the J mail list, Newbies who are trying to
learn J, know what they are looking for, when they search for a particular
concept. What If we could make it so when someone finally does find what
they were looking for, they could easily add words to the keyword list on
the doc page they found. They could add the words that they were using to
(unsuccessfully) search for that concept. Then each doc page would start to
collect keywords that people commonly use for that concept, making it much
easier for newbies (and even casual J user oldies like me) to find that
concept in the future.

There needs to be an easy (but controlled, and perhaps curated) way to put
a new keyword on any doc page, while that page is being viewed. There needs
to be a brief statement above the keyword block explaining what it is, how
to add a keyword, and why one should do it.

I believe that in the long run, this keyword scheme could have a bigger
impact on reducing the "steep learning curve" of J than almost any other
documentation mechanism.

Skip

Skip Cave
Cave Consulting LLC
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to