SEARCH ENGINE OPTIMIZATION (or SEO, as it's become known).
It's true that search engine optimization is an art, but understanding the basics of SEO can go a long way to getting traffic to your website or blog for years and years. And really, knowing the basics can sometimes be enough for some websites to get traffic from search engines.
This generally depends on the level of competition for the phrases you wish to be found for. The finance and health niches are typically extremely difficult to rank in, but other, less competitive niches are not so difficult, and, if you follow a few of the golden rules SEO experts apply to each page they work on, you can save yourself the cost of hiring an SEO company and have a go at doing it yourself.
As the search engine optimization industry continues to evolve and Google continues to make changes to its search algorithm, the techniques for attracting search engine traffic also have to change and adapt to keep up. This means that SEO experts are always trying out new things to achieve high rankings. It's like a game of cat and mouse. Google changes the rules, the SEO experts try their best to find out what they have to do to keep up. Quickly.
Yet, at the same time, there are tried and tested methods that are almost timeless. The title tag for instance. For years it has been a major factor in search rankings and I don't think that will ever change. The meta description tag is also important. The meta keywords tag, once the linchpin for all SEO efforts, is now ignored by Google because it's just too easy to manipulate, and other search engines rely less on it now than they ever have. So much so that many bloggers and webmasters leave it blank.
Many experts will tell you that search engine optimization is difficult to learn. To some extent I have to agree, but as I said earlier, there are many simple things you can do when you create a new page for your site, when you add a new product to your e-commerce site or when you write a new post for your blog, that will go a long way to getting you the traffic you want.
All you have to do is learn a little more about those methods and use them.