Hacker School, Tuesday, July 1st, 2014

On Tuesday I made some progress toward the Protagonist repair functionality.

I also started porting off of Blogger so I can have more control over content here, including getting these blog posts out of your stream, if you are subscribed for my posts, but don't want my logs.



  • Begin implementing repair: a script to make sure that files in the tagsystem still match the filesystem they map to. The intended use is somewhat like the way in unix locate relies on mlocate to regularly run updatedb to index all files.

    The repair function should do three things:

    • Find files that are in truenames but not tagged with any tags, and remove them.
    • Find tagged files that have been moved on the original system, and update their truenames entry.
    • Find tagged files that have been removed from the filesystem, and free the space by releasing the hard links.


  • Start porting subsymbol.org to Nikola, so that I can have better control over the structure of the site. In particular, I want to let logging posts like these accumulate in the background, while keeping the front page clean and more professional.



  • Wrote a function that finds all places in the tagsystem where a given file is tagged. This will be used to discover when a file has no more tags and can therefore be removed from the truenames index. It can be run by the repairer, but it can also be run whenever a file is untagged, to check for the case that there are no more tags on the file.
  • Put this function into untag as just described.


  • Looked at the Nikola docs, tried out the demo, and figured out how to port subsymbol using the import_blogger plugin.
    • This was really straightforward and easy. Before I can complete it, though, I need to do two things:
      • Rearrange the imported sections a little to reflect that I want a site, not a blog.
      • Get new hosting set up, which I'm not really sure how to do.