Saturday, January 27, 2007

WK2 - Let's aggregate RSS Feeds with Python!

Hey, did you have a feeling with the power of RSS as i made you known. Do you want to add a function in your homepage that aggregates your friends' blog updatings.

There is a way using Python. Let me tell you something that i know.

First download Python 2.5 here, and second we parse the RSS feeds in Python with Mark Pilgrim's Universal Feed Parser (latest version 4.1) from here. If you don't know anything about Python, you can have tutorial from Python's website (refer to their documentation) and also you can refer to the documentation of the RSS parser. With the powerful module, i hope you can fulfill your dream someday. Since i am still digging into the Python, if you are interested in this topic, join me with the CGI project and make our homepage look more professional!

See you then. I hope the implementation comes out next week.

Reference:

WK2 - A preliminary description upon RSS.

Introduction to RSS


RSS is a family of web feed format used to publish frequently updated digital content, such as blogs, new feeds or podcast.


RSS formats are specifying in XML. RSS delivers its information as XML file called an “RSS feed”, “webfeed”, “RSS stream”, or “RSS channel”.


Most of web browsers and Email readers have integrated support for RSS feeds. Some newsreader software such as Mozilla Thunderbird or Forté Agent is handy usefully to aggregate the RSS news.


How does RSS work? Programs known as feed readers can check a list of feeds on behalf of user and display any update article that they find. It’s common to see an orange rectangle or with letter . It lets people to choose to subscribe.


Most Variously used standard today refers to RSS 2.0 (Really simple Syndication), Rich Site Summary (RSS 0.91, RSS 1.0), RDF Site Summary (RSS 0.9 and 1.0).


RSS module is to extend the basic XML schema established for more robust syndication of content.


History


However, before RSS, several similar formats existed for syndication, but none achieved widespread popularity as using today. The earliest could be dated back to 1995. Ramanathan V. Guha at Apple Computer’s Advanced Technology Group developed the Meta Content Framework (MCF). Guha left Apple for Netscape and adapted MCF to use XML and create the version Resource Description Framework (RDF). RDF can be referred to the first version of RSS.


In March 1999, RSS 0.9 was named and used in My Netscape portal. So the first browser supported RSS was Netscape.


In 2001, AOL’s acquisition and reconstructing of Netscape, RSS/XML was redesigned.


A working group and mailing list, RSS-DEV was set up by various users. They modified RSS 0.91 and claimed that was the property of his company. RSS‘s specification competition begun.


In Sep 2002, a final successor to RSS 0.92, known as RSS 2.0 released, emphasizing “Really Simple Syndication” as the 3 letter abbreviation.


In Nov 2002, New York Times offered its readers to subscribe to RSS news feeds and drove the RSS format’s becoming a de facto standard.


In Jan 2005, Sean B. Palmer, Christopher Schmidt, and Cody Woodard produced a preliminary draft of RSS 1.1, removing little-used features from 1.0.


In Dec 2005, Microsoft IE team and Outlook team announced in their blogs that they will be adopting the icon - orange square with white radio waves the industry standard and related formats such as Atom which first used in Mozilla Firefox browser .


In Jan 2006, Rogers Cadenhead relaunched the RSS Advisory Board in order to move the RSS format forward.


Incompatibilities between RSS 2.x/1.x


As noted in the history, there are different version of RSS, falling into 2 major branches (RDF and 2.*). The RDF, or RSS 1.x branch includes: RSS 0.90 (originated from Netscape RSS version), RSS 1.0 (by the RSS-DEV Working Group), RSS 1.1(updated and replace 1.0).


The RSS 2.x branch includes the following versions: RSS 0.91 (simplified RSS version by Netscape), RSS 0.92-0.94(expansions of the RSS 0.91 format), RSS 2.0.1 (proclaimed to be “frozen”, stand for Really Simple Syndication).


The latest part, later version in each branch are backward-compatible with earlier versions. Most syndication software supports both branches.


The extension mechanisms make it possible for each branch to track innovations in the other. RSS 2.x is the first one to support enclosures (podcasting). However, this extension is available for the RSS 1.x branch. Likewise, RSS 2.x does not support providing full-text in addition to a synopsis, but RSS 1.x can be used as an extension.


The most serious compatibility problem is with HTML markup. Userland’s RSS reader didn’t filter out HTML markup from feeds which led to the inconsistency in how software handles HTML markup.


Atom - New specification to RSS 1.x/2.x


A third group began a new syndication specification, Atom, in June 2003. It adopted by IETF (see RFC 4287).The relative benefits of Atom compared to the two RSS branches are debating within the Web-syndication community.


Supporters claimed its relying on standard XML features, by specifying a payload container that can handle many different kinds of content without ambiguous, and having a specification maintained by a recognized standard organization.


Critics claim that Atom introduces a third branch of syndication specification, further confusing the marketplace.


Reference:

Monday, January 22, 2007

WK2 - My Homepage release now(beta version)!


figure 1 Home Page entry look.

figure 2 Bookmarks page entry look.


Go around for more detail experience and have fun!! Click here!

Sunday, January 21, 2007

WK1 - Web 2.0 - new term to the WWW.

Web 2.0, a phrase coined by O'Reilly Media in 2004, refers to a perceived or proposed second generation of Internet-based services - such as social networking sites, communication tools that emphasize online collaboration and sharing among users.

Since 2004, some technicians and markets have adopted the phrase. However the exact meaning remains open to debate, notably Tim Berners Lee, have questioned whether the term has meaning.

Web 2.0 hints at improved form of WWW. Some advocates suggest weblogs, social bookmarks, RSS feeds, Web APIs, and online Web services imply a significant change in web usage.

At the early time of Web 2.0, which employed as a synonym for "Semantic Web", and indeed they are two concept and they complement each other.

Tim O'Reilly give out his "4+1" level in the hierarchy of Web 2.0 which is embodied by examples of companies or products:
• Level 3 application, the most "web 2.0", which could only exist on the internet, deriving their power from the human connections and network effects Web 2.0 makes possible, and growing in effectiveness the more use them. He gave as examples: eBay, Wikipedia, Skype.
• Level 2 application, which can operate offline but gain advantages from going online, such as Flickr, Webshot.
• Level 1 application, also available offline but gain feature online, e.g. Writely (since 10 Oct 2006: Google Docs & Spreadsheets, offering group-editing capability online) and iTunes.
• Level 0 applications, would work as well offline, such as Yahoo! Local, and Google Maps.
• None-web application, like email, IM tools, and telephone.

Web 2.0 websites exhibit some basic characteristics.
• Network as platform;
• Users owning the data on the site and exercising control over that data (YouTube, weblog);
• An architecture of participation and democracy that encourages users to add value to the application as they use it (Wikipedia, Flickr);
• A rich, interactive, user-friendly interface based on Ajax or similar; frameworks (Google map);
• Some social-networking aspects;
• Public goods.

A web 2.0 website features a number of the following techniques:
• Ajax-based (rich application techniques)
• CSS
• Semantically valid XHTML / the use of Microformats
• Syndication and aggregation of data in RSS/Atom
• Clean and meaningful URLs
• Extensive use of folksonomies
• Weblog publishing
• Mashups
• REST or XML Webservices APIs

Web 2.0 infrastructure may need the following major protocols:
• REST (Representational State Transfer) indicates a way to access and manipulate data on a server using the HTTP verbs GET, POST, PUT and Delete.
• SOAP involves POSTing XML messages and requests a server that may contain quite complex, but pre-defined, instructions for the server to follow.
(in both protocol, API defines access to the service. Servers use proprietary APIs, but standard web-service APIs have also come into wide use. Most communications with web services involve some form of XML.

Criticism issues involve in the Web 2.0:
• What "Web 2.0" actually means, implies, or requires, the term mean different things to different people. (Some company proclaims itself "Web 2.0" for attempting at self-promotion than actual endorsement of the ideas behind Web 2.0. Some people still insist on the idea of Web 2.0, which doesn't mean the new version of WWW, but just continues to use "Web 1.0" technologies and concepts.)
• May cause "a second bubble" or "Bubble 2.0". Too many companies attempt to build up product with lack of business model.

Reference: