Let's not overlook "At Play With J" (APWJ) http://www.jsoftware.com/jwiki/At%20Play%20With%20J You don't have to buy the book. It's all there for free, via the above link.
For what I see being asked for, as a "gentler" introduction than the existing primers, APWJ seems to fit the bill. It certainly got *me* off the ground with J. Nowadays, from my lofty J perspective :-) I wouldn't be able to tell a good beginner's guide from a bad one. On Sat, Mar 16, 2013 at 3:59 PM, Skip Cave <[email protected]> wrote: > Having a suggested "kernel" of J to learn for beginners is not a bad idea. > Linda's proposal to make the J vocabulary more "beginner friendly" is one > that has been proposed before, and even partially implemented. However I > believe that we need to do more than just list a set of J primitives for a > beginner to learn. > > A list of primitves with links to definitions may be enough for a motivated > computer science grad to get going in J, but that is probably not the best > way for the less-motivated and less-technical, who just want to get a > flavor of J. > > The learning curve for any language can be quite steep, particularly if the > student is presented with a large number of concepts right up front. The J > language is particularly bad about doing this, since most all of the > laguage primitives can be displayed on a single page. > > For learning, it is better to introduce a subject's concepts gradually and > serially. In addition, the serial steps should promote a "try this and see > what happens" interactive approach, encouraging the student to experiment > with each concept using a live interpreter. > > This plan is best achieved by using a narrative approach, which > significantly flattens the learning curve. The narrative should lead the > newbie through the basic concepts, having the studen read about, and try > out each concept, one step at a time. > > However, developing such a narrative can be a large project. We already > have several books which attempt to teach J by presenting J concepts in > small steps. While these books do cover the subject well, I believe that > they are still oriented to a technical, computer-science-grad audience. So > even these books make the learning curve too steep for the non-technical, > less-motivated students and casual investigators. We need an easy-to-read > teaching tool that will ease the reader into the world of multi-dimentional > matrices and the operations that can be performed on them. Think of a book > that would fit in the popular series - "J for Dummies". > > There is one book that I believe presents a matrix language in a way that > even the general public could grasp. The book is Gillman & Rose's book "APL > - An Interactive Approach". Years ago, this book taught me APL in a fun and > painless way, and that methodology is still valid today. This style of > teaching tool is the perfect introduction to a complex language such as J > for a less-technical audience.. > > In fact, Gillman &Rose's book would be the perfect introduction to J for > non-technical users. There is just one problem - the book is about APL, not > J. The good news is that J is similar enough to APL that it wouldn't take > much to convert their book to "J- An Interactive Approach", thus creating > a basic easy and fun to read J tutorial. > > In fact, I would propose that the J community would obtain a valuable > learning resource for the J language by simply "translating" Gillman & > Rose's book from APL to J. This would be a considerably smaller project > than trying to author a "J for Dummies" book from scratch, for a > non-technical audience. > > Basically, one could scan in the G&R book, OCR it, and then substitute J > expressions for the APL expressions. Of course, there would need to be some > other updates, modernizing the selectric typewriter nomenclature to > computer keyboard or touchscreens, etc., but it wouldn't be all that big a > project. > > Skip > > On Mar 16, 2013 8:47 AM, "Linda Alvord" <[email protected]> wrote: > >> We are close to selecting a "kernel" of the language. We need to pay close >> attention to how those concepts are defined in the Vocabulary. Don't remove >> all the wonderful complex examples! Just add more carefully chosen >> examples. When the new user consults one of those terms, they should only >> encounter even simpler concepts in the definition. Each example that is >> looked up should encourage them to be more fluent "speaking" the >> language. >> >> Linda >> >> >> Original Message----- >> From: p.rogramming-bounces@ forums.jsoftware.com [mailto:programming-b >> [email protected]] On Behalf Of Linda Alvord >> Sent: Saturday, March 16, 2013 9:17 AM >> To: [email protected] >> Subject: Re: [Jprogramming] Learning J language - initial thoughts >> >> My guess is that most experienced J users rely first on the Vocabulary. It >> is an easier starting point to find answers than the primer, phrases, >> index, >> dictionary and other references. >> >> I would like see a Vocabulary that assists the beginner in the same way >> that >> it assists our most skillful users. >> >> Do we really need more options to explore to find the panacea for learning >> to "speak" J? Couldn't we just make modest improvement to our best source >> for understanding the language? >> >> Linda >> ll >> -----Original Message----- >> From: [email protected] >> [mailto:[email protected]] On Behalf Of Raul Miller >> Sent: Saturday, March 16, 2013 8:09 AM >> To: [email protected] >> Subject: Re: [Jprogramming] Learning J language - I nitial thoughts >> >> On Sat, Mar 16, 2013 at 3:36 AM, Linda Alvord <[email protected]> >> wrote: >> > How many terms will you have to look up before you understand this? >> >> I have been wishing for a kind of wiki markup where I could mark a region >> of >> text as requiring some list of topics on the part of the reader, and then >> also identifying a topic which the the text addresses. >> >> If something like this could be designed, we could present initially simple >> definitions to the reader and reveal further detail as the reader visits >> other topics. >> >> Complexities here include the implementation mechanism (some people would >> prefer an automated approach - using cookies, perhaps - where at other >> times >> they would prefer a manual approach - using menus, perhaps), and >> identifying >> topics (addition, for example, could include topics of numbers, identities, >> rank, and grammar with associativity and commutativity falling under >> "grammar", and numbers themselves have a variety of types including >> counting >> of physical objects, promises for the future, measurements of distance and >> collections of different kinds of numbers [apples, oranges and eggs]). >> Unfortunately, this is a really good example of "it's simple when you >> understand it but not until then", and the layering means that you can >> understand something simple while not noticing the relevance of another >> issue. >> >> Thanks, >> >> -- >> Raul >> ---------------------------------------------------------------------- >> 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
