In-Depth
Pioneer's Prerogative: Dan Bricklin
Father of the spreadsheet, Dan Bricklin, talks about Microsoft, open source and his latest venture.
Some 27 years after he delivered VisiCalc, the fledgling microcomputer industry's
first killer application, software pioneer Dan Bricklin is back at it. Bricklin,
president of his one-programmer company, Software Garden, Inc., is on the verge
of shipping wikiCalc. The upcoming product is a Web authoring tool for creating
and maintaining Web pages with multiperson edit capabilities that uses -- you
guessed it -- a spreadsheet metaphor.
The upcoming open source product, which works with Windows, Linux and Macintosh
environments, borrows some of its form and functions from Bricklin's List Garden
program, which produces RSS feeds on a local machine that can publish that feed
up to a Web site. But when it came to what type of interface to use for the
product, Bricklin took a walk around a familiar neighborhood.
"In terms of the UI [user interface] I said, well, what do most people
use to create simple databases? Spreadsheets. If I wanted to take the next step,
I needed to build a spreadsheet that used a browser as the interface,"
Bricklin says.
Bricklin sat down with Redmond Editor Ed Scannell and Redmond Developer News
Editor Michael Desmond to talk about his latest project as well as offer his
views on a wide range of topics including the building momentum in the open
source development world, where he thinks the hotbed for innovation is in the
software industry, and why it is OK for entrepreneurs to create companies born
to be bought.
Redmond: What made you decide to do it in open source?
Bricklin: Most of the development was done on Windows-based PCs using
an Active States version of Perl. One of the advantages of open source is that
the developers who want to make changes can do so and not have to return those
changes to anyone else. They want to take something that works and be able to
make the modifications they need and to experiment and learn inexpensively.
A lot of people start experimenting with something that they can run at home
where it does not cost the corporation anything.
Why did you decide on using Perl?
B: I knew Perl and a lot of other people know it too, and it runs everything.
It also had a lot of libraries for things I needed to do FTP and I wanted to
be able to able to do HTTP Gets and stuff like that. And those libraries are
all standard on every installation. This is what I learned from List Garden.
So it was going to be easy to deploy that.
People are increasingly critical about the lack of innovation, particularly
in the Windows world, the last few years. We are just not seeing the level of
innovation we saw in the 1980s and 1990s. Why?
B: I think we are but we don't think of that innovation as being on
the desktop, because just about every app you do now uses the Internet in some
way. We can do a good job on stuff that is local on a PC, but now we have this
whole ability to have the data live and connected and we are starting to take
advantage of that. Plus, much of the stuff we use now, we expect to use it through
a browser because people, no matter where they are, expect to have access to
everything. So a lot of the innovation is occuring in the browser. A lot of
the programming can't be seen because it may be behind the server side or on
the services side.
One discouraging trend we see is entrepreneurs coming up with some interesting
products but positioning their companies to be bought right after the products
are born. They don't seem to have the will to see their vision much beyond the
1.0 release.
B: Well, that may not be a bad thing, they may just be trying to be
realistic. It used to be that people felt they had to build a company whether
or not they had an idea that deserved a company. Say you come up with a really
unique type of screw -- do you have to become a car company to sell it? Well,
why not just make the screws and sell it to the car company. So it is OK to
build a company whose job it is to make one part really well and then sell that
part to others. But there are now some companies being built that pretend they
have something that is of value to some big company that in fact is just something
that big company would buy and then just throw away. But if you're going to
build a company that has a component of interest to a company like Microsoft
or Cisco that can't invent everything, well that is not bad. As [Sun chairman
Scott] McNealy once said, all the smartest people don't work here at Sun. If
there are 10,000 really bright people out there and you only have 1,000 of them
in your company, then 90 percent of them work elsewhere. It might be that for
the thing you need the most, the best person to create that is somewhere else.
We see on the development side guys like Jim Huginin, joining Microsoft
to work on his .NET implementation of Iron Python or Sun hiring the Ruby developers
Charles Nutter and Thomas Enebo. What are your thoughts on the big fish snapping
up these bright minds and the impact it might have on the industry? Will this
stunt innovation somewhat in terms of dynamic programming languages?
B: There are all sorts of important things that we depend on that are
running on these scripting languages from Perl to Python. We saw IBM starting
to put money into Linux, and that is good. So when some players decide it is
in their interest to put money into these platforms, that is good. It also proves
to people who are saying you can't make money at open source, that you can.
I mean we have all these open source developers getting great salaries, working
for big companies that now guarantee they can on anything they want to. There
goes that theory that you can't eat as an open source developer.
Open source has introduced a different approach to creating software than
what you have traditionally seen -- the breaking of the centralized modeling
and tightly woven processes and going with a much more federated approach. I
am wondering, are there lessons there in the open source world that can be applied
to maybe to corporate software development?
B: That is what IBM says. They have learned from the open source development
process using wikis. They are using wikis in-house in collaboration with other
developers. Within a corporation, you can really be less worried about the proprietary
nature of your software, especially if you can keep the data to yourself. These
are not open source techniques so much as it is the open source community using
these techniques because they do not have the legal restrictions, managerial
restrictions and paranoia that the old software companies had. A lot of the
early open source development was done among people who had early access to
the Internet so they were already used to it. The Internet was put together
specifically for collaboration. Why did Berners-Lee do the Web? For collaboration
among physicists. It was meant for collaboration among disparate developers
who were working for the government.
It just seems people are more interested in making money than making a difference
in the industry. True?
B: The bad times are the best times to start a company. The good times
are a bad time to start a company because everyone is busy growing and there
is no time for innovation. But innovation occurs during the bad times because
that is when you have time to do [it].
Doesn't someone besides Google have to emerge that can stand up and fight
Microsoft to keep them honest and pushing innovation forward?
B: Ah, but Microsoft on the desktop did not innovate on the desktop
where they should have and I complained to them about that. I said, 'You are
not putting money into the desktop, and no one else is putting the money into
the desktop because they are scared of you.' Microsoft was assuming all along
they could buy [products] from others, but the problem was no one else was investing
so there wasn't anything to buy. Microsoft with their apps was working in a
totally different area. They were not investing [on the desktop], but they were
investigating some things related to the desktop like Groove. Ray is very interested
in the cooperation between the desktop and servers.
So what is your advice for Ray regarding areas of innovation?
B: My job is not to give advice to Microsoft.
You mentioned that Microsoft is very aware of what you are up to with this
product. This, of course, is good news and bad news for you.
B: The people who have been saying good things about wikiCalc, a lot
of them have been Microsoft people. Of course, it might be to their advantage
to say that little Software Garden with its one programmer has a better product
in certain respects than huge Microsoft. That is a marketing thing and not necessarily
true but, well, in some ways it is. They did list it [wikiCalc] in their FCC
filing along with products like Office and Google Office.
So you are a marked man now.
B: I am a marked man. Ray has told me he is following wikiCalc and I
hope he does. We do read each other's blogs, we try to learn from each other.
In the open environment, he is a major contributor just since he has been at
Microsoft.
Such as?
B: He has added things to RSS, like how to do synchronization in RSS.
He proposed this interesting way of being able to do a type of paste with a
clipboard in a browser. And he released it with creative comments saying, "Do
with it what you want." We were all thrilled to see this. Ray is experimenting
and trying to learn about this area. Of course, he is balanced by Craig Mundie
on the other side, who has been carrying the torch against open source, especially
the GPL. Ray is clearly from the proprietary world like I am, but on the other
hand he has been involved in the academic world like I was, and is very intrigued
about understanding things about sharing.
So Microsoft is exhibiting more curiosity about open source, but is this
healthy curiosity for the industry in general?
B: They are clearly trying to understand this world. Microsoft is certainly
not a unified beast. Anyone who has worked with them as a developer knows they
are a real double-edged sword. For ISVs, they will help you with great tools
and put you in their booth at shows, and publicize your stuff, and then they
will try to beat the hell out of you competitively and put you out of business.
Those are two separate parts of the company and they both do the best job they
can. So it is up to you to do the best job you can, and if you do a good enough
job they won't knock you down. The same thing is also true with all the intellectual
property stuff for them. They are trying to understand this whole thing of collaboration
of shared source and things like that. But how do they still make money? But
they have a problem in that they need to make a lot of money because of the
way things are set. It is an issue for them.
As Bill Gates once said along time ago, "It's all just code."
B: Well, who said the way he learned to code was to read the code of
others? Bill Gates. He did that by literally looking in the dumpsters at Harvard
for the listings of the DEC operating system. And what did he do at Microsoft?
He got a lot of great programmers and they all read each other's code. Well,
this is what open source is all about. He believes in that. I would not be surprised
if we see Bill getting involved on the open source side because it could be
of help to him with some of the issues he is trying to deal with to win against
these horrible diseases and in areas like illiteracy.
Having invented the first killer apps for PCs, is it still a valid concept
today? Do we still need killer apps to make both Windows and Linux go forward?
B: Yes, we need killer apps for every new hardware or software platform.
Any platform needs killer apps to make it go forward.
We haven't seen a killer app for open source yet?
B: We had those already in Apache and Linux, and the Internet itself
turned out to be one. The Internet needed open source to get there because a
lot of the basis for the Internet comes from open source components. This is
how we realized it was valuable.
About the Author
Michael Desmond is the editor of Redmond Developer News magazine; Ed Scannell is the editor of Redmond magazine.