Add post about the tumble log.
authorOlof-Joachim Frahm <olof@macrolet.net>
Fri, 28 Nov 2014 21:42:51 +0000 (22:42 +0100)
committerOlof-Joachim Frahm <olof@macrolet.net>
Fri, 28 Nov 2014 23:20:43 +0000 (00:20 +0100)
tumble-log.post

index abad242..c4cca9f 100644 (file)
@@ -1,11 +1,37 @@
 ;;;;;
-title: Tumble log
+title: Tumblelog design
 tags: lisp
-date: 2014-08-20 23:35:02
+date: 2014-11-28 21:30
 format: md
 ;;;;;
 
-And in addition to the longform variant of writing on this blog I'm adding a
-tumble log (no, not Tumblr, although I'm planning to migrate old posts from
-there).  It generates static pages (like Coleslaw), which will be okay for the
-forseeable future and can therefore be deployed absolutely everywhere.
+Yay, found time to give my tumble log a little theme upgrade.  And while I'm
+doing that, I thought I could write down some thoughts on the current design.
+I might even update it later.
+
+In contrast to this Coleslaw blog I've made a small static renderer to
+HTML/ATOM for the tumble log, so the interface is mostly console vim to text
+file with S-expressions.  Since at the moment there is only a single file I
+might just show the syntax for that one:
+
+    ;; -*- mode: lisp; coding: utf-8-unix; -*-
+
+    (video :id 1 :date @2013-05-23T00:00:00+01:00 :tags (music) :url #U"https://www.youtube.com/watch?v=QNppCfa_oRs" :title "I Charleston Tel Aviv" :via #U"http://n0p.tumblr.com/post/51100501191/i-charleston-tel-aviv")
+    ...
+    (image :id 3 :date @2014-08-16T01:01:00+01:00 :url #U"http://n0p.tumblr.com/post/94859150275" :src #P"data/tumblr_n17lclGKp51qdewwao1_1280.jpg" :alt "Scene from the mange BLAME!")
+    ...
+    (text :id 22 :date @2014-08-28T21:22:58.047809+01:00 :tags (emacs lisp) :text #"`(global-set-key (kbd "H-1") ...)`  Hyper Hyper!  In other words, bind `Caps-Lock` to `Hyper` and rejoice!"#)
+    ...
+    (link :id 88 :date @2014-11-20T17:27:05.107413+01:00 :url #U"http://htsql.org/" :title "HTSQL")
+
+Clearly this would be viable to store in a DBMS as well, but this is good
+enough as they say.  Featuring `PURI`, a few other syntax extensions, (my fork
+of) `CL-WHO` (for XML extensions) and `CL-MARKDOWN` for text rendering.  The
+Markdown rendering could use a few fixes for edge cases, but in general it
+works pretty well and fast.  Tags are also written to separate files (both HTML
+and ATOM), so readers could actually restrict themselves to a few subsets, even
+though it's not a by any stretch a full-fledged query system.
+
+Still, by rendering to static files a lot of problems go away and the whole
+site can be served very efficiently via a small web server (I'm leaving
+Hunchentoot/teepeedee2 for more involved projects).