A simple way to show the 'cookie' warning

The European Union, apparently, has a cookie law. This "requires websites to get consent from visitors to store or retrieve" cookies.

There are some tools out there that allow you to add this message, but it's really simple to do this yourself with a little bit of Javascript.

The first thing to do is to add a <div> to your template's <body>

<div id="cookie_warning"> We use third party "cookies" for ... <input type="button" value="Accept" onclick="javascript:cookies(true);" /><input type="button" value="Deny" onclick="javascript:cookies(false);" /></div>  Next, we add a new rule to our .css file

#cookie_warning{display:none} We don't want to show this warning when people have Javascript deactivated.

Let's stop our cookies from travelling. Encapsulate the cookie code in a function:

function google_analytics() { (function(i,s,o,g,r,a,m){{i…

How I 'hacked' the Google App Engine

A couple of days ago, I published my microdata generator tool* which still has to be integrated with

The people at were very positive, and asked me if it would run on Google App Engine. I thought that would not be too problematic. Little did I know.

So, I jumped into the documentation and found the first surprise; Python2.7 instead of Python3.4. I had to downgrade my code. Not too traumatic. Change some libraries, change some lines of code. I had to redo the pickle file because that's incompatible.

I downloaded the SDK and set up everything. First error: no 'app'. Let's see...

app = webapp2.WSGIApplication([('/',MainPage),], debug=True)
Okay. I changed the MainPage into Controller.run_this, my tool's handler. Next error: run_this accepts three parameters, two given. Hmmm, I have to do something with the webapp2.RequestHandler. Not looking good.

Didn't I read somewhere that Google App Engine was using WSGI? My program is WSGI. It sh…

Bechamel / Velouté without clumps - my method

After years of preparing velouté for Dutch croquettes, I think I can explain how to prepare this sauce without getting lumps.

The secret is quite simple: don't mix in the liquid with the heat on.

Having said that, here's the method.

Heat the liquid. Milk for bechamel. Fond for velouté.Prepare a roux. Melt butter and add flour. Normally, the proportion is 1:1, but I use 1:1,5. The flour is the thickening agent. So, more flour - more thick. For a small batch, use 100g butter, 150g flour.Cook the roux thoroughly on a medium high flame. The roux will change colour and you'll see it becoming clearer. It will also start smelling nutty.Kill the heat and add the hot liquid slowly (in increments) while stirring with a ladle or whisk. Some prefer the whisk, I prefer the ladle.After adding all the liquid, turn the heat back on. Keep stirring and finish the sauce.

Clumps will only form if you have the heat on and you don't stir.

Linear Mortgage Calculation

One of my clients asked me to do a Linear Mortgage Calculation. Not a big deal were it not that I could not find the mathematical formula for it. There are a number of online calculators, so 'they' know what's going on but 'they' don't want you to know*!

So, what's the deal? With a linear mortgage, also called a straight line mortgage, you pay back the same amount of  capital each period and therefore the same 'relative' amount of interest.

This Dutch graph explains it. 'Aflossing' is repayment. 'Rente' is interest.
So, how do you calculate this? It's relatively easy.

Loan (L) is 100.000€
Years (y) is 30
Interest (i) is 2%
Periods (p) is y*12 (months per year) is 360

Repayment (r) = L/p = 100.000/360 = 277,78€/month

The total amount of interest (t) = L*i*y =  100.000*0,02*30 = 60.000€

The first month, the interest you pay is t/p = 60.000/360 = 166.67€

Now we can solve the following equation.

r + first month interest = r + p * x

Configuring Apache2 for multisite (localhost)

Apache2 is one of the most popular webservers out there. If you develop websites, you want to have WAMP (Windows, Apache, MySQL & PHP), MAMP (Mac ...), LAMP (Linux ...) on your development machine.

I have LAMP installed on a Virtual Machine I'm using for development.

First things first; unless you're an expert, don't configure Apache2 to serve as a webserver. There are hosting services out there that have professionals doing these configurations, and they get attacked by hackers

A friend asked me how to configure Apache2 for multisite development. I told him it was easy and then spend the whole morning figuring out how easy it is. It's not hard, just follow the following steps... in no particular order.

I'm supposing you already have one site up and running.
1. Activate the Virtual Host module     You can skip this if you already have more than one site

$ sudo a2enmod vhost_alias
2. Create a new configuration file from the default $ sudo cp /etc/apache2/sites-…


Christopher Hitchens said it best when he said that talking about the goodness of the church was distracting from the main question whether gods exist, or not. “it's a time wasting tactic”
Yet, whenever the subject of taxing the church comes up, people use it as a counter-argument. Let's look at the “good” the church actually does. Parochial support for affiliated charities. Direct financial support to affiliated charities. Giving people hope*. * IMO the hope (of heaven) the church provides is annulled by the fear (of hell) the church instills first. As atheist say; The church provides an imaginary cure for an imaginary disease. I can't estimate the amount of money parochial support translate into. Suffice to say that the churches own buildings and these would be unoccupied or under-occupied without these Christian charities. Opening these buildings, apart from maintenance costs and electricity, is free and it's publicity. More on that below. The financial support t…

What the fuck is Intelligent Design?

Update: Intelligent design is a creationist' scam as shown during the Dover trial. You can check-out the legal text here and the expert witness here

Calling it as it is. Creationist leaders are scam artists (liars). They deliberately concocted the ID movement to get creationism taught in schools.

If you are a Christian, according to your faith, lying is a "sin". Think about the lack of ethics of these people.

End update - January 3rd, 2017

The original article below:

I contend that nobody knows. According to IDelists I've come across with, other IDelists are wrong. It may be that I'm constructing a Strawman logical fallacy, but I think ID is deliberately constructing a logical fallacy of confusion.

Here's what I understand.
ID is against the scientific theory of evolution, because evolution doesn't explain abiogenesis. ID explains abiogenesis with an unnamed designer, either supernatural or … alien. ID does not accept evolution but adaptation (what…