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 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


Zomergasten ("Summer Residents") is a program on Dutch television which takes up an entire Sunday evening, lasting typically three hours, in which a notable guest is being interviewed interspersed with (usually ten) cinema or television footage selected by the guest. Earlier this summer, Conny asked what would be my ten selections for fragments that I would use if I would have been asked to appear in the program. Here is my list of ten (actually eleven) fragments:

  1. Final dialog between Spock and Kirk of The Galileo Seven.
  2. Fragment from Dune: Crisis and observation.
  3. Fragment from The Imitation Game (Turing) Alan Turing and detective Robert conversation - The Imitation Game
  4. Does John Conway hate his Game of Life?
  5. Life, Death and the Monster (John Conway) - Numberphile (About the Monster Group)
  6. Hollandse Meesters: Peter Struycken
  7. Sean Carroll - "From Particles to People"
  8. Proof: "I wrote it" scene
  9. Oona...
  10. Esmerine "Spiegel im Spiegel" (Arvo Pärt) - - For Lhasa's Birthday

The guest can also select a movie, which will be broadcast after the program. My choice would be the movie Proof.

Monday, August 24, 2020


Sunday, August 23, 2020

Museum MORE

Peter Struycken invited Conny and I for a visit to Museum MORE. I had never heard of this museum before. There were three exhibitions. The first exhibition was a selection of works from the collection of the museum. I found the followings works notable:
  • Barbara, Erwin Olaf, 2007
  • Victoria, Erwin Olaf, 2007
  • Cubicles, Arnout Killian, 2011
  • Truth or Dare, Lotta de Beus, 2008
  • Between Us, Lotta de Beus, 2007
  • Vessel, Lara de Moor, 2015
  • De Zeppelin, Carel Willink, 1933
  • Le mur blanc avec port, Beaumont, Raoul Hynches, 1957
  • Het huis van Cervantes in Toledo, Wim Schuhmacher, 1934
  • Stadsplein, Carel Willink, 1958
  • Remiseterrein, Frans Stuurman, 2007
  • Nederlandse haven, Jan Ouwersloot, Undated
  • Betonningsvaartuig, Herman Berserik, 1988
  • Bunker, Johan Marinus de Vries, circa 1946
  • Beemster, bloeiende boom, Charley Toorop, 1943
  • Untitled, Carla Klein, 2008
  • Mauve's Muse, Tessa Verder, 2002
  • Straatwerker, Walter Nobbe, 1979-1980
  • Oorlogsruïne Rossinilaan, Carel Willink, 1946
  • Untitled, Har Sanders, 1971
  • Stilleven met flesjes, Edgar Fernhout, 1949
  • Hoed, Barend Blankert, 2006
  • Prop Table (after El Gerco), Lara de Moor, 2018
  • Het laatste ezelschilderij, Rien Draijer, 1968
  • De Haas, Raoul Hynches, 1946
  • Dode meeuw op het strand, Wim Schuhmacher, 1936
  • Het satijnen lint, Raoul Hyches, 1944
  • Stilleven (met viool), Dick Ket, 1932
  • Zelfportret, Wim Schuhmacher, 1942
  • Staand naakt bij kachel, Wim Schuhmacher, 1926
  • White box painting nrs 334, 339, 349, 392, Christiaan Kuitwaard, 2018-2019
  • Stilleven met kaas en eieren, Henk Helmantel, 1987
  • Hoer met cyclamen II, Herman Gordijn, 1985-1988
  • Petri Leijdekkers, Annemarie Busschers, 2008
  • 'Poet Laureate' Driek van Wissen, Annemarie Busschers, 2006
  • Zonder titel, Lidwien van de Ven, 1989
  • Zelf portret, Annemarie Busschers, 2008
  • Landschap III, Levi van Veluw, 2008
  • Zonder titel, Katinka Lumpe, 2007
  • Nine self-portrets, Philip Akkerman, 1983-2003
  • Zelfportret met bontkraag, Charley Toorop, 1940
  • Zelfportret in spiegel, Johan Mekkink, 1940
  • Beheaded mannequin, Arout Killian, 2004
  • Staand meisje, Pieter Pander, 2003
  • Study in Green #2, Ruud van Empel, 2003
  • M.T. met pistool, Thom Puckey, 2008
  • Woman with white Turban, Mary Waters, 2008
  • Een ontmoeting, Koosje van Keulen, 2004
  • Dubbelnaakt, Wim Schuhmacher, 1937
  • De zilveren bruiloft, Carel Willink, 1924

Next we saw the exhibition of Jan Mankes. I found the following works notable:

  • Zelfportret, 1910
  • Zelfportret, 1908
  • Anne Mankes-Zernike, 1918
  • Ditte van de Vies, 1917
  • Bouwland, 1917
  • Gemberpot met dopheide, 1916
  • Avondlandschap te Eerbeek, 1917
  • Duingezicht met stoomtram, 1915
  • Bomenrij, 1915
  • Avondschemering (woudsterweg), 1914

Finally, we saw the exhibition Jan Beutener | After All. I found the following works notable:

  • Over de rand | Over the Edge, 2005
  • His, 2012
  • Schutting | Fence, 1974
  • In Between, 1986
  • Tussen de lijnen | In between the lines, 2004
  • Daar | Overthere, 2007
  • In Beeld | In the Picture, 2015
  • His 1,2, & 3, 2014
  • Windscherm | Windbreak, 1976
  • What next, 2017
  • Iets | Something, 2006
  • Liggend naakt | Reclining Nude, 2010-2011
  • Heer van achteren | Gentleman seen from the Rear, 1972
  • Schilderij | Painting, 1980
  • Delen van een wand | Part of a wall, circa 1978
  • The Room, 2015
  • Bed, 1978
  • Twilight, 1975
  • Komend van rechts | Coming from the Right, 1995-1996
  • On the Wall, 2016
  • Muur | Wall, 1973
  • Binneskamers | In Private, 1985
  • De Buren | The Neighbours, 2012
  • Wet, 2008
  • Drie cipressen | Three Cypresses, 1987
  • Buiten gebruil | Out of Service, 1982
  • Boven de horizon | Above the Horizon, 2004

Thursday, August 20, 2020


Tuesday, August 18, 2020

Anet A6 Prusa i3

This evening, I got an Anet A6 Prusa i3 3D printer from a member of TkkrLab. I want to see if I can get it running with some slicer software and also think about writing programs that generate G-code for it. I found the specification of the Prusa-specific G-codes.

Monday, August 17, 2020

Heat wave

The heatwave (according to the definition used in the Netherlands) that started on August 5 has ended today, with yesterday being the ninth tropical day with temperatures above 30° Celsius. Last Friday the temperature reached 29.9° Celsius at the weather station at (the former) Airport Twenthe.

Saturday, August 15, 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,888,050 characters, having 48,795 internal links and 11,857 external links to (more than) 3,935 websites. (At least 737 of the external links are broken.) Furthermore, it contains 215 C/C++ program files with a total size of 4,790,016 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,597,272 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,343 bytes, This leads to a total size of 112,588,594 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)