<?xml version="1.0" encoding="UTF-8" standalone="no"?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><rss xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" version="2.0"><channel><title>Saravanan R</title><description></description><managingEditor>noreply@blogger.com (Saravanan R)</managingEditor><pubDate>Sat, 5 Oct 2024 08:16:07 +0530</pubDate><generator>Blogger http://www.blogger.com</generator><openSearch:totalResults xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">17</openSearch:totalResults><openSearch:startIndex xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">1</openSearch:startIndex><openSearch:itemsPerPage xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">25</openSearch:itemsPerPage><link>http://saravananraju.blogspot.com/</link><language>en-us</language><itunes:explicit>no</itunes:explicit><copyright>SaravananR</copyright><itunes:subtitle/><itunes:author>Saravanan R</itunes:author><itunes:owner><itunes:email>noreply@blogger.com</itunes:email><itunes:name>Saravanan R</itunes:name></itunes:owner><item><title>How to Install PHP 5.3 on Windows</title><link>http://saravananraju.blogspot.com/2009/09/how-to-install-php-53-on-windows.html</link><category>display_errors</category><category>how to</category><category>how to install php</category><category>install php</category><category>PHP</category><category>saravanan</category><category>saravananraju</category><category>zend framework</category><pubDate>Wed, 2 Sep 2009 15:02:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-7386927231748848052.post-5829872340257946133</guid><description>&lt;span style="font-size: small;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiF-SnbxgusNrHjANeRAlM93VKmyib_XWXQRV4jHT3NaI44KnN4dOnjuT17-giJuPCA8fa1xTJoKiKq2rtekrc-ON8WZu6gRGcH3Aq1mHpErYDNUFD8jTVVcOA5xDxSqLcbN0CaV5cWD8NQ/s1600-h/041-installing-php.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiF-SnbxgusNrHjANeRAlM93VKmyib_XWXQRV4jHT3NaI44KnN4dOnjuT17-giJuPCA8fa1xTJoKiKq2rtekrc-ON8WZu6gRGcH3Aq1mHpErYDNUFD8jTVVcOA5xDxSqLcbN0CaV5cWD8NQ/s320/041-installing-php.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;With all the excitement surrounding &lt;a href="http://www.sitepoint.com/blogs/2009/07/01/firefox-35-out-now/"&gt;Firefox 3.5&lt;/a&gt;, it may have escaped your attention that PHP 5.3 has also been released. This is the most significant update since version 5.0 and several features that were originally scheduled for version 6.0 have been slipped into the build. You’ll be hearing about these on SitePoint soon but, first, we need to install PHP 5.3 on our Windows development systems.&lt;/span&gt; &lt;/div&gt;&lt;h2 style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;A Word of Warning…&lt;/span&gt;&lt;/h2&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;PHP 5.3 is new and you may experience some problems (&lt;a href="http://www.sitepoint.com/blogs/2009/07/07/install-php53-windows/#phperror"&gt;see below&lt;/a&gt;). If you already have a stable PHP environment, ensure you keep a backup of your current php folder and settings.&lt;/span&gt;&lt;/div&gt;&lt;h2 style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;Web Server Installation&lt;/span&gt;&lt;/h2&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;If you have not installed Apache, refer to &lt;a href="http://www.sitepoint.com/blogs/2009/04/07/how-to-install-apache-on-windows/"&gt;&lt;b&gt;How to Install Apache Web Server on Windows&lt;/b&gt;.&lt;/a&gt;&lt;a href="http://www.sitepoint.com/blogs/2009/03/24/how-to-install-mysql/"&gt;&lt;b&gt;How to Install MySQL&lt;/b&gt;&lt;/a&gt;.&lt;/span&gt; Optionally, you can also install the MySQL database — refer to &lt;/div&gt;&lt;h2 style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;PHP 5.3 Installation&lt;/span&gt;&lt;/h2&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;Windows PHP distributions are now available from a dedicated microsite at &lt;a href="http://windows.php.net/download/"&gt;http://windows.php.net/download/&lt;/a&gt;. The choice is a little bewildering and the instructions are vague but, since we will be installing PHP as an Apache 2.2 module using the &lt;a href="http://www.apachelounge.com/"&gt;Apache Lounge build&lt;/a&gt;, so you should download the &lt;b&gt;VC9 x86 Thread Safe&lt;/b&gt; Zip file.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;i&gt;General note:&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;Download the &lt;b&gt;VC6&lt;/b&gt; builds if you are using the standard &lt;a href="http://www.apache.org/"&gt;Apache.org&lt;/a&gt; web server. The &lt;b&gt;VC9&lt;/b&gt; builds should be used for the &lt;a href="http://www.apachelounge.com/"&gt;Apache Lounge&lt;/a&gt; binaries or IIS.&lt;/i&gt;&lt;/span&gt; &lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;i&gt;A &lt;b&gt;Thread Safe&lt;/b&gt; version should be used if you install PHP as an Apache module. The &lt;b&gt;Non Thread Safe&lt;/b&gt; version should be used if you install PHP as a CGI binary.&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;You can now follow the instructions at &lt;a href="http://www.sitepoint.com/blogs/2009/04/13/how-to-install-php-on-windows/"&gt;&lt;b&gt;How to Install PHP on Windows&lt;/b&gt;&lt;/a&gt; from step 2 onwards. Note that, in step 3, &lt;i&gt;php.ini-recommended&lt;/i&gt; is now named &lt;i&gt;php.ini-development&lt;/i&gt;; you still need make a copy and rename it &lt;b&gt;php.ini&lt;/b&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;If you have previously defined a working PHP configuration file, a tool such as &lt;a href="http://winmerge.org/"&gt;WinMerge&lt;/a&gt; can help you compare and copy existing values to your new php.ini file.&lt;/span&gt;&lt;/div&gt;&lt;h2 id="phperror" style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;PHP 5.3 Error Reporting&lt;/span&gt;&lt;/h2&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;The first time you load your previously bug-free PHP application, you are likely to be confronted by reams of long-winded error messages. Don’t panic! PHP 5.3 introduces a number of new error directives which are enabled by default in the development php.ini configuration:&lt;/span&gt;&lt;/div&gt;&lt;ul style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;li&gt;&lt;span style="font-size: small;"&gt;E_STRICT suggests improvements that ensure best interoperability and forward compatibility of your code, and&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-size: small;"&gt;E_DEPRECATED warns you about code that will not work in future versions of PHP.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;Very useful. In my experience, the majority of messages report that a time zone has not been defined and assigning a return values using new by reference is deprecated.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;Unfortunately, applications can display so many minor errors they become impossible to use. You can disable the new error directives by setting the error_reporting value to "E_ALL &amp;amp; ~E_DEPRECATED" on line 514 of php.ini and restarting Apache. &lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;However, several web applications, including WordPress, define their own error_reporting settings and may continue to show messages. It will take a developers some time to upgrade their applications to full PHP 5.3 compatibility.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;Have you installed PHP 5.3 successfully? Have you experienced any major issues or problems with existing code?&lt;/span&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiF-SnbxgusNrHjANeRAlM93VKmyib_XWXQRV4jHT3NaI44KnN4dOnjuT17-giJuPCA8fa1xTJoKiKq2rtekrc-ON8WZu6gRGcH3Aq1mHpErYDNUFD8jTVVcOA5xDxSqLcbN0CaV5cWD8NQ/s72-c/041-installing-php.jpg" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><author>noreply@blogger.com (Saravanan R)</author></item><item><title>How large is the PHP market?</title><link>http://saravananraju.blogspot.com/2009/09/how-large-is-php-market.html</link><category>google</category><category>performance</category><category>PHP</category><category>saravanan</category><category>saravananraju</category><category>zend framework</category><pubDate>Wed, 2 Sep 2009 15:00:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-7386927231748848052.post-99141758075395873</guid><description>&lt;span style="font-family: Arial,Helvetica,sans-serif; font-size: small;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;i&gt;Sometimes it is necessary to know how large is the PHP market in the world or in a &lt;nobr&gt;&lt;span id="tfTextLink9554365104230507" style="background-color: transparent; border-bottom: 1px solid rgb(153, 22, 22); color: #991616; cursor: pointer; display: inline; font-size: 1em; line-height: 1em; margin-left: 0px; padding-bottom: 1px; position: relative; text-decoration: underline; width: auto;"&gt;specific&lt;/span&gt;&lt;/nobr&gt; country.&lt;br /&gt;
&lt;br /&gt;
It may help, for instance, developers to advocate for PHP, companies to decide for sponsoring PHP events, PHP training, developing of products targeting the PHP developers, or any other initiatives directed to the PHP market.&lt;br /&gt;
&lt;br /&gt;
This article presents several sources of information that may help decision makers to invest more in the PHP market.&lt;br /&gt;
&lt;br /&gt;
The article also covers the huge popularity of &lt;nobr&gt;&lt;span id="tfTextLink0969152790158575" style="background-color: transparent; border-bottom: 1px solid rgb(153, 22, 22); color: #991616; cursor: pointer; display: inline; font-size: 1em; line-height: 1em; margin-left: 0px; padding-bottom: 1px; position: relative; text-decoration: underline; width: auto;"&gt;Firefox browser&lt;/span&gt;&lt;/nobr&gt; among PHP developers attributing it to the superb &lt;nobr&gt;&lt;span id="tfTextLink4828613441015819" style="background-color: transparent; border-bottom: 1px solid rgb(153, 22, 22); color: #991616; cursor: pointer; display: inline; font-size: 1em; line-height: 1em; margin-left: 0px; padding-bottom: 1px; position: relative; text-decoration: underline; width: auto;"&gt;Web development&lt;/span&gt;&lt;/nobr&gt; &lt;nobr&gt;&lt;span id="tfTextLink1863606916302203" style="background-color: transparent; border-bottom: 1px solid rgb(153, 22, 22); color: #991616; cursor: pointer; display: inline; font-size: 1em; line-height: 1em; margin-left: 0px; padding-bottom: 1px; position: relative; text-decoration: underline; width: auto;"&gt;extensions&lt;/span&gt;&lt;/nobr&gt; available for this browser. The most useful Firefox extensions for PHP developers are listed.&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;* How many PHP developers there are in the world?&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
In the latest years I have participated in many PHP events in different countries, often as a speaker, and sometimes helping in the organization of the events.&lt;br /&gt;
&lt;br /&gt;
Sometimes it is necessary to seek sponsorship. Sponsor prospects need to justify their investment in terms of benefits that they may get from the sponsorship.&lt;br /&gt;
&lt;br /&gt;
If the benefit is to have their products or services being advertised to the participants of the events, it is important to know how large is the market targeted by the event.&lt;br /&gt;
&lt;br /&gt;
Even knowing that only a fraction of the PHP developers in the world will come to a given PHP event, the more PHP developers there are, greater is the chance to have more developers coming to the event.&lt;br /&gt;
&lt;br /&gt;
Therefore the first big question is: how large is the PHP developer community world wide?&lt;br /&gt;
&lt;br /&gt;
This is a difficult question. Zend has been publishing rough estimates of the number of PHP developers that exist in the world. According to this page in the Zend site, there are over 5 million PHP developers in the world:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.zend.com/en/company/management/" rel="nofollow" target="_blank"&gt;http://www.zend.com/en/company/management/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
No sources are mentioned to base this estimate. It is also not mentioned when this estimate was produced, but it seems reasonable to assume that the estimate is close to the real numbers and is up to date.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;* How many PHP developers there are in a given country?&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
Worldwide figures are useful, but if you want to promote a regional activity that only matters to PHP developers of a certain country, it would be better if we could have a more targeted estimates.&lt;br /&gt;
&lt;br /&gt;
This is something that the PHPClasses site can help. Since many years ago, the site provides a page with several types of statistics. Some statistics are based on information provided voluntarily by the site users.&lt;br /&gt;
&lt;br /&gt;
The PHP &lt;/span&gt;               &lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;nobr&gt;&lt;span style="font-size: small;"&gt;&lt;span id="tfTextLink8966233889777553" style="background-color: transparent; border-bottom: 1px solid rgb(153, 22, 22); color: #991616; cursor: pointer; display: inline; font-size: 1em; line-height: 1em; margin-left: 0px; padding-bottom: 1px; position: relative; text-decoration: underline; width: auto;"&gt;user groups&lt;/span&gt;&lt;/span&gt;&lt;/nobr&gt;&lt;span style="font-size: small;"&gt; directory was introduced in 2004 in the site:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.phpclasses.org/blog/post/36-PHP-User-Groups-diffusion-initiative.html" title="http://www.phpclasses.org/blog/post/36-PHP-User-Groups-diffusion-initiative.html"&gt;http://www.phpclasses.org/blog/post/36-PHP-User-Groups-diffu&lt;/a&gt; ...&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.phpclasses.org/browse/group/"&gt;http://www.phpclasses.org/browse/group/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
To provide greater visibility to the PHP user groups listed in the directory, every time an user logs in the site, the welcome page shows a map with a listing of PHP user groups of the same country of the user that just logged in.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.phpclasses.org/login.html"&gt;http://www.phpclasses.org/login.html&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
The site could guess the user country from the &lt;/span&gt;        &lt;nobr&gt;&lt;span style="font-size: small;"&gt;&lt;span id="tfTextLink09769685596112565" style="background-color: transparent; border-bottom: 1px solid rgb(153, 22, 22); color: #991616; cursor: pointer; display: inline; font-size: 1em; line-height: 1em; margin-left: 0px; padding-bottom: 1px; position: relative; text-decoration: underline; width: auto;"&gt;IP address&lt;/span&gt;&lt;/span&gt;&lt;/nobr&gt;&lt;span style="font-size: small;"&gt; of the user computer but in some cases the existing IP to country &lt;/span&gt;&lt;nobr&gt;&lt;span style="font-size: small;"&gt;&lt;span id="tfTextLink79387766693303" style="background-color: transparent; border-bottom: 1px solid rgb(153, 22, 22); color: #991616; cursor: pointer; display: inline; font-size: 1em; line-height: 1em; margin-left: 0px; padding-bottom: 1px; position: relative; text-decoration: underline; width: auto;"&gt;databases&lt;/span&gt;&lt;/span&gt;&lt;/nobr&gt;&lt;span style="font-size: small;"&gt; are not reliable. Also, sometimes the user is from one country and is accessing the Internet from another country.&lt;br /&gt;
&lt;br /&gt;
Therefore, the site asks the user to voluntarily specify from which country the user is, right after the first login. The user is not required to disclose that information, but if he informs his country, the site shows the country registered user groups.&lt;br /&gt;
&lt;br /&gt;
This is a great initiative to help user groups attracting more active members, but some time later after this initiative was started, the user country information started being used to provide more interesting statistics about the site users.&lt;br /&gt;
&lt;br /&gt;
In statistics page there is a section named "Logged users countries" that shows a ranking of all countries of the users that have logged in the site in the last 30 days.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.phpclasses.org/browse/statistics/statistics.html#user-countries" title="http://www.phpclasses.org/browse/statistics/statistics.html#user-countries"&gt;http://www.phpclasses.org/browse/statistics/statistics.html#&lt;/a&gt; ...&lt;br /&gt;
&lt;br /&gt;
Right below that ranking there is a ranking grouped by continent:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.phpclasses.org/browse/statistics/statistics.html#user-continents" title="http://www.phpclasses.org/browse/statistics/statistics.html#user-continents"&gt;http://www.phpclasses.org/browse/statistics/statistics.html#&lt;/a&gt; ...&lt;br /&gt;
&lt;br /&gt;
Currently, the number of users logged in the last 30 days is of about 41,700 users. This is not a small number, so it is valid to make extrapolations based on the number of logged users.&lt;br /&gt;
&lt;br /&gt;
So, if you want to make an estimate of how many PHP developers there are in your country, just multiply the global developer count estimate mentioned in the Zend site by the percentage of users in your country or continent displayed in these rankings.&lt;br /&gt;
&lt;br /&gt;
For instance, right now the United States appears first with 12.74%. Assuming that the total number of PHP developers worldwide is 5 million, that gives about 637,000 PHP developers in the United States.&lt;br /&gt;
&lt;br /&gt;
There is a link to the statistics page at the bottom of every site page. This page is updated automatically once a day, so the statistics are up to date.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;* What PHP developers use in the development environment?&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
Right below the ranking of logged users by country and continent there are two other rankings for the operating systems and browsers that logged users run to access the site.&lt;br /&gt;
&lt;br /&gt;
These rankings shows what PHP developers use to access the Internet. While the fact that Windows is the dominant operating system on the desktop is not really a surprise, it is interesting to notice that already 8.7% PHP developers use Linux, which is more than the 7% that use Mac OS X.&lt;br /&gt;
&lt;br /&gt;
Despite Windows and Macs have been considered more user friendly to the average desktop users, nowadays Linux platforms became more friendly and are much more popular in the desktop machines of PHP developers than they were in the past.&lt;br /&gt;
&lt;br /&gt;
This growth of popularity of Linux among PHP developers may also be a consequence of the fact that developers often prefer to use the same platforms on the desktop as they use on the servers that host the sites they are developing, so it is easier to test new developments in a platform that is similar to what they have on the server.&lt;br /&gt;
&lt;br /&gt;
The ranking of browsers is also interesting: 68% use Firefox against 18.5% of share of Internet Explorer. Google Chrome already appears with almost 6% of share, but that seems to be mostly due to the power of Google marketing, as that browser development is still in beta phase.&lt;br /&gt;
&lt;br /&gt;
Despite Windows is the dominant platform, unlike the majority of the average desktop users that may still prefer Internet Explorer, PHP developers largely prefer using Firefox.&lt;br /&gt;
&lt;br /&gt;
The reason for Firefox dominance seems to be the overwhelming availability of browser extensions for Firefox that help developers do their job.&lt;br /&gt;
&lt;br /&gt;
If you are not familiar with these great Web development extensions for Firefox, here I will just mention a few that I think are the most useful:&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;- Firebug&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
Analyze page elements, locate Javascript errors, etc..&lt;br /&gt;
&lt;a href="https://addons.mozilla.org/en-US/firefox/addon/1843" rel="nofollow" target="_blank"&gt;https://addons.mozilla.org/en-US/firefox/addon/1843&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;- FirePHP&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
Extension of the Firebug add-on to show PHP debug information on Firebug console.&lt;br /&gt;
&lt;a href="https://addons.mozilla.org/en-US/firefox/addon/6149" rel="nofollow" target="_blank"&gt;https://addons.mozilla.org/en-US/firefox/addon/6149&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;- YSlow&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
Currently another extension of the Firebug add-on to measure page loading times and identify problems that make your pages load slower.&lt;br /&gt;
&lt;a href="https://addons.mozilla.org/en-US/firefox/addon/5369" rel="nofollow" target="_blank"&gt;https://addons.mozilla.org/en-US/firefox/addon/5369&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;- Web Developer&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
Several tools like disabling Javascript, CSS, redirection, clearing browser caches, resizing the browser window to test pages with different sizes, etc..&lt;br /&gt;
&lt;a href="https://addons.mozilla.org/en-US/firefox/addon/60" rel="nofollow" target="_blank"&gt;https://addons.mozilla.org/en-US/firefox/addon/60&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;- User Agent Switcher&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
Switch the browser identification to test how sites respond to different browsers.&lt;br /&gt;
&lt;a href="https://addons.mozilla.org/en-US/firefox/addon/59" rel="nofollow" target="_blank"&gt;https://addons.mozilla.org/en-US/firefox/addon/59&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;- HTML Validator&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
Validate page HTML to help finding page generation errors cause by eventual bugs in the PHP scripts.&lt;br /&gt;
&lt;a href="https://addons.mozilla.org/en-US/firefox/addon/249" rel="nofollow" target="_blank"&gt;https://addons.mozilla.org/en-US/firefox/addon/249&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;- JavaScript debugger&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
Run page Javascript code with single step support and ability to show Javascript variable values during debugging.&lt;br /&gt;
&lt;a href="https://addons.mozilla.org/en-US/firefox/addon/216" rel="nofollow" target="_blank"&gt;https://addons.mozilla.org/en-US/firefox/addon/216&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;- LiveHTTPHeaders&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
Show page request and response headers.&lt;br /&gt;
&lt;a href="https://addons.mozilla.org/en-US/firefox/addon/3829" rel="nofollow" target="_blank"&gt;https://addons.mozilla.org/en-US/firefox/addon/3829&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;* What PHP developers use in the production environment?&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
There are several sites that provide information about the production environment that PHP sites run on. Unfortunately not all information is available for free or is not updated regularly.&lt;br /&gt;
&lt;br /&gt;
For several years, Nexen has been polling Web servers worldwide to check whether they are running PHP. Unfortunately they seem to have stopped doing that last October. The latest results are available on this page:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.nexen.net/chiffres_cles/phpversion/18821-php_stats_evolution_for_october_2008.php" rel="nofollow" target="_blank" title="http://www.nexen.net/chiffres_cles/phpversion/18821-php_stats_evolution_for_october_2008.php"&gt;http://www.nexen.net/chiffres_cles/phpversion/18821-php_stat&lt;/a&gt; ...&lt;br /&gt;
&lt;br /&gt;
As you may see, PHP was found in 1/3 of the servers that were polled. That is 50% more that the 21% of the servers that were found running Microsoft ASP variants.&lt;br /&gt;
&lt;br /&gt;
Also notice that the adoption of PHP 5 versions has practically matched PHP 4 presence.&lt;br /&gt;
&lt;br /&gt;
SecuritySpace also polls Web servers worldwide. Every month they publish the latest statistics. As you may see here, in April Apache lead the Web servers ranking with almost 72% of share against 17% of Microsoft IIS.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.securityspace.com/s_survey/data/200904/index.html?refid=1057382149" rel="nofollow" target="_blank" title="http://www.securityspace.com/s_survey/data/200904/index.html?refid=1057382149"&gt;http://www.securityspace.com/s_survey/data/200904/index.html&lt;/a&gt; ...&lt;br /&gt;
&lt;br /&gt;
They also compile a report of the most popular extensions running on Apache Web servers. Unfortunately since 2007 that report is only made available to paying customers.&lt;br /&gt;
&lt;br /&gt;
The last free version of this report was made available on May 2007. Then mod_php and PHP-GGI were leading with 41.3% of the share. &lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.securityspace.com/s_survey/data/man.200704/apachemods.html?refid=1057382149" rel="nofollow" target="_blank" title="http://www.securityspace.com/s_survey/data/man.200704/apachemods.html?refid=1057382149"&gt;http://www.securityspace.com/s_survey/data/man.200704/apache&lt;/a&gt; ...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;* Other statistics&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
I suppose the statistics presented above are interesting and may be very useful for those interested to advocate for PHP or seeking sponsorship to PHP related initiatives.&lt;br /&gt;
&lt;br /&gt;
However, if you know of any other interesting statistics that may also be helpful for these purposes, please post a comment and mention them here.&lt;/span&gt;                                                                             &lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><author>noreply@blogger.com (Saravanan R)</author></item><item><title>Importing Blogs From Any Wordpress Site URL Using PHP</title><link>http://saravananraju.blogspot.com/2009/09/importing-blogs-from-any-wordpress-site.html</link><category>import</category><category>importing blogs</category><category>PHP</category><category>saravanan</category><category>wordpress</category><pubDate>Wed, 2 Sep 2009 14:52:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-7386927231748848052.post-7777549119489342549</guid><description>set_time_limit(0);&lt;br /&gt;
error_reporting(0);&lt;br /&gt;
@ini_set("memory_limit", "1024M");&lt;br /&gt;
@ini_set("allow_url_include", "on");&lt;br /&gt;
@ini_set("allow_url_fopen", "on");&lt;br /&gt;
@ini_set("allow_call_time_pass_reference", "on");&lt;br /&gt;
require_once('wp-config.php');&lt;br /&gt;
&lt;br /&gt;
$type = 'wordpress';&lt;br /&gt;
$UserName = 'Wordpress Admin Username';&lt;br /&gt;
$Password = 'Wordpress Admin Password';&lt;br /&gt;
$BlogAddress = 'http://blogname.wordpress.com OR http://www.example.com/blogs';&lt;br /&gt;
&lt;br /&gt;
$UserId = $_SESSION["ses_ID"];&lt;br /&gt;
$lastorder = 0;&lt;br /&gt;
&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
//For Wordpress.com Blogs&lt;br /&gt;
$destinationpath = "imported_blogs/";&lt;br /&gt;
$mainfilename = "blog.html";&lt;br /&gt;
&lt;br /&gt;
if(!file_exists($destinationpath.$UserId)) {&lt;br /&gt;
mkdir($destinationpath.$UserId, 0777);&lt;br /&gt;
chmod($destinationpath.$UserId, 0777);&lt;br /&gt;
}&lt;br /&gt;
if(!file_exists($destinationpath.$UserId."/".$type)) {&lt;br /&gt;
mkdir($destinationpath.$UserId."/".$type, 0777);&lt;br /&gt;
chmod($destinationpath.$UserId."/".$type, 0777);&lt;br /&gt;
}&lt;br /&gt;
$destinationpath2 = $destinationpath.$UserId."/".$type."/";&lt;br /&gt;
&lt;br /&gt;
$counter = 0;&lt;br /&gt;
if($lastorder &amp;gt; 0)&lt;br /&gt;
$orderno = $lastorder+1;&lt;br /&gt;
else&lt;br /&gt;
$orderno = 1;&lt;br /&gt;
&lt;br /&gt;
if(!file_exists($destinationpath2."blog_posts")) {&lt;br /&gt;
mkdir($destinationpath2."blog_posts", 0777);&lt;br /&gt;
chmod($destinationpath2."blog_posts", 0777);&lt;br /&gt;
}&lt;br /&gt;
$blogpostsfilename = "blog_posts0.xml";&lt;br /&gt;
$ch = curl_init();&lt;br /&gt;
curl_setopt($ch, CURLOPT_URL, $BlogAddress."/wp-login.php");&lt;br /&gt;
curl_setopt ($ch, CURLOPT_POST, 1);&lt;br /&gt;
curl_setopt ($ch, CURLOPT_POSTFIELDS, 'log='.$UserName.'&amp;amp;pwd='.$Password.'');&lt;br /&gt;
curl_setopt ($ch, CURLOPT_COOKIEJAR, 'cookie.txt');&lt;br /&gt;
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);&lt;br /&gt;
$store = curl_exec ($ch);&lt;br /&gt;
&lt;br /&gt;
curl_setopt($ch, CURLOPT_URL, $BlogAddress."/wp-admin/export.php?download=true");&lt;br /&gt;
$fp = fopen($destinationpath2."blog_posts/".$blogpostsfilename, "w");&lt;br /&gt;
curl_setopt($ch, CURLOPT_FILE, $fp);&lt;br /&gt;
curl_exec ($ch);&lt;br /&gt;
fclose($fp);&lt;br /&gt;
curl_close ($ch);&lt;br /&gt;
&lt;br /&gt;
$strxmlcontents = file_get_contents($destinationpath2."blog_posts/".$blogpostsfilename);&lt;br /&gt;
&lt;br /&gt;
$xmlarray =  xml2array($strxmlcontents);&lt;br /&gt;
$postcount = count($xmlarray['rss']['channel']['item']);&lt;br /&gt;
&lt;br /&gt;
$BlogTitle         = '';&lt;br /&gt;
$BlogContent    = '';&lt;br /&gt;
$CommentsCount  = '';&lt;br /&gt;
$PublishedDate    = '';&lt;br /&gt;
$ImageName         = '';&lt;br /&gt;
$imagecount        = '';&lt;br /&gt;
$ImageNameary    = array();&lt;br /&gt;
for($p=0;$p&amp;lt;$postcount;$p++) {&lt;br /&gt;
if($xmlarray['rss']['channel']['item'][$p]['wp:post_type'] == 'post') {&lt;br /&gt;
if($xmlarray['rss']['channel']['item'][$p]['wp:status'] == 'publish') {&lt;br /&gt;
$BlogTitle     = addslashes($xmlarray['rss']['channel']['item'][$p]['title']);&lt;br /&gt;
$BlogContent   = addslashes($xmlarray['rss']['channel']['item'][$p]['content:encoded']);&lt;br /&gt;
if($xmlarray['rss']['channel']['item'][$p]['wp:comment'][0])&lt;br /&gt;
$CommentsCount = count($xmlarray['rss']['channel']['item'][$p]['wp:comment']);&lt;br /&gt;
elseif($xmlarray['rss']['channel']['item'][$p]['wp:comment'])&lt;br /&gt;
$CommentsCount = 1;&lt;br /&gt;
else&lt;br /&gt;
$CommentsCount = 0;&lt;br /&gt;
$PublishedDate = date('Y-m-d H:i:s',strtotime($xmlarray['rss']['channel']['item'][$p]['wp:post_date']));&lt;br /&gt;
$AuthorName    = addslashes($xmlarray['rss']['channel']['item'][$p]['dc:creator']);&lt;br /&gt;
&lt;br /&gt;
$CategoryCount = count(array_unique($xmlarray['rss']['channel']['item'][$p]['category']));&lt;br /&gt;
&lt;br /&gt;
$anchortagpattern8 = '/(&lt;img.*)(.*)(\&gt;)/ismU';&lt;br /&gt;
if(preg_match_all($anchortagpattern8, $xmlarray['rss']['channel']['item'][$p]['content:encoded'], $matchedoutputs10, PREG_SET_ORDER)) {&lt;br /&gt;
$imagecount = count($matchedoutputs10);&lt;br /&gt;
for($im=0;$im&amp;lt;$imagecount;$im++) {&lt;br /&gt;
$srctagpattern = '/(src=")(.*?)(")/is';&lt;br /&gt;
if(preg_match_all($srctagpattern, $matchedoutputs10[$im][0], $matchedoutputs11, PREG_SET_ORDER)) {&lt;br /&gt;
$imagetype = getimagesize($matchedoutputs11[0][2]);&lt;br /&gt;
if(($imagetype['mime'] == 'image/jpeg') || ($imagetype['mime'] == 'image/pjpeg')) {&lt;br /&gt;
$imageext = ".jpg";&lt;br /&gt;
} elseif($imagetype['mime'] == 'image/gif') {&lt;br /&gt;
$imageext = ".gif";&lt;br /&gt;
} elseif(($imagetype['mime'] == 'image/png') || ($imagetype['mime'] == 'image/x-png')) {&lt;br /&gt;
$imageext = ".png";&lt;br /&gt;
} else {&lt;br /&gt;
$imageext = ".jpg";&lt;br /&gt;
}&lt;br /&gt;
$rand = rand(0,10000);&lt;br /&gt;
$ImageName = $type."/".md5($BlogTitle.$rand.$orderno.time()).$imageext;&lt;br /&gt;
$ImageNameary[] = $type."/".md5($BlogTitle.$rand.$orderno.time()).$imageext;&lt;br /&gt;
&lt;br /&gt;
$imagelink = $matchedoutputs11[0][2];&lt;br /&gt;
&lt;br /&gt;
if(!file_exists($destinationpath."imported_images/".$UserId)) {&lt;br /&gt;
mkdir($destinationpath."imported_images/".$UserId, 0777);&lt;br /&gt;
chmod($destinationpath."imported_images/".$UserId, 0777);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
if(!file_exists($destinationpath."imported_images/".$UserId."/".$type)) {&lt;br /&gt;
mkdir($destinationpath."imported_images/".$UserId."/".$type, 0777);&lt;br /&gt;
chmod($destinationpath."imported_images/".$UserId."/".$type, 0777);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
$ch = curl_init($imagelink);&lt;br /&gt;
$fp = fopen($destinationpath."imported_images/".$UserId."/".$ImageName, "w");&lt;br /&gt;
curl_setopt($ch, CURLOPT_FILE, $fp);&lt;br /&gt;
curl_setopt($ch, CURLOPT_HEADER, 0);&lt;br /&gt;
&lt;br /&gt;
curl_exec($ch);&lt;br /&gt;
curl_close($ch);&lt;br /&gt;
fclose($fp);&lt;br /&gt;
&lt;br /&gt;
$BlogContent = str_replace($imagelink,$GlobalUrl."/imported_blogs/imported_images/".$UserId."/".$ImageName,$BlogContent);&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
echo $BlogTitle;&lt;br /&gt;
echo $BlogContent;&lt;br /&gt;
echo $CommentsCount;&lt;br /&gt;
echo $imagecount;&lt;br /&gt;
echo $CategoryCount;&lt;br /&gt;
echo $PublishedDate;&lt;br /&gt;
&lt;br /&gt;
if(is_array($ImageNameary)) {&lt;br /&gt;
$imagecount2 = count($ImageNameary);&lt;br /&gt;
for($im2=0;$im2&amp;lt;$imagecount2;$im2++) {&lt;br /&gt;
echo $ImageNameary[$im2];&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
$CategoryName = array_unique($xmlarray['rss']['channel']['item'][$p]['category']);&lt;br /&gt;
&lt;br /&gt;
for($ca=0;$ca&amp;lt;$CategoryCount;$ca++) {&lt;br /&gt;
if($CategoryName[$ca] != '') {&lt;br /&gt;
echo $CategoryName[$ca];&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
if($CommentsCount == 1) {&lt;br /&gt;
$Comment_Text = addslashes($xmlarray['rss']['channel']['item'][$p]['wp:comment']['wp:comment_content']);&lt;br /&gt;
$Comment_Date = $xmlarray['rss']['channel']['item'][$p]['wp:comment']['wp:comment_date'];&lt;br /&gt;
$Comment_Author = addslashes($xmlarray['rss']['channel']['item'][$p]['wp:comment']['wp:comment_author']);&lt;br /&gt;
if(is_array($xmlarray['rss']['channel']['item'][$p]['wp:comment']['wp:comment_author_email']))&lt;br /&gt;
$Comment_AuthorEmail = '';&lt;br /&gt;
else&lt;br /&gt;
$Comment_AuthorEmail = $xmlarray['rss']['channel']['item'][$p]['wp:comment']['wp:comment_author_email'];&lt;br /&gt;
&lt;br /&gt;
echo $Comment_Text;&lt;br /&gt;
echo $Comment_Author;&lt;br /&gt;
echo $Comment_AuthorEmail;&lt;br /&gt;
echo $Comment_Date;&lt;br /&gt;
} else {&lt;br /&gt;
for($ct=0;$ct&amp;lt;$CommentsCount;$ct++) {&lt;br /&gt;
$Comment_Text = addslashes($xmlarray['rss']['channel']['item'][$p]['wp:comment'][$ct]['wp:comment_content']);&lt;br /&gt;
$Comment_Date = $xmlarray['rss']['channel']['item'][$p]['wp:comment'][$ct]['wp:comment_date'];&lt;br /&gt;
$Comment_Author = addslashes($xmlarray['rss']['channel']['item'][$p]['wp:comment'][$ct]['wp:comment_author']);&lt;br /&gt;
if(is_array($xmlarray['rss']['channel']['item'][$p]['wp:comment'][$ct]['wp:comment_author_email']))&lt;br /&gt;
$Comment_AuthorEmail = '';&lt;br /&gt;
else&lt;br /&gt;
$Comment_AuthorEmail = $xmlarray['rss']['channel']['item'][$p]['wp:comment'][$ct]['wp:comment_author_email'];&lt;br /&gt;
&lt;br /&gt;
echo $Comment_Text;&lt;br /&gt;
echo $Comment_Author;&lt;br /&gt;
echo $Comment_AuthorEmail;&lt;br /&gt;
echo $Comment_Date;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
$orderno++;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&lt;/img.*)(.*)(\&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><author>noreply@blogger.com (Saravanan R)</author></item><item><title>India will become number 1 source of PHP developers soon</title><link>http://saravananraju.blogspot.com/2009/09/india-will-become-number-1-source-of.html</link><pubDate>Wed, 2 Sep 2009 14:27:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-7386927231748848052.post-4808674724697111824</guid><description>&lt;span style="font-family: Arial,Helvetica,sans-serif; font-size: small;"&gt;&lt;/span&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif; font-size: small;"&gt;&lt;/span&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizhtL_4AGlzijjbQLKHa7sCaPO_BWt_uk5VFmNPyno4L59ObDSMdnIo5cIdnUv_AcTSqldsAu41Bwezlyac0qmiwVWBCMt2k1zL1cbthgJ1impaIsDVRMLEd3AU5-yxWJ4sFFttA3k1z1d/s1600-h/jobs.gif" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizhtL_4AGlzijjbQLKHa7sCaPO_BWt_uk5VFmNPyno4L59ObDSMdnIo5cIdnUv_AcTSqldsAu41Bwezlyac0qmiwVWBCMt2k1zL1cbthgJ1impaIsDVRMLEd3AU5-yxWJ4sFFttA3k1z1d/s400/jobs.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;The number of Indian PHP &lt;/span&gt;&lt;nobr&gt;&lt;span style="font-size: small;"&gt;&lt;span class="tfTextLink" id="tfTextLink5538169430902745" style="background-color: transparent; border-bottom: 1px solid rgb(153, 22, 22); color: #991616; cursor: pointer; display: inline; font-size: 1em; line-height: 1em; margin-left: 0px; padding-bottom: 1px; position: relative; text-decoration: underline; width: auto;"&gt;developers&lt;/span&gt;&lt;/span&gt;&lt;/nobr&gt;&lt;span style="font-size: small;"&gt; has been growing at a large pace in the last few years, when compared to other countries. A few years ago, India was just one of the top ten countries with more PHP developers. Now India is number 2 and is almost surpassing United States, which is still number 1.&lt;br /&gt;
&lt;br /&gt;
This article presents a reflection about why this growth happened just in the latest years, as well what it means for the PHP world.&lt;br /&gt;
&lt;br /&gt;
Sandeep Kadam, a leader of the PHP community in India gave an interview to help clarifying this subject.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;br clear="all" /&gt;&lt;/span&gt;  &lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;- The size of the Indian PHP market&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
Currently, India is the number 2 in terms of PHP developers that logged in the PHPClasses site in the latest 30 days. Indian developers represent 10.5% of the logged users, against 11.8% of developers from the United States, which is still in the lead.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.phpclasses.org/browse/statistics/statistics.html"&gt;http://www.phpclasses.org/browse/statistics/statistics.html&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
It is true that we are still in a month that is typically when people go out on Summer vacation in the North hemisphere. Still the difference between India and United States audience has never been so small.&lt;br /&gt;
&lt;br /&gt;
A few years ago the United States represented about 20% of the audience. Germany was second with about 12%. India had less than 3%. Something has happened that caused this huge growth of the India PHP developers in just a few years.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;- PHP developers available for taking jobs&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
The directory of PHP professionals available for taking PHP jobs of the PHPClasses site is lead by India:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.phpclasses.org/professionals/"&gt;http://www.phpclasses.org/professionals/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
1. India              - 15.7%&lt;br /&gt;
2. United States      -  8.7%&lt;br /&gt;
3. Brazil             -  6.8%&lt;br /&gt;
4. Italy              -  3.5%&lt;br /&gt;
5. Germany            -  3.0%&lt;br /&gt;
6. United Kingdom     -  2.6%&lt;br /&gt;
7. Indonesia          -  2.4%&lt;br /&gt;
8. Argentina          -  2.3%&lt;br /&gt;
9. Spain              -  2.1%&lt;br /&gt;
10. Mexico             -  1.9%&lt;br /&gt;
11. Russian Federation -  1.8%&lt;br /&gt;
12. Canada             -  1.7%&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;- Certified PHP Developers&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
On the other &lt;/span&gt;                &lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;nobr&gt;&lt;span style="font-size: small;"&gt;&lt;span class="tfTextLink" id="tfTextLink6312257421490405" style="background-color: transparent; border-bottom: 1px solid rgb(153, 22, 22); color: #991616; cursor: pointer; display: inline; font-size: 1em; line-height: 1em; margin-left: 0px; padding-bottom: 1px; position: relative; text-decoration: underline; width: auto;"&gt;hand&lt;/span&gt;&lt;/span&gt;&lt;/nobr&gt;&lt;span style="font-size: small;"&gt;, the growth of certified PHP developers from India does not seem to have grown at the same pace as the number of India PHP developers in the market.&lt;br /&gt;
&lt;br /&gt;
Mauricio Garcia, a Zend Certified PHP developer of ProPHP, a group of PHP professionals from Brazil, has been keeping track of the growth of certified PHP developers over time.&lt;br /&gt;
&lt;br /&gt;
Despite Zend Engineer certification is available in many countries, according to Mauricio's research, United States is still by far the leader in the number of certified PHP developers. In India there is only about 10% of the total number of certified PHP developers in the United States.&lt;br /&gt;
&lt;br /&gt;
Mauricio was kind enough to provide up to date figures of Zend certifications obtained by developers of different countries. As of July 2009, here follows the top countries with most Zend certifications. It accounts both PHP 4, PHP 5 and Zend &lt;/span&gt;   &lt;nobr&gt;&lt;span style="font-size: small;"&gt;&lt;span class="tfTextLink" id="tfTextLink30422186813881824" style="background-color: transparent; border-bottom: 1px solid rgb(153, 22, 22); color: #991616; cursor: pointer; display: inline; font-size: 1em; line-height: 1em; margin-left: 0px; padding-bottom: 1px; position: relative; text-decoration: underline; width: auto;"&gt;Framework&lt;/span&gt;&lt;/span&gt;&lt;/nobr&gt;&lt;span style="font-size: small;"&gt; certifications. So it is possible that different people took multiple certifications.&lt;br /&gt;
&lt;br /&gt;
1. United States  - 25.0%&lt;br /&gt;
2. Germany        - 10.2%&lt;br /&gt;
3. Netherlands    -  8.2%&lt;br /&gt;
4. United Kingdom -  6.6%&lt;br /&gt;
5. Canada         -  5.3%&lt;br /&gt;
6. France         -  4.9%&lt;br /&gt;
7. India          -  3.2%&lt;br /&gt;
8. Brazil         -  2.3%&lt;br /&gt;
9. Australia      -  2.0%&lt;br /&gt;
10. Japan          -  2.0%&lt;br /&gt;
&lt;br /&gt;
You may find more details of Mauricio's research in this slide show (in Portuguese) of a presentation that he gave in Brazil early this year. It is about a post-graduate PHP course that Mauricio is a teacher in São Paulo. Jump to slide 60 for the relevant &lt;/span&gt;  &lt;nobr&gt;&lt;span style="font-size: small;"&gt;&lt;span class="tfTextLink" id="tfTextLink8535723783162948" style="background-color: transparent; border-bottom: 1px solid rgb(153, 22, 22); color: #991616; cursor: pointer; display: inline; font-size: 1em; line-height: 1em; margin-left: 0px; padding-bottom: 1px; position: relative; text-decoration: underline; width: auto;"&gt;rankings&lt;/span&gt;&lt;/span&gt;&lt;/nobr&gt;&lt;span style="font-size: small;"&gt; over the years.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;- PHP user groups&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
PHP user groups in India are also very popular. India is the country with most &lt;/span&gt; &lt;div&gt;&lt;nobr&gt;&lt;span style="font-size: small;"&gt;&lt;span class="tfTextLink" id="tfTextLink6537055685775741" style="background-color: transparent; border-bottom: 1px solid rgb(153, 22, 22); color: #991616; cursor: pointer; display: inline; font-size: 1em; line-height: 1em; margin-left: 0px; padding-bottom: 1px; position: relative; text-decoration: underline; width: auto;"&gt;active&lt;/span&gt;&lt;/span&gt;&lt;/nobr&gt;&lt;span style="font-size: small;"&gt; user groups listed in the PHPClasses site user groups directory, right after Brazil.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.phpclasses.org/browse/group/"&gt;http://www.phpclasses.org/browse/group/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Here is the current top 10 countries with most user groups that are considered active:&lt;br /&gt;
&lt;br /&gt;
1. Brazil         - 11.4%&lt;br /&gt;
2. India          - 10.5%&lt;br /&gt;
3. United States  -  5.7%&lt;br /&gt;
4. Spain          -  5.2%&lt;br /&gt;
5. Romania        -  4.8%&lt;br /&gt;
6. Italy          -  3.5%&lt;br /&gt;
7. Argentina      -  3.1%&lt;br /&gt;
8. Germany        -  3.1%&lt;br /&gt;
9. Ukraine        -  2.6%&lt;br /&gt;
10. China          -  2.2%&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;- PHP Programming Innovation Award - *updated* &lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
As you may be aware, the PHP Programming Innovation Award is a contest that happens every month since 2004. &lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.phpclasses.org/award/innovation/"&gt;http://www.phpclasses.org/award/innovation/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Despite only since 2006 India started appearing in the top ten ranking of the countries with most innovative authors, in 2009 India is already the leader, as you see in the winners ranking pages:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.phpclasses.org/winners/"&gt;http://www.phpclasses.org/winners/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;- Interview with Sandeep Kadam&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
India has always been a great market for companies that work for foreign businesses in outsourced projects.&lt;br /&gt;
&lt;br /&gt;
However, some developers living in other countries still see India as a threat to their jobs because Indian outsourcing companies charge very low prices.&lt;br /&gt;
&lt;br /&gt;
On the other hand, outsourcing companies in other countries see this as business opportunity. Some of them take outsourced projects from local customers and hire outsourcing companies from India to actually implement them. The customer deals with the local company, and that company deals with the outsourcing company in India. This way every company gains.&lt;br /&gt;
&lt;br /&gt;
Whether customers deal with outsourcing companies directly or via a local intermediary company, all this helped the India outsourcing market to grow a lot, especially after when Internet access became widely accessible.&lt;br /&gt;
&lt;br /&gt;
But the Internet boom started in the mid-late 90s. The accentuated growth of the India PHP development market only became noticeable in the last 3 years. What happened since then?&lt;br /&gt;
&lt;br /&gt;
That is the question that we would like to answer. Hopefully we can learn some valuable lessons that help growing the PHP market in other countries.&lt;br /&gt;
&lt;br /&gt;
To answer that question, Sandeep Kadam, a leader of the PHP community in India, was invited to give an interview on this subject.&lt;br /&gt;
&lt;br /&gt;
I met Sandeep when he asked to have PHPCamp event in India of last year announced in the featured initiatives section of PHPClasses newsletter. This year, he asked me to get his event listed again, so I invited him to this interview.&lt;br /&gt;
&lt;br /&gt;
By the way, if you are helping in the organization of a PHP event in your country and would like get as much exposure as possible to attract more people to the event, feel free to contact the PHPClasses site. This is a free service that the PHPClasses provides to help regional PHP communities grow.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.phpclasses.org/newsletter/#initiatives"&gt;http://www.phpclasses.org/newsletter/#initiatives&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PC = PHPClasses (Manuel Lemos)&lt;br /&gt;
SK = Sandeep Kadam&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PC: Sandeep, can you please start by telling us what do you do, where do you live, and what is your job?&lt;br /&gt;
&lt;br /&gt;
SK: Hi, I'm Sandeep Kadam from Pune, India. Originally I worked in Nasik but our company moved to Pune. Later I changed to another company also in Pune. I graduated in the Pune University. Currently I am pursuing distance learning MBA from ICFAI University, Hyderabad. I work as a team leader in a Web development firm based in Pune.&lt;/span&gt;                                &lt;/div&gt;&lt;div&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-size: small;"&gt;PC: Did you learn PHP in college as part of your education curriculum, or did you learn PHP because you need it for your a project?&lt;br /&gt;
&lt;br /&gt;
SK: No, it was not part of college study because PHP was not covered then. But recently it has been added to the college curriculum. I have learned PHP by myself. I found it very easy and interesting.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PC: Can you tell us bit about the structure of the PHP communities in India, PHP user groups, PHP events, and the PHP job market?&lt;br /&gt;
&lt;br /&gt;
SK: The PHP communities are growing day by day. Each community is full of discussions related to new techniques, and people helping to solve problems of newcomers. Some people are constantly dedicated to the groups, always replying and active.&lt;br /&gt;
&lt;br /&gt;
There are forum sites and job portals available specifically for PHP jobs, like for example www.punephpjobs.com dedicated to PHP jobs in Pune and www.phpjobs.co.in for PHP jobs in the whole India.&lt;br /&gt;
&lt;br /&gt;
User groups based on specific cities are growing a lot, many of which are listed in PHPClasses.org. If you see the India page there are many user groups created by enthusiasts that manage the groups in different cities.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.phpclasses.org/browse/group/bycountry/country/in/"&gt;http://www.phpclasses.org/browse/group/bycountry/country/in/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Last year we organized an event in Pune named PHPCamp, which we never had before. It was the first time in India we had an event like this. We were just expecting 300 users for the event, but we got over 700 users, which was quite unexpected. It was one of the biggest unconference events in India.&lt;br /&gt;
&lt;br /&gt;
PHP market in India in full swing. If you just search for PHP on India's job portals, you will get many PHP job openings. Also there are no issues regarding salaries. Despite there is still a recession in the United States and other countries, in India there is still a lot of demand for PHP professionals.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PC: In some countries, there are organized non-profit groups that promote the cooperation of different PHP user groups and promote local PHP events. For instance in Germany there is the PHPUG:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.phpug.de/" rel="nofollow" target="_blank"&gt;http://www.phpug.de/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
In Belgium, Netherlands and Luxembourg, there is PHPBenelux:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://phpbenelux.eu/" rel="nofollow" target="_blank"&gt;http://phpbenelux.eu/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
In Brazil there is ProPHP, which is a non-profit group of PHP professionals that helps organizing national PHP events. There is also PHP Brasil Comunidades which promotes the cooperation between different regional user groups:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.prophp.com.br/" rel="nofollow" target="_blank"&gt;http://www.prophp.com.br/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.php.org.br/" rel="nofollow" target="_blank"&gt;http://www.php.org.br/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Is there anything in India similar to these non-profit groups to promote the PHP communities? If not, do you intend to create similar organizations?&lt;br /&gt;
&lt;br /&gt;
SK: Currently there is no non-profit organization to promote PHP in India like those. For now there are only online communities and forums created by PHP enthusiasts.&lt;br /&gt;
&lt;br /&gt;
I am willing to create similar organization in India. We have given the initial steps in that direction by organizing the PHPCamp event in India for the first time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PC: You are a local India PHP leader that is involved in that PHP event in Pune. Can you please tell us a bit more about that event, how many people do you expect, what activities will take place? Any well known PHP developers coming to those events?&lt;br /&gt;
&lt;br /&gt;
SK: PHPCamp was initiated by Amit Singh, one of the PHP enthusiasts of Pune which got more support from user groups listed on PHPClasses.org.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://amiworks.co.in/" rel="nofollow" target="_blank"&gt;http://amiworks.co.in/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Last year there were various PHP sessions given by about 10 speakers on different topics. Some speakers were employees from Satyam (Bangalore) and Directi (Mumbai).&lt;br /&gt;
&lt;br /&gt;
We also arranged a small code lab to exhibit practical examples online. That was interesting as we got a good response. The audience was from all ages, from young students to older people. There were many college students attending this event, which helped them lot.&lt;br /&gt;
&lt;br /&gt;
The event was sponsored by renowned local companies from Pune like Persistent systems, PuneITlabs and 01synergy.&lt;br /&gt;
&lt;br /&gt;
You may find more information about the last year edition of the event here:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://phpcamp.org/phpcamp08.html" rel="nofollow" target="_blank"&gt;http://phpcamp.org/phpcamp08.html&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
This year we are expecting more than 1300 attendants. Right now we are making contact to get support and speakers from Yahoo (Bangalore). We also expect some speakers from Bangalore, Mumbai, Hyderabad and near cities. Registration for this year's event has already started. It is free.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PC: Is it difficult to organize that kind of events in India? What are the main difficulties and what is your motivation to work on these events basically as non-profit?&lt;br /&gt;
&lt;br /&gt;
SK: It is not that difficult to organize events in India. But as the community grows, your expenses increase. Too make a successful event you really need some funds. For that you need good sponsors.&lt;br /&gt;
&lt;br /&gt;
Our motivation is as follows:&lt;br /&gt;
&lt;br /&gt;
1. To increase the awareness on Open Source and its advantages&lt;br /&gt;
&lt;br /&gt;
2. To make it comfortable for newcomers&lt;br /&gt;
&lt;br /&gt;
3. Make time to get together techies and have some formal or informal chit-chat on Open Source and upcoming technologies&lt;br /&gt;
&lt;br /&gt;
4. To create a dedicated group and a community which will work on national level to help the community grow everywhere&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PC: Regarding the growth of the PHP Indian market, did you also note that growth that happened mostly in the latest years, when compared to other software development markets?&lt;br /&gt;
&lt;br /&gt;
SK: Yes, that was amazing. All of the sudden IT was in a boom and all was about the Internet. Lots of people became aware of forums, social community sites and other tech sites.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PC: In your opinion, what is due to this sudden growth? Could it have to due with the fact that PHP has gained momentum in the enterprise world that typically outsources projects to Indian companies? Could it have to due with the global economic crisis? Could it have to due with the growth of the local PHP communities? Or, do you think it is due to something else?&lt;br /&gt;
&lt;br /&gt;
SK: According to my opinion PHP has gained momentum in the enterprise world because PHP became a more interesting technology when all of the Internet giants (Google, Yahoo, Facebook, Digg, etc..) started using Open source technologies like Linux, Apache, Memcache, etc. with which PHP and MySQL worked great, and they became hot technologies.&lt;br /&gt;
&lt;br /&gt;
There was a lot instant problem solving and knowledge sharing on communities and forums, which attracted more developers to PHP.&lt;br /&gt;
&lt;br /&gt;
Also nowadays blogs are becoming an interesting part of everybody's life. All like to write on their own blog. So Wordpress boomed, which is also due in great part to PHP.&lt;br /&gt;
&lt;br /&gt;
Like Wordpress there are several others like Joomla, Drupal, Zencart, Oscommerce which were free and user friendly applications using PHP and MySQL.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PC: OK, but why did the growth happen just in the last years and Indian PHP developers increased much more than in other countries?&lt;br /&gt;
&lt;br /&gt;
SK: In my opinion, India is one of the outsourcing destinations which is well known worldwide. A lot of projects are outsourced to India. This has been increasing the demand for developers.&lt;br /&gt;
&lt;br /&gt;
Many PHP programmers are being hired by the outsourcing firms for Web development activities and for their businesses.&lt;br /&gt;
&lt;br /&gt;
Flexibility and low cost are main attributes of the PHP programming language. This is the main reason behind extensive usage of this programming language by the programmers in various Web development activities for the outsourcing companies.&lt;br /&gt;
&lt;br /&gt;
All sorts of companies can easily hire PHP professionals as an offshore service by companies that are providing these services at affordable prices.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PC: OK, but that has been that way for decades for all types of software developer. In your opinion, why only in the last years happened this boom with PHP?&lt;br /&gt;
&lt;br /&gt;
SK: Because of lots of companies are working on Web development now. That has created a large communities of Open source developers in India.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PC: Right, but PHP is 14 years old and Open Source boom started in late 90s. Do you have any other explanation for this recent PHP boom in India?&lt;br /&gt;
&lt;br /&gt;
SK: Yes, going back to my answer about Internet giants that started using Open source technologies. This got the attention of companies worldwide to these technologies, which was only noticed previously by a few companies.&lt;br /&gt;
&lt;br /&gt;
As the international clients also demanded all projects to use Open Source technologies, it also gradually increased the demand for Open Source professionals. Professionals from off-shore companies are providing best customized services to their clients due to experience of working with international companies from different industries.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PC: Despite the growth of Indian PHP developers, the number of those certificated by Zend did not grow so much. Nowadays, India is one of top 10 countries with most certificated PHP developers, but with about 10% of the United States, which is at the top.&lt;br /&gt;
&lt;br /&gt;
Why do you think the number of certificated PHP developers did not grow as fast? Could it be a reflex that the job market is not requiring PHP certified professionals? Is it easy and affordable for an Indian PHP developer to take the certification preparation and exams?&lt;br /&gt;
&lt;br /&gt;
SK: Yes, the market is not requiring that you are a certified professional. The main requirement is that your core knowledge is good and you should be aware of the latest Web functionalities.&lt;br /&gt;
&lt;br /&gt;
The certification process is moderately affordable to some Indian developers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PC: Some businesses are afraid to outsource projects to companies to India as they are not sure the projects will be well implemented.&lt;br /&gt;
&lt;br /&gt;
What precautions do you recommend that businesses considering outsourcing projects to Indian companies do to make sure the PHP projects are well implemented by capable companies in India? Is there a way to verify the reputation of a Indian company before outsourcing projects?&lt;br /&gt;
&lt;br /&gt;
SK: Here follows some important points which you should verify:&lt;br /&gt;
&lt;br /&gt;
1. Technically strong team&lt;br /&gt;
2. Good management team to tackle the business&lt;br /&gt;
3. Have communication with offshore development team&lt;br /&gt;
4. Review portfolio and samples of work done&lt;br /&gt;
5. Monitor progress and project review&lt;br /&gt;
6. Evaluate the technique of handling project&lt;br /&gt;
7. Before starting the work, some legal documents should be prepared as required by law&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PC: OK, other than that, are there any third-party institutions that provide evidence of the reputation of an Indian company to take outsourced projects?&lt;br /&gt;
&lt;br /&gt;
SK: Yes, STPI - Software Technology Parks of India - is an institution established by the department of communication and information technology of the government of India.&lt;br /&gt;
&lt;br /&gt;
Companies registered with STPI have to provide detailed information about their activity like what company is about, what kind of work will be done, what are future prospects, what is the background of directors and owners of companies, and several other details the companies have to provide if they want to be STPI approved.&lt;br /&gt;
&lt;br /&gt;
You can contact to ask to STPI for further information:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.stpi.in/" rel="nofollow" target="_blank"&gt;http://www.stpi.in/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PC: What are your plans for continuing to promoting the PHP Community in India?&lt;br /&gt;
&lt;br /&gt;
SK: Here is an overview of the my plans:&lt;br /&gt;
&lt;br /&gt;
1. Have a dedicated online community with some moderators to keep all developers in touch and helping to solve the issues&lt;br /&gt;
2. Arrange camp events in all major cities&lt;br /&gt;
3. Have a quarterly meeting with all the leaders of city groups in person and discuss the next plans for increasing the community&lt;br /&gt;
4. Arrange some events of guest speakers from PHP.net, Yahoo, Facebook or any other big giants on interesting topics&lt;br /&gt;
5. Coding, sharing and creating a good social project out of India PHP community&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PC: What do you recommend that other PHP developers in India should do to take part of your activities?&lt;br /&gt;
&lt;br /&gt;
SK: For now I recommend that they register to participate in the PHPCamp event. We already have PHPCamp group in Google Groups, on which participating users can interact, as well in other social network sites like Twitter, Facebook, etc..&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://phpcamp.org/" rel="nofollow" target="_blank"&gt;http://phpcamp.org/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PC: Sandeep, thank you for the interview. Best of luck on promoting PHP in India.&lt;br /&gt;
&lt;br /&gt;
SK: Thank you. Manuel you have also been of great help.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you want to contact Sandeep directly you may go to his site:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.sandykadam.com/" rel="nofollow" target="_blank"&gt;http://www.sandykadam.com/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
If you want to ask questions or make comment regarding these topics, please post a comment here.&lt;br /&gt;
&lt;/span&gt;                                                                                                     &lt;/div&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;/span&gt;  &lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizhtL_4AGlzijjbQLKHa7sCaPO_BWt_uk5VFmNPyno4L59ObDSMdnIo5cIdnUv_AcTSqldsAu41Bwezlyac0qmiwVWBCMt2k1zL1cbthgJ1impaIsDVRMLEd3AU5-yxWJ4sFFttA3k1z1d/s72-c/jobs.gif" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><author>noreply@blogger.com (Saravanan R)</author></item><item><title>PHP performance tips from Google</title><link>http://saravananraju.blogspot.com/2009/09/php-performance-tips-from-google.html</link><category>benchmark</category><category>critique</category><category>google</category><category>performance</category><category>PHP</category><pubDate>Wed, 2 Sep 2009 14:21:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-7386927231748848052.post-4523010162031074568</guid><description>&lt;span style="font-size: small;"&gt;&lt;/span&gt;&lt;div class="entry" style="font-family: Arial,Helvetica,sans-serif;"&gt;     &lt;div class="snap_preview"&gt;&lt;span style="font-size: small;"&gt;I saw a link on twitter referring to &lt;a href="http://code.google.com/speed/articles/optimizing-php.html"&gt;PHP optimization advice from Google&lt;/a&gt;. There are a bunch of advices there, some of them are quite sound, if not new – like use latest versions if possible, profile your code, cache whatever can be cached, etc. Some are of doubtful value – like the output buffering one, which could be useful in some situations but do nothing or be worse in others, and if you’re a beginner generally it’s better for you to leave it alone until you’ve solved the real performance problems.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;However some of the advices make no sense at best and are potentially harmful at worst. Let’s get to it:&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;First one: &lt;strong&gt;&lt;em&gt;Don’t copy variables for no reason&lt;/em&gt;&lt;/strong&gt;. I don’t know what the author intended to describe there, but PHP engine is refcounting copy-on-write, and there’s absolutely no copying going on when assigning variables as they described it:&lt;/span&gt;&lt;br /&gt;
&lt;div style="background-color: #eeeeee;"&gt;&lt;span style="font-size: small;"&gt;&lt;code&gt;$description = strip_tags($_POST['description']);&lt;br /&gt;
echo $description;&lt;br /&gt;
&lt;/code&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size: small;"&gt;I don’t know where it comes from but it’s just not so, unless maybe in some prehistoric version of PHP. Which means unless you’re going back to 1997 in a time machine this advice is no good for you.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;Next one: &lt;strong&gt;&lt;em&gt;Avoid doing SQL queries within a loop&lt;/em&gt;&lt;/strong&gt;. This actually might make sense in some situations, however the code examples they give there is missing one important detail that makes it potentially harmful for beginners (see if you can spot it):&lt;/span&gt;&lt;br /&gt;
&lt;div style="background-color: #eeeeee;"&gt;&lt;span style="font-size: small;"&gt;&lt;code&gt;$userData = [];&lt;br /&gt;
foreach ($userList as $user) {&lt;br /&gt;
$userData[] = '("' . $user['first_name'] . '", "' . $user['last_name'] . '")';&lt;br /&gt;
}&lt;br /&gt;
$query = 'INSERT INTO users (first_name,last_name) VALUES' . implode(',', $userData);&lt;br /&gt;
mysql_query($query);&lt;br /&gt;
&lt;/code&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size: small;"&gt;Please repeat after me – &lt;strong&gt;DO NOT INSERT USER DATA INTO SQL WITHOUT SANITIZING IT&lt;/strong&gt;!&lt;br /&gt;
Of course, I can not know that &lt;em&gt;$user&lt;/em&gt; was not sanitized. Maybe the intent was that it was. But if you give such example and target beginners, you should say so explicitly, &lt;em&gt;every time&lt;/em&gt;! People tend to copy/paste examples, and then you get &lt;a href="http://en.wikipedia.org/wiki/SQL_injection#Real-world_examples"&gt;SQL injection in a government site&lt;/a&gt;.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;Another thing: most of real-life PHP applications usually do not insert data in bulk, except for some very special scenarios (bulk data imports, etc.) – so actually in most cases one would be better off using &lt;a href="http://php.net/pdo"&gt;PDO &lt;/a&gt;and prepared statements. Or some &lt;a href="http://framework.zend.com/manual/en/zend.db.html"&gt;higher-level frameworks&lt;/a&gt; which will do it for you. But if you roll your own SQL – &lt;strong&gt;sanitize the data&lt;/strong&gt;! This is much more important than any performance tricks.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;Next one: &lt;em&gt;&lt;strong&gt;Use single-quotes for long strings. &lt;/strong&gt;&lt;/em&gt;PHP code is parsed and compiled, and any possible difference in speed between parsing “” and ” is really negligible unless you operate with hundreds of megabyte-size strings embedded in your code. If you do so, your quotes probably aren’t where you should start optimizing. And of course, using caching (see below) eliminates this difference altogether.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;Next one: &lt;strong&gt;&lt;em&gt;Use switch/case instead of if/else&lt;/em&gt;&lt;/strong&gt;. This makes no sense since switch does essentially the same things as if’s do. See for yourself, here is the “if” code:&lt;/span&gt;&lt;br /&gt;
&lt;div style="background-color: #eeeeee;"&gt;&lt;span style="font-size: small;"&gt;&lt;code&gt;0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A(0) = FETCH_R(C("_POST")) [global]&lt;br /&gt;
1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A(1) = FETCH_DIM_R(A(0), C("action")) [Standard]&lt;br /&gt;
2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; T(2) = IS_EQUAL(A(1), C("add"))&lt;br /&gt;
3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; JMPZ(T(2), 7)&lt;br /&gt;
4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INIT_FCALL_BY_NAME(function_table, C("addUser"))&lt;br /&gt;
5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Au(3) = DO_FCALL_BY_NAME() [0 arguments]&lt;br /&gt;
6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; JMP(16)&lt;br /&gt;
7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A(4) = FETCH_R(C("_POST")) [global]&lt;br /&gt;
8&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A(5) = FETCH_DIM_R(A(4), C("action")) [Standard]&lt;br /&gt;
9&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; T(6) = IS_EQUAL(A(5), C("delete"))&lt;br /&gt;
10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; JMPZ(T(6), 14)&lt;br /&gt;
11&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INIT_FCALL_BY_NAME(function_table, C("deleteUser"))&lt;br /&gt;
12&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Au(7) = DO_FCALL_BY_NAME() [0 arguments]&lt;br /&gt;
13&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; JMP(16)&lt;br /&gt;
14&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INIT_FCALL_BY_NAME(function_table, C("defaultAction"))&lt;br /&gt;
15&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Au(8) = DO_FCALL_BY_NAME() [0 arguments]&lt;br /&gt;
16&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RETURN(C(1))&lt;br /&gt;
17&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HANDLE_EXCEPTION()&lt;br /&gt;
&lt;/code&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size: small;"&gt;Here is the “switch” code:&lt;/span&gt;&lt;br /&gt;
&lt;div style="background-color: #eeeeee;"&gt;&lt;span style="font-size: small;"&gt;&lt;code&gt;0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A(0) = FETCH_R(C("_POST")) [global]&lt;br /&gt;
1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A(1) = FETCH_DIM_R(A(0), C("action")) [Standard]&lt;br /&gt;
2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; T(2) = CASE(A(1), C("add"))&lt;br /&gt;
3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; JMPZ(T(2), 8 )&lt;br /&gt;
4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INIT_FCALL_BY_NAME(function_table, C("addUser"))&lt;br /&gt;
5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Au(3) = DO_FCALL_BY_NAME() [0 arguments]&lt;br /&gt;
6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; BRK(0, C(1))&lt;br /&gt;
7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; JMP(10)&lt;br /&gt;
8&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; T(2) = CASE(A(1), C("delete"))&lt;br /&gt;
9&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; JMPZ(T(2), 14)&lt;br /&gt;
10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INIT_FCALL_BY_NAME(function_table, C("deleteUser"))&lt;br /&gt;
11&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Au(4) = DO_FCALL_BY_NAME() [0 arguments]&lt;br /&gt;
12&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 8&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; BRK(0, C(1))&lt;br /&gt;
13&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; JMP(15)&lt;br /&gt;
14&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; JMP(19)&lt;br /&gt;
15&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INIT_FCALL_BY_NAME(function_table, C("defaultAction"))&lt;br /&gt;
16&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Au(5) = DO_FCALL_BY_NAME() [0 arguments]&lt;br /&gt;
17&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; BRK(0, C(1))&lt;br /&gt;
18&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 12&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; JMP(20)&lt;br /&gt;
19&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 12&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; JMP(15)&lt;br /&gt;
20&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 12&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SWITCH_FREE(A(1))&lt;br /&gt;
21&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 13&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RETURN(C(1))&lt;br /&gt;
22&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 13&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HANDLE_EXCEPTION()&lt;br /&gt;
&lt;/code&gt;No.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CONT&amp;nbsp;&amp;nbsp;&amp;nbsp; BRK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Parent&lt;br /&gt;
0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 20&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 20&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; -1&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size: small;"&gt;You can see there’s a little difference – the latter has CASE/BRK opcodes, which act more or less like IS_EQUAL and JMP, but their plumbing is a bit different, but in general, code is the same (you could even argue “switch” code is a bit less optimal, but that is really the area you shouldn’t be concerned with before you can read and understand the code in zend_vm_def.h – which is not exactly a beginner stuff.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;Another thing that the author absolutely failed to mention and which should be one of the very first things anybody who cares about performance should do – is to use a bytecode cache. There are plenty of free ones (shameless plug: &lt;a href="http://www.zend.com/en/products/server/downloads-all"&gt;Zend Server CE&lt;/a&gt; includes one of them – all the performance improvements for $0 &lt;img alt=":)" class="wp-smiley" src="http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif" /&gt;  and you don’t have to change a bit of code to run it.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;Now, I understand Google is not a PHP shop like Yahoo or Facebook or many others. But this article is signed “Eric Higgins, Google Webmaster” and one would expect something much more sound from such source. And in fact there are a lot of blogs and conference talks on the topic and lots of community folks around that I am sure would be ready to help with such article – I wonder why wasn’t it done? Why apparently the best advice we can find from Google is either trivial or useless or wrong?&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;I think they can do much better, and they should if they take “making the web faster” seriously.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;P.S. After having all this written, I also found a &lt;a href="http://groups.google.com/group/make-the-web-faster/browse_thread/thread/ddfbe82dd80408cc"&gt;comment from Gwynne Raskind&lt;/a&gt;, which I advise to read too.&lt;/span&gt;&lt;br /&gt;
&lt;/div&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><author>noreply@blogger.com (Saravanan R)</author></item><item><title>PHP performance More Suggesstion</title><link>http://saravananraju.blogspot.com/2009/09/php-performance-more-suggesstion.html</link><category>benchmark</category><category>display_errors</category><category>performance</category><category>PHP</category><category>zend framework</category><pubDate>Wed, 2 Sep 2009 14:14:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-7386927231748848052.post-1737514692452574643</guid><description>&lt;div class="entry" style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;div class="snap_preview"&gt;&lt;span style="font-size: small;"&gt;After writing the post &lt;a href="http://php100.wordpress.com/2009/06/26/php-performance-google/"&gt;criticizing Google’s “performance advice”&lt;/a&gt; for PHP beginners, I started thinking – OK, I don’t like Google’s advice, what would I propose instead?&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;So here are my thoughts about what would be good for the beginner to consider when he starts with PHP performance optimizations. Note that I do not say it’s the only thing you should do – there are a bunch of articles, talks, blogs, etc. about PHP performance and many of them contain very good advice and go into much more details than I intend to go into. But I think the items below are ones that you should ensure you are doing to the full extent before you go to look around for performance tricks.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;Also, from the start I want to say that I work for &lt;a href="http://www.zend.com/"&gt;Zend Technologies&lt;/a&gt; and I participated in development of many &lt;a href="http://www.zend.com/en/products/"&gt;Zend solutions&lt;/a&gt;, both free and commercial. I am going to mention both kinds in this article, where relevant. I am aware that there are alternative solutions, but I will mention the ones I know the best. So please do not take this as commercial advertisement or any claim on relative merits of other solutions – it is not the intent. The intent is to give general direction and some examples, if somebody prefers other solutions in the same direction – that’s fine.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;&lt;b&gt;Bytecode cache&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;If you care about performance and don’t use bytecode cache then you don’t really care about performance. Please get one and start using it. If you want ready-made commercially-supported solution with nice GUI, etc., look at &lt;a href="http://www.zend.com/en/community/zend-server-ce"&gt;Zend Server&lt;/a&gt;, if you’re more into compile-it-yourself command-line then you may want to look at &lt;a href="http://php.net/apc"&gt;APC&lt;/a&gt;, or other alternatives.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;&lt;b&gt;Profiling&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;Profile you code &lt;i&gt;before&lt;/i&gt; you start optimizing it! Otherwise it would be like travelling around a foreign city with signs written in an unreadable language witout any map or GPS. You’ll probably get &lt;i&gt;somewhere&lt;/i&gt;, but you wouldn’t have any idea where you are, where you should go and how far are you from the place you need to be. Profiling would allow you to know which parts of code are worth investing into and which aren’t. You can use &lt;a href="http://www.zend.com/en/products/studio/"&gt;Zend Studio/Debugger&lt;/a&gt; or &lt;a href="http://xdebug.org/"&gt;Xdebug&lt;/a&gt; for that.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;&lt;b&gt;Caching&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;Most PHP installations run in “shared nothing” mode where as soon as the request processing ends, all the data associated with the request is gone. It has some advantages, but also one big disadvantage – you can not preserve results of repeated operations. That is, unless you use caching.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;You should look into caching all operations which take considerable time and can return the same result for a prolonged period of time or same data set. That may include configurations, database queries, service requests, complex calculations, full pages or page fragments, etc., etc. Caching expensive operations is one of the most powerful performance improvements you can do.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;There are numerous low-level caching solutions – &lt;a href="http://www.php.net/manual/en/book.memcached.php"&gt;memcached&lt;/a&gt;, APC, Zend Server (you can find a &lt;a href="http://devzone.zend.com/article/4457" title="Zend Server caching intro"&gt;good guide to it on DevZone&lt;/a&gt;) and others. On top of it, you may look into &lt;a href="http://framework.zend.com/manual/en/zend.cache.html"&gt;Zend Framework’s caching infrastructure&lt;/a&gt; – which support the backends described above and more and makes caching much easier.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;&lt;b&gt;Optimize your data&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;Usually the most expensive places of the PHP application are where it accesses external data – namely, database or filesystem or network. Look hard into optimizing that – reduce number of queries, improve database structure, reduce filesystem accesses, try to bundle data to make one service call instead of several, etc. For more advanced in-depth look, use tools like &lt;i&gt;strace &lt;/i&gt;(Unix) and &lt;i&gt;Process Explorer&lt;/i&gt; (Windows) to look into system calls your script produces and think about ways to eliminate some of&amp;nbsp; them. You would not be able to eliminate all of them but each of them is a worthy target.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;&lt;b&gt;Don’t try to outsmart the engine&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;There are a lot of “tips” floating around about which constructs in PHP are faster or slower than others. I think you can safely ignore all of these tips, especially if you’re a beginner. Odd are, 9 cases out of 10 they won’t give you any improvement at all, and in the remaining one case it will be either not applicable in your code or not worth the time spent on it. Yes, there are ways to save couple of opcodes and remove couple of lookups here and there – but unless you’ve already done with all of the previous steps it is not worth it. And some of the advice out there will actually make you code slower, less robust and less secure without you even noticing. So I think for the beginners is better to stay away from trying to outsmart the engine altogether.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;&lt;b&gt;&lt;br /&gt;
Benchmark in real life&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;Many of the advices I mentioned above have benchmarks as a proof. The problem is these benchmarks always test only a short piece of code. However, you would not be running that one-liner – you would be running the whole big application. This reminds me of a joke about a physicist that developed the model of a spherical horse in vacuum in order to use it to win bets on horse racing. If you want better chances to win than that physicist, test in real environment, not in vacuum. If you have an idea for some improvement, verify that this improvement actually improves your application, not just an artificial benchmark. If this is impossible, use profile results to estimate potential benefit – if you find a way to optimize function that summarily runs for 0.1% of overall execution time, you probably won’t do any good to the application as a whole.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;&lt;b&gt;Leverage the extensions&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;That seems too obvious, but I have seen a lot of code that duplicates functions available in some PHP extension. There are a lot of functions in PHP and if you do something that others may have done before, check in the manual. You have DOM/SimpleXML extensions for XML, JSON extension for JSON, SOAP extension for doing SOAP, etc., etc. Do not create custom serialization/deserialization if serialize()/deserialize() would work for you.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;If you have some very performance-sensitive bit of script and you can do C programming (beginner in PHP doesn’t mean beginner in everything &lt;img alt=":)" class="wp-smiley" src="http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif" /&gt; , consider even making your own extension, it’s not that hard.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;&lt;b&gt;Avoid extra notices/errors/etc.&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;Even suppressed errors have cost in PHP, so try and write your code so it would not produce notices, strict notices, warnings, etc. You may want to enable logging of all errors to examine that. Never enable displaying errors in production though – it will only lead to a major public embarrassment.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;&lt;b&gt;Use php.ini-production as a start&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;If you need a set of php.ini settings which would not hurt your performance and not break anything, look into php.ini-production in PHP source. You may need to change a couple of details (e.g. include path) but it’s a good starting point.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;&lt;b&gt;Use big realpath cache&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;Realpath cache is very useful for the engine when it tries to find the unique full name of the file from just filename or relative path. By default, it’s 16K but if you have a lot of files with long pathes, it’s better to increase the size – it would save the expensive disk accesses.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: small;"&gt;There are probably more things that could be said, but this post is pretty long already, so I will end it here and you are welcome to add your opinion in comments.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><author>noreply@blogger.com (Saravanan R)</author></item><item><title>You Become Who You Associate With!</title><link>http://saravananraju.blogspot.com/2009/08/you-become-who-you-associate-with.html</link><category>consultant</category><category>encouragement trackback</category><category>evaluation</category><category>goal</category><category>goal setting</category><category>goalspan</category><category>vibe</category><pubDate>Fri, 28 Aug 2009 11:19:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-7386927231748848052.post-3653142071657723234</guid><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiWj0EGO3je2gqfZ3nXQIg3mVDd6J4-Lj6BxHn1vXAmT3M_ZZXwOdw43qVtl_BRUEzPsMU3nx56jIFRvRv5rIPigep22A7vuHI4S6M7FwBFOkgh-SktCKsPecZjQw3F4oOCqLJPbGf5XCIQ/s1600-h/goalspan1.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 175px; height: 64px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiWj0EGO3je2gqfZ3nXQIg3mVDd6J4-Lj6BxHn1vXAmT3M_ZZXwOdw43qVtl_BRUEzPsMU3nx56jIFRvRv5rIPigep22A7vuHI4S6M7FwBFOkgh-SktCKsPecZjQw3F4oOCqLJPbGf5XCIQ/s320/goalspan1.gif" alt="" id="BLOGGER_PHOTO_ID_5374888144525632850" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style=";font-family:arial;font-size:85%;"  &gt;Someone once told me that the quality of our lives would be determined by the books we read and the people we associate with. I have found that to be very true!&lt;br /&gt;This morning, as I do every other week, I had a conference call with a group of incredible consultants. We are friends and acquantainces who come together to talk about our businesses and to encourage each other in our pursuits. There are 9 of us and I find these phonecalls to be a wonderful launchpad to my week. We set goals and hold each accountable through encouragement.&lt;br /&gt;One of our members, Jeff Hunt who has recently launched a company called GoalSpan, is someone whom I have a tremendous amount of respect. With his experience in growing and turning around companies, he has created a goal setting and evaluation software for companies and churches to use within their organizations. The brilliance in this program in comaprison to others is its simplicity combined with its fully customizable features. If you are not evaulating your employees on a regular basis, you are missing a terrific opportunity to build better VIBE in your organization. Call my friend Jeff Hunt directly at 800-350-9574 or check out his website at www.Goalspan.com. It is an amazing tool at an exceptional price that I highly recommend! Go Jeff!&lt;/span&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiWj0EGO3je2gqfZ3nXQIg3mVDd6J4-Lj6BxHn1vXAmT3M_ZZXwOdw43qVtl_BRUEzPsMU3nx56jIFRvRv5rIPigep22A7vuHI4S6M7FwBFOkgh-SktCKsPecZjQw3F4oOCqLJPbGf5XCIQ/s72-c/goalspan1.gif" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><author>noreply@blogger.com (Saravanan R)</author></item><item><title>The top 100 most dangerous websites for your PC enlisted</title><link>http://saravananraju.blogspot.com/2009/08/top-100-most-dangerous-websites-for.html</link><category>most dangerous websites</category><category>PC enlisted</category><category>virus sites</category><pubDate>Fri, 28 Aug 2009 11:14:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-7386927231748848052.post-4205303876842315579</guid><description>&lt;p class="first" style="margin-top: 0pt; font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;Melbourne, Aug 20 (ANI): Internet security company Norton Symantec has come up with a list of Top 100 Dirtiest sites, which could infect your computer with malware.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;Malware is a software that can damage or compromise a computer system without the owner's consent.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;Natalie Connor, spokeswoman of the anti-virus company, said that even visiting any of the named websites could expose a computer to infection and put the personal information into the hands of unwanted people.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;"What people don't realise is when you type in a website, you're bringing down information on a page and with it could be malware," News.com.au quoted her as saying.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;The list was compiled with the help of global data collected on Norton Safe Web, a site that analysed websites' security risks.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;The infected sites had on average 18,000 threats and 40 per cent of the sites had more than 20,000 threats, while 75 per cent of websites on the list were found to be spreading malware for over six months.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;According to Connor, most websites in the list had adult content with unprintable names, suggesting they contained hardcore pornography.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;Some others sites include those on ice skating, deer hunting, catering and legal services.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;Hackers can apparently obtain personal information using keystroke-logging software from both PCs and Mac computers.he reps said that hackers are a force to reckon with as cyber crime is increasing rapidly.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;She added: "The last thing we want to do is scare people, we want to educate them so they know how to protect themselves.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;"It's not about the fame any more of creating viruses and getting in the media. They're making money."&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;Norton released a sample of the dirtiest websites:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;17ebook.com&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;aladel.net&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;bpwhamburgorchardpark.org&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;clicnews.com&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;dfwdiesel.net&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;divineenterprises.net&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;fantasticfilms.ru&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;gardensrestaurantandcatering.com&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;ginedis.com&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;gncr.org&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;hdvideoforums.org&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;hihanin.com&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;kingfamilyphotoalbum.com&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;likaraoke.com&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;mactep.org&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;magic4you.nu&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;marbling.pe.kr&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;nacjalneg.info&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;pronline.ru&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;purplehoodie.com&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;qsng.cn&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;seksburada.net&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;sportsmansclub.net&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;stock888.cn&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;tathli.com&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;teamclouds.com&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;texaswhitetailfever.com&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;wadefamilytree.org&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:85%;"&gt;xnescat.info&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: arial;"&gt;yt118.com&lt;/span&gt;&lt;/span&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><author>noreply@blogger.com (Saravanan R)</author></item><item><title>Social networking sites leak personal information to tracking sites</title><link>http://saravananraju.blogspot.com/2009/08/social-networking-sites-leak-personal.html</link><category>leak personal information</category><category>Social networking</category><category>tracking sites</category><pubDate>Fri, 28 Aug 2009 11:12:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-7386927231748848052.post-3182017447792754780</guid><description>&lt;p class="first"  style="margin-top: 0pt;font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;Washington, Aug 25 (ANI): Popular social networking websites' users could be leaking their personal information to tracking sites, warn researchers at Worcester Polytechnic Institute (WPI).&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;They have found that the practices of many popular social networking sites typically make that personal information available to companies that track Web users' browsing habits, and allow them to link anonymous browsing habits to specific people.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;"When you sign up with a social networking site, you are assigned a unique identifier," said Craig Wills, professor of computer science at WPI, who conducted the study with an industry colleague.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;&lt;b&gt;&lt;a href="http://in.news.yahoo.com/20/20090822/365/twl-uk-teen-first-to-be-convicted-for-fa.html"&gt;UK teen first to be convicted for Facebook bullying&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;&lt;b&gt;&lt;a href="http://in.news.yahoo.com/139/20090825/959/tod-girl-finds-her-15-brothers-and-siste.html"&gt;Girl finds her 15 brothers and sisters on Facebook!&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;"This is a string of numbers or characters that points to your profile. We found that when social networking sites pass information to tracking sites about your activities, they often include this unique identifier.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;"So now a tracking site not only has a profile of your Web browsing activities, it can link that profile to the personal information you post on the social networking site. Now your browsing profile is not just of somebody, it is of you," he added.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;Like most commercial websites, online social networks use third-party tracking sites, called aggregators, to learn about the browsing habits of their visitors.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;Cookies are maintained by a Web browser, and contain information that enable tracking sites to build profiles of the websites visited by a user.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;Each time the user visits a new website, the tracking site can review those cookies and serve up ads that might appeal to the user.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;With a unique identifier, a tracking site could gain access to a user's name, physical address, email address, gender, birth date, educational and employment information and much more.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;With the "leakage" of this type personal information, there is a significant risk of having one's identity linked to an inaccurate or misleading browsing profile.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;When a computer is used by more than one person, or a person browses for curiosity rather than intent, it leaves room for misinterpretation, he notes.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;"Tracking sites don't have the ability to know if, for example, a site about cancer was visited out of curiosity, or because the user actually has cancer. Profiling is worrisome on its own, but inaccurate profiling could potentially lead to issues with employment, health care coverage, or other areas of our personal lives," Wills added.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:arial;"&gt;The study was presented in Barcelona at the Workshop on Online Social Networks.&lt;/span&gt;&lt;/span&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><author>noreply@blogger.com (Saravanan R)</author></item><item><title>Facebookers, Twitterers more prone to attack by burglars</title><link>http://saravananraju.blogspot.com/2009/08/facebookers-twitterers-more-prone-to.html</link><category>attack</category><category>facebook</category><category>twitter</category><pubDate>Fri, 28 Aug 2009 11:09:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-7386927231748848052.post-6677781726937684021</guid><description>&lt;p class="first"  style="margin-top: 0pt;font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;London, Aug 27 (ANI): People who use social networking sites such as Facebook and Twitter are more prone to getting robbed, as burglars might be stealing their personal details from such websites, says a research.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;The research said that these sites could face higher insurance premiums because burglars may be using them to find out their personal details.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;According to insurers Legal and General, millions of users post details about their home, as well as holiday plans, acting as an invitation to the burglars.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;The report, called The Digital Criminal, commissioned by Legal and General, and prepared by Michael Fraser, the star of BBC's Beat The Burglar, was recently launched.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;It polled 2,000 social network users and found that almost two fifths had posted details of their holiday plans, with nearly two thirds of 16-24 year-olds doing so.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;"There is absolutely no doubt in my mind that burglars are using social networks to identify likely targets," the Telegraph quoted Fraser, a reformed thief, as saying.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;"They gain confidence by learning more about them, what they are likely to own and when they are likely to be out of the house.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;"I call it 'internet shopping for burglars'. It is incredibly easy to use social neyworking sites to target people, and then scope out more information on their actual home using other internet sites like Google Street View, all from the comfort of the sofa," he added.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;Graham Cluley, from web security firm Sophos, said it was "staggering" what information people were putting online.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;"Our research shows that 41 per cent of people are divulging personal and private information to complete strangers on Facebook, such as their date of birth, where they worked, where they lived and what they were doing," he said. "People are boasting about how they are having a fantastic time on a beach in Mexico on a webpage that has their home address.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;"Criminals who put together the jigsaw can use it for identity theft or burglary. It is just as dangerous as leaving your windows or doors open at home," he said.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;Also, they found that almost fifty percent users were unconcerned about social networking security.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;In an experiment, 100 friend requests were issued to random stranger. Nine out of 10 Twitter users accepted the stranger as a friend, with more than one in 10 Facebook users.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;However, privacy groups have said that insurance companies will simply use social networking sites to increase premiums.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;Malcolm Cooper, director of pricing and underwriting at Legal and General, said: "It's a challenging one for the insurance industry. Just because someone is burgled, you can't prove that it's down to details posted on Facebook. It could be that we start asking how many youngsters are in the home for example." (ANI)&lt;/span&gt;&lt;/p&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><author>noreply@blogger.com (Saravanan R)</author></item><item><title>E-mail hacked, complains IIT professor</title><link>http://saravananraju.blogspot.com/2009/08/e-mail-hacked-complains-iit-professor.html</link><category>email</category><category>hacking</category><pubDate>Fri, 28 Aug 2009 11:08:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-7386927231748848052.post-3749811194260049608</guid><description>&lt;p class="first"  style="margin-top: 0pt;font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;Lucknow, Aug 26 (IANS) A senior professor at Indian Institute of Technology (IIT) Roorkee has lodged a complaint in Uttar Pradesh that his personal e-mail account was hacked, police said Wednesday.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;M.C Bansal, who teaches in department of paper technology at IIT Roorkee's campus in Saharanpur, met senior police officials Tuesday evening and lodged the complaint.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;'The e-mail issued by the hacker, purportedly on behalf of the professor, requests receivers of the mail for financial assistance,' district police chief Amit Chandra told IANS over telephone.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;'We have constituted teams to probe the case. We are also consulting IT experts to know from where the mail was sent after hacking the professor's e-mail account,' he added.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;According to police, the hacker claims the sender of the mail had to be hospitalised in Nigeria after he met with an accident. The mail requests receivers for financial assistance.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;Bansal came to know about the hacking only after his friends and relatives started calling him up Tuesday after reading the mail.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;'I used to change the password of my account frequently. I am surprised and shocked by the incident. I am afraid of the misuse of my mail account,' Bansal told reporters in Saharanpur, some 400 km from Lucknow.&lt;/span&gt;&lt;/p&gt;&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;The branch of IIT, Roorkee in Saharanpur offers three courses: B.Tech paper technology, M.Tech polymer science and B.Tech process engineering.&lt;/span&gt;&lt;/p&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><author>noreply@blogger.com (Saravanan R)</author></item><item><title>Flickr tops TIME's list of Best 50 Websites of 2009</title><link>http://saravananraju.blogspot.com/2009/08/flickr-tops-times-list-of-best-50.html</link><pubDate>Fri, 28 Aug 2009 11:06:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-7386927231748848052.post-5082748171655119185</guid><description>&lt;p class="first"  style="margin-top: 0pt; color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;Washington, Aug 27 (ANI): The hottest thing on the Internet is not social networking websites like Facebook and Twitter, but Flickr-the popular photo-sharing portal - and the proof is: it has topped TIME's list of the best 50 websites this year.&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;One of the noticeable trends in this year's list, which was released this week, was on-demand video services, like YouTube, Vimeo and US services Hulu and Netflix.&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;However, the top two in the list were related to photographs, with California Coastline following Flickr at the second spot.&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;Third in the list was bookmark website Delicious, while community weblog Metafilter stood at the fourth place.&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;Popurls, the mashup of the web's most visited social news sites and portals, grabbed the fifth spot in the list.&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;Twitter ranked sixth and Facebook came 31st in the list, while YouTube and Hulu came at 12th and 14th place in the list.&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;TIME's list of 50 Best Websites of 2009 is:. Flickr&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;2. California Coastline&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;3. Delicious&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;4. Metafilter&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;5. popurls&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;6. Twitter&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;7. Skype&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;8. Boing Boing&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;9. Academic Earth&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;10. OpenTable&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;11. Google&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;12. YouTube&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;13. Wolfram|Alpha&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;14. Hulu&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;15. Vimeo&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;16. Fora TV&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;17. Craiglook&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;18. Shop Goodwill&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;19. Amazon&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;20. Kayak&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;21. Netflix&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;22. Etsy&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;23. PropertyShark.com&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;24. Redfin&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;25. Wikipedia&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;26. Internet Archive&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;27. Kiva&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;28. ConsumerSearch&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;29. Metacritic&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;30. Pollster&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;31. Facebook&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;32. Pandora and Last.fm&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;33. Musicovery&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;34. Spotify&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;35. Supercook&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;36. Yelp&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;37. Visuwords&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;38. CouchSurfing&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;39. BabyNameWizard.com's NameVoyager&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;40. Mint&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;41. TripIt&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;42. Aardvark&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;43. drop.io&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;44. Issuu&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;45. Photosynth&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;46. OMGPOP&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;47. WorldWideTelescope&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;48. Fonolo&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;49. Get High Now&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: rgb(51, 51, 51);font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;50. Know Your Meme (ANI)&lt;/span&gt;&lt;/p&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><author>noreply@blogger.com (Saravanan R)</author></item><item><title>New Service Announcement — Expedited Emergency Website Restoration Services.</title><link>http://saravananraju.blogspot.com/2009/07/new-service-announcement-expedited.html</link><pubDate>Tue, 21 Jul 2009 10:59:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-7386927231748848052.post-1788542808824910100</guid><description>As website hacking has become rampant on the internet, 911websiterepair created this premium expedited service to restore and repair crashed websites immediately. There is nothing worse for a website owner than to have his site down due to programmatic issues or worse yet, a hacking. Down time not only results in monetary losses, but can affect short term search engine ranking and site traffic. Where other companies need to provide a quote, 911websiterepair offers the premium service for a flat fee, thus reducing the time it takes to get the customers sites restored and back online. &lt;p class="MsoNormal"&gt; &lt;/p&gt;&lt;blockquote&gt; &lt;p class="MsoNormal"&gt;We have all heard clients say “Fix my crashed website now!“ 911websiterepair.com will “Drop Everything” and restore a website on an expedited emergency basis, but this service does have a cost differential, justified by the needs of your emergency to have the work performed immediately.&lt;/p&gt; &lt;/blockquote&gt; &lt;p class="MsoNormal"&gt; &lt;/p&gt;&lt;p class="MsoNormal"&gt;Recent customer, Brian Smith of North   Haven Ct. referred to the Restore-My-Site service as the “I NEED IT NOW” service&lt;strong&gt;. &lt;/strong&gt;Brian stated, “The cost of the service easily outweighed the cost of the site being unavailable. As a “do-it-yourself” webmaster with limited skills, the 911 Restore-My-Site service saved me time and money!”&lt;/p&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><author>noreply@blogger.com (Saravanan R)</author></item><item><title>Google Chrome 2 is 20% faster than Chrome 1 in physical speed tests</title><link>http://saravananraju.blogspot.com/2009/07/google-chrome-2-is-20-faster-than.html</link><pubDate>Tue, 21 Jul 2009 10:54:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-7386927231748848052.post-1086577171398206690</guid><description>&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:100%;"&gt;Yesterday, &lt;a title="Google's '30% faster' Chrome is just the 2.0 beta released as RTM" href="http://www.betanews.com/article/Googles-30-faster-Chrome-is-just-the-20-beta-released-as-RTM/1242943019"&gt;Google traded development track 1&lt;/a&gt; of its Chrome Web browser for track 2, making the latter effectively the “stable” edition of the browser, even though it’s still officially under development and not yet feature-complete. Many users of version 1 found themselves automatically upgraded to version 2, and may very well have noticed a subsequent speed increase from the JavaScript interpreter.In a blog post yesterday, Google said that speed increase would be about 30%. But is that an accurate assessment, especially given that Google’s V8 JavaScript benchmark was devised by Google to test its V8 JavaScript interpreter?&lt;/span&gt;&lt;/p&gt; &lt;p style="font-family: arial;"&gt;&lt;span style="font-size:100%;"&gt;On Betanews’ new physical test platform for Windows-based Web browsers and operating systems, whose construction was completed Friday, our latest tests show that Chrome 2.0.177.1 was 20.4% faster than Chrome 1.0.154.65, in independent benchmarks other than V8 related specifically to speed. Our adjusted performance score for Chrome 2 on our new platform was 21.4% better than Chrome 1, relative to the performance of Microsoft Internet Explorer 7 on the same system.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-family: arial;"&gt;&lt;span style="font-size:100%;"&gt;For the past few months, we’d been testing Web browser performance on easy-to-manage virtual machines. Our move to a physical platform did change our index numbers with respect to Windows Vista, but it changed them fairly proportionately to one another.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-family: arial;"&gt;&lt;span style="font-size:100%;"&gt;Microsoft Internet Explorer 7 ran a little faster in Windows Vista than the IE7 we measured on a virtual system. That should be no surprise to anybody. Naturally, nothing is slower than IE7, which is why we still use it as our index system. But as we verified by repeating the test circumstances from scratch, IE7’s speed did jump more than the other browsers in our test.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-family: arial;"&gt;&lt;span style="font-size:100%;"&gt;But not by much. While our initial performance index score for Internet Explorer 8 showed it easily doubling IE7 with room to spare, our reset score was still double that of IE7, with about 215% the speed of its predecessor. IE8’s physical index score is &lt;strong&gt;2.03&lt;/strong&gt;, reflecting a much better SunSpider score for IE7 on the physical platform — its string processing score is especially higher.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-family: arial;"&gt;&lt;span style="font-size:100%;"&gt;All the other browsers in our test are, as we said, proportionately lower, but with variations less-than-slight enough to justify our having moved our test bed to a physical platform. In our latest tests, Apple’s Safari 4 beta registered a score of &lt;strong&gt;14.12&lt;/strong&gt; — meaning Apple’s latest browser performs over 14 times better than Microsoft’s earlier browser. Divide that score by 2.03, and you’ll see how much better performer Safari 4 is than IE8.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgA91YqtBH7vSetFVgX_fMn2R1918DIymVb-gO2ElbSs2OhmTVKDdjCT6dUgSwa0iWiwonJYAQ0Y5WdbC48BAOpJ9fcaYBR4wSlXHHt_HQ9q67GAkbiKEbqMOQ915veCxWVKU7uIlgW275a/s1600-h/3312.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 218px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgA91YqtBH7vSetFVgX_fMn2R1918DIymVb-gO2ElbSs2OhmTVKDdjCT6dUgSwa0iWiwonJYAQ0Y5WdbC48BAOpJ9fcaYBR4wSlXHHt_HQ9q67GAkbiKEbqMOQ915veCxWVKU7uIlgW275a/s320/3312.jpg" alt="" id="BLOGGER_PHOTO_ID_5360780835655562722" border="0" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: arial;"&gt;&lt;span style="font-size:100%;"&gt;Google is following close behind in the race for browser performance, with an index score of &lt;strong&gt;12.23&lt;/strong&gt;. Let’s break that score down a bit: Version 2 scored a &lt;strong&gt;3.28&lt;/strong&gt; against IE7 in the HowToCreate.co.uk CSS rendering test, with the JavaScript timer adjusted to compensate for browsers (especially Safari) that fire the &lt;strong&gt;onLoad&lt;/strong&gt; event differently. That’s a test that loads a page and then renders a cavalcade of successive blocks of CSS. Since the scores for those renderings vary from the very first one down the line, we take that test five times and average their times together. Chrome 1 scored a &lt;strong&gt;2.83&lt;/strong&gt; in that test, with IE8 scoring &lt;strong&gt;1.99&lt;/strong&gt; and the Safari 4 beta a stunning &lt;strong&gt;5.98&lt;/strong&gt;. Even after compensating for what some call an anomaly and others a “cheat,” Safari 4’s score remains outstanding.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-family: arial;"&gt;&lt;span style="font-size:100%;"&gt;Chrome 2’s Celtic Kane basic JavaScript score remains high at &lt;strong&gt;4.83&lt;/strong&gt;, but Safari 4’s score here remains incredible at &lt;strong&gt;7.68&lt;/strong&gt;. Where Chrome’s performance pulls up closest to Safari’s is in the SunSpider test — a &lt;strong&gt;32.48&lt;/strong&gt; versus a &lt;strong&gt;34.50&lt;/strong&gt;. The big reason for these huge scores has to do with string processing — how long it takes to process text in memory. IE7 is notoriously slow at this, but IE8’s score in string processing of &lt;strong&gt;12.74&lt;/strong&gt; indicates that IE8 is almost 13 times faster than its predecessor at handling text.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-family: arial;"&gt;&lt;span style="font-size:100%;"&gt;After restarting our test matrix fresh on a physical Vista platform, we’re adjusting the scores for Firefox browsers to account for the faster IE7. But our latest battery of tests still verify that of Mozilla’s three development browsers, the one the public’s testing right now — Firefox 3.5 Beta 4 — remains the fastest. We’ve noted the “Beta 5″ designation has recently been removed from the 3.5 Beta 5 “Shiretoko” track, indicating a likely move to Release Candidate status. But while Beta 4 posted a revised index score of &lt;strong&gt;8.49&lt;/strong&gt;, the latest daily build of the private tests of 3.5 posted a &lt;strong&gt;7.47&lt;/strong&gt;&lt;strong&gt;7.25&lt;/strong&gt;.&lt;/span&gt; — a score we verified by repeating the circumstances. And the latest daily build of Firefox 3.6 Alpha 1 “Minefield” followed behind at &lt;/p&gt; &lt;p style="font-family: arial;"&gt;&lt;span style="font-size:100%;"&gt;We’ll be following the suddenly resurgent arena of competitive Web browser development on our physical platform from now on. Our machine uses a Gigabyte GA-965P-DS3 motherboard with an Intel 965 chipset, running a 2.40 GHz Intel Core 2 Quad Q6600 processor with 3 GB of DDR2 DRAM. Our display adapter is an Nvidia GeForce 8600 GTS, and our physical Vista platform is running an Nvidia brand driver.&lt;/span&gt;&lt;/p&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgA91YqtBH7vSetFVgX_fMn2R1918DIymVb-gO2ElbSs2OhmTVKDdjCT6dUgSwa0iWiwonJYAQ0Y5WdbC48BAOpJ9fcaYBR4wSlXHHt_HQ9q67GAkbiKEbqMOQ915veCxWVKU7uIlgW275a/s72-c/3312.jpg" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><author>noreply@blogger.com (Saravanan R)</author></item><item><title>About Vetri Vinayaha College of Engineering</title><link>http://saravananraju.blogspot.com/2009/07/about-vetri-vinayaha-college-of.html</link><category>engineering college</category><category>polytechnic</category><category>saravanan</category><category>saravananraju</category><category>vetri</category><category>vetri vinayaha</category><pubDate>Wed, 15 Jul 2009 17:07:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-7386927231748848052.post-1075174292814084572</guid><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjh-sjHP5NMeeuTq5a0N8Z9TPy57AVXcE0Cn-N6qBJx7Di86nBUnp1j-62LRi8A0f-jD90gAjLfBQ5cAwmVFKqSUz1bDy060aJ8-avlOrTGP7FeyNwcVOKx6-ZY9APb_V-mmBcW70EU6_Kz/s1600-h/me_orig.jpeg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 119px; height: 119px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjh-sjHP5NMeeuTq5a0N8Z9TPy57AVXcE0Cn-N6qBJx7Di86nBUnp1j-62LRi8A0f-jD90gAjLfBQ5cAwmVFKqSUz1bDy060aJ8-avlOrTGP7FeyNwcVOKx6-ZY9APb_V-mmBcW70EU6_Kz/s320/me_orig.jpeg" alt="" id="BLOGGER_PHOTO_ID_5360850462138926898" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="line-height: 15px;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;span class="Apple-style-span" style="color: rgb(51, 51, 51);"&gt;In VETRI VINAYAHA INSTITUTIONS, we channel all our efforts to generate a sense of national pride, self respect and concentrate in promoting integrated personalities of the future generation with ceaseless efforts to improve efficiency of imparting qualitative education to our future citizens. We stand as symbols of social, cultural and moral values.Vetri Vinayaha Institutions impressive infrastructure backed by the most contemporary lab equipped with highly sophisticated equipments are testimony to its uniqueness.It is our constant endeavor to bring to this institution, the best in technology and infrastructure, as we progress towards accomplishing our vision of being a center of excellence.&lt;br /&gt;&lt;br /&gt;VETRI VINAYAHA INSTITUTIONS has the primary goal of moulding the Students not only mere an engineer but as Value Based Engineer. It has been always with the support of parents, well wishers and by the Blessings of Almighty.&lt;br /&gt;&lt;br /&gt;The Polytechnic offers following courses:&lt;br /&gt;&lt;br /&gt;1) Computer Technology&lt;br /&gt;&lt;br /&gt;2) Electrical and Electronics&lt;br /&gt;&lt;br /&gt;3) Electronics and Communication&lt;br /&gt;&lt;br /&gt;4) Mechanical Engineering&lt;br /&gt;&lt;br /&gt;5) Civil Engineering&lt;br /&gt;&lt;br /&gt;6) Automobile Engineering&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The Engineering College offers following courses:&lt;br /&gt;&lt;br /&gt;1) Computer Science and Engineering&lt;br /&gt;&lt;br /&gt;2) Electronics and Communication Engineering&lt;br /&gt;&lt;br /&gt;3) Mechanical Engineering&lt;br /&gt;&lt;br /&gt;4) Civil Engineering&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Contact Us&lt;/b&gt;:&lt;br /&gt;Vetri Vinayaha Institutions,&lt;br /&gt;Tholurpatti Village,&lt;br /&gt;Thottiyam - TK,&lt;br /&gt;Trichy - 621215.&lt;br /&gt;PH: 04326 - 277444, 277554&lt;br /&gt;Email: vetrivinayaha@yahoo.co.in or vetrivinayaha@gmail.com&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjh-sjHP5NMeeuTq5a0N8Z9TPy57AVXcE0Cn-N6qBJx7Di86nBUnp1j-62LRi8A0f-jD90gAjLfBQ5cAwmVFKqSUz1bDy060aJ8-avlOrTGP7FeyNwcVOKx6-ZY9APb_V-mmBcW70EU6_Kz/s72-c/me_orig.jpeg" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><author>noreply@blogger.com (Saravanan R)</author></item><item><title>Admission Openning for B.E course in Vetri Vinayaha College of Engineering</title><link>http://saravananraju.blogspot.com/2009/07/admission-openning-for-be-course-in.html</link><category>engineering college</category><category>polytechnic</category><category>saravanan</category><category>saravananraju</category><category>vetri</category><category>vetri vinayaha</category><pubDate>Wed, 15 Jul 2009 13:07:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-7386927231748848052.post-8867888025854765616</guid><description>&lt;span class="Apple-style-span" style="  line-height: 16px; "&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span"  style="color:#333333;"&gt;Vetri Vinayaka College of Engineering &amp;amp; Technology at namakkal, affiliated to Anna University opens admission for B.E Mechanical Engineering / Civil Engineering / Electronics &amp;amp; Communication / Computer Science for the Academic year 2009/2010. Loan facilities and scholarships provided.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" line-height: 16px;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span"  style="color:#333333;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"    style="font-family:Verdana;font-size:100%;color:#333333;"&gt;&lt;span class="Apple-style-span"  style=" line-height: 16px;font-size:12px;"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); line-height: normal; "&gt;&lt;div class="snap_preview" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span"  style="color:#333333;"&gt;In VETRI VINAYAHA INSTITUTIONS, we channel all our efforts to generate a sense of national pride, self respect and concentrate in promoting integrated personalities of the future generation with ceaseless efforts to improve efficiency of imparting qualitative education to our future citizens. We stand as symbols of social, cultural and moral values.Vetri Vinayaha Institutions impressive infrastructure backed by the most contemporary lab equipped with highly sophisticated equipments are testimony to its uniqueness.It is our constant endeavor to bring to this institution, the best in technology and infrastructure, as we progress towards accomplishing our vision of being a center of excellence.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="snap_preview" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 5px; padding-right: 0px; padding-bottom: 5px; padding-left: 0px; font: normal normal normal 12px/17px Verdana; "&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span"  style="color:#333333;"&gt;VETRI VINAYAHA INSTITUTIONS has the primary goal of moulding the Students not only mere an engineer but as Value Based Engineer. It has been always with the support of parents, well wishers and by the Blessings of Almighty.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 5px; padding-right: 0px; padding-bottom: 5px; padding-left: 0px; font: normal normal normal 12px/17px Verdana; "&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span"  style="color:#333333;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 5px; padding-right: 0px; padding-bottom: 5px; padding-left: 0px; font: normal normal normal 12px/17px Verdana; "&gt;&lt;span class="Apple-style-span"&gt;&lt;strong style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span"  style="color:#333333;"&gt;Contact Us:&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span"  style="color:#333333;"&gt;&lt;br /&gt;Vetri Vinayaha Institutions&lt;br /&gt;Tholurpatti Village&lt;br /&gt;Thottiyam – TK&lt;br /&gt;Trichy – 621215.&lt;br /&gt;PH: 04326 – 277444, 277554&lt;br /&gt;Email: vetrivinayaha@yahoo.co.in or vetrivinayaha@gmail.com&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><author>noreply@blogger.com (Saravanan R)</author></item><item><title>My Blog</title><link>http://saravananraju.blogspot.com/2009/06/my-blog.html</link><pubDate>Mon, 15 Jun 2009 19:38:00 +0530</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-7386927231748848052.post-7027328266819876986</guid><description>http://desivic.blogspot.com/</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><author>noreply@blogger.com (Saravanan R)</author></item></channel></rss>