Black Hat vs. White Hat Techniques and the Gray Hat Area

Black Hat vs. White Hat Techniques and the Gray Hat Area

Here at Master Google, we are not afraid to admit it: SEO is a lot of work. White hat techniques require real effort. After all, the things that white hat SEO requires are all big commitments (which is why a team of specialists is key).

Let’s take a look at a few of the basics of white hat content: quality content, site optimization, link baiting, guest blogging, internal linking, and semantic markup. The differences between white, gray and black hat marketing efforts are described to perfection in the form of a clever picture titled SEO Wars: What Color is Your Lightsaber, featured in a recent article by Angie Schottmuller of Search Engine Watch.

The definitions of gray and black hat seo practices are also made more clear by this picture. The gray hat area of SEO techniques include: spinning/rewriting articles, reciprocal links, buying old/expired domains, and Google bombing/washing. Black hat techniques include: keyword stuffing, link farms, hidden text, cloaking, scraping, doorway pages, comment spam, and paid links/content+.
Keep in mind that both gray hat and black hat areas will hurt you in the long run, according to Ali Husayni, the CEO of the SEO service company, Master Google. Heed the warning of Google’s anti-spam strategy: they can distinguish between black hat and white hat SEO techniques, and your rank will rise and fall accordingly.
“The only thing not changing with SEO is that it’s always changing,” Husayni says. “Be diligent in keeping up with those changes as [you handle your] site’s SEO, or partner with a qualified SEO provider to handle that task.”
After all, the battle lines between white hat, gray hat, and black hat techniques are drawn quite clearly, so pick an SEO practice and stick with it, urges Schottmuller, using Star Wars as an analogy.
“Will you uphold the righteous values of quality content and serve as a SEO Light Jedi, or do you long to be a master of deception as a SEO Sith Lord?” Schottmuller says. “Perhaps you’re a SEO Dark Jedi – once believing in white hat tactics and now thirsting for the dark side. Or perhaps you’re a SEO Jedi Fashionista – knowledgeable of both sides, but discreet in practices to keep up appearances.”
Our strong suggestion: do your search engine optimization efforts justice by sticking with white hat techniques.

How To Use SEO Tactics Effectively

How To Use SEO Tactics Effectively

Sometimes SEO gets a bad reputation. Naysayers are correct that there are two types of SEO strategies that are indeed bad for business, and those are gray hat and black hat SEO tactics. Gray hat SEO includes tactics such as reciprocal links, buying old or expired domains, and Google bombing/washing. Black hat techniques are even worse for business and include tactics ranging from keyword stuffing, using link farms, comment spamming and more.

Since Google can so easily spot these tactics, why do companies use black hat and gray hat SEO techniques? For starters, those tactics take less time. White hat techniques require creating quality content, careful site optimization, link baiting, guest blogging, internal linking and more. These techniques take a considerable amount of time, which is why to effectively use SEO tactics, you must hire an SEO team with a positive track record.
SEO Hats
Image Courtesy of Itsabacus.com.
Master Google only uses white hat SEO tactics because it is the only way to go for successful SEO, according to Ali Husayni, the CEO of Master Google. Husayni said to heed the warning of Google’s anti-spam strategy as your rankings will rise and fall accordingly to how well you implement the correct SEO strategies.
“The only thing not changing with SEO is that it’s always changing,” Husayni said. “Be diligent in keeping up with those changes as [you handle your] site’s SEO, or partner with a qualified SEO provider to handle that task.”
When done correctly, SEO is not spam at all, but a good tactic that Google recognizes, according to Google Software Engineer and head of Google’s web spam fighting team, Matt Cutts. Watch the video below to hear Cutts explain why Google appreciates SEO when done well.



A focused SEO plan is a never-ending job, but one that will greatly increase the likelihood that your customers will find you on Google. Contact Us to see if we can provide SEO services for your website.

9 Ways to Misunderstand Web Standards

9 Ways to Misunderstand Web Standards

Misunderstanding #1: "We Need Separate Print Pages"

We've all seen this – a separate print page, linked to from a crowded, table-layoutish HTML page, aiming to serve no other need than being printed out (it fails, because bloggers link to print pages – they're mostly easier to read and not split up into multiple pages). The good thing about these pages is that the user gets an instant impression of what the print-out will look like. Of course, the right way to do this would be to serve a separate stylesheet for medium print, and if the browser does it right, it will show the visitor a print preview.

This is old news, but why do I consider it noteworthy? Because it's the #1 application where media-dependent CSS, on top of media-independent HTML, ought to come into play... and yet, and I'm guessing, only 5% of all pages make use of it. You'd think after years of evangelizing done by web developers, the likes of CNN or Wired would have gotten the point.

Misunderstanding #2: "We Need an Alternative Mobile Web on Top of the Existing Desktop Web"

WML, the WAP's Wireless Markup Language, is dead today for a good reason: there was no need for this species in the course of web evolution. Even before WML was invented, plain vanilla HTML was created to be media-independent. Not by accident, but by design, because platform-dependence was one of the main problems Tim Berners-Lee tried to solve when inventing the World Wide Web and HTML.
But the fact that the same document can be used in a variety of circumstances, and that the browser simply requests the stylesheet needed – or uses its own, by default – is not an intuitive one to grasp. Most real world objects don't behave that way, changing their shape and behavior depending on what is needed. (A German joke goes like this: "What is the smartest invention of the 20th century? The thermos flask, as it knows it needs to keep things warm in Winter, and cold in Summer.")
So today, you'll see many companies creating an alternative mobile web. Well, those who can afford it, anyway, like Google (which is releasing products like Search or Gmail in special mobile versions, while often ignoring accessibility guidelines on their "main" sites).
Now, you might argue, it's not so much a technical matter of how to serve the mobile web – it's a matter of finding the right content fitting small devices. However, we simply don't know in which contexts a visitor might want to read a longer text. At my last job I used to drive in the train and bus for about an hour every morning, and during that time, I used my cell phone's browser to read longer articles. When I was at work on a bigger screen, I had much less time to read articles. (People watch movies on their PSP... it's really not all about screen-size.)
What was the original solution to formatting the same document for both the desktop screen, and the mobile device? Media-dependent stylesheets, again, delivered on top of the same HTML. And yet, if you look at different mobile browsers available today, you'll see that they might do any of the following:
  1. ignore all your stylesheets, and do something more or less reasonable with the HTML (e.g. breaking up table layouts)
  2. use the screen stylesheet, but adjust it here and there to fit the smaller resolution
  3. use the handheld stylesheet, but only if you deliver your XHTML using the "XHTML Mobile 1.0" doctype (what is the need for yet another doctype, when plain XHTML claims to serve mobile media already?)
  4. use the mobile stylesheet, if available, and use its own default formatting if not
Can we really, truly blame the mobile browser makers for resorting to 2 and 3, which are definitely breaking web standards by choosing the screen stylesheet? After all, any real browser that wants to find a commercial niche by serving user needs must work on the real web and what's available on it. If 95% of all web pages ignore the honorable goals of media-neutrality, mobile stylesheets and so on, why build a browser with focus on the 5%? Conversely, in true chicken and egg fashion, many mobile developers might steer clear from mobile standards done right... 'cause done right, they don't work.

Misunderstanding #3: "Accessibility Means to Always Use Alt Text"

The meaning of alt text is to serve as replacement (hence, "alternative") when the image the HTML intends to serve cannot be seen. There's a variety of reasons for that to happen; the user is blind, the medium doesn't support images, the user disabled images on purpose so she can browse on low-bandwidth, or the Googlebot comes around to visit.
For example, when your image is a mere illustration to a point you're repeating elsewhere in the text, there's no need at all to use the alt text. Because the image is not crucial to understanding the point. Most people however at this point heard some rumors that the "alt tag" is increasing accessibility; and possibly, they've heard somewhere else that accessibility is professional these days. And they also might want to see a tool-tip, not knowing that the title attribute would come in handy for that. (Wordpress in typical installations even creates an alt text based on the image's file name; tools like Frontpage have committed similar silliness in the past.)
So, let's say our blog post is titled "New AJAX Flavor Discovered" and the illustration following the headline is a shrink-wrap box with the shiny colorful letters "AJAX," then repeating the letters AJAX in the alt text will result in something like this within alternative browsing contexts:
New AJAX Flavor Discovered
AJAX

Is this useful? No – the point of the illustration was to use a recognizable catchy visual, or to suggest that AJAX is hyped as a shrink-wrapped shiny product; the point was not to clarify (in text) that the article is about AJAX, as the headline already did a good job at that.
In XHTML2, by the way, some of us may be able to get rid of the alt attribute altogether. Why? In XHTML2 you can use the "src" attribute on anything, including e.g. a paragraph. It's a bit like longdesc (today's link to a longer image description) done right.

Misunderstanding #4: "Sites Always Become More Accessible With CSS"

If I'd have to make a bet, I'd say creating an inaccessible website with CSS is 10 times as fast as doing the same with table layout. You know, you just need to use an incredibly tiny font in your CSS and you ruined the reading experience for your visitors on thousands of pages (unless they're the 5% of visitors who know which button to press to increase the font size again, of course). Now try that with the nasty font tag... even if you have a great template system, it'll take much longer!
CSS on its own doesn't do much in terms of pushing accessibility. And table layout on its own also doesn't do much in terms of preventing it. Sure, it's better to have full control over the linear flow of the HTML (e.g. to put a long navigation to the left side via CSS, but make it follow the main content in the HTML for search engines, smaller devices, text-to-speech contexts and so on). But CSS is ten times as fast... for better, or worse.
The biggest advantage of CSS is simply that it helps developers create websites much faster by separating layout and content. As far as that's possible, and it's certainly not possible 100% – which brings us to our next point.

Misunderstanding #5: "With CSS We're Completely Separating Content and Layout"

I've completely switched to CSS in around 1998/1999. I'm still happy I was able see "old" HTML (know your enemy!). Back then, when I saw the proverbial light, I figured that CSS enables you to completely separate content from layout. Put the h1 here, the address element there (is anyone still using that?), use <em> instead of <i> and <strong> instead of <b> (and grok the philosophy behind that), spice it up with a div & span & list, and basically markup everything based on its never-changing semantic/ structural role, and you're done.
Boy, was I wrong!
For starters, different browser quirks often need different HTML element wrappers. More importantly, and that one's true even in browser utopia (the place without quirks), once you realize you want to redesign a part of your site you also realize how many classes are missing. Next to creating a class in advance for everything imaginable (see the CSS Zen Garden), you're basically back to HTML.
CSS doesn't completely separate content from its layout – only a template system can do that. CSS has its place on top of the template system, and greatly simplifies the HTML (if you think there's div soup today, you've got to see true 1996 table soup... it's worse.)

Misunderstanding #6: "With CSS, You Can Do the Design Later"

Actually, it's true. You can try to do your HTML structure first and then create the CSS as afterthought. You'll probably have a couple if iterations, going back and forth between the two, but you'll learn and adapt your processes in the future
The real problem I'm seeing here, however, is that some people – heck, I was often one of them – tend to forget to add a fine-tuned design at all, happily using valid HTML + CSS as excuse for not having a page layout (relying on user stylesheets alone is not an option). Have you ever come across one of those black-on-white sites of nothingness, where the only graphical element is a "valid HTML" badge? (And no, I'm not talking about well-done minimalism a la Joe Clark's blog.)

Misunderstanding #7: "The Web's Becoming More and More Accessible Every Day"

I think the biggest factor making accessible web sites a reality today is that most people simply don't do HTML anymore – they use ready-made blog templates. And several blog templates deliver good, strict (X)HTML.
However, there's another movement throwing needles at the high-flying balloon of accessibility, and partly, usability; it's The Return of JavaScript (Episode III: A New AJAX).
Now the rule of thumb should be this; put JavaScript on top of HTML to allow for features you otherwise wouldn't have. Like nifty forms with auto-completion and such... but importantly, auto-completion where the rest of the application still works as expected, including all kinds of keyboard shortcuts. Yet, we're seeing the focus turn away from this philosophy; some apps even put the "AJAX" right into their product name.
Google's Gmail, for instance, is a guilty pleasure, usability-wise. While you have a lot of features normal HTML could never offer (unless we're talking about some advanced, it's-the-year-2014 XForms browsers), you're also often losing out on simple things like the back button. Or out-of-the box mobile support. Or copy-and-pasting of whatever you see on-screen. (The list goes on.) Now, the Gmail team was wise enough to give us a second, plain-HTML version of their tool. But the fact remains that many web applications of today destroy a dozen features by introducing a dozen new ones. Whether or not that's simply the wave of the future and all good remains to be seen, but it's not accessibility in the true sense.

Misunderstanding #8: "The Semantic Web is Just Around the Corner"

Today, the W3C is putting much of its efforts behind the Semantic Web (also described by Tim Berners-Lee in the second part of his book Weaving the Web). But Cory Doctorow put it so well back in 2001: people lie, and people are lazy. And I got a feeling even the W3C misunderstands why some of their web standards took off (they are relatively simple to apply, and certain complexities can be ignored without dangers), and I also got a feeling lower-case semantic web AIs, e.g. Google's Q&A feature, will be quicker to show results.

Misunderstanding #9: "CSS Hacks Are Always Superior"

Do you know how to separate between Internet Explorer 6 and The Rest? It's simple, just use the "!important" keyword, like this:
.content
{
    width: 600px !important;
    width: 580px;
}
Firefox and others will correctly interpret the content layer as to have a width of 600 pixels. 'Cause "!important" overrules. IE6 on the other hand erroneously grabs the last width it sees.
Or take this little hack:
.content
{
    width: 500px;
}

.content
{
    width: 450px;
}
This one is the g-z backslash trick, supposed to separate between different flavors of MSIE. We used a lot of those in the stylesheets for Porsche.com's relaunch.
Those hacks are fun, sure, but are they superior to HTML table layout hacks? Well, a little, but CSS hacks are still just that: hacks. Workarounds that will cause troubles with every new browser. Workarounds the new developer won't get when you're away, unless she's a CSS expert. So instead of thinking that CSS hacks are a great way of developing websites, it's better to use them sparingly and accept them as what they are: an often necessary evil.

 

W3C Validation

W3C Validation

To make a good customer impression on the web, businesses owners need to ensure a clean and clear website. One way is by using a W3C validator.
Think of it this way; if you were writing an important report or a letter to a customer, you would want to use a spell and grammar checker to catch unintended errors. Website markup also has a syntax and grammar that need to be checked. Business owners need to be sure that they have not overlooked potential flaws in the markup code.
Similar to word processing applications, web browsers do not distinguish invalid from valid statements. As a result, your websites may look fine at first glance, but have compromised functionality. For example, people may not be able to find information about a product because the link is missing or there is some invalid text. Using a W3C validator helps reduce this risk.

Comparing Web Markup & Web Standards Using W3C Validator 

The W3C validator compares web pages and websites that use the (X)HTML languages with a set of standards. Led by Web inventor Tim Berners-Lee, the W3C - or World Wide Consortium - sets these web coding specifications based on conversations and review from an international community of web industry leaders and public commentators.
The resulting specifications represent a consensus on good web markup practices, and define the creation of well formed web pages. These rules form the backbone of the W3C validator's reports on any errors or warnings found when checking web code.
The W3C validator does more than tell you how many errors and warnings it found after checking the web language. It also lists the line, an explanation and a recommendation for each error and warning.
4dbb7dacf1e5a27a18b8bc98ec813ce9.png
If parsing through lines of markup is not an option for you, the W3C validator provides the choice to clean it up using HTML-Tidy. This is especially handy after creating a web site or web page using a third-party software application. However, W3C Validator, and related HTML-Tidy option may overlook some types of web code that are not HTML and are used to perform more complex web programming, such as Java, ASP or PHP. Also the validator may miss more complex issues caused by the relationship between different pages and content problems.

Steps To Use the W3 Validator

19bb51bd23fee3edfcce4e373a4250ea.png
  • Decide where you wish to check the code. You can check your website markup directly, using a web browser. Alternatively, you can download the W3C Validator to your local machine to validate unfinished web pages not ready for the public eye, or private web pages.
  • Enter what you wish to check. Type the web address in the Address field. This is in the "Validate by URI" tab. Alternatively you can upload a local file through the "Validate by File Upload" tab. If you wish to check the code directly, then choose the "Validate by Direct Input" tab. Copy your HTML code and paste into the empty field below.
  • Choose options, as needed, to view the validation results. Select the "More Options" arrow for selections. Choices include "Character Coding" or text language (e.g. Italian), "Document Type" or type of markup, listing error messages sequentially vs by type of error, displaying the web source, displaying the web outline, cleaning the markup language, validate web pages that have a "404 not found" error or "Validate Error Pages" and "Verbose Output" or more description of the error
  • Press Check. The W3C validator will start and complete its check. It will report on any deviations from the standard web X(HTML) language you specified.

Don't Rely on Only the W3C Validator

While the W3C validator saves time by catching basic mistakes on websites, a W3 validator is not always a good substitute for more robust web-site testing. The W3C validator catches mistakes on the surface, but not the deeper issues.

For example, some web code may interact with applications needed for security and/or to manipulate data. Also, some websites may present different kinds of media; such as images, video and sound. A W3C validator will not judge the quality of these, other than whether the file is referred to correctly by the markup. If you are looking to validate website links or a web style sheet, the W3C validator will not fit the bill. Different web browsers may have quirks in the code that does not recognize valid HTML. Finally, the W3C validator cannot be used to validate content for mobile phones, see 9 Ways to Misunderstand Web Standards. Links to these alternative tools are available on the W3C Validator web page.

Should you forgo or supplement the W3C Validator, based on these drawbacks, for another tool? It depends how you define the quality of your website and how much chance you wish to take on how many errors appear on your website.
For example, AboutUs offers both a free and for-pay check of other basic SEO website standards.

Cascade Content for SEO

Cascade Content for SEO

Share Your Expertise for SEO & More Customers

When you write a blog post or article about something that matters to your customers and prospects, make sure you get the utmost value out of it. After all, it's not so easy to produce a piece of writing, especially for busy business owners and one-person marketing departments ;-)
You'll reach a wider group of people who find your content relevant to their needs and concerns if you adopt a cascading content strategy. By promoting your content on the social networks - and in email - you can attract more visitors interested in your topics, and demonstrate your expertise. That can inspire greater trust and lead to more sales.

Don't forget that search engines use social signals to help them rank websites for relevant search terms. If you can get people to retweet and share your content with their friends and followers, that will tell search engines your website is valuable, and can help you rank higher for the keywords you're using in your content and posts. That in turn can bring more visitors to your site.

Cascading Content Is Efficient & Effective

Let's say you own a store that specializes in urban homesteading supplies. You've just discovered a great new way to quickly compost yard debris and food scraps, so you write an article and publish it on your blog.
Certainly, some people will discover the article there, and realize your store is a great place to stock up on urban homesteading supplies - especially if you've been thoughtful enough to include an RSS feed so people can subscribe to your blog.
But what about people who haven't subscribed to your blog? There's a world of potential customers out there you want to reach. You can do it, too, by cascading your content to your email list and through social media platforms like Twitter, Facebook, Google+ and for B2B (business-to-business) companies, LinkedIn.
Basically the idea is to write a long piece once, then publicize it multiple times over multiple platforms. Like a waterfall that starts high and cascades down a rocky slope, breaking into smaller streams, your content will flow through several channels, spreading out to many more people. And if you've written compelling pitches for each platform - always including a link - you'll bring new people to your website.
Bonus: If your content really is valuable, and your social "hooks" are persuasive, people who follow you will retweet and share your posts (and your links) with their own friends and followers.

People reading your blog post may choose to share the post itself, too, as long as you've made it easy by providing social sharing buttons for Twitter, Facebook, LinkedIn, Google+, StumbleUpon and more.
It's not just people who notice social mentions of a website. Search engines do, too. To learn more about how social media helps SEO, read our article, Boost SEO with Social Media.

So, Show Me an Example of Cascading Content

I'm glad you asked! Refinery 29, a fashion and shopping site based in New York, makes money by selling apparel and other fashion items, and through ads it hosts on its site.
Yet Refinery 29 writers don't blog only about things they can sell. They also blog about stylish people they find on the streets of various cities, bizarre products they've spotted, beautiful food blogs and anything else that lends itself to great photos and fun, engaging writing.
Refinery 29 also makes a point of tweeting its blog posts and publicizing them on Facebook. Here's an example of tweets from the Refinery 29 Twitter account. Note that each tweet has personality and wit:
Here's a Facebook post about a recent Refinery 29 blog post. Note that five people like the FB post and two have commented.
The blog post itself got 18 Facebook likes, 11 tweets, 1 StumbleUpon share and 13 comments. There are bloggers who would kill for that kind of attention.
If you like impressive numbers, here are a couple more: Over 109,000 people have "liked" Refinery 29 on Facebook, and about 280,000 people follow the company on Twitter. Yowza!

So Is Refinery 29 Making Money?

Judging from an article by Tricia Duryee in All Things D, it sure is. In October 2011, co-founder Philippe von Borries told Duryee that Refinery 29's revenues were at an annual run rate of $15 million, up from total revenue of $2 million in 2010. That revenue is driven by 4.3 million unique visitors (as of October 2011). That's a lot of traffic, especially for a site that's been online less than six years. 

9 Signs of a Bad Title Tag:

9 Signs of a Bad Title Tag:

A website's title tags are very important for several reasons:

1) The title tag shows up in search results as the blue link, and a good one helps the site get more clicks and visitors from search results.
2) Title tags are a crucial SEO element that can help the website show up higher when people search for the words in it.
3) Title tags show up when web pages are shared on social media sites like Facebook. This is important because social media mentions are now a ranking factor in Google search results.
So if you have the time to optimize one thing on your website, title tags are it.
Here are some of the top mistakes and missed opportunities I've seen in title tags. Avoid these and you'll be ahead of the game. You'll rank higher in search results and entice more people to click on your site.


9 Signs of a Bad Title Tag:


1. "Home" or "Home Page" in title tag
It may be logical or helpful to the website owner, but including "Home" or "Home Page" does not help visitors or search engines. All we really care about is what the page is about, and what it offers us. Why take up space with this non-information? You surely don't want to rank for the terms "home" or "home page."
2. Domain name in title tag
Including the domain name (like example.com) in the title tag is redundant and takes up prime SEO real estate.
If a searcher cares what site they'll be taken to, they can look at the green URL that's visible in the search result before they click. And web pages are automatically going to rank very high (at the top unless something is wrong with your SEO) when people search for your domain name, whether it's in the title tag or not.
Put another way - Is it more important to tell people your website address, or to tell them about what you offer and show search engines a keyword?
3. Too long
Search engines display only the first 70 characters (about) of a web page's title tag. The rest gets chopped off and replaced with ellipses.
4. Too short
Short and sweet can be nice, but you might as well use all the space available to tell people and search engines about the web page. Making your title tags close to - but not exceeding - 70 characters is a good way to get the most out of your title tags and optimize your chances of showing up for different keyword searches.
5. No keywords
The purpose of your title tag is to tell people and search engines what your web page is about. If it doesn't include keywords, you're doing it wrong.
6. Just the business name
I know it's tempting to make your title tags be just your business name, especially on your home page. But unless your business name is 70+ characters long or contains several of your important keywords already, you should really include more so that you'll be found - and clicked on - by people who aren't familiar with your business yet.
For example, if you were searching for a local business that sold widgets, how likely would you be to click on a search result that just said a generic business name like "Jones & Jones, Inc."? You probably wouldn't waste your time clicking on a search result that doesn't make it clear the company is in your city and or that it sells what you're looking for. Because the title tag doesn't make it clear what Jones & Jones sells, or where they're located, search engines are less likely to rank that result high in search results.
7. First few words aren't important or eye-catching
Research shows that people scan search results quickly. Searchers pay the most attention to the first few words in search results, and the first few results on the page. The heat map at right shows you where people tend to click in a page of Google search results.
Make the first few words of your title tags count by including the keywords you think will be most relevant to searchers. Or write something that will catch people's attention. Put your best foot forward, and cut the meaningless fluff.
For example, I searched for "cat toilet training" and found the search result shown below. It did catch my attention and make me read the whole search entry to see if it was really what I was looking for. But many people would just skip it, and focus on the search results that mention their search terms right up front.
Image:MeaninglessUpFront.png
8. Doesn't include geographic location - if location is important
If you have a physical retail location, or if you want to target customers in a specific region, you should make it clear to searchers and search engines where you're located. Include your neighborhood, city, state, or county - whatever makes most sense for your business - in your title tag and in other website content.
9. Too many keywords (spammy looking)
If your title tag is just a long string of keywords, it might rank well for those keywords, but the real live people searching for those words will probably be less likely to click that result.
Here are two examples of keyword-filled title tags in a search result:
Image:KeywordHeavyRealEstateTitleTag.png
Image:KeywordHeavyChoppedOffViagraTitleTag.png
 
© Copyright 2010-2011 SEO Info Business and Finance All Rights Reserved.
Template Design by Herdiansyah Hamzah | Published by Borneo Templates | Powered by Blogger.com.
SEO for blogs sponsored by Phoenix insulating