Simplicity, carried to an extreme, becomes elegance.
In this modern word of FooBooks and BarSpaces, personal web pages might look like an abandonded technology, but I like them. I encourage everyone to have one.
I am not a web designer, as should be painfully obvious from these pages, nor do I intend to become one. Indeed, I wish most web designers were doing less design and focusing more on helping people deliver accessible content.
Content, in my case, is mostly text, so that's what I'm trying to deliver. I try to follow standards and try to avoid using images for decoration or for navigational purposes. The images that I use on my pages, mostly photos, carry at least some meaning themselves.
There are no Livescr... Javascr... um... ECMAscripts or whatever they are called this week on my pages. Don't get me wrong — I really like interactivity, I just don't think web pages are a good technical choice for interactive use. Consider, for instance, the annoying AJAX breakage and what it does to people with poor eyesight.
I don't do cookies, unless you count the ones baked in an oven.
I use a simple CSS compliant stylesheet but all pages should be
viewable without CSS support. If your browser doesn't support CSS or
doesn't support HTML5
<nav> tags the navigation above will look like
an ordinary dotted list. It should still be useable, though.
A lot of information available on the interwebs is out of date, but even more annoying is that it is so hard to tell if it is out of date or updated yesterday. To remedy this problem at least on my own content I include a timestamp at the bottom of each ordinary HTML file unless it is otherwise dated.
For good and sometimes humourous takes on web design, please see:
Everything on the hack.org web site, including my web pages, is served as mostly static content, except for server-side includes. No use of CGI is allowed. The main reason for this is that we're often the target of security attacks, probably because of a misunderstanding about what the word “hack” really means. For more about this, see What is a hacker?
Some of the static HTML files under my web pages were generated by a modified version of an older version of txt2tags. Some lists of files might still be around that were produced by a trivial Perl script called flist.
An increasingly number of pages were generated by a small Perl script I wrote which I use together with Markdown.pl to generate a small subset of HTML5 from plain text files with a minimal markup. The only thing my small script does is to add a header with a server-side include to a navigation bar and a footer from a template. It also removes any comments I may have added to the file.
The original source that was used to produce the HTML of most files are available as either foo.t2t (for files intended for txt2tags) or foo.mdu (for Markdown encoded in UTF-8). The source file for this page, for instance, is colophon.mdu.
The blog and the accompanying RSS and Atom feeds were generated by a slightly hacked Blosxom. I use Blosxom with the Markdown plugin so I don't have to write all that icky HTML code. As a bonus, besides generating validating HTML5 it also generates XML validating markup that can be included without quoting in the Atom feed.
My photo albums were generated by a small shell script I wrote, simgal, but most of the work was done by ImageMagick.
The rather minimal CSS stylesheets were written by hand.
The HTML files have been validated with W3C's HTML Validator, the CSS files with the CSS Validator and the RSS and Atom feeds with the W3C Feed Validator. The last time I checked, everything validated correctly. This is important to me, so if you find something strange, please report it to me.
You should probably validate all your own material if you publish anything on the web. If you think about starting to use a new tool or a Content Management System be sure to validate its output before investing time and money on a new tool.
The sitemap was built by Daniel Naber's tree.pl.
make from FreeBSD was used
to automatically rebuild HTML files if anything had changed. The
Makefile looks something like this (shortened for your reading
TARGETS = index.html computers.html all: $(TARGETS) .SUFFIXES: .t2t .html .mdu sitemap.html: $(TARGETS) tree.pl /home/mc/public_www > $@ .mdu.html: Markdown.pl $(.IMPSRC) | mdn -s http://hack.org/mc/nav.css -n /mc/nav.html > $@ .t2t.html: txt2tags -t html --style "default.css" $(.IMPSRC) clean: rm $(TARGETS) sync: $(TARGETS) sitemap.html rsync -a --delete . hack.org:/home/www/hack.org/mc/
PDF and Postscript files were usually produced with either
TeX, using LaTeX macros, or
Groff, a free version of
troff, usually using my own macros based on
Some of the Postscript files were written directly in Postscript by myself, mostly just for the fun of it.
The images on my web pages may have been manipulated with programs such as ImageMagick, NetPBM or xv.
All text was written with GNU Emacs, a Lisp based operating system cunningly disguised as a text editor.
Last updated: <2012-11-03 13:07:42 MET>