[Perl] Designing the Ultimate Presentation Tool

Shlomi Fish shlomif at vipe.stud.technion.ac.il
Tue Nov 12 12:41:36 PST 2002

To add wood to the fire, I might add that Alon Altman used his own custom
Perl tool to generate the "Basic Administration" Lecture for the Haifa
Linux Club:


The lecture was very good in content and Alon gave a great presentation.
However, that makes 5 Israelis who designed their own tool:

Shlomi Fish, Reuven Lerner, Gabor Szabo, Alon Altman and Shlomo Yona.

And naturally, there are at least 30 more tools on the Net. Each one fits
the liking of the person that originated it, but none of them is a
category killer. So I decided to do a mind experiment and try to think of
the ultimate tool.

Here is the design notes:

1. Renders into a nice directory structure a la quad-pres (with dirs,
sub-dirs, up, down, next, prev work nicely, etc.).
2. Fully standards compliant - X/HTML 1.0 Strict with CSS and good link
3. Can generate DocBook format out of the well-formed HTML. (to satisfy
DocBook lovers.)
4. Several viewing modes: static HTML pages, all-in-one-page, dynamically
by CGI, local on a hard disk.
5. Automatic Syntax Highlighting via gvim, a2ps and similar tools.
6. Input can be written in HTML, WebMetaLanguage, PerlPoint and similar
7. Easy optional integration with Subversion (and assuming it becomes
free enough) BitKeeper.
8. WML - gives custom tags custom templates, etc.
9. Point by point formation. (like Gabor wanted)
10...Inf - what you suggest.

Now, here's how I picture working with it:

$ cd $HOME/Projects/Pres
$ quadpres setup Rindolf
$ cd Rindolf
$ quadpres mkdir intro
$ quadpres mkdir oop
$ quadpres mkdir lisp-features
$ quadpres add simple-file.html
$ quadpres ord simple-file.html \< list-features
$ cd intro
$ quadpres add hello.html
$ gvim hello.html
$ quadpres addimage myimage.png
$ quadpres tweak css
$ `quadpres go-root`
$ quadpres render  # This is not required to view the file by a CGI script
$ cd $HOME/Projects/Pres
$ mkdir YAPC
$ cd YAPC
$ quadpres clone ../Rindolf ./Rindolf
$ cd Rindolf # Now start working on an identical presentation

Very influenced by BitKeeper, but I think it would make for a great
working model. WML can give me most of the functionality for free. It is
not very suitable for real-time rendering, but I think that can be
optimized by converting it into one executable instead of a pipeline.

Now, all I, and possibly some other people have to do is code all this
logic. Is there anything else _you_ would like to see in a tool like that?


	Shlomi Fish

Shlomi Fish        shlomif at vipe.technion.ac.il
Home Page:         http://t2.technion.ac.il/~shlomif/

He who re-invents the wheel, understands much better how a wheel works.

More information about the Perl mailing list