ThumMusings

Bringing the user interface of music-making into the 21st Century, and changing the world... one note at a time.

My Photo
Name: Jim Plamondon
Location: Austin, Texas, United States

This blog documents the development of JIMS iGetIt! Music System (JIMS). JIMS' goal is to help you Understand Music in 24 Hours™, if you are (a) a non-musician (b) who wants to learn how to write your own rock songs. Requiring no instrument other than your own computer, and without using traditional notation, JIMS is being designed to deliver a deep understanding of tonal structure...in just 24 hours.

Sunday, August 12, 2007

Delayed Binding

As a every computer programmer knows, “early binding” associates a two entities at compile time, whereas “late binding” associates two entities at run time. Late binding usually requires the identification of a new, higher-level abstraction, at which level all possible bindings look “the same,” allowing them to be delayed. Generally speaking, early binding is limiting, whereas late binding is liberating.

Here are two products which liberate consumers through delayed binding: the kapoosh Universal Knife Block and the Gator-Grip Universal Socket.

Knife Blocks
The traditional wooden knife block contains a set of slots that match the width, thickness, and length of the knives that come with it. The number and dimensions if a given knife block’s slots are “statically bound” to the number and dimensions of a given knife set at the time of manufacture.

The kapoosh Universal Knife Block abstracts the notion of “knife slot” by replacing the knife-block’s slotted wooden body with a tightly-packed matrix of flexible plastic rods. Knives of any width or thickness (within wide limits) can be inserted into the rod-matrix, with the rods shifting aside to make room. The kapoosh’s knife-slots are “dynamically bound” to match the dimensions of a given knife at the moment of its insertion into the rod-matrix.

Delaying the binding time from time of manufacture to time of use is what makes the kapoosh “universal” and therefore valuable to the consumer.

The kapoosh scores highly on Rogers’ diffusion-rate factors (power, simplicity, compatibility, observability, & trialability), so awareness of the kapoosh should diffuse rapidly.

The kapoosh is
  • Simple: “Learned” instantly, its use is easier than other knife blocks because you don’t have to think about which knife goes in which slot.
  • Cheap: At $29.99, it’s cheaper than traditional wooden knife blocks.
  • Powerful: It is compatible with all kitchen knives, from all manufacturers, so it is more “powerful” than traditional wooden knife blocks.
  • Unique: Its key innovation – its core of long flexible plastic rods – is patented.
Brand-name knife sets bundled with the kapoosh knife block are now starting to appear, which suggests that the kapoosh can disrupt the market for knife & block bundles in addition to the market for stand-alone knife blocks.

Because the kapoosh is highly disruptive and can diffuse rapidly, it is very likely to disrupt the market for wooden knife blocks.

Key Point: The fundamental innovation of the kapoosh is an abstraction of the notion of “knife slot” to a level which allows binding of knife & slot at the time of use rather than at the time of manufacture, liberating the consumer from having to care about matching knives & slots. The consumer value and disruptive potential of the kapoosh is the direct result of delayed binding.

Socket Sets
Most mechanics’ tool kits include a ratcheted socket wrench and a socket set which contains a large number of sockets. The internal cavity in a given socket perfectly encloses a hexagonal nut of a given standard size, making it easy to turn with the socket wrench. Standards vary (inevitably), so one usually needs a set of metric-sized sockets and another set of Imperial/American-sized sockets. Each socket’s internal cavity is “statically bound” to a particular standard nut size at the time of manufacture.

The Gator Grip Universal Socket abstracts the notion of “socket cavity” by replacing all of the sockets with a single socket filled with pins. Placed over a hex nut of any size, the nut pushes many of the pins back, forming a tight-fitting “socket cavity” that grips the nut. The Gator-Grip socket’s cavity is “dynamically bound” to match the dimensions of a given nut at the moment the socket’s pin-matrix is pressed down over the nut.

Delaying the binding time from time of manufacture to time of use is what makes the Gator-Grip socket “universal” and therefore valuable to the consumer.

The Gator-Grip scores highly on Rogers’ diffusion-rate factors (power, simplicity, compatibility, observability, & trialability), so awareness of the Gator-Grip should diffuse rapidly. Its manufacturers have not yet posted a YouTube video demonstrating how it works, which if available would improve its observability and hence its diffusion.

The Gator-Grip is
  • Simple: One socket for all nuts, metric or inches – no thought required.
  • Cheap: At $9.99, it’s cheaper than traditional socket sets.
  • Powerful: One socket to rule them all...
  • Unique: Its key innovation – the matrix of metal pins – is patented.
Online reviews suggest that the Gator-Grip is not quite as universal nor as easy to use as is claimed, so its relative advantage (power) is lower than that of the kapoosh, so it is less disruptive – but if these deficiencies can be addressed, it could become highly disruptive.

Key Point: The fundamental innovation of the Gator Grip is an abstraction of the notion of “socket cavity” to a level which allows binding of nut & cavity at the time of use rather than at the time of manufacture, liberating the consumer from having to care about matching nuts & sockets. The consumer value and disruptive potential of the Gator Grip is the direct result of delayed binding.

ThumLine Staff Notation
Like the kapoosh and Gator-Grip, Thumtronics’ new approach to displaying musical information delivers consumer value through the liberating effects of delayed binding.

In traditional staff notation, notes are “statically bound” to absolute pitches (frequencies). This “early binding” of notes to pitches makes on-the-fly transposition so difficult that it is the mark of a trained and seasoned professional.

ThumLine notation abstracts the notion of a “note” to a higher level by denoting “intervals relative to the tonic” rather than pitches. A song notated in ThumLine can be transposed to another key simply by changing the pitch associated with the tonic. ThumLine’s notes are “dynamically bound” to match specific pitches at the moment the tonic pitch is specified – at the time of composition, the time of publication, the time of rehearsal, or even the time of performance.

Delaying the binding time from time of manufacture (publication) to time of use is what makes ThumLine notation “universal” and therefore valuable to the consumer.

Key Point: The fundamental innovation of ThumLine is an abstraction of the notion of “note” to a level which allows binding of note & pitch at the time of use rather than at the time of manufacture (publication), liberating the consumer from having to care about transposition. The consumer value and disruptive potential of ThumLine is the direct result of delayed binding.

Conclusion
Those products which implement abstractions that liberate consumers through delayed binding are likely to be favored by the market.
I have not previously seen any discussion of the relationship between abstraction, delayed binding, and the creation of consumer value and disruptive potential. If you have, I would appreciate your bringing it to my attention.

Labels: , , , , , ,

Thursday, July 12, 2007

Abstraction: A Parable

One of the most powerful tools in science is abstraction, which Wikipedia defines to be “the process of generalization by reducing the information content of a concept or an observable phenomenon, typically in order to retain only information which is relevant for a particular purpose.” The story below is a parable on the power of abstraction.

1998: Redmond, WA
In 1998, Microsoft responded to a host of competitive threats and internal opportunities by undertaking the development of a language-neutral runtime engine (.NET Runtime), application framework (.NET Framework), and Integrated Development Environment (or “IDE,” Visual Studio.NET). Such a language-neutral Runtime, Framework, and IDE would have to implement all of programming functions that were shared across languages. That is, the Framework/Runtime/IDE had to provide an abstraction of programming language functionality. At this higher level of abstraction, all programming languages would look essentially the same.

However, at this time, within Microsoft, “language neutrality” meant “supporting every language whose name began with ‘Microsoft,’” such as Microsoft C++, Microsoft FoxPro, Microsoft Visual Basic, Microsoft J++, etc.

Project 7 Is Born
On a late fall afternoon in 1998 while soaking up some uncommonly-bright Redmond sun (and some uncommonly-good Pyramid Hefe Weizen) on my back deck, my brother Peter and I were discussing this strategy. I worked in Microsoft Research’s University Relations Group at the time, handing out cash to researchers at MIT and other universities, and Peter worked in Microsoft’s Developer Relations Group, helping independent companies develop great software development tools for Windows. Despite being “leaf-node” employees with no strategy-setting authority whatsoever, we decided to re-define “language neutral” to include non-Microsoft languages – specifically the dozen or so most academically-interesting or commercially-important programming languages. Then, in true Microsoft style, we gathered the support and resources we needed and Made It So. (I understand that Microsoft isn’t like this anymore, which is a terrible shame.)

Project 7….Scores!
Cutting to the chase… Project 7 was wildly successful, swatting home runs on all of its objectives and becoming a model for many subsequent technology evangelism efforts inside Microsoft. (This article mistakenly refers to my efforts as “Project 42,” but the rest of it is basically correct.) There are now over 40 programming languages for .NET. While the success of Project 7 is a testament to the power of technology evangelism, the success of .NET is a testament to the power of abstraction. By abstracting the notion of programming languages to a higher level, .NET made it possible for previously-isolated programming languages to interoperate seamlessly, providing new opportunities for discovery and innovation.

The LINQ Project
Project 7 also yielded some significant ancillary benefits. Among these, one of my personal favorites was that Microsoft was able to identify and hire some of the brightest minds in programming language design. One example of this (out of many – please forgive me, guys, for not listing you all here) is Erik Meijer, whose breakthrough work on data access has recently been incorporated into the .NET Runtime as LINQ (Language INtegrated Query).

Erik started the work that became LINQ by abstracting data access to a higher level. At this new level of abstraction, (a) all data sources look the same, (b) a small number of simple algebraic operations can perform all necessary data access tasks, and (c) these operations can be integrated into any programming language.

As a direct result of LINQ’s abstractions, LINQ is...
  1. so easy to use that programming tasks that would previously have required expensive, specialized database programming skills are can now be accomplished, using LINQ, by any competent computer programmer.
  2. so powerful that data access tasks that would previously have required separate, specialized code for different kinds of data sources can now be accessed with a single, simple piece of code.
  3. free with Visual Studio (including its free express editions).

LINQ’s abstractions are based on ideas from the fringes of mainstream computer programming practice: lambda calculus. The vast majority of software developers working today have never even heard of lambda calculus – except for the odd programmer (often considered to be very odd indeed). LINQ uses lambda calculus to solve the perennially vexing problem of data access so elegantly – and through such a ubiquitous vehicle as the .NET Runtime – that mainstream programmers simply cannot continue to ignore it. Because all mainstream techniques had previously failed to solve the perennially-vexing problem of data access, the eventual solution had to come from the fringes.

So, what does this have to do with Thumtronics’ musical innovations?

Thumtronics and Abstraction from the Fringe
Thumtronics’ musical innovations also arise from applying the tool of abstraction to ideas from the fringes of mainstream practice. Whereas traditional approaches to the display, control, and synthesis of musical information are focused on pitch, Thumtronics’ innovations:

  1. Abstract musical information to the higher levels of

    1. Musical Intervals: the relationships between pitches, rather than the pitches themselves, and

    2. Temperaments: the relationships among intervals, in which (for example) the major third is defined as being the same width as four tempered perfect fifths minus two octaves (syntonic temperament), or in which the diminished fourth is defined to be the same width as five octaves minus eight tempered perfect fifths (schismatic temperament);

  2. Abstract the structure of the Harmonic Series and Just Intonation to the higher level of pseudo-harmonic timbres and their related tunings; and
  3. Organize the display of musical information using the geometry of an isomorphic keyboard (also known as a “generalized keyboard”).

Thumtronics’ abstractions are based on a collection of ideas – generalized keyboards, tonic solfa, the chromatic staff, Euler’s tonnetz, tuning theory, etc. – that the vast majority of musicians know nothing about (aside from the odd microtonal musician or aficionado of alternative musical notations, considered by his peers to be very odd indeed). Thumtronics’ abstractions use ideas from the fringes of the mainstream music-making community.

However, just as LINQ’s fringy abstractions solve the perennially-vexing problem of data access, so do Thumtronics’ fringy abstractions have the potential to solve the perennially-vexing problems of (a) music education’s high failure rate, (a) the music products industry’s commoditized products, (c) the exhaustion of the resources of tonal harmony (also known as the “crisis of tonality”), and (d) the failure of any one music theory to adequately explain the many different tuning systems used around the world.

Can Thumtronics’ innovations really solve all of these problems? Maybe. I know a powerful abstraction when I see one, because I’ve seen them and driven them to success before. I’ll do the same with these.

The Moral
The moral of this story is simple: abstraction of ideas from the fringe can solve perennially-vexing problems and change the world. Never bet against an abstraction whose time has come.

Labels: , , , , ,