Deep In A Rabbit Hole

The two main things that convinced me to move EXP off of WordPress are:

  1. The writing in EXP is terrible and needs to be subjected to a docs as code rewrite.
  2. The data in EXP is open source but inaccessible due to design
    1. To convert a table from WP EXP to Python is very difficult.
    2. To convert a table from AsciiDoc EXP to Python is a breeze

I am not hacking on WP. It is the open source publishing foundation of the intertubes. I would recommend everyone starting out to use it. However, WP does not fit into my long term goals of an open access, accessible, revisionable, and forkable rule set.

I have chosen to run with Antora using AsciiDoc. This is not easy. One must learn many fresh new ideas.

  1. Git
  2. Gulp
  3. Netlify
  4. Node
  5. NPM
  6. HTML, JS and CSS (fluency required)

And this is before learning AsciiDoc.

Short term hell for long term swell. 

The New Rabbit Hole

Moving into version 6.0 of EXP has raised some interesting problems. I have grown disillusioned of the cruft that accompanies what is essentially a static site in WordPress. Also the massive challenge of parsing the data out of 1000 cascading lines of styling and php and now js makes automation quite a challenge (for a regex rookie like myself).

The XML exports have helped. The new rabbit hole is asciidoc markup. It is supposed to convert to HTML5, PDF, EPUB, DocBook from the same markup. There are many bearded men between that theory and reality. However working in asciidoc is orders of magnitude easier than the ultra bloated HTML, CSS, PHP, JS editor that is Gutenberg and WP. WordPress is still amazing. Just not amazing for my immediate needs.

This image pretty much describes everything.



Into the Unknown

I would rather be turning the game rules (pseudo code) into python code. That is a lot more fun. However I would like to use this tool on the intertubes. The first step is choosing a python library that will let me do that. I had to choose between Flask and Django. Here is what I chose.

This means Flask.