Archive for April, 2007

RSS – Really Simple Syndication : What you need to know

Saturday, April 7th, 2007

ARCHIVE POST

What is RSS?

RSS or Really Simple Syndication is a method for, well, syndicating content. RSS files are no more than specially crafted XML (eXtensible Markup Language) files. They include items with usually a description and content and possibly other data such as author, date and a link to the actual content. Content is usually an article, forum post or blog entry, but can be simple page changes to more complex audio or video objects usually referred to as podcast. You should also know that RSS is some times referred to as XML, as that is the underlying technology or as RDF. Content may referred to as a feed, a stream or a channel. A few common icons to indicate RSS are rss, rss and rss, though others are in use as well.

How will this help me?

RSS allows everyone from a web publisher to a blogger to deliver content directly to the end user — you. This save you the time and effort of visiting sites, blogs, forums and other web resources to see if there are any updates. You can stay current on events, news, and other content you find interesting. Your a sports nut? Try the ESPN Headline rssexternal link Feed. Collect coffee cups? A ebay rssexternal link search feed might be what you want. Maybe you want to be informed of the latest Firefox plug-ins rssexternal link. Or you want to know when 3Monkeys rss makes a new post. All of these and many, many more are available through RSS feeds.

How do I use these feeds?

By themselves, RSS feeds are rather cryptic as viewed in most browsers, that is due to the fact that they are intended to be used by other software. This software comes in several flavors, most notably aggregators and tickers. Aggregators either are stand-alone programs or integrate into a browser, mail client or other application, often called an extension, plug-in or add-on. Tickers come in the same flavors. One of these options will allow you to make use of the various RSS resource available on the Internet.

What is an aggregator?

Aggregators collect RSS feeds and display content in an easily readable form. Firefox, allows for Live Bookmarksexternal link, which essentially makes a bookmark group that is constantly populated by an RSS feed. Viewing the RSS feed is as simple as navigating the bookmark group. New feeds can be added by clicking the a icon in the address bar for sites that syndicate a RSS feed. Another option is the Firefox InfoRSSexternal link extension, which uses the sidebar for feed listing. Many RSS Aggregators can be found for Linuxexternal link, Windowsexternal link, Macexternal link and in generalexternal link.

How about tickers?

I personally use a a ticker for the majority of my RSS content. Specifically, I use the RSS Tickerexternal link, extension for Firefox. This displays RSS feed item titles in a scrolling bar either along the bottom or below the address bar. Feeds updates are configurable to certain time intervals and the content can be opened in the current window or a new tab. I can open a single item, all items in a feed or simply all items. Having the ticker just below the status line is unobtrusive and allows me to glance down and scan between coding sessions, picking out those interesting articles. RSS Ticker uses Firefox’s Live Bookmarks as it source which means no extra work for me on adding feeds. Pretty cool.

Is this a fad?

Thousands upon thousands of sites use RSS today, with more starting each and everyday. More mainstream users are beginning to understand its usefulness every day and subscribing to various feeds of interest. With RSS, information on the Internet becomes easier to find, and web developers can spread their information easily. So No! RSS is not a fad, in fact it will be an essential part of the web for the immediate future, that is until the next break-through technology comes along.

Don’t Hurt The Web

Wednesday, April 4th, 2007

I found this on the developer.mozilla.org site and thought I’d share it with my readers. Click the image for the various wallpaper sizes.

moz_ffx_openstandards_264×198.jpg

From the site:

First designed at the 2006 Firefox Developer’s Summit by Sean Martell based on an idea from Chris Beard, this graphic became a smash hit at the SWSW conference in 2007. Now available as a desktop wallpaper in a variety of sizes.

-3Monkeys 

OpenOffice .odt Opened Up – Part 3a: Styles/font-face-decls

Wednesday, April 4th, 2007

Overview

In my last article, OpenOffice .odt Opened Up – Part 2: Meta and Settings, I discussed two of the four top level subdocument elements, office:document-meta and office:document-settings. In this article, I will be taking a closer look at the office:document-styles element, in particular the office:font-face-decls sub-element. As before, my test cases where produced with the following software:

  • SuSE Linux 10.1
  • OpenOffice 2.0.2.7.1
  • zip 2.31 (March 8th 2005)

The Relax-NG schema language is used to define elements of the specification. The original source document can be downloaded here oo_part1.odt, and in particular the subdocument under observation can be downloaded here styles.xml.

The office:document-styles element

The office:document-styles root element contains all font face declarations, named styles, automatic styles and master styles need for the document.

office:document-styles schema

<define name="office-document-styles">
  <element name="office:document-styles">
    <ref name="office-document-common-attrs" />
    <ref name="office-font-face-decls" />
    <ref name="office-styles" />
    <ref name="office-automatic-styles" />
    <ref name="office-master-styles" />
  </element>
</define>

Next let us explore the office:font-face-decls sub-element.

The office:font-face-decls element

This element is actually duplicated in the top-level office:document-content element. A few simple test indicate that, if differences exist in the two sub-elements, complete element omissions in one are populated by the other, and where two elements differ in content the definition in office:document-styles takes precedence, though this behavior is not defined explicately in the specification.

The office:font-face-decls element consist of style:font-face elements. If you remember, we generated our test document by selecting text from a pdf and pasting that text into an .odt. This generated such style:font-face elements as follows:

<style:font-face style:name="EIDQUI+CMSLTT10"
                 svg:font-family="EIDQUI+CMSLTT10"/>

<style:font-face style:name="FFWLFJ+CMR10"
                 svg:font-family="FFWLFJ+CMR10"/>

<style:font-face style:name="GRVNVC+CMTT9"
                 svg:font-family="GRVNVC+CMTT9"/>

<style:font-face style:name="HJCZVV+CMTT8"
                 svg:font-family="HJCZVV+CMTT8"/>

<style:font-face style:name="Lucidasans1"
                 svg:font-family="Lucidasans"/>

With the exception of the last element, this looks pretty ugly. The following is a sample of style:font-face elements taken from a newly created document.

<style:font-face style:name="HG Mincho Light J"
                 svg:font-family="’HG Mincho Light J’"
                 style:font-pitch="variable"/>

<style:font-face style:name="Lucidasans"
                 svg:font-family="Lucidasans"
                 style:font-pitch="variable"/>

<style:font-face style:name="Thorndale AMT"
                 svg:font-family="’Thorndale AMT’"
                 style:font-family-generic="roman"
                 style:font-pitch="variable"/>

<style:font-face style:name="Albany AMT"
                 svg:font-family="’Albany AMT’"
                 style:font-family-generic="swiss" />

The reason for this is that OpenDocument font face declarations directly correspond to the @font-face font description of CSS2 and the <font-face> element of SVG, but have two extensions.

  1. OpenDocument font face declarations optionally may have an unique name. This name can be used inside styles as the value of the style:font-name attribute to immediately select a font face declaration. If a font face declaration is referenced this way, the steps described in CSS2 font matching algorithms for selecting a font declaration based on the font-family, font-style, font-variant, font-weight and font-size descriptors will not take place, but the referenced font face declaration is used directly.
  2. Some additional font descriptor attributes may exist.

Which basically means svg:font-family="EIDQUI+CMSLTT10" uses the SVG font matching algorithm and not the named font. SVG is beyond the scope of this article. Reference material for SVG font declarations can be found here.

Back to the bigger picture. The benefit we can observe from this, is that a predefined set of fonts can be applied to an .odt. By doing this we can ensure that documents contain a consistent set of fonts and eliminate potential redundancy or functional overlap. Care must be taken that if a style:font-face is replaced, that all style:font-name, style:font-name-complex and style:font-name-asian attributes are examined and replaced as well. While potential size gains are arguably minimal, gains in consistent look and output are immeasurable.

One option Open Office gives the user to tackle this issue is the font replacement option. Simply choose Tools -> Options then OpenOffice.org -> Fonts. You should see a dialog similar to the following:

Font Replacement Dialog

Click for full size image

The Open Office user can simply select which fonts to replace with which fonts on an Always or Screen only case. Though this is not always a complete solution. Amore complete solution will be provided in the final installment of OpenOffice .odt Opened Up – Part 3: Styles. I will provide an application that will indeed optimize all of the aspects of the office:document-style elements. Up next is the office:styles element.

Until next time,

-3monkeys