Table of Contents
Animal Farm
As a writer, I love sitting at my computer and either writing my next novel, or working on the development phase - world-building, character creation, plot development etc. However, after 12 hours sitting at my desk I'm getting a bit uncomfortable and if I listen very carefully, I can hear the sofa's siren call… Breaking free of the desk has been something I've been working toward since the middle of the year.
Raspberry Pi
The Raspberry Pi is a credit-card sized computer. All you need to do is put an operating system on an SD card, connect the Pi to your network, plug the Pi into a socket and it works. You can either plug a monitor/mouse/keyboard into it, or control it from another computer.
With these I have built a clock that tells the time anywhere on Mars, a NAS (put some hard drives on the network), a Pi-Hole (eradicate adverts), a Cron Server (fetches data from NASA and updates various pages in the Aardvaark section of this site), a music centre and a laptop. They are extremely versatile.
I installed SyncThing, which is like OneDrive or DropBox, except I can sync multiple folders with diskspace limited only by the amount of space on the computer with the least space on it, and instead of synching with a folder “in the cloud”, it synchs with a folder on my NAS.
I also installed a VPN so I can access my network and all its resources from anywhere in the world - as long as I have internet access. As soon as I'm connected through the VPN, SyncThing will work and sync with the NAS (if necessary).
With a network, a NAS, a desktop and laptop, a VPN and SyncThing, the stage is almost set.
Windows/Linux Problem
The problem, for me as a writer, is that there is very little in the way of software for novelists that is available on both Windows (my desktop machine) and Linux (my laptop).
I usually use Scrivener. I've been using that for nearly a decade, and as well as being very happy with it, it is a very comfortable environment for me. There is an old version of Scrivener that is available for Linux, but the data files are incompatible with current versions. I don't like using traditional word processors, and if you've ever tried searching backwards or scrolling backwards through a 500 page document neither would you.
There are other programs out there: some of them are online (I need them to be able to work offline), and some of them just don't work the way I want them to.
One program that worked equally well on both platforms was Zim-Wiki, which is a notepad program that stores notes in projects and orders them hierarchically. A quick test showed that it synched seamlessly using the NAS as an intermediary. Zim is created from code that came from the DokuWiki project - the same wiki software that drives this website. It's a useful tool, and I use it a lot in the development phase of any story, however, I wasn't keen on actually writing a novel with it.
If you look at the treeview on this site, you can probably see possibilities. I could create one branch for the manuscript, another branch for research, and another for notes - all very similar to Scrivener. I can do the same in Zim, but Zim is an encapsulated program. This website I can open in multiple tabs and have each tab viewing a different page. One that I'm editing, one displaying notes or research… or another scene, chapter etc.
Wiki Farms and Animals
It is possible to set up a wiki as a wiki farm. This is where the software is installed once, but several (perhaps hundreds) of wikis run from it. Each wiki takes the settings of the main wiki (the farm), and it is possible to then tweak those settings on a wiki by wiki basis.
The main (or default) wiki is known as the farm, and the other wikis are the animals. If you're getting a George Orwell feeling at this point, then good, because he was an author and so am I (although perhaps not in the same league).
My plan at this point is to set up another Raspberry Pi as the host for this farm, with data being stored on a hard disk rather than an SD card. There is a plugin for DokuWiki that makes creating, deleting and configuring animals very simple. Each animal would, in this case, be a new novel.
With the VPN, I can access this from anywhere in the world, and all I need is a web browser. Further, I'd be editing the same version of the files. However, prudence would dictate that I create a local copy on my laptop using SyncThing, so if I'm unable to connect to the internet, I can still continue working. As long as I power up the laptop when I get home, everything would get synched.
The other major advantage of DokuWiki is that it creates a backup in the form of a reverse-delta file of any page that is edited. That way I can always roll-back any changes or simply review an earlier version of a page and copy the bits I want from it.
The next article, Animal Farm Part 2 describes how I configured the farm and got it all working.
Discussion