Web Standards vs. Reality

Some people in the web development/web design/front-end development industry would rather be caught on tape stealing food from small children than admit they pollute the web with websites that do not meet standards when it comes to markup, stylesheet and javascript.

I break these standards on a regular basis, and apparently a lot of other people do as well, according to Opera, only 1 in 25 adhere to web standards, and the rest breaks them in some way. Why is that? Are standards not worth following? My answer is: it depends on the context.

In this post, I will not discuss things such as page size, design from content separation, behaviour from design separation, search engine optimization etc etc, as I believe that all of these can be achieved just as good not adhering to web standards, and that the areas have been dicussed for 5+ years. I would like to focus on things that not so many people talk about when discussing standards; How it affects revenues and the actual organization running a website.

The Business Perspective

Building a new Website / Redesigning a existing one
If you are building a new website, there are few reasons not following standards for css, script and markup. From a technical point of view, there are probably no arguments that are valid for not adhering to standards, but from business point-of-view, there may be some arguments that are valid. These arguments may be:

- Legacy non-standard CMS Software enabling quick time-to-market
- More time efficient development given the teams core comptence
- Alternative Cost, how much do we gain (in money, short and long term) from adhering to standards comparing to not have it as a business requirement.

Running an existing non-standards compliant website

This is where reality hit hard on standard advocates. Converting an existing non-standard-compliant website to a standard-compliant website can be a really daunting job. But it all boils down to technical solutions and a lot of hard work. The real problem is to find the argument, money-wise, to do it. As a businessowner you must ask your self the question: “Why should we use X nr of resources for moving to standards, when we could use the same resources for making our product better?” This is where people who thinks standards are a matter of life and death have to sharpen their arguments. Below I have listed different aspects of a websites function and lifecycle where it is important to understand the conflict between reality and standards.

The Knowledge Perspective

Not all websites are built by people who are educated in web standards. I think that a very common problem with web standards, are the fact that a lot of web-frontends are built by someone who knows their standards and run and maintained by people who do not care or have the knowledge needed to adhere to the standards that the site should support. The big question is again money. How much do we gain, educating people in standards compared to keep the speed up with the current knowledge?

The Web as API Perspective

This is where standards becomes important, in order to expose your web as an API, enabling mashups, this could be done using micro-formats, your own XHTML-schemes or just letting external users grab your content easily and mash it up on their side. Of course a valid XHTML-page will be easier to parse and load as an API, but on the other hand, screenreaders, search engines and other page parsers have been able to grab info even from non-standard supporting websites for a long time, there are even numerous of libraries that lets you do just that. When it comes to the web as API, I believe it is important to focus more on building a website that is API-ified when it comes to url-structure and parameters for responseTypes and locales etc. From this perspective, adhering to standards is of course important, but not adhering to standards is not the same as not being able to expose your web as an API. The only thing you do if you run a website that do not follow standards is making it a tad more difficult for your integrators to mashup your website.

The Accessability Perspective

Accessability and Usability, how do they relate to web standards? There is one argument that everyone is talking about all the time, screen readers. OK, this is close to the above argument. My belief when it comes to this is that a screenreader that can not read non-standard pages, will not be a big success, since a lot of websites, as stated above, do not adhere to standards. Of course a semantic web is easier to understand by machines, and will increase accessability and findability enabling better SEO. As the machines reading the web will become more sophisticated, issues like this is probably a smaller issue in the future, than it is now

The Maintenance Perspective

Some people say that standard based front-ends are easier to maintain. From one perspective I am obliged to agree, web standards fronts are more often separated semantically, css doing design, script behaviour and markup for content. But the separation has nothing to do with standards. One argument could be that if we use standards we do not have to maintain “hacks” in css, script and markup, but as long as you are using components and frameworks you should not have to worry about these things. If everything is a mess with no separation and no standards followed, there may be reasons to change this, if we can find a business argument for it: The cost for moving the web to standards and separation of markup, design and behaviour must be lower than the gains from maintaining a standards compliant product compared to the old solution.

The Code Quality Perspective

Another argument is that standards are better from a quality perspective, that is just noncence. You can build crap with cheap and expensive tools, as well as you can build crap websites with standards and non-standards. You can even build great websites with non-standard solutions.

Conclusion

Standards serve a purpose, they get developers to start thinking how they build things, and slowly they adapt to new patterns and processess building webpages, creating better semantics and separation of design, content and behaviour. Standards are good. But not following them is not the same as doing wrong. There are a number of arguments that may force us to build or keep maintaining products that do not follow standards, often the reason are economical. I believe that in order to be business-oriented all developers have to understand that sometimes the “best” technical solution is not good enough from a business perspective.

Resources

  • http://dev.opera.com/articles/view/mama-markup-validation-report/
  • http://www.sitepoint.com/blogs/2008/10/17/opera-just-413-of-webs-code-is-valid
  • http://dev.opera.com/articles/view/mama/
  • http://dev.opera.com/articles/view/mama-key-findings/
  • http://dev.opera.com/articles/view/mama-the-url-set/

Front-End Book is a Comment-friendly Blog

I have added three new features to this blog in order to give people who comment a little extra back whenever they take some time and add a comment to my postings.

1. Remove nofollow on comments

We are using the plugin NoFollow Free by  Michele Marcucci. That plugin removes the nofollow from author links in comments when a user has submitted x number of approved comments. On Front-End Book you must have 5 approved comments before the nofollow attribute is removed from author links.

2. Automagically add back link to commentors blog

CommentLuv by Andy Bailey lets you automagically add a link to posters last blog post if a feed is found on the site the athor of the comment has in its author link. We use CommentLuv on Front-End Book and when you comment and use an url where your blog is, CommentLuv will show last blog post.

3. Top list of commenters

To the right we are from today starting to list our best commenters with their name linked to their website and with the number of comments next to them.
Keep up the commenting!

Long Term vs. Short Term Online Business

I work in an industry where a lot of people try to chase after the big money with small efforts invested, looking for quick cash. Seldom their expectations are met. What brings the cash in is long term dedication towards strict economical, and other measurable, goals. This holds for true with online businesses as well, a lot of people is looking for the big cash-in, either through advertising, affiliation or selling one of its properties. Instead of buying useless “Universal Solutions” for making you a millionaire over night, try to set the correct goals for being a millionaire within 5-10 years instead. Otherwise you will only feel frustrated every single day, when you miss out on your short term goal to become an online millionaire. Of course there will be a YouTube sold to Google every year or so, but I wouldnt put to high expectations on it happening to me. In this article I will think out loud about starting up your own small online business. 

It is not all or nothing

Whenever you end up in a discussion whether or not a solution would fit as an online business and make you money, a lot of people end up saying “That has already been done”, yes of course, but that is not a relly good argument, look at the shelves at your convenient store, there are more than one brand of cereals, right? The good thing with online businesses is that you can choose to target any market you like, even ultra competitive markets can be targeted. With the right online marketing techniques, long term dedication, geographical location and niche you should be able to monetize both short term and long term, but with the possibility to expand geographical location and niche as a long term goal. 

Set up close to realistic goals

Without goals you do not know if your business is running good or bad. You have to have detailed goals; economical, traffic growth, service evolution, budget for online marketing etc etc. It is crucial that you know your market, your future customers and you competitors. By analyzing the competition and competitors offers, you will get better information on how to set up your long term goals. Tools and techniques you can use for evaluation of these things can be:

  • Web services such as Alexa.com and Compete.com
  • Set up comparative analysis tables for 3-5 competitors to see if there is a niche not yet covered/focused on by competitors.
  • Keyword analysis, to find bargain keywords to focus your SEO and PPC efforts on.
  • Check with Commission Junction, TradeDoubler and other Affiliate Networks if you can find affiliate programs that easily can be monetized on your online business.
  • Try to buy adspace on competitors to get an idea of what they are charging for advertising space.

When you have identified the competitors and economic possibilities, try to set a short term goal and a long term goal. The short term goal must in no way compete with the long term goal. My suggestion is to set up goals that are realistic + 20%, that way you are pushing your self. A typical short term goal could be to say “In three months my business must have 5000 Unique Visitors per month” and a long term goal could be to say “Within 3 years my business should generate enough income for me to pay for my car, phone and apartment”. 

Measure and evaluate

Set up different measure points, that will tell you wether or not you are going in the right direction towards your long term goals. These measure points is often called KPI (Key Performance Indicator) and is used to get a health score on your business. What you need to do is to identify things that can be measured and set a value on those kind of things. A typical example could be:

  • A user signup is worth $10
  • A new unique visitor is worth $0.05
  • Conversion rate vistors-to-users, users-to-buyers, buyers-to-returning-buyers etc.

The value of these different actions is of course an equation based on how you convert your users to paying customers, and by tuning conversion rates, values of different actions may increase in value. Of course you can measure “soft values” as well (design, first impression, brand recognition) but for that you need some kind of interaction with the user through interviews or surveys on a regular basis.

Baby steps is better than no steps at all

By taking the scientific approach to your business, you are going in the right direction, and sooner or later you will start seeing result on your daily income from your online business. It can be very frustrating to see that you only make small number of sales and leads early in your business, but the fact that someone is actually doing something making you money, is an evidence that you have something that works for someone. Now you just have to use all your evaluation tools to identify when it works for who. By doing this, you will increase the chances for earning more money, but it can be a time consuming job, that is why long term is the key. Try to identify what works, and tune that, try to identify what do not work and redo that. But remember: What works short term, may not work long term. Adsense ads all over your website may work for unique new visitors, but I bet you see a high bounce rate and low pageviews/visit.

Do not expect wonders

If you have competition on the business you have chosen to focus on, you will have to fight hard to gain market shares and traffic to your business. Sometimes people find a niche where competition is low and traffic is great, but I do not think it happens too often nowadays. Hard long term work will make it work for you, but do not expect short term miracles when applying a long term strategy to your online business. Sooner or later traffic and earnings will explode if you focus hard. There are no easy ways to success (except luck and exceptional timing)

Conclusion

There are no shortcuts to making huge amounts of money online. But you can gain leverage on your competition by setting up long term goals, KPI:s, evaluate daily, weekly, monthly, tune your product, listen to your users and have faith in your business being a success long term. Avoid setting short term goals that may harm your long term product strategy.

The Strategy behind Google Chrome

No one, not even my wife, have missed that there is a new player on the browser scene, Google Chrome. Though we have different views on the topic, both me and my wife had the same questions and comments popping up.

  • Why are they releasing a browser?
  • If someone can gain market shares on the browser market, Google can.
  • Is this a good or a bad thing?

Of course there are no definite answers to any of the questions, and I think they have the chance to gain market shares if they manage to make the integration with their services in such a way it feels natural to use Google Chrome instead of any other browser available (and fully functional).

But the big question is why they are releasing a browser and how it effects the end user.

I will try to reason around this issue, without getting into the conspiracy area (just touching it slightly).

In order to understand Google Chrome, we have to identify where Google have their biggest earnings and what focus Google have. Google focus on search and their income comes from a lot of different services both for end users and for businesses, with their biggest income generating from advertising. They are building a solid online office suite, Google Apps, and they probably make a dollar or two on other services as well, but the big thing is advertising. I believe that there are three main reasons Google have entered the browser market.

1. Increase Possibility to Target Ads

Google have strategically and slowly moved the positions when it comes to knowledge about user behaviour. In the beginning long time ago (10 years exactly), the user was “anonymous” and only shared entities such as geographic location, recurring visits, clickstreams etc etc, the ordinary web analytics stuff all websites without user accounts get by using Google Analytics.

Later Google Account was released via services such as GMail, Search History, iGoogle and other personalised services enabling Google to gather more data for business purposes such as ad targeting and personalised search results. With Accounts enabled on these services, Google could gather personalised data while using services where you needed to be logged in.

Google Toolbar was the next step in further evolving the possibility to gather personal data, but still Google only gathered information from people who actually installed a toolbar, I do not know the numbers, but I believe that the ratio may be pretty low. Still Google could increase the knowledge about those users, gathering information when surfing on other properties than Googles, but, and a big but is that they made this sharing of private material opt-in, and probably lost a lot of information that way.

By offering a browser, focused on usability, stability and ease-of-use, they will now target the really big audience, and they can hide the privacy issues in a EULA. By owning the browser chrome, they will gather enormous amounts of user data, making it easier to target people with ads contextually targeted both to content and user behaviour.

With their own browser, they can start showing targeted ads even on websites that do not affiliate through their Adsense program.

2. Remove Technical Barriers for Earning Money on Advertising

By owning the browser, Google can make sure that targeted ads do not get blocked. Maybe this is not a huge problem right now, but as a strategic decision, it is important, by trying to move the masses to start use Google Chrome, Google can be sure that whatever technical solution they choose for displaying the ads, they will know that ad impressions will be higher and given that, conversions will rise, and given that Google Inc. will earn more money.

3. Distribution Platform for Coming Services

Google Chrome is Googles iTunes. I believe Google are building a distribution platform, enabling them to start targeting new markets, where companies such as Apple, Amazon, Netflix, Rhapsody and other companies earning their revenues from micro-payments.

Google are going to increase the marginal for advertising revenue, but in order to really grow, as fast as we have gotten used to, they need to find new mass markets where they really can earn money from transactions. So believe me when I say that within a couple of months Google will start taking market shares from Apple and Amazon on digital items such as music, movies, applications for the web and Android.

Conclusion

Matt Cutts says that there are no hidden agenda behind this, they just wanna make the web a better place. If I where a share holder on Google I would not like those kind of arguments. “making the web better” is just that, an argument, not a strategy. And as a public company Google Inc. must find new ways to increase the market value of the company. I believe Google Chrome is the fundamental piece in Googles future platform taking market shares from competitors such as Apple, Netflix and likes as well as the Chrome will enable Google to increase the marginal on their advertising programs.

How iPhone and Android Will Change the Web

The iPhone is getting more and more popular around the world, and soon we will see mobile phones implementing Googles mobile platform Android. For years we have been waiting for the mobile revolution on the web, but the revolution has been more like a breeze with 3G-enabled services for small screens and the Blackberry-concept. In order to make the revolution speed up we need molotov-cocktails such as usable services, standardized platforms, large user base and a change in behaviour. With iPhone and Android, this is what is about to happen.

In this article we have choose to focus on four areas of the web that will change when the mobile revolution starts.

Technical

Anyone who has ever built or run a web serving platform, knows that multiple platforms are a bad thing and adds to complexity and maintenance time and money. In order to serve both traditional web and web for iPhone and Android, changes to the platform will be necessary (Of course, there are always someone who “took aim” for this in their platform when building it). The biggest changes we will se is an even stricter separation of the presentation layer from the business layer. In order to make a platform able to serve x number of types of devices, we need to make sure that nothing in the business layer makes any assumption on what type of presentation device it will be serving the generated content. The presentation layer must be able to choose the correct presentation resources and device-specific services such as payment methods, social bookmarking tools etc.

Usability

When moving services to a mobile platform, focus tends to move to ease of use and effective use of the service, trying to maximize the usability of the service. It is not as convinient to type on a mobile phone as it is on a keyboard, even if iPhone has wonderful mechanisms for scrolling, zooming and changing viewport orientation, it is still far more difficult to navigate the web via an iPhone then it is with a fully featured web browser on your desktop OS. In order to minimize the effects of these short comings, focus on easier and more focused services will be the case. This will of course effect the services we use daily on the desktop web as well, why should I stick with a semi-usable product on the web, when I know the service provider can do better.

Advertising

There are two things with mobility and platforms such as iPhone and Android that will revolutionize the advertising possibilities on the web.

The first and most obvious is of course mobility itself. With positioning it will be easy to target your advertising on the mobile web geographically making conversions more likely and advertising space bigger. Of course geographical targeting is available today as well, but not to the level of detail possible with mobiles using GPS. I believe this will help to increase advertisers and publishers revenue from ads greatly if implemented correctly.

The second possibility opening up is ease of payment. Often when a transaction take place on the traditional web, credit cards or solutions such as paypal are used, adding to the complexity of making a buy, sometimes even customers bounce due to the fact that they feel it is to much hassle to grab the VISA-card or finding the password for your online bank solution. With platforms such as iPhone and Android implementing transparent payment solutions will make conversion rates pop due to the fact it will be easier for the user to actually make a buy, the integration of the purse into the platform makes a buy more like an ordinary buy in a store. On top of platform solutions for payment, mobile phone operators may implement solutions where they charge the user on the next bill. This is a win-win situation for the operators and the users, operators can start charge percentage on credits not payed within 30 days, and the users get a free payment option, as long as they pay within 30 days. I believe this is where mobile web will revolutionize the web the most.

User Expectations

As soon as the iPhone and Android-enabled web services have grown in numbers, user base and revenue people using these services will start to expect all good services they learnt to like on the desktop web will be available and mobile enhanced. This change in expectations will effect market shares in the long run, as the web services able to adapt and serve mobile services as well as the old plain web services will get more users and bigger revenue.

Conclusion

iPhone and Android will change the way we build, use and monetize web based services. The mobile revolution has just begun, and it is important for companies acting on competitive markets online to implement solutions for their customers, because they will start to expect that mobile services are a natural complement to their traditional web service. These days are interesting times.

Why Traditional Usability Sucks

Maybe your boss, contractor or project owner has just started to be usability-savvy and is planning for usability-studies, personas and interviews in the next big project coming up. You may even have a vision defined on your company saying that you are going to be focusing more on usability. It is good that more people in the organisation identify users as the key to success, too bad they use old metrics to get there. This article will show why traditional usability sucks and how you listen to your users in a more efficient and thus better way.

Traditional Usability

Traditionally usability focus on taking care of user aspects early in a project. The best thing in traditional usability is to be able to identify key user personalities, also called personas, early and stick to those personas until they are proven wrong, then we have to refine the personas to fit reality. A persona can be used to identify people you invite to a usability study to test your interaction designs or even better, your prototypes. If your personas actually are correct and you have managed to find 5-10 people that fits the personas for your study, you should be able to take actions on the things that arise during the testing. They say that if someone has a problem with some of the key use-cases, we have a usability problem. Back to the drawing-board. New prototypes, new tests and new evaluation or if errors are small instruct designers and developers on the issues and possible solutions (patterns).

As you all see, this only fits in large projects never aimed for release or projects where the usability work is more important than the end-user usability. The later happens when someone would like to label their product as “user-friendly” they can say that:

We added years of usability testing, user identification and yada yada yada in to this product.

Often sayings like that translates to:

You may think that this product suck, but we have actually used a usability expert with all the fancy methods to achieve this; It doesnt just suck, it sucks in a way you dont understand. But from our point-of-view this product is usable.

To be honest, most of the time, the reality looks a little bit different than explained above.

The errors:

  • Big projects
  • Personas based on imagination
  • Time consuming process
  • Based on the key assumption someone knows “usability”
  • Based on the key assumption someone knows “the user”
  • Based on the key assumption that we are building something people want

OK, enough ranting, now I have to come up with an idea on how to solve these problems, otherwise I am just another grumpy old man ranting about stuff I tend to dislike for no apparent reason.

Below I have listed processes and entities within your product that will increase the end-user usability without even touching personas, usability testing and “usability experts”. The key to all is agility, responsiveness and user centered development.

Daily releases

By releasing daily. It may be features, bug fixes, smaller or bigger redos, you will come closer to your users, and they will feel that the product you are working on is responsive and fixes things when they arise. Releases in short cycles opens up for shorter experiments as well, test that new listing of news, didnt work? Remove it tomorrow. I am pretty sure that your users will like your approach as it is evident that you are trying to build a better product in the open, and not with your “usability expert”-suit on.

Developer Communities

Talk to your customers. Let the developers and marketing managers blog about the work you are doing on the product. This will invite users to comment on the blog and discuss the upcoming features, bug fixes and releases that will be made on the product. I believe this is one of the big things for services such as Flickr, Digg and Geni. Of course your manager will find some reason for not doing this, maybe he/she will say that you are a public company, and it is important to control information and so on. But that is not an argument, that is just plain old bossing and being scared. Yahoo, Microsoft and Google all blog about their products, of course you can as well. No argument apply from bosses.

Extendable Web and API:s

If you are getting users to your web you must have some content they like. Offer a way for coders and entrepreneurs to use this data. When exposing data as services and API:s you will get enable user centered development. You have your roadmap for your product together with your users, but sometimes it is difficult to achieve everything you have in mind due to resources like time and people. An example of how API:s can benefit your users is Flickr once again, where the best integrated uploading tools for image software (iPhoto etc etc) are made by external developers, and the existence of such tools make the product Flickr even more user friendly.

I bet that in the future there will even be a user-centered and usable application built on Facebook. Nah, just kidding.

Tuning

A lot of websites of today, with old fashioned project-based development, and huge work package releases do not focus so much on tuning of the product. The development is more feature-driven and when one feature is developed and released the development team move on to the next feature and the philosophy of this is easy to understand, but should be avoided. When we run a website, we should tune, tune, tune, tune and tune. This is true for usability, performance, security, conversion rates and so on. By adapting daily releases and Core Teams for Core Products you will be able to tune your product to perfection.

Core Teams for Core Products

Within your website (product) you may have different core products, such as:

  • Community
  • Signup and User Profile
  • The USP (Unique Selling Point)
  • Customer Support
  • Payments
  • Platform

By forming teams around your core products you will get dedicated people working on your product with a big focus on the end-user, and when the end-user is in focus, we will get even better usability, and as the teams are constantly working and blogging about their part of the product they will of course deliver what the user wants daily. This type of organization guarantees that you get people to love your product, both users and developers. But this does not mean that you should arm a fleet for this purpose. Often a small team performs better than bigger ones. It is my strong belief that keeping the number of developers onboard to a minimum will increase your efficiency.

People Dependency

I am going to advocate something that almost everyone who is into organisation and processes dislikes: People Dependency. This is tightly connected to the Core Teams for Core Products thing. By letting people get a bigger responsibility for parts of the product, they will start to care more for that part, and other people in the organisation will know that this person is one hell of a girl/guy to go to when it has something to do with [PROCUCT-NAME]. Responsbility, felt or given, is a key thing when it comes to focusing on users. if you feel that you are responsible for a certain part of the product, you will not let that part die slowly, you will break your neck for giving the users what they demand of you in their blog comments to you.

Product Development not Projects

Die projects, DIE! Often a website can be seen as a product. Products are tuned into perfection and every aspect of the further refinement of the product should be considered product development. The key difference is small steps. By changing something that works in small steps, we guarantee that we at least deliver the quality we had yesterday, but hopefully with a small extra feature, bug fix or other enhancement made, and not as in project based product enhancment, with a big bang that hits the users and reality hard as a rock, and if we are lucky without destroying something that actually worked. Users are not better of with a new product every 10 months, they are better of with a fine tuned product development cycle that focus on giving users something every day in order to make their experience better.

No extra features

By giving users something every day, does not mean that we get feature creep and start adding new functionality to our product every day. We should be careful about that. The key of daily releases is tuning of the existing features and maybe even removal of unusued ones. By focusing on creating the best product available it is important that we can give our users the best features available, but no more than they need to complete the tasks they are using our product for. If we start to create extra features we will end up spending a lot of time tuning the things people may not actually use. Of course there are different approaches to this, but I advocate the few features approach. I think that few features makes it easier for the user to understand what you are offering, and your product will become more sticky to them. But features is a big thing for argument, just compare Zune with iPod. 37signals.com advocates the introduction of fewer features as well in order to create better products for the end user.

User Input based on Analytics and Statistics

This may sound like something that is actually not worth mentioning but it has been known to happen that people sometimes makes assumptions and create things from these assumptions only to be proven wrong. Do not get me wrong, I believe that we must do this in order to find new cool products, but I also believe that we can create more usable products by using all statistics and analysis we can get our hand on in order to getting to know our product and end-user better. But we do not want to get stuck in some Business Intelligence/CRM-crap organisation that makes it impossible to fart without asking the stats first. We want to be agile, and then all of this intelligence must be agile as well. Everyone working on a product should have access to this kind of data, because a marketing manager may draw one conclusion from the data, an analyst one conclusion and a developer another. By making this data available in the organisation end users gets a better product. We must not hide such information for a few managers.

Conclusion

Start blogging, create small teams based on your core products, stop calling people usability experts, start listening to your users, remove features that is not needed, start tuning, focus on product development not projects, release something everyday, create API:s for your content and tune, tune, tune, tune. This will make your product usable.

And remember, there are no such thing as usability experts. Only users.

11 Ways to Increase Your Website Traffic


Create Good Content

The best way to increase traffic to your website, is to offer good content or service. If people like what you are offering, they will come back to you and they will link to you. There is no single technique better than this one for generating traffic to your website. How many links do you think wikipedia, Facebook, Twitter or Firefox has? What they have all in common are great content, in different forms.

Search Engine Optimization

If the Search Engines cant find you, you dont exist. If you cant compete with wikipedia, facebook, twitter or firefox for good content, you have to use all the white-hat SEO-techniques you can find in order to optimize your website for search engines. This can be done both on-site and off-site.

Link Exchange

Contact people who run websites or blogs similiar to yours and offer them a link to their site in exchange for a link back to you. This is a good way to start building links organically to your website. When your website is getting more and more popular, more people will contact you with similar offers. Only link to sites that actually has something to do with what you are offering. In order to maximise the search engine optimization, make sure the links you get corresponds to the keywords you are targeting.

Affiliate programs

If you are selling something online. Start an affiliate program and track referrals and give some of your profit to the one who referred the customer to you. If your offer is ok, people will start talking about your affiliate program and start generating traffic to your site, hoping to convert a user and earn a dollar or two. I think more and more people will start using this as a way to drive traffic to their sites. As it is today affiliate programs are mostly used by big players.

Pay Per Click Search Advertising

There are a couple of big solutions today for PPC (Pay-Per-Click) Advertising. The biggest name in the industry is of course Google Adwords. Yahoo and Microsoft also offers solutions for PPC-advertising. With PPC you either target a number of keywords and buy advertising space next to search result, or you buy advertising space on other sites that fits your targeted keywords and website content.

Banner Advertising

A lot of big blogs offers advertising possibilities for banners. Today the most commonly used format for banners on blogs are the square ones you often see above the fold on the right on blogs such as Problogger.net and alikes. The CPM for these type of banners differ a lot but I am sure you can find a good deal for such banner advertising if you look around the blogosphere. You can also post on webmaster forums such as forums.digitalpoint.com where you will find a big and alive community.

Social Networks

Use your contacts to drive traffic to your website. Use both your offline contacts and your online contacts. Typical examples on driving traffic to your site could be the following:

- Mail all your contacts (if they are part of the intended audience) about your website
- Create a Facebook Group that focus on your new website
- Sign up for MyBlogLog.com and promote your website as a commmunity
- Promote your website on MySpace
- Create a short (fun) movie and post it to YouTube.com
- Change your signature on all forums you are active on to include your new website
- Print a t-shirt with your websites url on and wear it to work and when shopping

Competitions and give-aways

Create a simple competition where you hand out a prize or two. The typical prize could be an ipod and a lifetime VIP-membership on your website. If you really want to build traffic, create a competition that acts as a link bait, making the contestants create natural links in forums and such. This is one of the most effective way to get links and traffic. But you have to have somewhere to announce the competition. I would suggest using competitions when you have started to gain an audience.

Link Baits

Link baits are powerful, but sometimes difficult to come up with. It is important to understand the concept. Link baits are content that gets people to link in numbers. A typical example could be someone naming their child Google, a woman throwing up on live TV, a funny letter, a mugshot or just something stupid. You get the picture? Link baits are important but also a question of timing and luck. Typical content that can be considered link baits is:

- Top 10 lists
- Articles with authority that helps people on a matter where there are a lot of interest
- A funny picture, story or movie
- Unique Content such as screenshots from new software or screencaps from upcoming movies
- Something cool or astounding

Link Building

Link building incorporates a lot of different techniques and approaches. This is long-time job and something that builds traffic long-term. But done right it is going to make a huge difference for your traffic. Link building can contain these approaches:

- Article submissions
- Directory submissions
- Social Network submissions
- Commenting on blogs
- Add link to footer in forums you are active in

Buy Traffic

There are a lot of different solutions available out there for buying traffic, from targeted traffic from adwords to people redirecting to your site from domains no longer in use. As you can see the quality of the traffic may differ a lot and you have to take this into account when thinking of buying traffic. But watch out, dont let good offers fool you, a lot of scams exists out there, if someone is selling 10000 unique visitors for $10 it is probably too good to be true.

In order to maximise the profits from the increased traffic, it is important that you know your front end architecture. Front-end architecture covers a vast range of topics within web development, seo and other areas.

10 Must have jquery plugins and extensions

Below you find 10 jquery plugins and jquery extensions you cannot do without if you are a serious front-end developer

  1. Easy DOM Creation with jQuery

  2. Form plugin

    If you are doing AJAX-stuff, you must have this plugin.

  3. Dimensions

    This plugin should be a part of the jQuery Core.

  4. Interface

    This library solves 90% of your user interface issues. Excellent work Stefan!

  5. Thickbox 3

    Note I have written version 3, I hope this version will be more extendable than the second version.

  6. Tablesorter

    Solves a generic problem on medium-sized datasets, I want to see an ajax-extension on this fetching data on the fly when paging the resultset.

  7. jQuery Form Validation

    Need I say more, this is the mother of all User Interaction Design Patterns, and it is important that someone has taken this beast on.

  8. jQuery Cookie

    Nothing fancy, but a really good plugin. Instead of writing it yourself again, again, again ….

  9. JSON

    JSON is what XML should be, jQuery should support it better in the core.

  10. Simple Star Rating Plugin

    Nice implemented Eye-candy.

Choosing the correct plugins to gain functionality from is an important detail in your front end architecture and should be taken seriously in order to create a future-proof and well built front end architecture.