Something to keep in mind is that good programs take time to write, and you do not have to solve or understand everything all at once. Also, you need to start somewhere and it's going to be frustrating sometimes.
On the other hand, you need to find some fun and joy in the programming, which requires you be just a bit odd (or, in some cases, a lot odd). Finally, people often think of computers as "labor saving devices" but it's probably better to think of them as tools for doing more work. It's a peculiar kind of laziness you need, where you are willing to work really hard to get something done in a way that could have been done more easily by hand, in the hopes that it will solve problems for other people. Another aspect of coding is redundancy - every time a problem is solved with a new set of tools, that makes that aspect of our computing infrastructure more robust against failure (and also trains the people involved about some things that matter to other people). One useful thing to learn, when programming, is "don't repeat yourself" - this teaches you to find related things and bring them together. But that's not the only relevant approach, and often gets misapplied. You also have to be willing to repeat yourself. Another useful thing to learn is optimizing - making code more efficient. But the first rule of optimization is "don't". Don't optimize until you need to, and when you do, don't optimize things which do not need it. You can even think of "don't repeat yourself" as an optimization of "repeat yourself". But this kind of philosophizing is kind of useless to someone who doesn't have enough experience yet. So maybe the best advice is "don't" worry about it? Thanks, -- Raul On Sat, Feb 15, 2014 at 1:16 PM, Vijay Lulla <vijaylu...@gmail.com> wrote: > I came across > > http://waterstreetgm.org/throwing-in-the-towel-on-becomming-a-programmer/this > on HN. And > http://sdawncasey.wordpress.com/about/ in that page. Maybe these pages > might be useful to consider how newcomers take to concepts. These pages are > fascinating to me because it shows that even though these people have had > prior experience with other languages they claim that they still don't > understand programming. IMO, the emphasis on concepts and how J/APL can aid > in these explorations is the best approach to teach programming. Actually > Ken Iverson's explanation of Under (&.) [I read this on Ken Iverson's > Quotations page] is one of the best explanations of a very commonly > occurring programming idiom. > > > On Sat, Feb 15, 2014 at 12:51 PM, robert therriault > <bobtherria...@mac.com>wrote: > > > Hi Henry and Raul, > > > > I think that the audience being young programmers is a good start towards > > the issues that Raul raises. As an additional challenge, I think that we > > would want to use an example that is user friendly once their interest > has > > been attracted. There are some areas of J that have more overhanging > > learning curves than others :) I don't think we would want to get them > > interested and then send them into the teeth of image processing unless > we > > also provided a good road map. > > > > Cheers, bob > > > > On Feb 15, 2014, at 9:36 AM, Henry Rich <henryhr...@nc.rr.com> wrote: > > > > > My idea about that is, we need to appeal to young programmers. The > more > > experience people have with scalar languages, the less able they are to > > learn J. The more experience they have with other languages in a class > > with J, the less they need to learn J. > > > > > > The application needs to be of obvious interest to a non-mathematical, > > non-financial user. My target would be a scientist/engineer/IT person > who > > has a computation to perform and no canned package to do it, so they have > > to write a little code. > > > > > > Henry Rich > > > > > > On 2/15/2014 12:30 PM, Raul Miller wrote: > > >> Perhaps it is also worth noting that we are not going to impress > > everyone, > > >> nor should we want to. > > >> > > >> J currently caters to some high powered wallstreet types, high quality > > >> engineering types and so on. But it's hardly the only language in use > > for > > >> any of those categories. > > >> > > >> ... anyways we should probably think a bit about qualities of the sort > > of > > >> people we think we want to attract with this video (or videos, since > we > > >> might want to attract different kinds of people). > > >> > > >> I'd also be tempted to enlist Cathrine Lathwell's advice on video > > creation > > >> - she has more than a little relevant experience. > > >> > > >> Thanks, > > >> > > > ---------------------------------------------------------------------- > > > 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