I write, therefore I am
With this variation on a famous statement by the philosopher Descartes, I would like to express that the act of writing about what happens in my life is important to me.
Heliophile and moreI went to see the performance of Heliophile in Haaksbergen. I just missed the start of the performance, because I had left a little late and had to bike against the wind. This was the first performance where the background tracks were replaced with a life performance with a large modular synthesizer. It was also the last performance with Bernard, which means Heliophile will continue as a duo. In the room they were performing, there was also an exhibition of Fotobond Twente. I liked the photographs by Hans Wissink, Marinus Rouweler, and Anja Jalving. When I biked to Enschede, I saw several rainbows (which all originate from the same cloud, I guess). At 14:59. while I was biking on the Helweg, I saw a fragment (left) of a rainbow at the horizon. From 15:10 till about 15:13, I saw a rather bright, double partial (left) rainbow. Then at 15:16, I saw a partial (right) rainbow. It slowly started to rain, while the sun was still shining, and finally, around 15:20, I saw a full, but rather faint, rainbow. I went to Het Bolwerk, where the opening of the exhibition with drawings by Johan Leerkotte. There also were some music performances.
Groninger MuseumPeter Struycken invited me to visit the Groninger Museum with him, where there is an exhibition of some of his works. After we had some coffee and tea with applepie, we went to the top floor. In the hall we were greated by three of the Boulez carpets, from left to right: Boulez 44, Boulez 27, and Boulez 45e. We sat on a bench and watched ...explosante-fixe... with music by Pierre Boulez and Skrjabins Vision with music by Alexander Scriabin, two 20 minute long animations on music displayed on five large screens. Next we saw the exhibition Presenc by Daan Roosegaarde and the exhibition Mondo Mendini about the Italian designer Alessandro Mendini. At this exhibition, I liked the following works:
Kirsen EverinkI went to see the exhibition at B93 with paintings by Kirsten Everink. I have seen many of her paintings at the Finals 2017 exhibition, which means she has not produced many new works in the past two years. Dune by Frank Herbert. It was my fifth reading of the novel, fourth in Dutch, once in English. The last time, I finished reading the book (in English) was on Sunday, May 8, 2011. What surprised me during this reading, was my emotional responds to it at certain important points. Is this because I am older and have more emotional experiences of because I have become more sentimental. I started to read the book because at the moment, the book is made into a film again (for the third time). I have come to the conclusion it will be very hard to adapt the book and capture the depth of the struggle of Paul, which is so much hidden for the people around him.
Random mazeIn the past weeks, I have been analyzing algorithms to generate random mazes. The kind of mazes that I am studying are mazes within a rectangular grid of rooms where the maze is a spanning tree, meaning that there is exactly one route between each two rooms. In such a maze the number of doors (compared to walls) is one minus the number of rooms. Knowing how many doors and walls there are to be, you can calculate the change that at some position there door and wall. From this you can also calculate the changes for the different types of rooms (with respect to the position of the doors). There are rooms with one door, two opposite doors, two doors with a turn, three doors, and four doors. But it seems rather hard to generate random mazes that match these 'ideal' distributions. Wilson's algorithm is a simple algorithm to generate an unbiased maze. It has almost half the number of rooms with four doors as the 'ideal' maze. I also implemented an algorithm that starting with a balanced random assignment of doors and passages and fixes this by randomly changing passages into doors to connect unconnected rooms and doors into passages to prevent multiple routes between rooms. This algorithm is named 'Random' below. Alternatives of this algorithm, called 'Digging' and 'Trees' below, start with a maze with only walls and only doors, respectively. I also implemented a recursive division algorithm, called 'Spit' below. The traditional depth-first algorithm is called 'Depth-first' in the table below. This table gives for each algorithm the average percentage for the different type of rooms when the algorithm is run 500 times for a 50 by 50 room maze, and also the average distance between every two rooms (with its standard deviation).
one opp. turn three four dist.(dev) 'ideal' 26.69% 13.32% 26.69% 26.65% 6.65% Wilson 29.18% 17.35% 27.82% 22.18% 3.46% 111.14(12.72) Random 30.57% 16.15% 26.80% 22.47% 4.01% 96.49(10.20) Digging 31.70% 15.84% 25.25% 22.79% 4.42% 94.93(11.03) Trees 30.50% 16.45% 26.78% 22.15% 4.13% 58.50( 1.75) Split 28.11% 13.97% 32.90% 22.01% 3.01% 123.81(16.30) Depth-first 10.12% 31.00% 49.00% 9.72% 0.16% 403.49(32.92)
The depth-first algorithm clearly gives a different kind of maze than the other algoritms, resulting in lots of rooms with only two doors and only a very few rooms with four doors. It is obvious that this will lead to a high average distance between two rooms. However, note that the algorithm 'Random' and 'Trees', which are rather similar with respect to the types of rooms they have, yet have a different average distance. The name 'Trees' refers to the fact that the walls grow like trees from the sides, which make that the rooms in the center have short connections to the rooms further away. I have no simple explaination for the fact that the number of rooms with more doors are lower for all algorithms compared to the 'ideal' distribution. I also have not yet found an algorithm that generates mazes that on average are closer to the ideal numbers.
Has always been dystopiaI went to the opening of the exhibition Has always been dystopia by Erica Ferrari at XPO.
Overkill Festival: Day twoDuring the day, I helped as a volunteer at the expo with the VR installations Hana Hana Full Bloom and False Mirror. Later, I looked around and saw Camino Real by Fuckgamedev and Journey to Lavender Town. I also played a little with the modular synthesizer in the synth area. At the start of the evening, I attended a VR music performance by Sonotrope (which I did not find very interesting).
Overkill Festival: Day oneI went to opening of the Overkill Festival, which is this weekend. I watched the modular synth performances by Archeface (recording on SoundCloud) and Jungle of Wires. I also tried some of the VR installations and a game: Hana Hana Full Bloom, False Mirror, Pastoral by Theo Triantafyllidis, The Lacuna Shifts, and VR Wizard: A magical training ground by Power of Moo.
Using git for file syncIt took me a long time to become a little confident with git after having used other version-control systems with a more friendly interface. Recently, I discovered it is rather easy to push your commits to a repository on an USB-memory stick and that such a repository can be used to syncronize edits between different computers, without having to rely on an external repository service, such as GitHub. Now I am just uses some directory synchronization tools for such purposes. I am considering to also put all the data for this website in a repository hosted on an external drive. The idea is to create a bare git repository on the drive, with a command like:
git init --bare targetdirNext you have to set the origin of your git repository and next you can push it with commands like:
git remote add origin targetdir git pushIf you want to clone the repository in some other locations, you can simply use a command like:
git clone targetdir
AKI this morning. I first had a look at the library where they were selling old books. Not any catalogues. I talked with one of the teachers about the model drawing class that he gives every week. Visitors were invited to do some model drawing themselves. I also talked with a fourth year student about his work. I looked in the various studios and workplaces. I bought a card with a drawing of a bird by Nadie van Wijk for € 2.00. Near the entrance, I was invited to have my picture taken with the Trip to the moon background together with two students. This resulted in the picture shown above. (I asked their permission to publish it here.)
BooksAt 17:47, I bought the following two books from charity shop Het Goed:
Go on 13×13Some weeks ago, I met some go-player, who happens to have his lunch at the same place as I. We have decided to play a game of go during lunch time on a 13×13 board. This lunch was the second time we played and explained the game to others around us.
Berlin GeisterbahnToday, it is 30 years since the fall of the Berlin Wall. I went to visit Rijksmuseum Twenthe to see the exhibition Berlin Geisterbahn with pictures by Fons Brasser, which he took from ghost stations from the Berlin S-Bahn, the rapid transit railway system of Berlin. I studied the four maps, from different periods, of the S-Bahn that were on display, and tried to relate them. I took one of the information sheets, with a picture of the Schulzendorf station on the back, that had a map of all the S-Bahn stations during the period the pictures where taken in the first half of the eighties. All the ghost stations are marked with colours on this map.
Wifi trackinThe city of Enschede is using the services of the Dutch company City Traffic to measure footfall in city center. The company cleams that this is privacy proof. According to the Dutch GDPR laws, it is forbidden to track people using MAC addresses of their mobile phones. City Traffic defends themselves by stating that they are not storing MAC addresses but are anonymizing the addresses by applying a some hash function. They also have an opt-out register on their website. I wonder if they actually apply the same hash function to the MAC address entered there in the browser or that the MAC address is only hashed in their server. I would like to be opted-out, but not that they process my MAC adres any any form without my explicit permission. On the opt-out page, there is no mentioning of giving them the right to process the MAC address, which I think they should according to the Dutch GDPR laws. The fact that they do have an opt-out mechanism, seems to imply that they are not truely anonymizing the MAC addresses, but that they could still track my MAC address if someone would give it to them.
Average distanceA property of a maze is the average distance between all the rooms, where the distances is defined as the number of passages on has to pass to arrive from one room to another room. To calculate it, you first have to calculate the (shortest) distance between all combinations of rooms, and than sum all those distances. To calculate all the distances, one could use the Floyd-Warshall algorithm, which requires a matrix of the size of the number of rooms. Because the distance is direction independent, the matrix is symmetric, and one only needs to store one half of the matrix. Still the memory consumption grows quadratic with the number of rooms. However, to calculate the average, one only needs to how often a certain distance occurs. As an alternative one could sequentially calculate the distances from each of the rooms using Dijkstra's algorithm. This would only require a memory storage linear equal to the number of rooms. If the maze is 'nice' in the sense that there is exactly one route between every two pair of rooms, one could use any recursive algorithm to visit the rooms starting from the first room. Once the distances are calculated from one room, one can count how often each distance occurs. These counts can easily be summed (using a storage equal to the number of rooms) for all the rooms. Note that each distance is counted twice, but for calculating the average distance this does not matter. This algorithm requires one to traverse the maze as many times as there are rooms. Last night, I came up with an algorithm for nice mazes that only require you to traverse the maze once, and which does not count the distances twice. While walking through the maze it keeps a list of distances from the rooms visited. When arriving in a new room, this list is used to update the global list of distances. If the room has only one passage not visited yet, the list is simply extended with room. This is done by adding the room to the front of the list and letting the position of in the list determine the distance. If there one more than one exit left that has not been visited, the current list is assigned to the room and an empty list is passed for the next step. After returning from that part of the tree, the list from there and the list kept at the room, can be used to calculate all the distances between the rooms counted by both list, and after this has been done, the two list can be added together for the remainder of the tree. (If there is still more than one passage not visited, the added list is again assigned to the room, otherwise it is passed to the next step.) This afternoon, I implemented the algorithm in the function _calcDistances in MazeGen.cpp, the maze generation program I have been developing.
In to the cityWhile biking to the city, I stopped at Kringloop Enschede. At 15:57, I bought the following two books:
Books and exhibitionAt 16:27, I bought the book On the Road written by Jack Kerouac in English and published by Penguin Books in 1998, ISBN:9780140274158, from charity shop Het Goed for € 1.30. In the evening, I visited the last day of the exhibition Mixed (up) at B93. Around 18:25, I bought the artist book Street Poetry I. (5/30) from Esmee van Zeeventer for € 15.00 and also the artist book Crisis Sale (57/100) from Patric Jonkman.
Monday, October 21, 2019
Tuesday, October 15, 2019
UnravelIn the afternoon, I visited XPO to have a look at the exhibition Unravel with work Rhizoma by Melle Foortjes and the work 111 days in Jerusalem by Judith Glimmerveen. The exhibition is part of the Fotomanifestation Enschede. They are two students from AKI.
Museumnacht EnschedeAnnabel and I went to the Museum Night Enschede. We had dinner at a local food hall. First we went to Concordia. We looked around a bit. The music from DJ Southern Depot was a little overshadowing everything. Did look a little at VJ The C-men. Next we went to Sickhouse. Here we saw (the last half) of Patric Jonkman performing with his (relatively small) modular synth to silent movie The Cabinet of Dr. Caligari and Thom Floris performing to chapter 1 of the silent movie Häxan. From this we went to Rijksmuseum Twente. I showed Annabel the painting by Claude Monet. I sat on the ground while listening to the performance of Lotte Pen and immediately slipped into a meditative state. She performed: Triptych, Chronon, Patternalism, and Tabernacle (if I remember correctly). We looked around a little more and paid short visits to the AKI and Tetem art place before going to De Museum Fabriek. There we joined the last demo of the oldest Zeiss Mark I planetarium projector, which is in the process of being restored. It was damaged during a fire in 1976 and had been in a storage room for a long time. It was only last year that the restoration started. It is not finished yet. Many of the projectors are not aligned correctly yet and need to be adjusted. (In 1968, I saw this planetarium in The Hague together with my father, my brother and two of my sisters.) We drank some tea in the cafe of the museum before we went home at midnight.
Moleskin daily plannerAt 17:26:43, I bought a Moleskin daily planner for 2020 from Bookshop Broekhuis for € 21.99.
-- contact -- Frans
My life as a hacker
The Art of Programming
HTML to LaTeX
eXtreme Programming Programs Hamilton cycles
The email address below, may only be used for private communications. This email address may not be put on any mailing list. I do not want to receive emails with advertisements of any kind. My email address is:
This is a static website with no contact form and no way to add comments. It
any method to analyse traffic to this website nor keeping any logs. I am not
collecting personal data besides what is published on this website. If you want
me to remove any personal data (including your name or link to your website),
please contact me by above email address and I will make all effort to remove
the data as soon as possible. I am private person and this website does not
serve any economic purpose. All cost for maintenance are paid by myself. I do
not receive any payments. The website is ad-free and does not have sponsored
program files with a total size of 4,750,060 characters,
8 MySample scripts with a total size of 61,594 characters.
and 3 PASCAL program files with a total size of 35,259 characters.
There are 68 text files with a total size of 738,916 characters.
With respect to images, this site containts 1252 JPEG images
(total size 54,743,322 bytes),
146 GIF images (total size 3,765,046 bytes),
94 PNG images (total size 2,280,364 bytes), and
2 BMP images (total size 3,727 bytes).
With respect to sounds, it contains 14 WAV files
with a total size of 389,002 bytes and
1 MP3 files with a total size of 70,182 bytes.
It also contains 43 PostScript files (total size 308,387 bytes),
2 LaTeX files (total size 132,020 characters),
9 PDF files (total size 789,074 characters),
22 zip files (total size 2,487,335 bytes),
3 gzipped tar files (total size 52,345 bytes),
45 SGF files with
a total size of 85,019 bytes,
104 KML files with
a total size of 4,333,995 bytes,
and 2 EXE files with a total size of 38,340 bytes.
a total size of 663,236 bytes,
This leads to a total size of 101,626,167 bytes.