multi-core programming, graphic presentation, information visualization, BarCamp NYC5, functional languages
Location::Heartland Brewery, 34th and 5th, NYC
We discussed some stories to help interest statistics students in that subject and in J. We looked a working example of using J to take advantage of a multi-core architecture. We also considered some ideas in graphic presentation of data and pondered some common notions about functional languages. Finally, we talked about the upcoming BarCamp NYC5.
Agenda for NYCJUG of 2010414
1. Beginner's regatta: a simple path for introducing J to statistics students - see "TeachingJAsAComputerNotationForSecondaryMathematics_p87- peelle.pdf" and consider an embezzler versus an auditor as a way of easing in to simple, descriptive statistics. 2. Show-and-tell: a little help - see "Generalized multi-copy example code.pdf". A full example of parallelization - see "Example of Converting J Code to Use Multiple cores.odt" ; also see "F#ParallelSolutionToTrivialProblem.odt". 3. Advanced topics: information visualization - see "Sparklines-Intense, Simple,Word-sizedGraphics.doc", "Articles in Information Visualization- v9I1.doc", and "xkcdHeight-triptych.jpg". Functional languages: perennial "Next Big Thing"? See "NoFutureForFunctionalLanguages.doc". Also, an interesting Python program - see "HowToWriteASpellingCorrector.odt". 4. Learning, teaching and promoting J: what would you show at a BarCamp? See "BarCampNYC5.doc".
We also listened to a story about how to introduce basic statistical concepts by considering a rivalry between an imaginary embezzler and an auditor who uses increasingly sophisticated measures of groups of numbers to uncover increasingly sophisticated schemes to "cook the books". The notion here is to progressively introduce increasingly sophisticated summary measures of numbers in response to increasingly sophisticated attempts to manipulate aggregate measures of these numbers.
For instance, one of the simplest checks on a group of numbers is to consider their sum, perhaps to compare this with a corresponding quantity such as an expected total of accounts. An embezzler can game this by adding amounts to some accounts and subtracting them from others, keeping the sum constant. However, these changes would affect the average of these numbers. In response to this more sophisticated summary measure, we can show how well-chosen quantities would keep this measure constant, forcing the auditor to look at the next "moment" - standard deviation.
The intent is to give a feel for how these summary measures have their strengths and weaknesses, leading to more involved summaries to give a truer picture of a large group of numbers.
We looked at method for generalizing copying multiple files by using an adverb in J in conjunction with different batch files. This is covered more fully on another page. There has to be a neater way to do this but we didn't come up with many ideas on this.
Continuing an ongoing topic on parallel programming, we looked at an example of parallelizing some J code to take advantage of a multi-core processor.
Learning and teaching J