The SVN Model of Scientific Writing

It has been far too long since I actually coded something, and I miss it.  I actually enjoy creating software.  It’s part puzzle-solving, part artistic expression.  I have, however, been advancing my Ph.D. research.  So, in an attempt to justify my lack of software, I thought of a way to think of my research in terms of software development.

All it is is a simple epiphany.  Advancing research is like software development.  Instead of committing code, you write a research paper.  And thus, the SVN Model of Scientific Writing was born (in my head).  For the uninformed, SVN (short for Apache Subversion) is a software version control system, a tool that facilitates the storage of software (in truth, any text file) for purposes of archival, retrieval, and distributed development.  I admit that, without understanding SVN, this post becomes tedious to go through.  Especially, since I want to (generally) keep my posts brief.

The SVN Model of Scientific Writing is simple:  each of the SVN commands has an interpretation in research.  Like the real SVN, there is an appropriate use of the rSVN commands (commands for the research-SVN system).  The rSVN commands are syntactically equivalent to SVN commands, and we will discuss some of the most basic commands in the sections that follow.

rsvn checkout

This command is used to pull a research trunk relevant to your research onto your local research.  Usually, this means finding a foundational paper or series of papers relevant to your field.  If you are into AI (as IA ((get it?)) ), you are in luck because there exists a website that contains a Reading List for the Qualifying Examination in Artificial Intelligence at Stanford (It’s from ’96, but the list is still very useful).

You should only need to do this once.  But research is full of fun moments like existential life crises, and discovering really cool applications completely outside of your field, so you may need to execute rsvn checkout several times.

Also, you may need to do this both for the general field and for your depth area.

rsvn update

When you are done checking out the foundational paper / series of papers, you will probably execute rsvn update, in an attempt to find work which has progressed from that starting point.  This is where the wonderful tool Google Scholar comes in.  Type in the foundational paper’s name in Google Scholar, and click on the “Cited by…” link to begin your rsvn update.

Image

rsvn add

When you have progressed in your research, you execute this command by submitting a paper for publication.  You normally won’t add incomplete works in the svn, and the same goes for rsvn.  Execute this command when you have completed a measurable quanta of research work.

rsvn commit

Like most development environments, to earn the right to commit the file, you must demonstrate that the work is as bug free as possible and that it accomplishes a specific measurable task.  This is where peer-review comes in.  If the peer-review process comes back with a favorable result, then you will execute rsvn commit by submitting the camera-ready copy of your paper.

 

Those are some of the basic commands you will execute.  The number of svn commands is (currently) much greater than the number of rsvn commands.  I am, however, interested in seeing more mappings for some of the other svn commands, and I may come back to revise this list as those mappings become clear.

A Map of the Music Spectrum

About one year ago, I interned at Apple.  This post isn’t about my internship experience, although that might make an interesting post.  It’s about one simple interaction I had with a (then) co-worker.

I was in the ever-present awkward phase of the internship where you are getting to know your co-workers.  You know, the phase where you try to act as normal as possible so as to not create awkward situations that would lead you to be ostracized for the subsequent 3 months of the internship.

In one of my exchanges, a co-worker asked me:  “what kind of music do you like?”  Without thinking, I blurted “I’m pretty versatile.  From classical rock to electronica, I can listen to pretty much anything.”

…wait, what?

I must have repeated that phrase in my head at least 4 times after I said it.  In my head, I somehow created a spectrum that started at classical rock and ended at electronica.  The phrase I uttered is content-less, since it really depends on the person interpreting it for it to make any sense.  For example, what exactly lies at the half-way point of this spectrum?  I bet that you’ll get a different answer depending on who you ask.

However, as silly as it sounded back then, I can’t help but think there must be something that links different genres of music together.  Alas, I am not a music theorist, so my conjectures are quite limited.  It is fun to think of, though.