Saturday, March 20, 2010

One computer, three operating systems

While so far I have been quite happy with my new MacBook Pro, running Mac OS X 10.6 (Snow Leopard), I still feel more comfortable with the Ubuntu Linux programming environment I have been using for the past few years. Moreover, to make sure that my software (e.g., 3DNA) is strictly ANSI C compliant, and compiles without changes on the most commonly used operating systems (OSes), I need to have direct access to Linux and Windows. Luckily, the Intel-based hardware architecture of MacBook Pro and the free VirtualBox software make it possible to have the three OSes – Mac OS X, Ubuntu Linux, and Windows – in one computer.

Installing VirtualBox on Mac OS X was a snap. Specifically, I added the following two guest OSes:
  1. Windows XP, with 1 GB RAM and 70 GB (virtual) hard disk
  2. Ubuntu 9.10, with 2 GB RAM and 90 GM disk space
For seamless integration between each of the two guest OSes and the host Mac OS X, and for improved performance, I also created shared folders and installed guest additions for Windows and Linux. For Windows XP, the process had been quite straight forward. For Linux guest addition, however, I had some problems and solved them by following the instructions on "How To Install VirtualBox Guest Additions in Linux".

Now in Fullscreen Mode (command-F), I can run Ubuntu Linux or Windows XP as if it is native for each. Very cool!

Saturday, March 13, 2010

Hoogsteen base-pair

The A·U (or A·T) Hoogsteen pair is a well-known base pair (bp), named after the scientist who discovered it. As shown in the Figure below (left), in the Hoogsteen bp scheme, adenine uses its N7 and N6 atoms (at the major groove edge) to form two H-bonds with the N3 and O4 atoms from uracil, respectively. Interestingly, if the uracil base ring is flipped around the N7(A)…N3(U) H-bond by 180 degrees, N6(A) can also form an H-bond with O2(U), i.e., N6(A)…O2(U): this pairing scheme is called the reverse Hoogsteen bp (right).


I first came to know about the Hoogsteen bp from Saenger's book ("Principles of Nucleic Acid Structure"). Over the years, I have read many articles mentioning the Hoogsteen bp and touched this topic myself in the 2003 3DNA NAR publication. However, I have never read Hoogsteen's two original publications on this topic until recently:
  1. The two-page long preliminary report, titled "The structure of crystals containing a hydrogen-bonded complex of 1-methylthymine and 9-methyladenine", was published in Acta Cryst. (1959). 12, 822-3. The paper contained only a single reference to the Watson-Crick DNA structure paper, published in Nature in 1953. I found it very revealing to understand why Hoogsteen used the methyl-ed derivatives of thymine and adenine, and how the failed initial interpretation of the experimental "vector-density map" using the Watson-Crick A-T bp led to the discovery of the new base-pairing scheme:
    The fact that the first trial structure could not be refined led to a more critical scrutiny of the generalized projection and a greater emphasis on the significance of certain spurious peaks and on relatively large variations in the heights of peaks that were assumed to represent atoms. The correct structure was finally discovered by changing the positions of a few atoms in the 9-methyladenine portion of the asymmetric unit.
  2. The more extensive account of the Hoogsteen bp story, titled "The Crystal and Molecular Structure of a Hydrogen-Bonded Complex Between 1-Methylthymine and 9-Methyladenine", published in Acta Cryst. (1963) 16, 907-16.
I like these two papers, and more generally those focused-articles, where authors get directly to a point and addressed it thoroughly and clearly. Most publications nowadays are very ambitious, trying to solve "big problems": the papers are generally far more complicated and often have "reproducibility" problems.

As a side note, the term Hoogsteen "edge" appears quite frequently in today's publications of RNA structures: in the Leontis-Westhof bp classification scheme, the term simply means the major groove edge in what would be a Watson-Crick bp geometry.

Saturday, March 6, 2010

MacMost, a valuable resource to help you get the most of your Mac OS X

Upon receiving my new Mac OS X Snow Leopard, I googled around, trying to find some tutorials on the web. Somehow, I came across a video clip by Gary Rosenzweig. I then visited MacMost.com and watched more video clips over there during the past week.

Overall, I like the videos quite a bit: ~5 minutes long each, these podcasts show various Mac-related tips and tricks in an easy to follow fashion. Specifically, I like the following:
  • #347: "Quick Look" – a functionality of looking at the contents of a file without opening it. "Quick Look" seems to be unique to Mac OS X since I am not familiar with it in Linux and Windows. So far, I have found it especially handy in Mail for quickly checking contents of attachments.
  • #357: "Do Macs Need Anti-Virus Software?" – it is assuring to know that "There are currently no active Mac viruses", and helpful to be aware that "anti-virus software could cause unexpected problems."
  • #363: "Learning to Program with Scratch" – it is from this video clip that I came to know the Scratch programming language from the MIT Media Lab. Unlike professional computer languages such as C, C++, Java, Ruby, Perl etc, Scratch targets the general public, especially for kids to learn mathematical and computational ideas by programing using a simple drag-and-drop interface. Using Scratch, it is really easy and cool create interactive stories and animations, and to share them on the web.
I will certainly keep visiting back MacMost.com and watch more videos as they become available. Little by little, I will learn new tricks to make my Mac life more enjoyable.

Friday, February 26, 2010

Mac OS X Snow Leopard -- I'm loving it (mostly)!

Recently, when it was time for a new laptop, I decided to buy a MacBook Pro (Intel-based with Mac OS X 10.6.2 -- Snow Leopard). Over the past few days, I have been playing around with it, migrating files from my Ubuntu Linux box. So far, things have gone through smoothly, thus by and large, I am enjoying my new Mac.

Over the years, I have been using Ubuntu Linux and I have been very happy with it, especially for software development. Lyx and OpenOffice are handy for writing technical documents. However, I have realized that when it comes to write a manuscript for publication, and to communicate effectively with non-Linux collaborators, MS Word (with EndNote) is the standard. So I set up a Windows XP virtual machine via VirtualBox on my Ubuntu Linux box, which avoids the problem of dual booting and allows for easy file sharing between Linux and Windows.

Mac OS X is Unix/Linux based but has native support for MS Office and Adobe Suite of programs, so it seems an ideal choice for a new laptop. Mac OS X 10.6 (Snow Leopard) is claimed to be "The world's most advanced operating system. Finely tuned." Other things aside, I do appreciate the fact that 10.6 (Snow Leopard) is a refinement of 10.5 (Leopard) from installation to shutdown -- "In ways big and small, Mac OS X Snow Leopard makes your Mac faster, more reliable, and easier to use."

So far, I have configured Mail to access my Columbia emails. I must say that Mail is way better than Columbia's CubMail web-interface, and I like Mail's native integration with iCal and Address Book. Safari still needs some getting used to, from my mostly Firefox experience. However, it is nice to find that some websites, which does not work in Firefox but IE, display properly with Safari. Preview appears to be powerful for PDF and image viewing and manipulations. I have installed Xcode, and may explore it more, if nothing but to see what an IDE has to offer. Of course, it is nice to have direct access to MS Office (mostly for Word and PowerPoint, so no need to play around with OpenOffice), EndNote, Adobe (Acrobat, Photoshop, Illustrator), etc.

Some nuisances up to this point:
  • Keyboard missing numeric keypad and Home/End/PgUp/PgDn
  • Ctrl-C/V etc keyboard shortcuts I am used to now become Command-C/V etc
  • File and directory names are not case-sensitive -- most surprising!
Overall, my new MacBook Pro is a very nice toy to play. As I become more familiar with it, I may like it more, hopefully.

Saturday, February 6, 2010

NSMB editorial: "Scientific writing 101"

In the February 2010 issue of Nature Structural & Molecular Biology [NSMB, 17(2), p.139], there is a nice Editorial titled "Scientific writing 101". This short one-page essay is a good example of a (scientific) writing that is "a pleasures of reading".
"Less is more when it comes to writing a good scientific paper. Tell a story in clear, simple language and keep in mind the importance of the ‘big picture’."
Specifically, the editorial makes the following points:
  • Tell a story. A scientific paper is not a chronology; the data should be presented and interpreted in context.
  • Be clear. "Clear, simple language allows the data and their interpretation to come through."
  • Provide an informative title and abstract. "Make the abstract clear and try to get the ‘big picture’ across."
  • Make the introduction short and concise.
  • Clearly distinguish Results from Discussion. "Discussion should put those results in a broader context." It "should be an interpretation of those results..."
  • Cover letter is important. You should spell check your manuscript, and number the pages, etc.
In this blog post, I am just recapping the key points of the editorial, and taking the opportunity to re-read it. Following the simple principles outlined in the editorial would be beneficial to everyone in the scientific community.

Saturday, January 30, 2010

Chinese new year greeting card

Recently, I received the following nice new year greeting card from Dr. Pascal Auffinger (IBMC-CNRS, France). While never meeting each other in person, we have communicated via numerous emails: over the years, we have discussed extensively on 3DNA-related topics, and on nucleic acid structures in general. Pascal is one of my respected scientists, and his greeting card makes my support of 3DNA so gratifying.

Somehow, the picture reminds me Mountain Tai I climbed while at college, and the famous poem "会当凌绝顶,一览众山小".


According to the Chinese Zodiac, the Year of 2010 is the Year of Tiger (Feb. 14, 2010 to Feb. 2, 2011). Interestingly, this Chinese New Year's day coincides with Valentine's Day, and it is on Sunday.

Saturday, January 23, 2010

Chemical diagram of Watson-Crick base-pairs

Once in awhile, I need to refresh my memory about the chemical identities of the most common nucleobases: A, C, G, T/U. Sometimes, it is also necessary to explain to non-(bio)chemists about the concept of H-bond donor vs acceptor, and the major- vs minor-groove of the DNA double helix. In such cases, I use the following (customized) chemical diagram of Waton-Crick base-pairs (WC-bp):


Before taking the effort to create my own version of the Waton-Crick base-pair diagram, I googled around and found many illustrations (like the one in wikipedia). However, none of them suits my needs perfectly:
  • Trained as a chemist, I would like to see chemical bond types (double vs. single bond);
  • Working extensively with PDB format, I want to have the atom numbering information as well.
So I ended up to (re)create my own version of the WC-bp diagram: I used Chemtool to sketch the framework, and Xfig to fine-tune it. Overall, the diagram serves my purpose quite well, and hopefully others would find it useful as well.

Thursday, January 7, 2010

Requests for SCHNAaP/SCHNArP source code

Recently, I received several requests for the source code of the SCHNAaP/SCHNArP, a software package for the analysis and rebuilding of double helical nucleic acid structures. This suite of programs was developed ten years ago during my PhD work on DNA base-stacking interactions with Dr. Chris Hunter at the University of Sheffield, England.

Users become interested in SCHNAaP/SCHNArP mostly because of 3DNA, which can be taken as its superseded, more popular version. Due to Rutgers' policy of not releasing the source code of 3DNA, users who would like to understand details of the underlying algorithms thus turn back to SCHNAaP/SCHNArP. The interface is a bit aged, but the mathematics is still valid: it could serves well as a start point for those who really want to get into the world of nucleic acid structures.

Overall, though, I have a mixed feeling in this situation. On one hand, I am happy to see people becoming interested in my (previous) work. On the other hand, however, it also becomes clear that Rutgers' current licensing policy has blocked 3DNA's further circulation and adoption by the scientific community. Given the current trend of open-source software development, I see no reason to continue keeping 3DNA closed source. Making 3DNA open source (under a proper license term, of course) would allow for interested users to get more directly involved in the project, and thus to move the software to the next level.

Saturday, December 19, 2009

ORCID -- an international research identification system?

From the Nature news article titled "Credit where credit is due" in (462:7275, p. 825 on December 17, 2009), I came cross the ORCID initiative:
Name ambiguity and attribution are persistent, critical problems imbedded in the scholarly research ecosystem. The ORCID Initiative represents a community effort to establish an open, independent registry that is adopted and embraced as the industry’s de facto standard. Our mission is to resolve the systemic name ambiguity, by means of assigning unique identifiers linkable to an individual's research output, to enhance the scientific discovery process and improve the efficiency of funding and collaboration.
Overall, I think it is a good idea. If properly implemented and widely adopted, ORCID could help solve lots of issues associated with various ways of spelling a person's name due to, e.g., cultural differences. For example, put Chinese way, one's family name comes before one's given name, just the opposite of the western convention. Additionally, when a given name has two characters (quite common), there are could be a space or a hyphen (as I normally put in Xiang-Jun) or nothing in between. Combined with possible first name initials, there are already many ways to spell out a Chinese name.

The above Nature article, “Credit Where Credit is Due”, helps introduce the ORCID Initiative. As an specific example, it points to another article on page 843, where Nature profiles a research group trying to "complete the reference human genome sequence, which is still full of errors nearly a decade after the first draft was announced in 2000." Nature acknowledges that "It is essential work", "But it is also work that offers few academic rewards beyond the satisfaction of a job well done — it is unlikely to result in a high profile publication." Hopefully, by adopting the ORCID system, contributions of such types (e.g., software support and maintenance) would be more properly acknowledged by the scientific community.

Given the high profile of the founding parties, I am hopeful that the ORCID initiative would move forward as promised. I will keep an eye on it and see how it evolves.