Keeping Your Users in Control

One of the more interesting aspects of programming is the relation software developers have with the products they create. Software engineers have to spend so many hours literally crafting a software product, that they consider the software as theirs. It is a relationship that becomes very complicated, however, because there is another element in the…

Using Closures in Java

In the last years, fuctional programming languages such as Haskel, F#, and clojure, have gained acceptance among programming enthusiasts. They allow a concise style of programming that is not easy to replicate with imperative languages. Much of the power of functional programming languages is linked to the existence of closures. A closure is a way…