My scientific writing workflow

I am not fond of MS-Word. Correction: I cannot really tolerate MS-Word, and the only times I really use it are for work, where documents must be shared, modified, commented upon, and tracked for changes between multiple authors, contributors and edit cycles. For those particular circumstances there really isn’t another viable alternative to MS-Word, is there.

But of course, the criteria for my own scientific writing are very different. The only sharing and discussion is with my dissertation adviser, and I can easily handle one other contributor without needing MS-Word. So, of course, I’ve moved as far away from that bloated, cranky piece of software as I can—which is to say, completely away.

Instead, here’s what I use.

My word processor of choice on the Mac is Mellel. It’s beautiful, runs smoothly, and is a joy to use. Its listed feature set is vastly inferior to that of Word, but the features it does carry are executed extremely well. After all, what use are a plethora of features that really make the program bloated and difficult to use? (Please, go read that article; it’s cathartic for frustrated Word-users.) Plus, these features are more than sufficient to meet my needs (and, I think, that of most other scientic writers). I have not felt the need—yet—to incorporate the math rendering excellence of LaTeX, and for all other purposes, Mellel works great.

Mellel in Full-screen mode

Mellel in Full-screen mode.

But here’s the thing. I don’t like writing in word processors. Even in great ones such as Mellel, you’re distracted every once in a while by the formatting, and how the headings are looking, and whether a paragraph should flow on to the next page, and so on. Plus, I’ve developed a universal distaste for proprietary document formats, and this extends as much to Mellel’s proprietary format as to Word’s. I’d like to read and make sense of my documents irrespective of which software I happen to have available for use.

For another thing, I’ve really taken to John Gruber’s simple text document markup format, Markdown, and since discovering it have started using it for almost everything I write—including blog posts like this one. Well, it turns out, there are a number of extensions to Markdown, among which Fletcher Penney’s Multimarkdown must take pride of place. And what do you know—Multimarkdown even has provisions for including references, cross-references and footnotes! How much more perfect can it get!

A related app that has quickly become indispensable for me is Marked. This nifty tool shows a ‘preview’ of what your markdown (or multimarkdown) document looks like, and directly provides output documents in various formats, including PDF, RTF and HTML. This is excellent for quickly creating an RTF document to send to my adviser for review.

Marked preview of this blog post

Marked preview of this blog post.

If you’ve been keeping count, the only piece of software necessary for scientific writing that I haven’t mentioned is a citation/bibliography tool. Endnote is a popular choice for many, and I’m sure it’s pretty good, but there’s a couple other excellent Mac apps for this–Bookends and Sente. Based on online reviews and forums, I ended up selecting Bookends a few years ago, and I haven’t regretted the decision. As a bonus, Bookends integrates perfectly with Mellel, making life very easy indeed. (I noticed while writing this post that Sente’s pricing terms seem to have changed quite a bit since I was researching it, and for all I’d heard, Sente is excellent too.)

There’s another Mac writing tool that’s great for writing long documents, especially where the document is divided into chapters and sections. This is Scrivener. Plus, the basic document format for Scrivener is plain text, which straightaway satisfies my wariness for proprietary formats. Scrivener is also excellent, and would have suited my type of scientific writing perfectly, except for one solitary reason. It doesn’t play well with Bookends. To use Bookends, you have to export your document to an RTF file, and then use Bookends. This means you’re once again left with an extra step of having to include formatting. Not good for me, and Mellel wins. (Scrivener, on the other hand, is the only app in my list that is also available for Windows. If you’re a Windows user, this is an excellent app that you should certainly explore.)

So now that we’ve identified the pieces of software that I use, here’s my workflow.

  • Choose any text-editor (Sublime Text, BBEdit, Text Wrangler, or even the ever worthy, simple TextEdit), and write the actual text in Multimarkdown format. Include citations as required; for the ‘citation’ portion, use any label of your choice, and for the ‘link’ portion, include the identifier string from Bookends that you must use to finally automatically create the bibliography. This way, when I use Marked to export to RTF, my citations are already automatically shown as citations, even though I haven’t done anything with Bookends yet. The bibliography section at the end looks funky, but that’s not a problem with documents in progress.
  • When ready, export the document as RTF, and copy-paste the entire contents into a new Mellel document.
  • For each citation, replace the custom label I had chosen with the Bookends identifier. This is a simple matter of doing a ‘Find-Replace-All’ for each citation.
  • Use Bookends to add the bibliography!

Here are the advantages to this scheme:

  • No use of MS-Word, but you’re able to export to RTF or .doc format, if needed, from Mellel.
  • You’re always able to deal with plain text for all your documents, up until the very last stage where page-setting must come into the picture.
  • Even for a document in progress, it takes only a moment to create a perfectly readable document, via Multimarkdown, that includes inline citations instead of the ugly Bookends identifier.

If you don’t care about using plain text formats, or are simply not comfortable or don’t want to get used to Markdown, just replace MS-Word with Mellel. You can still do all your document writing in a word processor, just like in Word, and you’ll quickly find that it’s way more efficient to use Mellel. You’ll love it—guaranteed.


The problem facing scientist writers

I was lamenting on the scarcity of engineering blogs, even though there are a plethora of excellent science and other technical blogs on the internet.

That got me thinking about why relatively so few scientists in general, and engineers in particular, write and publish on the web. Here’s the problem, I think–

  • We never receive any proper writing training throughout our careers.

    We learn the other stuff, all the theories and how they work and so on, and even how to publish our work in peer-reviewed journals, but rarely how to competently and forcefully express ourselves and communicate with the world at large. That’s a problem, isn’t it? After all, a scientist is as much a writer as anyone else—what use is my earth shattering research if I can’t explain it to everyone else?

    And no, ‘math does the talking’ is no excuse. Math isn’t for everyone, and it’s very useful to be able to communicate ideas outside of mathematical jargon. Even a brief “Here’s an idea. Now if you really want to know, go learn the math!” is extremely valuable.

    Here’s an example, via an article at Project Wordsworth: the Japanese mathematician Shinichi Mochizuki posted four papers on the internet, purporting to prove the ever-enigmatic ABC conjecture. The only problem? No one understands his work:

    The question which quickly bubbled to the top of the forum, encouraged by the community’s “upvotes,” was simple: “Can someone briefly explain the philosophy behind his work and comment on why it might be expected to shed light on questions like the ABC conjecture?” asked Andy Putman, assistant professor at Rice University. Or, in plainer words: I don’t get it. Does anyone?

    Oops! (And remember, we’re talking about the mathematics community here, not the lay public.) Dr. Mochizuki was invited to give lectures on his work, to explain and educate. He refused.

    Of course, his peers are irked:

    “You don’t get to say you’ve proved something if you haven’t explained it,” [former math professor Cathy O’Neil] says. “A proof is a social construct. If the community doesn’t understand it, you haven’t done your job.”

    If you can’t communicate, are you really a great researcher?

    Mochizuki has reported all this progress for years, but where is he going? This “inter-universal geometer,” this possible genius, may have found the key that would redefine number theory as we know it. He has, perhaps, charted a new path into the dark unknown of mathematics. But for now, his footsteps are untraceable. Wherever he is going, he seems to be travelling alone.

    This is, of course, an extreme case, but I think the larger point holds too—that engineers/scientists should be able to competently express themselves and communicate with the larger community, and not only in journal articles.

  • We are not trained to be truly internet-savvy.

    I don’t mean this in terms of knowing how to navigate the internet and check email and visit websites and perform Google searches. I mean this in a larger sense—in knowing (and being comfortable with) how to create and maintain blogs, in managing our internet personas and profiles, in creating and designing websites.

    There are ample tools and resources out there, and we don’t all need to be trained in computer science to thrive—but we often rarely know how and where to begin. Some take the time to teach themselves, but what of those of us whose knack is not in internet technologies? We really do need to do more to expose ourselves more to internet publishing.

    We personally and professionally know of many scientists and researchers who are truly great teachers and communicators—but how many of these brilliant people are writing and publishing on the internet for the community at large?

If you’re an engineer or a scientist, and are a good communicator, please do consider writing and publishing on the internet! The rest of us will be the richer in experience for it. :)


Where are the engineers’ blogs?

I wish there were more people writing about engineering mechanics research. It’s certainly a fascinating area, and while perhaps they wouldn’t be as popular as the tech-media blogs, or the awesome science blogs that everyone can identify with, they’d still be pretty good, right?

I really like and follow Dr. Drang, who seems to occupy the perfect niche—mechanical engineering and computer programming. And through Dr. Drang I’ve recently discovered the blog of J. Ben Deaton, but haven’t had the chancce to explore in detail yet. (BTW, Deaton’s site is also powered by Octopress, with the default Octopress theme that I mentioned.) Then there’s Engineering is Awesome, which is also excellent.

But other than that, I don’t know of any engineering or mechanics blogs. There may be some great ones that don’t show up in Google searches—if you know of one, would you let me know? :)

There are quite a few science blogs though (example, example), and they are excellent and fascinating. But where are the engineers? Are engineers really that boring compared to other scientists? :)


Using Markdown by John Gruber

I’ve recently discovered Markdown by John Gruber, and it’s a nifty (and absolutely awesome) writing tool. If you prefer (like I do) doing the bulk of your writing in a text editor—rather than a word processor—Markdown is quite incredible.

And if you do all your writing in a word processor, try this out, seriously. Write everything up in a text file, without bothering about fonts or styles or page margins, and then import the document into your favorite word processor for styling. Personally, it’s less distracting, and more productive.

Just so you know—this post is written in Markdown, and then uploaded as HTML.

What Markdown is, is essentially a new ‘markup’ syntax (notice the irony in the name?). For example, HTML is a markup language—you do all your writing in a text file, and then you tag the text to give it different effect. HTML has different tags for linking, adding text effects, and a bunch of other things. Do you use (or have heard of) LaTeX? That’s another markup language: you do all your writing in a text file and then add tags to style the document.

The difference in case of Markdown is this: the tags it uses are all punctuation marks and symbols that we normally use anyway, for example in email. How would you show emphasis in a chat message? By using *, like this: *emphasis*. In Markdown you’d use the exact same syntax. It makes your text readable in addition to having all the markup included.

The only problem with writing all your text in a text file is, you have to go back into your word processor and actually add the styling—for example, the headings must be bold and a larger font, and you have to add the styling for subscripts and superscripts. With Markdown, all that is already done in the text file itself!

The natural export from Markdown is HTML (it’s tailored for web writing), but it’s elementary to import the HTML styled text into a word processor. And until you actually do that, you still have a text file that perfectly readable! (In addition, I think there are scripts available that do a direct conversion from Markdown text to MS-Word format. There’s also the [Dingus page][linkdingus] at Daring Fireball) to see your Markdown handiwork.

Excellent creation, John Gruber. I’ve been a fan of your tech-writing for a while now; now I also know why Markdown is so popular.