Gigapixel camera a reality or fiction?

I was absolutely amazed by what people set forth to achieve, especially something so adventurous such as creating a camera that can take an image at a gigapixel resolution (that is a thousand times more resolution than your standard 1 megapixel camera of today). Check it out.

Life, philosophy and me

Admit it - the photo below intrigues you? Right? If not, then click the back button on your browser now to avoid any possible head injuries.

The day I took this photo was the worst in my life
The day I took this photo was the worst in my life
Is this day or night? Sun or moon?
Is this day or night? Sun or moon?
Full Article

Philosophical Discussions About Everything

Warning and Disclaimer: If you are a sensitive reader or easily offended, do NOT read any further.

I have several strong opinions (note - these are all my own, personal and humble opinions and should be interpreted that way) on several aspects of society. I want to start with developers. By developers I refer to anybody that designs and writes computer programs. Traditionally, when the whole concept of programming started way back in the 60's and 70's (excluding the VERY early days as I know nothing about that :)), developers were very, very different people than the modern developer of today.

As an illustration, those days developers did not have the luxury of a PC (Personal Computer). They shared a mainframe on which they developed their respective applications. You had to book your time with the mainframe several weeks ahead in order to debug and test your code. This had several important consequences. Firstly, because time was a luxury and not a given, it was absolutely imperative for developers to make sure they maximise their productivity for each session on the mainframe. To maximise your productivity, it was obvious that you could not spend your time debugging faulty code. Time was much better spent ensuring that the program worked correctly than on debugging. They managed to do this by debugging their code using pen and paper. Yes, you heard right. Pen and paper. They used variable inspection tables and lots of different diagrams to trace the dynamics of the application before even running it on the mainframe. It was also quite expensive to punch the wrong program on the punch cards in use at that time, so in order to optimise your efficiency the program had to be as close to perfect as possible the first time.

Full Article

A word or two on mathematical proof and rigor...

In The Beginning God Said...
In The Beginning God Said...

Mathematics is, for most people, something you use in order to calculate the total price of groceries, make some year end financial calculations, for engineers it could be to do some FFT's (Fast Fourier Transforms) etc. The concept I want to portray is that I am rather sure most people assume mathematics is correct, sensible and without any inconsistencies - they just use it unconditionally in their everyday life.

Well, fortunately I will not completely burst your bubble about mathematics. It is indeed correct, consistent and sensible in the right frame of reference. But how can we be so sure that what we call mathematics, is indeed correct? The answer lies in the concept of mathematical theorems each accompanied with a rigorous proof, and axioms.

Full Article

Defensive programming good or evil?

Based on a recent discussion I had with a friend of mine, I am curious to know what other people think.

The discussion revolves around the use of defensive programming techniques, as implicitly discussed in my recent article. I am going to discuss two issues.

public void doSomething(SomeClass pClass) {
    ... // Do some things
    pClass.executeSomeFunction();
    ... // Do some other things
  }
Full Article