Hello World!

I’ve recently installed WordPress on my new site and this is my first blog using WordPress. So far, WordPress seems really cool. When I first started my website, I wanted to start a blog as well as have syndication capabilities. I didn’t know the first thing about the technical aspects of syndication so after a lot of reading I created my own blog and RSS 2.0 feed by hand using standard HTML and XML. I wanted to create them by hand for learning purposes but I have quickly found out how much work it is to maintain a blog and feed manually. I am satisfied that I have learned the fundamental technical aspects, so I decided to find blogging software to use on my site. I’ve found Wordpress, and I really like it!

Below is the one and only blog entry I made on my “hand-made” blog. Since I’ve made the switch to WordPress and I’m no longer using my old blog, I will post it here because I think it’s very interesting and I hope you will to.

How to Create Your Own RSS Feed
Posted: 2/27/2006

My exploration of RSS started when I decided that I wanted to have a blog of my own. I started by visiting sites where I could create an account and all the technical aspects would be done for me. All I had to do was sign in and write my blog entries. But I wanted to host a blog on my own website. That is when I discovered that if I wanted to syndicate my blog I would need an RSS feed. Sure, I could have taken a much easier route and downloaded software that would take care of everything for me, but I wanted to learn how to implement this technology on my own. I wanted to do this primarily because I have just as much fun learning and creating the technology than I do blogging. In fact, I suspect that the maintenance of my blog and feed will be just as fun as blogging itself. I also believe that when I’m learning something new it’s always a good idea to learn the stuff under the hood before going to a system that does all the work for me. This way I develop a solid set of fundamental skills. So, voila, the urge to have a blog of my own turned into an entire weekend project.

When I first started my research, I had some knowledge about web technologies. I would consider myself an expert with HTML and Cascading Style Sheets. If you don’t have this knowledge you will have quite a bit more learning to do than I did. I am an absolute beginner with XML and XSL however.

What is a feed?
A feed is simply an XML file that contains certain tags that will enable your browser and reader to identify the file as an RSS feed. The XML file contains the titles of your blog entries, a link to each entry and a description. Here is a great link describing the required tags for an RSS file. The XML file is uploaded to the server that is hosting your website. Here is my simple XML file for an example:


<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" 
  href="feedStyle.xsl"?>
<rss version="2.0">
  <channel>
    <title>Keri Jenson's Blog</title>
    <link>http://www.kerijenson.com/myblog.htm</link>
    <description>Keri Jenson's Weblog</description>
    <language>en-us</language>
    <pubDate>Mon, 27 Feb 2006 22:32:10 GMT</pubDate>
    <lastBuildDate>Thu, 09 Feb 2006 15:59:10 
     GMT</lastBuildDate>
    <ttl>1440</ttl>
    
    <item>
      <title>How to Create Your Own RSS Feed</title>
      <link>http://www.kerijenson.com/myblog.htm#001
          </link>
      <description>My exploration of RSS started...
          </description>
    </item>

    <item>
      <title>The Second Item to Check Out</title>
      <link>http://www.kerijenson.com/myblog.htm#002
         </link>
      <description>This is the second article on my 
          Web site!</description>
    </item>
    
  </channel>
</rss>

Why have a feed?
A feed is not necessary to have blog. A blog, after all, is just a weblog; a web page with your entries. However, a feed allows users to keep track of updates to your blog without having to visit your website. People who are interested in your blog simply visit the URL your feed (XML file) is located at, copy the URL and then paste that URL into their reader. Whenever you update your XML file (your feed), the users’ reader will detect a change and download the new blog entries (or whatever kind of media you wish to syndicate).

What is XSL and why is it relevant?
XSL provides a way to convert XML to HTML so that the XML file is rendered in the browser in a more readable fashion. It’s a good idea to apply a XSL stylesheet to your XML file to pretty it up. If you don’t, people who visit the link will see the contents of the XML file exactly as it written. This could confuse non-technical users who could mistakenly believe they got there by mistake or that there is some kind of error. Applying a simple and basic style would avoid the possibility of this happening. Technically, it doesn’t matter whether or not the user can read the webpage at all because the purpose is just to copy the URL. Despite this, it is more user friendly and will help those that are not very technical.

I’ve recently installed Internet Explorer 7 beta 2. IE 7 renders RSS feeds in a standard format. I actually like this because your personal feed looks more professional and credible when it conforms to standards and looks exactly like the feeds that belong to a company who they have come to trust. I believe that there is a way to turn the “auto format” feature off, so it is still a good idea to have a stylesheet for those who don’t use this feature.

What about the blog entries?
Your blog or news entries will be located in separate html or asp web page(s). After you make a new entry to your blog, you will then update your XML file to reflect the new entry so that your user’s readers will detect a change and download your new entry. It is a good idea to have the standard RSS orange icon that links to your feed on this page so that browsers who come upon your page know where to go to subscribe.

How to make feeds discoverable?
IE 7 and Mozilla have a discovery feature where an RSS button lights up on the browser when the browser recognizes that the current page has a link to an RSS feed. To add this functionality to your own page simply add this tag into the head of your html file:


<link rel="alternate" type="application/rss+xml" 
title="The Title of Your Feed" 
href="http://www.yourURL.com/rss.xml">

Of course, there are more complex subtopics of RSS such as Trackback where websites communicate with pings so that receiving sites are informed that the sending site has referred to a post. But I am also new to this technology and I will make posts as I continue to learn. In the near future, I will post a blog on how to display syndicated news via RSS on your own website. For example, I may want to display the latest headlines from MSDN and have them updated automatically.

Happy blogging!

Glossary:

  • Syndication: The sharing of news and web content or the publishing of a feed as an information source.
  • Web Feed: A document which contains items of summaries of blog post with web links to the full version. The most popular web feed document formats are RSS and ATOM. A web feed allows users to subscribe to a website that change or add content regularly such as a blog, similarly they provide a way for a website owner to distribute their news.
  • RSS: Really Simple Syndication is a web feed format specified in XML that allows syndication of news and web content.
  • ATOM: A second web feed format specified in XML that allows syndication of news and web content.
  • XML: Extensible Markup Language is a text-based language that is capable of describing different kinds of data in a tree-based structure.
  • XSL: Extensible Stylesheet Language is used to transform XML to HTML for better presentation in a browser.
  • Blog: Short for weblog where conversations are posted on a web page. Blogs are often focused on an area of interest or personal experiences.
  • Render: How an image is generated on the monitor.
  • Reader/Aggregator: An application (Windows based or web based) that reads and organizes RSS and ATOM feeds and displays updated articles it finds.

Leave a Reply

You must be logged in to post a comment.