Wednesday, April 29, 2009

Agile Research Methodology

There is a great similarity between scientific research and software development. I hereby propose Agile Research Methodology that consists of the following 12 best practices, as an analogy to eXtreme Programming.


  1. Planning Game = Planning Game

  2. Test Driven Development = Evaluation/Review Driven

  3. Pair Programming = Joint Work

  4. On-Site Customer = Real-World Problems

  5. Continuous Integration = Continuous Reflection

  6. Refactoring = Rewriting

  7. Small Releases = Frequent Publications

  8. Coding Standards = Benchmark Data

  9. Collective Ownership = Co-authorship

  10. Simple Design = Simple Idea

  11. System Metaphor = Approach Metaphor

  12. 40-Hour Week = 40-Hour Week

Saturday, April 18, 2009

Wednesday, April 08, 2009

Compressed Sensing uses L1 norm

It is interesting that Compressed Sensing also uses the trick of L1 norm optimisation to achieve more efficient computation (than L0 norm) and sparser solution (than L2 norm).

Using LaTeX in any Web page

With jsTeXrender, a small JavaScript program from www.yourequations.com, using \LaTeX to show mathematical formula in Web pages (inclusing Blogger posts) becomes a piece of cake. Please refer to their documentation for more information.


\int_{-\infty}^{\infty}e^{-x^{2}}\;dx=\sqrt{\pi}

It works!

Saturday, March 28, 2009

Semantic Web vs. Semantic Interpretation

The article on The Unreasonable Effectiveness of Data also contrasts Semantic Web and Semantic Interpretation. Research on the Semantic Web aims to enable machines to comprehend semantic documents and data so as to achieve software service interoperability. It is fundamentally different with the problem of Semantic Interpretation, i.e., understanding human speech and writing. Roughly speaking, Semantic Web creates precise data, while Semantic Interpretation deals with inherently imprecise data --- natural language. It is important to make a clear distinction between the above two different meanings of 'semantic' which are both widely used in computer science.