tag:blogger.com,1999:blog-74184687932916783562024-03-18T13:06:06.627+05:30technology tooth paste for tech lover madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.comBlogger60125tag:blogger.com,1999:blog-7418468793291678356.post-60003987384813521932017-05-28T02:20:00.001+05:302017-05-28T02:21:29.830+05:30Zero MQ : implementation of Publisher/Subscriber model using node<div dir="ltr" style="text-align: left;" trbidi="on">
Zero MQ is a very easy technology to implement various message passing technology. Here I am trying to implement one of most common pattern Publisher/Subscriber model with Node JS and Zero MQ .<br />
<br />
In Publisher/Subscriber model , Publisher (server) publish a message , and number of client that can subscribe it to it.<br />
<br />
Before starting to code , Plz go ahead and intall zmq in your machine . You can follow step by step command in the below github gist<br />
https://gist.github.com/cdjhlee/b8e3c927a01b0948b42d<br />
<br />
Next you need to install zmq node module in your machine. I have installed it "globally" .<br />
<br />
Let now , begin our Publisher. Here in the below code our Publisher is constantly watching a file and send a message when it find that file has been change. Let assume the file name is "pub.txt".<br />
<br />
<script src="https://gist.github.com/abuzarhamza/adb137699b332b13cfe2dbe8d04ebb4c.js"></script>
Here I have added the fs.watch function that monitor the change in the above file and send message to all the connected client when there is change in file.So when ever u want to trigger a message all u need to make change in pub.txt file.<br />
<br />
I have written 2 subscriber one that subscribe to cat and other to dog. Now when the server , send the message . The respective client capture the message and print it to console.<br />
<br />
<br />
<br />
<br />
<script src="https://gist.github.com/abuzarhamza/3585b84b1059b82b5d37284a1335d6ca.js"></script>
<br />
<script src="https://gist.github.com/abuzarhamza/0c48f58a1b65879abe93cc0553573f2a.js"></script>
</div>
madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com5tag:blogger.com,1999:blog-7418468793291678356.post-76477313749009524082017-05-25T19:49:00.002+05:302017-05-28T02:24:38.141+05:30Node JS : understanding the event loop in Javascript.<div dir="ltr" style="text-align: left;" trbidi="on">
Most of the time , JavaScript developer have the confusion around the concept of event loop. How event loop , libuv and Google V8 interpreter works together that make JavaScript I/O non-blocking and asynchronous.<br />
<br />
Most of us will one-way or other , has/have encountered the question in the interview or have been asked to explain the event loop or asynchronous concept in small JavaScript script with "setTimeout" function with a callback.In many ways , the concept of event loop is a kind of hard shell to crack for people coming from different programming background. <br />
<br />
Recently I came across , Philip's lecture were he has not only explained the flow of code from stack , to callback queue to event loop successfully but also demonstrated it very well.<br />
He has even develop small tool to give demo of event loop flow and how various component of Javascript interact with each other . http://latentflip.com/ <br />
<br />
<br />
<br />
Hope the above lecture will able to clear the confusion surrounding the concept. </div>
madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com0tag:blogger.com,1999:blog-7418468793291678356.post-81890819466762702172017-03-14T23:18:00.001+05:302017-03-14T23:18:48.683+05:30Study Less, Study Smart<div dir="ltr" style="text-align: left;" trbidi="on">
If you spend hours and hours of studying, without improving your grades, or information retention, then learn how to study smart by Marty Lobdell. Lobdell taught Psychology at Pierce College in Washington State for 40 years. During Lobdell's career, he has taught tens of thousands of students and he wants students to succeed. After watching students cram for eight hours or more for a test without any improvement, Lobdell has developed a studying technique that helps the brain retain the information that you are studying in this video "Study Less, Study Smart"<br />
<br />
<br />
<br />
<br />
<br />
<iframe allowfullscreen="" frameborder="0" height="315" src="https://www.youtube.com/embed/IlU-zDU6aQ0" width="560"></iframe>
</div>
madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com0tag:blogger.com,1999:blog-7418468793291678356.post-78226485277064194292017-01-25T13:31:00.004+05:302017-01-25T13:31:33.992+05:30Which of the following two passwords is stronger?<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="red_headline" style="background-color: white; color: #990000; font-family: verdana, tahoma, arial, helvetica, sans-serif, "MS Sans Serif"; font-size: 12pt; margin-bottom: 1em; margin-top: 1em; text-align: center;">
<br /></div>
<div class="red_headline" style="background-color: white; color: #990000; font-family: verdana, tahoma, arial, helvetica, sans-serif, "MS Sans Serif"; font-size: 12pt; margin-bottom: 1em; margin-top: 1em; text-align: center;">
<br /></div>
<div class="red_headline" style="background-color: white; color: #990000; font-family: verdana, tahoma, arial, helvetica, sans-serif, "MS Sans Serif"; font-size: 12pt; margin-bottom: 1em; margin-top: 1em; text-align: center;">
Which of the following two passwords is stronger,<br />more secure, and more difficult to crack?</div>
<div style="background-color: white; color: #555555; font-family: "courier new", courier, monospace; font-size: 20pt; font-weight: bold; text-align: center;">
D0g.....................</div>
<div style="background-color: white; color: #555555; font-family: "courier new", courier, monospace; font-size: 20pt; font-weight: bold; text-align: center;">
PrXyc.N(n4k77#L!eVdAfp9</div>
<div style="background-color: white; color: #555555; font-family: "courier new", courier, monospace; font-size: 20pt; font-weight: bold; text-align: left;">
<br /></div>
<div style="background-color: white; color: #555555; font-family: "courier new", courier, monospace; font-size: 20pt; font-weight: bold; text-align: left;">
If you really want to know you need to check the gibson password brute force search calcultor. Most of the website are password strength calculator. Check out the website https://www.grc.com/haystack.htm</div>
</div>
madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com0tag:blogger.com,1999:blog-7418468793291678356.post-56638611239656488202017-01-22T10:24:00.000+05:302017-01-22T10:24:03.743+05:30nodemon : must have tool for node js developer<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_MXmFycFhnsssD6Luas6kwGMxb8rSxiDebSw_logpqWGrzo9_DqziWu92L9eKlPTmUu98IS3p1VZjtZjyJlPg7ZTLjWhuLk1Rr7hQK45NlwHfdCwmICEyG4R4ho1HKz6a_1KWrcxY7mE/s1600/Capture.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="178" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_MXmFycFhnsssD6Luas6kwGMxb8rSxiDebSw_logpqWGrzo9_DqziWu92L9eKlPTmUu98IS3p1VZjtZjyJlPg7ZTLjWhuLk1Rr7hQK45NlwHfdCwmICEyG4R4ho1HKz6a_1KWrcxY7mE/s320/Capture.PNG" width="320" /></a></div>
Some of the tools we have make developer life easy. If you are node js developer and writing any server app , you must install this small command line tool . It will make ur life dam easy.<br />
<br />
The tool restart the server as soon any files are modified. So life become bit easy.For more details check the <a href="https://nodemon.io/" target="_blank">nodemon</a> website. </div>
madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com0tag:blogger.com,1999:blog-7418468793291678356.post-20762221875736680702017-01-18T00:42:00.002+05:302017-01-18T00:42:19.855+05:30Web security : tool that u can make use to test your website<div dir="ltr" style="text-align: left;" trbidi="on">
<br />
It important for a web-developer to know kind of attack malicious people make use to do damage to your web site.<br />
<br />
You can easily visualize how these attack is being used for some of the world biggest data breached<br />
Check the information beaches around the world http://www.informationisbeautiful.net/visualizations/worlds-biggest-data-breaches-hacks/<br />
<br />
<br />
some of the common one are<br />
<br />
1. SQL injection. here I will discuss error based sql injection.In these attacker try to modify the serach query in the url and then try to get the error and next he will modify the query to get output they you does not want to desirably want to share on the web page.<br />
<br />
The easier way to make user of automated tool "Havij". Plz explore it to validate to test your website.<br />
Make sure validate the data getting as external input eg if u are expecting number .. then it should be number in thr post and get request.<br />
The other best way to get stay away from SQL injection to make use of binding variable (parameterize queries) in query that you are making use having the input from the outside.<br />
The last one is allow application to have access access to certain table with "principle of least permission". Eg should ur application db account , can run database admin command".<br />
Last one but important is web application firewall and cryptographic storage.<br />
<br />
<br />
<br />
2. Insufficient Transport Layer Security : it mean here that are you making lack of making secure layer (eg http or https) while communicating to web server on internet.Most people get hacked when they using open wifi network. Here , attacker may monitor the information in and out flowing through the router. Some attacker even modify the DNS server setting for common ip request to their own hosted website with replicated page.<br />
Some times attacker inject the key loger js script into the page. So how to prevent such attack.<br />
Make sure that you web application login page open in https mode along with https post form is used.So apply TLS to encrypt by default (U need to pay some money to get the certificate) if you are expanding your application especially for the login page authentication.<br />
<br />
Also make use of encrypted authentication cookies in your application and firewall is the last defense.<br />
Also check out out the blog how to setup SSL certificate.<br />
https://ksylvest.com/posts/2014-05-06/setup-free-ish-ssl-tls-on-heroku-for-ruby-on-rails-or-any-other-framework<br />
<br />
<br />
<br />
3. Insecure Password Storage<br />
I hope very developer is aware of rainbow table.Here the attacker has pre-computed hash table that he make use of guess the password. Easiest way to prevent , to make use of bcrypt algorithm (avoid md5) and save password and random salt used , save in two separate column. You can add additional layer of security by encrypting the output from bcrypt again using md5.<br />
<br />
eg<br />
byscript alogorithm -> random salt + password -> md5 -> save salt column and password column<br />
I future I may be sharing , how to implement the above in node js<br />
<br />
4. Cross Site Scripting (XSS)<br />
<br />
5. Weak Account Management<br />
<br />
<br /></div>
madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com0tag:blogger.com,1999:blog-7418468793291678356.post-45711462411443417442016-07-26T04:27:00.000+05:302016-07-26T04:27:43.030+05:30interview details for Perl/ Unix developer @ deutsche bank<div dir="ltr" style="text-align: left;" trbidi="on">
Recently I had interview @ Deutsche bank for perl developer.<br />
<br />
I would like to share , though most of the question where pretty basic , few added my learning. :) <br />
<br />
<br />
<script src="https://gist.github.com/abuzarhamza/d7de1324583fc9aeefc1e945570377d2.js"></script>
</div>
madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com0tag:blogger.com,1999:blog-7418468793291678356.post-10457619882937807082016-02-19T01:15:00.002+05:302016-02-19T01:15:56.840+05:30Perl problem of the ziprecuiter while submitting the application<div dir="ltr" style="text-align: left;" trbidi="on">
Recently I had chance to apply for the zip reciter (USA base startup.)<br />
While application you are asked to resolve a problem in perl or Phython.<br />
<br />
<br />
Here the description of the problem<br />
<br />
<br />
<script src="https://gist.github.com/abuzarhamza/c5e59d71738690a41575.js"></script>
<br />
Though when I submitted the application , I did not thought and made used of JSON module.<br />
But I think , It can be solved too without module , as it an ref to array.<br />
<br />
<br />
<br /></div>madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com0tag:blogger.com,1999:blog-7418468793291678356.post-8861203989890172722015-03-24T02:50:00.003+05:302015-04-18T08:24:57.385+05:30Perl and selenium - a trail of youtube history<div dir="ltr" style="text-align: left;" trbidi="on">
<br />
Recently I wanted to to get complete list of the youtube history page to a video I have seen a long time back. Though Youtube save ur maintain ur history but does not provide the option to search your history. The history button provided shows very few videos at time.<br />
<br />
So I decided to write my own script recipe to handle this scenario. Though I have know about selenium for along time but never tried it Perl API. Let see it this can help me to get my list.<br />
<br />
Before reading this script recipe u need to check some info video and slide share get the functionality and usage the module (ingredient) we will going to use <br />
<br />
<a name='more'></a><br />
The ingredient<br />
1. Selenium<br />
2. Perl (U can use Java etc)<br />
3. XPath<br />
4. XPath Checker (addon) (this will make ur task easier to write ur regular expression of xapth) (U can get the introduction of Xpath on <a href="http://www.w3schools.com/xpath/xpath_syntax.asp">w3school tutorials</a>) <br />
<br />
<br />
Now U are ready to start to make ur own ingredient and do a bit fun.<br />
First u need to download the <a href="http://www.seleniumhq.org/download/" target="_blank">selenium server</a> asn start the server.<br />
<br />
Next u need to install Selenium::Remote::Driver perl module and now U can modify the script I have wrote a small script that will do the rest.(though script need a bit of improvement and I am still working on it)<br />
<script src="https://gist.github.com/abuzarhamza/8b9b4d7d2c24f9ef414a.js"></script>
To be continued... </div>
madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com0tag:blogger.com,1999:blog-7418468793291678356.post-29649828442391085602015-02-13T07:35:00.000+05:302015-04-18T08:25:10.019+05:30simple usage Time::HiRes of the 'for execution time of child process<div dir="ltr" style="text-align: left;" trbidi="on">
Hi All<br />
<br />
some times we are required to control the time execution of the child sub program. This can be achieved use the Time::HiRes<br />
<br />
<br />
<br />
I have added the code snippet. Here I have line the main program (line 9 ) to sleep for 30 sec.<br />
But setup alarm timeout to 3 sec (line 4) and trigger timeout after 3 sec and setup local variable $SIG{ALRM} to time out/<br />
<script src="https://gist.github.com/abuzarhamza/7bf41c974aa1ac6410d3.js"></script>
</div>
madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com0tag:blogger.com,1999:blog-7418468793291678356.post-74532592755948463502014-12-04T09:53:00.001+05:302015-04-18T08:25:32.854+05:30flock - All u need to know abut file locking in perl<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="http://2.bp.blogspot.com/-Pr04jkoCtn0/VH_iLXXKETI/AAAAAAAAEVM/AcKBk8IhLeg/s1600/imageTeast.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://2.bp.blogspot.com/-Pr04jkoCtn0/VH_iLXXKETI/AAAAAAAAEVM/AcKBk8IhLeg/s1600/imageTeast.png" height="153" width="640" /></a></div>
<br />
<br />
<br />
Some times we need control over read and write over files operation. File locking comes for rescue. <br />
<br />
Though Perl provide many function to control over file locking operation. I found <a href="http://stackoverflow.com/q/34920/493892">flock</a> function is the best. <br />
<br />
Perl monks has a <a href="http://www.perlmonks.org/?node_id=7058">great tutorial for flock</a> and operation and usage . Simple usage and operation number and their meaning.<br />
<br />
<br />
<pre class="code"><tt class="codetext"> sub LOCK_SH { 1 } ## shared lock
sub LOCK_EX { 2 } ## exclusive lock
sub LOCK_NB { 4 } ## non-blocking
sub LOCK_UN { 8 } ## unlock</tt> </pre>
<br />
<br />
<br />
<br />
<br /></div>
madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com0tag:blogger.com,1999:blog-7418468793291678356.post-44645670100537748842014-08-10T08:54:00.003+05:302014-08-10T08:57:00.986+05:30all u need to know about perl unit testing<div dir="ltr" style="text-align: left;" trbidi="on">
Hi<br />
I have been using Test::Simple, I always wanted to know about Test::More<br />
<br />
In the below talk James has been able to easily capture all important modules and function offered by them especially ok, is, and like<br />
<br />
Check out the video , 56 min worth spending :)<br />
<br />
<br />
<iframe allowfullscreen="" frameborder="0" height="315" src="//www.youtube.com/embed/A31VhNeGaw0" width="420"></iframe>
</div>
madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com0tag:blogger.com,1999:blog-7418468793291678356.post-37977691832805860512014-08-04T21:29:00.000+05:302014-08-04T21:29:07.715+05:30Full #Perl description in just one image <div dir="ltr" style="text-align: left;" trbidi="on">
<blockquote class="twitter-tweet" lang="en"><p>Full <a href="https://twitter.com/hashtag/Perl?src=hash">#Perl</a> description in just one image <a href="http://t.co/t0nmSw9y0u">pic.twitter.com/t0nmSw9y0u</a></p>— tudorconstantin (@tudorconstantin) <a href="https://twitter.com/tudorconstantin/statuses/468653061133840385">May 20, 2014</a></blockquote>
<script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script>
<br /></div>
madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com0tag:blogger.com,1999:blog-7418468793291678356.post-68713589185007494222014-06-19T23:38:00.001+05:302014-06-19T23:41:06.946+05:30RESTfull Love service Triangle<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="http://4.bp.blogspot.com/-KvTtvpyOL2Q/U6MmUaDB__I/AAAAAAAAEIc/uS_fRc0EBCU/s1600/RESTful-Triangle.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="http://4.bp.blogspot.com/-KvTtvpyOL2Q/U6MmUaDB__I/AAAAAAAAEIc/uS_fRc0EBCU/s1600/RESTful-Triangle.png" height="200" width="141" /></a></div>
Hi All ,<br />
<br />
Today I will be writing little about RESTful api (Represntational state transfer) , kind of web service.Now day every application (generally mobile application) and good website will provide one<br />
of these services to the programer to interact more and develop application on top of it.<br />
<br />
<br />
<br />
<br />
<br />
So to start with REST u should be knowing these 3 terms (mug it) (also REST triangle)<br />
1. noun<br />
2.verb<br />
3.content-type<br />
<br />
In rest , noun is URL identifier (eg. www.example.com ).<br />
Verb is the action to be taken <a href="http://www.tutorialspoint.com/http/http_requests.htm">HTTP request method</a> eg GET to read , POST to create, PUT to update and DELETE to delete.<br />
<br />
<a name='more'></a><br />
<br />
<br />
Content is response from the REST service consumed by down stream consumer. <br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="http://3.bp.blogspot.com/-KvTtvpyOL2Q/U6MmUaDB__I/AAAAAAAAEIY/B4mD4PDEtCI/s1600/RESTful-Triangle.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://3.bp.blogspot.com/-KvTtvpyOL2Q/U6MmUaDB__I/AAAAAAAAEIY/B4mD4PDEtCI/s1600/RESTful-Triangle.png" height="320" width="227" /></a></div>
<br />
<br />
for more check out the tutorial from <a href="http://www.onlamp.com/pub/a/onlamp/2008/02/19/developing-restful-web-services-in-perl.html?page=1">andrew</a>.</div>
madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com0tag:blogger.com,1999:blog-7418468793291678356.post-15905609631599080962014-05-14T01:00:00.000+05:302014-05-14T01:00:26.573+05:30Why I have started prefering viber over skype on my linux box for messaging!!<div dir="ltr" style="text-align: left;" trbidi="on">
Recently , I installed the viber on my linux machine (ubuntu 14.04) for my development box just enthusiastically and found the above my expectation as compared skype linux version.<br />
<br />
Lets begins with the login , where I used my mobile no and it automatically synced my login to mobile contact. So for now onward I am getting into habit of messaging my friends on viber in place of whatsapp. That is a huge gap in skpye, which identification element is your mail/ facebook login.<br />
<br />
Next comes the gui, the gui of viber for the linux flavour is more friendly intuitive. I do not think any one will disagree on this (again I will highlight I am the linux version).<br />
<br />
What left me in miserable state while using viber was about the call quality. I cant neither hear sound or my mic is working for viber , that is not the case for skype. (<a href="http://support.viber.com/customer/portal/private/cases/357473">bug</a>)<br />
<br /> Hope , viber development team will soon be resolving these issue.<br />
<br /></div>
madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com0tag:blogger.com,1999:blog-7418468793291678356.post-34879370232961306502014-04-12T13:38:00.000+05:302014-04-12T13:38:08.863+05:30SQL Fiddle - Cloud way test your query and schema. <div dir="ltr" style="text-align: left;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQVL0l3f-vllIMhcfk5mkYjGgsHAkadzN7b2HZ0nEueAu79Edud_4vJHEVrD8lpBU8g0MPoIxFfOgTFCOrpAVGYx5eVeTWTnmT21zlWVACDPdoE6uqJbPHhzwRfBiDNPyax2AThkWAzK8/s1600/SqlFiddleLogo.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQVL0l3f-vllIMhcfk5mkYjGgsHAkadzN7b2HZ0nEueAu79Edud_4vJHEVrD8lpBU8g0MPoIxFfOgTFCOrpAVGYx5eVeTWTnmT21zlWVACDPdoE6uqJbPHhzwRfBiDNPyax2AThkWAzK8/s1600/SqlFiddleLogo.png" height="177" width="320" /></a></div>
<br />
<br />
<br />
Most of the times, we are in need to validate our query with the test data for validation purpose and proof of concept.<br />
Recently I came across the <a href="http://sqlfiddle.com/#!2/539fe2/23">SQL Fiddle </a>and got hooked to it to validate my query to match the expected results.<br />
<br />
<a href="http://sqlfiddle.com/#!2/539fe2/23">SQL Fiddle</a> not only provide list of database including oracle and also a new cloud base tool to validate your query and sharing your schema over various forum<br />
<br />
<br />
<a name='more'></a><br /><br />
A simple scenario here , I wanted to explore MySQL <a href="http://sqlfiddle.com/#!2/539fe2/23">limit function</a> . I created a small schema and just populated it some data and started testing my queries to have clear picture of its proper usage.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgleTgc-evftNM0yuDqs90CXhwyQMbzc9vWq8Slhzjrkz0EDErKGB2oveSO2ButehYJGc5HLR2BT6GaP86qplzuBsWN2TG9TD4YiskQOQXoF7OHXgHzwQ7lXyJp8tyrQCVnWKkC65qsGYk/s1600/SqlFiddle.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgleTgc-evftNM0yuDqs90CXhwyQMbzc9vWq8Slhzjrkz0EDErKGB2oveSO2ButehYJGc5HLR2BT6GaP86qplzuBsWN2TG9TD4YiskQOQXoF7OHXgHzwQ7lXyJp8tyrQCVnWKkC65qsGYk/s1600/SqlFiddle.png" height="177" width="640" /></a></div>
<br /></div>
madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com0tag:blogger.com,1999:blog-7418468793291678356.post-31194042298033236962014-04-08T02:47:00.001+05:302014-04-08T02:48:53.765+05:30Overriding the core function/ subrotine in perl<div dir="ltr" style="text-align: left;" trbidi="on">
Though its not recommended but some times we are in need to change or extend the core functionality of inbuilt Perl function/ subroutine.<br />
<br />
This can be easily implemented in the following way. I have created a small gist for changing the core functionality.( Just for fun)<br />
<br />
<script src="https://gist.github.com/abuzarhamza/10056922.js"></script>
<br />
<br />
You can read it more in <a href="http://perldoc.perl.org/CORE.html">perdoc </a>. </div>
madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com0tag:blogger.com,1999:blog-7418468793291678356.post-74026070177008890962014-03-25T19:42:00.001+05:302014-03-25T19:45:44.029+05:30Interview experience for perl developer with booking.com <div dir="ltr" style="text-align: left;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="http://1.bp.blogspot.com/-uHvDkOXwZuQ/UzGPKI4Y1aI/AAAAAAAAEDo/UgiYtedy1ss/s1600/booking.jpeg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="http://1.bp.blogspot.com/-uHvDkOXwZuQ/UzGPKI4Y1aI/AAAAAAAAEDo/UgiYtedy1ss/s1600/booking.jpeg" height="200" width="200" /></a></div>
Recently I had an opportunity to give the interview for booking.com for perl developer.<br />
<br />
I got the call from the HR after 2 week from the CV submission date. Initial HR round was very simple . Introduction about the company and kind of work you are expected to do, the team strength etc<br />
<br />
The online interview with the technical people was arrange after 2 people with 2 perl developer. The interview was about perl.<br />
<br />
<a name='more'></a><br />
<br />
The question were as follows; I have created the gist for the question on github.<br />
<br />
<br />
<script src="https://gist.github.com/abuzarhamza/42432804019fec28facc.js"></script>
<br />
Though I was able solved all the question put by them , but took few hints from the interviewer, which seems to the reason to be not selected for the amsterdam trip.<br />
Do leave your comment , if you find with the post useful. <br />
<br /></div>
madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com0tag:blogger.com,1999:blog-7418468793291678356.post-44298519171686181112014-03-08T00:52:00.003+05:302014-03-08T01:12:49.189+05:30Learning the SQL by practising online - SQLZOO<div dir="ltr" style="text-align: left;" trbidi="on">
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCtIWUXsxSUcCTOTx-OiTw6sovPujtQuM7xP_u8_15xXIhSKC4AlZrigaZhryq8FHWqHAz5vB7QLAeyuRMzLBMoUZfYHJsxmJ9_c3x5dY5YD56JBD0FbkAh75vCy5ujA-hL5g6nDkOYlQ/s1600/SQLZoo.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCtIWUXsxSUcCTOTx-OiTw6sovPujtQuM7xP_u8_15xXIhSKC4AlZrigaZhryq8FHWqHAz5vB7QLAeyuRMzLBMoUZfYHJsxmJ9_c3x5dY5YD56JBD0FbkAh75vCy5ujA-hL5g6nDkOYlQ/s1600/SQLZoo.jpg" height="179" width="320" /></a></div>
<br />
<br />
SQL is standard language to access and manipulation data in MySQL and Oracle.<br />
<br />
Although SQL is quite easy to learn and has limited syntax, but the concept of using mainly DDL (Data Definition Language) ,DML (Data Manipulation Language) and DCL (Data Control Language) take time to understand or to get accustomed to make use of when it is required. (<a href="http://www.orafaq.com/faq/what_are_the_difference_between_ddl_dml_and_dcl_commands">ref</a>)<br />
<br />
As far as , Learning SQL and grasping the syntax may be quite easy to begin with (lot of online resource are there) , but to get the required data for the real world problem might be not that much easy and may require practice.<br />
<br />
<a href="http://sqlzoo.net/wiki/Main_Page">SQLZOO</a> is website where you have opportunity to practice these problem, to sharpen your skill and to test what you have acquired. The best thing of this website , it support all type of database engine (Oracle, MySQL etc) and has many problem to practice.<br />
<br />
Problem start with a scenario and will ask you to use specific DML , to get the required results.<br />
<br />
Great website to start with your SQL training and hone your ability.<br />
<br /></div>
madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com0tag:blogger.com,1999:blog-7418468793291678356.post-43834853252005789972014-01-01T20:11:00.001+05:302014-01-01T20:24:01.786+05:30tosdr.org - a new initiative to explain the goods and hidden bad in the service terms you are signing<div dir="ltr" style="text-align: left;" trbidi="on">
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhAyK6dQ5iXbncqgjjWvMpaoDJcMUZ25iJBm2SWFofio-IXuGPoJcEbGn-cYnNPrWiSaGURvBRoWzGwr9so4xt7hl27UZEQ0ZumFqH7xSiEGy7JR4cSFjkW6EOfF3JDtRpwg4u-48E55yg/s1600/TermService.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="125" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhAyK6dQ5iXbncqgjjWvMpaoDJcMUZ25iJBm2SWFofio-IXuGPoJcEbGn-cYnNPrWiSaGURvBRoWzGwr9so4xt7hl27UZEQ0ZumFqH7xSiEGy7JR4cSFjkW6EOfF3JDtRpwg4u-48E55yg/s320/TermService.PNG" width="320" /></a></div>
<br />
<br />
Now day We are signing new account now and then. Each service provider has it own sets of "term of service". These terms are bulky and usually ignored by the end user before signing.<br />
<br />
Now a new initiative called <a href="http://tosdr.org/">tosdr.org</a>, can help know the goods and hidden bad in simple layman terms about the service , you are about to signed or have signed already. They have simple rating system very good A to very bad (E).<br />
<br />
<a name='more'></a><br />
<br />
Here are few sample common service we are using ...<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjRgvcnLYHoBpFyJoX88cl-v4iHZLydPtII6jzYlVWoCYwkNl8kMiW7OQOuGyzI1YCOKUTWYPaK-LG8QlVA8eqAL16CkXzuxLEd00jt_UwOyukGCYFRUxzL65zSVa7Ne7mb62dWgY4TUug/s1600/google.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="145" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjRgvcnLYHoBpFyJoX88cl-v4iHZLydPtII6jzYlVWoCYwkNl8kMiW7OQOuGyzI1YCOKUTWYPaK-LG8QlVA8eqAL16CkXzuxLEd00jt_UwOyukGCYFRUxzL65zSVa7Ne7mb62dWgY4TUug/s640/google.PNG" width="640" /></a></div>
<br />
Check it out.</div>
madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com0tag:blogger.com,1999:blog-7418468793291678356.post-49570696843478157842013-12-06T00:37:00.002+05:302013-12-06T01:09:29.230+05:30Twitter app using perl – Get your following – Part 3<div dir="ltr" style="text-align: left;" trbidi="on">
<span style="font-family: Verdana, sans-serif;">Hi Again,</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;">If you have seen the your twitter page , you will find the following tab about the user.</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXC-odD5x9AiDh1LeatPJwJg1tyLiyn_ums2hgjNfUwEnEIaEKVvkoiLaYJ_BuMQAFZARk1z1J-7xG4HN4a7HKnTFIfyEpN1xCUaX6SW9EKu52_dbxYMnFiDFqWp0zb71teuABN_Ya9sk/s1600/FollowingTab.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Verdana, sans-serif;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXC-odD5x9AiDh1LeatPJwJg1tyLiyn_ums2hgjNfUwEnEIaEKVvkoiLaYJ_BuMQAFZARk1z1J-7xG4HN4a7HKnTFIfyEpN1xCUaX6SW9EKu52_dbxYMnFiDFqWp0zb71teuABN_Ya9sk/s1600/FollowingTab.PNG" /></span></a></div>
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;">As U can can see in the image , there are four important tab</span><br />
<span style="font-family: Verdana, sans-serif;">1. tweet (your own tweet)</span><br />
<span style="font-family: Verdana, sans-serif;">2. following</span><br />
<span style="font-family: Verdana, sans-serif;">3. followers</span><br />
<span style="font-family: Verdana, sans-serif;">4. list</span><br />
<a name='more'></a><span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;">In this tutorial I will let you know how to get your following account . You can expand this program further to find the set of people you and your friends may have common.</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;">“<a href="http://search.cpan.org/~mmims/Net-Twitter-4.01000/lib/Net/Twitter.pod#LEGACY_COMPATIBILITY">Net::Twiiter</a>” has a dedicate function called “followers_ids” list of parameters and then we will pass the individual id to get more detail.</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;">So here is the code.</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<script src="https://gist.github.com/abuzarhamza/7710623.js"></script><span style="font-family: Verdana, sans-serif;">
In the next tutorial , I will try to fetch the twit twitted by the end user following.</span></div>
madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com0tag:blogger.com,1999:blog-7418468793291678356.post-86028466931436476212013-11-30T00:58:00.001+05:302013-12-06T01:11:32.012+05:30Twitter app using perl - Tweet your status - Part 2<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="color: #333333; font-size: 13px; line-height: 19px;">
<span style="font-family: Verdana, sans-serif;">Hi All,</span></div>
<div style="color: #333333; font-size: 13px; line-height: 19px;">
<span style="font-family: Verdana, sans-serif;">The second part will be simple to update your own status using the perl script.</span></div>
<div style="color: #333333; font-size: 13px; line-height: 19px;">
<span style="font-family: Verdana, sans-serif;">For that initially, you need to go setting tab.</span></div>
<div style="color: #333333; font-size: 13px; line-height: 19px;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiK5B_pC-utvbHrHu-BH5zS6sYIR_ZL6Zpiz1Jljm5Up9ITodCn7hsAy0rVRjz2IYe37g6znaykg6DS-6woqVIKgP2ekK06tJfYczZhp3xV6mgdirzdkAwQr02_Kj0fEG654SBFDBzcGzo/s1600/part2.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Verdana, sans-serif;"><img border="0" height="89" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiK5B_pC-utvbHrHu-BH5zS6sYIR_ZL6Zpiz1Jljm5Up9ITodCn7hsAy0rVRjz2IYe37g6znaykg6DS-6woqVIKgP2ekK06tJfYczZhp3xV6mgdirzdkAwQr02_Kj0fEG654SBFDBzcGzo/s640/part2.PNG" width="640" /></span></a></div>
<div style="color: #333333; font-size: 13px; line-height: 19px;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div style="color: #333333; font-size: 13px; line-height: 19px;">
<span style="font-family: Verdana, sans-serif;">Under the setting tab, change the permission setting for your app to read , write and acess direct message as given below</span></div>
<div style="color: #333333; font-size: 13px; line-height: 19px;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmI-bh6a6TrAE22D4mqV5L8ouvjkOW1uUcSxgP02ORUHeRCvz4dM3V8QVF7hPqjNEWleo4CZvmUJHBtQ-hRTVDzQgsIp_ZNWlFL0hthcbRSq8Shxk-6RxjGkUtmUhUUr1XN1Q4E1VSqAs/s1600/twit2.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Verdana, sans-serif;"><img border="0" height="176" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmI-bh6a6TrAE22D4mqV5L8ouvjkOW1uUcSxgP02ORUHeRCvz4dM3V8QVF7hPqjNEWleo4CZvmUJHBtQ-hRTVDzQgsIp_ZNWlFL0hthcbRSq8Shxk-6RxjGkUtmUhUUr1XN1Q4E1VSqAs/s640/twit2.PNG" width="640" /></span></a></div>
<div style="color: #333333; font-size: 13px; line-height: 19px;">
<span style="font-family: Verdana, sans-serif;"><br /></span>
<a name='more'></a><span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div style="color: #333333; font-size: 13px; line-height: 19px;">
<span style="font-family: Verdana, sans-serif;">Now go to details tab again and recreate your access token. Be careful to copy the new token generated.</span></div>
<div style="color: #333333; font-size: 13px; line-height: 19px;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEir3OvuoZIvVDVSgOHj0BqjbJNlMY7PWrnRiuf4_GtA8ygeduQCcxpTXLnlmm9G84dMAahS32_s4rJhoVFDEOFrXydUFEwWRSY0NJpRiUISu1_KSw9gLArUEhjDyhz9nj1FhCPxsOV_x0o/s1600/twitter3.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Verdana, sans-serif;"><img border="0" height="120" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEir3OvuoZIvVDVSgOHj0BqjbJNlMY7PWrnRiuf4_GtA8ygeduQCcxpTXLnlmm9G84dMAahS32_s4rJhoVFDEOFrXydUFEwWRSY0NJpRiUISu1_KSw9gLArUEhjDyhz9nj1FhCPxsOV_x0o/s640/twitter3.PNG" width="640" /></span></a></div>
<div style="color: #333333; font-size: 13px; line-height: 19px;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div style="color: #333333; font-size: 13px; line-height: 19px;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div style="color: #333333; font-size: 13px; line-height: 19px;">
<span style="font-family: Verdana, sans-serif;">Now the scripting part, I will continue from the place I have left the <a data-mce-href="http://blog.hypothesisinfolab.com/twitter-app-using-perl-part-1/#more-53" href="http://blog.hypothesisinfolab.com/twitter-app-using-perl-part-1/#more-53">previous post version</a> of the script .</span></div>
<div style="color: #333333; font-size: 13px; line-height: 19px;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<script src="https://gist.github.com/abuzarhamza/7678156.js" type="text/javascript"></script>
<br />
<div style="color: #333333; font-size: 13px; line-height: 19px;">
<span style="font-family: Verdana, sans-serif;">Check out the line no 42, and that will do the magic.</span></div>
<div style="color: #333333; font-size: 13px; line-height: 19px;">
<span style="font-family: Verdana, sans-serif;">Hope you enjoyed this tutorial. Do comment to let us know about the tutorial</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;">original link : <a href="http://blog.hypothesisinfolab.com/twitter-app-using-perl-tweet-your-status-part-2/">source</a></span></div>
<div style="color: #333333; font-size: 13px; line-height: 19px;">
<br /></div>
</div>
madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com0tag:blogger.com,1999:blog-7418468793291678356.post-28513652778124581412013-11-29T01:09:00.002+05:302013-12-06T01:10:54.753+05:30Twitter app using perl – Part 1<div dir="ltr" style="text-align: left;" trbidi="on">
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiY5MxHPzq8b9K5FXxb5h3WtBfyYIZftO4xbOm41hVvjL_0sxx0EOMtdJoEva2REXweFp4GI5E3cIv6EH3lTjZiO7Y1c8BBE2fNrHLVeSadbEmRgLKBfAtXPnKep1dPitj9Lk5qkoDSOUQ/s1600/twitterApp.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiY5MxHPzq8b9K5FXxb5h3WtBfyYIZftO4xbOm41hVvjL_0sxx0EOMtdJoEva2REXweFp4GI5E3cIv6EH3lTjZiO7Y1c8BBE2fNrHLVeSadbEmRgLKBfAtXPnKep1dPitj9Lk5qkoDSOUQ/s1600/twitterApp.PNG" /></a></div>
<div>
<span style="font-family: Verdana, sans-serif;">Hi All,</span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;">I thought it would be nice quest to create an aap with Step by Step guide.</span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Here in this series , I will gonna create an app for twitter using Cpan module “<a href="http://search.cpan.org/~mmims/Net-Twitter-4.01000/lib/Net/Twitter.pod">Net::Twitter</a>“.</span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Step 1 .</span></div>
<div>
<span style="font-family: Verdana, sans-serif;">You need to create an account on <a href="http://dev.twitter.com/">dev.twitter.com</a> and need to register your new app.</span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Step 2.</span></div>
<div>
<span style="font-family: Verdana, sans-serif;">If you have already finished up with step one , by now you must be having following details for new registered app</span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Consumer key</span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Consumer secret</span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Access token</span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Access token secret</span></div>
<div>
<a name='more'></a><span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Do not share your oauth_token_secret with anyone.As it is used to access your twitter account</span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Step 3.</span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Install the cpan module ”<a href="http://search.cpan.org/~mmims/Net-Twitter-4.01000/lib/Net/Twitter.pod">Net::Twitter</a>”</span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
</div>
<div>
<span style="font-family: Verdana, sans-serif;">Now you are ready for a simple app</span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Here in this app I will try to list out all my friend list and further in the series we will upgrade the app for adding other functionality.</span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<script src="https://gist.github.com/abuzarhamza/7661190.js"></script>
<br />
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<div>
<span style="font-family: Verdana, sans-serif;">Here U can see I have assign the variable $r to hash %temp at line 29 and dumped the output using dumper.</span></div>
<div>
<span style="font-family: Verdana, sans-serif;">As the return data is quite complex , it will most easiest to see the structure of the return data using Dumper.</span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Here I am printing the list of my friend name , you can further explore other keys of the hash as per your choice.</span></div>
<div>
<span style="font-family: Verdana, sans-serif;">Hope you enjoyed the tutorial.</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;">original source : <a href="http://blog.hypothesisinfolab.com/twitter-app-using-perl-part-1/#more-53">link</a></span></div>
</div>
</div>
madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com0tag:blogger.com,1999:blog-7418468793291678356.post-57204550273376904352013-11-26T12:11:00.000+05:302013-11-26T13:28:25.572+05:30Perl special variable cheat sheet <div dir="ltr" style="text-align: left;" trbidi="on">
Hi all,<br />
<br />
Again this will be a post for the perl lover.<br />
Recently I was browsing, I came across the blog of<a href="http://www.catonmat.net/"> Peteris Krumins blog</a>. The blog has list of interesting article concerning Perl, awk and sed.<br />
<br />
One of the article, that attracted my regex mind was his Perl special variable cheat sheet. His 4 page cheat sheet is really easy and collate all the special variable, you may require play code golf. (I really did not know , Perl has that many special variable)<br />
You can download the cheat sheet <a href="http://www.scribd.com/doc/187199349/Perl-Special-predefined-variables-cheat-sheet">here</a> or from the <a href="http://www.catonmat.net/blog/perls-special-variable-cheat-sheet/">original link</a>.<br />
<br />
<br />
<br /></div>
madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com0tag:blogger.com,1999:blog-7418468793291678356.post-90722511827532526962013-11-15T10:57:00.003+05:302013-11-15T10:58:20.038+05:30Perl vs perl<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="font-family: verdana, helvetica, arial, sans-serif; font-size: 12px; line-height: 24px; margin-bottom: 1.5em; margin-top: 1em; padding: 0px;">
The following discussion is an expansion on a question and answer which can be found in the perlfaq1 page of Perl's documentation, namely:<br />
<q>What's the difference between "perl" and "Perl"?</q><br />
Sometimes you'll see "Perl" written, with a capital P, sometimes "perl", sometimes even <acronym style="border-bottom-color: rgb(168, 140, 83); border-bottom-style: dotted; border-bottom-width: 1px; cursor: help; margin: 0px; padding: 0px;" title="Practical Extraction and Reporting Language">PERL</acronym>.<br />
Confused? Not to worry, Israel.pm to the rescue :-)<br />
The rules are actually quite simple:</div>
<ul style="font-family: verdana, helvetica, arial, sans-serif; font-size: 12px; line-height: 24px;">
<li>"Perl" should be used when one is writing about the language, for example:<br /><blockquote cite="http://www.perldoc.com/perl5.8.4/pod/perl.html">
<div style="margin-bottom: 1.5em; margin-top: 1em; padding: 0px;">
Perl is a language optimized for scanning arbitrary text files, extracting information from those text files, and printing reports based on that information. It's also a good language for many system management tasks. The language is intended to be practical (easy to use, efficient, complete) rather than beautiful (tiny, elegant, minimal).</div>
</blockquote>
</li>
<li>"perl" should be used when one is writing about the executable which interprets and compiles the Perl code, for example: <q>the <em>perl</em> executable can usually be found at /use/bin/perl on Unix/Linux systems, or on c:\Perl\bin\perl.exe on Windows systems.</q></li>
<li>The above two usage forms are not rigidly adhered to, even in Perl's documentation, but in any case you should <strong>never</strong> use "PERL".<br />"PERL" is a <a href="http://en.wikipedia.org/wiki/Backronym">backronym</a>, so unless you are going to use it as a joke, don't. It is way overused and abused, and it is time to put it to rest.</li>
</ul>
<div style="font-family: verdana, helvetica, arial, sans-serif; font-size: 12px; line-height: 24px; margin-bottom: 1.5em; margin-top: 1em; padding: 0px;">
There's a famous saying, attributed to <a href="http://training.perl.com/">Tom Christiansen</a>, which says that <q>Only perl can parse Perl</q><br />
We'll leave you now to ponder these words of wisdom...</div>
<div style="font-family: verdana, helvetica, arial, sans-serif; font-size: 12px; line-height: 24px; margin-bottom: 1.5em; margin-top: 1em; padding: 0px;">
original source : <a href="http://perl.org.il/misc.html#pl_vs_pl">http://perl.org.il/misc.html#pl_vs_pl</a></div>
<div style="font-family: verdana, helvetica, arial, sans-serif; font-size: 12px; line-height: 24px; margin-bottom: 1.5em; margin-top: 1em; padding: 0px;">
<br /></div>
</div>
madeinindiahttp://www.blogger.com/profile/01302216109816204934noreply@blogger.com0