UniWB on Nikon D600

UniWB is a way to make the camera's RGB histogram show white clipping properly by intentionally setting the "wrong" white balance.

It is based on the observation that the RGB histogram is created from the image data after applying white balance, whereas for anyone shooting RAW the interesting data is whether there is any white clipping before applying white balance. UniWB is about setting the white balance to the closest value to "no white balance" that the camera supports. Since white balance can be represented by multiplying the red and blue channels by a constant while leaving the green channel un-multiplied, "no white balance" would have the multipliers 1.0 for red and blue - thus the name "uni"-white balance.

More

Animated Mandelbrot Orbits

Anyone who has done any computer-generated graphics has come in contact with the Mandelbrot set.

More

More

Conway's Law

It is said that a company will always create a software system whose organization mirrors the organization of the company itself.

This is true, but misses that it is the result of a process in which both architectures evolve toward that point. Neither the company nor the software are fixed, with the other being an imprint of the former; rather, it is the natural endpoint of optimizing the company to produce a given product, and of designing the product in such a way as to be efficiently built by the company.

In itself it is therefore not a problem. What is a problem is if either needs to change to adapt to externally imposed business needs, but the other is incapable of following.

If you want flexibility in the product, the organization must also have provisions for such flexibility in order to continuously optimize itself to the changing requirements. Conversely, if you want to optimize the organization to meet business needs, the product must be flexible.

More

Raw Conversion

A good long while ago I did some testing of Raw vs. Jpeg. Since then a couple of things have happened and now I shoot more RAW than JPG:

  • I replaced my Nikon D40 with a Nikon D3200.

  • I gained a better understanding of what RAW offered.

  • I started doing more astrophotography.

More

More

More

More

More

More

More

Watching Paint Dry

It's not very action-packed, but kind of fascinating when seen through a close up lens.

More

More

More

More

More

Thread Pools in Google App Engine

Google App Engine supports multithreading, but only in a restricted form. In particular, all threads except the request thread must finish their work at within the request; and while there are exceptions if you run on a back-end instance, there are a lot of interesting things you can do in parallel on a front-end instance, such as multiple parallel datastore queries.

More

Republic of Kugelmugel

If you walk a couple of hundred meters from the Praterstern subway station in Vienna, you end up at the border of the Republic of Kugelmugel, a surface-minimizing micro-nation founded by Edwin Lipburger.

More

More