Session 07: Ad-Hoc Upgrade (and Content Back-Filled)

Session 06: System Design and Implementation
Session 08: Steps and Timeframes (part II)

Hi! Welcome to this notes session for the Online Notes project for Cryptiquest. Today marks a special day as this post marks the final bit of back-filling.

During the last session, I loosely described the steps I took to put the site together. I spent time to create all the sessions leading up to this one and I also created a new page for the site: “All Project Deliverables“. This was an impromptu build, after creating a list of deliverables for three different projects (including this one) I wanted a place to track and store the progress on such tasks.

Tables native to WordPress are slow to create so I looked for a dynamic table plugin – one where users could sort the rows by clicking the table headers and found one that seemed to work nice. I think it’s possible to have it link to a Google Document where I could update the data quickly and update the content on the site but I haven’t attempted it yet. Will consider doing that in the future.

When creating the table, I started by plotting out what information I wanted to track: deliverable name, post link, project name (and link), creation date, completion date, status, and notes.

Then I created the columns. Then I added the data. Once it was complete, I realized that some information was missing. For instance, I decided I wanted a “priority” column. This took about an hour to determine how the priority system should work and I’m still not convinced it will work long term. Right now, the priority system is by number (for easy sorting) and follows this system:

  1. Numbers to the left of the decimal point represent the priority of the project (larger numbers should be completed first). 0 denotes a finished task.
  2. Numbers to the right of the decimal point represent the priority of the task following this definition:
    • 8 – 9: Multiple projects rely on this
    • 6 – 7: No tasks rely on this but it’s a priority
    • 4 – 5: Lots of tasks within the project rely on this
    • 2 – 3: One or two tasks within the project rely on this
    • 1: No tasks rely on this and it is not a priority

So, a deliverable that has a 20.4 means that it is a project with a priority of 20 and it has lots of tasks within the project that rely on it being completed. The reason I added the project priority to the left of the decimal was because new projects will pop up that I can place within the priority stack by giving it a number based on the currently active projects.

As of this writing, there are three different projects, listed with a priority of 10, 20, and 30. The 30 project has higher priority than the 20 and 10 projects and the 20 project has higher priority over the 10 project.

If a new project comes up (they always do), I can give it a number to reflect its place in the queue. If the new project is more important (and needs to be completed first) I could set the deliverables to 40.x. Then, when I sort the table by priority, those tasks will appear at the top of the stack. However, if I want to add a less important task (I have a lot of projects on hold that I would love to add to the queue) I could give it an “in-between” number, say “15” and those tasks would then show up between the 20 and 10 project tasks.

As tasks are completed, their priority number becomes 0 so once a project is complete there are no more tasks that have its priority number (once the 30 priority project tasks are complete, the next tasks will have a priority of 20). That means if a new, more important task pops up, I can use 30 again as the priority number.

The other change I made was that I removed the completed date column, figuring I could just put the date in the status column. I had to change the date format for this for sorting purposes (year-month-day) and as much as the inconsistency bothers me, I think it’s of little consequence (for now).

Anyway, that’s pretty much how the table was created and why I made the decisions I did when creating it. Now that the content has been back-filled, I can return to the working schedule for this project – which is what I intend to do during the next session.

Session 06: System Design and Implementation
Session 08: Steps and Timeframes (part II)