Tuesday, April 28, 2015

India and the glorified typewriter.

When newspapers quote India as a technology giant I secretly scoff at the shallow understanding the general public has of technology. What we are at best is a mammoth market of computer enabled slaves. The term tech giant applies to us as well as "masters of flight" to mosquitoes. They are simply a lot of insects who can float with a bit of control. They come nowhere near the flight control of a hummingbird.

With that said let me explain the situation in what meager words I have. You see, technology is one of the few aspects of human life that changes faster than a lot of other things. Computers especially so. When I envision an office which is computer enabled, I envision an office which completely uses the power and potential of a computer and this is very good at what it does. What I do not envision is Excel sheets and Word document reports.

When I am told that a website has on-line forms I imagine being able to fill those forms without getting off my chair; not having to print and post the forms. When I hear that a public service is e-enabled; I imaging that it is configured for mass access and is able to handle that load. I do not imagine it crashing every two days. What I mean to say is that India may well have produced a few thousand people who can use computers as well as the average international citizen; however, the masses have not yet caught on. What they see is simply a new type of typewriter. They still do not understand the concept of a computer. Being able to automate tasks which you want. A computer is exactly that.

Offices bound by technology generated by companies which do not understand the work they do. Websites handled by administrators who have no idea what is the best technique to use. That is the problem. We have created a populace which views the computer as a magical thing. As a machine which has a mind of it's own. One must break that screen of reverence. One must kill the God in order to understand his mystery.

What I propose is simple. Starting at home I will make my parents understand the computer. Not learn how to use it. Understand what it is. What is the concept of a computer. That is what I will do. With knowledge comes power and once everyone has power one can hope for fairness and the evolution of the human race.

Saturday, April 25, 2015

The Butler

I had a thought today. Reading about the butler ideal from PG Wodehouse books has got me thinking. I need a butler for my computer. With the average computer gaining more power and functionality one needs a technical mind to manage it.

With a butler at hand however, one can simply allow the butler to do things which are similar to dusting the house and keeping other employees of the house managed. The master of the house must not be bothered with the miniature details of how the house is managed.

This is the ideal program for my mother and father. Recently I installed Mint on the home computer and ever since my parents have been super happy with the "new" computer. In my opinion this came from the fact that Linux is better at not generating junk than Windows. What the crux of the matter was that my parents used the computer simply for Internet based activities. They did not understand why windows was slowing down when they did nothing other than open mail everyday.

What they experienced was in part a passive Butler attitude. Linux is good at running for a long time. This causes the user to focus on what they do and not on how to keep the machine running. Let us see how this idea develops.

My idea of the butler is that it must do things without troubling me. It must learn who I am and know my needs. It must not bother me with the trivialities of the computer. If I say I want to check mail, the Butler must simply open my mail for me and not start asking what browser I prefer to use.

That is just the beginning. If you have any more ideas please do type them in the comments. Let us wait and watch the rise of the Butler.

Tuesday, April 14, 2015

Python. Savvy?

In 2010 my friend Aditya Duggal called me up and said "Have you seen this yet? Its called node.js". Aditya calling me up was rare and do I began to look in to nodeJS. As it turned out I was not a good enough programmer to have a go at NodeJS just yet but the underlying word called Python caught my eye.

What language was this with a snake for it's symbol? What sorcery had forced Aditya to love it? From a man who worshiped C to a man who liked Python Aditya had changed. I wanted to know why?To be truthful the hype got me hooked. What language is this that seems to pop up everywhere I look. I have not looked back since. More than the language I believe it is the community of Python which fuels it's growth. There is nothing more addictive than to have people who listen to you with rapt attention and solve all your problems. When the time comes to give back you no longer have to; you want to. Quickly learning the syntax and loving the fresh perspective to writing code I began to love python. Slowly my side projects started to shift to Python from C.

The next stone was the Cheese shop. It became clear that code in python unless carefully written grew large. With the ability to speedily write code comes the ability to write horrible demonic code. I first used the cheese shop when I began to look for ways to graph in python. Instead of writing my own I discovered the cheese shop. From then on I have rarely had to write my own code for anything. There are of course the odd projects which need a lot of custom code. With the Cheese Shop at my disposal work became easy.

There was a period of learning which accelerated my admiration and knowledge of the open source movement. This was when I discovered Internet Relay Chat. I was watching Fifth Estate and became curious. What were these people chatting on? It was most certainly not Facebook. It also looked cool. Hence I began to hunt around. IRC was found. The very next minute I was configuring Irssi and moving onto how Irssi works and how to chat in IRC. Initially it was confusing but slowly it all came together. It was beautiful. People I did not know and people who were famous developers. I could now talk to them.

Believe it or not the next big thing was GitHub. Strange as it seems I had not heard of version control at all before Git. GitHub was a boon. Code was easier to experiment with and people were easier to collaborate with. I no longer had to worry what would happen if my computer decided to crash and burn. With github I could easily collaborate and contribute. Up until then I was simply a leech on the goodwill of the community. With github I could help others.

Since Github I have not looked back. Python has now become my primary language of development. There is literally nothing I have not done with python. To anyone new to programming I recommend python due to it's relatively small learning curve. When one can write anything one wants in a language there comes freedom of expression. With freedom of expression comes the ability to create. With python I have had that ability. I can see things happening before I have written them.

Most of python's diamonds are in the documentation. If you are beginning to learn python and want a starting point I would suggest the documentation. The docs are what survive after nights of distilling information and processes.

Enjoy python while you can. Who knows how long this ecosystem will remain this good. We seem to have destroyed every other one. A great place to learn stuff is the IRC channels of python and the specific libraries it has. Usually I hang out at #Python and #django. Those are the ones I like. Lots of good discussions going on there. Since it is a chat it is more dynamic than the docs.

For a young and upcoming python developer, the three places to learn and github,docs and IRc.