One of the dangers against which we should warn someone taking this
approach is that J embodies an unusual way of thinking about algorithms.
Matching to keywords in another language only approximates what you need to
know - it doesn't illuminate what's different about the language.  I think
this is what's behind the digressions in the "VB/J" string functions
example I referenced earlier: it's useful to understand that J is doing
general array operations that apply to arrays of numbers, for instance.


On Mon, Feb 10, 2014 at 11:07 AM, Jim Russell <[email protected]> wrote:

> Agree. In particular about NuVov, and add the J reference card, the books,
> the phrases and (what ever happened to) the IX link from the help menu. In
> addition to the main page search box the newcomer needs to learn about wiki
> searches and fourms searches, and findinfiles, the foreign conjunction
> categories, etc.
>
> It is sad that even after 10+ years as a J fan and lurker on the J fourms,
> J is the one language in which I have never become productive, much less
> proficient.
>
> I think a J Glossary, referenced from a more obvious "readme", or "noob
> enter here" starting point to provide an overview of the site, the
> language, and the J libraries would help.
>
> (Or maybe I just don't have enough synapses left in my old age.)
>
> (Raul--yes I am still working on my list of searches/questions I needed as
> I revisited J on my iPhone and iPad.)
>
> > On Feb 10, 2014, at 10:16 AM, Skip Cave <[email protected]> wrote:
> >
> > Ideally, a newbie should be able to type the word "assignment" into the
> > search box on the J Software main page, and get several results,
> including
> > links to Is (local) and Is (global) on the NuVoc and standard vocabulary
> > pages. Additional links to pages discussing assignment in "J for C
> > Programmers", "Learning J" and other doc would be great. Since this
> feature
> > would be oriented to newbies, the NuVoc pages should probably be at the
> top
> > of the list..
> >
> > When learning a new programming language, reading through all the doc
> > causes information overload, at least for me. To get a flavor for the
> > language, I like to start by searching for common programming functions,
> > like assignment, looping, indexing, conditionals, subroutines, etc. Once
> I
> > get an Idea where the information about these concepts reside in the
> > documentation, I will stat reading those sections. Then as I require a
> new
> > function, I will type the common name of that function in the search box,
> > and continue to explore from there. To me, this is a much more efficient
> > way to learn a language, rather that trying to absorb the whole range of
> > syntax and functionality presented in the order the documentation authors
> > want to present it.,
> >
> > Of course, the "common name" for any function depends somewhat on what
> > programing language you are familiar with. That's why it's important to
> > have as many different related keywords as possible for "subroutine".
> >
> > Skip
> >
> > Skip Cave
> > Cave Consulting LLC
> >
> >
> >> On Mon, Feb 10, 2014 at 6:30 AM, Raul Miller <[email protected]>
> wrote:
> >>
> >> If you would put together a list of words (and perhaps phrases?) that
> need
> >> definition, I (or we) would be happy to fill in the definitions, and
> supply
> >> a few small examples.
> >>
> >> We might need to go several rounds of this to adequately satisfy you,
> but
> >> that's ok.
> >>
> >> Or maybe we have an adequate reference to refer you to? But if that were
> >> the case, I imagine the search engines would have found it for you. So
> >> instead let's maybe think about hashing out something that might be a
> >> suitable addition to the J wiki?
> >>
> >> Thanks,
> >>
> >> --
> >> Raul
> >>
> >>
> >>
> >>> On Sun, Feb 9, 2014 at 8:51 PM, Jim Russell <[email protected]>
> wrote:
> >>>
> >>> (Sorry, I got no further than "No," when I put my iphone back in my
> shirt
> >>> pocket and "man boob" sent it.)
> >>>
> >>> More later when I try to recall all the dumb words phrases I was
> >>> fruitlessly trying to find as I played with J on my iPhone this past
> >> week.
> >>>
> >>>> On Feb 9, 2014, at 8:22 PM, Raul Miller <[email protected]>
> wrote:
> >>>>
> >>>> Do you mean like http://www.jsoftware.com/help/dictionary/vocabul.htm
> ?
> >>>>
> >>>> Thanks,
> >>>>
> >>>> --
> >>>> Raul
> >>>>
> >>>>
> >>>>> On Sun, Feb 9, 2014 at 7:06 PM, Jim Russell <[email protected]>
> >>> wrote:
> >>>>> I suspect that a glossary of J (and related programming terms) would
> >>> help a great deal. Or does one exist?
> >>>>>
> >>>>>> On Feb 9, 2014, at 1:30 AM, Skip Cave <[email protected]>
> >> wrote:
> >>>>>>
> >>>>>> 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
> >>>>>
> ----------------------------------------------------------------------
> >>>>> For information about J forums see
> >> http://www.jsoftware.com/forums.htm
> >>>> ----------------------------------------------------------------------
> >>>> For information about J forums see
> http://www.jsoftware.com/forums.htm
> >>> ----------------------------------------------------------------------
> >>> For information about J forums see http://www.jsoftware.com/forums.htm
> >>>
> >> ----------------------------------------------------------------------
> >> For information about J forums see http://www.jsoftware.com/forums.htm
> >>
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>



-- 
Devon McCormick, CFA
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to