What is the sandbox?

July 24th, 2008

The sandbox is a kind of filter implemented by Google in March 2004 that applies to maybe 99% of all new sites.

It’s function is to push down new web sites in the SERPs.

My theory is that it was Google’s solution to stop new spam sites that was created to rank high in the SERPs. It took probably some time before the Google spiders could detect such as a site and ban/penalize it and by that time the creater probably made several new ones.

When this phenomena was first noticed in March 2004 it was seen that it could take two months before a new site was “released” and could rank normally again. However by now October 2005, a time of half a year or more is normal and as long as more then a year has been reported.

By my own observations I have seen in Google that new sites can rank unusually high in the Google SERPs for some weeks before the sandbox filter gets activated.

Posted by

What is SEO?

July 24th, 2008

SEO stands for Search Engine Optimization and is defined as (in my own words):

“The process of finding out the best keywords for a web site and by the use of optimizing the web site along with other off-page work making that web site attain a higher position in the search engine result pages (SERPs) for those selected words.”

Although the exact calculations used by the search engines are kept secret, there is lot of knowledge and observations in this field from thousands of webmasters worldwide.

It could be said to be a branch of online marketing. In general terms you can say that it means to make a web site more visible and make it look important in the eyes of search engines.

Not being familiar with SEO and not applying it compared to actually doing the right things can make a huge difference in terms of visitors to your web site.

Posted by

What is relative vs absolute links?

July 24th, 2008

When designing a site, you will always face the question of whether you should use relative or absolute links. Later in this answer I will explain the benefits of each but first here is a definition:

Relative: Relative links usually look something like index.html or /folder/page.html. The way the page knows where to go is all relative to the page the link is placed on. A link to index.html for example, will only work if the file is found in the current folder.

Absolute: Absolute links usually look something like http://www.example.com/page.html. This is a full url and the linked to page will be found regardless of where that link is located on the site.

Which you use depends on the following:

Speed: When your browser goes to find a page with a relative url it looks within the existing site. When it uses an absolute url it leaves the site for an instant and “refinds” the page. This means when it comes to speed, relative is the way to go.

Ease of Design: When you are designing a site using notepad, the danger with relative urls is that if you move a folder, it can break your entire site. As each page depends on another, if you are not a find and replace whiz, absolute may be your best bet.

SEO: This is the one area that I would place firmly in “Theory or Assumption”. The truth is that we know broken links can hurt you so the most important is to choose a technique of linking that works best for your site. One of the better case for Absolute Links can be seen here

Posted by

Search engine optimization-Become a foreigner

July 18th, 2008

Canada and the UK have many directories for websites of companies based in those countries. Can you get a business address in one of those countries?

Posted by

Deep linking

July 18th, 2008

Make sure you have links coming in to as many pages as possible. What does it tell a search engine when other web sites are linking to different pages on your site? That you obviously have lots of worthwhile content. What does it tell a search engine that all your links are coming in to the home page? That you have a shallow site of little value, or that your links were generated by automation rather than by the value of your site. Here is an example of deep linking, in this case to my personal happiness workbook.

Posted by

Tips for optimizing your php code

July 18th, 2008

# If a method can be static, declare it static. Speed improvement is by a factor of 4.

# echo is faster than print.

# Use echo’s multiple parameters instead of string concatenation.

# Set the maxvalue for your for-loops before and not in the loop.

# Unset your variables to free memory, especially large arrays.

# Avoid magic like __get, __set, __autoload

# require_once() is expensive

# Use full paths in includes and requires, less time spent on resolving the OS paths.

# If you need to find out the time when the script started executing, $_SERVER[’REQUEST_TIME’] is preferred to time()

# See if you can use strncasecmp, strpbrk and stripos instead of regex

# str_replace is faster than preg_replace, but strtr is faster than str_replace by a factor of 4

# If the function, such as string replacement function, accepts both arrays and single characters as arguments, and if your argument list is not too long, consider writing a few redundant replacement statements, passing one character at a time, instead of one line of code that accepts arrays as search and replace arguments.

# It’s better to use switch statements than multi if, else if, statements.

# Error suppression with @ is very slow.

# Turn on apache’s mod_deflate

# Close your database connections when you’re done with them

# $row[’id’] is 7 times faster than $row[id]

# Error messages are expensive

# Do not use functions inside of for loop, such as for ($x=0; $x < count($array); $x) The count() function gets called each time.

# Incrementing a local variable in a method is the fastest. Nearly the same as calling a local variable in a function.

# Incrementing a global variable is 2 times slow than a local var.

# Incrementing an object property (eg. $this->prop++) is 3 times slower than a local variable.

# Incrementing an undefined local variable is 9-10 times slower than a pre-initialized one.

# Just declaring a global variable without using it in a function also slows things down (by about the same amount as incrementing a local var). PHP probably does a check to see if the global exists.

# Method invocation appears to be independent of the number of methods defined in the class because I added 10 more methods to the test class (before and after the test method) with no change in performance.

# Methods in derived classes run faster than ones defined in the base class.

# A function call with one parameter and an empty function body takes about the same time as doing 7-8 $localvar++ operations. A similar method call is of course about 15 $localvar++ operations.

# Surrounding your string by ‘ instead of ” will make things interpret a little faster since php looks for variables inside “…” but not inside ‘…’. Of course you can only do this when you don’t need to have variables in the string.

# When echoing strings it’s faster to separate them by comma instead of dot. Note: This only works with echo, which is a function that can take several strings as arguments.

# A PHP script will be served at least 2-10 times slower than a static HTML page by Apache. Try to use more static HTML pages and fewer scripts.

# Your PHP scripts are recompiled every time unless the scripts are cached. Install a PHP caching product to typically increase performance by 25-100% by removing compile times.

# Cache as much as possible. Use memcached - memcached is a high-performance memory object caching system intended to speed up dynamic web applications by alleviating database load. OP code caches are useful so that your script does not have to be compiled on every request

# When working with strings and you need to check that the string is either of a certain length you’d understandably would want to use the strlen() function. This function is pretty quick since it’s operation does not perform any calculation but merely return the already known length of a string available in the zval structure (internal C struct used to store variables in PHP). However because strlen() is a function it is still somewhat slow because the function call requires several operations such as lowercase & hashtable lookup followed by the execution of said function. In some instance you can improve the speed of your code by using an isset() trick.

Ex.

if (strlen($foo) < 5) { echo “Foo is too short”; }

vs.

if (!isset($foo{5})) { echo “Foo is too short”; }

Calling isset() happens to be faster then strlen() because unlike strlen(), isset() is a language construct and not a function meaning that it’s execution does not require function lookups and lowercase. This means you have virtually no overhead on top of the actual code that determines the string’s length.

# When incrementing or decrementing the value of the variable $i++ happens to be a tad slower then ++$i. This is something PHP specific and does not apply to other languages, so don’t go modifying your C or Java code thinking it’ll suddenly become faster, it won’t. ++$i happens to be faster in PHP because instead of 4 opcodes used for $i++ you only need 3. Post incrementation actually causes in the creation of a temporary var that is then incremented. While pre-incrementation increases the original value directly. This is one of the optimization that opcode optimized like Zend’s PHP optimizer. It is a still a good idea to keep in mind since not all opcode optimizers perform this optimization and there are plenty of ISPs and servers running without an opcode optimizer.

# Not everything has to be OOP, often it is too much overhead, each method and object call consumes a lot of memory.

# Do not implement every data structure as a class, arrays are useful, too

# Don’t split methods too much, think, which code you will really re-use

# You can always split the code of a method later, when needed

# Make use of the countless predefined functions

# If you have very time consuming functions in your code, consider writing them as C extensions

# Profile your code. A profiler shows you, which parts of your code consumes how many time. The Xdebug debugger already contains a profiler. Profiling shows you the bottlenecks in overview

# mod_gzip which is available as an Apache module compresses your data on the fly and can reduce the data to transfer up to 80%

Posted by

Microsoft backs Icahn’s bid to oust Yahoo board

July 14th, 2008

Tue Jul 8

SAN FRANCISCO - Microsoft Corp. threw its weight behind investor Carl Icahn’s effort to dump Yahoo Inc.’s board, saying Monday that a successful shareholder rebellion would encourage the software maker to renew its bid to buy Yahoo’s Internet search engine or possibly the entire company.
ADVERTISEMENT

The unexpected endorsement gives Icahn a carrot to dangle before Yahoo shareholders as he wages an acrimonious campaign to replace Yahoo’s nine directors at the company’s annual meeting Aug. 1.

It marks the first time that Microsoft has publicly sided with Icahn since the billionaire investor launched his attempted coup nearly eight weeks ago.

The two sides decided they could work together after Icahn held “frequent” discussions with Microsoft Chief Executive Steve Ballmer and some of his top lieutenants during the past week, according to a letter that Icahn sent Monday to Yahoo shareholders.

Industry analysts said Icahn now has more credibility with Yahoo shareholders because he has been arguing that a purge of Yahoo’s board is the only way to salvage a deal with Microsoft.

“This breathes new life into Icahn’s proposal,” said Stanford Group analyst Clayton Moran. “It really pushes the power to Icahn and his board (nominees).”

The prospect that a changing of the guard at Yahoo might pave the way to a friendly deal with Microsoft lifted Yahoo shares $2.56, or 12 percent, to finish Monday at $23.91.

Echoing previous remarks in its battle with Icahn, Yahoo questioned Microsoft’s interest in buying the entire company.

“If Microsoft and Mr. Ballmer really want to purchase Yahoo, we again invite them to make a proposal immediately,” Yahoo said.

But Icahn said Microsoft doesn’t want to risk making a bid under Yahoo’s current regime, because the software maker fears Yahoo’s management would make more poor decisions during an antitrust review that would take at least nine months.

“If the current board and management team of Yahoo mismanage the company (and their recent track record is far from reassuring), Microsoft would be putting its money at risk and a great deal could be lost,” Icahn wrote in his letter to shareholders.

Microsoft’s willingness to work with Icahn undermines one of Yahoo’s chief arguments for re-electing its board.

Yahoo has maintained that it would be foolhardy to back Icahn’s slate of alternate nominees because Icahn had no concrete ideas besides selling the company to Microsoft — something that Yahoo has been depicting as a pipe dream since Microsoft withdrew a $47.5 billion offer in early May.

Microsoft reinforced that perception by refusing to revive its bid last month even after Yahoo’s board signaled its willingness to accept the earlier offer.

With Microsoft in Icahn’s corner, “the dynamic has changed,” Sanford C. Bernstein & Co. analyst Jeffrey Lindsay said. “There is now a rationale for voting for Icahn’s board because there now seems to be a real possibility for a deal again.”

Monday’s turn of events amplifies the pressure on Yahoo co-founder and CEO Jerry Yang, whose handling of the earlier negotiations with Microsoft infuriated many shareholders.

Yahoo’s stock price had plunged by more than 30 percent to fall below $20 during Yang’s first six months as CEO. Then, in January, Microsoft raised hopes for a quick windfall with its unsolicited takeover bid, only to be repeatedly rebuffed.

If he seizes control of the board, Icahn has promised to fire the 39-year-old Yang as CEO and replace him with a more seasoned leader.

Yang has been meeting with Yahoo’s major stockholders during the past week, hoping to persuade them to give him a chance to prove the Sunnyvale-based company is worth more than the $33 per share that Microsoft previously offered.

Ballmer withdrew that bid after Yang sought $37 per share — a height the stock hasn’t reached in 2 1/2 years.

In its Monday statement, Microsoft didn’t mention how much it thinks Yahoo is worth now.

Industry analysts estimated Microsoft would likely pay anywhere from $28 to $33 per share if it takes another stab at swallowing Yahoo whole.

“Microsoft is still asking Yahoo shareholders to make a big decision with incomplete information,” said Standard & Poor’s Internet analyst Scott Kessler. “I could still see a scenario where the Yahoo board is replaced and Microsoft comes in with a bid that is lower than people want. Then what do you do?”

Microsoft more recently has been trying to pry away Yahoo’s search engine for $1 billion, plus an additional $8 billion investment for a 16 percent stake in Yahoo’s remaining operations.

Yahoo instead opted for an online advertising partnership with rival Google Inc. that is supposed to boost its annual revenue by $800 million. That alliance faces an antitrust review by the U.S. Justice Department because Google and Yahoo combined control more than 80 percent of the U.S. search advertising market.

In its Monday statement, Yahoo asserted Microsoft is trying to use Icahn to engineer a purchase of Yahoo’s search engine in a deal that would hurt the company in the long run, by hindering its ability to compete in the Internet’s rapidly growing ad market.

Posted by Mahesh ( Tryangled )

Google now owns an SEO Company

July 14th, 2008

Google has acquired the search engine optimization Performics which is a subsidiary of the company Doubleclick that Google bought. You can’t help but wonder what Google is going to be doing with this company. What better company to have do your SEO work than a company that is owned by Google, right? Or not?

Would they make more money by implementing what they do with search? Or would they be secretive yet and not let the newly acquired company know it’s secrets? Or has there search algorithm grown to the point there simply is no secret to getting to the top of Google anymore?

My belief is that the last question is the true one and if it isn’t true now, it will be true in the near future. I’ve said it before and I will say it again. SEO (search engine optimization) is changing where it is becoming merged with SEM (search engine marketing) more and more everyday.

Posted by Mahesh ( Tryangled )

How to create Beautiful Web Design

July 14th, 2008

1. Understand the design process, from discovery to implementation.
2. Develop pleasing layouts using grids, the rule of thirds, balance, and symmetry.
3. Use color effectively, develop color schemes and create a palette.
4. Use textures: lines, points, shapes, volumes, and depth.
5. Learn how good  typography can make ordinary designs look great.
6. Effective imagery: choosing, editing and placing images.
7. Understand what makes “good design”.

Posted by Mahesh ( Tryangled )

The Eurodipity European SEO contest

July 12th, 2008

I’m really not sure how many SEO contests are being held each year because most of them have very bad advertising, but one fellow blogger found my website and invited me to participate in the eurodipity European SEO contest this summer.

Actually this SEO contest is not really well organized because the set of rules which each participant must follow are not strict enough and this makes the competition a bit dull. The biggest problem with it is that you can use aged high pr domains not like other SEO competitions where you must use brand new domain and build it up to the top. Also the only SEO rule they have is not to use SPAM, but their definition is a bit vague and I suppose Search Engine Cloaking can be used to stuff some good keywords in non-related pages.

The great thing about this contest is that there will be a lot of small value awards. There will be 6 groups of top 3 ranker’s which will receive one week free hotel stay for two at the Costa Blanka Villas in Spain. More about the prizes see here

NOTE: This contest is that is only for Europeans and the winners will have to show proof of citizenship.

I will be writing soon on our progress, for now that’s about it. If you have EU citizenship and you wish to enter the game, please feel free (don’t forget to email me your website so I can place it on my SEO Friends page….

Posted by Mahesh ( Tryangled )