Category Archives: Tools

Tools contain posts describing a certain tool from Grundsätzlich IT. A link to an external tool is usually a review.

Collatz calculator

By Pokipsy76 - English wikipedia, Public Domain, https://commons.wikimedia.org/w/index.php?curid=7188269

Grundsätzlich IT B.V. would like to publish a small javascript tool: the Collatz Calculator, on the occasion of the publication of a new proof of the Collatz Conjecture.

Two days ago Peter Schorer published a new proof of the famous mathematical problem named the Collatz Conjecture. This doesn’t mean it has been proven, though: new proofs for this particular problem appear with depressing regularity, only to be invalidated in a few weeks. But we can always hope for the best!

The problem itself can be stated in simple terms:

Take any positive integer n.

  • If n is even, divide it by 2 to get n / 2
  • If n is odd, multiply it by 3 and add 1 to obtain 3n + 1

Repeat the process (which has been called “Half Or Triple Plus One”, or HOTPO[7]) indefinitely.

The conjecture is that no matter what number you start with, you will always eventually reach 1. This seems easy to prove, but the Collatz mapping above exhibits chaotic, even fractal behaviour. Thus, a proof has long been sought but not yet been found. Due to the relationship to several other longstanding mathematical problems, this problem has occupied mathematicians for at least a century, possibly much longer than that. Leading to frustration in some quarters.

Used with permission.

To get some idea of the complexities of the mapping, feel free to play with this Collatz Calculator (javascript): Start the Collatz Calculator

 

Time Dimension Generator v1.41

In a data warehouse we often use a table containing information about dates. This is called a Time dimension (it should rather be called a Date Dimension, but let’s not quibble). This table is used to deal with calculations regarding time in SQL queries a bit easier. It enables us to attach meaning to dates as well, by letting us add attributes to them. Using time-shifted columns in the table we can then say things like “give me all the sales of the same period last year, for period X to Z”. Given the right query, of course.

This tool generates a table you can load into a data warehouse. For more information, please see http://en.wikipedia.org/wiki/Dimension_(data_warehouse) (it needs improvement but it’s a start). Note that it is available in the Dutch language only, due to specific features that depend on the Dutch local calendar (like working days). I may (on request) rebuild it for international use, but please check the following alternatives first: http://it.toolbox.com/wiki/index.php/Create_a_Time_Dimension_/_Date_Table or http://www.ipcdesigns.com/dim_date/.

Start the Time Dimension Generator (Dutch language version only).

Templator v1.0

This tool provides a template-replacement-service. You provide a template with variables, a signle line with the names of the variables and an number of lines (say, N) with replacements (CSV-format). The result will be N templates, with all the variables replaced by row 1..N from the replacements. Those templates will be present in a single download.

What do you use it for? Well… currently I use it as follows: create an ETL-workflow in BODS. Export the workflow to XML. Replace the items that are variable with variable-names. Save this as a template. Now, when a new workflow is necessary, it is just a matter of copying the variables, their replacements and the template into the Templator. Then, run it and use the download as an import (after removing superfluous begin and end-tags).

It works best if you have highly similar flows based on highly similar inputs that differ only by up to ten variables. Beyond that, it tends to become more cumbersome to gather the replacement values than to copy and paste the original workflow. Your mileage may vary, however.

Start the Templator or the Dutch language version.