That's why a search for "looping" should probably also point to a discussion of "how to avoid loops in J, and why you should". Each search term should provide links to both the closest J equivalent to that concept, as well as recommended J approaches This will help introduce newbies to these new concepts *as they need them*, rather that making a newbie go through all the J doc, just to find the one concept they need..
Skip Cave Cave Consulting LLC On Mon, Feb 10, 2014 at 10:17 AM, Devon McCormick <[email protected]>wrote: > 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 > ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
