Teaching
Dissertations
PhD Students
Research
Papers
Presentations
NU PRL
About me
Wiki
Citations
IP
Old

A Short History: I started my research career in computer science as a theoretical computer scientist, focusing on the theory of local versus global satisfaction for the generalized maxiumum satisfiability problem (MAX-CSP), still an active area of research. I also invented, independently and simultaneously on the other side of the Atlantic, an early form of non-chronological backtracking based on learned clauses (superresolution) which has become a key feature of most state-of-the-art SAT and CSP solvers.

Over the last few years, the work on P-optimal algorithms has influenced the development of a computational model for scientific communities. The model is realized as an exciting, fun but serious game, called the Scientific Community Game (SCG) (also called the Specker Challenge Game) which is used both as a teaching innovation in CS courses as well as as a driver and evaluator for computational innovations. The game creates a virtual scientific community of scholars in the spirit of Karl Popper, proposing and opposing claims (defined by a refutation protocol in a given domain). The scholars who are good at defending their own claims and successfully opposing the claims of others, win the game. The egoistic scholars produce, as a side effect, a knowledge base of claims believed to be true and the corresponding know-how to defend those claims. I see great value in SCG in any domain where claims are refuted computationally.

Next I applied my theoretical knowledge to another practical problem: the design and implementation of the Hardware Description Language Zeus, a predecessor of VHDL.

In the mid 1980s, I switched to Object-Oriented and Aspect-Oriented Software Development and focused on issues of software design and modularity. I founded the Demeter research team, which studied the then-novel idea of Adaptive Programming, also known as structure-shy programming and produced the Law of Demeter ("talk only to your friends": an explicit form of coupling control) and several systems for separating concerns in an object-oriented programming context: Demeter/Flavors, Demeter/C++, DemeterJ, DJ, XAspects. The new tool, DemeterF , adds the power of fine-grained type checking to control the evolution of functional, adaptive programs that can be easily re-targeted to different architectures, e.g. multi-core architectures.

My current area of research is Human Computation, specifically the Scientific Community Game (SCG) which could be called the "Wikipedia of Computations".