In an ideal setup, my workflow would have me writing in some version of plain text — a flavor of markdown in all probability — that could be quickly and easily outputted to a variety of formats and media. In most instances, that output gets printed, or at least paginated, which means it probably has to, at least for a moment, be instantiated as a PDF. (If I remember correctly, this is essentially how the macOS display and printing system work.) What that would mean would be a collection of CSS files that transformed the generated HTML into the various kinds of documents I regularly produce: essays, reports, letters, lectures, etc.

This function is what the Marked app does and does well — it’s also functionality built into the Ulysses app if I remember. Neither of those apps, I believe, offer pagination, which is often critical to what I output. And so, I have continued to search for my own solution in hopes of building it into a workflow — for the record, when I am working on long-form plain text, my editor of choice is FoldingText because it does a brilliant job of hiding the markdown unless you are working on that sentence and, as the name implies, it makes it possible to hide all but the section of the document on which you are working. It’s brilliant. (To be clear, I am a fan of all the apps mentioned here and of their developers.)

Getting from plain text via markdown or MultiMarkdown to HTML and then pairing that HTML with a page-media aware CSS file and then outputting to PDF is not as easy as it should be. The one app of which I have been aware up until recently was PrinceXML, which its creators have made free for non-commercial use, but with the imposition of a small watermark. That’s very generous, but it’s not quite what I want and I don’t have the kind of money to afford a desktop license.

And so it was a delightful surprise to discover that there are free software options to explore:

  • wkhtmltopdf is an “open source (LGPLv3) command line tools to render HTML into PDF and various image formats using the Qt WebKit rendering engine. These run entirely headless and do not require a display or display service.”
  • **WeasyPrint is a “visual rendering engine for HTML and CSS that can export to PDF. … It is based on various libraries but not on a full rendering engine like Blink, Gecko or WebKit. The CSS layout engine is written in Python, designed for pagination, and meant to be easy to hack on.”

Next up … trying WeasyPrint and an update/report here.


One of these days, I am going to sit down, spend the time, and figure out some of these workflows over which power users celebrate. I don’t know that I have ever really mapped out the distinct workflows for research versus teaching versus personal interest. And, to be honest, those differences have led to what can only be described as *document sprawl*.

I’ve taken efforts to bound/tame the sprawl by putting an increasing amount of material in [Papers][], and letting it manage things. It does a pretty good job now, especially, of letting you set up collections and letting you sync those collections to an iOS device — making sure everything in a collection is local to the device when you are about to leave the webosphere is not quite as convenient as I like, but I trust the developers to figure it out. (They release updates at a pretty impressive pace.)

Still, there are things I handle in GoodReader, if only because some of the electronics work in which I am interested or teaching myself linear algebra doesn’t strike me as “worthy” of Papers. (And that’s a weird thing to consider. Are research materials sacred in some fashion?)

In the mean time, I’d like to start collecting notes on workflows:

* Michael Schechter has written about [“Sending Files to Evernote While Creating Tasks in OmniFocus”][ms] using Hazel, an app about which I have only heard much but never tried.


My Workflow at the Start of 2014

*A few students have asked, so I wrote this in response. Sorry for the lack of links when it comes to various bits of software, but, the titles are all eminently findable through web searches.*

Increasingly, everything written starts in one of two places: Textmate or Scrivener. If I’m working in Scrivener, it means I’m writing prose. If I’m working Textmate, it usually means I am writing code or I am writing a one-off piece that I am going to e-mail to someone or, perhaps, dump into Nisus Writer Express and format to print — I also use NWE to format documents exported from Scrivener. I haven’t had much luck in generating RTFs, DOCs, or DOCX files that Word wants to read without crashing. And so, while Word is one option for writing structured document, it is increasingly not an option I pursue.

I also use Textmate to interact with a variety of dimensions of what I will call here simply the MacPorts stack that I lovingly maintain on my computer. Among its many layers are Python, LaTeX, and R.

I am less content with my software stack for visuals: I rely on Keynote for more than I should, and I haven’t yet explored iDraw as an alternative to OmniGraffle, which I have kept in my desk drawer for years and years but I find I use less and less as its development path slowly diverges from my use path. *Sigh.*

For quick number crunching, there is still nothing as good as Excel, which remains the most counter-intuitive charting application ever invented — why, goodness why, is it still easy to copy and paste data into Keynote to make a chart than to do anything in Excel. That noted, Excel remains more robust than Numbers, especially as Apple continues to oscillate on what it wants out of its office semi-suite. (Some readers will note that I make no mention of Pages here, and, for good reason, I just don’t have the confidence that Apple has any vision in this regard. None that I can discern anyway.)

When it comes to data collection, especially for web sources, I’m afraid two applications have replaced DevonThink here, which saddens me. When I want to capture things from the web, Evernote is just too easy, and it’s always there. And it syncs to my iOS devices, and they sync back, and I can get those notes almost anywhere, and I don’t have to do much of anything to make that happen.

For all the paper, or pseudo-paper in the form of PDFs, there is Papers (2). It is not the smoothest of experiences, but it takes managing all that stuff out of my hands, and off my mind, and that’s worth something. The iOS companion app is nowhere near GoodReader in terms of ease-of-use and functionality, but I remain hopeful.

Academic Work

I was in the middle of re-reading Joel Spolsky’s 2002 essay [“Strategy Letter V”][] and thinking about how the microeconomic notion of “commoditizing your complements” applies to the current academic situation, when I wondered what he had written about in the last few months. One of his essays is about the nature of inventory management for producers of software. (The essay is titled [“Software Inventory.”][])

Software inventory? you ask. What, there’s bits lying around the floors of cubicles?

Okay, bits don’t lie around floors, and they don’t cost anything to store on your hard drive, but storing them on your hard drive and not actually sending them off to your customers does cost you something, and that’s Spolsky’s point. The same is true for other content creators: that idea for an essay or article you have lying around doesn’t do you any good if it’s not under consideration at a journal and/or getting published somewhere.

Scholars have a more difficult time with making this particular metaphor work fully: unlike scientists and software producers, our products are far less iterable — in the sense that software can undergo multiple releases and/or updates and scientists often produce multiple reports out of the same research project. Scholars in the humanities often have to let one essay or book be their single output for a given project — the market isn’t necessarily keen on having multiple outputs on the same topic. One person who divided up his outputs successfully, both for himself and for the market, is Henry Glassie. His work in Ireland resulted in four distinct publications, each of which stands on its own and does not duplicate the other works in a way that the market rejects: _All Silver and No Brass_ (1975), _Irish Folk History_ (1982), _Passing the Time in Ballymenone_ (1982), and _Irish Folktales_ (1985) — and this list does not include his later revisitation of all this work in _The Stars of Ballymenone_ (2006).

Another way of saying this is that Glassie, it seems like I am always concluding this, got it early in his career and has consistently stayed ahead of the changing academic scene.

Getting back to Spolsky, he compares software production to the factory floor in the following way:

> Think of product ideas as the raw material. Depending on your process, product ideas may go through several assembly line points before they are delivered as finished features to the customer:
> 1. a decision-making process (should we implement this feature?)
> 2. a design process (specs, whiteboards, mockups, etc)
> 3. an implementation process (writing code)
> 4. a testing process (finding bugs)
> 5. a debugging process (fixing bugs)
> 6. a deployment process (sending code to customers, putting it on web server, etc)

Fortunately, scholars tend not to work in teams, and so we don’t face the kind of delays, aka choke points, that others do when trying to steer an idea through the process that leads from conception to publication. Unfortunately, we do not work in teams, which means we do not have others to poke us when we are ourselves the delay and/or choke point in the process. You win some; you lose some, even when you work alone. Or, maybe especially when you work alone.

We could transform the list above into one for academics, and that might be worth doing at some point, but I think Spolsky’s larger point is really the one worth dwelling upon here: “In between each of these stages, inventory can pile up.” Every scholar knows this, I bet. Almost everyone I know has folders, paper or electronic, full of stuff that might make for a future course offering or publication. Some, like me, are intellectual handymen / packrats, who find a myriad of topics interesting and sense a larger synthesis is possible … if only they had the time.

Well, let’s face it, that time rarely comes — if you work at an institution that has a reasonable (any kind of) framework for sabbaticals and/or course releases, then this probably doesn’t apply to you, or it applies to a lesser degree. And so you need to find some way to just get stuff out and move on. Spolsky’s response was to develop [Trello][], which is a card-based task management system for individuals and groups that allows you to see the clutter which you attract by making you confront the number of cards you deal yourself and others.

His original idea for Trello was, he notes, something he wanted to call *Five Things*: “It was going to be a project manager where everybody was allowed to have five things assigned to them: two things they were actively doing, one thing that was “up next”, and a couple more that they were planning.” That’s a nice division of things. How would I apply it to my own research? Like this:

* ACTIVE 1: drafting paper for ISCLR conference
* ACTIVE 2: writing new sections for boat book
* UP NEXT: revising older sections of boat book
* PLANNING 1: book on “everything is not a story”
* PLANNING 2: second essay on AFS intellectual history with Jonathan Goodwin

Two things are about the boat book, and I’m okay with that, given how much the deadline looms in my life, and, just as importantly, it reveals my own recent willingness to hack off intellectual projects for which I had no time.

There’s a host of projects that I would like to address, but I think it’s time to let them go. Lean and mean, indeed. I don’t think I will ever be the disciplined thinker and writer that others are, but I think it’s time to get more discipline. I sense some real possibilities here. (I have to agree with my wife that even two books probably won’t be enough to get us out of our current situation, given the overall job market, but we can’t know that until we both get there. There’s always hope!)

[“Strategy Letter V”]:
[“Software Inventory.”]:

Pro Photographer’s Workflow

Chase Jarvis is the author of the popular Best Camera blog and book. (His argument is/was the best camera is the one you have with you, and so the book is a collection of photographs taken with his iPhone camera. The subtext is that one should focus on such abilities as composition, lighting, and framing rather than worry about the gear/gadgets in your hand.)

Also on his website is a nice video that details his workflow. Jarvis is a professional photographer with not only a serious staff who accompany him everywhere but also a pretty serious collection of gear. Essentially, he runs all his images and video through Aperture and onto hard drives — Adobe, are you paying attention? Video! — the hard drives escalate from portable drives in the field, to small RAID drives in hotel rooms, to a serious XServe set up back at his office/studio.

The takeaway here? Backup, backup, backup. And an important corollary is many, many copies in diverse locations. (Offsite, offsite, offsite.)

A tidbit within all this is the file naming convention they use:




Formatting and Outputs

I do much of my non-scholarly writing in a text editor, but I still need to share what I do with others. Preferably pretty. I like to keep my options open on how to move out of MultiMarkdown into a styled output:

  • XSL:FO stands for Extensible Stylesheet Language Formatting Objects. Update: The link to the W3Schools no longer works and the good people at Who Is Hosting This offer their own materials as a suitable substitute.
  • DITA is an XML architecture for designing, writing, managing, and publishing information.

There is, of course, also presentation versions, like Eric Meyer’s S5 format, which has since been extended. For a more general overview, see the Wikipedia article on S5 I’m curious about the latter, because as this sample code reveals:

<div class="slide">
 <h1>slide title</h1>
   <li>the first point</li>
   <li>the second point</li>
   <li>the third point</li>
 <div class="handout">
  ... additional material that appears
     on the handout

The S5 format is unfortunately oriented toward the standard slide layout.