Sunday, March 27, 2011

How to retrieve your twitter feeds in PERL

Retrieving twitter feeds is very simple and easy, you only need an HTTP request that returns format such as JSON, XML, RSS, and ATOM. This method doesn't require authentication.

Just follow the simple steps below using PERL. Hope you like it!

1. Install LWP::UserAgent in your server.

2. Initialize libraries, header and user agent.

require LWP::UserAgent;

my $lwpua = LWP::UserAgent->new;

my $uagent = "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.6) Gecko/20060728 Firefox/1.5.0.6";
my @header = ('Referer' => 'http://api.twitter.com/',
             'User-Agent' => $uagent);

3. Compose the HTTP request.

my $twuser = '<your twitter username>';
my $twurl = "http://api.twitter.com/1/statuses/user_timeline.<format>?screen_name=$twuser";

Supported Format:
  • JSON
  • XML
  • RSS
  • ATOM
URL Parameters:
  • user_id - The id of twitter account you want to retrieve.
  • screen_name - The username of twitter account you want to retrieve.
  • since_id - This will return the feeds after or more than the specified message id.
  • max_id - This will return the feeds before or less than the specified message id.
  • count - The number of tweets to be retrieve.
  • page - This will specify the page of the result to retrieve.
  • trim_user - When set to either true, t or 1, each tweet returned in a timeline will include a user object including only the status authors numerical id.
  • include_rts - When set to either true, t or 1, the timeline will contain native retweets (if they exist) in addition to the standard stream of tweets.
  • include_entities - When set to either true, t or 1, each tweet will include a node called "entities". This node offers a variety of metadata about the tweet in a discreet structure, including: user_mentions, urls, and hashtags. While entities are opt-in on timelines at present, they will be made a default component of output in the future.
4. Execute HTTP GET request.

my $response = $lwpua->get($twurl, @header);
my $return = $response->content;


That's it!! Please see below for the complete code using JSON format.

#!/usr/bin/perl

require LWP::UserAgent;
use JSON;

my $lwpua = LWP::UserAgent->new;

my $uagent = "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.6) Gecko/20060728 Firefox/1.5.0.6";
my @header = ('Referer' => 'http://api.twitter.com/', 'User-Agent' => $uagent);

my $twuser = '<your twitter username>';
my $twurl = "http://api.twitter.com/1/statuses/user_timeline.json?screen_name=$twuser";

my $response = $lwpua->get($twurl, @header);
my $return = $response->content;

my $json = JSON->new->allow_nonref;
my $json_text = $json->decode($return);

my @tweets = @{$json_text};

my $message;
foreach $tweet (@tweets)
{
  $message .= $tweet->{text}."\n";
}

print "$message";



1;

Resource: dev.twitter.com

Wednesday, March 23, 2011

How to set up an auto adjust width and height in CSS

Again, our best friend IE has it's own way of doing things. IE interprets width and height as min-width and min-height which is totally different from other browser. Given that, this can be a problem if we want our container to adjust accordingly to the content we want to display.

To resolve this, please see below.

#container {
        background-color:#FFFFFF;
        width:840px;
        height:450px;
}
html>body #container {
        height: auto;
        width: auto;
        min-height:450px;
        min-width:840px;
        overflow:hidden;
}

All browsers including our best friend IE will read through the first set of CSS rule #container and the second set will not be interpret by IE because it uses child selector 'html > body' in which interprets Non-IE browser.

Monday, March 21, 2011

How to get latitude and longtitude values from google maps

There are 2 ways on how to get the latitude and longtitude coordinates from google maps.

First option is to get it using javascript:

Just follow the simple steps below to do it.

1. Go to google maps website - http://maps.google.com

2. Click to the center of the site you want.

3. Once you are at the center, copy and paste the code below on your browser's address bar.

javascript:void(prompt('',gApplication.getMap().getCenter()));

4. A pop-up message will prompt with the latitude and longtitude values enclosing with parenthesis.

5. Check the returned values by putting it to google maps search bar and enter. An arrow will point to the map where the location is.

Problem here is that you have to be at the center of the Map to get the actual coordinates.

Resource: http://lifehacker.com


Second is to get it the easier way by enabling the options on your google maps account:

Just follow the simple steps below to activate.

1. Go to google maps website - http://maps.google.com/

2. Log-in to your google account.

3. On the upper right corner of the page, you will see the Options Icon tab.

4. Click the Options Icon tab and select "Maps Labs".

5. A lightbox page will pop-up displaying all the options available for google maps.

6. Set the "LatLng Tooltip" and "LatLng Marker" to ENABLE, then save changes.

7. Go to the map, zoom in until you get to the site you want, then click and hold the "Shift" key on your keyboard.

8. You will noticed that every time you move the cursor while holding shift button, latitude and longtitude changes accordingly.


Hope you like it!! Yeah men!!

Sunday, March 20, 2011

Setting up a style in table header and data records

Just sharing you the basic but a good look style for table display.

table tr td, table tr th {
        font-size: 9px;
        background-color: #ECEFF5;
        border: 1px dotted #0B3485;
        color: #0B3485;
        height: 25px;
        padding: 2px;
        vertical-align: middle;
}


Details are as follows:
  • font-size - The size of the font you want.
  • background-color - The background color of your table.
  • border - The border of your table, I set it to 1px dotted to be not so usual.
  • color - The color of your text.
  • height - The height of each table row.
  • padding - This is to setup a padding in displaying records.
  • vertical-align - To align the data vertically. I set it to middle to vertically align it in center.

Setting up a style in form input button

By default, input button and submit type is not really in a good look.. I recommend to style it with a simple CSS entry below. Hope you like it!!

input[type="button"], input[type="submit"] {
    background-color#1E6591;
    border2px solid #1E6591;
    color#FFFFFF;
    font-size11px;
    font-weightbolder;
}


Details are as follows:
  • background-color - This is the background color of your button.
  • border - The border of your button.
  • color - The color of the text in a button.
  • font-size - The font size of the text of the button.
  • font-weight - The font weight of the text of the button. This is either normal or bold. By default it's equal to normal.

Leadership 101


  • Leadership demands sacrifices for the near-term to receive lasting benefits. the longer we wait to make sacrifices, the harder they become. Successful people make important decisions early in their life, then manage those decisions the rest of their lives.
  • Growth does not happen by chance. If you want to be sure to grow, you need a plan something strategic, specific, and scheduled. it's a discipline that would need incredible determination from us.
  • Success comes by going the extra mile, working the extra hours, and investing the extra time. The same is true for us. If we want to get to excel in any segment of life, a little extra effort can help. Our efforts can go a long way if we only work a little smarter, listen a little better, push a little harder, and persevere a little longer.
  • Making a difference in your work is not about productivity; it's about people. When you focus on others and connect with them, you can work together to accomplish great things.
  • Envision a goal you'd like to reach. Make it big enough to scare you a little. Now write down a plan for moving toward it. Create mini-goals within the big goal, to set yourself up for continual progress. And include some risks, too. Set yourself up for success.
  • Leaders build margins, not image. A leader may be forced to take unpopular stands for the good of the company. Popularity isn't bad, but decisions made solely on the basis of popular opinion can be devastating. So take courage and make the right though sometimes painful choices.