Inducing intention into passive consciousness

Mantra-Weapon-557x350

धर्मात्मा सत्यसन्धश्च रामो दाशरथिर्यदि
पौरुषे च अप्रतिद्वन्द: शरैनं जहि रावणिं 

प्रत्यक्ष गद्यार्थ =  हे शर: यदि  दाशरथि: राम: धर्मात्मा सत्यसन्ध: च पौरुषे अप्रतिद्वन्द्व: चास्ति , तर्हि एनम् रावणिं जहि |

Context : At the end of 3 days (and nights) battle between Lakshmana and Indrajith, just when all divine weapons of Lakshmana seems to be  neutralized by equally potent counterparts by Indrajith, he invokes this covenant on an already powerful Aindraasthra (arrow with destructive powers of Indra/personification of electricity).

This is a wonderful sloka with multiple meanings, as viewed from perspective (or spiritual state) of the reader. Most relevant in age of Kali when all efforts to maintain order in mind and the world seems to fail, and men need help from supreme consciousness even to moderately follow Dharma.

SreeVidya Sanskrit transliterator, a powerful tool for the bilingual Indians

I’m writing this article to introduce an interesting new tool  – SreeVidya.

What is SreeVidya ?

SreeVidya is a software tool originally written to transliterate Sanskrit to different regional scripts of India. Besides this, the tool can also be used to read an Indian language in any other regional language.

This will mean a lot to you if you are a bilingual citizen of the country; as in if you knew both Bengali and Kannada, and is a native of Bengal, you can now read Kannada blogs, News articles, movie reviews etc in Bengali script. Similarly as a Tamil guy, if you also understand Malayalam, you can read Malayalam websites in Tamil.

sreeVidyaDemo1[Above: A snapshot of SreeVidya auto detecting the source scripts and printing in target script]

How ?

It so turns out that all Indian languages are based on the same sound structures used by Sanskrit. And SreeVidya takes advantage of exactly that. Under the hood it understands the sounds of written words, and uses this information to recreate words of target script.

SreeVidya’s original use was to cater the growing need of Sanskrit enthusiasts in the country to remove the overhead of learning Devanagari for starting to learn Sanskrit.

Install SreeVidya on Firefox –

To install SreeVidya on Firefox browser, the following steps will do –

  1. From Firefox browser, open https://addons.mozilla.org/
  2. In the search box in the top right corner, type SreeVidya.
  3. Click on the SreeVidya search result displayed in the drop down.
  4. When the SreeVidya addon page is loaded, click “Add to Firefox” button.
  5. In the subsequent popup, click “Install” button.
  6. Done ! You will now have SreeVidya icon on the top right corner of Firefox which is the handle to your Indian language transliteration.

Install SreeVidya on Chrome-

To install SreeVidya on Chrome browser, the following steps will do –

  1. From Chrome browser, open the page https://chrome.google.com/webstore/detail/sreevidya/bmpkeaablodlfaofkfjpechdjjbhopim
  2. Click the button “ADD TO CHROME” in this page.
  3. In the subsequent popup, click “Add extension”.
  4. Done ! You can now change the script of Samskritham (or other Indian language blogs) using the plugin icon that appears in the right top corner of the Chrome window.

Some of the portals you can now read in your own native script using SreeVidya –

You can find details here – http://sreevidya.codemarvels.com/

Why are Indians good in software ?

sri-chakra

I’m prompted to write this article, after I read this piece of information from a blog – Once the founder of Infosys, NarayanaMurthy was asked this question -“Why are Indians good at software”?

He answers as, “we are grateful to the British who came and taught us math, and science and software, that’s why we are good at it”.

Really??

This made me ponder on why India is natural choice for Software development for the world. It’s my inference that, Indians are specialized as a population to solve problems in subtle and complex problem domains. Here are the supporting observations, (other than cheap labour facilitated by currency exchange ratio ) –

  1. Many Hindu religious structures more than a millennium old, could not have been made without knowledge of advanced mathematics and engineering methods.
  2. Indians on average, are shorter and thinner than Europeans or Africans, which hints at many thousands of generations of civilized living (which took out out the need for physical exertion for survival)
  3. Every modern scientific discovery in Europe occurred only after Europeans discovered India. Before finding route to India, Europeans believed earth was a plane. (Refer : http://en.wikipedia.org/wiki/Vasco_da_Gama, http://en.wikipedia.org/wiki/East_India_Company and http://www.physicsoftheuniverse.com/dates.html).
  4. Cultural order – Indian/Chinese society has much lesser entropy (like divorces), when compared to the West – which clearly hints to a strong cultural knowledge acquired and passed on through many thousand years of civilization.
  5. The whole world acknowledges that the decimal system originated in India (for that matter, even calculus and idea of  relative time scales).
  6. Sanskrit, the language of Vedas, is highly efficient and precise (compared to current European languages which have many ambiguities), hinting to the higher algorithmic aptitude of the society which created and used it.
  7. Mahabharatha war, (documented by Indian scriptures to have occurred before 5100 years, as per scientifically consistent Vedic calendar), clearly describes ability of learnt men then to calculate auspicious planetary positions.
  8. The Sanskrit poetic history also describes many conversations where people debate on the unity and interaction of individual consciousness with cosmic consciousness. Even during present days, human discussions seldom get more abstract that that 🙂

Note: Written only to raise spirits of Indians from frequent assaults in mainstream media.  (friends in the west not to get offended.)

 

Ant-apt-repo : An ant task to create apt repository from .deb files

This is a simple Ant task (hosted here) to create an apt repository from within an Ant project. It is ported from the maven plugin – theoweiss/apt-repo.

This task is usually used with the debian package creation task ant-deb.

 Usage

    <taskdef name="aptrepo" classname="com.codemarvels.ant.aptrepotask.AptRepoTask" >
        <classpath>
            <fileset dir="lib/ant/apt-repo" ><!--all jar files in this project is expected to be found here -->
                 <include name="*.jar"/>
            </fileset>
        </classpath>
    </taskdef>
<target name="createRepository">
  <aptrepo repoDir="${debian.folder}/output/repository"/> <!-- keep all .deb files in this folder -->
</target>

 Notes

  • Keep all .deb files you want to publish, in the repoDir folder.
  • The package listings will be created in the same folder, which can then be published using a web-server as a debian repository. (The URL to this folder will be the repository URL to be added to sources list)

How to use old an android phone as a wireless speaker ?

I recently converted an otherwise useless old android phone into wireless speakers (complementing an old wired 2.1 speaker-set I had).

The setup needs two phones, a 2.1 speakerSet and WiFi network. After searching and trying many Apps from PlayStore, this is what worked for me –

  1. In the old phone –
    1. Open Play Store.
    2. Search and Install SoundSeeder Speaker. (Free version. Note – Free version will auto disconnect after 15 mins of usage, after which you will have to pause and play again from your controller phone)
    3. Open SoundSeeder Speaker. Provide a unique name when prompted. Eg. “My wireless Speaker”
    4. Open settings (Android details button => Menu Opens => Settings).
    5. Make sure “Auto Connect” and “Stay Awake” are checked.
    6. Return to Android home.
    7. Open phone’s WIFI settings.
    8. In the advanced settings=> “Wi-Fi Sleep policy”, make sure the phone WiFi is always awake.
    9. Connect the speakers to this phone.
  2. In the current phone (using which you intend to play audio and control the speakers) –
    1. Open Play Store.
    2. Search and install SoundSeeder Player. (Free version)
    3. Open SoundSeeder Player. Provide a name for the device when prompted.
    4. Click on the speaker icon on top right corner.
    5. Click search Icon in the UI that opens.
    6. The name of the phone you configured before is displayed. Add it.
    7. Add your favorite songs to the player by clicking the Music Icon. Play one file and confirm its getting played on your speakers.

Thats it. You should be able to stream songs from your phone to the speakers via your old phone.

Note – Again, the free version does disconnect around every 15 mins, after which the controller phone has to pause and restart the music.

Sylvester–Gallai theorem – attempt for an intuitive proof using Induction

This article presents an effort to use Induction in geometry to prove Sylvester Gallois Theorem.

Theorem statement can be viewed here

For the proof, let us rephrase the theorem as follows –
(1) Given a finite set of points in Euclidean space such that any line passing through two of the points passes through at least one more of them, all points have to be collinear.

Proof
Let n be the finite number of points in the given set.

Base case:
Let n=3,
Given 3 points, such that a line containing two of them passes through one more of them, they are by definition, collinear.
Thus (1) is true for n=3.
Induction step
P(k) :
Let (1) be true for a given k points set.

P(k+1):
For an external point in the same space to pass through any line passing through two of the points in the k-points set in P(k), it has to pass through the line passing through all of them.
Thus the only way to expand the given set of k points to a set of k+1 number of points, is to include an external point which is collinear with the existing points.
Hence all k+1 points of the expanded set are collinear.

Thus if (1) is true for n=k, then it is true for n=k+1

Thus by principle of induction, (1) is true for all n>=3.

Intuitive right? but the proof doesn’t hold.

Why doesn’t the proof hold?

The proof doesn’t hold because the method of progression applied is too unidirectional to cover the variations in the euclidean space. The insufficiency can be proven by the counter proofs which employ the same method – this time to prove some absurd theories which can be disproven easily by employing other methods.

Two such counter proofs were provided, one by my colleague Harsh Kohli and other by my brother Vishnu K.S.

I’m providing Vishnu’s proof here which is similar to the above and hence simpler within this context.

The Counter Proof

Consider the set below set of line segments:

We see a bunch of line segments, with few defined points on them, and NOT following any concurrency.
Now let’s define an absurd theory about these points which obviously doesn’t hold.

The theory is: “Given a finite set of points in Euclidean space such that any point passes through a line segment having two more of them, all points have to be collinear.

Clearly, as shown in the above set, each point there passes through a line segment having two more of them, and all of them put together are not collinear.

Now the above method of progression can be used to prove this wrong theory as true. (obvious and simple proof as above and and hence not repeating)

Overall this has been a exercise which helped me have some great interaction with similar minds, including few math professors in the academia. Keeping the approach documented here hence.

Bring Tab bar to top of terminal in Konsole

Tab selector (tab bar) can be made to appear on the top side of terminal in Konsole  as follows –

  1. Menu Bar => Settings => Configure Konsole
  2. Select TabBar pane
  3. Set “Tab bar position” to “Above Terminal Area”

As you might have noticed now, you can make Konsole open new tabs adjacent to current tab by setting “New tab behavior” to “Put New Tab After current tab”