Note Taking Software, back to basics.

There are many note taking programs but there are none which are ideal in my opinion. Many of them do a lot more things that I don’t need and don’t do all the things which I do need. A couple of them do come tantalisingly close to my ideal.

So what do I actually need from a note taking program. Let’s build it up from basics.

I like things to be simple!

What is the simplest note taking system?

A pencil and paper!

But a pencil and paper is not connected, you can’t search a large paper document easily. Organising and re-organising paper documents is difficult even if you have scissors and glue.

It would be more useful if it were electronic and on a computer.

So what is the simplest note taking system on a computer ?

Plain text files!

This is true, but having lots of plain text files scattered about on a hard disk can also be frustrating.

“I’m sure I had that information in a text file somewhere, if only I could remember what it was called and what folder it was in, dammit!”

There are problems with organising and re-organising a body of information which is contained in plain text files. What is needed is a way of structuring them and indexing their contents so they can be searched as a whole.

Keeping all your notes together is a good idea. Being able to add structure to them so that they can be grouped by their salient features is a good idea. Being able to explicitly express the salient features of a note (tags & metadata) is a good idea. Having a mechanism whereby one note can refer to another note (or indeed something outside the program) is a good idea. That is why note taking programs are a good idea.

With a note taking program you can keep all your notes in one place, link them together and define a logical structure, add meta-data to express the significant features of the data, link to other files or websites and search for things which you want to find.

Everything over and above this is either the icing on the cake or superfluous and unnecessary depending on your point of view.

Of course there are programs which provide a myriad of extra facilities and functions but if they fail to provide these basic facilities then they still fall short.

All the extra functions do is obfuscate the basic functionality. I am not saying that programs should not offer extended functionality but if the basic functionality ends up hidden in a sub-menu of a sub menu or in a context menu somewhere obscure then that is a bad thing.

The basic and most often used functions should be in obvious places, the extra functionality can be hidden in obscure places. The developers task is to decide which functions are the most often used and which ones get used once in a blue moon by just a few people.

If a program tries to be all things to all people then what usually happens is the user interface becomes complicated in one way or another.

 

Organisation

Almost all note taking programs organise their notes in either a tree or a directed graph. Most of the other types of organisation are either trees or directed graphs if you look at their topology.

A wiki might be thought of as a free form structure but the notes are connected by links and thus it is actually a directed graph. A mind map might be thought of as different from an outline but they are both trees, they are just displayed differently.

Directed graphs are more useful than trees.

Trees have the problem that as they get bigger it becomes more difficult to place nodes within them, that is, it becomes more difficult to find a single place which is correct for that node. There are usually several places where it could plausibly fit. That is why directed graphs are more useful.

For example, if a node could fit in the tree under the project it is part of or under the person whose responsibility it is or under the problem which the project is supposed to address then with a tree you have to select which is the most important feature of the node. This leads to difficulty in finding the node later when you have forgotten what your original decision was. It also leads to inconsistency of placement.

With a directed graph you can put the node in all the appropriate places simultaneously. If a node in a tree can have more than one parent then that tree is a directed graph. If you can ‘clone’ a node so that it appears more than once in a tree then that tree is really a directed graph.

It should be noted that a clone is not a copy, it is the same node which appears in more than one place.

 

Tags

Tagging nodes to indicate properties of the node is a necessary feature of a note taking system in my opinion. Well thought out tags are very useful.

Hierarchical tagging systems are in my opinion most useful, but few note taking programs have hierarchical tagging systems. Ideally the use of a tag should also imply the node having the parent tag as well (inheritance) i.e. if the node is tagged as belonging to this electronics project then it should also be tagged with the parent tag of ‘electronics’ and if electronics is the descendant of another tag then it should inherit that one too, recursively right back to the root of the tree.

One caveat with this is that when selecting the tags to apply to a node the list should be just a flat list of all the tags in alphabetical order, i.e. the tree should be flattened out.

Tagging systems can become a mess if the user doesn’t think about what the significant features of their data are. If the collection of tags just develops ad-hoc then they will probably be inconsistent with each other and this can lead to confusion.

A tagging system is even more useful if on can refine a search by selecting from a list of tags held by the results of the current search. Similar to the system used by the website ‘Del.icio.us’ before it was discontinued to make way for Pinboard’s subscription service. One alternative to this is if you can build a query using tags combined with AND, OR, NOT and brackets.

Meta-data is just another form of tagging, the meta-data expresses something about the node and as such it should be able to be searched and nodes should be able to be grouped on properties expressed in the meta-data.

One unhelpful characteristic of many programs is that their meta-data is common to all nodes. For example, let us suppose I have a notebase in which I have some notes on a selection of vacuum cleaners in order to choose which one to buy. One of the pieces of meta-data I might define for those nodes is ‘price’ and give each vacuum cleaner a number which represents it’s price. In a well designed note taking program that ‘price’ meta-data would only exist for those items I had assigned it to. In a badly designed note taking program all nodes in the notebase would now have a ‘price’ even where it is inappropriate. This would make the list of meta-data extremely long for every node because every node has an entry for every piece of meta-data defined for any node in the entire notebase.

Tags are all that is really necessary, other meta-data can be placed in the text of the node in a minimalist system.

 

Links

Linking notes together makes them much more useful. The information in one node can refer to information in another node and the whole is greater than the sum of its parts.

The basic link is like a hypertext link and occurs in the text of a node, it refers to another node. Clicking on the link takes you to the node which the link points to. This basic link is all that is necessary in a note taking system. Just with this type of basic link you can build a wiki.

There are usually other types of link in a system, especially if it is structured as a tree or graph. The structure of the tree implies parent/child links and this is used to arrange the nodes on the screen.

In my opinion there also needs to be links where the information in one node needs to cite or refer to the information in another node. There needs to be a mechanism whereby a node can list other nodes which provide supporting or related information. These are sometimes called ‘see also’ or ‘related items’ or ‘reference’.

 

Text

The function of a note taking system is to hold notes, i.e. information. This can be plain text but the necessity of including links to other nodes implies something more than just plain text. And a bit of formatting is quite nice too.

The inclusion of pictures and diagrams is really useful as well. There is an old saying that ‘A picture is worth a thousand words’, pictures can aid comprehension and understanding of the information. The inclusion of pictures in the text of a node although not strictly necessary is a good feature to have.

Tables are also quite useful.

 

Conclusions

So my ideal note taking program would not have a lot of extra features which I don’t use but would include the all the basic functionality described in this article.

What would such a program look like?

It would have a directed graph structure presented as either a tree (or many trees) or preferably as a network (map). Each node could appear many times in the network/tree as a clone of the same node.

If the structure is presented as a map then the map should centre on the node which has the focus and if the user moves to a new node then the map should be re-drawn with the new node as the centre of the map, this allows you to see the node of interest ‘centre stage’ whilst still being able to see it’s context.

If displayed as a tree then it would be able to ‘Hoist’ a node so that it becomes the centre of attention and would be able to expand/collapse branches of the directed graph/tree.

Each node would be associated with a pane of text which could contain pictures, diagrams, tables and links to other nodes. Links should be opened by a simple single click just like a web browser. In addition each node would be associated with a list of ‘related’ nodes and/or a list of files associated with that node each of which could be opened by clicking on the entry in the list. Ideally the text pane should be floating so that it can be placed on a second monitor.

There would be a hierarchical tagging system with inheritance which could be searched by clicking on the tag in the tag tree but in which the search could be refined by clicking on further tags narrowing down the selection each time, similar to the system used by the ‘Del.icio.us’ website.

The text of each node would be indexed so that full text searches can be carried out quickly. In addition complex searches would be possible by building search criteria in a ‘search table’ each row having columns defining what is being searched for, what is being searched (node text, tags, meta-data etc.), what the conditions are (greater than or equal to, less than, equal to, text contains, matches wildcard etc.) and what the relationship is to the other search criteria (AND, OR), maybe a tree structure would be more useful here instead of brackets. Furthermore these complex searches should be able to be saved for later re-use. This does not mean that a quick and simple search should not be available as well.

There are a few (very few) programs which come close but there isn’t yet a program which ticks all the boxes for me.

This is a bit more complicated than a simple pencil and paper but I think it would be a lot more useful.

 

Advertisements

InfoQube followup

InfoQube is a complicated program with many capabilities but it is difficult for a new user to understand.

It is very easy for a new user to feel lost, partly this is due to not knowing where everything is but its because the program is capable of doing so many different things, when faced with so many possibilities a new user might think “What the F*&@ should I do now ?”, option paralysis is a well known phenomenon in psychology.

InfoQube is almost completely opposite to Microsoft OneNote, with OneNote the user interface is superbly designed to help the new user and to make the operation of the program obvious.  But the program itself sucks, many of its capabilities are superficial and gimmicky.  They are included just so that the advertising department can tick the box saying it has that capability.  If you use OneNote for any serious work then you come up against its limitations very quickly.  It is a typical product of Microsoft ‘focus groups’ which tend to make things so they are easy for the new user and difficult or impossible for the power user.

InfoQube on the other hand does not have a user interface which is simple and intuitive.  The user interface is very dense.  What do I mean by dense ?  It is packed with sub menus, drop downs and context menus and some of the sub menus have sub menus.  This can be confusing for a new user who doesn’t know where everything is.

There is a lot of depth to this program, but it can be intimidating to a new user. I am still learning and so I am sort of a new user but I don’t feel lost anymore. I was helped a lot by finding the option to customise menus and toolbars and experimenting with what I could and couldn’t move and/or get rid of.

Toolbars can have icons taken out of them and other icons put into them. New toolbars can be defined. The same is true of menus, the menus themselves are fixed but the contents of each menu can be changed. There are a few things in the menus which are fixed and you have to work around these entries but you can almost completely re-arrange everything else.

I was not aware how customisable InfoQube was until I went looking for the command to set up keyboard shortcuts.  In the sub menu there was an entry called ‘Customize’ (pardon the Americanism but that’s the way its spelled in the program).  This is a key feature and shouldn’t be hidden away in a sub menu.  Once I found out what it was capable of I dragged it up one level onto the ‘Tools’ menu between ‘Help’ and ‘Options …’ where I would have expected to find it in the first place.

I then butchered the interface until I was comfortable with it.

I am now using the cut down interface.  I have deleted many of the capabilities of the program, the things I am not interested in.

  • Like Pivot Tables and Pivot charts, since Microsoft Office is no longer installed on my system I can’t use these anyway.
  • Like sending e-mail to InfoQube, someday I may want the capability to send information to my InfoQube database from anywhere or for others to do so but for now I’m not interested.
  • Like Gantt Charts, maybe one day I will have to manage a project and if that is the case then I will be grateful for this capability but for now its something I don’t need.

These facilities are still there, they have just been deleted from the user interface.  If they are ever needed then they could easily be re-introduced.

Without all the stuff I don’t need and with the stuff I do need re-arranged I have a sensible manageable, comprehensible (to me) interface.  Actually I haven’t taken that much out, but in the process of re-arranging things I became much more familiar with where things are.  I have assigned a new set of keyboard shortcuts so that the operations which are common to the other programs I use are now in familiar locations where my fingers can find them on their own without too much thought.

So, what have I got left ?

I have a two pane organiser similar in operation to MyInfo with the columns in the left hand pane similar to Myinfo but it has the dockable panes which can be detached and placed on the other monitor just like Ultra Recall and it has a form of hierarchical tagging similar to ConnectedText.  It has the ability to assign different meta-data to different items like Ultra Recall and the capability to have saved searches like the $ASK command in ConnectedText (except the results appear in a table (grid) not on a page).

The hierarchical tagging is not native to InfoQube but it shows the flexibility of the program that something like this is possible with only the things which are already built in.

I am aware that I am not using InfoQube to it’s full potential but the question is, do I need to use the program to it’s full potential ?  If it does what I need then that is enough and the extra capabilities are there if I ever need to use them.  I didn’t use ConnectedText to it’s full potential either.  So what!  If InfoQube does become my main note taking program then my usage of other parts of the program would possibly expand over time.

If only the linking of pages (placing a link on a page which links to another page) was as good as ConnectedText then I could rebuild my ConnectedText wiki within InfoQube.

Moving lots of data over to InfoQube has highlighted the fact that the import facilities of InfoQube are very rudimentary unless you are importing from EccoPro or Evernote.

This is the reason I have not done a load test on InfoQube, importing a couple of thousand text files is only practical if it can be automated.  I suspect InfoQube would perform rather well in such a test but I cannot say that for certain until I do the test.  If I drag and drop files to the left Pane then all I get is links to the files on disk, the file contents aren’t inserted into the database.

The pace of development of InfoQube is quite rapid and things have changed (for the better) since my review.  I look forward to seeing what new developments are coming.  If there are substantive changes then it may be worth doing a second review.

A different approach to Note Taking

I take a lot of notes. I use them for reference. I use them for speculation about topics of interest. I use them to note down ideas so that I don’t loose them.

Before the digital age I had many paper notebooks and boxes full of index cards.

In those days I used to carry a HP 200-LX computer in my pocket and I thought it was an ideal note taking solution, oh if only I could buy one again, oh the nostalgia …

Whilst I was doing my degree I used to take notes at lectures on paper despite having several digital solutions available. I found that writing on paper helped me recall the material that I was writing much better than if I typed it onto a computer.

The physical act of writing is more visceral, it connects with the consciousness at a more basic level than typing. When typing one can go into autopilot and concentrate on the sequence of letters rather than the meaning of the words, the material gets typed accurately but it leaves little lasting impression in the memory.

But computer solutions are better organised and more compact. If one relies on paper then one accumulates many scraps of paper and old notebooks which are difficult to keep organised or refer to.

What I am looking for it the best of both worlds.  A paper notebook with unlimited pages which can transfer it’s content onto a computer, without many scraps of paper to keep track of, and hopefully without the paper.

Trees generate oxygen for our planet, we should not chop them down to be made into newspapers or chipboard furniture or paper notebooks.

For a long time I have relied on an application called ConnectedText which has served me well for a long time. It is a wiki with many powerful features, but recently I have found it to be less satisfactory than it used to be.

This is because I bought a new laptop and monitor with very high resolution screens.

The advent of high DPI screens and Windows 10 screen scaling has meant that the icons on ConnectedText are now microscopic and the titles of topics are only partially displayed.

The development of ConnectedText has now ceased and so it will probably never be updated and will continue to fall further behind as operating systems change until finally one day some update will break it.

This is particularly annoying for me because some while ago I paid quite a lot of money for perpetual licenses, the developer sold me licenses which would be for life, if there were any new versions of the software I would get an update to my license so I would get the new version for free.

He probably already knew that version 6 would be the last one and I already had a license to version 6.

If the developer has abandoned development it would be better if he were to release the source code as an open source project but I suspect he is keeping it going just to get a little more money from the current version.

I cannot now recommend ConnectedText for anyone wanting a new notetaking solution.

Perhaps it is time for some lateral thinking.

It would be nice if one could have digital paper, a screen on which one could write and draw but which could send these images to a computer and/or recognise the handwriting. Like a paper notebook with unlimited pages, no more stray scraps of paper to keep track of.

There are several possibilities.

One could use an Android tablet.

In my experience handwriting on an Android (a Sony Xperia mobile phone) is awful, the line drops out at random and the screen is slick, there is no friction and this tends to make my handwriting more messy. Also the note taking apps I have tried are cumbersome and awkward to use.

An Android device can also act as an e-reader for PDF and text files.

Despite this Android is not a good solution.

Dr Andus recommends a Boogie board.

I have tried a Boogie board and writing on the screen is much better and it is more responsive than an Android phone. However the Boogie board is not a very good solution for other reasons.

It is a write only solution, this is not what I want.

Once you have written a page or drawn a diagram, once you move onto a new page you can never go back to the previous page. The device stores them but it cannot display them. You can upload the stored pages onto a computer and this is the only way to see one of your previous pages.

The Boogie board is cheap but it is not a solution to the problem.

There is another device by Sharp, the WG-N20 which seems more capable than the Boogie board. It is an electronic notepad. You can look at and edit any stored page, sounds good, but there are problems.

The first big shock you get when buying one is the hidden costs. This is a Japanese import and so the price you see on the Amazon website is not the price you end up paying.

On the Amazon website it boasts free shipping to the UK but the UK Customs and Excise will open your package and impose an import duty on it. The shipping company will then demand this import duty plus an ‘administration charge’ before it will release your parcel for delivery.

The price you end up paying is about one and a half times the advertised price.

The manuals are in Japanese. So is all the text displayed by the machine, on the on screen buttons and in the dialog boxes.

The screen is slick and has little friction but despite that it has a better writing experience than an Android phone or tablet. The screen contrast is not very good, you are writing on a grey screen with slightly darker grey. This tablet needs good lighting to be able to use it adequately and there is no backlight.

The screen is a conventional LCD screen not e-paper. It is not an e-reader, it cannot import or display text files or PDFs.

It is not a good solution.

I have even been into the local Apple store to try out an Apple iPad.

I didn’t get along with it very well, the iPad suffers from a frictionless slick screen and the note taking application seemed to have some fundamental flaws. The iPads are expensive for what you get.

The staff in the Apple store are so full of artificial enthusiasm, everything about their products is wonderful and the fact that the annotations can be in any colour you like more than compensates for the fact that if you insert text the annotations don’t move with the text and are now in the wrong place.

I didn’t agree with the sales person!

I would rather have something in black and white that works properly than something multi coloured that doesn’t.

A random search (a clutching at straws exercise) pointed me at a potentially good solution for note taking which is the reMarkable tablet, but it is not available yet and it is expensive. If the advertising on the website is to be believed then they are trying to produce something which seems to fit almost exactly with what I want.

It is an e-reader, it can display PDF files (and e-pub files but I have no e-pub files), it cannot display plain text files which I think is a bad decision on the part of the designers.

There are an awful lot of legacy text files out there. But to be fair the text files could be printed to PDF files but this will increase their size.

Which brings us to the question of storage. The reMarkable tablet has 8 GB for storing documents and notes and drawings. This may seem like a lot but it’s only 100,000 pages. I can envisage filling that, maybe not very quickly but it is possible that I might be able to fill it up. There is no expansion, no SD card slot and the USB socket seems to be only for charging.

Once the storage is full you will have to either delete something or transfer something to a computer to make room for new items.

It is also big, just a little less than A4 size, 18 cm by 26 cm (7 inches by 10 inches). This is good for reading but definitely not pocket sized. What is needed is a small version which I could put in my pocket, 5 inches by 7 inches would be ideal, I wouldn’t use this as an e-reader just as a notepad.

Although it is not ideal it is far better than any other solution I have yet discovered so I ordered one. At the moment (in June 2017) there is a 33% discount on pre orders but I will have to wait five months, current delivery schedule is October but that keeps going up because demand is greater than their production rate.

If they had a pocket sized version then I would probably be ordering both the big and small versions, especially if they could transfer notes and documents between them.

I will write a review of it when I get it.

 

 

 

 

Ribbons, screens and links

Why ribbons?

A few of years ago Microsoft started putting ribbons on most of their applications and trying to promote them as a good idea, “this is the future” they said and many people believed them. On a lot of applications the ribbon is optional, you can choose to have the traditional menus and toolbars but on Microsoft applications the ribbon is mandatory whether you like it or not. But on a small screen a ribbon is a really bad idea, it takes up far too much room. If you use the keyboard shortcuts a lot then this is just wasted space.

The reason Microsoft are so enthusiastic about ribbons is that they see the future of computing in small mobile devices with touch screens, like the Microsoft Surface. With a touch screen you prod the screen with your finger. With a finger you have much less precision than if you are using a mouse or even a stylus, so the icons have to be bigger and have to be spaced further apart.

So the ribbon should have been optional on mobile devices with touch screens but instead Microsoft chose to impose it on everyone. It is puzzling why they have caught on as much as they have, I think this is partially due to the novelty value and partly because Microsoft are such a big company with a disproportionately large influence over the computing community that anything they do becomes a standard so they do not have to pay any attention to common sense or ease of use.

How to tame the ribbon on Microsoft Office

You can make the ribbon less obnoxious on Microsoft Office programs. At the top far right of the screen just below the window controls is a blue circle with a white question mark in it. This is next to a white up arrow. If you click on this up arrow the ribbon goes away until you click on one of the menu tabs at the top of the screen, then the ribbon you have selected appears until you have used it and then it goes away again. There is also something called the ‘quick access toolbar’ which isn’t used very much by most people.  It is usually at the very top of the screen but in the options there is a ‘quick access toolbar’ tab with a tick box to put it below the ribbon, from this screen you can also select which commands go on to the quick access toolbar.

I have put many commands on there, if I find that I am having to use the ribbons a lot then I put the commands I need onto the quick access toolbar and so it has grown until now it is almost all the way across the screen and it only takes up a small amount of vertical space. Microsoft are very good at designing user interfaces so I suspect this is deliberate and how the interface is supposed to be used but it is not obvious and a lot of people just don’t use the quick access toolbar at all.

High DPI Screens

I recently had to buy a new laptop because Microsoft destroyed my old laptop. When Microsoft destroyed my old laptop in the upgrade to Windows 10 (an upgrade which I did not instigate or desire) I needed to buy a new laptop. The one I chose has a very high resolution screen, the resolution is 3200 by 1800. I thought that having a high DPI screen would be a good idea, now that I have been using it for a while I think that perhaps it wasn’t such a good idea. The picture on the screen of the laptop itself is very clear and incredibly sharp but at a scaling factor of 100% the text is un-readably small, currently I have it set to 200% and this is still a bit small.

The problem is the scaling of text in applications. If the application doesn’t scale the text properly then you get microscopic text or on some programs the text does scale properly but the toolbar icons are microscopic. And some programs have not got the idea that a computer can have two different resolution screens, so windows and dialog boxes are scaled correctly on the screen that they were drawn on but if you drag them to the other screen some programs re-scale the dialog box or window properly, some programs don’t scale the dialog box so it becomes very small, some programs make the window or dialog box disappear whilst other programs just crash.

The problem is the new ‘Windows Presentation Foundation’ which is an API for rendering text and images on a computer screen. Somewhere between Windows 7 and Windows 10 it has been updated to include new features to handle the scaling of text and GUI elements, so programs which use the new features in the API need to be re-written, or at least the GUI needs to be re-written.  The change is not trivial, it isn’t just like compiling to a different library, the changes cannot be done automatically so the code needs to be edited manually to include the new features.

Of course all the Microsoft applications handle this correctly, as you might expect, but other programs sometimes don’t handle it quite as well. This has meant that some of my favourite programs either don’t work properly or are completely unusable on my new laptop.

I tried out a few of the programs I have been using and which I have used in the past using my laptop with it’s high DPI screen and a 1600 by 1200 monitor plugged into the HDMI port of the laptop.

Compendium

Compendium ignores any scaling factors you have set on your screen and draws its user interface at the native resolution of the screen. The text and icons are microscopic and the program is unusable without a magnifying glass.  On the external monitor things are scaled to the same size but the pixels are bigger so that even with a magnifying glass it is unreadable.

WhizFolders

WhizFolders scales everything correctly and works as expected.

VUE

VUE ignores any scaling factors you have set on your screen and draws its user interface at the native resolution of the screen. The text and icons are microscopic and the program is unusable without a magnifying glass.  On the external monitor things are scaled to the same size but the pixels are bigger so that even with a magnifying glass it is unreadable.  This has left me looking for a new mapping program, I relied on VUE quite heavily.

CMAP Tools

Because I can’t use VUE on my laptop anymore I revisited CMAP Tools, a program I tried a while ago, but alas CMAP Tools ignores any scaling factors you have set on your screen and draws its user interface at the native resolution of the screen. The text and icons are microscopic and the program is unusable without a magnifying glass.  On the external monitor things are scaled to the same size but the pixels are bigger so that even with a magnifying glass it is unreadable.

Scrivener

Scrivener draws most of its user interface correctly but the icons in the toolbar are now small and the text in the binder panel looks cramped, it has been drawn at the correct scale but too close together. This can be solved by switching fonts to a font which has a larger line spacing, Calibri worked on my system.  The toolbar icons in Scrivener were too large, having them much smaller is a little tiresome but not as bad as it would have been if the icons had started out at normal size, this problem is trivial.  Scrivener works well on a high DPI screen.

TheBrain

TheBrain scales its user interface correctly but cannot handle having two screens with different scaling factors.  If any of the panels are put into a floating window and dragged to the other screen then the program crashes if the scale factor is different on the two screens.  If the scale factor is the same on both screens then everything works as expected.

MyInfo

MyInfo scales everything correctly and works as expected.  Embedded OLE objects are rendered at the correct scale.

Ultra Recall

Ultra Recall scales its user interface correctly and works as expected apart from one problem.  Embedded OLE objects are rendered at a ridiculously large scale.  The developer said that he is using Internet Explorer to render the objects within Ultra Recall and so cannot do anything about the scale factor at which they appear.  However developers of some other programs seem to have been able to do this correctly.

ConnectedText

Unfortunately ConnectedText has some problems with high DPI screens, the icons on the toolbar become microscopic and the titles of topics show only the top half of the text.  Apart from those problems it works correctly.  I still use ConnectedText despite the problems.

Essential PIM Pro

This is a curious one.  I was using Essential PIM Pro 6 which had all sorts of problems with scaling when I was forced onto Windows 10, so I wrote to the developer telling him what the problems were and he wrote back saying that ‘Unfortunately there is no way to overcome this problem’ which I assumed to mean that he wasn’t going to do anything about it and started looking for a new e-mail program but then just a couple of weeks later Essential PIM Pro 7 came out which solved almost all the problems.  He could have told me that the new version was coming out and to wait a little while but for some reason he didn’t.  There is still a problem with some of the text in some of the panels and dialog boxes looking too cramped, this could be solved by switching fonts but you cannot change the interface font in Essential PIM Pro like you can in Scrivener.


So, which laptop should I have bought?  Well I think there is an optimum screen resolution for each screen size, you want it high enough that the individual pixels are not visible but not so high as to cause the scaling issues detailed above, and for the external screen you want it to have enough pixels so that you can set the scaling factors to be the same for the two screens.  So the external monitor should be high resolution. But I am stuck with the monitor that I have (1600 by 1200) unless I want to purchase another one.

For a screen which is 13 inches between diagonally opposite corners I think the optimum resolution would be 1920 by 1080.  If the screen were bigger then the resolution could be higher to keep the DPI (dots per inch) the same.

Universal Links

I sometimes get e-mails about the blog and sometimes people put comments on my posts.  One thing that has been asked more than once is :-

“What is a universal link anyway?”

A universal link is a link to specific content within the file of an application.  For instance Essential PIM Pro allows you to copy a link which will point to a specific e-mail in a specific database created in Essential PIM Pro.  This can be activated from another application and will not only start up Essential PIM but open the specific e-mail to which the link points.

There is a protocol which the application needs to register with the operating system when it is installed, once registered if the operating system receives a link of the correct format it will pass the link to the specified application.

As an example of what they look like a link to one of the e-mails in Essential PIM looks like :-

epim://D:\Data\EPIM\Pauls.epim/mails/544385275277860595

the bit up to the :// is the string which is registered with the operating system, the rest is application specific.

As another example a link to a topic in my ConnectedText notes looks like :-

ct://Potek/HD%20Clone%20Notes

again the bit before the :// specifies the application to which the link points but the rest of it is almost human readable once you realise that ‘%20’ is the space character.

So a universal link is like a URL but it points to specific content within a specific application on the local machine.

A Review of TheBrain

It is my opinion that in a mapping program moving the map to keep the node of interest in the centre of the screen is a very useful feature which should be more widely available than it is.

A long time ago I used a free mapping program called Cayra, it was unlike any of the mind mapping program which I had used before.  It was not organised into a hierarchical tree, anything could be connected to anything else and the map moved to position the selected node into the centre of the screen.  One of the results of this type of organisation was that your map could be any size and only the things which were one or two connections away from the node you had selected would be shown.

Sadly Cayra is no longer viable, it was not being maintained by its author and the original download site lapsed. The author didn’t release the source code and abandoned the development. Then an update to Microsoft .NET 3.5 broke something in Cayra and it started crashing every few seconds.  It is a pity, it was a good program.  Today I don’t think there is anywhere you can still download Cayra.

TheBrain Technologies have brought out a mapping program which exceeds the capabilities of Cayra in every way, but it is not free.  There is very little to dislike about the program itself, but there is a lot to dislike about the jingoistic documentation, marketing and support, also there is a lot to dislike about the licensing.

There is a free trial version which works like the Pro version for 30 days, then it reverts to the free version.  The free version has a lot of useful features disabled but annoyingly the icons and menu entries for these features are all still there, if you click on one then a dialog box opens telling you that you need to buy a licence in order to use this feature.  Very annoying, if the feature is not available the icon or menu entry should be either greyed out or absent.

The Pro version is $219 for which you get four activations (more on that later) each activation is locked to the computer upon which it was activated.

Finally there is the subscription version which is $299 for the first year and $159 for each year after that which works out at $25 per month for the first year and $13.25 per month for subsequent years.  Again you get four activations.

So, what extras do you get with a subscription?

You can store your maps online in the company servers or on the web where you will have access to them from a web browser.  You can allow others to have access to your maps, either read only or read/write, and so the maps can be used by groups of people to share ideas, communicate and collaborate.

You can also synchronise maps from different computers to the ones in the company servers.  So you can work on the same map at home or at work on different computers and keep them in sync.  Also the maps can be transferred and synchronised to Apple Mac computers and phones, both Android and Apple iPhones.

This would be useful for the stand alone program to be able to do.  If I have the same map on my desktop machine and my laptop both of which have access to disk drives on my local area network then it would be very useful to be able to synchronise the map to another map which is on a disk drive which is local to the machine.  TheBrain Technologies have already developed the code to do this, that is what they do when syncing to the cloud, syncing to a local drive would be less complicated.  But they are probably never going to do this because they want to encourage people to take up a subscription to provide the company with a continuing revenue stream.

To activate the program you need an account.

The company seems to assume everyone is going to get the subscription version, the documentation assumes a subscription and they have deliberately made it more awkward to use if you want to use it as a stand alone desktop program.

Then there is the licensing, for your $219 you get to activate the program four times. This may at first seem like an adequate number but it is not.  When I first got the program I activated it on my laptop and on my desktop machine (1 & 2) but when I updated my desktop machine to Windows 10 the program required re-activating (3) and when Windows 10 destroyed my laptop I had to get a new laptop and this was a different machine so required another activation (4).  It may be that the desktop upgrade to Windows 10 might not have used up an activation but I have no way to find out until I have the need to activate it again and it says ‘no, you’ve had your four’.

There are only two other software companies I know of which lock licenses to individual machines like this and one of those is Microsoft, and Microsoft do allow the transfer of a license if you ring them up and explain that the previous installation has been uninstalled.

So what about the program itself.

As well as being a mapping program notes can be stored in the nodes and they can be categorised.  As an organisational tool TheBrain is nearly as powerful as ConnectedText but much more graphical, which is good for people like me who think in pictures, diagrams and patterns rather than in words.

There is a fundamental difference between TheBrain and ConnectedText other than the graphics, that difference is the concept of ‘place’.  When you add data to ConnectedText it is not necessary to decide where to put it, in effect the data finds it’s own place in the matrix based upon the links you give it and the categories you assign to it and the properties and attributes it is given, these things define the place of the data within the matrix.  When you add data to TheBrain then you must decide where to put it within the matrix.  The node is dragged out from another node and that is it’s place.  The user can then connect it to other nodes within the matrix but it’s place was the very first thing which the user decided on before creating the node.

This difference may seem trivial but has some big implications, when building a wiki in ConnectedText you can sometimes stumble upon new insights into the data and be surprised at the patterns which became apparent which were not apparent in the original input. ConnectedText is a tool of discovery as well as organisation and recording.  When building a plex (map) in TheBrain you are unlikely to come upon any new insights simply because the placement of the nodes is entirely based on your pre conceived notions of where things should be placed and this is unlikely to reveal anything which you didn’t already know.  TheBrain is a tool of organisation and recording of data.

Ignoring the licensing, the only other thing I dislike about the program itself is the terminology.  Maps are called ‘plexes’ or ‘Brains’ and Nodes are called ‘Thoughts’.  This cringeworthy terminology is used throughout all the documentation and video tutorials.  The video tutorials exude a feigned gushing enthusiasm about the program which makes me feel like I’m being sold a used car.

I think this hype is an attempt to create the impression that this program is something special and not just another mapping program.  Undoubtedly the program is extremely good and has many technical merits but that doesn’t mean that it is something new and completely different from other mapping programs.

 

 Overall Score = 40 out of 50

  1. Organisation  = 9

Like Cayra TheBrain always keeps the selected node in the centre of the screen.  There is no hierarchy, anything can be connected to anything else.  The fact that the selected node is always kept in the centre of the screen means that the map can be very large without getting cumbersome because only the things which are relevant to the selected node are displayed.  There is a ‘Home’ node which you nominate but this is the only hint of a hierarchy.

In the normal display mode the map arranges itself and you have no control over where nodes are placed, in the normal mode you only see the nodes connected to the node of interest but this can be expanded to include the nodes connected to those nodes, this view can start to look cluttered.

There is also a mode where nodes can be arbitrarily arranged manually on the screen and the connections to other nodes can be expanded or collapsed.  This mode is just like most other mapping programs.

There is even an outline view.

Icons from the library supplied with the program may be assigned to each node, a screen capture of part of the screen may also be assigned to a node as an icon, if you have any icons or images of your own on disk you have to copy them to the clipboard before you can paste the image onto the node as an icon, this works for .png image files but does not work for icon (.ico) files.

New nodes are placed by dragging out from one of the anchor points on an existing node.  When you start to type the name of a new node the program pops up a list of existing nodes which match what you have typed, clicking on one of these entries will auto complete what you were typing and link to the existing node.  A node may appear in many places on the map.  You can generate several nodes at once by separating the names with semi colons but the auto complete doesn’t work if you go on typing and put a semi colon at the end of the name so you end up generating different nodes with duplicate names, probably not what you wanted.

Nodes may be ‘Tagged’, a tag is a keyword or descriptive term applied to the node which has been tagged.  The tags can be searched for and used as a selection criteria in a report.  By default tags appear on the map as text appended to the node but they can be hidden if the user wants.

You can also define ‘Types’ of node.  A type can change the appearance of a node, assign default tags to a node and assign it an icon.  All the characteristics defined for a type become the defaults for that type of node but they can be overridden if any of the characteristics are later changed manually.

As far as finding information goes the search facilities are good.  You can also generate reports which allows you to specify date ranges, tags, types and type of attachment, any node which meets the criteria will be included in the report.  Moreover the reports can be sorted in several different ways.  This is useful, but the similar facilities in Ultra Recall, MyInfo and ConnectedText are much more sophisticated.

An unusual feature for a mapping program is the inclusion of a calendar, nodes can be assigned to a date and a reminder set if needed, when that date arrives a reminder is shown.  Events can be set to repeat.  This feature is more reminiscent of a normal note taking program than a mapping program but it is a welcome change.

The repeating event dialog needs improvement though, the developers need to take a look at the repeating event dialog in ‘Thunderbird‘ for inspiration. With the repeating event dialog in TheBrain I would not be able to set a reminder for two days after the last Thursday of the month for instance (two days after the last Thursday of the month is the weekend after my salary gets paid into my bank if you want to know the significance).

However even having a calendar is a huge leap ahead of any other mapping program I know of, this probably reflects the purpose of TheBrain as an organisational tool rather than just another mapping program.

 

  1. Attachments to nodes  = 9

A node may contain many attachments.

Firstly notes.  Each node has a notes field which contains text, in this case it is formatted rich text which can contain tables, checkboxes, all the usual formatting you would expect in a word processor and hypertext links.  I tried out the limits of the field by inserting one of the Project Guttenberg texts which was about 450 kilobytes long.  It did slow the program down significantly but it still worked and it was still there after closing and re-opening the program.  The notes field will hold all the text anyone might reasonably expect it to hold.  There is no obvious way of inserting images into the text, but they can be attached to a node as a normal file attachment.

Files may also be attached to a node, many files.  There may be some limit to the number of files you can attach but I only tested it up to sixteen.  The files may be attached as a link to a file on the local file system or may be attached as a file embedded within the map.

Also you can attach a folder to a node.  The attached folder opens in Windows Explorer.

There is another method of attaching a folder which creates a ‘virtual folder’ within the map.  The files and folders are not moved into the map, a virtual folder is a link to the external folder.  All the files and folders within the attached folder are represented as subordinate nodes and so the tree structure of files and folders on the disk is reproduced as a hierarchical tree within the map.  This has the advantage that you can attach notes and links to files and folders in that tree.  This gives you an alternative view of your file system.

Links may be inserted into the text of the notes field or a link may be attached to a node.  Links may point to a website, a file, an e-mail address, a node either in the map you have open or in another map or it may be a universal link which points to content opened by another program.  Universal links may either be pasted into the node as an attachment or pasted into the text of the notes field.  TheBrain can also generate universal links, by right clicking on a node and selecting ‘Copy Local Thought URL’ a universal link is copied to the clipboard which points to the node which is currently selected.

This is very useful, TheBrain fully supports universal links in both directions and everything works as expected.

 

  1. Appearance  = 8
The Brain

A screen shot of TheBrain in action.

This is the appearance as I have it set up, the wooden wallpaper is one of my desktop wallpapers. The appearance is very configurable. You can change almost anything so don’t be put off by the dark appearance of my particular setup.

The program has a somewhat idiosyncratic but attractive appearance.  There is a lot of customisation including setting an image as the background to the map.  The colours of most elements displayed on the screen can be set and the customisation is on a per map basis, different maps can be set to display different colours and background.

The positioning of nodes is automatic in the normal mode and is well behaved.  The map can convey its information clearly.

The map has a somewhat organic look.  The links between nodes can be labelled with any relevant information if required.

 

  1. Ease of use = 8

The program is simple and easy to use.  It is certainly a lot easier to use than ConnectedText. Most thing are easy to figure out or become obvious after a bit of experimentation.

There are some points which are not clear to a new user but there is a lot of help available.  There is a .PDF manual free to download from The Brain Technologies website and copious video tutorials are available to view if you can stomach the meretricious gushing enthusiasm about the program where every problem is trivial and every feature is wonderful, but having said that the videos are helpful and informative.

There is also a forum on which questions may be asked and the users of the forum are generally helpful.  However the forum is monitored and any posts which criticise the program in any way are removed immediately, even posts which ask questions about bugs which they have decided not to fix will be removed. I posted about a bug I found, they sent me an e-mail saying it would be fixed in the next version but they weren’t going to do anything about it in this version. My post was removed from the forum.  Anyone posting such things must be careful what they say because they can get their forum access removed.

Collaborative working on maps is possible if you have a subscription to the companies continuous revenue stream scheme.

 

  1. Import – Export  = 6

There are quite a lot of options for getting information into and out of TheBrain. It can import a folder (as a child of the selected node).  It can import the Internet Explorer Favourites list, but why not Firefox or Google Chrome favourites?

It can import and export a special Brain XML format.

It can import a MS Word outline, a Mind Manager file, an OPML file, a FreeMind mind map, an OWL ontology and a text outline (using indentation to set the levels).

TheBrain can export to a bitmap image.

It can export a map to HTML, either SiteBrain HTML or Simple HTML, I have yet to try this out so I can’t comment on the difference but SiteBrain is supposed to reproduce much of the functionality of the map as it appears in the main program but on a website (either on the web or as a local site on your LAN). Whereas Simple HTML reproduces your map as an outline with much less functionality.

The XML export formats are Brain XML which can be imported into TheBrain on another machine or Brain EKP XML which can be imported into TeamBrain which is a multi user collaborative mapping program.

There is also an option to synchronise the calendar with a Google Calendar.

 

Conclusion

Nice program, shame about the licensing.

There is a lot to like about this program, technically it is brilliant but the company have made the decision to milk their customers as much as possible and I don’t feel safe and secure buying a program from a company like that.  Nonetheless I did buy the program and it is extremely good but because of Microsoft’s dirty tricks two out of the four activations have been used up, the other two have been used up legitimately.

Overall I like this program a lot, it is just a shame it has so much baggage.

 

ConnectedText .CSS files

When I first used ConnectedText (CT) I was a little put off by the aesthetics of the program.  I am a visual person and how a program looks is almost as important to me as how it functions.  In particular the rendition of tables was not good, I use tables a lot and the default rendering of tables in CT was such that the text was crammed together and the borders of the cells were too close to the text.  The whole thing looked very claustrophobic and to me this is oppressive.

I have been using the program now for several years without realising that how much those aesthetics could be changed.  I have known for some time that the page rendering was controlled by a CSS file but all the CSS files which are included in the installation package had the same shortcomings to a greater or lesser degree.

Now I must admit that my harsh judgement of the aesthetics of CT was unjustified and it was my own fault that I did not realise this.

The developer of CT, Eduardo Mauro, made a comment on the forum that he had fully implemented the CSS1 standard and partially implemented CSS2.  So I started investigating and found out that it was true.

Next step, find out as much as possible about CSS and what I can do with it, bought a couple of books on HTML and CSS and read all about it.

I have written a new CSS file which uses as many of the facilities as I could get to work and I have commented it thoroughly (well actually I wrote five but they are identical apart from the colour schemes).

It turns out that tables can be beautifully rendered in CT.  Amongst other things you can set the distance from the text to the cell border on all four sides independently.  You can set the thickness of the borders, the colour of the borders both inside and outside, you can set the background colours of the tables and you can define new types of table which can be given a name and used within CT.

If all this is possible then why are the default CSS files which come with CT so dull and unimaginative.  The look of the program is the first thing a new user sees and for those people who are visual thinkers like myself (thinking in visual patterns instead of words, wierd, go figure) the appearance of the rendered page will have a huge impact.

But it gets even better in that you can set which CSS file a page uses by a simple command on that page and also you can write a simple python program which sets which sets the CSS file depending on an attribute or property of a page, the possibilities are endless.

When I first tried CT I didn’t konw how much power lay behind the facade.  I have found out that there is enormous power behind the facade.  But now I have discovered that the facade itself may be re-moddeled.

This is wonderful!

Long Term Usage review of ConnectedText

You might be aware if you have been following my posts on note taking software that I have been searching for the ideal (ideal for me) solution for capturing and developing ideas and organising notes.

During this time I have spent a lot of time using various programs and a lot of money on acquiring the programs I thought were satisfactory.

Now I have decided to standardise on just one program. ConnectedText.

Overview

I have now been using ConnectedText on and off since 2012. I have been using it more extensively since the advent of version 6 which introduced some significant improvements. During this time I have looked at many alternative note taking programs, the best of which were MyInfo and Ultra Recall.

My overall impression is much more favourable than in my previous review, now that I have been using it for a while and have learned to live with it’s little quirks it has grown on me. Of course I recognised the enormous power when I first used ConnectedText but it seemed difficult to use and I wondered whether it was worth the effort. It took me a while to ‘get it’ but now I see that it was well worth the effort.

ConnectedText is different from almost all the other note taking programs which I tried out. It is a wiki and essentially what you are doing is building a website, except it’s not on the Web it’s in your computer.

This is not a novel approach, the World Wide Web itself, if you ignore the advertising, can be seen as a rich and imperfect set of notes belonging to everyone and to both a greater and a lesser extent Wikipedia is the same.

With the World Wide Web there is nobody in overall control, this means that the great majority of the data contained therein is irrelevant and of the stuff that is relevant some of it is wrong. Wikipedia is more useful because of the efforts of a great many volunteers who try to ensure that articles posted are of interest to others and are accurate.

With ConnectedText you have your own intranet, where you can store notes. This is very useful, the markup language allows a great deal of flexibility in the way notes are classified and linked together. If you want a taste of the language then download the Welcome Project from the ConnectedText website.

Limitations

The program is not perfect by any means. But many of the limitations of the program are understandable for a program of this type. If there was a WYSIWYG editor it would be overburdened with toolbars full of buttons and numerous menus, it would be even worse than Microsoft word. There is a program called Info Qube which has gone down this route and the user interface is hideously complex.

It is a simpler approach to have the functionality of the pages defined in a markup language but this does have consequences for the editor.

The Editor

When I write I don’t like things disrupting the flow, the markup language does disrupt the flow but not as much as one might expect. The ‘edit mode’ of ConnectedText is just like a plain text editor with only a few distractions. Pressing F11 expands the text editor pane to fill the entire window, this is close to a distraction free environment. So I just write and don’t think about the markup until later.

For more complex pages which are not just plain text I still find it irksome that to edit a page you have to enter a different mode, where you write the ‘source code’ for your page. You will not see the results until the page is rendered i.e. you go back to viewing mode. This decreases the interactivity of the program.

But there is a way to ameliorate this, somewhat. Starting with version 6 you can open a floating window containing a read only copy of a page. You can have as many of these floating windows open as you can fit on your screen. This is so that you could refer to one page whilst reading or editing another. But the page in the floating window can be the one that you are editing, so you can see the ‘source code’ and the results at the same time in different windows. The floating window is not updated automatically but you can update it manually to see what effect your edits have had. This makes things easier for editing and is not as awkward as constantly switching between modes but it is still somewhat cumbersome to save the page you are editing and then have to use the mouse to right click in the floating window and tell it to update itself. I wish that there were a way to automate this so that it could be just one keypress.

I still think edit mode is ugly but it doesn’t seem as ugly as when I first started using ConnectedText, but I have changed many of the settings from their defaults, I found an excellent article on setting up ConnectedText here.

Import

The export facilities of ConnectedText are excellent but the import leaves a lot to be desired. If you take the simple approach and just cut and paste into ConnectedText then the results are often not what you would expect, any formatting is either lost or messed up and tables don’t come through very well.

Import of text files is possible and works well with plain text.

It is also possible to import .RTF files although it often gets the formatting wrong and does tend to mess up tables.

The most compatible import format in my experience is HTML, this format tends to get the formatting right and to get the tables correct. This is unsurprising since HTML is also a markup language. The best way I have found of importing a Microsoft Word document into ConnectedText is to save the document in the ‘filtered HTML’ format from Word then import it.

ConnectedText needs better import facilities.

Tables

Table are usually not very pretty in ConnectedText. It is possible to get them to look good with time and effort but a standard table is ugly. Once you have produced a table you cannot just drag the borders of the cells around like you can in a good WYSIWYG editor, tables have to be planned in advance or they look cramped with only just enough room allocated to the contents of each cell.

When creating a table in ConnectedText you don’t get any impression about how it is going to look until it is actually rendered.

In my opinion this is one of the worst features in ConnectedText.

P.S. Added 12th March 2015

I have learned a lot more about CSS files in the last three weeks and have found that it is possible to get the default formatting of ConnectedText tables to be a lot better than the formatting which you get with any of the CSS files supplied with ConnectedText.  In fact the rendering of the entire wiki can be improver beyond recognition with a good CSS file.

Memory Usage for large databases

Whilst reviewing each of the note taking programs I did a stress test which consisted of loading more and more documents into them until they failed. I have a collection of approximately 20,000 texts downloaded from the Project Guttenberg website. These range in size from a few kilobytes to three megabytes but the average is about 60 kilobytes.

Most programs failed with the full set of documents. Two which did not fail were Ultra Recall and MyInfo, for these programs searches remained lightning fast and navigation did not slow down. I expect that these programs maintain an index of words contained it each document (called a Trie).

ConnectedText did slow down quite considerably with 20,000 documents and sometimes crashed because it ran out of memory, particularly with indexing and searching. Search and Replace operations were particularly hard hit and slowed to a crawl but also the memory usage went up dramatically during these operations.

With ConnectedText open on one monitor and the Windows Task Manager open on the other I sat and watched the memory usage slowly climb towards two gigabytes, it never reached that far, it would run out of memory when it got close. My laptop has four gigabytes installed but ConnectedText is probably a 32 bit program and so can only address two gigabytes.

However this is an extreme test. I expect that if the average size of document was a lot less then the performance would have been a lot better, even with the large documents of the stress test ConnectedText performed well with two thousand documents except for the searches and search & replace operations which did show significant slowing.

For databases of less than two thousand long documents or a lot more than two thousand smaller documents you should experience no problems. Few people have the need for more than this.

P.S.  Added 22nd February 2015.

The Latest update to ConnectedText (6.0.12.35) addresses these issues.  The bug which caused the consumption of memory during a Global Search and Replace has been found and eliminated, also the memory usage for 64 bit computers has been raised to 4 Gb.  This eliminates most of the complaints raised in this section.

Advantages of ConnectedText

ConnectedText is very powerful. Most of the power of ConnectedText comes from its markup language. But it is also very flexible in the ways you can structure your Wiki and in the ways you can link things together.

Classification

Some types of data have a very clear and obvious structure to them, others do not. If you are merely wanting to record details of some data which you already know the structure of then it is perfectly reasonable to define the structure in advance.

An example would be contact details. You already know about names and addresses so you can plan a structure to your data which is most convenient to you.

But there are other problems for which the structure of the data is not known and for these problems it would be a mistake to define a structure for the data in advance. Defining the structure of the data too early might impose an inappropriate structure which might limit the ways in which you think about the data.

Such a problem might be writing up some research or the writing of a thesis which by its nature it is an exploration of new ideas and new research. Most discoveries are not made whilst performing the experiments, they are made during the organising and writing up of the notes, this is where ideas come together in ways which produce flashes of insight which were not apparent from the raw data. Imposing a structure too early might mean that you miss something significant later.

In my opinion this is where ConnectedText is at its best. You can just dump all the raw data in there and classify it organise it and re-organise it, because you can have the same data represented in many different ways simultaneously and just switch between the different views.

Connected Text has very powerful facilities for classifying things. Pages can have category, attribute and property commands embedded in the markup language. A page which contains a category command assigns the page to that particular category. Properties and attributes are similar to each other and both assign a value to a variable which is associated with that page. The only difference is that attributes are displayed as part of the page whilst properties are invisible in the text in viewing mode.

Assigning categories, properties and attributes is only half the story. Once you have a set of pages classified like this you can write queries to select the pages you want to see. Each category has an automatically generated virtual page which contains links to all the pages in that category. The categories are hierarchical so a category can be a subcategory of another category.

A page can contain a query which selects pages with certain categories properties or attributes, when this query is run it will generate a list of links to pages which fulfil the selection criteria. If selecting on a property or attribute any page which assigns anything to that property or attribute is considered to ‘have’ that property or attribute. However queries can also select pages which have a property or attribute equal to (or less than, greater than or not equal to) a specific value. Also the result can be sorted according to the values in a property or attribute.

For instance you might have a set of pages with the category ‘Task’ with an attribute ‘Priority’ and a date associated with each page. You could then have a page containing a query to display tasks which would display a list of all pages in the category ‘Task’, this list could be sorted by priority or by date. The page would be automatically updated each time the page is rendered.

Pages can include other pages (either the whole page or just a part of the page) so a page can be a patchwork of parts of other pages, if any of the source pages change then any pages which include that page also change. When used with ‘named blocks’ using a query to select which blocks are included in the page has made ConnectedText very useful for CAQDAS.

Connectivity

Basically you can connect anything to anything else. All the links are embedded in the text of a page so you don’t connect a note as an entity, you embed a link in the text of the page. The link can be to another note in the wiki or to a note in another wiki or to an external file or to a URL on the internet. The fact that the links are embedded in the text makes them both visible and editable, nothing is hidden. In view mode if you click a link to a file then the program will run that file just the same as if you had double clicked on it in file manager.

Creating a link to a page in the same wiki is easy, you just put the name of the target page within square braces like [[Target Page]] , if the target page exists it is linked to, if it does not then the link appears in red when you go back to viewing mode. But if it does not exist then when you click on that link a new empty page with that name is created and opened in edit mode for you to start writing. This method of creating links on the fly does not interrupt the process of writing when you want to refer to a page which does not yet exist.

The program has a menu item entitled ‘Copy as link’ which copies a universal link onto the clipboard which can be pasted into another Connected Text wiki or into any other program which supports universal links. When activated this link will open Connected Text if it is not already running and direct it to open the page which is the target of the link. So you can link to specific pages within other Connected Text wikis.

Connected text also supports universal links to and from other programs, so I can link to a specific E-mail or contact in my E-mail program from within Connected Text.

There is also a set of ‘Bookmarks’ just like a web browser, you can bookmark favourite pages within your wiki and jump to them.

Adaptability

I was once told on the ConnectedText forum that there is no ‘incorrect’ way of using ConnectedText. Whatever way works for you is correct. Indeed this program is very versatile.

I found an implementation of much of the functionality of ‘Lotus Agenda‘ (an organiser which I once used back in the days of DOS) written in the ‘ConnectedText’ markup language on the Taking Note blog. I am now using this to implement Dave Allen’s GTD method of organising tasks.

The Hierarchical tree is a classic model for the organisation of data. There are many note taking programs which base their whole organisation model on hierarchical trees. The big mistake most note taking programs make is to only allow a page to appear at one location in the tree, but sometimes it might be appropriate for a page to appear in multiple locations. For instance if you have a research project which needs equipment to be bought, does the record of these purchases go under the project or under finances? The answer should be both but often a program will force you to choose which is the most appropriate location. As the tree expands this problem gets worse.

The programs Ultra Recall and MyInfo allow this type of cloning of pages.

ConnectedText also has trees in the form of outlines. Dragging a page to an outline inserts the title of that page and a link to the page into the outline. There are two types of outline available in ConnectedText, there is one generic outline which is saved with the project automatically and another which you explicitly create (but you can only have one of these open at once). The outline allows the same page entry to appear in multiple locations.

You can have as many outlines as you want and each one can give you a unique view of your data. So ConnectedText can function as a classic two pane note taking program based on a hierarchical tree.

Hierarchical trees are very useful but they are not the whole story.

Some note taking programs rely on Tagging (sometimes called Keywords or Categories), Personal Knowbase is an example of this type of program. This is also a good approach to searching for the data you wish to find if the search and filtering is well implemented. Most of the programs I have reviewed (including Personal Knowbase) use a flat model for the categories, it is more useful to have the tags in a hierarchical tree as implemented in the program MyBase, so that a category can have subcategories. This is the approach taken by ConnectedText.

Some note taking programs allow the association of arbitrary metadata with a page, this is useful for searching and filtering of pages, generating sorted lists of pages which meet arbitrary criteria or seeing information about pages.

Ultra Recall allows you to define different arbitrary metadata for each individual page within the database. Scrivener and MyInfo allow arbitrary metadata to be defined but it is common to the whole database. For ConnectedText the metadata is defined within the markup for that page and so it can be unique.

So ConnectedText has implemented all of the most useful aspects of information organisation from other note taking programs, but they are more useful when used together.  There are other aspects to the program like being able to generate directed acyclic graphs on a page as well as normal graphs, being able to embed Python scripts within a page and have it execute each time the page is rendered, you can even put musical staves along with their notes on a page although this is one facility I have never used.

Conclusion

ConnectedText is not as pretty as some of the note taking programs I have reviewed but if you are happy with the aesthetics of the program then I know of no other program which can match its power and flexibility.