Idea processing software
“Idea processing software and how it relates to production software. Just some of the thinking behind the OPML editor that I’m working on.”
Dave discusses his work on “idea processing” software, which he sees as a different category from traditional “productivity” or “production” applications. He explains that idea processing software, like outliners, allows users to easily organize and rearrange their thoughts, in contrast to paper-based methods. Winer notes that hierarchical structures and recursive data models are common in software, and he believes formalizing these concepts in a general-purpose “idea processor” could be valuable. He is currently working on developing OPML and other tools for this purpose, and invites listeners who are interested in idea processing to share their thoughts and experiences with him.
Listen
Transcript
This transcript was automatically generated.
So production apps or productivity apps, those were they were called that too, really did deliver productivity, they really did make life more efficient and they were very useful and very good things to have but there were other ways of using computers that were not about doing things that we used to do but doing them with more productivity and those were what I call the idea processing apps and the thought there is that well a whiteboard for example is an attempt or is a way of doing some visualization and you go to a whiteboard and you sort of use the whiteboard to organize your ideas or you take out a notebook and you start scribbling a notebook where you draw some diagrams and use those diagrams to help you again to sort of take your ideas out of your head and try to be able to visualize them and help you to think about them from different angles, different points of view and perhaps see that they’re not quite so complicated and the thing that you thought was insoluble because you look at it from a different angle, maybe you see a different way to solve the problem, this whole idea of taking ideas out of your brain and putting them on something that then comes in through your eyes is a very powerful way of ideating would be if it ’s a word, I guess it is a word, it’s sort of like idea processing, it’s a way of processing ideas. So I stumbled upon this idea processing thing by trying to create a better program editor, that was how I got into this stuff. A friend of mine when I was a grad student at the University of Wisconsin showed me or told me about actually the editor that people use to edit Lisp programs. Lisp is a programming language and its name is not actually an acronym but it stands for Lisp Processor and a Lisp program is actually a list and the list is a hierarchical thing, a list can contain other lists and my friend told me about this idea that they had an editor that understood this basic structure , this recursive nature of Lisp programs and they had a feature called Elision which allowed you to say I don’t want to look at the detail here, I don’t want to see any of the lists below a certain level and so then you could sort of see the forest and not see the trees and I thought wow that’s really interesting and I noticed the same thing was true about the programming language that I was working in at the time which was Pascal and I saw that basically while it wasn’t quite as consistent a hierarch ical language in the sense that Lisp only had one way to go in and out levels that was through parentheses, Pascal had a little bit more cumbersome way of doing it but still was a statement could contain a list of statements each of which in turn could contain a list of statements and that’s basically how you build programs, all programs basically at the top level were just one statement and basically a call to a procedure and then that procedure could have a statement list and each of those statements could be a compound statement, each one could be a simple statement that wasn’t compound so this idea of recursion is something that keeps coming up in computers and they come up at the beginning, recursion comes up at the very beginning where we define the languages that we use to create software, they’re recurs ive, the data structures that we use inside those programming languages, they’re also recurs ive, they’re hierarchical list structures that can contain other lists.
People say well you know hierarchy is too rigid, well it turns out that hierarchy actually isn’t really all that rigid because you can have this idea of what I call inclusion, other people use different terms they call them transclusion that’s what Ted Nelson calls them.
In programming languages inclusion is a procedure call, you call a procedure, you basically jump to that procedure and use every bit of its capabilities and then when you’re done you come back to where you called it from and you can do that as many different places as you want so really hierarch ies can very easily be used to model networks and in fact it’s probably the most natural way to do this because nobody’s really ever come up with an editor, at least not one that I’ve ever seen that was really good at editing networks yet we have great editors for editing hierarchies, we have an infinite number of editors, basically every editor is a hierarchy editor, the question is though if these hierarchies are appearing everywhere which they are well why not formalize this and create one editor that is really good at dealing with all of these hierarchies and no matter where they show up because they show up everywhere, they show up like for example the file system on your desktop computer if you use Windows or use Macint osh or use Linux it really doesn ’t matter all of our file systems are also these hierarchies, these lists, these sort of recursive structures that then can be turned into networks and there in a file system on the Macintosh they call the escapes , they call them aliases, you know I can basically put a link to a folder anywhere I want to and then it’s as if that folder actually were right there and in Windows they’re called shortcuts, forget what they’re called in Unix but Unix has them as well, now these shortcuts these were aliases or hyper jumps or links in the web was what they’re called, they’re called links, oh by the way there are many other places in our computers where we have these sorts of structures, we have them for example PowerPoint, PowerPoint, a sequence of slides is a list and is it hierarchical, yeah of course it is because why because any given slide can contain any number of bullet points and since people now use outliners by the way I created a program called more in the 1980s that also that started right at the very beginning with the idea that a slideshow was simply an outline and an arbitr arily deep outline where each of the top level headlines was a slide and then within the slide you could have any amount of structure that you wanted, PowerPoint caught up with that a number of years later and while they don’t have quite as general structure, outline or list or whatever you want to call them became a very popular way to do those there as well in PowerPoint as well.
In any case so what I was working on, now I worked on just a straight outliner, just something it wasn’t about producing anything, it wasn’t about filing data, it wasn’t about typing something, it wasn’t about doing something that we used to do before better than we did it before because we were using computer, I mean if you wanted to compare it to something and of course the reporters of the day in the 80s because all they knew was production applications, productivity apps inevitably tried to analyze it that way and it really came up flat, I mean basically the intro to almost every review and by the way we got a lot of press for these because the reporters generally , many of them liked it although I don’t think very many of them understood why they liked it so they would say you remember when you know you had to outline stuff when you were in school and how you felt guilty because you always did the outline after you wrote the paper because well because it was such a pain in the butt to do the outline, in other words the whole idea of arranging your thoughts and playing around with them was so bad, so awkward on paper that it was completely impossible to do what the teacher was asking you to do, the teacher knew in some level that it would be really good for the students to play around with the organization of the paper that you had to write before you actually wrote it but the best you could do would be to use index cards and try it that way but it was really awkward because you couldn’t see all of the items at once and so you arranged them on a wall, I did that for some projects that I did or used a whiteboard but then you’d have to erase and retype, it was kind of like using a typewriter except if it ’s about brainstorming and creativity well it’s kind of, it’s kind of antithetical to it, so you know being creative and being process oriented are sort of, they sort of work against each other although there are processes to creativity and creativity can be, you can use structures to help to support creativity and that’s something maybe I can talk about at a later time but the key thing about the computer and ideas was or is that you could control the level of detail that you’re looking at, it was like the illusion function that Lisp editors had in the 70s, I think in the 60s even and then the ability to reorganize according to structure so I could say okay I want to move this thing to the front of the list, I want to take this thing moving to the end, I want to take this idea and move it subordinate to this one and I want to take that whole structure and move it out to the top level, this idea that the text, I used to think of it as the text was on rails so that it was designed, by design it was very very easy to move things around, the whole point of entering your thinking, your thoughts into an outline is, well one of them is that you can reorganize them, my dad likes to say and I don’t know if I mentioned it, I know I mentioned it in one of the two podcasts I did but we did a talk where he talked about out lining you know in March it was a podcast, if you go to MorningCoffeeNuts. com you should find it in the list there is that it was only useful if you had more than two ideas, more than one idea sorry which of course is kind of a cute way of saying that if you’re not, if you’re even slightly creative, how do you harness all of your creativity, well you just say okay I’m just going to get this down, get it into the outline and then worry about later in terms of how I want to use that and where it fits in, that ’s something that I can deal with later.
So if you had a complex problem , what are the kinds of problems that you know count, you know you’re going to court, you’re a lawyer and you’re going to try a case and there’s all this evidence and you want to put it, you want to pull it all together into a strategy, you also want to take some notes on what you think the opposition is going to be using as evidence and what their approach is going to be, you want to take down all this information and then in the end, oh you’ll judge success or failure based on whether or not you win or lose the case, another one would be a business plan, you have to consider all kinds of factors that determine whether or not your business will be successful and well you know and as you’re managing the business, project planning, project management really didn’t yield itself very well to the whole sort of production application philosophy and in the end project management tools did eventually evolve to mostly be coming outliners or idea processors, oh you’re managing a baseball team or trying to come up with a name for a new product, designing a piece of software, designing the user interface of a piece of software, trying to figure out how to organize a code base, you’re planning a garden or a party, anywhere where the quality of your planning determines success or failure is a good place to think about using idea processing software, so it’s different, it’s different and so what, why OPML, to be all the way real pragmatic, okay I mean this is what I’m working on right now, well I guess maybe why RSS and what makes R SS so cool and RSS isn’t really like these applications, RSS is like news, you know it’s good for conveying temporal information, information that where you know you want to be, each item is a sort of a standalone thing and when a new item appears that’s something that you want to know about, that’s when RSS is the appropriate thing to use, out lining and OPML lists, these are all kind of different kinds of applications from RSS, they are related though and OPML is used very often in conjunction with RSS to convey a list of subscriptions and it can even convey a hierarchical list of subscriptions but it could do a lot more than that too and so that’s where I’m going and that’s what I’m spending my time thinking about these days, I’m thinking about idea processing, I’m thinking about tools for idea processing, I’m thinking about networks, networking and idea processing because since the last time we really looked at idea processing we now have a global network that really works and in fact the last time I was working on this stuff we didn’t, we were just the very beginning of having a global network so that ’s all I want to talk about today, I would like to also have a discussion about this so if you get this and you hear this podcast and you’re interested in idea processing or you’re one of the people who was doing it or in the 1980s and 90s perhaps and maybe you’re even still doing it today, you know post something somewhere and send me a link to that or if you don’t have a place to post it send me an email and just tell me what you’re doing and what your thoughts are about this, you can send me email at, let’s try this address Dave@gmail. com and be sure to let me know if it’s okay to, ideally it would be great if you had it on your space so that way I could just point to it and you could sort of get comments from people and we could sort of watch the discussion develop that way.
If you want to send it to me just let me know if it’s okay to publish it on my site and if there’s enough then you know maybe we’ll take a look at it and see if we can’t get some kind of a snapshot in time of what people are doing today and what their hopes are for the future with this stuff, with idea processing.
So anyway that’s my shtick for today, that’s April 26, 2005, hope you’re all doing great and if you’re in this rainstorm that we’re having you know try to stay dry and if you want to follow what I’m doing go to www. scriptingscripting.
com, c-o-m, anyway everybody have a great day and see you again real soon , okay bye.
[BLANK_AUDIO]