The Code Style site has evolved by gradual refinement and accumulation of features and content. This review is part of a fully backdated site log and archive that sheds light on when, why and how particular features were implemented.
This log is sometimes updated several times per week, sometimes with a long overdue backlog of items. Many log entries refer to the Code Style Java package that delivers the servlet services and utilities used to manage this site.
Subscribe to the news feed for this log:
Adapted the AnchorPoints servlet to provide independent month- and year-based site log archive navigation, with special cases for "too late" and "too early". The getArchiveUrl(HttpServletRequest) method attempts to get an log archive URL from the request but returns null if the necessary parameters are missing or invalid. Re-structured the conditional logic in the doGet() method and updated the unit test class to cover the new case.
Prepared the new site log archive navigation form with independent select elements for month and year. Still requires some client-side validation to give a more user friendly response to "too early" and "too late" cases, where the selected date combination is not available in the archive.
Extended the Code Style text ad placement throughout the site log archive pages.
Added a number of new FAQ answers and created a new Javascript browser FAQ section.
Changed the first heading in all boxout panels and menu boxes to h2 rather than h3 to standardise the sequence of headings in numeric order according to accessibility guidelines. Added style rules for h2 headings in menu boxes and right-hand boxout panels to make them appear like the original h3 headings. Headings in menu boxes are slightly larger.
#Content .MenuBox h2 {
margin-top: 0.2em;
}
.LftBox h3, .LftPicBox h3,
.RgtPicBox h3, .RgtBox h3,
.LftBox h2, .LftPicBox h2,
.RgtPicBox h2, .RgtBox h2 {
margin-top: 0;
}
.RgtBox h2 {
font-size: 1.1em;
}
.MenuBox h2 {
font-size: 1.2em;
}
Added a range of new FAQ answers to various sections.
Tested and de-duplicated a further set of XML-RPC ping services for the PingApplication configuration file. Most services are cancelled, faulty or require subscription, still only 20 active services remain.
Refined the nested list layout for the FAQ menu box and reduced the margin under table.
.MenuBox ul ul, .MenuBox ol ol {
padding-left: 0em;
padding-top: 0em;
margin-top: 0.1em;
margin-left: 1.2em;
}
.MenuBox ul ul li, .MenuBox ol ol li {
margin-top: 0.1em;
}
.MenuBox table {
margin-bottom: 0em;
}
Refactored ServiceLogClientParser to use a new IPMap class for storage instead of a standard Map. Checked in an ImageDownloader, work in progress, could be used for other resources.
Implemented XSSI links for Amazon books in the HTML & XHTML section.
Created new Java command line FAQ, Java I/O FAQ, and Servlet sessions FAQ by decanting questions from other sections. Aim to have between 15 to 17 questions per section.
Published first font survey results since the reinstatement of the Mac OS X fonts, addition of Windows 2000 and Windows Vista fonts and Linux Maxi fonts. Actually the Linux Maxi fonts were not reported in any survey submissions to date.
Modified all SQL font frequency select statements to count only submissions since the most recent survey date for fonts, particularly for the reinstated Mac OS X fonts.
Added 12 new FAQ answers on various Java topics.
Created SQL scripts to count the number of FAQ questions in each category and each section respectively, to help to help keep them within usability guidelines. Also checked in an SQL script to check premium content URL paths end with a /faq directory.
Tested a number of new XML-RPC service URLs and annotated their status in the ping.properties configuration file for the PingApplication class. Many services have been closed down or give HTTP error responses. Only 20 live ping services remain.
Checked in work in progress on RssAgentLogger to migrate the Metacentric feed reader catalogue to Code Style.
Added 18 new FAQ answers to various sections and created a new Javascript "how to" FAQ.
Split the main method of the FaqMenuGenerator class into two branches depending on a fourth command line parameter, menus or questions, to generate the respective parts of the FAQ content independently. If no fourth parameter is passed, all content is re-generated. Separate methods printMenuIncludes(File, Connection) and printQuestionIncludes(File, Connection) do the work. The original printIncludes(File, Connection) method calls both in turn.
These backdated pages record detailed changes to the Code Style Web site since July 2000, when development first got underway. Some pages may refer to documents or features that have since changed or are no longer part of the site, but the archive is checked to ensure there are no dead links.
For a summary overview, see the annotated site log contents.