Early adopter, entrepreneur, leader interested in software, the Internet, mobile telephony and computing, and VoIP. Founder or senior management with The Personal Bee, Orb Networks, CallTrex, Borland (BORL), The Dr. Spock Company, Neta4, WhoWhere?, CMP Media, and IT Solutions.

Today's Buzz:

Saturday, September 21, 2002

Platform adoption -- the role of the software developer

There is a comment that I made to Eric Knorr in my interview with him that seems to have been misunderstood by some readers. It is also a key to understanding why Microsoft has been so successful while other platform vendors have not. I said:

"In the non-Microsoft world, there is very little appreciation for how important the developer is to the ultimate success of the platform."

Geoff Stevenson wrote in, pointing out that Linux has been entirely developer driven and that "...these are people who actually care in a personal way about what they're doing..." He also chided me for extoling the virtues of Microsoft... which I had not done.

The point I was trying to make was actually entirely consonant with this reader's view. It is because software developers are often passionate about their creations that they can contribute so much to the success of a platform. The rapid growth of Linux, and the quality of that platform is a testament to that fact.

My point was that amongst platform vendors, Microsoft has been one of the few companies that have really focused on the role of the software developer in making their platform a success. This focus causes them to create good developer tools, good partner programs for developers, and a variety of educational forums for teaching developers the Microsoft way. By contrast, look at Palm which has no development tools and a miniscule partner program. They simply haven't focused on developers and are now paying the price as Win CE begins to have all of the exciting content for customers of handheld devices -- its the developer that makes the product something that a consumer wants to buy.

Microsoft itself has struggled in the game station market for exactly this reason. The "hit" software is on the Sony and Nintendo devices. So Microsoft has even had to buy game development companies in order to get the hit products that will help them sell the Xbox.

Thursday, September 19, 2002

Borland's bird's-eye view

Part one of an interview I did with ZDNet's Eric Knorr. If you want to comment you can join in the discussion section at the bottom of that page or send me your comments directly at tshelton@borland.com

Will Java come back on the desktop?

The debate on SWING seems to be finally heating up, with Alan Williamson's recent article Swing Is Swinging Java Out of the Desktop describing what he sees to be the fundamental flaws in Java's desktop strategy. In addition to the article itself, make sure you take a look at the lively discussion in the "Reader Feedback" section at the end of the article.

A debate on the merits of SWING is long overdue if Java is going to find itself a place on the desktop in competition with Microsoft. For far too long the Java community has tried to fit every software client problem into a web browser. There are some applications where a rich client application really is the right answer. A major part of Microsoft's push with .NET will be in creating a new focus on the user experience and what can be done in a rich client environment. The Java community needs an answer that is based on the standards process to answer the need for a rich client environment with Java.


Not that I intend on becoming a part of Apple's switcher ad campaign but I have to say that I am truly impressed with my new Mac OS X powerbook. It is a joy to use, and it is very reliable:

Last login: Sun Aug 25 19:55:48 on console
Welcome to Darwin!
[Ted-Sheltons-Computer:~] tshelton% uptime
6:44AM up 24 days, 11:27, 2 users, load averages: 0.23, 0.21, 0.26

Of course it helps that it is really NeXTStep, first released commercially in 1988 and built on top of BSD Unix. So you have a product that has been under development for thirty something years. It had better be solid! But then the question has to be posed -- why can't Microsoft build as good a product with all of their $billions?

Sunday, September 15, 2002

Opaque creativity continued...

The conversation with Lawrence Lessig continues with his comments on my previous note, and my reply:

He states that we are in agreement about one important point, "that the ultimate question here is which system provides the best incentives to create and spread knowledge."

To this, however, I would add another question, which I believe is of equal importance. In addition to the objective of promoting the progress of science, I believe that intellectual property law also serves an important economic objective. By taking the insubstantial (an idea, story, software program) and giving it the status of the substantial (property) we create the possibility of commerce in ideas, without which our growing knowledge-based economy would be impossible. Even in the case of the publishers of 1774, an important element of the debate for granting copy - rights is to enable an author and his publisher to benefit economically for some period of time, thus creating the very possibility of a publisher. It is as important to promote the commerce of ideas as it is to promote the communal ownership of ideas as both contribute to the promotion of progress.

I don't believe that this idea is at odds with Lessig's formulation of providing "the best incentives to create and spread knowledge," though certainly there have been many arguments about whether or not capitalism is the "best incentive." On this I think I would paraphrase Churchill and claim that capitalism is the worst form of incentive, except for all the rest. And so I believe it is important to regard the State's role in promoting economic activity which contributes to the wider well being of all citizens (job creation, etc), beyond the narrower goal of creating and spreading knowledge. Thus there is an economic good in treating a software program as property, beyond the possibility that some day that software program will pass into common ownership and become a basis for further creativity.

Lessig asks for clarification on two points raised in my prior note --
He claims that he is offering the same choice to the software developer that the inventor has when considering whether to patent a process or design or to keep such processes or designs a "trade secret." If this is the case, then I do not understand his proposal. I believe that Lessig's suggestion with respect to a category of creativity which he calls "opaque" is that this category shall not receive the designation of property, and the protection from theft, that "transparent" creativity automatically receives. My understanding is that in order to receive this protection, the opaque quality of this creativity would have to be disclosed and held in a government operated escrow for the duration of the period that it would receive protection. In the case of source code, this would entail a number of steps which would prove to have some significant price tag attached -- the software creator would have to provide the source code for the software program, along with all tools, libraries, languages, and deployment environments necessary for the government to ascertain that the source code provided was truly sufficient to create the protected opaque work. Furthermore, if the software creator did not fulfill this requirement, he/she could expect no legal protection from the theft (copying) of the opaque work.

There is a key difference between digital and physical products. With a digital work, the opaque version can be endlessly copied, virtually for free and with no need for access to the underlying method of creation (source code). With a physical work, the product must be manufactured one at a time, with each copy requiring access to the underlying method of creation (patented process or design or the trade secret). This is why I claim that Lessig is offering a very different scenario to the software developer. Without the legal status of property, the software developer has no economic incentive to release a product knowing that any and all may freely copy and distribute the work. Thus I conclude that the software developer will be compelled to participate in Lessig's escrow plan and that it will not be a choice between protection and no protection as in traditional inventions where the product is physical.

Being Digital
This difference between "bits" and "atoms" as Nicholas Negroponte so eloquently described them in his 1996 book Being Digital also is at the heart of my answer to Lessig's second question, why there is a "...difference between giving the world all the information needed to build a cotton gin and giving the world all the information needed to write 123..." In the case of the cotton gin, I indeed may have all of the information needed to build one -- the method of creation, but I would not have a cotton gin. My argument is that there is in fact a significant difference from an economic perspective between the disclosure of an invention and the disclosure of software source code.

With the patent of the cotton gin, I merely have the information needed to build a cotton gin. I still must obtain raw materials, craft those materials into components, and bind the components to each other to form the product. Finally, I must market, distribute, and support this product. In the case of a software program (such as Lotus 123), under Lessig's scenario, the State would distribute not just the method of creation, but also the raw materials, the components and the binding of those components into the product. In the case of the cotton gin, my competitor may produce an inferior product, or a more costly product than I, and my competitor will have to expend significant resources just to learn how to operate the method of creation that I had outlined in my patent application. But in the case of software, my competitor will be provided with exactly the same product, at no expense. In fact, there will be no need for a competitor since the State itself will become the competitor, providing an authoritative source for obtaining my product.

Software can be thought of as having two different kinds of intellectual property that are combined to produce the final work. One category is like the invention which may be kept secret or patented -- I shall call this category "algorithms." As an aside, I do not intend to start a debate here on the merits or problems with software patents. The second category is like the book, and I shall call this the "implementation." The proper corollary to Lessig's example of an inventor having the choice between disclosing an idea in order to obtain a patent vs. keeping the idea a "trade secret" is the algorithm. Thus, all of the algorithms needed to create a spreadsheet would be the equivalent of the information needed to build a cotton gin. But the implementation, the source code, IS the cotton gin itself. Requiring the software developer to give away the source code is the equivalent of the government giving away a complete working cotton gin to everyone who wants one once Whitney's patent expires.

Web tedshelton.blogspot.com