You let the programmers write well documented code and make sure every verb written and used in an application is introduced into the system through a well organized channel and well understood by everyone.
Mind you this is what you should do with all your code in any computer language even if it is mostly neglected at most places. 2009/5/31 Alan K. Stebbens <[email protected]> > As I was thinking about Don's attempts to redefine J in order to make > it easier to teach (in theory), I also thought about my own reluctance > to use J in my professional environment (financial). > > One of the main reasons for our not using J in my company is that the > adoption and usage rate is so low, that the cost of that choice would > be high in either hiring specialized developers, or training our > developers, and then, in maintaining the specialized culture that is > necessary for long-term support of any unique development environment. > > How can I commit company resources to a development environment that > requires specialists to do development, or, alternatively, requires my > existing Java, ObjC, Python, and Ruby developers to spend considerable > amount of time learning J just to become productive? And, once > having become productive in J, are now even more critical than they > used to be, which is not a healthy thing for any company. > > To avoid the problem of depending upon a few, highly specialized J > developers, we would have to develop a J culture, in which new hires, > or college interns, would learn our specialized J development > environment, and, those that were productive and found the work > interesting would become part of the continuity of the J culture. > > Alternatively, by choosing a popular (e.g., Ruby) development > environment, with its very high levels of adoption and usage, it's > large library of packages ("gems"), and correspondingly large > development pool, I can find more Ruby developers quickly, at lower > cost than I could for J. And, I would not need to train them much, > except in the special classes that we would have built for our own > purposes. > > The problem of J's low level of adoption and usage is like the problem > of esperanto. It is a perfectly logical, artificial language, but one > which almost no one uses. The reason no one uses esperanto, is > because it is not integrated into any culture, as are all native > languages. > > J, even more than esperanto, is a logical, concise, and, to some > purists, beautiful language which allows for compact expressions of > powerful, high-level operations. The mathematics field is a culture > that appreciates J (and APL and its other derivatives). Perhaps, > physicists also appreciate it for similar reasons. > > For interesting reasons, there are some technical folks in the > financial and investing fields that have developed a culture of using > APL, K, and perhaps J. > > But, other technical or scientific cultures, and certainly the > mainstream, have not been exposed (as much) to APL, K, and J, and are > thus not inclined to choose it for their computational analysis and > solutions. > > If I were the "king of J", and I wanted to increase the rate of > adoption and usage of J, I would follow Don's idea of teaching kids J, > and begin a program of getting elementary kids using J on their > partially subsidized laptops so that by the time they reach high > school, they will feel lost without their little J console. > > I would also get J into the computers at the high-schools for similar > reasons -- so that the kids going off to college will naturally want J > on their college laptops. > > I would also begin a rapid development of J apps for the most popular > PDAs and SmartPhone, certainly one for the iPhone and perhaps Palm > Pre, for the same reason -- get people to begin using J on their > ubiquitous PDA and they'll "gotta have it" on their computer, too. > > Get people using J's easy calculator-like features, and gradually, > more and more people will begin discovering its other features. > > And, if there's a J platform on lots of computers and PDAs, then > developers will build more J packages to solve problems so that users > do not even need to know that much about the J language itself, just > use it as a platform. > > Need to keep track of expenses? you can spend $$$ for MS Excel, or you > can use this handy J Expenses package. > > Need help managing your calorie tracking? Use this shareware J > package that provides caloric estimates on many kinds of food, and > helps you track your diet. > > Need to estimate your mortgage? Just load up the handy J mortgage > calculator. > > This is how you create demand, and lower the barriers to adoption and > usage. > > This is the approach that Wolfram has begun to follow -- getting > variants of Mathematica into more markets and opportunities, except > that they aren't very far along. I imagine they're having a hard time > putting Mathematica into small devices without having the battery go > dead in 15 seconds! :-) > > A good example of a portable, powerful, expressive, mathematical > language is Frink. It runs on almost any portable computing device > that supports Java, which includes most PDAs and smart phones. > However, Frink is at the beginning of its lifetime, and there is no > IDE, no set of common libraries, no large user base .. yet. > > I hope this has given some food for thought. I've admired J for > personal reasons, and have been wanting to use J in my professional > environment, but until recently, had not really clarified why I > couldn't. I'm hoping that not too far in the future, I'll be able to > make a different choice. > > -- > Alan Stebbens > > > > > > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm > -- Björn Helgason, Verkfræðingur Fugl&Fiskur ehf, Þerneyjarsundi 23, Hraunborgum Po Box 127,801 Selfoss , t-póst: [email protected] gsm: +3546985532 Landslags og skrúðgarðagerð, gröfuþjónusta http://groups.google.com/group/J-Programming Tæknikunnátta höndlar hið flókna, sköpunargáfa er meistari einfaldleikans góður kennari getur stigið á tær án þess að glansinn fari af skónum /|_ .-----------------------------------. ,' .\ / | Með léttri lund verður | ,--' _,' | Dagurinn í dag | / / | Enn betri en gærdagurinn | ( -. | `-----------------------------------' | ) | (\_ _/) (`-. '--.) (='.'=) ♖♘♗♕♔♙ `. )----' (")_(") ☃☠ ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
