Monthly Archives: March 2014

Search engine optimization (SEO) strategies with Umbraco 7.1.0

FAQ and Glossary page SEO strategies with Umbraco, Angular, and dynamic site content.

SEO issues with Angular

In this article, I will discuss implementing search engine optimization strategies (SEO) with Umbraco 7.1.0. I recently learned from that AngularJS introduces new SEO challenges.  In Angular, code elements are wrapped in double curly braces ({{…}}). Google does not execute JavaScript when indexing website content. Google parses values in the double curly braces ({{ … }}) without actually interpreting what is located inside the curly braces. This means that Angular is great for content that is not intended for indexing, but for content you want people to discover via search engines, you need to use some strategy. One technique is to perform server-side rendering by running the application in a headless browser (e.g. PhantomJS). For best performance, we must pre-load the content into html files through a Node.js backend. We can then direct the search engine to use the output file instead of our actual page. Yes, it is somewhat of a hack, but until we have something like Rendr that works with Angular, we may not have much choice.

Sending Google snapshots of html that has been processed by your JavaScript

Once a sitemap.xml or robots.txt file is created, you can use grunt-html-snapshots to snapshot the files.

“How do we grab the results and sent them to Google whenever the search engine requests access, though?”

To do this, we must use some special URL routing by following conventions:

Here is more information on how this is done:

Here is another good article on how to create and use the HTML snapshots:

How to make sure your dynamic content is indexed

This snapshotting technique also can apply towards content that is dynamic in nature, such as content that is rendered by a database. For best results, it is important to design the infrastructure in a way that enables the content that is displayed to depend upon the URL provided. This strategy operates best with RESTful content (referring to the RESTful architectural principle) and is very compatible with web design patterns, such as Model-View View-Model (MV-VM) or Model-View-Controller (MVC).

Future for Umbraco

Umbraco, particularly Umbraco 7.1+, is an amazing platform, and it is changing the rules of the game. In the future, I will be posting more information on how to sync static nodes in Umbraco with a SQL Server database. In the past, I have written on the techniques required to obtain very good SEO results. While these techniques are very useful in theory, developers are often looking for more concrete implementations to better understand abstract concepts.

Grounding SEO theory with concrete strategies

To this effect, I offer two suggestions:

  1. FAQ pages
  2. Glossary

These two techniques are easy to implement but very hard to master. I will speak about both of these briefly.

FAQ Pages

FAQ pages are similar to glossary pages.  These pages are designed to grab a cluster of keyword phrases that originate from the base keyword phrase.

Process of developing FAQ pages

Several years ago, a consultant from Webtrends suggested that I follow this pattern:

  1. Start with a set of keyword phrases that you want to target.
  2. Choose one or two keywords that you want to form the base of your targeting.
  3. Choose 30-50 keyword phrases that contain your base keyword.
  4. Construct questions from these keyword phrases. Ensure that the keywords are contained in the questions.
  5. Create a web page for each phrase. Place the keywords in these html tags:
  • Meta keywords tag
  • Meta description
  • Title
  • H1 tag
  • body text (paragraph tag)


How to prevent the site from appearing like spam to search engines

Ensure that you apply some variation in how you use your keywords. Otherwise, your site content may appear like spam to Google. For example, in your H1 tag, use the keywords in a sentence. Be sure to answer the question to the best of your ability.

Proof of SEO concept

With this strategy, I was able to land quite a few search pages in the top 10 Google results for this website:

If you check out this website, be sure to notice that the base keyword “lice” is located in the domain name and the keyword “faq” is located in the sub-domain. Having “faq” as a sub-domain (i.e. CNAME or canonical) informs search engines that this URL points to FAQ pages.


Glossary pages

Glossary pages attract a very specific type of user, so it is very important to consider how the person will be using your site. Glossary pages are best when you are trying to provide a resource for people that will frequently refer back to your site. These pages tend to obtain high bounce rates, but if done correctly, they also tend to cause individuals to repeatedly come back to your site. The goal here is not necessarily to obtain an instant conversion. Instead, your goal is to provide a valuable informational resource to people on a particular subject. As people land on your site, they quickly obtain the desired information and usually leave. However, with some strategy, you can still convert these visitors into people that explore your site in greater depth.

Strategy for converting visitors from glossary pages

However, to effectively design glossary pages, it is critical to also offer provide internal links to additional articles for interested readers. This allows casual readers to get desired information and leave while also providing additional resources for more interested readers.  This technique also allows us you to track conversions as people that click on that particular link. The best way to create glossary pages is to create one glossary page for each keyword or keyword phrase that you are targeting. Here is one of Google’s examples of a glossary.

The keys to successful web marketing and conversion tracking

This and the next three or so articles will be on the subject of web marketing. After that, I will shift my focus back to content regarding the political injustices we are experiencing, solutions to those problems, and strategies for improving the quality of government and health care in America. After all, if we cannot reach the right individuals, then we will never be able to change anything.

This article will be about optimizing ad performance and tracking conversion rates in a Google AdWords campaign. First of all, during the early stages of campaign and site design, it is best to use keyword phrases that have low quality scores. By low “quality scores,” I am referring to this definition of quality score: Google Quality Score video. “Why is this?” you may ask. The reason is this: You do not want to use your best keyword phrases in your ad campaign until you have had the opportunity to learn from your mistakes, improve the site design, improve the keywords in your site pages, improve the quality of your ad(s), and improve the content that you will use to lead users to desired pages from your landing page.

The reason for this strategy is because the success of your ads will affect the quality scores for the keywords you are targeting. If you target your best keywords when your site is not yet ready, your quality scores may drop from very high to very low scores. Those low quality scores will now make it much harder for you to compete for those keyword phrases because you now will need to pay much more to obtain top ad positions. If you have worked very hard to design the site perfectly – yet you still obtain poor quality scores for your desired keywords, then you may need to check your assumptions and go back to the drawing board. I recommend that you check your assumptions frequently. Every time I explore what’s underneath my assumptions, I learn something new. When there is a flaw in our logic, it’s usually because there’s a flaw in one of our assumptions. If the underlying functions are unknown, then by trying to figure out what those functions might be, that’s when we tend to learn the most.

The same rule is true when we apply conversion tracking techniques. Conversion tracking enables us to track events that result from a lead like a potential customer clicking on our ad.  What’s important during conversion tracking is to track the right elements. For example, if we apply the conversion tracking code to our website in the header or some other element that loads when the page loads, then we will increment our conversion tracker every time someone loads that page. Since you will already know how many people are clicking on your ad (since AdWords tells you), this is usually an undesirable result. Instead, you must apply the tracking code on exactly the element you want to track. For example, if you want to track when people click on your “contact us” link, then you must attach the Google Analytics tracker to your “contact us” link. If you are using the newer Universal Google Analytics, you can subscribe to events by using this technique.

Building an architecture for innovation

Architectural techniques for improving search engine rankings

Devin Bost

March 8, 2014

One of the great challenges for website developers is providing more content with less time. As languages, frameworks, and platforms continually evolve and become more advanced, it can be easy for a developer to feel somewhat lost among the myriad of options available. Questions that a developer might be faced with are, “How should I spent my time? What should I be learning now? And how will I know if I’m moving in the right direction?” Faced with many technological challenges, it can sometimes seem overwhelming for a developer to sacrifice the time required to add content to the website. When I say “content,” I am referring to articles, FAQs, and other information that will be attractive to search engines and visitors of the website.  Time focused on adding content may take away from time that could have been spent improving the infrastructure. Even after massive time spent writing articles, it is sometimes humbling to see your website only barely begin to obtain modest positions on various searches across the internet. Suddenly, when the web developer realizes that they need to spent time on infrastructural changes, such as preventing spam from filling up their contact forms, it can be very disappointing to see search engine rankings rapidly drop. So, you may ask, “What techniques are available to obtain sustainable growth of the numbers of visitors that find my website?” To this question, there is one ultimate answer: architecture.

I will address this topic by starting with a parable. Consider two architects, not software architects, but the kind that construct buildings. The first architect rushes through the design, obtains capital through loans, and quickly leverages available resources to start constructing the beams and walls of the building. The second architect spends much more time in the early design stages. The second architect ensures that every pipe, every room, every door, and every last possible detail are considered. The second architect performs a thorough evaluation of the climate, soil, and risks of major disaster. The second architect doesn’t begin building until absolutely certain that the building has a firm foundation, a foundation that will not fall. Now let’s jump ahead in time. The first architect has constructed nearly half of the building, but he now realizes that there is a problem with the layout of some of the plumbing. To continue with construction, the top half of the building will need to be redesigned. The amount of money required to perform these design changes will be massive, and without starting over, certain structural consequences of the redesign will render the building weak to natural disaster. This building has been built on a sandy foundation. The second architect, however, was much more careful. Every decision was made with the utmost analysis and planning. As a consequence, the foundation was constructed with the future in mind. The construction was able to occur with much greater organization and cost savings. Once the construction gained momentum, milestones began occurring ahead of schedule. The second architect’s building was built on a sure foundation.

Software architecture has many similarities to the architecture involved in commercial buildings. With a good software framework, the developer may accomplish much. I have seen many developers write web applications in PHP only to later realize that it would be very complicated to build software applications that interoperate seamlessly with their website code. Nonetheless, the key to obtaining sustainable rankings in major search engines depends not upon the content you deliver, but instead upon your ability to allow your users to create content. Think about some of the largest and most successful websites on the internet. How many of them became successful without providing an interactive service? The best software architecture is designed with usability in mind. Is your website simply acting like a billboard? Or does your website provide a service that your users need to have? You must consider what the motivations of your users will be. Many websites want to tell their users what to do and what to believe. But far fewer are the websites that listen to their users and act upon what their users say. Take some time and think about the ten most successful websites or web technologies that you have ever seen. How much of their content is generated by their users?

This architecture is the key to obtaining sustainable search engine rankings. Without good architecture, your site is built upon a sandy foundation.


Reaching physicians with complicated patients

Creating an effective AdWords advertisement

Reaching physicians with complicated patients

Reaching physicians is somewhat of an art. Physicians tend to be extremely busy, and due to their lack of available time, they don’t want to waste their time by listening to some company try to sell them something that they think probably won’t help them. Physicians want to improve patient care, but they don’t want complex software or significant learning curves. To understand how to reach physicians, we must use fewer words. We must also understand what is important to them. This rule is true with any form of marketing, but it is especially true with doctors. Here’s what’s important to physicians:

  1. Improving patient outcomes and saving lives;
  2. Saving time;
  3. Preventing mistakes.

The background of specialty medicine

It is not uncommon, particularly within specialty medicine, for a provider to have a patient with complex multi-drug regimens that may be completely unrelated to the specialist’s area of expertise. Unfortunately, however, it is quite common for drugs with very different domains of pharmacotherapeutic effects to interact in unexpected ways. If a doctor knew in advance that the drug they intent to prescribe, for example, would cause a potentially lethal change in the level of an enzyme that is acted on by an unrelated drug that the patient was taking, then the physician would certainly choose an analogue of the drug, choose an alternative treatment option, or do something other than expose the patient to the risk imposed by the dangerous combined effect.

The vision of drug interactions

A drug interaction tool would provide exactly this service. It would allow physicians to restructure a patient’s drug regimen to ensure that desired therapeutic outcomes are achieved without serious adverse short or long term consequences. Such a tool would also save the physician considerable time that would otherwise be spent trying to investigate the issue by digging through literature and hoping to find the desired information. Such a tool would also save patients considerable money and time, prevent unneeded doctor visits, labs, and tests, and improve their overall satisfaction with their medical care. Although physicians may like to think that they don’t make mistakes, we all know that we are imperfect; therefore, a drug interaction tool would help doctors detect errors and prevent mistakes that could yield harm to patients and costly litigation.

Creating the ad – an invitation without false claims

Unfortunately, in this digital age, there are multitudes of technologies available to the provider that falsely claim to save physicians’ time, reduce medical errors and costs, and improve the quality of medical care. Very few of these technologies are able to justify their claims, and even fewer of these technologies are able to prove the legitimacy of their justifications. Like most of us, physicians really want increased intelligence. They want answers to questions that they haven’t asked yet, but they don’t want the answers until they are ready for them. They want a tool that improves their clinical decision making accuracy, but they don’t want to sacrifice countless hours of their time only to determine if they are wasting their time or not. By developing a service that is free to try and has a very simple interface, physicians won’t need to waste their time.  They can try the tool, and if it helps them, then they will be happy; if it doesn’t help them, that’s fine – they will have wasted very little of their time and none of their money. We try to convey our message in advertisements like this one:

Predict metabolites’ effects.

Improve patient outcomes.

This ad is a simple invitation to come and see. When the free app is ready, we will adjust the ad accordingly.  This ad reflects what the service offers: It provides predictive intelligence that improves patient outcomes. In general, from a marketing perspective, reaching our target audience requires that we use the language that our customers are most likely to use. This is precisely what we have done.