6 01, 2012

Custom Fonts in Internet Explorer 9

By | 2016-11-18T14:24:47+00:00 January 6th, 2012|Categories: Cascade CMS|Tags: , , , , , , , , , , |

During recent projects, integrating fonts for the right look and feel has shown to be troublesome for Internet Explorer. After implementing a font file into a CSS file, Internet Explorer 9 would provide the following error and not show the embedded font:

CSS3114 @font-face failed OpenType embedding permission check. Permission must be Installable.

This error is listed on MSDN and states that:

 The font-face does not have permissions to install with the current webpage.

And to fix:

Obtain the correct permission or licenses for embedding the font.

The only help this really provided was narrowing my search results.  Luckily, I found a nifty program that can be run from the command prompt to correct this error in IE9.  Be aware however, as stated on the publishers download page:

Changing the embedding value does not give you license to distribute the fonts. You should only change this setting if you are the font creator, or something like that. Use at your own risk.

Download embed.exe

Program Useage:

  1. Download the executable and move to the desktop with a copy of the font file. (Alternatively, you can drop this in your Windows/system32 directory)
  2. Pull up a command prompt window.
  3. Navigate to the desktop within the prompt
  4. Execute by typing: embed.exe fontfilename.ttf
  5. Viola, your font should be ready to use in IE9.

More on Font Embedding from MSDN »

4 02, 2011

Caught with the Hand in the Cookie Jar?

By | 2016-11-18T14:46:54+00:00 February 4th, 2011|Categories: SEO|Tags: , , , |

There’s in interesting war of words going on between Microsoft and Google regarding search. An article at Search Engine Land alleging that Microsoft was copying search results from Google was the first salvo in the war. Microsoft followed up by accusing Google of click fraud.

The gist of Google’s claim, seems to be that Microsoft’s uses the data collected from the suggested sites/Bing toolbar feature to populate Bing’s search engine results even if the search results come from Google’s website.

Microsoft’s defense appears to be that they do incorporate the results into Bing, but it is one of many parameters when ranking a link. That the scenario Google executed was not legitimate since Google created false links to nonsensical search terms and then had there employees click on those links.

Who’s right and who’s wrong? Well both are right and both are wrong. Google’s honeypot essentially peeled away Microsoft’s aggregating of the parameters used to rank sites. By using uncommon search terms, Google was able to populate a false relationship between the search term and the site. If a popular term had been entered, the other parameters would have minimized the ranking. Microsoft however is using the search results from a competitor as part of it’s ranking algorithm. They are just letting their end user’s be the means of populating the data. Google’s honeypot just showed that when the other parameters are not relevant, then Google’s results will appear.

27 12, 2010

Microsoft and the big Poopy.

By | 2016-11-21T17:20:06+00:00 December 27th, 2010|Categories: Web Development|Tags: , , |

The other morning, when my wife and I went to get our boys, we had one of those moments parents both love and hate.  When we opened the door, we were greeted by a smiling giggling toddler.  G. looked at us, smiled and said “Big Poopy!!” then held his arms apart to to indicate something being big.  This statement was then corroborated by our nostrils.  As parents we were appreciative of the warning and hopeful that this may be the first step in him being ready for potty training, but we were also dreading the cleanup.  After all, how big does it have to be for a 2 year old to say it is big (it was).   Later that day, Microsoft gave me a “big Poopy” moment

I was reading an article about Microsoft’s plans for Internet Explorer 9 to support HTML5, the work in progress update to the HTML standard.  Microsoft has announced it will be supporting the version under the governance of the World Wide Web Consortium (W3C), but not recognize the Web Hypertext Application Technology Working Group (WHATWG).  As a developer this fills me with hope (the new features of HTML5) and dread (Microsoft’s definition of “support” and “standards”).  HTML5 will be offering several new tags to add features that currently have to be done via third party mechanisms and should really enhance  the web experience for end users.  Microsoft’s implementations of standards in the past has been less then thrilling however (IE6 anyone).  In fact I just encountered a “bug” with a standards issue in IE 8, that has been around since IE 6.

For several days, I had been working on an update for a website that required the use of cascading drop down boxes using AJAX.  The goal was for the values of a drop down box to be populated from a database, based on a previous value selected by an end user.  All seemed to going well, until I tested my code in IE8.  In my other browsers (Firefox, Chrome and Safari), my AJAX code worked fine, however it would not work in IE8.  When my code was executed, an extra “option” tag was being pre-pended to the HTML string, thereby blowing up the HTML in the select boxes.  My code was using the “innerhtml” attribute of the Document Object Model (DOM) to do the update to the select box, however Microsoft’s implementation of the DOM standard has had issues with the “innerhtml” attribute since version 6 and has not addressed it.  After finding this out, I had to rip out my code and rewrite it using JQuery. This lack of addressing bugs with existing standards, makes me very wary of Microsoft’s support of “New” standards.  This trepidation is further exacerbated because HTML5 makes extensive use of the DOM.

Microsoft and my son’s pronouncements that day give me hope for a less messy future, but both still make me fear the cleanup. The worst thing to happen would be if Microsoft causes a fracture in the standards and developers have to continue to browser specific code.