lot of people view OneNote as a single-user application designed for
personal notes. This is a pretty narrow view of an application we have
much grander ambitions for. Of course it is not as narrow as the “it
only works on TabletPC” myth (grr), but it's still pretty narrow.
As we started planning OneNote 12 in
the summer of 2004, for kicks we dusted off our original vision for it.
Right there in black and white in the original vision doc from early
2001 there is a sentence I wrote at the urging of my dev manager to
specify what we were NOT going to do in the first release as a guide to
the team. It states, “Scribbler [OneNote] will be a single-user
application for personal use. Although we intend to make it a
multi-user application in the future, our first release will focus on
the single user scenario to make sure we get it right”.
Our dev team was actually very excited
to design into OneNote from the very beginning the ability to treat
every page and every little bit of content on a page as a node on a
graph that can be modified by any number of user agents. They did not
want to make any assumptions in the architecture or the code that
required a single user to be doing the modifications to this graph in a
particular sequence. So we had to put in a little explicit “Down Boy!”
to make sure we stayed focused for the first release.
When we had a chance to do SP1 with a
load of features, we enabled real-time multi-user editing of pages. We
had already found OneNote a compelling way to enhance meetings – it
would be even better if we could all use it together – including people
attending by phone. We hooked ourselves up to a convenient peer-to-peer
sharing technology that was in every version of Windows we supported:
DirectPlay. This is used for multi-player games on LANs, but it also
works for note taking apps that work using the same principle of
passing changes to the other members in the “game'. I wrote more about
The upshot was that we had a
non-trivial multi-user editing surface which could be used in
real-time. Multi-user editing of a document is one of those hard
problems in computer science. It's been done for simple documents such
as text files or pixel-drawing whiteboards, but to do it for something
tricky and complex like a OneNote page was novel. I am not aware of any
non-research application out there that does this to the degree we do
(where any user can edit at once in an unstructured way). There were a
few limitations to this approach – namely it was really focused on
synchronous multi-user editing (i.e. you are all working together in
real-time), so it was not a good candidate for collaboration that
lasted more than a few hours.
Another thing we added in SP1 was the
ability to open a folder on a file share. We had some customers early
on (even before we shipped the final code for the original release) who
immediately saw that OneNote was a great place to keep the notes for a
team (of, say, lawyers and paralegals) for one or more projects. They
had a problem today where only one person could read and access notes
and documents at one time with their existing tools, and they needed to
move faster. They were quite motivated to make it so each user could
see and add to or annotate a shared set of information, such as the
case file for a client. It's sort of interesting to have a PDF file in
a shared location such as a file share or document management system.
More interesting is if you can see the other lawyers' opinions of the
various clauses in that contract or brief – written in ink or typed
beside the pages, or highlighted passages.
OK, still with me? Here's where OneNote 12 comes in. OneNote
12 allows something we are tentatively calling “shared notebooks”.
Other working titles include “Nirvana and you”, or “Happiness on a
stick”. [:) [Chris_Pratley's OneNote WebLog]