René Nyffenegger's collection of things on the web | |
René Nyffenegger on Oracle - Most wanted - Feedback
- Follow @renenyffenegger
|
The Joel on Software Reader | ||
The Joel on Software Reader is a program to read the Joel on Software forums.
Read more on the motivation why I wrote it in my blog.
Classes
Joel on Software Reader consists of the following classes (and files):
Group: Each group that can be read with the Joel on Software reader is represented by an instance
of this class. Currently, these groups are: Joel on Software, Business of Software, Design of Software and Off topic.
Topic: Instances of this class represent topics (or, to use another word, threads) raised in one of the
groups.
TopicItem: A TopicItem represents a single post made to a Topic. Here also, there is a 1:n relationship between
Topics and GroupItems.
Components
SQLite wrapper is used to access the SQLite database.
PCRE Wrapper is a C++ wrapper for
Perl compatible regular expressions (PCRE). I need PCRE to «parse» the HTML content.
This Socket class is used to establish a TCP/IP connection to receive the HTML content.
The MS web browser control is used for the GUI part of Joel on Software Reader.
The flow of the execution can be traced with Tracer. In order to enable tracing, the
macro DO_TRACE must be
#defined . If this macro is undefined,
no tracing will be written.
Download
The Joel on Software reader can be downloaded here: JOS.zip.
The sources can be downloaded here.
In order to compile the sources, you'll also need the
sqlite sources (version 3) and
pcre sources (version 5).
The sqlite sources must be copied into the sqlite_wrapper directory. The pcre sources must be
copied into the pcre_wrapper directory.
Note, shell.c, tclsqlite.*, os_unix.*,
os_mac.* and probably a few more, found in sqlite, are not needed.
Quirks, problems and TODOsTODO in source code
Everywhere in the source code where there is a TODO, it means that I don't consider it elegant code. Or it is not really finished.
This applies also for variables or #defines that contain TODO as part.
Proxy
The program doesn't yet work behind a proxy. Someone suggested using freecap for a work around.
Posting
It is not possible to post with Joel on Software Reader.
Copy (paste)
Although text can be selected with the mouse, ctrl-c doesn't put it into the clipboard.
.NET Questions, Techinterview.org, CityDesk and FogFUGZ
The JoS Reader doesn't display these forums.
There is actually a reason for this: These forums are hosted on
discuss.fogcreek.com while the displayed ones are hosted
on discuss.joelonsoftware.com . I was just too lazy to make the distinction between these servers.
Skinnableness
The application is not skinnable.
Resize
Although the application can be resized, it doesn't resize the width of the column where the postings are displayed.
Refresh
There is no possibility to refresh the application at the moment.
Sorting
It would be nice if the programm sorted the threads in a forum (group): for example first the new ones, then the interesting ones, then those
that weren't marked specifically, and finally those that are marked lame.
Displaying lame threads
Currently, lame threads are not shown at all. Sometimes, one might wish they were shown in order to check if they're still lame.
|