About haqistan

Hi, I'm attila, ye olde hacker, grouchy white dude, lifelong vague leftist type taking a hard left in these last years - having a normal one. Not so interested in tech or what people call "tech" now, much more interested in all the things I thought were pointless when I was a young worker bee... I was breaking into computers into the 1970s and turning it into paying work FFS what was wrong with me? Clearly I should've chosen a life of crime. You should be suspicious of me for that if for no other reason.

Okay so this blog used to be some kind of outlet? for my ranting? about nothing? also opinions? which who cares? Like everyone is running some kind of His Girl Friday holodeck program on the side where we are all competing for that big scoop.

I've deleted most of the old posts here, there are still a few that either point to things I think look hella interesting 10+ years on or weren't bad for other reasons.

I do still write stuff on occasion, when I'm not hacking or playing with The Dogs.

I support Black Lives Matter, the BDS Movement, the Palestinian People and anti-fascists in general and everywhere. I support LGBTQ+ people and Indigenous People everywhere in their struggles for liberation.

This site is 100% static content. There are no interactive features or server-side software other than the HTTP daemon that serves the static content. You do not need JavaScript enabled to view anything here.

If you feel the need to comment on something here in public, there are a lot of ways you can do that elsewhere now. If you want to comment to me about something directly see the Contact page for how to reach me.

Previous Incarnations

In the past I ran a WordPress instance and used it to rant and rave about whatever: politics, economics, lots of pointers to outrageous things on the web, etc. It was called "thisland" as a reference to the famously-canceled TV show Firefly. The blog never had anything to do with Firefly, I just thought the "this land" bit was funny. If you got here from an old thisland.haqistan.net link, that's why.

Then I switched to Trac and its blog plugin, but managing the Trac instance has proven irritating for a number of reasons and I found myself increasingly avoiding doing things with it.

Running WordPress and Trac for a while convinced me I don't want that stuff installed on my servers, and furthermore it isn't necessary: I just want a static site and I refuse to jump down the let's write a content management system while pretending that we're not rabbit hole again (I still have water in my ears from the last time).

I've come to the conclusion that I'd prefer to manage my site as plain text. MultiMarkdown is, for me, the perfect blend of simplicity and power in this regard: enough of an improvement over plain old markdown that it's worth using but not so strange or different that it isn't easy to share and work with other people. It is also simple to turn the same source document into either HTML or PDF (via LaTeX). The results are fairly pleasing. It's amazing how much you can do with simple materials.

A Bit of Perl

This site is fundamentally fueled by MultiMarkdown. The final MultiMarkdown files are generated, lightly, by a Perl script named flog.pl (driven by a BSD Makefile, which does have a tiny bit of skulduggery in it). The posts and pages are written in MultiMarkdown and the Perl script analyzes and modifies them slightly on their way into the final directory structure for the blog. It also generates all of the indexes, archives, etc. in MultiMarkdown. All styling is via plain old CSS with no external dependencies. The flog POD has more information for the morbidly curious.

MultiMarkdown's metadata facilities are more than enough to deal with anything blogient: tags, dates, titles, etc. This was one of the key additions multimarkdown made to markdown and I think it is an important one. You can see what use I make of MultiMarkdown by looking at any of the source files to the HTML on this site. I leave the source files in the web tree, since it causes no harm and may be of interest to someone. For instance, the source file for this page is about.md; note that this is the MultiMarkdown file that flog generated from an input file. The file inclusions and other obvious boilerplate are added by Flog on the way to the docroot. The same pattern holds everywhere, with tiny exceptions here and there. For instance, posts get summaries generated for them and tacked on as head matter, while static pages only get an "Updated on ..." timestamp added at the bottom.

To resurrect some of my old WordPress posts I wrote another Perl script named dump_wordpress.pl to suck the juice out of a restored dump of my old WordPress MySQL database. Maybe someone who has to do something similar will find it interesting, since it handles tags (turned out to be tricky). It turns a MySQL database made by WordPress into a directory full of MultiMarkdown files.

Updated on 2022-02-23

Copyright © 1999-2022 by attila <attila@haqistan.net>. All Rights Reserved.