Sunday, August 9, 2009
Google AdWords Trying Out an Opportunities Tab
Friday, August 7, 2009
Hackers hit Twitter and Facebook

Twitter was taken offline for more than two hours whilst Facebook's service was "degraded", according to the firms.
The popular sites were subject to so-called denial-of-service attacks on Thursday, the companies believe.
Denial-of-service (DOS) attacks take various forms but often involve a company's servers being flooded with data in an effort to disable them.
"Attacks such as this are malicious efforts orchestrated to disrupt and make unavailable services such as online banks, credit card payment gateways, and in this case, Twitter for intended customers or users," said Twitter co-founder Biz Stone on the company's blog.
The service was restored shortly after the blog post, but the companies have had to continue to fend off the attack.
Facebook said its service was reduced but not taken offline.
"No user data was at risk and we have restored full access to the site for most users," spokeswoman Brandee Barker told the AFP news agency.
"We're continuing to monitor the situation to ensure that users have the fast and reliable experience they've come to expect from Facebook."
REPLACE Statement on MySQL
An usual solution to the problem is something like this.
my $user_id = 1000;
my $ip = $ENV{'REMOTE_ADDR'};
my $stmt = $db->prepare('SELECT * FROM visits WHERE user_id=?');
$stmt->execute($user_id);
if($stmt->rows) ## a entry for the page id exists, update the record
{
my $update_stmt = $db->prepare('UPDATE visits SET ip = ? WHERE user_id=?');
$update_stmt->execute($ip,$user_id);
}
else ## no such id, insert a new entry with count 1
{
my $insert_stmt = $db->prepare('INSERT INTO visits VALUES(?,?)');
$insert_stmt->execute($user_id,$ip);
}
$user_id = 1000;
$ip = $_SERVER['REMOTE_ADDR'];
$res = mysql_query("SELECT * FROM visits WHERE user_id=$user_id");
if(mysql_num_rows($res)) // a entry for the page id exists, update the record
{
$result = mysql_query("UPDATE visits SET ip = '$ip' WHERE user_id=$user_id");
}
else // no such id, insert a new entry with count 1
{
$result = mysql_query("INSERT INTO visits VALUES('$user_id','$ip')");
}
Enter: REPLACE
The REPLACE statement very similarly or exactly like INSERT statment, except for the fact that in case a record with the same primary key exists in the one that's going to be inserted then the old row is deleted before the new one is inserted. You need to have an unique index or a primary key to use REPLACE statment.
REPLACE is not part of the SQL standard, it's an useful extension by MySQL, I guess there are many other RDBMSs which have come up with similar extensions.
So, now that we have REPLACE, we can rewrite above code snippets in the following manner:
my $user_id = 1000;
my $ip = $ENV{'REMOTE_ADDR'};
my $stmt = $db->prepare('REPLACE INTO visits VALUES(?,?)');
$stmt->execute($user_id,$ip);
$user_id = 1000;
$ip = $_SERVER['REMOTE_ADDR'];
$res = mysql_query("REPLACE INTO visits VALUES('$user_id','$ip')");
That's it, isn't that easier guys!!
Read more about REPLACE statement here, http://dev.mysql.com/doc/refman/5.0/en/replace.html
Alternative Approach
A forgotten or unknown feature among the masses is the ON DUPLICATE KEY UPDATE, it causes an UPDATE when a duplicate key error is encountered during an insert. The above code snippet again be re-written like this,
my $user_id = 1000;
my $ip = $ENV{'REMOTE_ADDR'};
my $stmt = $db->prepare('INSERT INTO visits VALUES (?,?) ON DUPLICATE KEY UPDATE ip=?');
$stmt>execute($user_id,$ip,$ip);
$user_id = 1000;
$ip = $_SERVER['REMOTE_ADDR'];
$res = mysql_query("INSERT INTO visits VALUES ('$user_id','$ip') ON DUPLICATE KEY UPDATE ip='$ip'");
You can read more about this feature here, http://dev.mysql.com/doc/refman/5.0/...duplicate.html
Monday, May 25, 2009
Google Chrome 2.0 now available for download

Wednesday, May 20, 2009
Tips on improving your site's page visit | page ranking | traffic

Hi! I have gathered some websites that explains you a lot of creative ways on how to improve your web site's page ranking and page visits. This is very crucial for online marketers and web designers alike if they wish to see their websites being found on search engines like google, yahoo and etcetera. Please find time to read these tips and start your way now to improving your website's statistics.
Monday, May 18, 2009
13 Amazingly Rich Resources for Web Development - CSS | Web Layout | Javascripts | Colors

Free CSS templates
Rich variety of useful photoshop tutorials on creating web layouts
Open source service that creates screenshots of your web design in different browsers
Another great list of CSS Resource