Dutch / Nederlands
Site map

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.

Sunday, October 25, 2020

PARR books

I have been working on a program to generate books with PARR patterns. Nowadays, there are many sites that can print books on demand with all kinds of options with respect to quality of the paper and means of binding. All you need to provide is some PDF files. I spend some time figuring out if I could use (La)TeX to generate a PDF. It proved not so easy, as I wanted to have one PARR pattern on each page, exactly aligned. So, I decided to use PostScript and convert it to PDF. (There are tools for combining PDF files.) The program tries to generate an interesting set of PARR patterns (for a given number of lines and points). It does this by avoiding patterns that are symmetric and combinations of patterns that are very similar. It also tries to find a printing order in which similar patterns do not appear close to each other. Everytime when the program is ran, it generates a new set of PARR patterns.

Saturday, October 24, 2020


At 15:38:21, I bought the book Veldnamen in Enschede written in Dutch and published by Uitgeverij Van de Berg in 1992, ISBN:9070986888, from bookshop Broekhuis for € 19.95. Alongside the book also a set of maps.

Thursday, October 22, 2020

Henk Helmantel

Conny and I went to Drents Museum to see the exhibition Henk Helmantel - Master Painter. We had tickets for a time-slot in the afternoon. So, we first went to visit the Westerbork Synthesis Radio Telescope. We started at the parking place of the National Westerbork Memorial and followed the path with models of the planets (including the minor planet Pluto) and the sun on scale of their (average) relative distances. This path ends at one of the end of the row of radio telescope.

At the Henk Helmantel - Master Painter exhibition, I noted down the following works in the order I saw them:

  • Self-portrait in his studio, 2013
  • Self-portrait, 1980
  • Snowdrift on the dwelling mound of Westeremden, 1980
  • View from the studio window, 1985
  • Vegetable still life, 1985
  • Still life with large roemer and quinces, 2011
  • Still life with quinces and two bottles, 2019
  • Still life, 1988
  • Bronze bowl with three eggs, 2000
  • Ode to the Father, the Son and the Holy Spirit, 2019
  • The Cloister of Le Thoronet, 2001
  • The choir of the church in Bozum, 2003
  • The chapter house of the abbey of Le Thoronet, 2002
  • Still life with a white bowl, 1991
  • Still life with Roman glass and a Chines skirt on a Spanisch table, 2001
  • Still-life composition with a homage to Kees Stoop, 2006
  • Still life, 2000
  • View of the South wall of the church of Oldenzijl, 2019
  • The choir of the church of Oldenzijl, 2011
  • Open window in the medieval stein haus in Bunderhee, Germany
  • Two oranges, 2018
  • Oranges and tangerines, 2018
  • Fifteen intimate still lifes
  • Onion still life, 2015
  • Chestnuts on a red floor, 1998
  • European archealogical glasse, 2003
  • Chinese jar on top of a red cabinet, 2002
  • Chinese cabinet with a open door, 2015
  • Still life with Roman glass, 2004
  • Chinese bronze objects, 1997
  • The apostle James of a Gethsemane group, 2005
  • Still life with tree pots from Europa, South America and Asia, 1992
  • Mexican pot, 1994
  • Still life with Drenthe archeaological finds, 2004
  • Still life with a chinese Han vase and a bronze bowl with oranges, 2020
  • Rembrandt chalk-glue pot (Phase 1, 2 and 3), 2000
  • Window in the choir of the monastry church in Le Thoronet, 2019
  • The Pieterskerk in Utrecht, 2014
  • The east side of the gatehouse of Ammersoyen castle, 2019
  • The hedgehog, 1988
  • Chinese eggshell bowl, 1977
  • Asparagus, 1988
  • Belgian endive in a yellow box, 1992
  • Still life with grapes, 2005
  • Still life with pome granates, 2002
  • Japanese doll, 1889
  • Box from Taiwan, 1998
  • Still life with worn family bible, 2004
  • Still-life composition, 2003
  • The most Dutch still life, 2019
  • Bread baked in emden, 2007
  • Book still life, 2020
  • Still life with monastery bricks, 2005
  • Large bronze water vessel, C.600 B.C., Shanghai museum, 2008
  • In the kitchen of de Weem in Westeremden, 2020
  • The cloister of sénanque, France, 2018
  • Inauguration of Queen Beatrix April 30, 1980 in the Nieuwe Kerk, 1981
  • The church in Leermens with thirteenth-century rood screen, 2011
  • The north aisle of the church in Leermens, 2000
  • The south aisle of the Romanesque monastery church in Jerichow, Germany, 2015
  • Ambry of the church in Heideby on Gotland, 2015
  • The choir of the church in Fide on Gotland, 2015

We also walked through the rest of the museum. We saw some drawings by Charley Toorop, all undated: Vrouw met kind, Drie mensen rond een tafel, Vier mensen rond een tafel, Boer, and Vrouwfiguur. We walked through the work Diasporalia by Koen Theys.

On the way home we went to the village De Kiel to visit the point where seven marken are joined. In 2004 a new stone was placed at the location where the original marke stone used to be. During the French period, there were no farmers who wanted to claim the area, which was surrounded by seven marken, namely: Westdorp, Ees, Odoorn, Sleen, Zweelo, Westerbork and Rolde. A land surveyor from the Land Registry under the command of Napoleon divided the land among the seven surrounding marken. The seven border lines are still visible in the landscape. The road is on a crossing of six roads, which are on six of these border lines.

Sunday, October 18, 2020

Walking and some border poles

Conny and I went walking around the Groot Bruning estate. Yesterday, it was sunny, but today the day started with fog, which changed into a grey sky. We found may mushrooms of all kinds in the forrest. The cows were still in the fields. Conny took a picture of the grey sky above the fields. Next we biked to the border, to check if we missed some border poles in some area. We found the following border poles: The first two we had seen before, but the last was a new find.

Monday, October 12, 2020


At 09:51, I bought the book De Arnhemse School: 25 jaar Monumental Kunst Praktijk edited by Jonneke Fritz-Jobse and Ineke Middag, written in Dutch, and published by Hogeschool voor de kunsten Arnhem in 1994, ISBN:9074485081, from charity shop Het Goed for € 2.95.

Saturday, October 10, 2020


Last Thursday, I came along the article Computer Scientists Break Traveling Salesperson Record, which is about the report A (Slightly) Improved Approximation Algorithm for Metric TSP, which gives a slightly improvement of the Christofides algorithm. In the discussion on Hacker News, I found a reference to TSP-SA : Traveling Salesman Problem Solver using Simulated Annealing Algorithm. I spend some time, using this for the program I wrote to find the best AKI Mupi route. The solutions it finds are close to the shorters solution I found, but not very close. In the discussion on Hacker News there was some confusion about the presented result in the paper as it seems there are enough algorithms know that find much better approximations than the one reported in the paper, missing the point that the paper is about a theoretical result. Finding a near optimal solution with a program is one things, but proving that a given algorithm is always within a certain bound of the optimal solutions, is something completely different.

Tuesday, October 6, 2020

NASCOM microcomputers

I discovered that on July 13, 1979, I visited the offices of NASCOM microcomputers that developed and sold the Nascom 1 and 2 single-board computer kits. I had a random memory about bringing some eggs to an address while staying in Watford. I found some note of this in my diary V (written in Dutch) on page 72, where it mentions the name and the address of the company. (The address is mentioned in an ad in Personal Computer World of October 1979.)

Sunday, October 4, 2020


Saturday, October 3, 2020

Cause of the second wave

When I saw the graphs about the clusters of COVID-19 infections in the past months in COVID-19, Tweede Kamer briefing, Update Tweede Golf - II, 29 sept 2020, the presentation with the briefing to the Dutch parlement, it gave me some ideas how the cause of the second wave of infections. This morning, a news report with a statement from the RIVM, affirmed these ideas. It were primarily young adults (18-25 years) who going on holiday to Spain and the south of France during August, who became infected in August. Then at the start of September the infection spread further through parties and student dorms. Through them also their parents got infected and from there is spread further to the nursing homes. The number of infections has been doubling about every two weeks. It is only the last two weeks that the number of hospital admissions has been on the rise. This week is also was announced that about ten thousand people died during the first wave. The average age was close to the life expectancy.

Friday, October 2, 2020


Thursday, October 1, 2020


Wednesday, September 30, 2020

A simple Git workflow

Git is a distributed version-control system for tracking changes in source code during software development. It is probably the most popular system at the moment. But it is also a very complex system, which can be used in many different ways. I also have noted that there is often some confusion about the internals of Git among people starting to work with it. Many introduction to Git, like Learn Git Branching, fail to explain the different workflows of working with it. Below, I present a simple workflow, which works good for a small team.

Although Git is a distributed version-control system, it is often used in a centralized manner, where there is a central repository and where everyone syncronizes work through this central repository. There are free Git repository services, such as GitHub and GitLab, which also provide additional features, such as issue tracking. It is also possible to set up a central repository on a file server using the "git init --bare targetdir" command. The common way of creating a local copy of a central repository is to use the "git clone path", where the path is either a link to a repository on a service or a file path to a respository on a shared file server. Before you start working, you should issue the following commands:

  • git config --global pull.rebase true
  • git config --global rebase.autoStash true

After a local clone of the central repository has been made, you just can start working. By default you are now in the master branch. If you have been working on some issue for some time or you have heard about someone else having pushed a commit to the central repository, you issue the command:

  • git pull
If there are indeed new commits on the central repository, this will stash your changes, pull these commits, and apply the set of stashed differences to the up-to-date state of your local repository. This could lead to merge conflict, which need to be resolved. (There are various tools to resolve conflicts, but I find simply editing the files often the easiest way.) You can repeat this as often as you want.

Now that you are ready to commit your work, your issue:

  • git add files to specify the files you want to include in your commit. This command can be repeated. It is also possible to specify a directory.
  • git commit to create the commit
  • git pull to see if there are some new commits in the central repository that you need to deal with. If this command does not reply that your local repository is already up-to-date, it means that your last commit has been applied to the last commits from the central repository. Then you need:
    • Resolve any merge conflicts
    • Build and test your work. Fix any problems.
    • git add to add resolved merge conflicts and fixes.
    • git commit
    And repeat this step, until there are no new commit pulled from the central repository.
  • git push to push your commit to the central repository.
There is still a chance that between since the last git pull command someone has pushed a new commit. In that case a merge will occur in your history. This merge could have broken the build and/or some tests. It is good to verify if this the case and fix any problems.

Editted text on October 7, 2020

Tuesday, September 29, 2020


At 17:34:46, I bought the book Elsbeth Cochius: Begegnungen / Ontmoetingen written by Elsbeth Cochius and Gert Gerrits in German and Dutch, published by Stichting Programmaraad Beeldende Kunst in 2008, ISBN:9783981069327, from charity shop Het Goed for € 3.50.

Sunday, September 27, 2020

At 9:58, I picked up a chestnut from the Helmerstraat (road) during our walk of this morning.

Saturday, September 26, 2020

Border poles near Coevorden (part 2)

Conny and I continued our search for border poles near Coevorden. We looked at three different locations. Some poles where hard to find due to a lot of over grown. The poles we found are:
  • At 11:36, two poles 132-I.
  • At 12:06, pole 138-I.
  • At 12:17, pole 138.
  • At 12:50, two poles 147-II.
  • At 13:09, only one of two poles 148.
  • At 13:23, pole 148-I.
  • At 13:34, two poles 149.
  • At 13:40, pole 150-I.
  • At 13:54, pole 151.
  • At 13:56, pole 151-I.
  • At 13:57, pole 151-II.
  • At 14:10, pole 151-III.

Tuesday, September 22, 2020

Second wave

It looks like the second wave of COVID-19 infections has arrived in the Netherlands (as well). The number of infection has steady risen in the past weeks. It is only last week that also the number of hospitalizations has gone up. In the past week they have doubled. It is likely that this will continue in the coming weeks. Last Friday some addition regional measurements have been announced. This evening, I watched last Sundays episode of Zondag met Lubach. It explained how the problems with the number of test being available in the Netherlands is related to the choice of the government to have the tests being done by the fifty regional labs, which are tied to hospitals, and not using commercial testing capacity until recently. Hugo de Jonge, the current minister of Health, Welfare and Sport has stated that this was also to sustain the regional labs until after the COVID-19 crisis. The program also mentioned that one of the member of the Outbreak Management Team is the chairman of the Dutch Association for Medical Microbiology, which represents the microbiologist working at the regional labs.

Sunday, September 20, 2020

PARR specification

In the past weeks, I have been thinking about the steps with which a formal specification of the PARR patterns could be transformed into the PARR generator, which I wrote last month. In a way it is also similar to proving the correctness of the program. I have come up with some kind of specification of the collection of all PARR patterns using a made up specification languages where types are defined as sets. There are three types of 'complex' values: list (denoted with square brackets), sets (denoted with curly brackets) and maps (denoted with curly brackets and a colon separating key and value). Sets stands for all enumeratable sets and Nat stands for a natural numbers (including zero).

Graphs = { { "V" : V, "E" : E }
         | V in Sets and
           E subset { { v1, v2 }
                    | v1 in V and v2 in V and v1 != v2 } }

subgraph(G1 in Graphs, G2 in Graphs)
  = G1."V" subset G2."V" and G1."E" subset G2."E"

FullPARRgraph = { "V" : V, "E" : E }
    where { "V" : V, "E" : E } in Graphs
      and V = { [x, y]
              | x in Nat and y in Nat and
                0 <= x and x < 4 and 0 <= y and y < 5 }
      and E = { { [x1,y1], [x2,y2] }
              | x1+1 = x2 and y1 = y2 or
                x1 = x2 and y1+1 = y2 or
                x1+1 = x2 and y1+1 = y2 or
                x1 = x2+1 and y1+1 = y2 }

PARR(nrp in Nat, nrl in Nat)
  = { graph
    | subgraph(graph, FullPARRgraph) and
      size(graph."V") = nrp and size(graph."E") = nrl }

This is not really an executable specification, yet it contains everything to calculate the PARR function.

Thursday, September 17, 2020


Tuesday, September 15, 2020

32.1° Celcius

The temperature at Twenthe Airport went up to 32.1° Celsius, which breaks the previous record of 29.3° for the temperature on this date in 2016.

Saturday, September 12, 2020

Border poles near Coevorden

Conny recently bought the book Op zoek naar grenspalen (which translates as Searching for border poles) by Herman Posthumus, which give walking routes along border poles along the border with German and the provinces of Drenth and Groningen. Today, we decided to give the first route a try. We parked the car near the pumping station called De Mars south of Coevorden and close to the border between the provinces of Overijssel and Drenth and started walking along the canal. We first walked on the north side of the canal before I consulted the book and realized we should be walking on the south side of the canal. We had a hard time finding many of the poles that were mentioned in the book because there was a lot over overgrown. The poles we found are:
  • At 11:29, pole 133, which is at tbe border of the provinces of Overijssel and Drenth as well.
  • At 11:32, pole 133-I.
  • At 12:00, pole 134-I.
  • At 12:23, pole 135.
  • At 12:49, pole 137, which we unearthed after having it located with the help of some pocket knifes after having estimated it location using a picture from the book. This pole has sunk into the ground completely. We even did not completely unearth the top, but only the area around the number tag attached to the top.
  • At 12:52, pole 137-I.
  • At 13:10, on the way back, pole 134-II.
Next we drove a little further along the border and parked the car on the Europark Allee. The border makes bluges in both directions, following a ditch, in a kind of S-shape. There was a farmer who had land on both sides of the border along the ditch. Now there is some dispute about on which side of the ditch the border lies. Because governments on both sides of the border, wanted to create an in industrial area, now called Europark, he was expropriated. (The ditch is no longer visible and the main offices of Intergas have been build in the area.) He claims that he still owns the area of the ditch, because it was not bought by government parties on both sides of the border. And because there is also a dispute about the exact location on the border, he now has declared it an independ country called: "Vrijstaat Beukeveld". More information, in Dutch, can be found on the site www.eurostaete.eu.

The poles we found there are:

  • At 13:47, the former pole 143. We searched for the official pole 143, which according to the book should have been 20 meters futher away, but we did not locate it, fearing that it is now in the middle of the pond near the Intergas offices.
  • At 13:58, pole 142, one of two poles where the border is in the middle of the poles.
  • At 14:03, pole 141.
  • At 14:17, pole 140.
  • At 14:28, pole 142, the other of the pair.
  • At 14:31, pole 144 and metal circle on the bike path with the text: "grenz punkt" (German for border point).
  • At 14:46, pole 145-II.
  • At 14:49, pole 145-III.
  • At 14:50, pole 146.
  • At 14:51, pole 147, which no longer stands at the original point, which lies on the road.

Some links (in Dutch) with information about poles along the route that we took:

After this, we also walked around the city center of Coevorden, which used to be a fortified town.

Friday, September 11, 2020


At noon, I went to the GOGBOT exhibition, which this year is only held at a few locations. Due to COVID, the exhibition inside requires you to buy a ticket for a certain time slot. When I entered the exhibition some installations were not running yet. I found the following installations interesting:

Around 14:00, I went to TETEM art space to see the exhibition Reflecties (Dutch for reflections). If I am not mistaken, this is the first time that they open again for an exhibition. There were a lot of students entering before me and I had to wait some time to see the exhibition. At the start of the exhibition, I was offered a tablet, but I refused it, only to discover that it was required for each part of the exhibition. I was a little dissapointed as it felt a little like a physical website, more about a philosophical discussion than about art.


Thursday, September 10, 2020

Dune 2020 trailer

Yesterday evening, shortly after six, I watched the trailer for the Dune (2020) film. When I saw it I was not sure whether this would be a good film adaptation. Even one of the first words in the trailer doesn't match the book, because Chani calls Paul Usul in his dream. And I also can't remember that the book speaks of a crusade (Paul in the trailer says: "There is a crusade coming"), but of a jihad, a holy war. This morning, I watched the Dune featurette. Now that I've seen this, I think it might be a good movie. I doubt whether all layers in the book will be addressed. Maybe some will only be recognized by those who have read the book. It is only after I reread the book last year, that I understood that it is (also) about a profound tragedy of someone who without realizing himself degenerates into someone he never wanted to become. Let's hope the film will be a great success, because it only covers the first half (more two thirds) of the book, and it would be nice if the second half and the following books are also made into films with the same cast.


Wensday, September 9, 2020


Tuesday, September 8, 2020

Vitamin D

There is more and more evidence that vitamin D has a positive effect on how someone responds to a COVID-19 infection. A recent double-blind experiment showed that vitamin D is even a good treatment option for people who have been administered to a hospital: Effect of Calcifediol Treatment and best Available Therapy versus best Available Therapy on Intensive Care Unit Admission and Mortality Among Patients Hospitalized for COVID-19: A Pilot Randomized Clinical study. In the past weeks the number of registered infections has been increasing in the Netherlands, but so far this has not led to a strong increase of people administered to a hospital and the number of casualties. Only about 3% of the people who are being tested, test positive on COVID-19. Among the people who test negative, there also some people who have no symptoms, but have themselves tested because they came from a high-risk area or have come into close contact with someone who was infected. I have heard of several people who were ill, even with a few days of high fever. There seems to be some kind of other virus going round. You would expect that there are less infection now that people practice social distancing (albeit to a lower degree than at the start of the outbreak). One reason why there are not many people in hospital, is because it seems that mostly younger people test positive. Maybe that older people excersize more social distancing. Another reason could be that many people have higher vitamin D levels so shortly after the summer. So far, I have not heard any statements in the media about administering vitamin D supplements for people who are at risk to develop severe complications due to COVID-19.

Wednesday, September 2, 2020


Monday, August 31, 2020


Sunday, August 30, 2020

PARR generator

I have implemented an algorithm using JavaScript to generate a random PARR configuration, which consists of a number of dots on a four by five grid connected with a number of lines. The number of dots and lines can be specified. For pratical reasons the number of dots is limited to a maximum eleven. I took care that every possible configuration has the same change of being shown. This algorithm generates all possible configurations without any restrictions, which means with crossing diagonals and not all dots connected.

This text is displayed if your browser does not support HTML5 Canvas.

Dots: Lines:

Saturday, August 29, 2020


At 14:12, I bought the book AKI eindexamen catalogus 2001: wat is de filosofie achter je werk? written by Boris Veldhuijzen van Zanten, Nelleke Zandwijk, Sipke Huisman, and Maarten Binnendijk in Dutch and English and published by AKI in 2001, ISBN:9789075522181, from Kringloop Enschede for € 1.00.

Wednesday, August 26, 2020


October 2020
September 2020
August 2020
July 2020
June 2020
May 2020
Alzheimer's Disease
-- contact --




Art works
Useless lists


My life as a hacker
Signature programs
Software enginering
The Art of Programming
eXtreme Programming Programs


Hamilton cycles
cutting sticks
Califlower fractal




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:

Privacy statement

This is a static website with no contact form and no way to add comments. It has no advertisements and no trackers. It does not use cookies. I am not using 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 links.

Site statistics

If I did not count wrong, this site consists of 988 HTML-files with a total size of 22,895,049 characters, having 48,817 internal links and 11,850 external links to (more than) 3,936 websites. (At least 737 of the external links are broken.) Furthermore, it contains 216 C/C++ program files with a total size of 4,812,044 characters, 9 MySample scripts with a total size of 75,004 characters. and 3 PASCAL program files with a total size of 35,259 characters. There are 68 text files with a total size of 741,800 characters. With respect to images, this site containts 1281 JPEG images (total size 56,462,917 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), 10 PDF files (total size 12,337,569 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, 115 KML files with a total size of 4,619,850 bytes, and 2 EXE files with a total size of 38,340 bytes. It also uses 16 JavaScript files with a total size of 681,548 bytes, This leads to a total size of 112,640,404 bytes.


Creative Commons License

I, Frans hold the copyrights of this and all other pages on this website. For this website a Creative Commons License is applicable. You may not use this work for commercial purposes. I consider all computer programs to be copyrighted by me under the GNU General Public License, unless stated explicitly otherwise. All quotes (text and program fragments) from other sources are excluded from this, and should be considered as copyrighted by their authors.

(This space is intentionially left empty)