Home > technical > Transfer Of Mental Ownership

Transfer Of Mental Ownership

I don’t know how to write code in the Erlang programming language, but ever since reading Bjarne Stroustrup‘s “The Design And Evolution Of C++“, I’ve been interested in the topic of programming language creation, development, and adoption. Sinisterly, I look for how much support, or lack thereof, that management provided to the language creators.

In this entertaining InfoQ video, “A Discussion Of Basic vs. Applied Research In The Software Domain And The Creation Of Erlang“, kindly and soft-spoken Bjarne Dacker recounts the development of Erlang. Here are some of my distorted notes:

Many problems that need to be solved by software are not computationally intensive, they’re symbolic.

The sequential and synchronous Von Neumann programming model does not map cleanly into the realm of real-time control systems.

The Erlang team asked: “Why are software academics obsessed with all these subtle, disparate, awkward, and complicated communication schemes like buffers, semaphores, mailboxes, rendezvous, regions, pipes? Why not just simply send messages between asynchronously running processes?”

Erlang designers took the goodies from Modula, Ada, and Chill and discarded the baddies.

By being devious and cunning, Dacker was able to subvert the corpo bureaucratic mandate that “everybody shall use the centralized IBM mainframe” and he miraculously secured approval to purchase a dedicated VAX (close to state of the art at the time) computing platform for his team.

Ericsson management wanted Erlang to be proprietary; a secret weapon that would allow them to develop their telecommunication products faster than their competitors. On the other hand, Ericsson management disallowed the usage of Erlang internally because it wasn’t an open standard (LOL!).

You can’t just throw new technology over the wall to product teams. You must create mixed teams; embedding applied researchers within product teams. You must facilitate the transfer of “mental ownership”.

In 2009, “something” happened. The number of Erlang downloads at Erlang.org started to skyrocket.

In keeping with my goal of providing a dorky graphic with each blog post, I present Mr. Dacker’s process for the successful transition of applied research knowledge into the marketplace.

Notice that going “backward” and cycling multiple times through the mistake prone experiment/evaluate activities (which most sequential, linear, forward-only management CGHs abhor and forbid) is an integral part of Dacker’s process. The mixing of researchers with product developers occurs in the production/exploitation stage.

  1. PhilN
    September 29, 2010 at 9:18 am

    That sort of “actor” oriented programming was quite a fad at MIT for a while, i.e. simple programs exchanging messages. Digital Switch Corporation (a big telephony switching company at one time) even created an OS called EKOS (we use to lovingly refer to it as the Elf Keebler Operating System) that was based on this concept of message exchanges spread across hundreds of individual processor boards. The actor concept also made it into Realtime Object Oriented Modeling (i.e. Bran Selic’s ROOM) before it was scarfed up by the OMG in RT UML.

    • September 29, 2010 at 9:35 am

      Thanks for the interesting history Phillippe.

      I love actors, especially good ones like Scarlett Johansson. Now if I only could get her to do my work then that would be true actor oriented programming.

  2. PhilN
    September 29, 2010 at 1:44 pm

    SALSA is an Actor Oriented Programming language!
    http://wcl.cs.rpi.edu/salsa/tutorial/salsa1_1_2/node5.html

    • September 29, 2010 at 1:57 pm

      Salsa? That reminds me of another good candidate for my actor oriented programming team – Salma Hayek.

  3. PhilN
    September 29, 2010 at 3:00 pm

    Brilliant, but can she actually code?

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: