How Should Papers Handle an Online Workflow?

This was the question facing my paper last year, when we were developing a new Django based CMS.

Some background: We (The Daily Gazette) are a small online-only daily news organization. We assign stories at a weekly dinner meeting when editors present story ideas and then our writers volunteer to cover them.

We had gotten really used to using email. The Editor-in-Chief would mail out the list of stories with all the assignments on it to the staff list. This wasn’t a great solution though. Stories got lost or forgotten easily. And since the status of stories constantly changed (a new reporter assigned, a different kind of multimedia attached, the deadline altered), the system was clearly failing us.

When we started our new site, moving from WordPress to Django, we resolved to do it better.

We created a unit in our database (called a “model” in Django-lingo) called a “Story Concept.” These concepts are only visible to our staff and store three pieces information: the assigned staff, notes and description, and a due date. We’re still finishing the system, but when complete our software will automatically email our staff with an up-to-date listing of everything we expect submitted in the next three days.

picture-3All of these stories are always visible on our internal staff page. This means that if a reporter misses a meeting, they can quickly hop online and see every story that our editors dreamed up but couldn’t get a writer for.

Once the stories have been written, it moves to the next model—the article. The first thing reporters do when submitting their story to our system is select the corresponding story concept from a big drop down menu–from then on, the two are linked in our database, and it automatically is removed from our “Claimed Stories” listing (and our daily incoming story emails).

The second flag our reporters have to set is the story’s status. For writers, it is either “Draft” or “Pending Review.” Any story marked draft is only touched by the reporter, since it is easy to destroy edits if two people are working simultaneously. A story marked “Pending Review” has been officially submitted to the night’s editors.

picture-1It goes through a three stage process. First, we have reporters who aspire to join the Editorial Board review each piece. These Reporter-Editors generally do editing and stylistic changes, and when finished they flag the story as “Edited (1).” Then, a traditional Copy Editor comes in (usually a member of our Editorial Board) and does a second more thorough review, marking the story “Edited (2).” In the final stage, another Editor makes sure the story’s formatting is correct, checks all images are properly inserted, and then sets the status to “Published” which sends the story live on the site.

This workflow has been pretty effective, but is constantly getting tweaked on the technical side of things. Until recently, concepts were pointed to articles, instead of the other way around—-which meant that the connection was rarely made by all but the most dedicated staff members. There is no fail safe way to make sure editors or reporters change the flags properly, which has meant that stories have missed their issues because we didn’t realize they were complete. And we have yet to implement inline editing for concepts on our staff page—assigning them is roundabout and difficult.

Still, the ease with which we built this system reflects a lot of the strengths of the Django system: making, storing, and connecting data is really easy, even for fairly inexperienced developers.

No comments

Leave a comment

You must be logged in to post a comment.