Started a blog per your suggestion. It doesn't have anything useful yet. http://yikelu.github.io/j_table/
On Fri, Feb 28, 2014 at 12:48 PM, Raul Miller <rauldmil...@gmail.com> wrote: > I very much agree with your observations here, about us needing more task > oriented documentation. Frankly, we could also do with a few textbooks (I'd > love to see textbooks illustrating the use of J to address things like > finite element analysis, circuit analysis, antenna theory, or any of a > variety of related topics... and I should probably write one one how to > build search engines). > > If you could find the time to document your library (or perhaps to write a > few blog entries about some of the more frustrating or intricate issues) > that might be a good step in the right direction. > > If you do that, please let us know how to find your writeups, so that we > can read them (and perhaps supply useful suggestions). > > Thanks, > > -- > Raul > > > On Fri, Feb 28, 2014 at 1:37 PM, Yike Lu <yikelu.h...@gmail.com> wrote: > > > Great, thanks for the quick responses. If my quoting here is off, it's > > because I used digest mode. > > > > Generally speaking, these subjects are things I've actually found the > > basics of what I need already. I'm just complaining about the pain > involved > > in finding said basics ;). > > > > That said, I greatly appreciate all the links everybody's provided. I'll > > read up more because I'm sure there are things I missed. > > > > Re: Raul on locales, I mean non standard as in most languages I know use > > prefix syntax for namespaces. ns::function (C++) or ns.function (Python). > > So on first look, the underscores seem like > separators_for_multiword_names. > > Also the label "locale" is non standard, so I actually skipped some > > "locale" links at first because I thought they dealt with time zones! > > > > To be clear, I don't really have an opinion on its suitability for the > > language (seems fine the way it is), rather I just mean that something > > fundamental like that should be front and center on any introduction to > the > > language. > > > > Re: Kip. What I mean is a flexible relational style table processing > > (analytics first, transactions secondary). I mean, being able to use J's > > array functionality inside queries. If you look at my repo, for the > > "filter", "perform" methods, I just execute a string inside a local > > environment where the table keys (ie column names) are mapped to the > actual > > column arrays. Therefore, in so doing, I can use any verb defined in J to > > manipulate the columns. > > > > Overall, I'm actually getting the hang of things pretty quickly. I > > personally have enough general programming experience to be able to read > > through source, search docs, etc to find the solution to what I want. > > > > Having done that for a few hours, my opinion on the state of the J docs > is > > that we don't need another "array manipulation basics" or "language > basics" > > tutorial. It'd be better to have a set of task oriented tutorials that > link > > to the appropriate "basics" documentation. The thing is, to do anything > > useful "in the real world", you need to access higher level functionality > > (as I quickly discovered) in the language, and oftentimes, going through > > such exercises makes the "basics" stick more firmly. > > > > For example, in piecing together my little library, I had to go through > > package management, locales, source from the JDB library, OO, and pieces > of > > the standard library. > > > > Also, everything seems very very scattered. Again, the dictionary and > > primitives seems well covered, but the standard library, packages, etc do > > not. > > > > > > On Fri, Feb 28, 2014 at 11:18 AM, Yike Lu <yikelu.h...@gmail.com> wrote: > > > > > Hey everybody, I'm new to the forum. I got involved with vector > languages > > > when I had to learn q for a job. I have since moved on from that job > and > > > lost q, so I've been looking for a suitable replacement ever since. I > > tried > > > J here and there, but the things I learned never really stuck. I went > to > > > one or two meet ups at the NYJUG (met Devon there). My programming > > > background includes C++, R, q, python, and a sprinkling of Scheme. > > > > > > I decided to pick up learning J again. I have some feedback on the > first > > > few hours that I went through, hopefully it's useful information and > > others > > > have the same problems: > > > > > > 1. I wanted to tackle a problem I already had, or already have solved. > > > Data being what it is, that usually means a pre-existing data set, > often > > in > > > CSV format. > > > 2. I found the csv package, quite nice. > > > 3. For some reason my Qt IDE broke. So I had to use jconsole and > pacman. > > > This took me longer than expected to find. Until then, I was just > praying > > > the IDE would come back so I could use the package manager. > > > 4. JDB specifically -- no mention of the JMF dependency? Bad call. I > was > > > confused for 20 minutes. > > > 5. load operator syntax and path -- where is this documented? I figured > > > out the JHOME/addons directory is part of it. Can I add to or change it > > the > > > path? > > > 6. How to load a script? load confused me because the syntax suggested > it > > > loads the whole directory (although I later found out this wasn't the > > > case). I eventually found > > > http://www.jsoftware.com/docs/help701/learning/26.htm > > > 7. Locales? A lot of the packages use more advanced features like OOP > and > > > locales, and it's very disorienting at first, especially with the non > > > standard Name__Locale syntax. > > > > > > At the end of the day, my use case and learning approach can be summed > up > > > as follows: > > > * I have a pre existing problem that I have solved. I would like to be > > > able to use J to solve it, potentially more quickly or more elegantly. > > > * In theory, this should require a simple mapping of basic concepts > from > > > one language to another, plus a generous helping of library functions. > > > * How do I do it in J? Take a direct, focused approach to getting the > > > basics handled (data loading and selection for example). This gets me > to > > a > > > stable point of reference. > > > * What can I do next in J? This is more exploratory learning. I have > the > > > data loaded and I know how to do basic operations. Build on this > > knowledge. > > > > > > The wiki documentation so far makes this unnecessarily painful. > Remember > > > we don't have a meaningful StackOverflow presence or easily Google-able > > > answers. There's a million tutorials on how to do basic array > > > manipulations, and they're all front and center. The OO, script > loading, > > > locales seemed to be buried further back. > > > > > > Also, my general feeling reading through the docs is that they're > pretty > > > scattered on those topics. > > > > > > I've started a github repo where I'm keeping some utilities I'm > > developing > > > around table manipulation: https://github.com/yikelu/j_table > > > > > ---------------------------------------------------------------------- > > 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