Solving writing problems by physically pushing through and letting yourself go

I don’t know if this is just me, but I find that certain writing problems (such as difficult conceptual problems that produce a writer’s block because they prevent you from progressing and altogether are putting you off the writing process) can only be solved by physically pushing through, by which I mean pushing your body (and mind) substantially beyond its comfortable limits.

I am something of a health fanatic. I’m careful about what I eat, I monitor my weight, and I exercise daily. But I find that when it’s crunch time, and I need to deliver the goods (which means coming up with a new contribution to knowledge as an academic, i.e. as a professional writer), the solving of some problems (and the meeting of my deadlines while producing a piece of work that is of sufficient quality to be accepted as an internationally competitive piece of research, as defined and required by my particular academic community), necessitates the abandoning of my healthy habits.

I end up having to work longer hours, exercise less, eat food that I otherwise wouldn’t touch, and put my body and mind under substantial strain (by sitting behind a desk far too long, staying up far too late, drinking far too much caffeine, eating far too many carbs), until I finally have an epiphany about how to solve the conceptual or practical problem, after which writing suddenly becomes a lot easier.

I feel this is a process of “letting go” of some things and liberating my mind to be open to some other things. It feels like achieving a moment of selflessness. Unfortunately this “letting go” is not just of the wholesome spiritual kind but also a “letting myself go” that quite quickly translates into additional inches to my waistline.

Maybe I just have to accept that the production of word count correlates with the production of body fat, and my goal should be to achieve a reasonably healthy balance between periods of productivity and periods of fitness across the year, so the latter can support the former, and that the former do not entirely overwhelm the latter.

What is particularly ironic about this situation is that the “physical” aspects of pushing through, and the resulting physical pain and after-effects in terms of weight gain, are due to the extreme reduction of physical activity (resulting from being stuck in the same position behind my desk for prolonged periods of time).

Do some outlining. Then outline some more…

I once more had to realise that when the writing is not going well, it might be because I haven’t figured out what I wanted to say, meaning that I probably need to do more outlining. So here is my freshly rediscovered rule of thumb: “when you’re stuck, when you got the writer’s block, just do some outlining. And then outline some more. And then some more.” And then you will know what to write about and how to organise your thoughts. In fact outlining is not only about developing the content but also deciding the order in which the content is going to be presented, i.e. the flow of logic, the order of presentation, and the structure of the content. All the more reasons to do some outlining, and then outline some more.

Most recent process flow for academic writing

Just for the record, I thought I’d repost my comment here that I’ve just left on Christian Tietze’s blog concerning on how I go about outlining and writing on the back of Zettelkasten notes these days.

My latest process flow on Windows 7 for academic writing, using 3 monitors, so some of this software could be viewed simultaneously:

1) read the literature (usually PDF articles or books);

2) take reading notes (mainly quotes + interpretation) in ConnectedText as Zettelkasten;

3) use VUE to develop a concept map to make sense of the material, while reviewing the CT notes in floating windows (i.e. multiple notes can be viewed simultaneously);

4) develop an outline for the paper in a Freeplane mind map, building on the VUE concept map and adding hyperlinks to selected quotes and notes in ConnectedText, so they can be easily called up when writing about a given point;

5) write in plain text using Markdown in WriteMonkey (distraction-free writing software), while checking off nodes in the Freeplane outline as they get written up, and paste in raw EndNote code for academic references, where necessary;

6) paste draft into Outline 4D (single-pane outliner with inline notes) and reverse outline it, i.e. add a heading to each paragraph to see the overall logical structure and content of the paper, and edit it accordingly to improve coherence, eliminate redundancy etc.

7) Import into MS Word, do final editing, add final headings, table of contents, and convert raw EndNote code into formatted references and bibliography.

My minimalist writing environment

…with research question permanently displayed

As I’m writing up my PhD dissertation, I am continuously striving to streamline my writing process and simplify my writing environment. For this reason I have been drawn to minimalist writing applications that reduce unnecessary distractions, such as too much chrome and colourful menu buttons in applications. I use different software for different writing situations. Currently I am writing up a chapter for which I have detailed notes organised in an elaborate Freeplane mind map, which I keep in my right hand monitor.

My central monitor is where I do the actual writing. Currently, this consists of a WriteMonkey window that takes up most of the left and centre of the monitor area, while on the right I have a Notepad2-mod window open to take some ad hoc notes and organise them into a quick outline prior to writing. To do the actual writing, I use Dragon NaturallySpeaking to dictate directly into WriteMonkey, while looking at my Freeplane mind map, which I check off gradually, as described in this post.

Notepad2-mod is a recent discovery for me. It is a replacement for Windows’ own Notepad. I have learnt about it at the Donation Coder forum, where you can find instructions on how to turn it into a very simple plain-text-based outliner. I like to use it in conjunction with WriteMonkey, as it is easy to copy and paste unformatted text from one to the other, and I also find it distraction-free enough. I also use Notepad2-mod as a scratch pad area, to work out ideas quickly, before dictating them into WriteMonkey.

There’s one more screen element that has become an important part of my setup. As I was writing my chapters, I continually wished that I was able to view my main research question at the top of my screen, so that I would be reminded of it at all times, in order not to lose my main focus. However, I had a hard time finding a solution that would display a single line permanently at the top of my screen, without there being any chrome around it, and without it being obscured by maximised windows.

Eventually it was another of Mouser’s brilliant little solutions that allowed me to do this. It is a very simple little application called DesktopCoral, which lets you reserve an area of your screen and prevent other software from covering it. Besides other uses, you can also select a .jpg image file to be displayed within it. So all I had to do was to take a screenshot (using Mouser’s excellent Screenshot Captor) of my research question displayed in a single line in WriteMonkey, and insert it into DesktopCoral’s docking bar, which I docked to the top of my screen. It takes up just a tiny sliver of it. As you can see (exactly because you cannot actually see it!) from the screenshot below, the DesktopCoral bar blends into my screen environment seamlessly.

WriteMonkey, Notepad2-mod, DesktopCoral, Winsplit RevolutionTo achieve this effect, I also needed to enlist Winsplit Revolution, which I used to position the WriteMonkey window into the centre-left area while in full-screen mode (otherwise WriteMonkey would cover up the DesktopCoral bar, as full-screen mode is different from maximised-window mode). (By the way, I’m not bothered by my Windows taskbar at the bottom of the screen. It allows me to quickly switch between applications with the mouse, and I don’t find it too distracting.)

If I did not need the Notepad2-mod window, then I could just centre WriteMonkey in full-screen mode (again, with Winsplit, in order not to obscure the DesktopCoral bar), and the research question area at the top would simply look like it belongs to WriteMonkey itself, except that it is permanently there, and it does not disappear when I scroll up or down, or indeed do anything else: it remains visible even when I close WriteMonkey and switch to other tasks.

At the moment nothing is more important to me than remaining mindful of my research question, therefore I do not mind at all that it is always in my face. I could imagine that other people might find this solution useful for pinning important reminders—or even inspirational quotes—to the top of their desktops to permanently remind them what is important.

The most amazing thing is that, with the exception of Dragon, all of the above tools are free– though their developers do welcome donations, and they deserve them, too. I just love these tools to bits—or should I say, to bytes?


If this is just not minimalist enough for you, you could always 1) turn off the numbering in Notepad2-mod, if it’s too distracting, or 2) instead of Notepad2-mod just use another instance of WriteMonkey and position it on the right with Winsplit Revolution, and 3) make the Windows taskbar autohide. With 2) and 3) it would be truly just a single-coloured background with a single-coloured font, and nothing else to distract you. Here is what the screen would look like then (the file name, word count, and time info in blue at the bottom is optional, as is Winsplit’s little floating tool in the bottom right corner):

WriteMonkey with DesktopCoral and Winsplit RevolutionP.P.S.

WriteMonkey’s developer tells me that it is also possible to display the research question with WM’s own Corkboards plugin. And it turns out you may not even need full-screen view + Winsplit to get rid of WM’s Windows chrome: you can just CTRL+right-click with the mouse on the right side of WM’s window, and the chrome disappears. Here is his screenshot of the Corkboards feature:

WriteMonkey with Corkboard plugin

Dragon NS 12.5 and WriteMonkey

I have recently updated my Dragon NaturallySpeaking to the latest version of 12.5. Currently I am using it mainly with WriteMonkey, as I like to write in a minimalist environment. But while I was playing around with Dragon today, I realised that it is also possible to dictate directly into ConnectedText (or any other software not directly supported by Dragon), if you permanently turn off the Dragon Dictation Box feature that pops up. This might mean that not all of Dragon’s features will work in those unsupported software, but I only ever use dictation anyway.

I’m impressed how well Dragon dictation works with WriteMonkey. I wonder what it is about WM that makes it not to trigger the Dragon Dictation Box, as opposed to most of my other non-mainstream writing software…

PhraseExpander’s new algorithm

I’ve been using the text expansion software PhraseExpander Pro for about three weeks now on a continual basis, as I carry on writing up my PhD thesis. I’m also testing it to fulfil my promise to write a review of it at the end. So far it’s been working very well, as I enjoy its speed, its universal functioning across all of my writing applications, the ease of importing my existing word lists from my previous text expansion application, and the ease of adding new phrases. As I’m not a touch-typist, a text expansion tool for me is a must.

I only had one minor gripe with it so far. I’ve got used to using text expansion software in a somewhat unorthodox way. As I don’t want the cognitive burden of having to remember hundreds of shortcuts, I prefer to set up my phrase lists in such a way that I can just start typing the first few letters of a word, and a list of matching phrases in the drop-down box (that appears by the cursor as I type) gets whittled down, with the intended phrase gradually rising to the top of the list as the match becomes more complete.

Here is an example. Let’s say I want to type the word “conceptual.” I would just type “con” and I would get the following matches in PhraseExpander’s SmartComplete popup window:

PhraseExpanderThen I would just carry on typing until the desired word gets either to the top, at which point I hit the confirmation key (Tab, in my case) to insert it into the text, or near the top, so I can use the arrow key to select it first (alternatively you could also click on it with the mouse):

PhraseExpanderWell, PhraseExpander didn’t quite support my use case perfectly. It worked fine most of the time; however, because it was more geared towards supporting the use of shortcuts, its SmartComplete feature would sometimes try to match the final letter of the word after matching the first two letters, rather than produce a 100% front-end match. For example, after typing “con,” I would have a word like “competition” show up at the top of the list, presumably because the first two letters and the final letter had matched. However, that’s not what I wanted.

After I explained my problem to the developer, it only took him a couple of days to come up with the solution. I don’t completely understand what he did to his algorithm, but the new version works even better than I could have ever imagined. Not only does it fully support my way of narrowing down the phrase list in the popup box by matching 100% of my typed letters, but it also allows me to type any letter from the word beyond the first two letters, and the intended word jumps up the list! I discovered this first by accident, when I mistyped my intended word, yet it showed up at the top of my list, as if the software was able to read my mind. Then I realised that I had typed a letter that appeared further down in the word.

Here is how my earlier example works now in the latest version of PhraseExpander. First I type “con” and I get the same list as above. In order to get to the word “conceptual” the fastest way, all I need to do is type one additional letter that sets it apart from the words above it. In this case it would be the letter “l”, as neither of the words above it have it. So, I type “conl”, and, as if by magic, “conceptual” jumps to the top of the list, so all I need to do is hit the Tab key to insert it.


The point here is that the SmartComplete box gives you a visual clue as to what shortcut to type in order to select the desired word, which is much more useful (to me at least) than having to memorise the shortcut—and it also obviates the need to use the arrow key.

How many initial letters and additional ones you need to type will depend on the content of your phrase list. If there are a lot of words starting with the exact same three or four letters, then you need to do a bit more typing to get to the result. But in the case of rarer words, even typing the first two letters plus any one other letter might get you the desired phrase. It is also possible to manipulate the order in which the words usually show up, by shortening the shortcut phrases for those that are more frequently used, which will make them show up nearer to the top of the list. For example, when I start typing “emp,” I want the word “empiricist” to show up sooner than the phrase “empirical description,” and “empirical evidence” sooner than “empirical data.” So I shortened the shortcuts accordingly:


In any case, I was very impressed by the developer’s prompt response and his ingenious solution. If you are an existing PhraseExpander user, I strongly recommend downloading the latest version (v. 3.9.6) that has the new updated SmartComplete feature. And if you have not tried PhraseExpander before, the Pro version (which contains the SmartComplete feature) can be trialled for 21 days. I can highly recommend it to anyone who needs to type a lot of repetitive phrases all day long, every day, or words that are long, difficult to spell, or a nuisance to type (such as Markdown code for inserting an image with a long Dropbox link into an HTML page—I’ll say more about this very useful trick in another post).

Going gung-ho with Gingko, the horizontal outlining app

I’ve tried a wide range of outlining and writing tools for Windows over the last few years, in preparation for the big task of writing up my doctoral thesis, so I managed to surprise even myself when after all that careful consideration I chose a web-based tool that I have only found out about barely a month ago. But when push came to shove, and I had to start writing according to a regimented writing schedule, I opted for the newcomer called Gingko app over my old-time favourites oft discussed here.

It is actually not that easy to describe with one concept what type of an application Gingko is exactly, as it cuts across a number of categories (which surely must be a sign of greatness:). What is special about Gingko is the way these disparate features are brought together. As I’m primarily interested in academic work, and more specifically in outlining and writing, for me Gingko is an outliner and a writing app. But even before I began to use it as such, I was already using it as a project planning and task management app. This might give you an idea of its versatility.

Let me focus on Gingko’s outlining and writing capabilities for now. It allows you to outline your writing in virtual index cards, in which your text can be as short or as long as you like, and which can be joined together vertically and horizontally to form columns and rows. The cards can also be freely rearranged on a virtual and more or less infinite ‘corkboard.’

Gingko app

Creating your first card in Gingko

Gingko app

Adding more cards to Gingko horizontally and vertically

Now you might say that there are some other index-card-based software out there, such as those targeting fiction writers, or that there are other virtual corkboard software where you can freely position your notes and even link them with arrows and such. Or you might say that these rows and columns sound and look just like MS Excel or tables in Word.

But this is where Gingko’s magic kicks in. It doesn’t just connect these cards in the manner of a spreadsheet or a table. Gingko in fact is a horizontal outliner. This means that e.g. when you attach a new card to an already existing card horizontally, together they are starting to form a branch within a hierarchical outline. The card on the left becomes a parent, and the card on the right becomes the child, and so on, ad infinitum.

Gingko app

A single branch of a simple horizontal outline in Gingko

But it gets even better. If you now add another card below that child, within the same column, the new card becomes a sibling of the card above, and another child of the aforementioned parent.

Gingko app

Horizontal and vertical hierarchies in Gingko

Now you might wonder: how do multiple clusters of cards connected across both columns and rows can possibly fit in the same space, if they have a different number of cards all connected in different formations? After all, outlines don’t usually have the same number of children and siblings under each parent. This is where the second bit of magic happens. When you click on any of the cards, the card and its entire cluster of parents, grandparents, siblings, children and so on rotate into view through an ingenious mechanism that works a bit like a “fruit machine” (if you’re reading this in British English), or like a “slot machine” (if you’re reading this in North-American English). The same happens if you are navigating with the keyboard arrows. It’s an incredibly clever way to navigate such a complex arrangement.


Clicking on “Parent 1 item” rotates its branch into view and centres it, highlighting all connected offsprings

You might still ask: but what is the advantage of writing in such an application? A horizontal outline after all is just like a vertical outline, except it is laid out horizontally… But Gingko is not only a horizontal outliner. As it utilises Markdown, you can add six levels of headings anywhere in the text, which means that you can also do ‘vertical’ outlining, by promoting and demoting the text within a card (or the card itself) without having to actually move the card anywhere. E.g. by adding a Level 1 heading to a card, and a Level 2 heading to its sibling connected from below, the second card now also becomes the child of the card above (while remaining a child of any card to which its “sibling-parent” is connected on the left).

Gingko app

Using Markdown headings to create a vertical hierarchy in Gingko

I put ‘vertical’ above in quotation marks, as—and this might sound a bit confusing initially—you can also apply this parallel or ‘vertical’ hierarchy horizontally, across the columns.

Horizontal and vertical outlining in Gingko

Markdown headings used to create a hierarchy both horizontally and vertically

The Markdown headings are the same thing as headings in MS Word, and if you export a Gingko tree (as a Gingko document is called) as HTML and copy and paste it into Word, the headings will be automatically converted into Word headings. There is another bit of Gingko magic to exporting: horizontal and vertical hierarchies and the Markdown headings (as long as you’ve used them consistently) are all neatly arranged into a single, classical (yes, vertical) hierarchy of headings in the exported document.

Gingko Markdown export

Gingko tree exported as Markdown with horizontal hierarchy converted into a vertical hierarchy

Gingko HTML export

The same Gingko tree exported as HTML, with headings now formatted

Gingko imported into MS Word

The same Gingko HTML export pasted into MS Word, with headings correctly recognised

But I still have not mentioned the killer feature of Gingko. Although the cards are horizontally connected through the “slot machine” mechanism, you can also ‘deactivate’ this hierarchical connection by simply scrolling away to any note in the other columns, while carrying on writing in your centred index card in your focal column. It is immensely useful to be able to call up a note that otherwise might be connected to an entirely different and distant part of the hierarchy, and view it side-by-side with the index card you happen to be editing. If you were using a traditional vertical outliner, you would have to abandon the text you are writing to scroll up or down and drill deep into branches to look for your note, losing both your original place in the outline and your train of thought.

Gingko app

While the edited card remains centred in column 2, the cards on the left and the right are “scrolled up” to be displayed alongside it for reference

There is a lot more to say about Gingko, but I’ll keep that for another post. In the meantime, do check out Gingko’s blog and their Youtube video, as they offer many other user case scenarios.

Update (14-Oct-13):

In response to a reader’s query, here is how to emulate a footnote using the superscript tag with Markdown,


and the Level 6 heading with Markdown, which produces small font suitable for a footnote:

 ###### 1

The footnote area is separated from the body text by the horizontal line:


Here is a screenshot of the card in view mode:

Footnote in Gingko

Emulating a footnote with Markdown in Gingko

And here is the same card in edit mode (the English spellchecker in my Firefox went a bit crazy with the Latin text :):

Footnote in Gingko

The same card in edit mode, showing Markdown syntax