December 05, 2010

A New Framework For Finance

The problem in finance that lead to the 2008 collapse is intellectual, not criminal. Wall Streeters genuinely believe in their sophisticated mathematical models. They have not been trying to lie, cheat, or steal. They believe that their work generates higher efficiency, better liquidity, and huge benefits for society. Many on Wall Street are still fundamentally puzzled by the events that lead up to the Lehman collapse.

Obviously Wall Street is missing something.

The crisis... has served to discredit mainstream finance theory, and especially its key idea, that capital markets are efficient. The idea that prices are always right and that capital markets exert their own self-discipline—the so called efficient market hypothesis—has received a deadly challenge.

So the real question is an engineering question: if we cannot build a stable financial system on MPT and the EMH, then what principle are we missing? How does one build a financial system that can stand up under its own weight?

The boxed quote above is from banker-turned-LSE-economist Paul Woolley. Woolley has proposed that classical financial models are missing one basic, but fundamental detail. By adding this detail back in, he offers up a more modern analytical framework for finance that might just be the salvation of the world economy.

Continue reading "A New Framework For Finance"
Posted by David at 08:48 AM | Comments (2)

December 08, 2010

The First Permanent Language

Writing packaged software should be like writing a book: if you write a classic, then you should be able to collect royalties for decades. This model does not work in software because platforms change too fast. In 1979 Doug Neubauer wrote Star Raiders, one of the best-constructed little space games of all time. If iPhones were Atari 6502-based computers, I have no doubt we would still play Star Raiders today. But they aren't, and so we don't.

The software world needs a permanent language to make it possible for Homer to write the Illiad.

That is what makes me so excited about the new Chrome Web Store. It is the most serious attempt so far at establishing a permanent language in which you can write packaged software.


Despite the "Chrome" branding, there is nothing proprietary or otherwise ephemeral about the Chrome Web App platform. It is just HTML 5, Ecmascript, and zip files.

Win32, tied to Intel's microchips and defended by Microsoft's phalanx of lawyers, is a platform that is destined to vanish when the Microsoft Empire falls. OS X will not survive when Apple is gone. And Ellison is working hard to ensure that Java does not outlast Oracle.

On the other hand, it is not a stretch to assert that, 200 years from now when Netscape is long forgotten and Google is a shadow, computer systems will be still able to render HTML and execute Javascript.

This is the world's first language in which to write permanent software.

(On that note, go check out my first scrawlings: Reversi and Mandelbrot. It just takes a few minutes to package up an HTML app and post it on the store.)

Posted by David at 09:56 AM | Comments (0)

December 11, 2010

Social Responsibility in Tech

Rebecca MacKinnon's recent column is worth reading.

In a day where the New York Times is displaced by Netflix on the S&P 500 and where Chrome OS portends the end of the PC and the rise of the cloud, we need to realize that it is time for the tech business to grow up.

The electronic spaces in which 21st century citizens exercise their right to Free Speech and Peaceable Assembly are internet communities that are run by for-profit private corporations.

As the Times and the Post and the Journal downsize and struggle, the pressing question of the day is not whether Google or Facebook or Twitter or Youtube or Amazon can make the next billion dollars; but whether we in the tech world have the fortitude to take our newfound social responsibility seriously.

Posted by David at 10:00 AM | Comments (2)

December 30, 2010

Heidi's Sudoku Hintpad

Sudoku Hints with Heidi's Sudoku HintpadI have just posted Heidi's Sudoku Hintpad, a Chrome Sudoku web app for playing the popular pencil-and-paper puzzle.

This version of Sudoku is inspired by Heidi's favorite way to solve Sudoku: instead of starting by eliminating candidates one square at a time, she loves to speed along looking for digits that can only be placed in one location because they are blocked by the same digit in various rows, columns, or blocks.

Hints, not Answers

The idea of the Sudoku Hintpad is to give you several different types of hints that don't give away the puzzle.

For example, after a mistake it is easy to get lost. You can click "Check" to quickly look for obvious mistakes, and ctrl-Check checks squares against the final answer without revealing the answer. The brower's "back" button can be used to undo as many steps as needed.

If are stuck you can click "Hint" to highlight a few specific squares to mull over. The hintpad will show squares that constrain the puzzle in some way that should allow you to make a deduction. Ctrl-Hint makes the hint more explicit by pointing to squares that should be solvable after you're done thinking.

No Boring Parts

If you think the task of crossing out candidates is boring, there is a "Pencilmarks" button that does it for you automatically. Or do it for one specific square by clicking the "?" on the entry box. Once you have pencilmarks, the "Hint" button can help you find naked sets, hidden sets, x-wing formations, and so on.

The hintpad will supply random Sudoku or load them from Gordon Royale's minimum sudoku collection; or any Sudoku puzzle can be entered directly.


The hintpad is assembled using John Resig's jQuery with Ben Alman's handy BBQ plugin to manage "back" button state. Kimberly Geswein's terrific Covered-By-Your-Grace font provides digits that look just like Heidi's handwriting, and Gordon Royale's Minimum Sudoku Collection provides minimal 17-hint puzzles when you hold control and click "New Puzzle." The app's sources are here, here, and here. From beginning to end (not including jquery and bbq), it is a complete app in about 1900 lines of code.

Posted by David at 07:29 PM | Comments (9)