[Israel.pm] TPF Grant Proto-Proposal for HTML-Widgets-NavMenu
Shlomi Fish
shlomif at iglu.org.il
Sat Jul 8 01:59:32 EEST 2006
This is a draft of a TPF Grant Proto-Proposal (i.e: call for people to propose
grants for this). I'd like to thank Audrey Tang for reviewing an earlier
draft of this and giving some useful comments.
Regards,
Shlomi Fish
About the Project:
------------------
In a message to the Hackers-IL mailing list
( http://groups.yahoo.com/group/hackers-il/message/2407 ) a certain hacker
said that the only safe generalisation was that her code will look like junk
to her within a month, and I since found it to be more and more true.
HTML-Widgets-NavMenu ( http://search.cpan.org/dist/HTML-Widgets-NavMenu/ ) is
a module I wrote about two years ago, as a way to help me generate and
maintain complex HTML navigation menus. See the following Perl.com article
for some of its features as well as general navigation menus patterns that
are supported by it:
http://www.perl.com/pub/a/2005/07/07/navwidgets.html
Version 1.0000, which is the latest available on CPAN is relatively modular,
has a comprehensive test suite of unit tests and system tests with exactly
300 tests, and a full test coverage, for everything except the POD. It has a
well-defined interface and can be used for other things.
However, some things I have in mind for it are not well-supported by the
current code, and may require some extensive modification. The purpose of the
proposed project is to extend it appropriately.
Scope of the Project:
---------------------
The project should do all or some of the following:
1. Enhance HTML-Widgets-NavMenu and make it more robust in handling
semi-expanded trees (where part of the nav menu tree is revelaed while the
other is not.). At the moment, such support is kludgy and may not work very
well.
1.a. I believe this may require translating the state of the nav menu
into an intermediate tree format, which will in turn be converted to HTML.
2. Add support for some arbitrary HTML attributes like id="", class="",
the various JavaScript handlers, etc.
3. Add support for JavaScript (and possibly also AJAX if deemed appropriate).
4. Add support for a XML/YAML/JSON/etc. input and output, and possibly other
generalisations. (like making use of XSLT)
5. At the moment, HTML-Widgets-NavMenu may be somewhat slow. The project
can investigate ways to optimise it, possibly even by re-implementing some
parts of the backend in ANSI C.
My Role in this Suggestion:
---------------------------
This is not a proposal for a TPF grant, but rather an idea for prospective
Perl hackers who are looking for good ideas for putting grant proposals on.
This is in a similar spirit to:
http://use.perl.org/~Alias/journal/29174
I can act as a mentor for the grant, but do not want to do it myself, both
because I have a full time job, am busy organising various Israeli
FOSS-related events, and also would like to encourage other hackers to
contribute to my projects.
---------------------------------------------------------------------
Shlomi Fish shlomif at iglu.org.il
Homepage: http://www.shlomifish.org/
95% of the programmers consider 95% of the code they did not write, in the
bottom 5%.
More information about the Perl
mailing list