Restructuring my blogging workflow
It came to my attention a few weeks ago that I needed to restructure my blogging workflow. So I did.
The problem
As I added scripts to my workflow to handle images (as described in my most recent post on image-handling), I realised there was no clear separation between the code I was writing, the account details I was using, and the content I was writing.
While I wanted to version the code for others to potentially use, I did not want them to be forking my entire blog with it, or worse still using my access keys and client IDs and so on. It was time to tidy up my workflow.
The solution
The solution was quite simple really. Create three folders: code
, content
and userdata
. Move all the shell scripts I have written into code
, move all the actual material for posts (drafts
, archives
and posted
folder) into content
and put my account details into userdata
.
Under both code
and userdata
I created folders for Scriptogram and Picasa. This acknowledges the possibility of using other tools/platforms to carry out the delivery of my blog posts and the hosting of my images. For now those are the only two tools accounted for.
It took a while to re-organise but here is the new directory structure:
/.
|__ /code
|__ /picasa
|__ authenticate-as-device.sh
|__ poll-for-access-token.sh
|__ post-image.sh
|__ refresh-access-token.sh
|__ /scriptogram
|__ autoscrp.sh
|__ archive.sh
|__ newdraft.sh
|__ publish.sh
|__ /content
|__ /archives
|__ /drafts
|__ /images
|__ /posted
|__ /userdata
|__ /picasa
|__ /scriptogram
|__ .gitignore
|__ README.md
This is such a significant change – and, dare I say, a sensible one too – that I decided to change the minor version number for the repository. So this code is available in release 0.1.0 of my workflow.
What next?
There is still a lot to do. Centralising the handling of links. Thinking about a master versioning system for content, outside the independent little repositories for each post. And creating a preview script so that I can start to experiment with the look and other aspects of the Scriptogram platform, and perhaps other platforms too.
But hopefully this change will enable to explore these next pieces of work much more effectively.