Talk: Functional Thinking for Fun and Profit

These are elaborate notes on a “Tech Tonic” talk given at Pramati Technologies, Chennai, on 23rd July 2015. The organization of this post reflects the talk itself.

Functional programming has been gaining deeper penetration in the software development world in the recent years owing to increased need for maintainable large scale software development with scalable performance characteristics. Research papers on type theory, data structures, reactive programming and such remain relatively inaccessible to the programming community at large and explanatory material on the web tends to focus on various language and library features such as “lambda functions”, “laziness”, “algebraic data types”, “monads”, “monoids” or “functors”. Consequently, programmers coming from an “object oriented” background are confused by the variety of views and concepts and find it difficult to negotiate the paradigm, unable to make use of it ‘cos their work language is considered “not functional”, or are just lost on why FP matters. This talk was another an attempt to add to the confusion address this gap by highlighting notations developed for FP that are useful general purpose thinking tools for system design that can be used irrespective of the implementation language.

Slides for this talk.

Status: Draft

Read on →

On Net Neutrality in India

The net neutrality debate in India largely lingers on what folks will have to pay for that they’re now getting for free, how much more it is going to cost them to do the same things they’re doing today, what will happen to the small business guys as the large guys take over with money power, etc. Even the (in)venerable AIB does more or less the same pitch in their now famous Save The Internet video. There is also the article on The Hindu pointing out the panel recommendations and they mostly have to do with who and what needs to be paid for and what is to be left untouched.

Much of this money-focused hoohah is a distraction on why net neutrality is important to us. If we don’t adopt a “we won’t touch the internet” policy, there is much more at stake than just a few people making more money than we think they should.

Read on →

Melakarta Workshop for Children at Brhaddhvani

Workshop at Brhaddhvani for children this summer on melakarta system.

brochure

Closures All the Way Through

In A Mental Model for Variables and Closures in Javascript, I described an allocation based model that I’d used with some success to teach and understand the intricacies of closures, as implemented in Javascript engines. While we have plenty of tutorials on closures that describe what results are gotten under various conditions, with variables being magically “captured”, I’ve not seen many work through a mechanistic explanation of closures. To that end, here is the slide deck of a session I recently conducted which walked the participants through a mechanistic understanding of closures and objects, using the Chrome debugger. Read on to find out how to follow the deck and the rationale behind it.

Read on →

Talk: Mathemusicking With Children

I gave a talk titled “Mathemusicking with children: Doing math and music without telling them apart” at the C. R. Rao Advanced Institute for Mathematics Statistics and Computer Science on 14 March 2015, as part of a workshop on Math, music and nature.

Slides of my talk (PDF)

The talk was about the summer of 2014 workshop on music and math for children that I co-conducted along with Mrs. Usha Narasimhan, at Brhaddhvani, Chennai.

There was a request from the audience for the “Melakarta pathways” picture. Here is a PDF you can print out. There are exactly 72 ways to traverse from the S at the left to the S at the right. Each path you take corresponds to a scale of the Melakarta system.

comments powered by Disqus