A recent article on AstroBetter reviews some of the available tools for collaborative writing with an eye to writing proposals. I wanted to give my perspective on these tools since I have used all of the tools they discuss in the article: ScribTeX (as well as the similar ShareLaTeX), Google Docs, Dropbox, and version control systems, e.g., Subversion or git.

I agree with most of their strengths/weaknesses lists for the tools, although I’m not sure why they say version control systems like Subversion or git are “intolerant of simultaneous edits”. Merging is quite good in these system unless two people edit the exact same line of a file. Usually collaborators have different areas of responsibility in the document and conflicts would only occur occasionally if people are doing global actions like proof-reading the entire document at the same time. Even then, the conflicts are detected by the system and can be manually corrected by the later committer.

I favor a Subversion/git repo for doing any serious work (although I do highly recommend Dropbox for sharing/syncing files, just not for collaborative writing). I use Subversion repos for all my proposals, although I am beginning experiments with git for certain internal proposals, papers, and other writing. I used a Subversion repo for Modern IDL. It’s flexible enough to handle your writing output (not the best for a single monolithic Word file, but great for any text based system like LaTeX), while also handling other related assets like code, images, diagrams, slides, etc. well. Data is stored locally, but also backed up on a server1.

I have reservations about providing proprietary/sensitive/private data to a third-party service. Also, relying on a cloud service (especially like relative newcomers like ScribTeX and ShareLaTeX) might be disastrous if there was an outage just before a proposal deadline2.

1. Of course, the server could be your own or available from a service such as GitHub

2. Typically, I have a checkout of my proposal on several different computers near the end, just in case.

I will be at the The Westin in Pasadena, CA for the Earth Science Technology Forum (ESTF) this week, Tuesday evening to Thursday afternoon (June 21-23). I have a talk in Session A8 “Remote Data Exploration with IDL” (I’ll post slides later). Let me know if you are in the area and want to meet up!

UPDATE: Here are the slides.

The site will be down for routine maintenance this evening, July 1, around 10 pm MDT for approximately 6 hours.

Here are the most popular posts of 2009:

Only one of these was actually posted in 2009, 4 in 2006, 4 in 2008, and 1 “page”. So maybe this is like Star Trek movies, where only the even numbered years are good? Good thing we are in 2010 then!

Here are some (corny) science jokes for those who ended up working this week.

I have always been amazed at how fast a new Mac OS X update is adopted by the community, so I have been checking the statistics for visitors to this site (all statistics quoted here are for the month of September). Among Mac users, Snow Leopard has passed Leopard (it happened over a week ago, but hasn’t changed much since then):

10.6 Snow Leopard  47.0%
10.5 Leopard       44.2%
10.4 Tiger          7.3%
Other               1.5%


While looking through the stats, I thought it would be interesting to share some other information about our rather unique demographic.

I have recently finished some projects at work, so should have some time to write. Look for new articles soon.

I’m in Seattle for the rest of this week and part of next week. See you next Wednesday!

I’ll be at NASA Goddard on the evening of Feb. 13 and during the day on the 14th. Drop me a line if you want to meet up in Greenbelt.

I can’t help but point out yet another hilarious comic by the excellent xkcd. So is there an IDL mode for butterflies?

older posts »

• #### GPULib

GPULib enables IDL developers to access the high-performance capabilities of modern NVIDIA graphics cards without knowledge of CUDA programming.

TaskDL is a task-farming solution for IDL designed for problems with loosely-coupled, parallel applications where no communication between nodes of a cluster is required.

#### mpiDL

mpiDL is a library of IDL bindings for Message Passing Interface (MPI) used for tightly-coupled parallel applications.

#### Remote Data Toolkit

The Remote Data Toolkit is a library of IDL routines allowing for easy access to various scientific data in formats such as OPeNDAP, HDF 5, and netCDF.

• #### Modern IDL

Modern IDL offers IDL programmers one place to look, for beginners and advanced users alike. This book also contains: a thorough tutorial on the core topics of IDL; a comprehensive introduction to the object graphics system; common problems and gotchas with many examples; advanced topics not normally found are discussed throughout the book: regular expressions, object graphics, advanced widget programming, performance, object-oriented programming, etc.

• #### IDLdoc

IDLdoc is an open source utility for generating documentation from IDL source code and specially formatted comments.

#### mgunit

mgunit is an open source unit testing framework for IDL.

#### rIDL

rIDL is an open source IDL command line replacement.

#### mglib

mglib is an open source library of IDL routines in areas of visualization, application development, command line utilities, analysis, data access, etc.