
Hi, I'm new here, but I've been lurking a while, and it seems this list is a really awesome mutli-disciplinary sort of community. I'm really impressed with all you bright people on here and the quality of discussions.. :) Anyway, I thougt I'd bring this up: Any of y'all ever read the theory of constraint books by Eli Goldratt? He teaches (perfectly logical but quite unconventional) business practices through socratic methods and story. Here's a quick example: http://www.goldratt.com/chpt11.htm One of his big things is a set of thinking tools (described in a novel called "It's not Luck").. The idea is you figure out the cause-effect relationships that lead to a current undesireable situation, and work your way back to the core issues. This is called a current reality tree. I made one for myself not too long ago: http://www.sabren.com/upgrade/charts/CRT20000930.gif Once you understand the current system, you can map out a future reality tree that shows in precise logical steps what you want to happen. Then you build a transition tree to connect the two. The interesting thing is that you can also think of it as a teaching tool. You can map out trees of current and desired thinking habits, and build a transition tree that leads logically from one way of thinking to another. Now it takes a great deal of human thought to come up with these trees, but once they've been mapped out, just about anyone can follow them. (Look at the link above. The if/then flow goes from bottom to top unless there's an arrow pointing the other way) I think it would be really cool if a computer could be programmed with a tree like this to teach people using the socratic method. That is, it asks the user questions, and based on the answer either helps the user to understand things better, or progresses along the tree to the next step.. I don't know too much about computer aided instruction, but I know I've never seen a computer that used socratic methods to inform people.. They usually present information rather than ask questions. (or if they ask questions, it's like a test, not a conversation).. Anyway, I'd like to build a system like this to help with my own thinking and to help other people. The system's called plato [python logic and truth objects; it'll have a lot of prolog concepts in there, and double as a general mechanical-reasoning library for other python programmers] Anyway, is anyone interested in helping, or at least discussing it on this list? :) Cheers, - Michal ------------------------------------------------------------------------ www.manifestation.com www.sabren.com www.linkwatcher.com www.zike.net ------------------------------------------------------------------------

Hi Michal OK. I have come across some of what you are describing - but often called 'Mind Maps' which is popularized [coined?] by Tony Buzan in his work. His best know book is: The Mind Map Book : How to Use Radiant Thinking to Maximize Your Brain's Untapped Potential by Tony Buzan Paperback Reprint edition (March 1996) Plume; ISBN: 0452273226 Searching at Amazon will show more books by Tony Buzan and others writers.. The system you mention implies some nice nuances which often get glossed over in the more populist mind-map 'market'. There is room for real improvement - and some juicy research to do. I suppose one axis is UML and Pattern thinking. A good new book I found last week: A UML Patten Language by Paul Evitts ISBN 1-57870-118-X Unlike some of the other OOPS Pattern software books, this one strikes a better balance between abstraction and practical steps - imho stays much closer the spirit on Christopher Alexander's original books 'A Pattern Language' , 'The Timeless way of Building' and 'Notes on the Synthesis of Form' http://www.amazon.com/exec/obidos/ISBN%3D0195019199/theisisgroup00A/002-4848 534-5812817 http://www.amazon.com/exec/obidos/ISBN%3D0195024028/theisisgroup00A/002-4848 534-5812817 http://www.amazon.com/exec/obidos/ASIN/0674627512/ref=sim_books/002-4848534- 5812817 Some excerpts oriented towards Pattern Language use in education http://www.bigbangworkshops.com/html/pattern_language.htm [some good Alexander links at the bottom of that page] There are many references now to interface design inspired by Alexander. For example: http://www.maplefish.com/todd/papers/experiences/Experiences.html or http://c2.com/ppr/catsfate.html or http://www.acm.org/sigchi/chi97/proceedings/short-talk/gca.htm [warning some of these may make you crazy..] Meanwhile, there are lots of web pages directly about Mind maps. Most of these derive from Tony Buzan's work. A book/ seminar http://www.mindmap.de/brainland.engl.htm Some papers and articles http://www.sci.mus.mn.us/sln/tf/nav/tfmindmaps.html http://www.mindtools.com/mindmaps.html http://www.thenakedpc.com/articles/v03/10/0310-04.html http://www.ozemail.com.au/~caveman/Creative/Mindmap/Radiant.html http://www.acm.org/sigchi/chi97/proceedings/poster/mil.htm An XML Librarian's perspective Mind Maps: Hot New Tools Proposed for Cyberspace Librarians http://www.infotoday.com/searcher/jun99/humphreys.htm At the hard core extreme and for inspiration there is this book studying the internal brain mechanisms: The Hippocampal and Parietal Foundations of Spatial Cognition by N. Burgess (Editor), Kathryn Jeffery (Editor), John O'Keefe (Editor) Paperback (February 1999) Oxford University Press; ISBN: 0198524528 I haven't read this but it may well probably fascinating One that I have and would recommend __highly__ is: Dynamic Patterns : The Self-Organization of Brain and Behavior (Complex Adaptive Systems) by J. A. Scott Kelso Paperback - 360 pages Reprint edition (March 1997) Bradford Books; ISBN: 0262611317 "For the past twenty years Scott Kelso's research has focused on extending the physical concepts of self- organization and the mathematical tools of nonlinear dynamics to understand how human beings (and human brains) perceive, intend, learn, control, and coordinate complex behaviors. In this book Kelso proposes a new, general framework within which to connect brain, mind, and behavior. Kelso's prescription for mental life breaks dramatically with the classical computational approach that is still the operative framework for many newer psychological and neurophysiological studies. His core thesis is that the creation and evolution of patterned behavior at all levels -- from neurons to mind -- is governed by the generic processes of self-organization. Both human brain and behavior are shown to exhibit features of pattern-forming dynamical systems, including multistability, abrupt phase transitions, crises, and intermittency. " You may think this is going overboard for your application, adn may well be correct. But mind maps are fascinating because they tap into many aspects of our cognition, learning, perceptions. Thinking about how to model a system can go way beyond a simple stripped down smart paintbox interface. Some available mind-map software http://www.inspiration.com/ http://www.mindman.com/ ZigZag http://www.xanadu.net/zigzag/tutorial/ZZwelcome.html http://www.xanadu.net/zigzag/ "locally rational, globally paradoxical, yet somehow comprehensible. " [I just found this and it looks like there are some _very_ unique ideas here: not surprising considering where it's hosted] Before making a Python version, you should definitely play with ''The Brain': http://www.thebrain.com/ It is among the most innovative interactive mind-map-like software interfaces I know of. Their focus is not for mind-mapping directly, instead focus is on meta-links and focus-based information interfaces. But you'll literally 'see the connection' when you play with it. I am personally interested in all kind of maps. I think visually, spatially, dynamically. I use pen and paper to sketch for myself constantly as a thinking tool, but also regularly as support in conversation. I am certainly interested to work with you on this one. I imagine in an educational python context, would be to have command line access to a mind-map causal tree connective type structure. One needs a few basic drawing tools, but need them to be interactive so one can organize them in rapid ways. But one also would like to be able to send messages between them, and be able to view the structure as XML or in some nested dictionary type class instance. The end result must be very simple to use. Should be supported by a versatile 'socratic' python engine capable of connecting to any other modules or systems. ### I am generally very wary about rigid cause and effect.. I think such a tool may be useful in schools to model philosophy and to also thus reveal the paradoxes and innate problems with cause+effect thinking as well as its great engineering virtues.. top-down / bottom-up. Programming depends deeply on cause-effect structures.. Life ? hmm well that is not so simple.. :-) Some important existing Python graphics toolkits to look for both design ideas, and for use as implementation components include: Gato - Graph Animation Toolbox http://www.zpr.uni-koeln.de/~gato/index.html PIDDLE - Plug-In Drawing, Does Little Else http://piddle.sourceforge.net/ PMing 0.0.1a - Tiny wrapper to the ming library (to output swf files). Sketch 0.6.3 - Sketch is a vector drawing program for Linux and other unices, intended to be a flexible and powerful tool for illustrations, diagrams and other purposes. http://sketch.sourceforge.net/ vtk - Visualization ToolKit - Vtk is a high-level graphical visualization toolkit with support for Python. http://www.kitware.com/vtk.html Enjoy! - Jason ________________________________________________________________ Jason CUNLIFFE = NOMADICS['Interactive Art and Technology'].DesignDirector ----- Original Message ----- From: Michal Wallace <sabren@manifestation.com> To: <edu-sig@python.org> Sent: Monday, October 09, 2000 1:53 AM Subject: [Edu-sig] socratic methods
Hi,
I'm new here, but I've been lurking a while, and it seems this list is a really awesome mutli-disciplinary sort of community. I'm really impressed with all you bright people on here and the quality of discussions.. :) Anyway, I thougt I'd bring this up:
Any of y'all ever read the theory of constraint books by Eli Goldratt? He teaches (perfectly logical but quite unconventional) business practices through socratic methods and story. Here's a quick example:
http://www.goldratt.com/chpt11.htm
One of his big things is a set of thinking tools (described in a novel called "It's not Luck").. The idea is you figure out the cause-effect relationships that lead to a current undesireable situation, and work your way back to the core issues. This is called a current reality tree. I made one for myself not too long ago:
http://www.sabren.com/upgrade/charts/CRT20000930.gif
Once you understand the current system, you can map out a future reality tree that shows in precise logical steps what you want to happen. Then you build a transition tree to connect the two.
The interesting thing is that you can also think of it as a teaching tool. You can map out trees of current and desired thinking habits, and build a transition tree that leads logically from one way of thinking to another.
Now it takes a great deal of human thought to come up with these trees, but once they've been mapped out, just about anyone can follow them. (Look at the link above. The if/then flow goes from bottom to top unless there's an arrow pointing the other way)
I think it would be really cool if a computer could be programmed with a tree like this to teach people using the socratic method.
That is, it asks the user questions, and based on the answer either helps the user to understand things better, or progresses along the tree to the next step..
I don't know too much about computer aided instruction, but I know I've never seen a computer that used socratic methods to inform people.. They usually present information rather than ask questions. (or if they ask questions, it's like a test, not a conversation)..
Anyway, I'd like to build a system like this to help with my own thinking and to help other people. The system's called plato [python logic and truth objects; it'll have a lot of prolog concepts in there, and double as a general mechanical-reasoning library for other python programmers]
Anyway, is anyone interested in helping, or at least discussing it on this list? :)
Cheers,
- Michal ------------------------------------------------------------------------ www.manifestation.com www.sabren.com www.linkwatcher.com www.zike.net

Good post Jason -- I like your overview type posts with lots of hyperlinks. Who needs theBrain when we've got Jason's, right here and on-line. Kirby

On Mon, 9 Oct 2000, Jason Cunliffe wrote:
I have come across some of what you are describing - but often called 'Mind Maps' which is popularized [coined?] by Tony Buzan in his work. His best know book is:
Yeah. I've never read Buzan's book, but from my undesrtanding, he came up with the term. Well, there's definitely some overlap. I realize now that plato is really several projects: 1. A tool or library for drawing mind maps/ network graphs / whatever .. It should handle layout and all that stuff for these objects.. Also, you shold be able to pick them up, move them around, and have the lines do the right thing. There's a TCL project called Mercator that sort of does this, but i'm nos sure how far along this is. http://catless.ncl.ac.uk/Programs/Mercator/ 2. A generic inference engine / expert system / reasoning system. 3. A tool for socratic thinking / exploration.
The system you mention implies some nice nuances which often get glossed over in the more populist mind-map 'market'. There is room for real improvement - and some juicy research to do.
I suppose one axis is UML and Pattern thinking. A good new book I found last week:
You mean because UML looks like the same kind of diagram? [lots of good links clipped]
You may think this is going overboard for your application, adn may well be correct. But mind maps are fascinating because they tap into many aspects of our cognition, learning, perceptions. Thinking about how to model a system can go way beyond a simple stripped down smart paintbox interface.
It sounds like you're pretty intersted in this aspect! To me, I'm only looking at the reality tree (a specific subclass of these diagrams) as a way of visualizing an actual process that the computer (or a live teacher!) would go through. For example, if the goal is to teach recusion, and the example is the fibonacci sequence, it's important that the student understand how the sequence works. So in a socratic dialog, you might ask: "what's the next number in this sequence? 0 1 1 2 3 5 8 13 21 ..." And the student can either answer or ask for help. If they answer correctly, we don't have to walk down the part of the tree that explains fibonacci's sequence. We just say "that's called fibonacci's sequence..." If they answer wrong or ask for help, we back up and ask more questions that can help them figure out how the sequence works. (or just explain it to them)..
Before making a Python version, you should definitely play with ''The Brain': http://www.thebrain.com/ It is among the most innovative interactive mind-map-like software interfaces I know of. Their focus is not for mind-mapping directly, instead focus is on meta-links and focus-based information interfaces. But you'll literally 'see the connection' when you play with it.
Yeah, I'm a brain user... Unfortunately, they own the patent for this type of software, so plato will probably stay away from that.. Besides, there's plenty of stuff you can do with just plain 2D. :)
I am personally interested in all kind of maps. I think visually, spatially, dynamically. I use pen and paper to sketch for myself constantly as a thinking tool, but also regularly as support in conversation. I am certainly interested to work with you on this one.
Cool. :)
I imagine in an educational python context, would be to have command line access to a mind-map causal tree connective type structure. One needs a few basic drawing tools, but need them to be interactive so one can organize them in rapid ways. But one also would like to be able to send messages between them, and be able to view the structure as XML or in some nested dictionary type class instance. The end result must be very simple to use. Should be supported by a versatile 'socratic' python engine capable of connecting to any other modules or systems.
Exactly! Mercator uses an XML format to describe its nodes.... There's also the Neural Integrator, which might have some interesting pieces we could steal.. I haven't tried it yet though: http://starship.python.net/crew/seehof/NeuralPython.html
### I am generally very wary about rigid cause and effect.. I think such a tool may be useful in schools to model philosophy and to also thus reveal the paradoxes and innate problems with cause+effect thinking as well as its great engineering virtues.. top-down / bottom-up. Programming depends deeply on cause-effect structures.. Life ? hmm well that is not so simple.. :-)
Not sure I agree with you on this.. Depends what you mean by "rigid", I guess.. Many people often find themselves in the same situations over and over again, thanks to our nervous system's wonderful ability to learn and form habits.. Obviously, you can't control every single thing that happens to you, but for ongoing or recurring problems, there usually is a logical cause..
Gato - Graph Animation Toolbox http://www.zpr.uni-koeln.de/~gato/index.html
Doesn't let you play with the graphs. Just shows how a program navigates through one.. Kinda cool though, and might be useful for debugging. There's also a language calle Oz (www.mozart-oz.org) that includes a graphical tool for debugging logic programs with constraints..
PIDDLE - Plug-In Drawing, Does Little Else http://piddle.sourceforge.net/
Would be pretty cool if we could have arbitrary shapes for stuff... Maybe even based off of SVG descriptions.. All I'm looking for is boxes, but I can see how lots of people would find this useful.
PMing 0.0.1a - Tiny wrapper to the ming library (to output swf files).
Hey! Now that's cool! I'll have to check that out. Cheers, - Michal ------------------------------------------------------------------------ www.manifestation.com www.sabren.com www.linkwatcher.com www.zike.net ------------------------------------------------------------------------

Michal, I'll help you with a Socratic questioning program. I don't want to get involved with current and future reality trees and "clouds" because that stuff is just too complex. But I'll help you with a Socratic questioning program, and maybe later also with a bottleneck finder program. Steve Steve Litt Webmaster, Troubleshooters.Com http://www.troubleshooters.com slitt@troubleshooters.com At 01:53 AM 10/9/00 -0400, Michal Wallace wrote:
Hi,
I'm new here, but I've been lurking a while, and it seems this list is a really awesome mutli-disciplinary sort of community. I'm really impressed with all you bright people on here and the quality of discussions.. :) Anyway, I thougt I'd bring this up:
Any of y'all ever read the theory of constraint books by Eli Goldratt? He teaches (perfectly logical but quite unconventional) business practices through socratic methods and story. Here's a quick example:
http://www.goldratt.com/chpt11.htm
One of his big things is a set of thinking tools (described in a novel called "It's not Luck").. The idea is you figure out the cause-effect relationships that lead to a current undesireable situation, and work your way back to the core issues. This is called a current reality tree. I made one for myself not too long ago:
http://www.sabren.com/upgrade/charts/CRT20000930.gif
Once you understand the current system, you can map out a future reality tree that shows in precise logical steps what you want to happen. Then you build a transition tree to connect the two.
The interesting thing is that you can also think of it as a teaching tool. You can map out trees of current and desired thinking habits, and build a transition tree that leads logically from one way of thinking to another.
Now it takes a great deal of human thought to come up with these trees, but once they've been mapped out, just about anyone can follow them. (Look at the link above. The if/then flow goes from bottom to top unless there's an arrow pointing the other way)
I think it would be really cool if a computer could be programmed with a tree like this to teach people using the socratic method.
That is, it asks the user questions, and based on the answer either helps the user to understand things better, or progresses along the tree to the next step..
I don't know too much about computer aided instruction, but I know I've never seen a computer that used socratic methods to inform people.. They usually present information rather than ask questions. (or if they ask questions, it's like a test, not a conversation)..
Anyway, I'd like to build a system like this to help with my own thinking and to help other people. The system's called plato [python logic and truth objects; it'll have a lot of prolog concepts in there, and double as a general mechanical-reasoning library for other python programmers]
Anyway, is anyone interested in helping, or at least discussing it on this list? :)
Cheers,
- Michal ------------------------------------------------------------------------ www.manifestation.com www.sabren.com www.linkwatcher.com www.zike.net ------------------------------------------------------------------------
_______________________________________________ Edu-sig mailing list Edu-sig@python.org http://www.python.org/mailman/listinfo/edu-sig

Michal Wallace wrote: ...
I think it would be really cool if a computer could be programmed with a tree like this to teach people using the socratic method.
I have been thinking about this, while playing around with a palm program called CyberTracker. It is used for data entry. This particular database interface was designed for illiterate bushmen trackers. Equiped with palms, the bushmen have been producing lots of data on Rhinos in South Africa and other animals as well. More data than we had collected on the animals in the last hundred years was gathered in the first few weeks of this program. Rather than the usual database interface of filling out a form, the developer of this interface uses icons that follow the taxonomy used by the trackers based to group related tracks and signs. They use a lot of icons mixed with text (teaching the bushmen a bit of word recognition as a side effect.) Because the interface is so closely designed with the Bushmen in mind, it takes them about 15 minutes to learn how to use it. Switch to North America, a group of trackers here are using a modified version of the program, not only to collect data, but to hone their skills. As they enter data, they learn the taxonomic system of the master tracker that tailored the interface, they also train their minds to look for things in a particular sequence, and with great detail. One learning tracker claimed it was like have a master tracker right there looking over his shoulder, pointing out what he should look at next. This starts to flow into the notion that learning is all about patterning the brain. Working with this entry program with its words and icons does just that, running the mind through learning sequences, like a martial artist practicing their kata. Learning patterns can be used in lots of ways in teaching. MonArt art classes for children use pattern recognition as a way of increasing art skills, with really dramatic effect. Once kids begin to recognize angles, circles, dots, squares, etc. in the world around them, and working through some basic copying exercise where they copy and mirror line patterns, the kids art work impoves remarkably. The instructors are using a taxonomy of shape components hand movements to sharpen the minds kinesthetic memory of the students. What is the socratic method, but a set of questions that focus the mind on the topic at hand? It is a kind of taxonomy for mental inquiry. This isn't entirely new, we have used decision trees and flow charts in all kinds of diagnostics.... I am not sure exactly where to go with this yet, but I am intrigued by the overlap here between data collection, decision trees, socratic (maietic) teaching and the patterning of the mind. I am happy to discuss it further with you, Michal. -Stephen

On Tue, 17 Oct 2000, Stephen R. Figgins wrote:
Michal Wallace wrote: ...
I think it would be really cool if a computer could be programmed with a tree like this to teach people using the socratic method.
I have been thinking about this, while playing around with a palm program called CyberTracker. It is used for data entry. This particular database interface was designed for illiterate bushmen trackers. Equiped with palms, the bushmen have been producing lots of data on Rhinos in South Africa and other animals as well. More data than we had collected on the animals in the last hundred years was gathered in the first few weeks of this program.
I found http://www.cybertracker.co.za/ and a neat article at http://www.itweb.co.za/sections/computing/1998/981106124.asp but couldn't find anywhere to download it.. do you have a link?
Switch to North America, a group of trackers here are using a modified version of the program, not only to collect data, but to hone their skills. As they enter data, they learn the taxonomic system of the master tracker that tailored the interface, they also train their minds to look for things in a particular sequence, and with great detail. One learning tracker claimed it was like have a master tracker right there looking over his shoulder, pointing out what he should look at next.
This starts to flow into the notion that learning is all about patterning the brain. Working with this entry program with its words and icons does just that, running the mind through learning sequences, like a martial artist practicing their kata.
I bet there's all kinds of applications for this idea, and having access to this kind of expert system/mentor system on a palm pilot could make it even more powerful. You could use a palm mentoring system for: - sales - interviewing potential employees - troubleshooting all kinds of things - first aid - conflict resolution - one-on-one tutoring - lots of other stuff :) .. basically, anything where you want normal people to be able to use a certain skillset out in the field.. plus all the other thing that you could use a system like this for on the desktop. Also.. and this is kind of out there.. But if you've ever read any of those Mega-Memory books, they talk about ways to remember just about anything.. You could have a little program that taught people to remember decision-tree structures in general, and then walk them through memorizing an individual tree, so people could carry around this codified knowledge without necessarily fully understanding why or how it works..
What is the socratic method, but a set of questions that focus the mind on the topic at hand? It is a kind of taxonomy for mental inquiry. This isn't entirely new, we have used decision trees and flow charts in all kinds of diagnostics....
Sure. If I recall, there's an old debate as to whether or not socrates knows the answers to the questions he asks.. If he does, there's definitely a decision tree process going on there. Even if he doesn't, you could draw one in. On the other hand, when I think of a decision tree, I think of all the possibile things that an actor could do, and the decisions that lead to those outcomes. With a planned socratic dialog, you've already got the final destination in mind. The only decisions are about how to get there.
I am not sure exactly where to go with this yet, but I am intrigued by the overlap here between data collection, decision trees, socratic (maietic) teaching and the patterning of the mind. I am happy to discuss it further with you, Michal.
maietic? I think I'll map out my hypothetical recusion/fibonacci lesson as a graph and post a link to the edu-sig for comments.. Cheers, - Michal ------------------------------------------------------------------------ www.manifestation.com www.sabren.com www.linkwatcher.com www.zike.net ------------------------------------------------------------------------

I found http://www.cybertracker.co.za/ and a neat article at http://www.itweb.co.za/sections/computing/1998/981106124.asp but couldn't find anywhere to download it.. do you have a link?
I don't yet. But I am getting a copy of it on CDROM from the Wilderness Awareness School, one of the shool's founders, Jon Young, did the North American sequence. http://www.natureoutlet.com/
I bet there's all kinds of applications for this idea, and having access to this kind of expert system/mentor system on a palm pilot could make it even more powerful.
I agree. Jon Young, who has lots of experience tracking and even designed the sequence say he finds it useful in the field. It helps him to pause and consider options he might not otherwise have remembered in the moment.
maietic?
oops. maieutic is the actual spelling. From the root maia, meaning midwife. It's another term for Socratic method. The teacher helps in giving birth to the knowledge in the student, drawing the knowledge out of them.
I think I'll map out my hypothetical recusion/fibonacci lesson as a graph and post a link to the edu-sig for comments..
I look forward to it! Stephen
participants (5)
-
Jason Cunliffe
-
Kirby Urner
-
Michal Wallace
-
Stephen R. Figgins
-
Steve Litt