Set-Up "Let's Encrypt" for Hiawatha Web-Server

14th March 2018

Google announced that starting with Chrome version 68 they will gradually mark HTTP-connections as "not secure". "Let's Encrypt" is a free service for web-masters to obtain certificates in an easy manner. Work on "Let's Encrypt" started in 2014. Setting up "Let's…

Set-Up Hiawatha Web-Server

6th March 2018

I stumbled upon Hiawatha web-server when I read about a web-server for a houseboat by Ronald Scheckelhoff, WB8LZR. I had used Apache, thttpd, Lighttp, NGINX, and others before. Now I use Hiawatha web-server. Hiawatha has three objectives, which are nicely met: Security: Hiawatha resisted…

Towards web-based delta synchronization for cloud storage systems

3rd March 2018

Very interesting article. Some remarkable excerpts: To isolate performance issues to the JavaScript VM, the authors rebuilt the client side of WebRsync using the Chrome native client support and C++. It’s much faster. Replacing MD5 with SipHash reduces computation complexity by almost 5x. As a…

Unix Command comm: Compare Two Files

22nd February 2018

One lesser known Unix command is comm. This command is far less known than diff. comm needs two already sorted files FILE1 and FILE2. With the options -1 suppress column 1 (lines unique to FILE1) -2 suppress column 2 (lines unique to FILE2) -3 suppress column 3 (lines that appear in both…

Unix sort Issue

13th February 2018

I wondered why Unix sort behaved strangely. printf "A0 1\nA 1\n" | sort delivered A0 1 A 1 Of course, I expected A to come before A0. This was strange, as printf "A1 1\nA 1\n" | sort produced A 1 A1 1 just as expected. Also, printf "A0\nA\n" | sort orders A…

Parallelization and CPU Cache Overflow

6th February 2018

In the post Rewriting Perl to plain C the runtime of the serial runs were reported. As expected the C program was a lot faster than the Perl script. Now running programs in parallel showed two unexpected behaviours: (1) more parallelizations can degrade runtime, and (2) running unoptimized programs…

Rewriting Perl to plain C

30th January 2018

Perl script was running too slow. Rewriting it in C made it 20 times faster. 1. Problem statement. Analyze call-tree dependency in COBOL programs. There are 77 million lines of COBOL code in ca. 30,000 files. These 30,000 COBOL programs could potentially include 74,000 COPY-books comprising 10…

Hashing with Iterator in C

23rd January 2018

Many scripting languages, like Awk, Perl, Python, Lua, and so on, have hash-tables already built-in. I needed hashing functionality similar to Perl's hash-variables. In particular I needed lookup, insert, and iterating over all entries. I wrote on hashing in Hashing Just Random Numbers and Hash…

Filippo Mantovani: ARM for HPC

9th December 2017

On 23-Oct-2017 Filippo Mantovani held a talk in Darmstadt on "Mobile technology for production-ready high-performance computing systems: The path of the Mont-Blanc project". Unfortunately I was unable to attend, but Mr. Mantovani sent me his Darmstadt Seminar slides. As his slides and…

Optimal Product Portfolio

30th November 2017

1. Prerequisites Assume one owns \(n>0\) different products, \(n\in\mathbb{N}\), usually \(n\approx 100\). Each product has a cost \(c_i>0\), \(c_i\in\mathbb{R}\), associated with this ownership, \(i=1,\ldots, n\). Let \(N=\left\{1,\ldots,n\right\}\), and \(\mathbb{P}(N)\) be the powerset of…

Statistics of this Blog: Crossed 60.000 Views

21st November 2017

This blog was viewed more than 60.000 times since its inception and had more than 45.000 visitors. I wrote about the development of this blog as follows: 2014/05/07: 5,000 Views 2014/09/10: 10,000 Views 2014/12/27: 15,000 Views 2015/04/23: 20,000 Views 2016/01/24: 30,000 Views 2016/11/12: 40,000…

C Pointer Surprises

17th July 2017

An article by Krister Walfridsson on C pointers are not hardware pointers demonstrated that even adjacent integer variables having the same hardware address may compare unequal regarding C pointers. See the following C program: #include <stdio.h> int main(int argc, char *argv[]) { …

Text Analysis using Concordance

26th June 2017

When analyzing longer text, especially if this text was written by oneself, it helps to read the text in a different way, here using a concordance. Assume your text is provided as PDF. Convert PDF to text using pdftotext, which is part of package poppler. Replace line breaks in text file with…

Contributing to Hugo Static

19th June 2017

The discussion forum for Hugo contains a description: Hugo development - how to contribute code. Also see Contributing to Hugo. 1. Preparation First set GOPATH as export GOPATH=$HOME/tmp/H then cd $GOPATH Fetch source with go get time go get -u -v github.com/spf13/hugo takes around 1-2 minutes…

HP ePrint Obsolescense

12th June 2017

HP (Hewlett Packard) manufacturer of printers of various sorts (laser, ink) unfortunately again decided to annoy its loyal customers. Repeatedly HP updated firmware in printers so that they do not work with alternate ink, see for example Disabling 3rd-party ink ensures “best printing…

Five-Value Theorem of Nevanlinna

5th June 2017

In German known as Fünf-Punkte-Satz. This theorem is astounding. It says: If two meromorphic functions share five values ignoring multiplicity, then both functions are equal. Two functions, \(f(z)\) and \(g(z)\), are said to share the value \(a\) if \(f(z) - a = 0\) and \(g(z) - a = 0\) have the…

Embedded Documents in MS Word

29th May 2017

Recently I had trouble opening PDF documents embedded in Microsoft Word. I speculated about the following reasons for this problem: Adobe Acrobat not installed, I use MuPDF Embedded document simply not "really" embedded but just an icon There is an easy solution. Microsoft Word 2007…

Statistics of this Blog: Crossed 50.000 Views

18th May 2017

This blog was viewed more than 50.000 times and had more than 37.000 visitors. I wrote about the development of this blog as follows: 2014/05/07: 5.000 Views 2014/09/10: 10.000 Views 2014/12/27: 15.000 Views 2015/04/23: 20.000 Views 2016/01/24: 30.000 Views 2016/11/12: 40.000 Views The averages…

Youtube 500 Internal Server Error

11th May 2017

As noted in Youtube 500 Internal Server Error today I again noted an "500 Internal Server Error". Normally you would not expect these kind of errors from Google. It says: Sorry, something went wrong. A team of highly trained monkeys has been dispatched to deal with this situation. If you…

Converting WordPress Export File to Hugo

24th April 2017

I have written on the Hugo static site generator here. Now I have written a migration program in the Go programming language to convert from WordPress export format to Hugo format. This program wp2hugo.go is in GitHub. It can be freely downloaded and does not need any further dependencies, except,…