Abhay Shivgounda Patil

About what matters.

Archive for the ‘Programming’ Category

My blogs – So far!

leave a comment »

[Updated on September 2, 2017.]

Latest blog on the Musical form Tarana.

My recent “professional” blogs on LinkedIn here:
Demystifying Continuous Performance Management
Life Lessons from Originals – a wonderful book by Adam Grant
Interviewing for Hiring: Nobel Laureate’s Advice
Leadership Learning
Self-healing Systems

A few personal blogs on education, society and stuff.
If you don’t see beauty, you are not seeing
Notes from a talk by K B Jinan, the activist, designer and disruptive educationist.
Geshe Dorji Damdul on Mindfulness:
HH Dalai Lama’s confidante’s take on mindfulness.
Remembering Dijkstra
My talk on some of the quotes by the eminent computer scientist Edsgar Dijkstra.
Turning Around Universities
My notes of a talk by Prof. Deepak Phatak on how MOOC can dramatically change the role of a traditional University.
Gen Y For Dummies
Had a good time attending the NASSCOM (Pune) session on Gen Y management.
The Loss of Innocence – The IIT, Then and Now
A typical IIT student was intelligent, unassuming, self made, studious and rooted well in the “local” ethos.
Mathematics for justice!
Can we divide something between people such that everyone is guaranteed to be satisfied?
Let’s Talk Dirty!
That’s right. I do want to talk about things dirty.
Watch Thyself!
What do I do when I see an accident?
Wages of Inequality – P. Sainath’s lecture in Pune
Will we ever stop wearing our ideologies on our sleeves and instead focus on the human side of the story?
Can we ever read History with an open mind?
As an 11 year old in the 9th grade, untouched by any “ism” and totally oblivious of the label p-secular …

And here are some personal musings!
Some Poetry recital (काव्यवाचन) on Soundcloud!
संदीप खरे अाणि वैभव जोशींच्या “इर्षाद” च्या निमीत्ताने

Sharad Joshi Interview
“I see a lot of parallels between the socialism of the first Prime Minister Nehru and the so-called development-politics of PM Narendra Modi.” Always insightful to know what this iconic leader has to say on the issues that confront us. (Translated from original Marathi.)
Uniqueness of Religious Regions of Maharashtra
Religious Geography of Maharashtra – now that’s one scary academic sounding topic!
Tale of Two Relocations
My experience of two relocations – first in the year 1993 to the USA and then in 2001 to India.
दोन स्थलांतरांची गोष्ट
“तुम्ही भारतात परत का आलात?”
बोलाचे साहित्य बोलाचेच विश्व, रंकाचे धन आणि रावांचे कवित्व ॥
विश्व मराठी साहित्य संमेलन!
आता तुम्हीच काळजी घ्यायला हवी…
A poem by Shankar Vaidya.
One year of JM – FC road one way plan
Serious issues needing urgent corrective measures. (August 20, 2010)
Was ist Mitaan bitte?

Advertisements

Written by Abhay Shivgounda Patil

February 22, 2015 at 7:32 pm

Remembering Dijkstra

with 2 comments

A few days ago I was asked to inaugurate the Jigyasa Techfest at IMCC Jigyasa03and I chose that occasion to revisit some of the quotes by an eminent computer scientist Edsgar Dijkstra. I decided to take help of another eminent person, but from the arena of probability and randomness,  Nassim Nicholas Taleb (NNT), to highlight one of the quotes by Dijkstra.  I decided to begin the presentation with a poll based on a thought experiment by NNT.

Say, you are a cancer specialist. You have the the investigation report which shows no trace of cancer.  Now, is it evidence of absence of cancer or is it absence of evidence of cancer?  The show of hands in the auditorium indicated that the opinion was evenly divided.

The answer is: it is the absence of evidence of cancer.  As there is always a finite probability that the investigation report may miss something, it just can’t be evidence of absence. All we can say is there is absence of evidence.

dijkstraNow – how does that lead us to Edsgar Dijkstra?  Here is what Dijkstra says about software testing and bugs.

“Program testing can be used to show the presence of bugs, but never to show their absence”

Get it? When you find bugs, that’s obvious. But if you don’t find bugs, it means exactly that and nothing more – you did not find bugs – period. You can’t vouch that the program is bug free just because you didn’t find any bugs.

Edsgar Dijkstra has some pretty entertaining quotes to his credit – more about those later in this blog.  Right now let’s see some that relate to computer science, design and learning.

“Computer science is no more about computers than astronomy is about telescopes”

Will you call surgery “knife science”? No! Isn’t the term Computer Science a misnomer then? Think.

Simplicity is prerequisite for reliability”

How does one craft a good design? After asking this question, I stunned the audience with the answer: KISS!  As you know, it’s an acronym for Keep It Simple, Stupid!   So, when in doubt, always choose simple over complex. The problems we face are surely complex, but it is a well accepted principle  that you can’t fight complexity with complexity. Simplicity is the right weapon.

“Perfecting oneself is as much unlearning as it is learning”

My programming mother tongue was FORTRAN.  Later,the teacher who taught us Pascal warned us that unless we unlearn our FORTRAN ways, we won’t be able to exploit Pascal fully. Otherwise, he said, we would join the tribe of programmers who code in FORTRAN in any language!  With so many new languages and programming techniques coming our way, it is absolutely critical that we develop the ability of unlearning old ways to meaningfully embrace the new new things.

As promised, let me quote three of the more famous, and entertaining, utterances of Dijkstra that amuse me no end.

“It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration.”

“The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offense.”

“The use of anthropomorphic terminology when dealing with computing systems is a symptom of professional immaturity”

Hmm. Think hard about the last one.

Postscript: I found another gem, that generated a great dialog when I posted it on Facebook.

“Besides a mathematical inclination, an exceptionally good mastery of one’s native tongue is the most vital asset of a competent programmer.”

Read this paper if you want to know how do we tell truths that might hurt.

– Abhay

Written by Abhay Shivgounda Patil

February 15, 2014 at 6:32 am