The NIN Hotline v4 Roadmap

Something to do for 2006

By Leviathant for The NIN Hotline on January 1, 2006

The way this site is currently run works in a way that no other news publishing system, content management system, nor blog software works. I really like it. But it needs to be modernized. For the past few years, I've done this haphazardly with off-the-cuff PHP scripts and iFrames, but I had enough features I wanted to add that I felt it warranted a from-scratch rewrite. Instead of Perl and Flatfiles, I'm going to use PHP and MySQL.

The more I thought about it, feature creep continued to set in, so I started to pen a road map, as per my friend Tony's suggestion. Then feature creep turned into an expanding scope, and now I'm on the brink of developing a site-independent content management system of sorts. And it's going to take a while. But when it's done, I'm fairly certain it's going to be something I won't need to modify for a long, long time, and that if I do need to modify it, it'll be really easy to do.

In order to speed things up though, I may look into getting some outside help for coding different portions of the roadmap below. Nothing terribly out of the ordinary, it's all established routines and tech, but if I do this entirely myself, it'll take entirely too long. If you are interested in working on this project once I bring it out of this initial planning stage, send me an email with Hotline4 in the subject with examples of your code, your UI design, your page layouts, whatever. This project is an excercize in PHP, MySQL, CSS, XHTML, templating, and minimalism (though you might not know it looking at the road map). At this point, there is absolutely zero money involved. I have a pretty robust server I'll be developing on, but other than your name in lights (err, program credits), that's all I can promise.

Anyway, enough with the blather... here's what I plan to do with the program.


NIN-Hotline v4 Development Information

Simplified Production Outline

  1. News (add/change/delete)
    1. News Labels (Categories) Management (add/change/delete)
    2. News Image Management (add/change/delete)
  2. Articles (add/change/delete)
    1. Article Categories (add/change/delete)
  3. Staff (Internal)
    1. Personnel (Add/Change/Delete)
    2. Personal Settings
      1. Staff Links (add/change/delete)
      2. Staff Page Info (change)
  4. Users (External)
    1. Registration w/ captchas
    2. Login
    3. PW retrieval
    4. Personalization
      1. RSS Feed appearance
      2. Front page story count
      3. Select Front Page Categories
      4. Blog This! info ala Digg.com
      5. Notification?
  5. News Submission Form
    1. Validate Email Address
    2. Multiple File Uploads
  6. Links (add/change/delete)
    1. Validate that link works
  7. Republished External Feeds (add/change/delete)
  8. Site Styles (add/change/delete)
  9. News Submissions
    1. Change Status (new/greenlit/redlight)
      1. Generic reply on status change?
  10. ContactList (add/change/delete)
  11. Administrative Settings
    1. Configuration
    2. Ban Control (add/change/delete)
    3. Changelog (view/clear)
    4. Staff Roles (add/change/delete)
    5. Internal Announcement
    6. External Announcement
    7. Submission Attachment Cleanup

Simplified Delivery Outline

  1. News
    1. AJAX Pagination?
    2. Links to Monthly/Weekly Archives
    3. "Search Archives" box
    4. Registered User Features:
      1. "Blog This" link
      2. "Rate this story" +/- button
      3. set link target if so preferred
  2. Articles
    1. Sort by (category/date/publication)
    2. Display by Date Range
    3. Pagination (AJAX?)
    4. "Related articles" links (author/publication)?
  3. Links
    1. Periodically validate that links work
  4. Staff
    1. Note: Sort staff by post count
  5. ContactList
    1. Improve on current implementation (i.e. "Vote for Only!")
  6. Administration Layout
    1. Login Screen
    2. Dashboard-style Home Page:
      1. Displays 5 recent queued submissions w/ link to full paginated list
      2. Displays 5 recently added stories w/ link to full paginated list ("View (your) Publication History")
      3. "Add a new story"
      4. "Edit your NetCopyDesk settings"
      5. "Manage 'Selected Links'"
      6. "Manage Article Library"
      7. "Manage RSS Republisher"
      8. "Manage Site Stylesheets"
      9. "View site metrics"
        1. RSS Stats
        2. Internal Search Stats
        3. Link Clickthrough Stats
        4. Server Stats
        5. Article Library Stats
      10. "Administration Menu"
        1. View & filter changelog

Brief History

Goal

  • Unified, installable, customizable, localizable MySQL/PHP solution... with pizzazz!

Anti-Goals

  • NO rich text box inputs
  • NO general file management or general image management/galleries
  • NO ad management

Design Principles

  • XHTML/CSS Strict Output
  • Complete separation of design and logic
  • Speedy rendering - template caching
  • Easy to use, easy to read

Priority Production Developments

  1. Submissions (8)
  2. Articles (2)
  3. News (1)
  4. Users (4)
  5. Styles (7)
  6. Feeds (6)
  7. Staff (3)
  8. Links (5)
  9. Contact List (9)
  10. Administrative (10)

Secondary Delivery Developments

  • Rate a news story
  • On This Day...
  • Search Stats
  • Staff Stats
  • RSS Stats
  • Article Stats
  • Submission Search

Future Development Ideas

  • Output Atom (in addition to RSS) Feeds
  • Image Thumbnailling for Front-page news images
  • Custom Error Handling/Logging (404, php, etc.)
  • Integrated DB-driven Site Navigation System
  • Newsletter/Digest version
  • Offsite Image Hotlink Permissions
  • SEO Options
  • Integrate option: PHPbb, Vbulletin login creation into user registration process
  • Mozilla Style IRC link to #ets
  • PDF Output for articles, news
  • DB driven categorized FAQ
  • Privacy Policy type crap
  • Highlightable archive items.
  • User demographic input? Age, Gender, Zip Code, etc.
  • Polls
  • Trackbacks
  • See also: Blog Software Comparison Chart

Usability References