Sunday, March 13, 2011

My Research Problems for 2011 and Beyond

I think about a set of problems, and apparently I'm not the only one. So, I'd like to share the problems I think about here and there.
  1. How do I make a programming language not Turing complete yet useful enough and have that programming language satisfy the halting problem?
  2. Why do graphical models feel powerful until I need to do something with them?
  3. How can I utilize a Bayesian Network in a compiled form (for embedded systems)? Is this even useful? Can compiled Bayesian Networks adapt over time? Can I produce chips that get better over time?
  4. How can I make Bayesian network inference super fast?
  5. How can I use computer graphics to aid in teaching programming and software design?
  6. Can I map out the entire infrastructure with a modelling language and have a compiler manage an infrastructure?
  7. Do I even need a schema? What are the managerial aspects of going schema-free?
  8. How can I make using a database suck less? Why is relational so sell-able yet so damn silly? Is relational out of date? How do I design with key-value pairs?
  9. How do I deal with replication between non-heterogeneous environments? How do I deal with the CAP theorem? How do I replicate from the earth to the moon?
  10. Is it feasible to put a mini data center on the moon?
  11. How do I balance expressive graphics with high performances?
  12. How can I make extracting good data from HTML suck way less? How can I query a tree with a beautiful language?
  13. How do I utilize map reduce to produce good relevancy findings (recommendation engine, duplicate content)? How can I improve the quality given free-text?
  14. How do I build a Voronoi diagram on non-euclidean spaces?
  15. How does building a state machine compiler work for making synchronous looking code asynchronous without threads? Would Narrative Javascript + node.js be full of win?
  16. How can I make sure node.js is going to win?
  17. How can a game/physics engine be built around non-euclidean geometry?
  18. How do I make sure CouchDB doesn't suck for some of my future projects?
  19. How do I make jobs?
Some of these are old, and I'm fairly sure that some have open source solutions now. Some of them have answers, and I just need to read the current literature. I've got other questions, but they are more business related.

The most fundamental question I have is how can we improve education?

I think about education more than I should because I care deeply about it. My next project is going to related to education.


  1. 19. How do I make jobs?

    Form a startup perhaps using the ideas above ;)

  2. @Mandoragon I should have said "How do I create revenue to pay for jobs"