Upgrading from Mind Mapping to Concept Mapping

(Andy Wootton) #21

After a very bad week for technology in my house, (gas boiler, burglar alarm and the Wireless Access Point that connected my TV to the hose,) I discovered my Revo box had forgotten it has WiFi. I thought I’d do the latest upgrade to see if that helped. It didn’t and it killed Freemind which is stupidly out-of-date in the Ubuntu repo.

BUT, looking at Freemind, I learned about
http://www.conzilla.org the concept browser so everything is good with the world (if I ignore all the broken stuff.) I haven’t tried it yet. It’s old.

Historically, I’ve tried to avoid Java but as I’m already committed to Freemind and Clojure, I think my new platform of choice may be the JVM. I’m done with Operating Systems.

Update: I picked the wrong week for optimism. The recent history of this project looks flaky. I see now that they are using Universal Language Modelling which is ‘a dialect’ of Universal Modelling Language. They went the way I’ve been trying to ignore.

(Andy Wootton) #22

I don’t agree with their interpretation of the UML connectors

For comparison http://www.cs.sjsu.edu/~drobot/cs146/UMLDiagrams.htm

(Andy Wootton) #23

This is a bit embarassing! I think I’ve finally found a tool that I can use to quickly sketch ‘concept’ maps. It’s the fairly old ‘Dia’ but it’s had a lot of work since I last used it and been Gnomed, so it’s dia-gnome from the Ubuntu repo. It’s the third leg in the Linux graphics set with Gimp and Inkscape. It’s the one a bit like Visio, so it should have been an obvious choice.

I’m using Flow Chart boxes, fastened together with lines that can have arrow heads. It exports to a number of useful graphical formats, including SVG that I can read with Inkscape, if I ever need to prettify the diagrams (and I learn how to Inkscape.)

As it’s SVG, the data is XML, so should be computable too. As soon as I learn how to change the default font size for all objects, I’ll be a very happy bunny.

(Andy Wootton) #24

Now I have a network tool, I’ve worked out why I wanted it. It’s nothing to do with writing.

"The acts of the mind, wherein it exerts its power over simple ideas, are chiefly these three:

  1. Combining several simple ideas into one compound one, and thus all complex ideas are made.
  2. The second is bringing two ideas, whether simple or complex, together, and setting them by one another so as to take a view of them at once, without uniting them into one, by which it gets all its ideas of relations.
  3. The third is separating them from all other ideas that accompany
    them in their real existence: this is called abstraction, and thus all
    its general ideas are made."

John Locke, An Essay Concerning Human Understanding (1690)

Quoted as a prelude to Chapter 1 of the The Wizard Book, SICP, MIT.

(Andy Wootton) #25

I wondered if there were any Clojure libraries to help with vertex-edge graphs. Silly question. There are several. I picked one called loom because the logo of my first web site was a spider weaving. It uses Graphviz for output. I’m ankle-deep in Loom videos now. A speaker just made a very interesting point that most algorithm books are written assuming imperative languages. There’s an untapped market for you entrepreneurial mathematicians.

(Gav) #26

Hey Andy, where are you upto these days with ‘Concept Mapping’, what are the key tools?

Must have been you I had a couple of long conversations with about this.
I’m yet to find a tool that truly explodes my thoughts onto a ‘visual’ in a satisfactory way.

Workflowy.com clone Dynalist.com Pro (or during the trial) does have a visual representation of the bullet points you write.

(Andy Wootton) #27

Graphviz is still the best thing I’ve tried but it is hard work so you need a very good reason to use it. I’ve just found a Clojure front end but that just means Lisp as the syntax for the ‘tagging language’ that drives the graphical representation. Something I’ve belatedly realised is that graphs are a mathematical rather than a graphical concept so you can define graphs that can’t be laid out in 2D, without overlapping lines and need multiple views of the same model to simplify it, as UML does.

So I could ‘get on with it’ (writing) instead of playing with tools, I’m actually misusing KDE UML tool Umbrello because it is dynamic, but it’s a bit buggy and UML doesn’t quite do the job. I have several class diagrams representing the concepts of my book and an activity diagram to sequence them. I’ve also identified a need in the general writing process for time-lines and ‘conceptual dependencies’, so that I don’t change sequence and discuss an idea after I’ve introduced it.

(Andy Wootton) #28

OK, so there’s a whole area called graph computing and Apache are in it with http://tinkerpop.apache.org/ which also describes it nicely and there’s tooling. In other news, graph databases aren’t what I thought they were:
graph databases (for OLTP) and
graph processors/analytic systems (for OLAP).

Or: https://neo4j.com/developer/graph-database/ Frustratingly, I’ve just found a link to Neo4J in some notes I made about Directed Graph Tools, which I found in MongoDB when investigating NoSQL. If I had a concept map… never mind.

Hang on, https://en.wikipedia.org/wiki/Hypergraph,
“Edges drawn as trees”? I’ll have me some of that.

(Andy Wootton) #29

Maybe I should explain what I’m wittering about, for once. If you can build a hypergraph out of trees then you must be able to split one into trees and what do trees make? Books!

My writing exists (theoretically) as a set of text fragments connected in an n-dimensional graph, representing a concept map and projected onto a few 2 dimensional diagrams (graphs) with rectangles around related concepts. Some of the concepts (of ‘information metaphysics’) are on multiple diagrams e.g. ‘data’, ‘process’, ‘flow’. I need to create the hierarchically structured, paginated, sequential bit-stream we conventionally call “a book”. This is proving harder than I imagined it would. Simplification is required, which I’m generally against.

If I turn the graph into a hypergraph by representing the categories as trees then I could (also theoretically) make rational decisions about where concepts are best placed and when they need to be repeated, so cut the fewest, least important links that are necessary to ‘make it so’.

Interestingly, I think the graph-theory folk got there before me but possibly for different reasons. By the end of the book, I’m hoping to know what the tool I would have liked to help me write it, looks like. Any similarities to mind-maps in Pirsig’s ‘Lila’ (but about ‘Zen & The Art…’ have already been noted. He was a tech writer at IBM, you know?

(Andy Wootton) #30

@ukgav I’ve just seen your post about NoSQL and GraphDB which I may have missed at the time. That mentions Neo4J too. If I read it, I didn’t understand what a graph database was at the time.

I’ve also gone back to Cmap today which I ignored because it was a binary download that might go away. I’ve found a page that says the data format can be changed to XML and the definition is published, so if I had used it, any data would have been recoverable.

Dr. Deming has improved my understanding of what knowledge is today too. It’s been a good one.

(Andy Wootton) #31

This isn’t actually UML but there’s an interesting example of creating a GraphViz diagram of a graph from Clojure, using the ubergraph library

It’s no more work to create than a GraphViz .dot file and the graph data can be used algorithmically.

(Andy Wootton) #32

I mentioned Xanadu in this thread.

I’ve discovered this today:

You thought your project was running late?