Each day, a researcher has to deal with a lot of data in different formats coming from different sources: measurements, graphs, papers, reviews, web pages, notes, laboratory journals, tables, schemes, pictures etc. The ways all these files are interconnected are usually complex and cannot be easily reflected into the hierarchical structure we give to our folders on our disks. That's why applications that help organizing data and files, keeping track of ideas and notes, and cross-link resources of different kind are always much appreciated by scientists. This is the field where DevonThink aims at helping users.
Available in two flavours, Personal (€ 33.57 or USD 39.95 + taxes) and Professional (€ 67.18 or USD 79.95 + taxes), both of them already compiled as Universal Binaries, we'll discuss here of the Professional version only, since it's the most feature complete. An easy upgrade path is available from the Personal to the Professional version, by just paying the difference. I'm going to review version 1.1.1 of DevonThink Pro. In the following screenshots, the application and its interface are in English (localization is available also in German, French and Danish), but contents are usually in Italian: I hope you apologize me, but I wanted to show you DevonThink Pro in real-life applications.
DevonThink organizes your data into one or more databases, stored in your ~/Library/Application Support/DEVONthink Pro folder, that can be automatically backed up from hourly to monthly. Databases are collections of "files" and "folders": I quoted the two words, because you won't see them as conventional files and folders on your hard disk, but they are viewed as such in DevonThink's main window. Here you can choose among many different views, resembling those of the Finder (icon, list and column) or those of most e-mail applications (with two or three panes):
Files and folders can be assigned a coloured label, and can be organized in deep hierarchies. Files and folders can be created from within DevonThink, and in this case they are stored into one database and never show up in the Finder, but can also be real files and folders added to DevonThink's virtual file structure by a simple drag-and-drop from the Finder.
(Very) rich text
If folders are just containers, files are richer than what you usually expect. DevonThink can accept (by drag-and-drop, for example) any kind of file, although only those of a format that it recognizes can be viewed in-line (the others are shown with their icon and are opened with their associated application); and new files can be created into the database, mostly plain text or rich text files. Rich text files are a powerful way to take notes and organize ideas, since you can type formatted text, include graphics, images, links, movies, pdf files (viewed in-line):
Equations can be simply added by drag-and-drop or copy-paste from tools like MathMagic or typeset into DevonThink from LaTeX by tools like EquationService, LaTeXiT and TeX FoG. Drag-and-drop of pictures and graphs from data analysis applications like pro Fit works like a charm, and is very handy for keeping electronic journals of lab activity:
pdf and image files can of course be stored (and viewed) independently, not embedded into any text file, and web pages can be rendered with the same engine used by Safari (WebKit):
Although not powerful as the anchors used in HTML, DevonThink offers a system for linking files together; links point to another file in the database (it seems there's no way to point to a specific location into a given file), and are displayed in the usual style and colour:
Of course, links to web pages can also be added, and web pages can be seen directly from within DevonThink or with your favourite web browser.
Besides rich text, pdf, image files etc, a nice feature of DevonThink is the possibility to define tables (also called sheets) that consist of an arbitrary number of columns and rows (also called records).
Only very basic operations can be done on such tables (like sorting), although some more advanced function (like simple computations) is available through scripts. Tables cannot be included as part of rich text files, somehow limiting their usefulness. If you want a sort of (text) table into a text file, you have to arrange one with rulers and tabs, as with old-style word-processing techniques.
Summaries and search features
DevonThink makes its best to try to understand what you are writing into the files stored into databases. In this way, it tries to classify your documents according to keywords that it extrapolates from your files and that should describe accurately their content. DevonThink uses this information to suggest you other documents in the same database that have similar keywords, thus suggesting you related documents or folders where a newly added file could be moved or where you could find relevant information. The idea is very nice, but it doesn't seem to be well implemented. Completely unusable in languages different from those provided as localizations, this feature is barely usable even in English, because it seems that are identified as keywords only the most used words (besides articles, prepositions, conjunctions etc. of course), that aren't necessarily the most important ones. This is a pity, since such an automatic way to classify files and suggest related documents would be really useful.
Somewhat limited is also the search feature implemented in DevonThink. It's just a standard find/replace window that acts on the currently selected document. There's no way to perform a search on more than one document at a time, or on selected folders, but there's a nice search feature on the entire database:
All searchable files are considered (I guess DevonThink uses Spotlight on Tiger for searching in the files' content), and results are usually accurate and available in a fraction of a second.
Scripts, scripts and even more scripts
Scripts are the most impressive part of DevonThink, especially of the Pro version. There are tens of AppleScripts already available that do any sort of things: accessing records in AddressBook, interfacing with Mail, extracting and cataloging image files from web pages, executing Perl and shell scripts, accessing news feeds (although automatic update of the feeds is not available, so DevonThink is not a really practical news reader), defining styles for text formatting, scaling, rotating, flipping etc. image files, importing astronomy pictures, comics, man pages, perldoc pages etc, managing file paths and image thumbnails, and more. All these scripts are accompanied by more AppleScripts that can be installed into the ~/Library/Scripts/Applications subfolders for interacting with common applications like the Finder, or Safari, or Mail, and that help quickly performing simple but recurring tasks like adding web pages or images or mails or contacts to DevonThink's databases.
The AppleScript dictionary is particularly rich and well documented, thus encouraging users to develop their own scripts to automate even complex tasks involving DevonThink or its interaction with other applications:
For those who prefer Automator, a set of actions is also included:
Overall, scripting facilities in DevonThink make it an application that can fit to almost any need; in most cases, the provided scripts are a very good starting point for making new ones. With some practice, most of the recurring classification procedures on new documents can be automated with custom scripts, saving a lot of time.
The database format used by DevonThink is proprietary, so it's extremely important to be able to export data to some public format. DevonThink can export single files and folders, or the whole database, into real files and folders visible in the Finder, or into OmniOutliner documents, rtf and MS Word documents, pdf files, and web pages. This last option is handy for sharing immutable data with other people (no cooperative editing is provided in DevonThink), but exported web pages contain pictures in PICT format (the web pages export option is buggy and sometimes pictures are not exported at all), that's not recognized by most browsers. I usually prefer printing my monthly lab journals in pdf for web sharing in my Institute LAN. There's even an iPod export option, which I never tested although I have a 5G iPod.
DevonThink Pro is, in my opinion, a really useful application: its ability to store different file formats into a single, interconnected database, the possibility to link documents to one another, the ability to view pdf files in-line with text files, integrated web access, handy (although improvable) tables, and really powerful and rich scripting facilities make it a daily companion of my lab and office activity. Classification algorithms most surely need to be revised, and even more integration and cross-linking features among the different files and folders that are part of the same database would be really appreciated, but even as is DevonThink Pro is by far the most useful application I tested for organizing data, files, ideas, notes, resources, lab journals etc.