Latest Publications

The Downsides of Limited Intellectual Property in Psychiatric Care

As a software entrepreneur, intellectual property is a fact of life for me, like death and taxes. Between patents and DMCA protection, free software and licensing, it often feels like software is handicapped by the amount of intellectual property protection available and the ways it is applied. Innovation spreads naturally in software, and patents hinder it more often than they help. Traditional copyright is sufficient for enforcing basic software licensing, and even that may be too restrictive if the goal is to maximize innovation.

But not everything is software. A few weeks ago John Weisz of the Judge Baker Children’s Center at Harvard gave a talk at our church about his group and the work that they do. It’s a great organization, with the mission to improve psychiatric care for children. They do this in many ways, such as running the Child At-Risk Hotline for Massachusetts, operating a school for children with psychiatric challenges, teaching Harvard students, running summer programs for kids with problems, and funding various studies of children’s psychiatric care.

The studies lead to an interesting if depressing problem. Because the Judge Baker center does some of the best research in the topic, they often know exactly what treatments work for children and which do not. But there is no good way for them to spread this information out into the world.

Unlike software developers (at least the software developers I know), most psychiatrists aren’t able or inclined to reach research papers and form their own conclusions about the state of the art in their profession. Rather, they are overworked, underpaid, and have no money for professional continuing education.

Normally in medicine this problem is solved by drug companies. They have an incentive to teach doctors about their new drug or device. They will get paid by patients in the end, if they can convince the doctor that their treatment is worth prescribing. So they produce not only research, but also continuing education programs, often hosted as part of lavish vacations. They give away pens with their name on it, send reps in regularly to talk about new systems or treatments. They even do television commercials, educating consumers directly. And the whole process is kept relatively honest by FDA oversight.

Psychicatric care, at least the kind that doesn’t involve drugs, is missing both sides of this equation. There is no FDA analog, forcing rigor in research about treatments and setting acceptable practice. And there are no drug companies, developing new techniques and spending the money to inform practitioners.

The reason for this, at it’s heart, is the lack of intellectual property protection for psychiatric treatment techniques. There is no way for a developer of new techniques to capture the value that other people, providers and patients, get from their new techniques. And as a result there is no incentive to push those techniques out into the world, to market them and train providers in them, to measure their effectiveness and get articles written in parenting magazines.

In software, it often seems like we have too much intellectual property protection. It’s interesting to hear about a discipline with too little.

Hello Wordpress!

I switched to Wordpress. Let’s see if anyone notices.

CTO at StreamBase

Welcome Mass High Tech readers and others. As many new visitors to my blog know, I’ve recently taken on the position of CTO at StreamBase, the company which came out of my graduate research at MIT and where I have until recently been Chief Architect. Old visitors to my blog surprised by this post can read the official StreamBase Press release, or the Mass High Tech article linked above.

StreamBase is a top vendor for Complex Event Processing (CEP) software in Capital Markets, Defense, and other sectors. Customers use our software to implement business applications which can identify, transform, archive, and respond to events, with sub-millisecond latency, at hundreds of thousands of events per second. Doing all that requires a combination of programming language design, compiler technology, database technology, networking, performance, and developer tools. I’m lucky, because this matches my own interests precisely. In my new role, I’ll continue to be hands on with all these areas of technology, and expand my work with StreamBase customers and industry organizations.

Nothing to See Here is my low traffic personal blog, on which I comment about a fair number of things, but basically never talk about complex event processing. It keeps life simpler. If you would like to see me blogging in an official capacity about CEP, keep an eye on the StreamBase Event Processing Blog.

Ban Non-Competes in Massachusetts

I have never liked non-compete agreements. As an individual, I find them annoying. As an employer, they have caused me headaches. And politically, I think they impinge too much on individual rights. Furthermore, they are one of the ways in which Massachusetts is inferior to California for startups. That last one really bothers me.

The good news is at least one legislator is doing something about it. Will Brownsberger has announced that he will be sponsoring legislation to abolish non-compete agreements in Massachusetts. Xconomy reported about it in a story earlier this month, “Legislator Drafting Bill to Outlaw Non-Compete Agreements in Massachusetts“.

This is a simple legislative change which will cost the government little and have a big impact on Massachusetts competitiveness. However, I expect larger employers to resist any change in the law, so there may well be a fight. I want to encourage as much grassroots support of this as I can, so after the break you can find my email for inspiration and details on how to write your own representative.

Leer más »

Thinking about Tufte: Resolution Isn’t the Key

A few weeks ago I had the chance to attend Edward Tufte’s lecture in Boston thanks to StreamBase. This was one of his standard lectures on information presentation, for which he has become famous. As usual, it came complete with a set of his books. This was convenient since sometime in my last 4 moves and 3 jobs I lost my set.

I’ve been a fan of Tufte since I first encountered his work as a freshman at MIT. His books contain wonderful examples of good informational graphics, graphics that display quantitative and relationship oriented data, drawn from many modern and historical sources. They are entertaining to read, and provide lots of inspiration for user interface and graphic design.

PowerPoint

However, I’ve always found his proscriptions a bit heavy handed though. His strong advice against the use of PowerPoint always seemed to miss the fact that it can be useful. PowerPoint may suck for transferring detailed information. It may even be a bad tool that leads to ugly presentations. But overhead visuals do have merit. They can provide structure that makes it easier for inattentive audiences to follow. There were a few times during the talk, when speaking on topics not found in this books, that he went on too long without any visual aid and PowerPoint could have improved the talk.

Visual Acuity?

Several times during the talk, Tufte came back to a claim that the human eye is like a 10 megapixel camera, and that producing bad graphics is like not taking full advantage for that camera. He writes about this on his site in “Retina communicates to brain at 10 million bits per second“. This statistic comes from a University of Pennsylvania School of Medicine estimate. They measured how much data can be transmitted back to the brain by the nerve cells of the retina on a guinea pig, and extrapolated based on the larger size of the human retina. The result is an estimate of eye-brain bandwidth, in terms of raw image data.

That number, while impressive, is misleading. The brain doesn’t use every pixel in the eye independently. If you look at a television screen of static, you might be able to see every pixel, but you can’t count the white ones at a glance. The visual system compresses information, abstracting the pixels into higher level concepts that the brain is trained to understand. That’s why you can read English and use complex computer interfaces, and yet find a page full of Chinese or an airliner cockpit overwhelming.

This compression prevents your visual system from overwhelming your brain with information. Your brain is not prepared to digest every pixel on a static-filled screen. Instead, it can abstract away that piece of your visual field as a known concept, static-filled screen. Similarly, when looking at a page of text, you don’t examine every printed pixel, or even every curve of every letter. Your brain sees entire words, looking at collections of letters and using previous experience with the language and content to predict and infer words. This is why a particularly unique turn of phrase or complex sentence can throw off the pace of your reading, forcing you to go back and reevaluate what was actually being said. If we examine common reading speed (200-250 words per minute) and the bit density of written English (about 8 bits per word), we get 2000 bits per minute, or 33 bits per second. So the channel of actual information uptake is much narrower than the bandwidth of the retina.

Optimized Compression

While it is narrow, the good thing about this system of observation is that it is optimized for the common cases you encounter, because it is constantly being trained. If you are a native speaker of English, you will have no trouble recognizing a page of English, while a Chinese speaker’s visual system will be more attuned to Chinese. If you are a programmer, even if you have never used it the Eclipse IDE will likely look familiar, while if you have been a Wall Street trader, then a Bloomberg terminal will seem familiar.

This trained visual system has a big impact on the design of information interfaces. Humans are capable of using very complex interfaces, if they have been trained to use them. Throughout his talk, Tufte kept coming back to the sports pages, pointing out that they are a wonderfully dense source of information, and a good place to go for inspiration. Well, one reason for this is that the last few generations of Americans were introduced to the sports pages as kids, and took the time to understand the information displayed there. We were not born with the ability to interpret a baseball line score, but it would be tough to grow up in America without at least some familiarity. And so any quantitative display that is based on a line score will be easy for people to understand.

When choosing a quantitative display, consider your audience and the displays with which they are already familiar. Familiar information displays will have a fast path through this visual compression. They won’t look confusing, they will look familiar. The information is pre-compressed. It doesn’t look like something else, it looks like people expect information to look.

The benefits of experience explains why new visual communications paradigms like treemaps, heatmaps, or sparklines don’t see much uptake. They are new, and there isn’t a compelling reason for people to learn them. And until a critical mass of people learn them, smart authors won’t use them.

So while I agree with many of Tufte’s conclusions, I think his theory leaves something to be desired. The goal of a visual display of information is not information density. The goal is efficiency of comprehension. And graphical paradigms that people already understand are the easiest way to give them new information.

Exchanging my Kindle for another Sony Reader

I replaced my Sony Reader with a hipper new Amazon Kindle, and I’m totally disappointed. The Kindle has a few good ideas, but it is terribly executed. I’m returning it today (something Amazon is making pleasant enough) and buying another Reader.

Read on for more detail…

Leer más »

Buy It Like You Mean It and Vendor Relationship Management

I just got back from the launch party for Buy It Like You Mean It, a startup non-profit that is “enabling the socially conscious consumer”. I’m a big fan of what they are doing. As a free-market capitalist, I like to think that the power of markets can solve all kinds of problems. As a realist (and Wall Street technology vendor), I realize that market actors can have wildly different information and expertise.

Consumer goods suffer greatly from this problem. They are produced and distributed by large and complex organizations. Consumers, particularly in traditional retail settings, have little to go on but what it says on the box and the brand. And in recent times, brands have become commodities themselves, with everyone from Martha Stewart to Sesame Street selling their name. In order to make this market work, we need better technology at the point of sale.

Enter Buy It Like You Mean It.

Leer más »

kdb+ now available for free download

If you’ve talked to me about programming languages and Wall Street in the last 4 years, I’ve probably mentioned kx. This is a company which makes a combination programming environment and database based on a language called q which is derived from APL. (Yes, APL, the language invented in 1957 before there was a computer to run it on.) And this environment is in turn used by many of the top quants on Wall Street (and other parts of the financial world) for both research and production systems. Becoming a kx programmer is a good way to double your salary and quadruple your job security.

Well, it’s been going around my corner of the blogosphere that kdb+ is now free for personal use. I first heard about it from Marc Adler. You can go download it from the kx download page. This represents a big step towards openness, which I think will be good for everyone.

The q environment is impressive, you have to give them that. There is an emphasis on brevity; the OSX binary of kdb+ is only 227K. That’s smaller than the ncurses library it ships with. And brevity doesn’t stop there. Utterances in the language are well known for their complexity and impenetrable internal logic. A lot of q code makes obfuscated perl look clear and verbose. It doesn’t help that the culture of kx programmers discourages commenting. Error handling is tricky at best, and modularity and maintainability are in short supply. For confusion, q adds a bunch of SQL keywords on top of the previous language, k, in an almost but not quite fully compatible way.

But for all the faults you can kind find some really interesting features in q. And if nothing else, it is an example of a novel programming language, tightly integrated with a data management system, finding commercial success, which is always nice to see. And if you learn it, you might find a sweet job on wall street as a result.

When neither a column store nor a row store is the answer

A few days ago I found myself giving database advice to a friend with a new startup. His problem is a pretty common one: he has a very large corpus of data, over which he will run compute-intensive proprietary algorithms. Both the data and the computation will require a cluster of machines. He has a prototype based on Postgres. His question to me: should I continue to use a row store (Postgres) or should I use new technology, specifically a column store?

If you read the title of the post, you can already guess that my answer was neither.

Leer más »

Google commences another assault on the traditional database community

Many in the blogosphere noticed when Stonebraker and Dewitt at The Database Column took offense at the idea that map-reduce is the solution to many of life’s problems. The idea that a simple idea, promoted by a services company, can blow away 20+ years of distributed database research, bothers them for some reason. Sure, it may not be the best solution to every problem, but it is a sufficient solution to many problems.

Google is quietly at it again, this time with the Google AppEngine.

Leer más »