GNOME Webhackers
TODO List
Bugzilla is the master location for reporting and prioritizing issues
with the Web site. The list below are some pointers about how we want to
complete our high priority tasks.
- Missing documentation
- All the user documentation is missing from www.gnome.org/learn.
We need to update the cvs-update-gnome-user-docs script to generate
the many page, single page, tar.gz, and PDF resources. We need
to run the script for 2.0, 2.2, 2.4, 2.6.
- Broken links
- We have some broken links on www.gnome.org
and developer.gnome.org. In some
cases the links are typos, others are because of moved assets. We
must decide how to handle dead links in historical documents like the
GNOME Summaries, do we remove them?
- Invalid markup
- Invalid markup slows page rendering and may cause display problems too.
Use xhtmlvalid.sh to make a report of invalid pages.
Use tidy or
xmllint. to fix the pages. Note that many
older pages are not XHTML and they should be converted (see below).
- Broken layout
- The layout of many pages were broken when they were added to our site.
This is often caused by incompatibilities in the page structure and the make
scripts. In some cases on d.g.o, complete pages were committed instead
of body fragments, causing multiple banners and navigations to appear.
- Wrong encoding
- Some of the pages on the site are not in UTF-8. Use the
report-nonutf8.sh to locate content that
needs re-encoding. Use iconv to fix a page
or the conv2ustf.sh to fix a group of pages.
- Convert to XHTML
- We want to follow the standards, and we want pages that are easy to
mine and transform using XML tools. Use
xhtmlvalid.sh to make a report of invalid
pages. Many pages need a lot of love to get them to clean markup. Tools
like tidy can clean up a page, though it
cannot be trusted to make every decision correctly. Fixing a group of
pages that have the same problems usually calls for sed and a shell
script. Note that many sections of the site, like documentation, is
generated; the page cannot be fixed (see below)
- Convert API and documentation generation scripts
- Content that is generated from DocBook, XML or SGML should be output
as XHTML. Locate and update the scripts to make valid XHTML.
- XML nav tree format
- XSLT processing for nav tree display, esp wrt. reflecting the present
page
- Add subdomains to bugzilla
- Check that users can report bugs and request changes to all the domains
that make up the GNOME Web site (www, developer, mail, etc).
- Add status to pages
- We want pages to indicate their status to users to ensure they
understand the value of what they are reading. We need a set of statuses
that indicate the life of a document (draft, current, deprecated, obsolete).
We must add the presentation rules to CSS, a watermark for instance.
develop a simple means to change the status of a group of documents, by
changing their style sheet.
- Create library.gnome.org
- We want to setup a domain that will be a repository for documents that
are valuable even after they are obsolete. We must setup a domain, and add
a vhost to serve it. The library content will be generated from a new module
in CVS. Content that has historical value from the primary sites will be
moved into the library module. Documentation that is versioned is a
prime candidates for migration. Scripts that generate API documentation
should be updated to put the files in the Library.
- GNOME software map
- The software map was shutdown after a security breach. We want to move
away from an application-based catalog of GNOME software. Our software
section should be generated from data provided by the software's project
(possibly pulled by CVS). The new software section should provide information
for users and developers. The pages must conform to style of the Web site.
- Search
- We do not have a search engine, and our aversion to applications makes it
a challenge to add one. We must either build a hardened server to host an
application (htdig, Lucene, ...) or locate a public engine (Google) that
can provide the indexing, queries, and returns our users need.