> I can tell you categorically that when Ken wrote the dictionary > (or anything else), making himself look smart was not one > of the considerations.
Let me jump in here to say I exclude Ken unconditionally from any of my strictures about math teachers. Just the opposite: I count him (and his JSoftware associates) among the good guys. I knew I was being controversial. There's a lot of water gone under this bridge for me. Once, as course leader for a BA in IT, I expelled the mathematicians for teaching an opaque subsidiary course (to make themselves look smart, as I was sure) and failing all our best students, bringing them back for re-sits in the summer vacation. So a traditional math module, hitherto deemed an essential prerequisite, was replace by what was, in effect, how to use the formula part of the Excel interface. Subsequently I put it around that I (a math PhD) was henceforth an "ex-mathematician"! ;-) But all this happened in 1987 and the world has moved on. In particular J has come along, to replace a mystified 17-cent notation with one that any student can experiment with and master at home for free. I'm sorry I dusted off my antiquated prejudices against math teachers. But I do rather reach for my Browning when I get a sniff of the old methods. Some of the introductory texts in J are excellent. All the problems encountered by J novices would disappear if only they'd take 2 weeks out to study them cover to cover. But I claim it is possible to write on-line help material which doesn't demand this investment -- at least not up-front. Ian On Mon, Feb 8, 2010 at 7:31 PM, Roger Hui <[email protected]> wrote: > I can tell you categorically that when Ken wrote the dictionary > (or anything else), making himself look smart was not one > of the considerations. > > The question of "what is this for?" has been answered abundantly, > but not in the dictionary, a reference document. The answers > are provided in the "Introduction" part of the "J Introduction > and Dictionary" and the various application papers, such as > http://www.jsoftware.com/jwiki/Essays > > > > ----- Original Message ----- > From: Ian Clark <[email protected]> > Date: Monday, February 8, 2010 10:59 > Subject: Re: [Jprogramming] The Accessible Dictionary > To: Programming forum <[email protected]> > >> Harvey, you've given me an idea for another "statutory'' link on each >> page: "[Motivation]". >> >> When I learned mathematics it was the Fermat/Gauss tradition: cover >> your tracks and let the student work hard to follow you. Wow- >> 'em. Make >> yourself look smart. Play to the good students and devil take the >> rest. >> (Imperial College really did fire 30% of students the first >> year, and >> 30% the second. But hey! -- it was the baby boom). >> >> But when I came to teach students myself, they wanted to know: >> "why do >> I have to learn all this?" ... and I was supposed to tell them. >> >> But I sympathise with the latter view. Students need motivation. The >> motivation of finding out things nobody else can attain to doesn't >> recruit enough students to fill the course. >> But Mathematics is not difficult. There's just this tradition of >> making it look so. >> Ditto (...peace, folx...) J. >> >> Ian >> >> >> On Mon, Feb 8, 2010 at 6:41 PM, PackRat <[email protected]> wrote: >> > Ian Clark wrote: >> >> Can we hear from some real novices? That is, ones who are >> capable of >> >> introspecting while they problem-solve? >> > >> > and Raul Miller wrote: >> >> should some pages have introductory/advanced structures where we >> >> first introduce the reader to some essential cases and then >> come back >> >> and treat the operation with more rigor? >> > >> > I'm going to go out on a limb and suggest that many, if not most, >> > proficient people here have come to J from APL. Frankly, that gives >> > you a HUGE conceptual advantage over newbies like me who lack >> an APL >> > background. >> > >> > In my opinion, as a newbie, there are two concepts that have >> to be >> > introduced at the very beginning and repeated over and over at every >> > opportunity for those who are brand new to J: (1) the concept of >> > working with data as an "all-at-once" array rather than as discrete >> > items, and (2) the concept of rank. Of course, these concepts cross >> > all levels of understanding, and that's part of the advantage >> and need >> > of repeating them in different usage environments and in different >> > examples. I'm getting better with the first concept in my >> elementary J >> > programming efforts, but the second is still challenging. >> (The first >> > is quite challenging to those who have done programming before >> and are >> > used to thinking in terms of dealing with array data via loops.) >> > >> > Another thing that I think should be addressed with each >> primitive is >> > WHY you would ever want to use that primitive--what's it good for? >> > What's it good in combination with, and why? As a newbie, this >> > question of WHY was always one of the foremost questions in my >> mind. I >> > would look at Dictionary examples and think, "Well, THAT'S >> stupid! Why >> > would anyone ever want to do that? What practical use is >> that?" (My >> > feeling was also partly engendered because many Dictionary examples >> > don't indicate what the point of the example is. It might be >> obvious> to a J aficionado but not necessarily to a beginner. >> Although a >> > meditative trance over an example may be how some learn, it's >> not my >> > learning style. Show me "real life", practical examples.) >> When I know >> > WHY a primitive is used (for what purpose or purposes), then I >> can use >> > it as a building block to put together with other building >> blocks to >> > come up with a solution to a problem. >> > >> > Also, in learning in general, some beginning material just has >> to be >> > learned by rote until greater understanding is achieved. An >> example is >> > the addition table: just accept (and use) the fact that 2 + 2 >> = 4; >> > you'll see why later on. Or, "t-h-e" is the word "the": just accept >> > (and use) that fact of the English language. "Sight words" don't >> > follow phonetic rules and just have to be learned by rote. >> Thus, as I >> > see it, there are some basic J verbal constructions to get >> things done >> > (such as reading/writing an array from/to a file) that are >> just going >> > to have to be accepted on faith by newbies and learned by >> rote, so that >> > they can use newly learned primitives with data that's >> meaningful to >> > them. My point with file access is that "real" data that >> newbies may >> > have worked with all their lives exists in files, not in artificial, >> > hand-typed data as arguments in an example or a demo. Some of the >> > examples in the new project should include "real life" ways of >> working> with data at simple levels of understanding (without >> *initially*> worrying about the format--rows, columns, etc.--of >> the data, although >> > format obviously plays a later role in accessing items of data). >> > >> > I frankly admit that my concerns here are not so much with the >> curious> Rosetta Code person but with people who see the value >> of J and want to >> > devote serious effort to learning it. This is the kind of >> thing I >> > tried to emphasize in my own materials for professional colleagues >> > before I retired, and I applaud any efforts here to assist with >> > learning J. In a sense, if you really want to experience the >> challenge> of developing materials for beginners, think of it in >> terms of helping >> > middle grade and upper grade children (grades 4-8) to learn J >> and who >> > may not be particularly interested in math (in other words, perhaps >> > more interested in the humanities than in the sciences). >> After all, >> > thinking and problem solving are what J is all about, and that >> need not >> > be restricted to the field of mathematics. >> > >> > FWIW. >> > >> > Harvey > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm > ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
