
Goodnews
=========

:copyright: 2005-2007 Stian Husemoen <stian.husemoen@c2i.net>, based on the
	    Snownews RSS newsreader by Oliver Feiler 
:license: GNU Public License 2

Goodnews is a very simple text-only RSS reader written in Python.

Goodnews was originally only meant as a python port of a small text
based RSS reader called Snownews so I could learn how RSS worked, but
since the Snownews code was difficult to follow and modify I started
changing it to something more useful and saner (too me) and little of
the original Snownews left in Goodnews. Even it's UI are no longer
comparable.

Goodnews's UI a modeled after pico and pine and should be simple
enough to start using without reading any documentation. If that's not
the case, maybe you can tell me how to redesign it so it becomes
true? :-)

Goodnews was originally only intended for me and my itch, and not for
the general public, so it was very poorly written and very unstable
(because I knew which buttons to push to make it cash I could just
stay away from those buttons if I wanted it to keep running :-) I'm
just now cleaning it up and releasing it so bear with me here. If it
crashes on you please send me a bug report so I can fix it, or better
yet send me a patch :-)

At first Goodnews tried to parse the XML itself (because the
motivation for writing Goodnews was to understand RSS) but since RSS
is a mine field of different half standards (which no one really
follows apparently) making a good RSS parser is very
difficult. Because of this, Goodnews uses the excellent Universal Feed
Parser [1] module written by Mark Pilgrim to parse feeds. A copy of
Universal Feed Parser is included in the distribution. Please note if
you get weird characters or parsing error this is most probably cause
by the Universal Feed Parser and not Goodnews, since Goodnews just
displays the parsed text received from Universal Feed Parse without
really looking at it (which really is the wrong thing to do because
HTML is allowed inside some of the XML tags).

The Goodnews code is not very pretty, if fact it's ugly as hell, and
many would say in bad need of a rewrite, but it won't happend. Even
though I would produce significantly better code today, if I decided
to start over, I'm actually using the Goodnews code to test out a
thesis put forward by amongst others, Joel Spolsky, in his blog entry
in 2000, that states: "Never rewrite!". It's proved a fun test to
maintain and transform Goodnews ugly code, but it actually works :)

.. [1] Universal Feed Parser is located at http://www.feedparser.org
.. [2] http://www.joelonsoftware.com/articles/fog0000000069.html

--

© 2005-2008 Stian Husemoen <stian.husemoen@c2i.net> 


