Monday, August 23, 2010

Collection of Funny One Liners !! :-)

I was recently going through some bugzilla quips. I am sharing a few of them which i liked. (Yes it is a few, because the collection was really hugeeeeee).




  • In order to understand recursion, one must first understand recursion.

  • Once you get a B.S., you think you know everything. Once you get an M.S., you realize you know nothing. Once you get a Ph.D., you realize -no one- knows anything.

  • If Java had true garbage collection, most programs would delete themselves upon execution.

  • To iterate is human, to recurse divine.

  • The "Gnome ate my boyfriend! Help!" bug: https://bugzilla.gnome.org/show_bug.cgi?id=626593

  • Perl - The only language that looks the same before and after RSA encryption.

  • Vi is a subset of evil.

  • PHP is a minor evil perpetrated and created by incompetent amateurs, whereas Perl is a great and insidious evil perpetrated by skilled but perverted professionals.

  • Java is to JavaScript what Car is to Carpet.

  • If at first you don't succeed, call it version 1.0

  • To err is to human, but to forgive is not the company's policy

  • The first 90% of the code accounts for the first 90% of the development time. The remaining 10% of the code accounts for the other 90% of the development time.

  • Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live.

  • Hofstadter's Law: It always takes longer than you expect, even when you take into account Hofstadter's Law.

  • Walking on water and developing software from a specification are easy if both are frozen.

  • Banks will loan you money, if you can prove you don't need it.

  • Smart people listen to the opinions of others and those with opinions listen to smart people

  • Forgiveness is a wonderful idea, until you have something to forgive.

  • Laziness is nothing more than the habit of resting before you get tired.

  • I never discriminate, I hate people equally!

  • Even a mosquito doesn't get a slap on the back until it starts to work

  • Reality continues to ruin my life!

  • In theory, there is no difference between theory and practice. But in practice, there is.

  • Every generalization has an exception.

  • If you can't do it right now, don't do it wrong now, do it right later.

  • Light travels faster than sound, no wonder you find people seeming bright until you hear them speak.

  • If I'm not back in five minutes... Wait longer!

  • All programmers are optimists

  • There's no such thing as 'early.' There's only 'on time' and 'late'

  • Which port mysql runs on? USB Port - one of the interview candidates replied.

  • The difference between B tree and B+ tree is the presence of Positive (+) symbol - Answer given by a student during interview

  • There are three kinds of lies: lies, damned lies, and statistics

  • Don't tell them we failed. Tell them we decided to temporarily postpone our success.

  • In order to make an apple pie from scratch, you must first create the universe.

  • There are two types of engineers: the type that writes code and the type that documents that code.

  • Life is 10 times faster with NOJAVA=1

  • Yeah, but law of physics- The computer is fine, liquid spills on it... computer is not fine.

  • When we drink, we get drunk. When we get drunk, we fall asleep. When we fall asleep, we commit no sin. When we commit no sin, we go to heaven. Sooooo, let's all get drunk and go to heaven!

  • Everybody should believe in something. I believe I'll have another drink.

  • Computers make extremely fast.... meticulously accurate.... ..... ..... mistakes!

  • The Queue Principle: The longer you wait in line, the greater the likelihood that you are standing in the wrong line.

  • There are two ways to write error-free programs; only the third one works.

  • For any problem there is a solution that is simple, quick, and ultimately worse than the problem.

  • Everything is okay in the end. If it's not okay, then it's not the end.

  • If it doesn't run, try the --do-it

  • Life can only be understood backwards; but it can only be lived going forward.

  • Even a stopped clock shows correct time twice a day.

  • The major difference between a thing that might go wrong and a thing that cannot possibly go wrong is that when a thing that cannot possibly go wrong goes wrong it usually turns out to be impossible to get at or repair.

  • "To be is to do"-Socrates; "To do is to be"-Plato; "Do Be Do Be Do Scooby Dooby Do"



-Vignesh

Sunday, August 15, 2010

Happy independence day !! :-)

Today is the day, that will make every Indian feel proud. Wishing you all a very happy independence day !! :-)

Happy independence day !! :-)


அங்கும் அங்கும் இங்கும் இங்கும் சுற்றி சுற்றி திரிந்தேன்,
சின்ன சின்ன பறவைப்போல் திசை எங்கும் பறந்தேன்,
வெய்யிலிலும் மழையிலும் விட்டு விட்டு அலைந்தேன்,
முகவரி எது என்று முகம் துலைத்தேன்...
மனம் பித்தாய் போனதே...
உன்னை கண்கள் தேடுதே...
தொட கைகள் நீளுதே, இதயம் இதயம் துடிக்கின்றதே...
எங்கும் உன்போல் வாசம் இல்லை ஆதலால் உன் மடி தேடினேன்...
தாய் மண்ணே வணக்கம்...

வந்தே மாதரம்...வந்தே மாதரம்...

Happy independence day !! :-)


வண்ண வண்ண கனவுகள் கருவுக்குள் வளர்த்தாய்,
வந்து மண்ணில் பிறந்ததும் மலர்களாய் தொடுத்தாய்...
அந்த பக்கம் இந்த பக்கம் கடல்களை கொடுத்தாய்,
நந்தவனம் நட்டுவைக்க நதி கொடுத்தாய்..
உந்தன் மார்போடு அணைத்தாய், என்னை ஆளாகி வளர்த்தாய்...
சுக வாழ்வொன்று கொடுத்தாய், பச்சை வயல்களை நீ பரிசளித்தாய்...
பொங்கும் இன்பம் எங்கும் தந்தாய், கண்களும் நன்றியால் பொங்குதே...

வந்தே மாதரம்...வந்தே மாதரம்...

தாயே உன் பெயர் சொல்லும் போதே இதயத்தில் மின் அலை பாயுமே,
இனிவரும் காலம் இளைஞனின் காலம் உன் கடல் மெல்லிசை பாடுமே,
தாய் அவள் போல் ஒரு ஜீவன் இல்லை, அவள் காலடி போர் சொர்க்கம் வேறு இல்லை
தாய் மண்ணை போல் ஒரு பூமி இல்லை, பாரதம் எங்களின் சுவாசமே...

தாய் மண்ணே வணக்கம்...தாய் மண்ணே வணக்கம்...

வந்தே மாதரம்...வந்தே மாதரம்...

Jai Hind :-)

-Vignesh

Friday, August 13, 2010

My new HTC Wildfire - Stepping into Android world !! :-)

Those who are following me in twitter/buzz might be knowing that i recently joined the Android community with the purchase of HTC Wildfire. It is one of the most recent phones from HTC released in India. As a matter of fact, i am really happy to see HTC building its base strongly in India (there are already 3 to 4 service centres in chennai alone and one in coimbatore too!). I wanted to buy an Android phone inspired by the adventures with android (nexus one) by varunkumar.

Ok, here i go with my first review of the brand new HTC Wildfire.

Specifications

  • Capacitive touch screen 240x320 QVGA

  • Android 2.1 with HTC Sense UI

  • 512 MB ROM

  • 384 MB RAM

  • microSD slot (2GB included) - expandable upto 32 GB

  • 3G upto 7.2 MBPS, Wi-Fi IEEE 802.11, GPRS, EDGE, Bluetooth v2.1

  • Internal GPS Antenna

  • 5 Megapixel Camers

  • G-Sensor, Proximity Sensor, Digital compass



Pros


  • Look and feel: The phone looks really sleek with a good amount of screen space (with both landscape and portrait orientations obviously).


  • Touchpad Input: This was something i was worrying before i bought this phone, as i have never used a touch pad based phone before. But now i know my worries were totally stupid, the capacitive touch screen in HTC Wildfire is really very good and much better than their resistive equivalents in the recent nokia phones. (N97 users, no offence, but the touchpad here is much better than N97). And yeah, life gets 100 times better with swype installed. We are really in the next generation of text inputs. Waiting to see how swype can change touch based netbooks. (For those who don't know what swype is, look here).


  • Sound Clarity: The sound clarity has been decent as far as i have experimented. (I am not an expert in playing around with the equalizer fields of a music player). To my needs, which are, hearing songs, loud ringtone, it works much more than fine.


  • Sensors: This is one feature that i never expected to be toooooo good. The sensors in the phone are realtime awesome. First is the orientation sensor which works much better than my previous mobile (n79). Even when i am lying down in a bed, the orientation sensor works perfectly. And as HTC says, another major sensor added to wildfire is, when you get a call, the phone automatically reduces the volume when you pick the phone up in your hands. Also, if you just invert the position of the phone, it stops the ringing tone. Another good sensor available is, when you are talking over phone, (with the phone close to your cheeks), the backlight automatically goes off. And it goes on at the instance you get it out of the talking position. On the whole, sensors really stand out in Wildfire


  • Camera Clarity: Again, as far as i have experimented, camera clarity has been quite good. HTC Wildfire comes with a 5 MP camera with autofocus. I will update this area after my friend bala experiments the camera features. The flash makes pictures taken at night also pretty clear.


  • Sync with Google Accounts: I would say Android is really a trademark google's approach for mobile phones as they have shown it with the amount of integration that can be done between your android phone and google account. You can sync everything from contacts and emails to even docs. Google latitude and buzz integration are pretty good too. Even with my slow speed gprs internet, i receive mails just like smses in my wildfire.


  • Context Aware Notifications: I learnt this during my schooling. When we right click somewhere in windows, we will get a pop up menu. But the contents of the menu will vary depending upon where you right click and hence it was called as a "Context Sensitive Menu". Similarly, the notifications in Android are all highly Context Aware (e.g. location information are always opened by google maps and not by the internal browser). And many helpful notifications to save battery power are also really good.


  • Friends Stream: Again this is one of the features that HTC is using in its marketing campaign for Wildfire. It is really a usefull application that connects you with your twitter, facebook and flikr friends. And yeah how can i forget to mention about the contact syncing done by wildfire. Since i had all the contacts in phone memory in my previous phone, i was planning to transfer it to my new one. Thats when i found that wildfire has already picked up many of the phone numbers of my friends from facebook and twitter. Wow! It saved atleast and hour to two of my time :-) And i don't need to update my contact book anymore, my phone does it for me.


  • Innovative Caller ID: Instead of just the boring caller name and caller photo, Wildfire shows the callers facebook status, birthday, etc. This works nicely even with my slow speed gprs connection (probably some caching is done somewhere!).


Cons


  • Battery Backup: Since the phone is almost always connected to internet (via gprs), battery power doesn't last for more than 24 hours. I feel this is okay for people like me who don't have trips often and get ample amount of time to charge it. Anyways, this definitely needs scope of improvement especially if HTC is going to market Wildfire as a business phone.


  • Heating Up: Almost all the gadgets have this problem these days. Wildfire gets heated up a bit too much while charging. Unlike my previous phone, it doesn't get heated up when using gprs/wifi extensively.



Overall, a really good Android phone to buy especially in a relatively expensive mobile phone market like India.

P.S.: Expect a few android from me apps soon ;-)

-Vignesh

Wednesday, August 11, 2010

Linux X Server - Awesome Abstraction !! :-)

Before you start reading this, a headnote, this article is targetted for people familiar with linux. Though i have tried to keep it as simple as possible, some parts of this article may seem greek and latin to those who are not familiar about linux.

To start with, as the title suggests i am gonna talk about the Linux X windowing system. Before starting, there have always been so many things about linux that have been controversial (like Vi vs Emacs and Linux vs GNU/Linux to name some - people who are not familiar with all these, just ignore and read on). Linux has always been (atleast according to me) distinct in its way of organizing itself so that the users can extract maximum output of it. Adopting strictly to the basic open source principle of "choice". Briefing it in a nutshell, linux and its companions have always adhered to the goal of providing the maximum choice for its users (best example is the number of linux distributions out there (ubuntu, fedora, suse, etc)).

The linux way of architecturing a product or its feature is in such a way that it can be extracted to the fullest. I am going to write about one of the best examples of such an architecture that linux has built over years, the X Windowing System. So, what the hell is it ? If you are a linux user, you are most likely to be using the X right now. If you have seen linux before, then you have probably seen X. Before talking about the architecture of the X windowing system, let me give a brief introduction about it.

Gedit running in windows via putty


The X windowing system is the basic graphical user interface in linux. The X protocol specifies the way the windows are displayed on the screen. So whats the big deal about it? All the operating systems have some such thing that is used to display stuff on the screen. Yeah, thats true. But the way X does it is significantly different and i shall say, the designer of X is a real out-of-the-box thinker.

If you or me were designing such a system that is used to display stuff on the screen, all we would have done is make a level of abstraction over all the processes that requires display and just draw whatever is requested by the processes simply on the screen. X does just this. But how it has layered itself is what stands out.

First some terminologies. The programs which require to display something are known as the X Servers. The entity that actually interacts with the screen and draws stuff on the screen is known as the X Client. People generally tend to confuse this with the client-server model whereas this is actually client-server model with the roles reversed. In general, the guy who provides service will be called the server whereas here the guy who requests service is called server. (I still could not figure out why this terminology is followed).

The X server and client communicate via sockets. This is where X stands out. Since they communicate via sockets, yeah you guessed it right, it does not matter where the client and server runs (whether on the same machine or not). The TCP/IP stack of the OS takes care of the abstraction in how the requests and responses reach the client and server. So, the client can be any running application (even on a computer without a monitor attached to it) and the server can be any computer (of course with a monitor attached to it). As long as the client and server can communicate with each other via a network, it is possible to access both the computers using a single monitor.

Though this might sound fairly trivial today thanks to a bunch of remote GUI software available in the market, this is something that has been so well thought on those days when X was designed. It is when i see such wonderful designs i realise my college HOD's phrase "More the abstraction, Better the survival".

This article may even be a piece of junk. But i just could not resist blogging about such an awesome design.

P.S.: Seriously, you can scold me openly. :-)


-Vignesh

Sunday, August 1, 2010

Happy Friendship Day (Poem) !! :-)

Friends have always been a part and parcel of my day to day life. Today being world friendship day, i wish you all my friends a very happy day. I am where i am because of all your support. I thank all of you from the bottom of my heart for have being with me all the time.


Happy Friendship Day (Poem) !! :-)






Here I go, dedicate this rubbish poem (really??) which i have written, to all my friends !! HAPPY FRIENDSHIP DAY :-)

HAPPIEST ON EARTH...

Somewhere i was born,
Somewhere i was christined,
But was it God's grace,
Or was it fate's good face,
Or my favoured fortune,
That i met you...

Somewhere i was brought up,
Something i was doing,
And When i met you,
I forgot the whole milky way,
And just turned up in your way,
Which made us the happiest in the galaxy...

When i was jumping in joy,
Your uttered, "I'm with you"...
When i was in weeping in sorrow,
Your sweet voice said, "I'm still with you"...

Who are you to me?
Friend..??
I don't find thy words in this langua,
That suits you the bestest...

I have kept you in my heart,
Tell me if it hurts,
When i breathe,
I'm ready to halt thy...

The earth is so small,
The world has shrunk,
But never our friendship did!!!
The way we move it through our hearts,
Made others say wow with an awe...

Our hearts know nothing,
But only purity,
And trustworthy,
And also thinking sweetly...
As we count the hours, minutes and seconds,
Our feelings move in a healthy way...
For we are the HaPpIeSt FeLLoWs...

-Vignesh

Thursday, July 29, 2010

Isn't This Life !! :-)

Okay guys, here we go. Get ready to hear some lamenting. This was a poem that i wrote after a series of bad incidents in my life. Hope you like reading it :-)

DEDICATED TO...
All (2 year) friends who behaved in a way, so that I was able to scribble something...

HAPPY ARRIVAL...
I came here as a alien...
Though I didn't really know you,
You made my world here brand pure...
You were my friend...

When I didn't know what to do...
You were with me,
Making me to find out myself...
You were my friend...

When I imagined about life without you...
You just whispered,
"Shut up dear, I'm with you"...
For you were my friend...

We were tearing the world apart,
Captivating all we wanted to,
Beating all the odds together,
And having fun round the clock...
You were my BEST friend...

MY MISTAKE?...
I never knew, that I upset you,
Suspect I'm a fool to weep and help...
Was it my mistake?

When it came to heart and heartache,
You ought to have uttered genuinely,
Which you no way did...
Was it my mistake?

Not daring to speak at my face...
You wore the damn mask,
Which was the cause...
Was it my mistake?

DISMAL DAYS...
And now...!!!:-(
What had happened to you???
No Heart, No Memories???
My emotions slowly fading away...


Think of the memories which we have had…
How can you ever be without me…?
Guess you are heartless and feelingless…
My emotions slowly fading away...

Slowly and steadily day by day,
My care for you is being reverted...
And my feelings getting averted…
For the reason that,
"My emotions slowly fading away"...

DESPERATION TO LEAVE...
Not to spread the talking with your friends about me,
But Hiding past, just let it rest in peace...
Forget Me...

But not you sponge these tears,
Till your memories run sapless...
Forget Me...

Not to leave the days isolated,
And not to point out anything to you,
But to try and wipe out the actuality that we had all...
And thus to let me slip well out of your soul,
Forget Me...

Cause I'm repressed to forget and forgive,
So just enact as if we not ever met...
I ask you only one thing now,
And that is to...
Forget Me...

Hope life will be the best for you,
When I'm gone...
So please please please,
Forget Me...

RECONCILIATION...
Its not so poor, I'm not so worried...
I've crossed the distress,
And I'm lively once again...
I'm the HaPpY FeLLoW...

Don't imagine that I'm weeping all time,
There is no cause to worry...
And I'm really okie now...
For I'm the HaPpY FeLLoW...

I'm not gonna look back any more...
Wherever you are,
Still your happiness is mine too...
I'm now the HaPpIeSt FeLLoW...

FINAL LOOK (With a smile on the face)...
And now when I turn back...
All I can do is,
Just give a smile to my face and to my lips...
It's all part of life...

I'm really a brainless,
That I took crores of toiling seconds,
To understand that...
"Its all part of life"...

Verses of Frost flashing in my mind,
And Miles to go before I sleep...
And Miles to go before I sleep...

-Author
Do you really want to know who scribbled all such rubbish...??
It's me...My name is ViGnEsH....And I'm the HaPpY FeLLoW...

Thursday, July 22, 2010

7 Mistakes of my life (in the linux commandline) :P

Many people who know me will know that i am an open source enthusiast. Hence, going by the basic prerequisite of an open source enthusiast, i have been using linux primarily for the past 5 odd years. To begin with, initially i was very obsessed with the eye candy GUI available in Linux. It was way too good and no where close the ones available in windows. But recently (i.e.) in the past two years or so, I have realized that the linux way of doing things is to use the mighty shell.

So all the linux geeks talk about the shell, what the heck is it? The answer is simple. Unix shell is the powerful command line interpreter, that provides an user interface through the command line. Almost all the operations that are possible with a GUI, can be performed using the shell.

7 Mistakes of my life (in the linux commandline)


I came to know the immense power of shell more recently (during my internship with hashcube), where i had to log in to a remote server for all my work. That was the time where i learnt a lot about the linux shell since i had no GUI access and that was when i discovered the real power of shell.

The rest of this post might sound hebrew and chinese (why always greek and latin :D) for those who do not know (atleast) the basics of linux shell. In this article, i am going to share the (reasonably impacting) blunders i have made with my unix shell so far in life. Almost everything were done as root (unless mentioned).


  1. I once typed this in my friend's computer for fun when he was away talking over phone,
    rm -rf *
    And i did not press the enter key. My friend was talking in phone for quite a while and his monitor went to sleep by the time he came back. Guess what he did ? Yeah, he tapped the enter key twice to wake his monitor up and by the time the display came back on he was already scolding me by bad words ;-) Moral: Never tap Enter/Esc key when monitor goes to sleep. To be safe, press keys like alt, ctrl, caps lock.

  2. To remove all the files in /tmp/foobar, i had to type
    rm -rf /tmp/foobar/*
    But to my ill luck, that folder was empty and hence my tab completion added an extra space before i could type * and hence i typed
    rm -rf /tmp/foobar/ *
    Guess what the shell did with this ? Yeah, i lost my entire home directory :-) Moral: Always see the rm command thrice before pressing enter. And to be safe, put the -rf option in the end after checking the rest of the line.

  3. Recent linux versions have the option of protecting a partition by encryption. I once did an file system check fsck on such an encrypted volume and lost almost everything in it. Moral: Check the filesystem type twice before running a check

  4. I wanted to create a compressed archive. So i open the shell and quickly type in,
    tar -czvf /path/to/file file_archive.tar.gz instead of
    tar -czvf file_archive.tar.gz /path/to/file
    Yes, i lost the file which i had no backup of!

  5. I had around 1000 files with a # in their name. They were all debug files that were no more required. Hence i decided to remove them using the following command:
    rm -rf *#*
    Well, whats wrong with this? Paste this command in an editor that highlights syntax, and you'll know whats wrong :-)

  6. I used to have my desktop switched on for days together. To check when it was last rebooted, i typed in
    last | reboot instead of last | grep reboot
    No need to guess what happened !! :-)

  7. Try this as root if you are dare enough (or free enough to sit and reinstall your linux now):
    chmod -R -x /bin


Though the linux shell is very powerful, (we all know with great power comes even a greater responsibility), if you are not careful in using it, you might be standing in front of your boss begging yourself for screwing things up, or even worse nightmares can happen. :-)

Go ahead and share more interesting shell mistakes that you have come across.

Note: Throughout this article i have used the terms Unix/Linux interchangably though it is not the same

-Vignesh