Whenever i was in a distress or my mind was away from being normal, there's been one song that would always revive me whilst running on a continuous loop. I always loved each and every word of the lyric and it amazes me how a bunch of words can change your whole mindset to a very great extent.
I just felt like sharing the lyrics of the song. Try listening to it and it may help you too like it did to me.
When you walk through a storm,
Hold your head up high..
And don't be afraid of the dark..
At the end of the storm,
Is a golden sky..
And the sweet silver song of the lark..
Walk on through the wind,
Walk on through the rain,
Though your dreams be tossed and blown..
Walk on walk on with hope in your heart,
And you'll never walk alone..
You'll never walk alone..
You'll never walk alone..
You'll never walk alone..
-Vignesh
Friday, February 4, 2011
You'll never walk alone!
Monday, January 10, 2011
InstaShare - Facebook Extension for Google Chrome! :-)
InstaShare - Share everything you find interesting on the web as and when you browse to your Facebook profile! The web you surf daily is now just a single click away from your facebook profile!
This is a mature version of yet another script that i have been using personally so far.
Features include:
Download You can download the extension from here: http://www.foamsnet.com/instashare
Screenshots
Sharing Images



Sharing Links



Sharing Selected Text



Posting Status Update

You are sure to find a lot of bugs. Feel free to contact me at vig...@gmail.com (Please click to view the full address) for any bug reports or suggestions!
-Vignesh
This is a mature version of yet another script that i have been using personally so far.
Features include:
- Post status updates through an always-present browser icon
- Share any image in the pages you visit in a single click
- Share any link in the pages you visit in a single click
- Share any piece of text in the pages you visit in a single click
Download You can download the extension from here: http://www.foamsnet.com/instashare
Screenshots
Sharing Images



Sharing Links



Sharing Selected Text



Posting Status Update

You are sure to find a lot of bugs. Feel free to contact me at vig...@gmail.com (Please click to view the full address) for any bug reports or suggestions!
-Vignesh
Sunday, January 9, 2011
Why you should tweet?
I am one among the many millions out there who belong to the social era. The world is socializing much more than it ever did before. If facebook were a country, it’d be third largest in terms of population. Facebook (and even the damned orkut) is really famous in India. Twitter is a similar service with even a simpler goal, share all you can in 140 words.
I have found many teenagers (especially college goers) not use Twitter. It is not really surprising considering twitter doesn’t have many entertaining’y things like photo tagging, liking every damn comment, etc. Twitter is the best example for “simplicity”. The inception of twitter has rendered many bloggers lazy to even blog regularly, as they start tweeting more about things rather than writing lengthy blogs.
In this post, i want to publish my opinions on why teenagers should tweet or atleast use twitter.
Source of Information
Twitter is really a great source of information. Let it be technical information or some interesting news from/about your favorite celebrity, the first place where you can find it is twitter. If some hot news is being flashed in the tv channels worldwide, then you bet its definitely trending on twitter. You really get an instant, unbiased view of many people all around the world on any topic. This kind of rapid fire spread of a news is more common in twitter than in facebook because of twitter’s short and sharp nature.
Social Media is a fancy term used these days to indicate the facebook, twitter and co. Not only social media provides entertainment and helps you kill your time in the form of facebook, it also gives your brain some real value additions in the form of 140 characters.
Enterntainment
Many teenagers (atleast my friends) have the opinion that twitter is for geeks. Whenever i hear someone say this, i go WTH. Twitter is definitely much more than a source of useful information. You have entertaining discussion going on between not just your friends, but also with many other people with whom you might have just dreamt of before. (For example, i have got one or two replies from my favorite singer Chimayi).
Short lifetime of tweets
You post a status update in facebook, and it definitely lies around in your homepage (in the form of notifications, etc.) for a minimum of one day (mostly more than that). Whereas lifetime of a tweet is much shorter than that. Your tweet will remain in your followers’ home page for hardly a few minutes. So all the communication and sharing remains up to date and instant. This point could be argued either ways as both advantageous and disadvantageous. But in facebook, after some 50 odd notifications over a period of week, i’d regret why i liked a status in the first place.
I am not coming to say that facebook is bad. Facebook has its own use case. The status messages in facebook are meant to be lingering around one’s homepage for a longer period of time. Hence twitter should be the real tool that shall be used to post real time updates, where people can comment on it instantly too. Also, tweets come up in what is called Google Realtime Search results.
Internet is huge and a few years back Google revolutionized it by organizing the information available in the internet. That was purely an algorithmic approach, whereas today, twitter is trying to generate and organize information based on one’s personal context, supplemented by algorithms. So, join twitter today and i promise i’ll follow you :-P
You can follow me in twitter here.
-Vignesh
I have found many teenagers (especially college goers) not use Twitter. It is not really surprising considering twitter doesn’t have many entertaining’y things like photo tagging, liking every damn comment, etc. Twitter is the best example for “simplicity”. The inception of twitter has rendered many bloggers lazy to even blog regularly, as they start tweeting more about things rather than writing lengthy blogs.
In this post, i want to publish my opinions on why teenagers should tweet or atleast use twitter.
Source of Information
Twitter is really a great source of information. Let it be technical information or some interesting news from/about your favorite celebrity, the first place where you can find it is twitter. If some hot news is being flashed in the tv channels worldwide, then you bet its definitely trending on twitter. You really get an instant, unbiased view of many people all around the world on any topic. This kind of rapid fire spread of a news is more common in twitter than in facebook because of twitter’s short and sharp nature.
Social Media is a fancy term used these days to indicate the facebook, twitter and co. Not only social media provides entertainment and helps you kill your time in the form of facebook, it also gives your brain some real value additions in the form of 140 characters.
Enterntainment
Many teenagers (atleast my friends) have the opinion that twitter is for geeks. Whenever i hear someone say this, i go WTH. Twitter is definitely much more than a source of useful information. You have entertaining discussion going on between not just your friends, but also with many other people with whom you might have just dreamt of before. (For example, i have got one or two replies from my favorite singer Chimayi).
Short lifetime of tweets
You post a status update in facebook, and it definitely lies around in your homepage (in the form of notifications, etc.) for a minimum of one day (mostly more than that). Whereas lifetime of a tweet is much shorter than that. Your tweet will remain in your followers’ home page for hardly a few minutes. So all the communication and sharing remains up to date and instant. This point could be argued either ways as both advantageous and disadvantageous. But in facebook, after some 50 odd notifications over a period of week, i’d regret why i liked a status in the first place.
I am not coming to say that facebook is bad. Facebook has its own use case. The status messages in facebook are meant to be lingering around one’s homepage for a longer period of time. Hence twitter should be the real tool that shall be used to post real time updates, where people can comment on it instantly too. Also, tweets come up in what is called Google Realtime Search results.
Internet is huge and a few years back Google revolutionized it by organizing the information available in the internet. That was purely an algorithmic approach, whereas today, twitter is trying to generate and organize information based on one’s personal context, supplemented by algorithms. So, join twitter today and i promise i’ll follow you :-P
You can follow me in twitter here.
-Vignesh
Labels:
computers,
facebook,
internet,
social media,
twitter
Sunday, December 19, 2010
Improved IRCTC Ticket Booking - Google Chrome Extension
*Note: This extension does not work anymore and I have stopped updating it. Please do not contact regards to this*
AutoIRCTC! - A Google Chrome extension that helps in speeding up the IRCTC ticket booking process.
Scripting has always interested me and being a reasonably active member of the internet community, i always tried to customize the road of web i travel to my likes and needs. This is one such script that i thought will be helpful if shared. So i have added minimal features to the script i have been using personally for quite a while now. It has really helped me speed up the ticket booking process.
Features include:
Download: You can download the extension from here!
Instructions and Screenshots
Disclaimer
The purpose of this extension is to increase the ticket booking experience of a common man and it no way intended to be commercial. Using this extension does not guarantee your ticket booking. Its just a minor enhancement to the ugly IRCTC user-interface.
Footnotes
I am still a beginner to the world of Google Chrome extensions. So you are sure to find a lot of bugs. In case of any feedbacks/issues, please write to me at vig...@gmail.com (please click to view the full address).
-Vignesh
AutoIRCTC! - A Google Chrome extension that helps in speeding up the IRCTC ticket booking process.
Scripting has always interested me and being a reasonably active member of the internet community, i always tried to customize the road of web i travel to my likes and needs. This is one such script that i thought will be helpful if shared. So i have added minimal features to the script i have been using personally for quite a while now. It has really helped me speed up the ticket booking process.
Features include:
- Automatic Login
- Swap from and to stations in a single click
- See all the trains availability in a single screen
- Pre-fill the passenger details
Download: You can download the extension from here!
Instructions and Screenshots
- Accept the warning and click on continue

- Click on Install

- After the installation is complete, You will see a confirmation like this:

- Also, you can view AutoIRCTC in the list of extensions in chrome://extensions

- Now, when you visit www.irctc.co.in, you will see a small icon next to the bookmark star. Clicking on that icon will give you a pop up where you can configure your settings. If you leave the login credentials empty, then auto login will be disabled. Click on "Save Settings" after you have entered your details.

- Now, when you reload your page, you will be automatically logged into IRCTC. And instantly, you will be able to notice the "Swap from and to" option under "Plan my travel". This button helps you to swap the from and to cities without making an unnecessary server request.

- Enter your travel city and date. Now you will be able to see the availability of all trains matching your criteria in a single screen. Also, the page has been cleaned up to now show First class AC and First class (if you are making a first class booking, then disable the extension and go ahead as usual). The default class to check availability for can be changed by clicking the page icon near the bookmark star.

- Now, in the passenger details form, you can see that it has been pre-filled with your data thereby avoiding your need to type your details every time (Note that pre-filling senior citizen is not supported in this version).

- The quick book form too will be pre-filled with your data.

- After these steps, proceed as usual for payment options and complete your ticket booking.
Disclaimer
The purpose of this extension is to increase the ticket booking experience of a common man and it no way intended to be commercial. Using this extension does not guarantee your ticket booking. Its just a minor enhancement to the ugly IRCTC user-interface.
Footnotes
I am still a beginner to the world of Google Chrome extensions. So you are sure to find a lot of bugs. In case of any feedbacks/issues, please write to me at vig...@gmail.com (please click to view the full address).
-Vignesh
Tuesday, December 14, 2010
Why Computer Science should not be taught with Python!
Every Computer Science student begins his academic travel with the first stop being C. It is really a good language to begin with and it helps the student to grasp the fundamentals of how a computer program works. And (atleast in India) most of the Computer Science courses just revolve around C/C++ almost the entire of the curriculum. All the laboratory classes usually mandates the student to develop programs in C/C++ or Java in some cases.
Any student who has worked for a reasonable amount of time with a language like Python or Ruby will be against this system. He will be frustrated in writing tens of lines of C code when the same can be accomplished in very few lines in Python. I have a strong opinion that this should not be the case and undergraduate courses should insist on students using C/C++ as their primary language on the academic curriculum side.
C is a programming language that requires very verbose form of writing programs which will be highly helpful in learning and understanding the underlying concept thoroughly. Consider an example of quick sort. It is a single line of code in Python. But what does the student really understand out of that single line? Whereas when you write the same thing in C, it really forces you to understand the algorithm line-by-line, thereby making the student more knowledgeable about the actual working of the algorithm rather than just getting the thing done. Getting things done is top priority in an industry. But when it comes to academia, learning the underlying working is more important than getting things done.
Another good example would be writing a simple socket program. In python its a maximum of ten lines. Whereas in C you work very closely (almost with actual system calls) and hence you thoroughly understand the whole process of how a socket connection works.
More the abstraction, better the survival. This definitely holds good, but not when you are undertaking a course to become a computer engineer. Abstraction is good once you have completed the learning process. But when you are in the learning process, less abstraction is more helpful in making a student better.
-Vignesh
Any student who has worked for a reasonable amount of time with a language like Python or Ruby will be against this system. He will be frustrated in writing tens of lines of C code when the same can be accomplished in very few lines in Python. I have a strong opinion that this should not be the case and undergraduate courses should insist on students using C/C++ as their primary language on the academic curriculum side.
C is a programming language that requires very verbose form of writing programs which will be highly helpful in learning and understanding the underlying concept thoroughly. Consider an example of quick sort. It is a single line of code in Python. But what does the student really understand out of that single line? Whereas when you write the same thing in C, it really forces you to understand the algorithm line-by-line, thereby making the student more knowledgeable about the actual working of the algorithm rather than just getting the thing done. Getting things done is top priority in an industry. But when it comes to academia, learning the underlying working is more important than getting things done.
Another good example would be writing a simple socket program. In python its a maximum of ten lines. Whereas in C you work very closely (almost with actual system calls) and hence you thoroughly understand the whole process of how a socket connection works.
More the abstraction, better the survival. This definitely holds good, but not when you are undertaking a course to become a computer engineer. Abstraction is good once you have completed the learning process. But when you are in the learning process, less abstraction is more helpful in making a student better.
-Vignesh
Thursday, December 2, 2010
A flaw/feature in Google Chrome Extension design!
I am recently into customizing my road in the web with simple google chrome extensions to get and share content in the web the way i want. After having spent a good amount of time with the Google Chrome Extension Framework and their javascript API, i feel there is a flaw in the design of it. I still am not sure if this is a flaw or an intended feature.
Before describing the exact flaw, let me give a brief overview of things whose understanding is required to understand the flaw.
Browser Actions
Browser Actions are those using which your extension can do things along with the browser. Every browser can include a pop up page (yes the one which pops up when you click on the extension's icon on the top right corner). As of now, the only way to open up the pop up page is by clicking the icon. This point is important. Let me come back to it in a while.
Context Menus
Extensions can add custom context menus (the one that appears when you right click on something within the browser).
The flaw/feature
Now, as of writing this, there is no programmatic way of invoking the pop up page (other than clicking the icon manually as mentioned earlier). This makes sense because if a non-manual initiation of the pop up was allowed then it would be an irritation for users to see the pop up page annoyingly appear just when they install an extension.
Whereas, the restriction now enforced is a bit too strict. The restriction should look something like this, "The pop up page can be initiated only by a manual action", whereas the restriction that chrome enforces now looks like this, "The pop up page can be initiated only by clicking the pop up icon". This restriction is too much because, there are other manual actions than clicking the pop up icon, that might require an user interactive window for processing. For example, consider the case of a context menu. When a context menu is clicked, it completely makes sense for the extension to initiate the pop up with the context based content and enforce user interaction. This is simply *NOT* possible now.
Other options
Though the clean solution is not possible, there are one or two workarounds that i have found out to overcome this problem.
-Vignesh
Before describing the exact flaw, let me give a brief overview of things whose understanding is required to understand the flaw.
Browser Actions
Browser Actions are those using which your extension can do things along with the browser. Every browser can include a pop up page (yes the one which pops up when you click on the extension's icon on the top right corner). As of now, the only way to open up the pop up page is by clicking the icon. This point is important. Let me come back to it in a while.
Context Menus
Extensions can add custom context menus (the one that appears when you right click on something within the browser).
The flaw/feature
Now, as of writing this, there is no programmatic way of invoking the pop up page (other than clicking the icon manually as mentioned earlier). This makes sense because if a non-manual initiation of the pop up was allowed then it would be an irritation for users to see the pop up page annoyingly appear just when they install an extension.
Whereas, the restriction now enforced is a bit too strict. The restriction should look something like this, "The pop up page can be initiated only by a manual action", whereas the restriction that chrome enforces now looks like this, "The pop up page can be initiated only by clicking the pop up icon". This restriction is too much because, there are other manual actions than clicking the pop up icon, that might require an user interactive window for processing. For example, consider the case of a context menu. When a context menu is clicked, it completely makes sense for the extension to initiate the pop up with the context based content and enforce user interaction. This is simply *NOT* possible now.
Other options
Though the clean solution is not possible, there are one or two workarounds that i have found out to overcome this problem.
- If the user-interaction required is really simple, then merely use the javascript prompt('') function from the background page.
- You can always create a tab and make the user interaction
- Use a floating div or a jquery modal window to enforce the user interaction (this can be done using the executeScript API function).
-Vignesh
Labels:
chrome,
computers,
google,
google chrome,
internet,
programming,
technical,
technology
Wednesday, December 1, 2010
Android 2.1 USB Tethering in Ubuntu
The worst part about owning an android phone is to wait for updates from your hardware vendor (HTC in my case) to provide OS updates. I am still stuck with Eclair and eagerly awaiting froyo,while the N1 counterparts are eagerly awaiting gingerbread :-P.
Wifi tethering (using the phone as a wifi hotspot) is one of the key features of froyo. Since i don't have froyo, i have to go through a tedious process to setup wifi tethering in my eclair. So, i chose the easier option of USB tethering.
Before i even connected the USB cable, i browsed through the internet and found out there are various methods available for USB tethering. There were many tutorials on how to achieve this. I read all levels of tutorials from rooting the device to installing the SDK to installing a $30 app. Atlast i found a simple app, which could do the trick.
I connected the phone (running android 2.1) and the computer (running ubuntu 10.04 netbook remix) and selected "Enable mobile internet sharing" in the phone. Thats when the miracle happened. A small pop up notification appeared in the top corner saying "Connected to wired network auto usb0". I was surprised. I had just spent half an hour surfing through tutorials to make this work. All of a sudden out of nowhere it works out of the box on just connecting the cable. To ensure i just pinged my blog and it was working like a charm!
So its windows that requires all the crappy drivers and vendor software for USB tethering. In ubuntu it automatically established a LAN (PAN may be) and set the IP, gateways and DNS and works on the go without any manual effort (except for connecting the phone and computer of course ;-))
So for all who want to tether your phone's internet connection, please do not waste your time in reading tutorials and rooting your device. Just boot into linux and connect your phone :-)
P.S.: This post is through the tethered 3g connection :-D
-Vignesh
Wifi tethering (using the phone as a wifi hotspot) is one of the key features of froyo. Since i don't have froyo, i have to go through a tedious process to setup wifi tethering in my eclair. So, i chose the easier option of USB tethering.
Before i even connected the USB cable, i browsed through the internet and found out there are various methods available for USB tethering. There were many tutorials on how to achieve this. I read all levels of tutorials from rooting the device to installing the SDK to installing a $30 app. Atlast i found a simple app, which could do the trick.
I connected the phone (running android 2.1) and the computer (running ubuntu 10.04 netbook remix) and selected "Enable mobile internet sharing" in the phone. Thats when the miracle happened. A small pop up notification appeared in the top corner saying "Connected to wired network auto usb0". I was surprised. I had just spent half an hour surfing through tutorials to make this work. All of a sudden out of nowhere it works out of the box on just connecting the cable. To ensure i just pinged my blog and it was working like a charm!
So its windows that requires all the crappy drivers and vendor software for USB tethering. In ubuntu it automatically established a LAN (PAN may be) and set the IP, gateways and DNS and works on the go without any manual effort (except for connecting the phone and computer of course ;-))
So for all who want to tether your phone's internet connection, please do not waste your time in reading tutorials and rooting your device. Just boot into linux and connect your phone :-)
P.S.: This post is through the tethered 3g connection :-D
-Vignesh
Subscribe to:
Posts (Atom)