I guess we need to differentiate between two things here; 1) Buying a tool or a piece of software that will supposedly get you ranking on all your key terms in a week and 2) Hiring a specialist who will develop the SEO of your website as an ongoing project and gradually get you ranking.
Option 1 is typically a waste of money, whereas for most businesses option 2 is a must. Most businesses that operate on the internet are not totally 100% focussed on the internet alone, i.e. a Real Estate Agent's core business is selling houses and the internet is a vehicle to create exposure which will in turn create sales. To try to learn something as complex as SEO from day one will typically pull you away from your daily duties.
Before the internet was born you probably used to advertise in newspapers and magazines, but you didn't start to plan where the Daily Express or Property Guide should distribute their copies!.
I would advise any business to either contract in an expert to help you with SEO, or at least attend courses, seminars and read up a lot before attempting it yourself. Good SEO professionals are in high demand, so they will usually walk you through every step of what they do so you can carry on after they have worked for you and they move on to their next project.
In terms of Miss J's thoughts, I think the world of blogging is very different to delivering traffic to a typical website, blogs do tend to get picked up and spidered a lot by the search engines as the content changes so much. Blogs can go viral really quickly, especially when linked to eachotehr in the way Miss J outlines.
Beware of blowing all your budget on mediums such as Google AdWords etc, you may be number one on your key terms today, but then the pot of gold runs empty and you have no lasting results!.
Christian