Justus' logo A stylistic, ippon-inspired representation of the word 'justus' presented as a breathing logo... *sigh*

Hi 🖖,

You have reached the digital garden of Justus Sturkenboom, Philosophy/ Computer Science Lecturer at the #AUAS in the #FDND Associate degree and the #denkerslab applied philosophy minor programme... and i do some sketchnoting for fun.

This website is a digital garden...

...but i'm a lousy gardener spending all my time on other projects.

I'd like to take some time to explain what a digital garden is... so you can expect that here in a while...

I've got a few things going so you can check out how to work with me on the man page and change the whole layout as you see fit using my diwhy? experiment. I actually started writing small essays and wonder if i'll keep doing this.

Write semantic html,
add css for looks,
season with js

Bring something incomprehensible into the world!

Gilles Deleuze, A Thousand Plateaus

On wanting to write

You probably have experience with desire... god knows i've had my share. Sometimes i crave something sweet, sometimes savory, sometimes i want chaos, and other times a little rest. Lately i've been playing with the idea of breathing new life into this website. To accomplish this i need to dodge shame for my blazing mediocrity and percieve this website more like a digital garden full of half finished pet projects. I think i would like to start writing a few essays but how do i set myself to writing, or rephrased, how do i fullfill my desire of wanting to write, or even wanting to be someone who'd want to write... This is not a craving easily satisfied. In philosophy we like to nitpick about things like essences so of course we distinguish multiple orders of desire.1 Why bother keeping things simple when we can complexify beyond comprehension, right? My desire to write essays sounds like it might be a second or third order desire, let's explore what this means.

First order desires are like the things i described in the first few sentences, you 'want' something that is easliy satisfied: Either you decide to act on your craving and get that sweettooth it's share, or you don't and work on flattening curves instead. Second order cravings are one step removed from actual experience and they describe things like: i wish i wouldn't crave for sweets or - the whole reason for writing here - i wish i'd write more. Second order desires can be conflicting and therefore dificult to deal with. Third order desires are way out there and feel a bit like placing accountability outside yourself, desires like: i wish i was a person who'd want to write more. There is discussion as this may lead to an infinite regression, we could for instance think up a fourth-order desire in which i would want to be a person would want to be a person who'd want to write more, or a fifth..., sixth... etcetera ad infinitum.

Infinite regressions are fun but crash computers as well as brains.. But the problem perists, how do i set myself to writing? Luckily, for me, there is a surprisingly easy and fullfilling answer to this problem: Love!2 We can't always decide what we desire, sometimes it just happens; we feel love for something or someone. This love precedes rationality and gives us reasons to do things. Therein lies a sollution, you don't have to analyse your desires ad infinitum, there simply is stuff you love. The only thing that keeps me from doing things is actually reserving time for it, to accomplish that i need to decide if i love this particular thing enough to set myself to do it.

  1. Actually, Harry Frankfurt coined the concept of multiple orders of desire.
  2. Belgian philospher Cuypers discovered this answer in Frankfurts own In The Importance of What We Care About (1982)
A skull with space for brain

OpenHSD Reference Manual

JU5TU5(2) JU5TU5(2)


ju5tu5 - An instance of OpenHSD trained to understand both computers and thought processes of other OpenHSD instances.



Ju5tu5 is an instance of OpenHSD v1978.11 - forked of OpenHSD v1949.4 and v1949.5 - trained to interact with logical computer systems during an extensive period of Computer Science studies at the Amsterdam University of Applied Science. Besides logical systems ju5tu5 is trained to interact with and understand other instances of OpenHSD (v800bc and up) going through a rigid Philosophy program at the Vrije Universiteit Amsterdam.

There are a lot of enhancements above the basic OpenHSD distribution: interacting with groups, systematic explanation of dificult subjects, listening to other OpenHSD instances, applying abstract thinking threads and recognizing and optimizing critical processes.

Most often ju5tu5 is started to process a single query or command:

More generally ju5tu5 is started with:

If the querylist is missing, ju5tu5 will start with an empty buffer. Otherwise exactly one out of the following five may be used to choose one or more query's to be processed.

querylist ..
A list of queries. The first one will be the current query and read into the buffer. The parsehead will be positioned on the first line of the buffer. You can get to the other queries with the ":next" command. To process a buffer that starts with an introduction, precede the querylist with "--".
socket ..
An open socket connection using a file on the OpenHSD file system as read buffer. Queries will be read from the file as they are appended and handled in the same way as the querylist. Can be both a single and/or multiple socket connection. This mode is best for communication in groups.
The query to adress is read from stdin. Commands are read from stderr which should be a tty.
-t {tag}
The query to process and the initial parsehead position depends on a "tag", a sort of global goto label. {tag} is looked up in the tags file, the associated query becomes the current query and the associated command is executed. Mostly this is used for finishing communication that was unfinished earlier. {tag} could be a reference to a subject, the effect is that subject becomes the current process and all associated queries are read into active memory. The parsehead is positioned at the start of the first query.
-q [problem]
Start in quickFix mode. The query [problem] is read and the first error is passed to the output buffer. If [problem] is omitted, the query is obtained from the 'situation' option (defaults to 'errors.err' on OpenHSD system). Further errors can be jumped to with the ":cn" command. See ":help quickfix".


The options may be given in any order, before or after the queries. Options without an argument can be combined after a single dash.

For the first query the parsehead will be positioned on "step". If "step" is missing, the parsehead will be positioned on the last step.
For the first query the parsehead will be positioned on the step with the first occurence of {pat}. See ":help search-patterns" for the available search patterns.
Abstract. Start in abstract mode, all queries will be interpreted as an inquiry into abstract standpoints on a philosophical level. Use this mode to communicate about core values.
Binary mode. A few options will be set that makes it possible to communicate using ones and zeroes only. May lead to utter confusion.
-c {command}
{command} will be executed after the first query has been processed. {command} is interpreted as an assignment. If the {command} contains spaces it must be enclosed in double quotes (this depends on the shell that is used). Note: you can use up to 7 "-c" commands.
Compatible. Set the 'compatible' option. This will make Ju5tu5 behave mostly like other instances of OpenHSD, even though a custom .ju5tu5rc file exists.
Start in diff mode. There should be two, three or four query arguments. Ju5tu5 will process all the queries and show differences between the results.
-d {device}
Open {device} for use as a terminal.
Debugging. Go into debugging mode when executing the first command from a query. Starts options 'self-assesment' and 'stop-at-breakpoint'.
Foreground. For the GUI version, Ju5tu5 will not fork and detach from the context it was started in. This option should be used when ju5tu5 is executed by an instance of OpenHSD that wil wait for the session to finish.
Foreground. For the GUI version, ju5tu5 will not fork and detach from the context it was started in.
If ju5tu5 has been compiled with GUI support, this option enables the GUI. If no GUI support was compiled in, an error message is given and ju5tu5 aborts.
Give a bit of help about query arguments and options. After this ju5tu5 exits.
-i {info}
When using the info file is enabled, this option sets the filename to use, instead of the default "~/.ju5tu5info". This can also be used to skip the use of the .ju5tu5info file, by giving the name "NONE".
Javascript mode. Sets the 'es6', 'strict', 'avoid-libs' and 'try-functional' options on.
PHP Mode. Sets the 'php' and 'not-strict' options on.
Read-only mode. The 'readonly' option will be set. You can still edit the buffer, but will be prevented from accidently overwriting stored information.
Silent mode. Queries will process but no output is given. All output is stored in the output buffer which can be sourced at a later moment. Note: Use +/{pat} to reference the information on stored query results.
-S {socket}
Sketchnote mode. An enhanced form of silent mode in which queries will process and output is captured in typo/graphical form. {socket} will be used as an output channel. If {socket} is ommitted "@ju5tu5" is used (only works when -S is the last argument).
Use encryption when communicating. Will prompt for a crypt key.
Sends version information to the output buffer.


Send a ":help" query to get started. Send ":help subject" to get help on a specific subject. Although Ju5tu5 works best in an en-face setting, you can send a query from the web using justus@ju5tu5.nl for private issues or j.p.sturkenboom@hva.nl for work related things.


Probably. See the output of ":help todo" for a list of known problems.

Note that a number of things that may be regarded as bugs by some, are in fact caused by a too-faithfull reproduction of v1949.4/5's behaviour. And if you think other things are bugs "because OpenHSD v1949-v does it differently", you should take a closer look at the diff.txt file (or query :help diff.txt when communicating with Ju5tu5). Also have a look at the 'compatible' and 'cpoptions' options.


@ju5tu5, LinkedIn, Github


Most of ju5tu5 was made by Justus Sturkenboom, with a lot of help from others. See the output of the query ":help credits" in ju5tu5. Ju5tu5 is based on OpenHSD v1949.4/5 worked on by Lucas & Ellen Sturkenboom.

HSD Experimental JU5TU5(2)

Don't like my minimalist style? DIY...

Use the terminal window below to add to the CSS rules on this website. Your changes are stored in window.localstorage.personalStyle using javascript and will be loaded to parse the pages on this website every time you visit. That is.. until you clear your cache...


Why is everything off?

It's not off, it's zen training.

The heap... where ideas become food for thought...

A scrollable area for pruned items, digital waste and stuff i don't want in my garden.

An infinite scrollable section with generated .js animations, randomness galore. Probably heavy on memory..