<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" gd:etag="W/&quot;C0cBQHY_fSp7ImA9WxNUFEg.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482</id><updated>2009-11-05T11:57:31.845-08:00</updated><title>Noel O'Blog</title><subtitle type="html" /><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/" /><link rel="hub" href="http://pubsubhubbub.appspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>153</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><link rel="self" href="http://feeds.feedburner.com/baoilleach" type="application/atom+xml" /><feedburner:emailServiceId xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">baoilleach</feedburner:emailServiceId><feedburner:feedburnerHostname xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://feedburner.google.com</feedburner:feedburnerHostname><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><entry gd:etag="W/&quot;A0QBRnszeCp7ImA9WxNUFE4.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-1070152191900942808</id><published>2009-11-05T06:48:00.000-08:00</published><updated>2009-11-05T08:42:37.580-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-05T08:42:37.580-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="cinfony" /><title>Introducing Webel - A cheminformatics toolkit built solely on webservices</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_x5Hz3F0jd4Q/SvLmZhP9EJI/AAAAAAAABAo/BCuk8JGt4mw/s1600-h/aspirin.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 148px; height: 144px;" src="http://4.bp.blogspot.com/_x5Hz3F0jd4Q/SvLmZhP9EJI/AAAAAAAABAo/BCuk8JGt4mw/s400/aspirin.png" alt="" id="BLOGGER_PHOTO_ID_5400632229267050642" border="0" /&gt;&lt;/a&gt;I'd like to introduce a new Cinfony module, &lt;b&gt;Webel&lt;/b&gt;. Like the other components of &lt;a href="http://cinfony.googlecode.com/"&gt;Cinfony&lt;/a&gt;, Webel implements a standard API (see for example, the &lt;a href="http://www.redbrick.dcu.ie/%7Enoel/cinfony/cinfony.pybel-module.html"&gt;Pybel API&lt;/a&gt;) that covers a large proportion of common cheminformatics operations including reading/writing SMILES strings and InChIs, calculation of molecular weight and formula, molecular fingerprints, SMARTS searching, and descriptor calculation.&lt;br /&gt;&lt;br /&gt;However, unlike the other components, Webel runs entirely off web services. All cheminformatics analysis is carried out using Rajarshi's &lt;a href="http://rest.rguha.net/"&gt;REST services&lt;/a&gt; (which use the &lt;a href="http://cdk.sf.net"&gt;CDK&lt;/a&gt; and are hosted at Uppsala) and the NIH's &lt;a href="http://cactus.nci.nih.gov/chemical/structure"&gt;Chemical Identifier Resolver&lt;/a&gt; (which uses &lt;a href="http://xemistry.com/"&gt;Cactvs&lt;/a&gt; for much of its backend).&lt;br /&gt;&lt;br /&gt;To use Webel, all you need to do is download &lt;a href="http://cinfony.googlecode.com/svn/trunk/cinfony/webel.py"&gt;webel.py&lt;/a&gt;, and type "import webel" at a Python prompt (see example code below - it's basically the same as using Pybel if you're familiar with that).&lt;br /&gt;&lt;br /&gt;So what are the advantages of running off webservices? First, as should be clear, there is the ease of installation. This means that Webel could easily be bundled in with some other software to provide some useful functionality. Second, Webel can still be used in environments where installation of a cheminformatics toolkit is simply not possible (&lt;i&gt;more on this next week!&lt;/i&gt;). Third, webservices may provide additional functionality not available elsewhere (e.g. the Chemical Resolver provides name-to-structure conversion as well as InChIKey resolution). Fourth, webservices are accessed across HTTP rather than through some type of language binding. As a result, Webel works equally well from CPython, Jython or IronPython. And finally, it's just a cool idea. :-)&lt;br /&gt;&lt;br /&gt;If you can think of any other advantages or potential applications, I'd be interested to hear them. In the meanwhile, here's some code that calculates the molecular weight of aspirin, its LogP, its InChI, gives alternate names for aspirin, and creates the PNG above:&lt;pre style="overflow: auto;"&gt;&lt;span style="font-family:monospace;"&gt;&lt;br /&gt;&lt;span style="color: rgb(160, 32, 240);"&gt;import&lt;/span&gt; webel&lt;br /&gt;&lt;br /&gt;mol = webel.readstring("&lt;span style="color: rgb(255, 0, 255);"&gt;name&lt;/span&gt;", "&lt;span style="color: rgb(255, 0, 255);"&gt;aspirin&lt;/span&gt;")&lt;br /&gt;&lt;span style="color: rgb(128, 64, 64);"&gt;&lt;b&gt;print&lt;/b&gt;&lt;/span&gt; "&lt;span style="color: rgb(255, 0, 255);"&gt;The molecular weight is %.1f&lt;/span&gt;" % mol.molwt&lt;br /&gt;&lt;span style="color: rgb(128, 64, 64);"&gt;&lt;b&gt;print&lt;/b&gt;&lt;/span&gt; "&lt;span style="color: rgb(255, 0, 255);"&gt;The InChI is %s&lt;/span&gt;" % mol.write("&lt;span style="color: rgb(255, 0, 255);"&gt;inchi&lt;/span&gt;")&lt;br /&gt;&lt;span style="color: rgb(128, 64, 64);"&gt;&lt;b&gt;print&lt;/b&gt;&lt;/span&gt; "&lt;span style="color: rgb(255, 0, 255);"&gt;LogP values are: %s&lt;/span&gt;" % mol.calcdesc(["&lt;span style="color: rgb(255, 0, 255);"&gt;ALOGPDescriptor&lt;/span&gt;"])&lt;br /&gt;&lt;span style="color: rgb(128, 64, 64);"&gt;&lt;b&gt;print&lt;/b&gt;&lt;/span&gt; "&lt;span style="color: rgb(255, 0, 255);"&gt;Aspirin is also known as: %s&lt;/span&gt;" % mol.write("&lt;span style="color: rgb(255, 0, 255);"&gt;names&lt;/span&gt;")&lt;br /&gt;mol.draw(filename="&lt;span style="color: rgb(255, 0, 255);"&gt;aspirin.png&lt;/span&gt;", show=False)&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;...which gives...&lt;pre style="overflow: auto;"&gt;C:\Tools\cinfony\trunk\cinfony&gt;python example.py&lt;br /&gt;The molecular weight is 180.2&lt;br /&gt;The InChI is InChI=1/C9H8O4/c1-6(10)13-8-5-3-2-4-7(8)9(11)12/h2-5H,1H3,(H,11,12)&lt;br /&gt;/f/h11H AuxInfo=1/1/N:5,3,4,1,2,12,6,7,11,9,8,10,13/E:(11,12)/F:5,3,4,1,2,12,6,7&lt;br /&gt;,11,9,10,8,13/rA:21CCCCCCCOOOCCOHHHHHHHH/rB:;a1;a2a3;;a1;a2a6;;;;s6d8s10;s5d9;s7&lt;br /&gt;s12;s10;s1;s2;s3;s4;s5;s5;s5;/rC:6.3301,-.56,0;4.5981,-1.56,0;6.3301,-1.56,0;5.4&lt;br /&gt;641,-2.06,0;2,-.06,0;5.4641,-.06,0;4.5981,-.56,0;4.5981,1.44,0;2.866,-1.56,0;6.3&lt;br /&gt;301,1.44,0;5.4641,.94,0;2.866,-.56,0;3.7321,-.06,0;6.3301,2.06,0;6.8671,-.25,0;4&lt;br /&gt;.0611,-1.87,0;6.8671,-1.87,0;5.4641,-2.68,0;2.31,.4769,0;1.4631,.25,0;1.69,-.596&lt;br /&gt;9,0;&lt;br /&gt;LogP values are: {'ALOGPDescriptor_ALogp2': 0.10304100000000004, 'ALOGPDescripto&lt;br /&gt;r_AMR': 18.935400000000001}&lt;br /&gt;Aspirin is also known as: ['2-Acetoxybenzoic acid', '50-78-2', '2-Acetoxybenzene&lt;br /&gt;carboxylic acid', 'Acetylsalicylate', 'Acetylsalicylic acid', 'Aspirin', ...&lt;br /&gt;'Claradin', 'Clariprin', 'Colfarit', 'Decaten', 'Dolean pH 8', ...&lt;br /&gt;'Acetylsalicylsaure [German]', 'Acide acetylsalicylique [French]', ...&lt;br /&gt;'A6810_SIGMA', 'Spectrum5_000740', 'CHEBI:15365',...]&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-1070152191900942808?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=BdcYbdCFjTw:4vXL7rS3DwQ:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=BdcYbdCFjTw:4vXL7rS3DwQ:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=BdcYbdCFjTw:4vXL7rS3DwQ:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/BdcYbdCFjTw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/1070152191900942808/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=1070152191900942808" title="4 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/1070152191900942808?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/1070152191900942808?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/11/introducing-webel-cheminformatics.html" title="Introducing Webel - A cheminformatics toolkit built solely on webservices" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_x5Hz3F0jd4Q/SvLmZhP9EJI/AAAAAAAABAo/BCuk8JGt4mw/s72-c/aspirin.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">4</thr:total></entry><entry gd:etag="W/&quot;DUQGRHk-eyp7ImA9WxNUE08.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-4953008823390590344</id><published>2009-11-04T01:06:00.000-08:00</published><updated>2009-11-04T01:35:25.753-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-04T01:35:25.753-08:00</app:edited><title>In I go with Indigo, the new open source cheminformatics toolkit</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_x5Hz3F0jd4Q/SvFKx_xxWBI/AAAAAAAABAg/MqAYC65kJUM/s1600-h/test.png"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 233px; height: 212px;" src="http://4.bp.blogspot.com/_x5Hz3F0jd4Q/SvFKx_xxWBI/AAAAAAAABAg/MqAYC65kJUM/s400/test.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5400179650988169234" /&gt;&lt;/a&gt;SciTouch LLC have just &lt;a href="http://www.mail-archive.com/blueobelisk-discuss@lists.sourceforge.net/msg00508.html"&gt;announced&lt;/a&gt; the release of a dual licensed (GPL or commercial) cheminformatics toolkit, &lt;a href="http://opensource.scitouch.net/indigo/"&gt;Indigo&lt;/a&gt;. See &lt;a href="http://depth-first.com/articles/2009/10/29/indigo-open-source-cheminformatics-for-c-and-net"&gt;Depth-First&lt;/a&gt; and &lt;a href="http://blog.rguha.net/?p=436"&gt;Rajarshi&lt;/a&gt; for some initial reactions.&lt;br /&gt;&lt;br /&gt;It's a C++ toolkit, and right now what seems to be available are several .NET wrappers that enable specific uses as well as an Oracle cartridge. Access from Python, etc. is on the to-do list, and hopefully this will also give access to the core Molecule object so that all aspects of the toolkit will be available.&lt;br /&gt;&lt;br /&gt;Charlie Zhu has already written an &lt;a href="http://blog.charliezhu.com/2009/11/02/fast-building-smiles-structure-viewer-with-dingo-and-wpf/"&gt;example application&lt;/a&gt; using C#. Rather than wait for CPython bindings, I installed &lt;a href="http://ironpython.codeplex.com/wikipage"&gt;IronPython&lt;/a&gt; and used it to access Indigo's .NET libraries (Dingo, in this case) to do a SMILES to png conversion:&lt;br /&gt;&lt;pre style="overflow:auto"&gt;C:\Tools\Indigo\dingonet-1.0-3669&gt;"C:\Program Files\IronPython 2.6\ipy.exe"&lt;br /&gt;IronPython 2.6 (2.6.10920.0) on .NET 2.0.50727.3603&lt;br /&gt;Type "help", "copyright", "credits" or "license" for more information.&lt;br /&gt;&gt;&gt;&gt; import clr&lt;br /&gt;&gt;&gt;&gt; clr.AddReference("dingonet")&lt;br /&gt;&gt;&gt;&gt; import indigo&lt;br /&gt;&gt;&gt;&gt; dir(indigo)&lt;br /&gt;['Dingo', 'DingoException']&lt;br /&gt;&gt;&gt;&gt; dingo = indigo.Dingo()&lt;br /&gt;&gt;&gt;&gt; dir(dingo)&lt;br /&gt;['Dispose', 'Equals', ......, 'getResult', 'isEmpty', 'loadMolecule', 'loadMolec&lt;br /&gt;uleFromFile', 'loadReaction', 'loadReactionFromFile', 'render', 'renderToBitmap'&lt;br /&gt;, 'renderToMetafile', 'setAAMColor', 'setBackgroundColor', 'setBondLength', 'set&lt;br /&gt;Coloring', 'setHighlightBold', 'setHighlightColor', 'setImageSize', 'setImplicit&lt;br /&gt;HydrogenMode', 'setLabelMode', 'setLoadHighlighting', 'setLogPath', 'setMarginFa&lt;br /&gt;ctor', 'setOutputFile', 'setOutputFormat', 'setOutputHDC', 'setOutputPrintingHDC&lt;br /&gt;', 'setRelativeThickness', 'setStereoOldStyle']&lt;br /&gt;&gt;&gt;&gt; dingo.loadMolecule("CC(=O)Cl")&lt;br /&gt;&gt;&gt;&gt; dingo.setOutputFile("test.png")&lt;br /&gt;&gt;&gt;&gt; dingo.setOutputFormat("png")&lt;br /&gt;&gt;&gt;&gt; dingo.render()&lt;br /&gt;&gt;&gt;&gt; ^Z&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-4953008823390590344?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=LLAO3o05_iQ:-2X0iFeAZA4:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=LLAO3o05_iQ:-2X0iFeAZA4:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=LLAO3o05_iQ:-2X0iFeAZA4:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/LLAO3o05_iQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/4953008823390590344/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=4953008823390590344" title="5 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/4953008823390590344?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/4953008823390590344?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/11/in-i-go-with-indigo-new-open-source.html" title="In I go with Indigo, the new open source cheminformatics toolkit" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_x5Hz3F0jd4Q/SvFKx_xxWBI/AAAAAAAABAg/MqAYC65kJUM/s72-c/test.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">5</thr:total></entry><entry gd:etag="W/&quot;DUIGSH88cCp7ImA9WxNVFEQ.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-8914270682801207037</id><published>2009-10-25T11:49:00.000-07:00</published><updated>2009-10-25T12:05:29.178-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-25T12:05:29.178-07:00</app:edited><title>How to correct 3D coordinates at stereocenters</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://farm1.static.flickr.com/225/497996899_dc427d5831_m.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 180px; height: 240px;" src="http://farm1.static.flickr.com/225/497996899_dc427d5831_m.jpg" border="0" alt="" /&gt;&lt;/a&gt;Given a set of 3D coordinates for a molecule, and whether the stereochemistry at particular atoms is correct or not, how would you fix any errors?&lt;br /&gt;&lt;br /&gt;This is a problem that I've been working on for the &lt;a href="http://openbabel.org/api/2.2.0/classOpenBabel_1_1OBBuilder.shtml"&gt;3D builder&lt;/a&gt; in &lt;a href="http://openbabel.org"&gt;OpenBabel&lt;/a&gt;. Given a connection table (e.g. a SMILES string), OpenBabel builds up the structure of a molecule using some basic geometric rules as well as ring templates (SMARTS strings for rings, and associated coordinates). Afterwards, the stereochemistry is corrected where necessary.&lt;br /&gt;&lt;br /&gt;Well, for any tetrahedral center with at least two non-ring bonds, those two bonds can be swapped to correct stereochemistry. For the special case of a spiro atom (an atom with four ring bonds which, if broken, split the molecule into three fragments), one of the rings involved can be rotated 180 degrees to correct the stereochemistry.&lt;br /&gt;&lt;br /&gt;How about for a stereocenter with three ring bonds? This is typically found where two rings join along an edge, or in bridged ring systems. Well, that's a bit tricky as you can't swap bonds around. But what you can do is invert the coordinates of the entire ring system. Of course, the ring system may contain more than one stereocenter (actually, I think such a ring system is guaranteed to contain at least one other stereocenter) in which case it will not always be possible to satisfy the stereochemistry at all centers simultaneously.&lt;br /&gt;&lt;br /&gt;This is as far as I've &lt;a href="http://openbabel.svn.sf.net/viewvc/openbabel/openbabel/trunk/src/builder.cpp?revision=3452&amp;view=markup"&gt;currently&lt;/a&gt; gotten.&lt;br /&gt;&lt;br /&gt;The next step is to include some stereochemistry information in the ring templates themselves. That is, to include different versions of the ring templates for the various stereochemistry arrangements. This should increase the coverage of ring systems that OpenBabel can successfully handle.&lt;br /&gt;&lt;br /&gt;Of course, there is a limit to how far one can get with ring templates, but it'll be interesting to find out where that limit is.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Image credit:&lt;/b&gt; &lt;a href="http://www.flickr.com/photos/nickzeff/"&gt;nickzeff&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-8914270682801207037?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=fuz7W-FZDaU:L6cF5I-k4OM:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=fuz7W-FZDaU:L6cF5I-k4OM:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=fuz7W-FZDaU:L6cF5I-k4OM:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/fuz7W-FZDaU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/8914270682801207037/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=8914270682801207037" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/8914270682801207037?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/8914270682801207037?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/10/how-to-correct-3d-coordinates-at.html" title="How to correct 3D coordinates at stereocenters" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;C08CR30zfyp7ImA9WxNVFEQ.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-5260245380507147819</id><published>2009-10-25T10:06:00.000-07:00</published><updated>2009-10-25T10:31:06.387-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-25T10:31:06.387-07:00</app:edited><title>Avogadro is 1.0 today</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_x5Hz3F0jd4Q/RzNlrwkcQkI/AAAAAAAAAWc/Qyevlz9I8Ws/s1600-h/avogadro.png"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;" src="http://bp0.blogger.com/_x5Hz3F0jd4Q/RzNlrwkcQkI/AAAAAAAAAWc/Qyevlz9I8Ws/s400/avogadro.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5130556202951656002" /&gt;&lt;/a&gt;The &lt;a href="http://avogadro.sf.net"&gt;1.0 release&lt;/a&gt; of Avogadro has just come out as &lt;a href="http://ccl.net/cgi-bin/ccl/message-new?2009+10+23+011"&gt;announced&lt;/a&gt; by Geoff, &lt;a href="http://depth-first.com/articles/2009/10/24/avogadro-1-0"&gt;reported&lt;/a&gt; by Depth-First, &lt;a href="http://blog.cryos.net/archives/233-Avogadro-1.0.0-Released!.html"&gt;blogged&lt;/a&gt; by Marcus (check out the video), and &lt;a href="http://sourceforge.net/community/avogadro-the-tyra-of-molecular-modeling/"&gt;interviewed&lt;/a&gt; and &lt;a href="http://twitter.com/sourceforge/status/5099755068"&gt;microblogged&lt;/a&gt; by SourceForge.&lt;br /&gt;&lt;br /&gt;To quote &lt;a href="http://avogadro.sf.net"&gt;avogadro.sf.net&lt;/a&gt;:&lt;blockquote&gt;Avogadro is an advanced molecular editor designed for cross-platform use in computational chemistry, molecular modeling, bioinformatics, materials science, and related areas. It offers flexible rendering and a powerful plugin architecture.&lt;/blockquote&gt;Why am I interested in this? Well, firstly it's useful for comp chem, an area in which I still dabble a bit. Secondly, it's going to become more useful for cheminformatics with time (will need to add handling for multi-mol sdf files first). And thirdly, many new features of OpenBabel have been added to address requirements for Avogadro such as 3D conformer generation from SMILES and forcefields, both of which I now use regularly.&lt;br /&gt;&lt;br /&gt;Well done, and best of luck to all involved. And what better release date? 6:02 on the 23rd of the 10th.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-5260245380507147819?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=HUnmuLcexyk:yMPQzGSCfrA:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=HUnmuLcexyk:yMPQzGSCfrA:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=HUnmuLcexyk:yMPQzGSCfrA:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/HUnmuLcexyk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/5260245380507147819/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=5260245380507147819" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/5260245380507147819?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/5260245380507147819?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/10/avogadro-is-10-today.html" title="Avogadro is 1.0 today" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://bp0.blogger.com/_x5Hz3F0jd4Q/RzNlrwkcQkI/AAAAAAAAAWc/Qyevlz9I8Ws/s72-c/avogadro.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></entry><entry gd:etag="W/&quot;DkcBQnw_fyp7ImA9WxNVEUw.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-747486233674760104</id><published>2009-10-21T01:20:00.000-07:00</published><updated>2009-10-21T01:34:13.247-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-21T01:34:13.247-07:00</app:edited><title>Really really final deadline extended to 23rd Oct for CINF symposia</title><content type="html">It seems that all of the CINF symposia have had their final deadlines extended to this Friday, 23rd October. So it's your last chance (again) to send in an abstract to the &lt;a href="http://baoilleach.blogspot.com/2009/10/one-week-left-to-submit-symposium-on.html"&gt;Visual Analysis of Chemical Data&lt;/a&gt; symposium, or any of the other symposia listed on the &lt;a href="http://acscinf.org/dbx/mtgs/cinfsymposia_call.asp?nth=239"&gt;CINF&lt;/a&gt; website. For anything that doesn't fit a specific symposium, there's General Papers (I've one in here myself). The COMP division also has several symposia of interest to cheminformaticians (I'd link to the list of symposia but their &lt;a href="http://www.acscomp.org/Meetings/programming.html"&gt;website&lt;/a&gt; doesn't list them).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-747486233674760104?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=lqK1OCfZRwo:U5UcU1F0m8M:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=lqK1OCfZRwo:U5UcU1F0m8M:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=lqK1OCfZRwo:U5UcU1F0m8M:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/lqK1OCfZRwo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/747486233674760104/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=747486233674760104" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/747486233674760104?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/747486233674760104?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/10/really-really-final-deadline-extended.html" title="Really really final deadline extended to 23rd Oct for CINF symposia" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;CUEFQ3s_eip7ImA9WxNVEUw.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-7428517569879204521</id><published>2009-10-13T05:54:00.000-07:00</published><updated>2009-10-21T01:26:52.542-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-21T01:26:52.542-07:00</app:edited><title>One week left to submit - Symposium on Visual Analysis of Chemical Data (ACS Spring 2010)</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://farm4.static.flickr.com/3159/3026852045_0911380467_m.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 240px; height: 180px;" src="http://farm4.static.flickr.com/3159/3026852045_0911380467_m.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;b&gt;&lt;center&gt;Final Call for Papers:&lt;br /&gt;Visual Analysis of Chemical Data&lt;br /&gt;239th ACS National Meeting&lt;br /&gt;San Francisco, March 21-25, 2010&lt;br /&gt;CINF Division&lt;/center&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Update(20/Oct):&lt;/b&gt; Closing date now 23rd Oct. &lt;br /&gt;&lt;br /&gt;Dear Colleagues,&lt;br /&gt;&lt;br /&gt;&lt;b&gt;The submission deadline of 23rd Oct is approaching&lt;/b&gt; for an upcoming symposium focusing on innovative methods for visual representation and analysis of chemical data. Just as Edward Tufte has championed maximizing clarity and information content in statistical graphics, there is a need for methods to display chemical information that will maximize understanding, and allow rapid analysis and decision making.&lt;br /&gt;&lt;br /&gt;We invite you to submit contributions that address various aspects of visualization of chemical data (such as structures, SAR data, literature, patents) including, but not limited to, the following topics:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;With an ever increasing pool of descriptors, along with new and more sophisticated machine learning methods, QSAR models are becoming more difficult to interpret. How can information on model reliability, the presence of activity cliffs, and the range of applicability of a model and other relevant model properties be easily depicted?&lt;/li&gt;&lt;li&gt;Recently, virtual worlds 3D such as Second Life have presented new opportunities and challenges for the representation of chemical data. What is the potential of such a medium in education and communicating with the chemistry community?&lt;/li&gt;&lt;li&gt;Social software allows for rapid and convenient sharing of chemical data.  Examples include Google Spreadsheets, ManyEyes, DabbleDB, and wikis, including Wikipedia.  What are the implications for chemical research and education?&lt;/li&gt;&lt;li&gt;The visualization of the contents of large chemical datasets presents particular problems. How can an overview of the dataset be visualized so that it presents both the nature of the contents as well as the degree of diversity and similarity within the dataset? How can different datasets be visually compared?&lt;/li&gt;&lt;li&gt;Depicting 3D chemical information in 2D involves a loss of information. However, innovative 2D visualization methods can restore the most relevant information.&lt;/li&gt;&lt;li&gt;Chemical information comprises a diverse array of data types including chemical structures and diagrams (2D and 3D), associated assay results, conformations, QSAR models and their predictions. The visualization and integration of all these data into a single interface that aids interpretation and analysis is a continuing challenge.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;We would also like to point out that sponsorship opportunities are available.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;The on-line abstract submission system (&lt;a href="http://abstracts.acs.org/chem/239nm/"&gt;PACS&lt;/a&gt;) will be open for submissions until 23rd October&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;Please contact Andrew, Jean-Claude or myself if you have any questions.&lt;br /&gt;&lt;br /&gt;Yours sincerely,&lt;br /&gt;  Noel O'Boyle&lt;br /&gt;&lt;br /&gt;On behalf of the symposium organizers:&lt;br /&gt;&lt;br /&gt;Dr. Jean-Claude Bradley,&lt;br /&gt;Drexel University, PA&lt;br /&gt;bradlejc@drexel.edu&lt;br /&gt;&lt;br /&gt;Dr. Andrew Lang,&lt;br /&gt;Oral Roberts University, OK&lt;br /&gt;alang@oru.edu&lt;br /&gt;&lt;br /&gt;Dr. Noel O’Boyle,&lt;br /&gt;University College Cork, Ireland&lt;br /&gt;n.oboyle@ucc.ie&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Image credit:&lt;/b&gt; &lt;a href="http://www.flickr.com/photos/prehensile/"&gt;prehensile&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-7428517569879204521?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=rd3WQYzfVhU:BaotMxsfYlA:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=rd3WQYzfVhU:BaotMxsfYlA:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=rd3WQYzfVhU:BaotMxsfYlA:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/rd3WQYzfVhU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/7428517569879204521/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=7428517569879204521" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/7428517569879204521?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/7428517569879204521?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/10/one-week-left-to-submit-symposium-on.html" title="One week left to submit - Symposium on Visual Analysis of Chemical Data (ACS Spring 2010)" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;DUMDRn48fyp7ImA9WxNXGUk.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-6233517100849146036</id><published>2009-10-07T21:31:00.000-07:00</published><updated>2009-10-07T13:31:17.077-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-07T13:31:17.077-07:00</app:edited><title>Browser-based chemistry is here - its name is ChemDoodle Web Components</title><content type="html">So...what's to say? Just check out &lt;a href="http://web.chemdoodle.com/"&gt;ChemDoodle Web Components&lt;/a&gt;. It's Javascript. It's Open Source. It's running in your browser. It's doing funky chemistry.&lt;br /&gt;&lt;br /&gt;Don't think it's going to affect you? Hear that noise? That's a paradigm shift.&lt;br /&gt;&lt;br /&gt;Let's chart a brief timeline of what has led up to this:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;1995 Nov&lt;/span&gt; - JavaScript (then LiveScript) first released&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;2008 Jul&lt;/span&gt; - Rich &lt;a href="http://depth-first.com/articles/2008/07/15/javascript-for-cheminformatics"&gt;surveys&lt;/a&gt; all prior work at the intersection of Javascript and Chemistry, and identifies where Javascript can make the most impact on the web&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;2008 Oct&lt;/span&gt; - &lt;a href="http://blahbleh.com/"&gt;blahbleh&lt;/a&gt; implements a Javascript 3D molecular editor and viewer, &lt;a href="http://blahbleh.com/molecools.php?name=ethanol"&gt;molecools&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;2008 Dec&lt;/span&gt; - &lt;a href="http://www.chemhack.com/"&gt;Duan Lian&lt;/a&gt; uses GWT to translate Rich Apodaca's lightweight Java cheminformatics toolkit, &lt;a href="http://metamolecular.com/mx"&gt;MX&lt;/a&gt;, into Javascript (&lt;a href="http://chemhack.com/mx-gwt/"&gt;website&lt;/a&gt;, &lt;a href="http://chemhack.com/mx-gwt/demo-molecule-structure-rendering/"&gt;demo&lt;/a&gt;)&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;2009 Jan&lt;/span&gt; - I develop a Javascript 3D molecule viewer, &lt;a href="http://baoilleach.blogspot.com/2009/01/twistymol-is-dead-long-live-twirlymol.html"&gt;TwirlyMol&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;2009 Jan-Feb&lt;/span&gt; - Duan Lian releases a preview of the world's first Javascript molecular editor, &lt;a href="http://chemhack.com/jsmoleditor/"&gt;jsMolEditor&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;2009 Aug&lt;/span&gt; - Kevin Theisen releases &lt;a href="http://web.chemdoodle.com/"&gt;ChemDoodle Web Components&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-6233517100849146036?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=0wbmO0fvPyk:uB8oTXVsPyM:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=0wbmO0fvPyk:uB8oTXVsPyM:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=0wbmO0fvPyk:uB8oTXVsPyM:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/0wbmO0fvPyk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/6233517100849146036/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=6233517100849146036" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/6233517100849146036?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/6233517100849146036?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/09/browser-based-chemistry-is-here-its.html" title="Browser-based chemistry is here - its name is ChemDoodle Web Components" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total></entry><entry gd:etag="W/&quot;DEAMQn07cSp7ImA9WxNXFko.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-2522522065974011320</id><published>2009-10-04T09:52:00.000-07:00</published><updated>2009-10-04T10:19:43.309-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-04T10:19:43.309-07:00</app:edited><title>Keep your publication list up to date with Javascript and Google Spreadsheet</title><content type="html">Adding a new publication to a HTML page is a fiddly business, especially if you want to add some markup or links. This might explain why there are so many websites of scientists whose last publication appears to be four years ago. If only adding a new publication were as easy as, oh, let's say...as easy as adding a row to a spreadsheet.&lt;br /&gt;&lt;br /&gt;Well, you're in luck. The following procedure makes it as easy as just that. You can maintain the same list of publications on several web sites all of which will automatically be kept up-to-date. If you're familiar with Javascript and CSS, you can also easily change the markup used and its appearance. The result should look something like the following image:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_x5Hz3F0jd4Q/SsjYkNRPPKI/AAAAAAAAA_g/H_cJjDaoPuE/s1600-h/papers.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 193px;" src="http://2.bp.blogspot.com/_x5Hz3F0jd4Q/SsjYkNRPPKI/AAAAAAAAA_g/H_cJjDaoPuE/s400/papers.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5388795070697651362" /&gt;&lt;/a&gt;&lt;br /&gt;Here's how it's done:&lt;br /&gt;(1) Create a google spreadsheet, and use the same column names as shown in &lt;a href="http://spreadsheets.google.com/pub?key=tIggPE4gviXAeOoa_SNEHZg&amp;single=true&amp;gid=0&amp;output=html"&gt;this spreadsheet&lt;/a&gt;.&lt;br /&gt;(2) Add some information on your papers. Again, see the example spreadsheet for the format (note especially the author list format).&lt;br /&gt;(3) Click on Share/Publish as Web Page, and make note of the key (i.e. the text between "key=" and "&amp;single").&lt;br /&gt;(4) Download &lt;a href="http://www.redbrick.dcu.ie/~noel/addpapers.js"&gt;addpapers.js&lt;/a&gt;, edit the line 'me = "N. M. O'Boyle";', and put it in the same directory as a HTML page, papers.html (for example).&lt;br /&gt;(5) Edit papers.html to load addpapers.js in its HEAD ("&amp;lt;script type='text/javascript' src='addpapers.js'&amp;gt;&amp;lt;/script&amp;gt;")&lt;br /&gt;(6) Download &lt;a href="http://www.redbrick.dcu.ie/~noel/publishious.css"&gt;publishious.css&lt;/a&gt;, and put it in the same directory as papers.html.&lt;br /&gt;(7) Edit papers.html to apply publishious.css in its HEAD ("&amp;lt;link rel='stylesheet' media='all' type='text/css' href='publishious.css' /&amp;gt;").&lt;br /&gt;(8) Add the following to papers.html after replacing MYKEY by the value of the key for your spreadsheet:&lt;pre style="overflow:auto"&gt;&amp;lt;div id="paperentries"&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;script src="http://spreadsheets.google.com/feeds/list/MYKEY/od6/public/values?alt=json-in-script&amp;callback=handlejson" &lt;br /&gt;type="text/javascript"&amp;gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;&lt;br /&gt;Hopefully that works. If it doesn't, check your browser's error console (in Firefox Tools/Error console) for some idea of the problem.&lt;br /&gt;&lt;br /&gt;It's probably not a good idea to rely totally on Google spreadsheets, so what I do is view the generated HTML code using the Web Developer plugin and paste it into the HTML page as the content of the paperentries div. That way, even if Google spreadsheets goes down (or changes its API), a couple of papers will still appear.&lt;br /&gt;&lt;br /&gt;Feel free to adapt this code for your own use, although I'd appreciate if you could add a comment below with a link to the resulting webpage.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-2522522065974011320?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=qDrznduc9OM:AXqZoTZUitg:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=qDrznduc9OM:AXqZoTZUitg:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=qDrznduc9OM:AXqZoTZUitg:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/qDrznduc9OM" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/2522522065974011320/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=2522522065974011320" title="6 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/2522522065974011320?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/2522522065974011320?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/10/keep-your-publication-list-up-to-date.html" title="Keep your publication list up to date with Javascript and Google Spreadsheet" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_x5Hz3F0jd4Q/SsjYkNRPPKI/AAAAAAAAA_g/H_cJjDaoPuE/s72-c/papers.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">6</thr:total></entry><entry gd:etag="W/&quot;A0EMR304eCp7ImA9WxNQF0o.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-196909105382042670</id><published>2009-09-23T13:12:00.000-07:00</published><updated>2009-09-24T01:08:06.330-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-09-24T01:08:06.330-07:00</app:edited><title>ANN: Cinfony 0.9 released</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://cinfony.googlecode.com"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_x5Hz3F0jd4Q/SPRd-GzDBbI/AAAAAAAAAqM/E0JytdTVeXs/s400/cinfony_200.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5256929986606204338" /&gt;&lt;/a&gt;The most anticipated software of the year, the one we've all been waiting for, has just been released. But enough about Google Wave - &lt;a href="http://cinfony.googlecode.com"&gt;Cinfony 0.9 is now available&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Cinfony allows you to access RDKit, the CDK and OpenBabel from Python (and Jython) all with the same API.&lt;br /&gt;&lt;br /&gt;What this all means is that you can quickly get up and running testing out any of these three toolkits. The &lt;a href="http://www.redbrick.dcu.ie/~noel/cinfony/"&gt;Cinfony API&lt;/a&gt; makes it easy to read in a file and carry out some basic manipulations, and for anything more complicated you still have access to the underlying toolkit. For a complete description, see the &lt;a href="http://code.google.com/p/cinfony/wiki/Documentation"&gt;docs&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;This release supports OpenBabel 2.2.3, CDK 1.2.3 and RDKit Q2_2009.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-196909105382042670?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=m9AHs8ErRXg:iu5nuECOIUo:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=m9AHs8ErRXg:iu5nuECOIUo:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=m9AHs8ErRXg:iu5nuECOIUo:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/m9AHs8ErRXg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/196909105382042670/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=196909105382042670" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/196909105382042670?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/196909105382042670?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/09/ann-cinfony-09-released.html" title="ANN: Cinfony 0.9 released" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_x5Hz3F0jd4Q/SPRd-GzDBbI/AAAAAAAAAqM/E0JytdTVeXs/s72-c/cinfony_200.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;DEQNQnY8eCp7ImA9WxNQEEQ.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-4122206384266006350</id><published>2009-09-09T02:08:00.001-07:00</published><updated>2009-09-16T03:19:53.870-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-09-16T03:19:53.870-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="vmware" /><category scheme="http://www.blogger.com/atom/ns#" term="OpenBabel" /><title>Running the Windows OpenBabel GUI under Linux on the Windows desktop - Need some Wine?</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_x5Hz3F0jd4Q/Sqdwm9TCS5I/AAAAAAAAAu0/FVaptUyz0xo/s1600-h/winob.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 240px;" src="http://3.bp.blogspot.com/_x5Hz3F0jd4Q/Sqdwm9TCS5I/AAAAAAAAAu0/FVaptUyz0xo/s400/winob.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5379392094509091730" /&gt;&lt;/a&gt;&lt;br /&gt;A friend of mine (Ed Cannon) recently showed me the OpenBabel GUI running on Linux. The surprising thing about this is that OpenBabel currently does not have a Linux version of the GUI (&lt;b&gt;Update 16/Sept/09:&lt;/b&gt; Now it does). He was running our Windows release on Linux using &lt;a href="http://www.winehq.org/"&gt;Wine&lt;/a&gt;, the Windows emulator ("sudo apt-get install wine"). Cool, I thought - I didn't realise that that would even work. Cue blog post.&lt;br /&gt;&lt;br /&gt;To get a screenshot I needed Linux. As I described &lt;a href="http://baoilleach.blogspot.com/2007/06/use-linux-on-windows-for-free.html"&gt;earlier&lt;/a&gt;, it's easy (and free) to run Linux on Windows using &lt;a href="http://www.vmware.com/products/player/"&gt;VMWare Player&lt;/a&gt;. This time I installed an &lt;a href="http://chrysaor.info/?page=ubuntu"&gt;Ubuntu 9.04 image&lt;/a&gt;. And then (after running "sudo vmware-config-tools.pl") I discovered a new feature called Unity mode. This allows you to use the virtual machine to start Linux applications that appear directly on your Windows desktop (rather than enclosed in a Linux desktop). So I decided to get a screenshot of the Windows OpenBabel GUI running under Wine/Linux together with it running natively on Windows.&lt;br /&gt; &lt;br /&gt;The only catch is that I wasn't able to screen capture the Linux application in Windows so in the end, despite all my hard work, I had to &lt;a href="http://gimp.org/"&gt;Gimp&lt;/a&gt; two images together. The resulting image is accurate though, and you can click for a larger version.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-4122206384266006350?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=ZDIqSc6peeM:1IiGcV8CcX8:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=ZDIqSc6peeM:1IiGcV8CcX8:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=ZDIqSc6peeM:1IiGcV8CcX8:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/ZDIqSc6peeM" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/4122206384266006350/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=4122206384266006350" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/4122206384266006350?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/4122206384266006350?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/09/running-windows-openbabel-gui-under.html" title="Running the Windows OpenBabel GUI under Linux on the Windows desktop - Need some Wine?" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_x5Hz3F0jd4Q/Sqdwm9TCS5I/AAAAAAAAAu0/FVaptUyz0xo/s72-c/winob.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total></entry><entry gd:etag="W/&quot;CU4DRn4_cCp7ImA9WxNRE08.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-6222561478721160191</id><published>2009-09-07T02:38:00.000-07:00</published><updated>2009-09-07T04:46:17.048-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-09-07T04:46:17.048-07:00</app:edited><title>Moving to pastures new, but still in the same field</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/groups/universitycollegecork/"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 240px; height: 158px;" src="http://farm1.static.flickr.com/77/166139180_e8f80a5e03_m.jpg" border="0" alt="University College Cork" /&gt;&lt;/a&gt;Friday was my last day at the &lt;a href="http://www.ccdc.cam.ac.uk"&gt;Cambridge Crystallographic Data Centre&lt;/a&gt; (CCDC). I've been a postdoc there for the last three years working on the &lt;a href="http://www.ccdc.cam.ac.uk/products/life_sciences/gold/"&gt;GOLD&lt;/a&gt; protein-ligand docking software, specifically on scoring function improvements for virtual screening. It has been a great learning experience, and I've enjoyed working there a lot.&lt;br /&gt;&lt;br /&gt;Recently I was awarded my first grant, a career development fellowship from an Irish funding agency, the &lt;a href="http://www.hrb.ie/"&gt;Health Research Board&lt;/a&gt;. From today I will be an HRB Postdoctoral Fellow based in &lt;a href="http://www.ucc.ie"&gt;University College Cork&lt;/a&gt; (UCC) working on pharmacophore software based on &lt;a href="http://openbabel.org"&gt;OpenBabel&lt;/a&gt;. &lt;br /&gt;&lt;br /&gt;I am very grateful to the HRB for giving me to chance to do this, and I'm really looking forward to getting started on this project. It's early days yet, but I am very much interested in collaborations with experimental drug design groups especially those working in the absence of protein structural data (for example, GPCRs). Feel free to drop me an email at baoilleach@gmail.com.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Image credit:&lt;/b&gt; &lt;a href="http://www.flickr.com/photos/kman999/"&gt;Kman999&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-6222561478721160191?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=BbaeslXAgBw:GZlAnJJEBMM:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=BbaeslXAgBw:GZlAnJJEBMM:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=BbaeslXAgBw:GZlAnJJEBMM:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/BbaeslXAgBw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/6222561478721160191/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=6222561478721160191" title="4 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/6222561478721160191?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/6222561478721160191?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/09/moving-to-pastures-new-but-still-in.html" title="Moving to pastures new, but still in the same field" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">4</thr:total></entry><entry gd:etag="W/&quot;DEQDQ388fip7ImA9WxNSGUs.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-8011469423807334442</id><published>2009-09-03T01:20:00.000-07:00</published><updated>2009-09-03T01:26:12.176-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-09-03T01:26:12.176-07:00</app:edited><title>Now open for submissions - Symposium on Visual Analysis of Chemical Data (ACS Spring 2010)</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://farm4.static.flickr.com/3159/3026852045_0911380467_m.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 240px; height: 180px;" src="http://farm4.static.flickr.com/3159/3026852045_0911380467_m.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;b&gt;&lt;center&gt;Second Call for Papers:&lt;br /&gt;Visual Analysis of Chemical Data&lt;br /&gt;239th ACS National Meeting&lt;br /&gt;San Francisco, March 21-25, 2010&lt;br /&gt;CINF Division&lt;/center&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Dear Colleagues,&lt;br /&gt;&lt;br /&gt;&lt;b&gt;We are now accepting papers&lt;/b&gt; for an upcoming symposium focusing on innovative methods for visual representation and analysis of chemical data. Just as Edward Tufte has championed maximizing clarity and information content in statistical graphics, there is a need for methods to display chemical information that will maximize understanding, and allow rapid analysis and decision making.&lt;br /&gt;&lt;br /&gt;We invite you to submit contributions that address various aspects of visualization of chemical data (such as structures, SAR data, literature, patents) including, but not limited to, the following topics:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;With an ever increasing pool of descriptors, along with new and more sophisticated machine learning methods, QSAR models are becoming more difficult to interpret. How can information on model reliability, the presence of activity cliffs, and the range of applicability of a model and other relevant model properties be easily depicted?&lt;/li&gt;&lt;li&gt;Recently, virtual worlds 3D such as Second Life have presented new opportunities and challenges for the representation of chemical data. What is the potential of such a medium in education and communicating with the chemistry community?&lt;/li&gt;&lt;li&gt;Social software allows for rapid and convenient sharing of chemical data.  Examples include Google Spreadsheets, ManyEyes, DabbleDB, and wikis, including Wikipedia.  What are the implications for chemical research and education?&lt;/li&gt;&lt;li&gt;The visualization of the contents of large chemical datasets presents particular problems. How can an overview of the dataset be visualized so that it presents both the nature of the contents as well as the degree of diversity and similarity within the dataset? How can different datasets be visually compared?&lt;/li&gt;&lt;li&gt;Depicting 3D chemical information in 2D involves a loss of information. However, innovative 2D visualization methods can restore the most relevant information.&lt;/li&gt;&lt;li&gt;Chemical information comprises a diverse array of data types including chemical structures and diagrams (2D and 3D), associated assay results, conformations, QSAR models and their predictions. The visualization and integration of all these data into a single interface that aids interpretation and analysis is a continuing challenge.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;We would also like to point out that sponsorship opportunities are available.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;The on-line abstract submission system (&lt;a href="http://abstracts.acs.org/chem/239nm/"&gt;PACS&lt;/a&gt;) is now open for submissions until 19th October&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;Please contact Andrew, Jean-Claude or myself if you have any questions.&lt;br /&gt;&lt;br /&gt;Yours sincerely,&lt;br /&gt;   Noel O'Boyle&lt;br /&gt;&lt;br /&gt;On behalf of the symposium organizers:&lt;br /&gt;&lt;br /&gt;Dr. Jean-Claude Bradley,&lt;br /&gt;Drexel University, PA&lt;br /&gt;bradlejc@drexel.edu&lt;br /&gt;&lt;br /&gt;Dr. Andrew Lang,&lt;br /&gt;Oral Roberts University, OK&lt;br /&gt;alang@oru.edu&lt;br /&gt;&lt;br /&gt;Dr. Noel O’Boyle,&lt;br /&gt;University College Cork, Ireland&lt;br /&gt;n.oboyle@ucc.ie&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Image credit:&lt;/b&gt; &lt;a href="http://www.flickr.com/photos/prehensile/"&gt;prehensile&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-8011469423807334442?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=67hkh9g6F40:ewwknskNM-g:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=67hkh9g6F40:ewwknskNM-g:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=67hkh9g6F40:ewwknskNM-g:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/67hkh9g6F40" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/8011469423807334442/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=8011469423807334442" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/8011469423807334442?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/8011469423807334442?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/09/now-open-for-submissions-symposium-on.html" title="Now open for submissions - Symposium on Visual Analysis of Chemical Data (ACS Spring 2010)" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;CkYDRH45fyp7ImA9WxNSEkU.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-4097567330909297083</id><published>2009-08-26T01:29:00.000-07:00</published><updated>2009-08-26T02:49:35.027-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-08-26T02:49:35.027-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="OpenBabel" /><title>Using OpenBabel from Java</title><content type="html">OpenBabel 2.2.3 has just been released and with that, a new release of the Java bindings. The full details on using OpenBabel from Java are available on our &lt;a href="http://openbabel.org/wiki/Java"&gt;wiki&lt;/a&gt;. On Windows openbabel.jar is included with the OpenBabel GUI so no additional installation is necessary. You just start Eclipse, add the jar file and away you go.&lt;br /&gt;&lt;br /&gt;The following example shows how to use OpenBabel from Java. It includes an example of file format conversion, iteration over atoms, and using the SMARTS matcher.&lt;pre style="overflow:auto"&gt;&lt;span style="color: rgb(160, 32, 240);"&gt;import&lt;/span&gt; org.openbabel.*;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(46, 139, 87);"&gt;&lt;b&gt;public&lt;/b&gt;&lt;/span&gt; &lt;span style="color: rgb(46, 139, 87);"&gt;&lt;b&gt;class&lt;/b&gt;&lt;/span&gt; Test {&lt;br /&gt;&lt;br /&gt;   &lt;span style="color: rgb(46, 139, 87);"&gt;&lt;b&gt;public&lt;/b&gt;&lt;/span&gt; &lt;span style="color: rgb(46, 139, 87);"&gt;&lt;b&gt;static&lt;/b&gt;&lt;/span&gt; &lt;span style="color: rgb(46, 139, 87);"&gt;&lt;b&gt;void&lt;/b&gt;&lt;/span&gt; main(String[] args) {&lt;br /&gt;       &lt;span style="color: rgb(0, 0, 255);"&gt;// Initialise&lt;/span&gt;&lt;br /&gt;       System.loadLibrary(&lt;span style="color: rgb(255, 0, 255);"&gt;"openbabel_java"&lt;/span&gt;);&lt;br /&gt;&lt;br /&gt;       &lt;span style="color: rgb(0, 0, 255);"&gt;// Read molecule from SMILES string&lt;/span&gt;&lt;br /&gt;       OBConversion conv = &lt;span style="color: rgb(128, 64, 64);"&gt;&lt;b&gt;new&lt;/b&gt;&lt;/span&gt; OBConversion();&lt;br /&gt;       OBMol mol = &lt;span style="color: rgb(128, 64, 64);"&gt;&lt;b&gt;new&lt;/b&gt;&lt;/span&gt; OBMol();&lt;br /&gt;       conv.SetInFormat(&lt;span style="color: rgb(255, 0, 255);"&gt;"smi"&lt;/span&gt;);&lt;br /&gt;       conv.ReadString(mol, &lt;span style="color: rgb(255, 0, 255);"&gt;"C(Cl)(=O)CCC(=O)Cl"&lt;/span&gt;);&lt;br /&gt;     &lt;br /&gt;       &lt;span style="color: rgb(0, 0, 255);"&gt;// Print out some general information on the molecule, atoms&lt;/span&gt;&lt;br /&gt;       conv.SetOutFormat(&lt;span style="color: rgb(255, 0, 255);"&gt;"can"&lt;/span&gt;);&lt;br /&gt;       System.out.print(&lt;span style="color: rgb(255, 0, 255);"&gt;"Canonical SMILES: "&lt;/span&gt; + conv.WriteString(mol));&lt;br /&gt;       System.out.println(&lt;span style="color: rgb(255, 0, 255);"&gt;"The molecular weight of the molecule is "&lt;/span&gt;&lt;br /&gt;                  + mol.GetMolWt());&lt;br /&gt;       &lt;span style="color: rgb(128, 64, 64);"&gt;&lt;b&gt;for&lt;/b&gt;&lt;/span&gt;(OBAtom atom : &lt;span style="color: rgb(128, 64, 64);"&gt;&lt;b&gt;new&lt;/b&gt;&lt;/span&gt; OBMolAtomIter(mol)) {&lt;br /&gt;           System.out.println(&lt;span style="color: rgb(255, 0, 255);"&gt;"Atom "&lt;/span&gt; + atom.GetIdx() +&lt;br /&gt;                              &lt;span style="color: rgb(255, 0, 255);"&gt;": atomic number = "&lt;/span&gt; + atom.GetAtomicNum() +&lt;br /&gt;                              &lt;span style="color: rgb(255, 0, 255);"&gt;", hybridisation = "&lt;/span&gt; + atom.GetHyb());&lt;br /&gt;       }&lt;br /&gt;&lt;br /&gt;       &lt;span style="color: rgb(0, 0, 255);"&gt;// What are the indices of the carbon atoms&lt;/span&gt;&lt;br /&gt;       &lt;span style="color: rgb(0, 0, 255);"&gt;// of the acid chloride groups?&lt;/span&gt;&lt;br /&gt;       OBSmartsPattern acidpattern = &lt;span style="color: rgb(128, 64, 64);"&gt;&lt;b&gt;new&lt;/b&gt;&lt;/span&gt; OBSmartsPattern();&lt;br /&gt;       acidpattern.Init(&lt;span style="color: rgb(255, 0, 255);"&gt;"C(=O)Cl"&lt;/span&gt;);&lt;br /&gt;       acidpattern.Match(mol);&lt;br /&gt;     &lt;br /&gt;       vvInt matches = acidpattern.GetUMapList();&lt;br /&gt;       System.out.println(&lt;span style="color: rgb(255, 0, 255);"&gt;"There are "&lt;/span&gt; + matches.size() +&lt;br /&gt;                          &lt;span style="color: rgb(255, 0, 255);"&gt;" acid chloride groups"&lt;/span&gt;);&lt;br /&gt;       System.out.print(&lt;span style="color: rgb(255, 0, 255);"&gt;"The carbon atoms of the matches are: "&lt;/span&gt;);&lt;br /&gt;       &lt;span style="color: rgb(128, 64, 64);"&gt;&lt;b&gt;for&lt;/b&gt;&lt;/span&gt;(&lt;span style="color: rgb(46, 139, 87);"&gt;&lt;b&gt;int&lt;/b&gt;&lt;/span&gt; i=&lt;span style="color: rgb(255, 0, 255);"&gt;0&lt;/span&gt;; i&amp;lt;matches.size(); i++)&lt;br /&gt;           System.out.print(matches.get(i).get(&lt;span style="color: rgb(255, 0, 255);"&gt;0&lt;/span&gt;) + &lt;span style="color: rgb(255, 0, 255);"&gt;" "&lt;/span&gt;);&lt;br /&gt;   }&lt;br /&gt;}&lt;/pre&gt;The output is as follows:&lt;pre&gt;Canonical SMILES: ClC(=O)CCC(=O)Cl&lt;br /&gt;The molecular weight of the molecule is 154.97935999999999&lt;br /&gt;Atom 1: atomic number = 6, hybridisation = 2&lt;br /&gt;Atom 2: atomic number = 17, hybridisation = 0&lt;br /&gt;Atom 3: atomic number = 8, hybridisation = 2&lt;br /&gt;Atom 4: atomic number = 6, hybridisation = 3&lt;br /&gt;Atom 5: atomic number = 6, hybridisation = 3&lt;br /&gt;Atom 6: atomic number = 6, hybridisation = 2&lt;br /&gt;Atom 7: atomic number = 8, hybridisation = 2&lt;br /&gt;Atom 8: atomic number = 17, hybridisation = 0&lt;br /&gt;There are 2 acid chloride groups&lt;br /&gt;The carbon atoms of the matches are: 1 6 &lt;/pre&gt;Note: although using OpenBabel from Eclipse on Windows works fine, some users have reported problems on Linux with the default OpenBabel build. You probably need to build OpenBabel statically on Linux if you want to use it from Eclipse, but I haven't tested this. In any case, you can just compile it from the command line.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-4097567330909297083?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=G-WpaAlrYds:6pRpNJWC3Bk:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=G-WpaAlrYds:6pRpNJWC3Bk:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=G-WpaAlrYds:6pRpNJWC3Bk:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/G-WpaAlrYds" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/4097567330909297083/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=4097567330909297083" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/4097567330909297083?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/4097567330909297083?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/08/using-openbabel-from-java.html" title="Using OpenBabel from Java" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;AkYFQXk6cSp7ImA9WxNTF0Q.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-3958397972173523713</id><published>2009-08-20T12:52:00.000-07:00</published><updated>2009-08-20T12:55:10.719-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-08-20T12:55:10.719-07:00</app:edited><title>MolCore - a new beginning for OpenBabel and RDKit</title><content type="html">Is it possible to design something exactly right first time? In the world of software design, the answer is no. There are some design decisions whose impact you will only realise years down the line, perhaps as you try to extend the software to handle unforeseen uses. At that point, you're stuck with design decisions that you cannot easily change without major work.&lt;br /&gt;&lt;br /&gt;A case in point - in OpenBabel, atoms are numbered from 1 but bonds from 0. Bug heaven.&lt;br /&gt;&lt;br /&gt;A few weeks ago the first steps were made in sorting out these sorts of issues; a new project, MolCore, was registered on SourceForge with the goal of developing a common Molecule object for both &lt;a href="http://rdkit.org"&gt;RDKit&lt;/a&gt; and &lt;a href="http://openbabel.org"&gt;OpenBabel&lt;/a&gt;. This will largely be based on RDKit code, but will pool together the collective wisdom of developers on both sides regarding things they wished had been done differently.&lt;br /&gt;&lt;br /&gt;As ever with an open source project, all the discussion occurs in public so if interested check out the &lt;a href="http://sourceforge.net/apps/trac/molcore/"&gt;wiki pages&lt;/a&gt; and subscribe to the &lt;a href="https://lists.sourceforge.net/lists/listinfo/molcore-devel"&gt;mailing list&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-3958397972173523713?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=jMtkiN_WCkU:nxwwWQnnqD8:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=jMtkiN_WCkU:nxwwWQnnqD8:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=jMtkiN_WCkU:nxwwWQnnqD8:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/jMtkiN_WCkU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/3958397972173523713/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=3958397972173523713" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/3958397972173523713?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/3958397972173523713?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/08/molcore-new-beginning-for-openbabel-and.html" title="MolCore - a new beginning for OpenBabel and RDKit" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;DE4FQ3s_eyp7ImA9WxNTFU8.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-1731222235702934790</id><published>2009-08-17T09:05:00.000-07:00</published><updated>2009-08-17T09:35:12.543-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-08-17T09:35:12.543-07:00</app:edited><title>How does rescoring improve results in docking?</title><content type="html">&lt;blockquote&gt;Despite more than a decade of research into improved scoring functions, a scoring function that can accurately predict binding affinities remains an elusive goal. Even the simpler problem of identifying ligands from a data set of inactive molecules is a challenge for modern scoring functions, although for a given protein a particular scoring function may work very well. While there is certainly a need for the development of improved scoring functions with better performance over a wider range of protein families, it is also important to make the maximal use of currently available scoring functions. One of the ways to do this is to combine existing scoring functions in a so-called &lt;b&gt;rescoring experiment&lt;/b&gt;.&lt;/blockquote&gt;&lt;a href="http://dx.doi.org/10.1021/ci900164f"&gt;&lt;i&gt;Testing Assumptions and Hypotheses for Rescoring Success in Protein−Ligand Docking&lt;/a&gt; Noel M. O'Boyle, John W. Liebeschuetz and Jason C. Cole, &lt;i&gt;Journal of Chemical Information and Modeling&lt;/i&gt;, &lt;b&gt;2009&lt;/b&gt;, ASAP.&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;A rescoring experiment simply involves taking the docking poses found by Scoring Function A, and assessing them (after local optimization if you want to avoid artifacts) with Scoring Function B. Compared to the length of time a docking requires, rescoring is almost instant. Although rescoring has the potential to improve results in a virtual screen, it won't always. This means that it is important to understand the underlying reasons for success in rescoring. This would then allow the choice of appropriate Scoring Functions A and B.&lt;br /&gt;&lt;br /&gt;JCIM has just published some work of mine in which I investigate two hypotheses for rescoring success:&lt;ul&gt;&lt;li&gt;That rescoring success occurs due to some consensus effect between the two scoring functions that eliminates false positives&lt;/li&gt;&lt;li&gt;That rescoring success occurs due to complementary between the scoring functions; that is, the first scoring function is better at pose prediction, while the second is better at scoring actives relative to inactives&lt;/li&gt;&lt;/ul&gt;As far as I am aware, this is the first study to investigate why rescoring can improve results in a virtual screen.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-1731222235702934790?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=R5M16Xn9ROw:r8oWX6lg3nU:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=R5M16Xn9ROw:r8oWX6lg3nU:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=R5M16Xn9ROw:r8oWX6lg3nU:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/R5M16Xn9ROw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/1731222235702934790/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=1731222235702934790" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/1731222235702934790?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/1731222235702934790?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/08/how-does-rescoring-improve-results-in.html" title="How does rescoring improve results in docking?" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></entry><entry gd:etag="W/&quot;Ck8NQ3oyfip7ImA9WxNTFU0.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-1820778846135431667</id><published>2009-08-17T02:11:00.000-07:00</published><updated>2009-08-17T02:21:32.496-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-08-17T02:21:32.496-07:00</app:edited><title>A cheminformatics journal by any other name...</title><content type="html">Over at Wiley, &lt;b&gt;QSAR and Combinational Scienc&lt;/b&gt;e is retiring to make way for &lt;b&gt;Molecular Informatics&lt;/b&gt; from 2010. The website is &lt;a href="http://molinf.com"&gt;molinf.com&lt;/a&gt;.&lt;br /&gt;&lt;blockquote&gt;The journal's scope includes but is not limited to the fields of drug discovery and chemical biology, protein and nucleic acid engineering and design, the design of nanomolecular structures, strategies for modeling of macromolecular assemblies, molecular networks and systems, pharmaco- and chemogenomics, computer-assisted screening strategies, as well as novel technologies for the de novo design of biologically active molecules. As a unique feature Molecular Informatics will publish so-called "Methods Corner" review-type articles which will feature important technological concepts and advances within the scope of the journal.&lt;/blockquote&gt;&lt;br /&gt;Apparently there's an "open access" option but I cannot find any details.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-1820778846135431667?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=K03N6YBn9hU:i9BDwftCzso:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=K03N6YBn9hU:i9BDwftCzso:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=K03N6YBn9hU:i9BDwftCzso:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/K03N6YBn9hU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/1820778846135431667/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=1820778846135431667" title="4 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/1820778846135431667?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/1820778846135431667?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/08/cheminformatics-journal-by-any-other.html" title="A cheminformatics journal by any other name..." /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">4</thr:total></entry><entry gd:etag="W/&quot;A0EARHoyfSp7ImA9WxJbEkU.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-1151771631348284706</id><published>2009-07-22T11:58:00.000-07:00</published><updated>2009-07-22T12:07:25.495-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-07-22T12:07:25.495-07:00</app:edited><title>Services built around open source software</title><content type="html">&lt;blockquote&gt;Computer-aided chemistry is used today by all the major high-technology companies that are active in chemistry. Just like the meteorologist uses computers to forecast the weather, computers can be used to simulate and predict properties of molecules. This approach is documented to give companies and scientists a high return on investment. But few companies have the resources and skills to make it a reality. The cost of hardware, software, and specialized scientists makes this approach unattainable to most. hBar Lab addresses this problem by putting the required technology online. With hBar Lab there is:&lt;ul&gt;&lt;li&gt;   No need for expensive hardware&lt;/li&gt;&lt;li&gt;   No upfront payment for software&lt;/li&gt;&lt;li&gt;   User-friendly interface makes it accessible for everyone, no specialized scientist necessary.&lt;/li&gt;&lt;/ul&gt;&lt;/blockquote&gt;&lt;i&gt;Source: &lt;a href="http://www.hbar-lab.com/about/"&gt;hBar Lab - Computer-aided Chemistry On Demand&lt;/a&gt;&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;Support and consulting have always been ways of deriving income from open source software, but the web introduces new possibilities centered around web services. I have recently become aware of &lt;a href="http://www.hbar-lab.com/"&gt;hBar Lab&lt;/a&gt;, whose web application is built entirely on open source software (MPQC, OpenBabel, Jmol) and who perform on-demand calculation of molecular properties:&lt;blockquote&gt;The user login, select the property, e.g. ionization energy or geometry, and the molecule of interest, and then submit the query. The required calculations are seamlessly executed on computers in the background and once the calculations are done, the results will be returned in the user's inbox. It is as simple as that.&lt;/blockquote&gt;An interesting idea.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-1151771631348284706?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=gnSdbapxfX4:1FxEyATYIZk:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=gnSdbapxfX4:1FxEyATYIZk:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=gnSdbapxfX4:1FxEyATYIZk:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/gnSdbapxfX4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/1151771631348284706/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=1151771631348284706" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/1151771631348284706?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/1151771631348284706?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/07/services-built-around-open-source.html" title="Services built around open source software" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total></entry><entry gd:etag="W/&quot;DUIFQ384fCp7ImA9WxJbEkU.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-766166588751530673</id><published>2009-07-22T11:09:00.000-07:00</published><updated>2009-07-22T11:31:52.134-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-07-22T11:31:52.134-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="twirlymol" /><title>TwirlyMol - Status update re world domination</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_x5Hz3F0jd4Q/SWcYh7EatoI/AAAAAAAAAsA/6rcr2uHD1x4/s400/molecule.png"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 230px; height: 213px;" src="http://3.bp.blogspot.com/_x5Hz3F0jd4Q/SWcYh7EatoI/AAAAAAAAAsA/6rcr2uHD1x4/s400/molecule.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;a href="http://baoilleach.blogspot.com/2009/01/twistymol-is-dead-long-live-twirlymol.html"&gt;TwirlyMol&lt;/a&gt; was the world's first Javascript molecular viewer &lt;i&gt;with shadows&lt;/i&gt;. It has been described as "and of course the shadows are cool" by Felix of &lt;a href="http://chemical-quantum-images.blogspot.com/"&gt;Chemical Quantum Images&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Although TwirlyMol was only released into the wild to fend for itself in January, it has swiftly outpaced Chime and is rapidly approaching Jmol-like levels of deployment.&lt;br /&gt;&lt;br /&gt;Well, almost. At least one &lt;strike&gt;other&lt;/strike&gt; person is &lt;a href="http://baoilleach.blogspot.com/2009/01/twistymol-is-dead-long-live-twirlymol.html#comment-2330134350019603569"&gt;using it&lt;/a&gt; anyway. As part of a chemistry education project at the University of Wisconsin, TwirlyMol is being used on the &lt;a href="http://wiki.chemprime.chemeddl.org/index.php/Help_for_contributors"&gt;ChemPrime wiki&lt;/a&gt; and on a &lt;a href="http://chemed.chem.wisc.edu/chempaths/From-Waves-to-Orbitals/Multi-Atom-Molecules.html"&gt;student education portal&lt;/a&gt;, both of which look like two interesting resources under development. However, you should be warned - the TwirlyMol shadows have been removed!&lt;br /&gt;&lt;br /&gt;TwirlyMol is freely available under a do-what-you-want-with-it license. You can even (*sob*) remove the shadows.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-766166588751530673?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=kzDNE3wWvQE:Tp-91NU-y4M:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=kzDNE3wWvQE:Tp-91NU-y4M:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=kzDNE3wWvQE:Tp-91NU-y4M:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/kzDNE3wWvQE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/766166588751530673/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=766166588751530673" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/766166588751530673?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/766166588751530673?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/07/twirlymol-status-update-re-world.html" title="TwirlyMol - Status update re world domination" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_x5Hz3F0jd4Q/SWcYh7EatoI/AAAAAAAAAsA/6rcr2uHD1x4/s72-c/molecule.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;DEYMR306cCp7ImA9WxNRE0w.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-5506681331702119022</id><published>2009-07-15T08:03:00.000-07:00</published><updated>2009-09-07T02:36:26.318-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-09-07T02:36:26.318-07:00</app:edited><title>ANN: Symposium on Visual Analysis of Chemical Data (ACS Spring 2010)</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://farm4.static.flickr.com/3159/3026852045_0911380467_m.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 240px; height: 180px;" src="http://farm4.static.flickr.com/3159/3026852045_0911380467_m.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;b&gt;Update 06/Sept/09:&lt;/b&gt; See &lt;a href="http://baoilleach.blogspot.com/2009/09/now-open-for-submissions-symposium-on.html"&gt;second call&lt;/a&gt; for papers.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;center&gt;First Call for Papers:&lt;br /&gt;Visual Analysis of Chemical Data&lt;br /&gt;239th ACS National Meeting&lt;br /&gt;San Francisco, March 21-25, 2010&lt;br /&gt;CINF Division&lt;/center&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Dear Colleagues,&lt;br /&gt;&lt;br /&gt;We wish to announce an upcoming symposium focusing on innovative methods for visual representation and analysis of chemical data. Just as Edward Tufte has championed maximizing clarity and information content in statistical graphics, there is a need for methods to display chemical information that will maximize understanding, and allow rapid analysis and decision making.&lt;br /&gt;&lt;br /&gt;We invite you to submit contributions that address various aspects of visualization of chemical data (such as structures, SAR data, literature, patents) including, but not limited to, the following topics:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;With an ever increasing pool of descriptors, along with new and more sophisticated machine learning methods, QSAR models are becoming more difficult to interpret. How can information on model reliability, the presence of activity cliffs, and the range of applicability of a model and other relevant model properties be easily depicted?&lt;/li&gt;&lt;li&gt;Recently, virtual worlds 3D such as Second Life have presented new opportunities and challenges for the representation of chemical data. What is the potential of such a medium in education and communicating with the chemistry community?&lt;/li&gt;&lt;li&gt;Social software allows for rapid and convenient sharing of chemical data.  Examples include Google Spreadsheets, ManyEyes, DabbleDB, and wikis, including Wikipedia.  What are the implications for chemical research and education?&lt;/li&gt;&lt;li&gt;The visualization of the contents of large chemical datasets presents particular problems. How can an overview of the dataset be visualized so that it presents both the nature of the contents as well as the degree of diversity and similarity within the dataset? How can different datasets be visually compared?&lt;/li&gt;&lt;li&gt;Depicting 3D chemical information in 2D involves a loss of information. However, innovative 2D visualization methods can restore the most relevant information.&lt;/li&gt;&lt;li&gt;Chemical information comprises a diverse array of data types including chemical structures and diagrams (2D and 3D), associated assay results, conformations, QSAR models and their predictions. The visualization and integration of all these data into a single interface that aids interpretation and analysis is a continuing challenge.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;We would also like to point out that sponsorship opportunities are available.&lt;br /&gt;&lt;br /&gt;The on-line abstract submission system (&lt;a href="http://abstracts.acs.org/chem/239nm/"&gt;PACS&lt;/a&gt;) will be open for submissions from 24th August. A second announcement will be made at that time.&lt;br /&gt;&lt;br /&gt;Please contact Andrew, Jean-Claude or myself if you have any questions.&lt;br /&gt;&lt;br /&gt;Yours sincerely,&lt;br /&gt;   Noel O'Boyle&lt;br /&gt;&lt;br /&gt;On behalf of the symposium organizers:&lt;br /&gt;&lt;br /&gt;Dr. Jean-Claude Bradley,&lt;br /&gt;Drexel University, PA&lt;br /&gt;bradlejc@drexel.edu&lt;br /&gt;&lt;br /&gt;Dr. Andrew Lang,&lt;br /&gt;Oral Roberts University, OK&lt;br /&gt;alang@oru.edu&lt;br /&gt;&lt;br /&gt;Dr. Noel O’Boyle,&lt;br /&gt;Cambridge Crystallographic Data Centre, U.K.&lt;br /&gt;oboyle@ccdc.cam.ac.uk&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Image credit:&lt;/b&gt; &lt;a href="http://www.flickr.com/photos/prehensile/"&gt;prehensile&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-5506681331702119022?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=DJIelNHsDYU:j_Qba_YyBiI:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=DJIelNHsDYU:j_Qba_YyBiI:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=DJIelNHsDYU:j_Qba_YyBiI:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/DJIelNHsDYU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/5506681331702119022/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=5506681331702119022" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/5506681331702119022?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/5506681331702119022?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/07/ann-symposium-on-visual-analysis-of.html" title="ANN: Symposium on Visual Analysis of Chemical Data (ACS Spring 2010)" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total></entry><entry gd:etag="W/&quot;CE8GRnc5cSp7ImA9WxJVGUU.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-1219001628915273130</id><published>2009-07-07T08:50:00.000-07:00</published><updated>2009-07-07T09:07:07.929-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-07-07T09:07:07.929-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="python" /><title>Sledgehammer, meet nut - Using Eclipse for Python</title><content type="html">I usually use gvim or IDLE to edit Python files, but today I thought I'd try something a bit more heavyweight: &lt;a href="http://eclipse.org/"&gt;Eclipse&lt;/a&gt;. Eclipse is widely used in the Java world. It's open source and freely available, and most importantly there is a Python plugin for Eclipse called &lt;a href="http://pydev.sf.net/"&gt;PyDev&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;So what does Eclipse have that IDLE doesn't? Well, integration with the Python debugger for a start. Also, this sort of code completion is quite handy (click for a larger image):&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_x5Hz3F0jd4Q/SlNwKq22M3I/AAAAAAAAAt0/eliN5O1NApo/s1600-h/blogpydev.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://2.bp.blogspot.com/_x5Hz3F0jd4Q/SlNwKq22M3I/AAAAAAAAAt0/eliN5O1NApo/s400/blogpydev.png" alt="" id="BLOGGER_PHOTO_ID_5355747710478988146" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;It also has nice integration with &lt;a href="http://www.logilab.org/project/pylint"&gt;PyLint&lt;/a&gt; (see the bottom pane in the following figure) which catches various errors (e.g. mispelled variables) before you run a script:&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_x5Hz3F0jd4Q/SlNwWOxuCAI/AAAAAAAAAt8/reFf5dRiMko/s1600-h/blogpydev_b.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 301px;" src="http://4.bp.blogspot.com/_x5Hz3F0jd4Q/SlNwWOxuCAI/AAAAAAAAAt8/reFf5dRiMko/s400/blogpydev_b.png" alt="" id="BLOGGER_PHOTO_ID_5355747909099718658" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Here are some notes:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;I followed these &lt;a href="http://pydev.sourceforge.net/download.html"&gt;installation instructions&lt;/a&gt; and then sped through the &lt;a href="http://www.fabioz.com/pydev/manual_101_root.html"&gt;manual&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;Pydev currently supports Eclipse 3.2 to 3.4. It took a while to find an Eclipse download page with version 3.4 but &lt;a href="http://download.eclipse.org/eclipse/downloads/"&gt;here&lt;/a&gt; it is. I installed Eclipse SDK 3.4.2.&lt;/li&gt;&lt;li&gt;Start Eclipse, and click on Help/Software Updates. Add http://pydev.sourceforge.net/updates/ to the list of update sites. Tick the box and click Install to install PyDev.&lt;/li&gt;&lt;li&gt;Following the details at http://www.fabioz.com/pydev/manual_101_interpreter.html, I added a Python interpreter (Name="Python 2.5", Executable="C:\Python25\python.exe").&lt;/li&gt;&lt;li&gt;Installing pylint on Windows is a pain, so I used &lt;a href="http://peak.telecommunity.com/DevCenter/EasyInstall"&gt;easy install&lt;/a&gt;:&lt;pre&gt;C:\Python25\Scripts\easy_install.exe pylint&lt;/pre&gt; In the PyLint configuration, you need to specify the location of lint.py. Mine was at C:\Python25\Lib\site-packages\pylint-0.18.0-py2.5.egg\pylint\lint.py.&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-1219001628915273130?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=qTZDhqq8jWY:aA8_FDiWOEE:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=qTZDhqq8jWY:aA8_FDiWOEE:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=qTZDhqq8jWY:aA8_FDiWOEE:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/qTZDhqq8jWY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/1219001628915273130/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=1219001628915273130" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/1219001628915273130?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/1219001628915273130?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/07/sledgehammer-meet-nut-using-eclipse-for.html" title="Sledgehammer, meet nut - Using Eclipse for Python" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_x5Hz3F0jd4Q/SlNwKq22M3I/AAAAAAAAAt0/eliN5O1NApo/s72-c/blogpydev.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;CEcGR3Y8eSp7ImA9WxJVEkU.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-3514966645849351370</id><published>2009-06-29T06:16:00.000-07:00</published><updated>2009-06-29T06:27:06.871-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-06-29T06:27:06.871-07:00</app:edited><title>I'll fix the bug...but only if you give me a public domain test file</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_x5Hz3F0jd4Q/RoSwNm96JQI/AAAAAAAAAVk/6PbFyht0f60/s1600/mesh.gif"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 160px; height: 120px;" src="http://3.bp.blogspot.com/_x5Hz3F0jd4Q/RoSwNm96JQI/AAAAAAAAAVk/6PbFyht0f60/s1600/mesh.gif" border="0" alt="" /&gt;&lt;/a&gt;Recently, &lt;a href="http://avogadro.sf.net"&gt;Avogadro&lt;/a&gt;/&lt;a href="http://openbabel.org"&gt;OpenBabel&lt;/a&gt; have been increasing their support for computational chemistry log files. I am hoping that they will learn from our experience at GaussSum/cclib. &lt;br /&gt;&lt;br /&gt;&lt;a href="http://gausssum.sf.net"&gt;GaussSum&lt;/a&gt; was the first Python program I ever wrote, and still bears the hallmarks. When I first started GaussSum (a program which analyses the results of comp chem calculations), I would use the test cases from users to fix bugs. Then over time, I'd lose the test cases as I moved from computer to computer. I couldn't place the test cases in my version control system as the test cases might have been the results of someone's research, and they mightn't be happy to see them publicly available.&lt;br /&gt;&lt;br /&gt;Things came to head when dealing with the parsing of vibrational frequencies in the various versions of GAMESS. It turned out that each version of GAMESS (PC-GAMESS, WinGAMESS and GAMESS US) had slightly different output for vibrational frequencies. I ended up bouncing between code that worked for WinGAMESS but not GAMESS and vice versa, depending on who sent me the last bug report. In other words, I was wasting my time fixing bugs which might reappear later. It was around this time that (a) I realised I needed a test suite, and (b) I needed public domain test files, so I could use them in my test suite.&lt;br /&gt;&lt;br /&gt;The parser used by GaussSum is now available as a separate project, &lt;a href="http://cclib.sf.net"&gt;cclib&lt;/a&gt;, and is developed in collaboration with Adam Tenderholt and Karol Langner. This time I put a lot of thought into the test suite, and I think we've done very well. The parsers are initially developed using a set of calculations which are the same for each comp chem package; our test suite ensures that the same results are found in each case and that the units are consistent. We only fix bugs for which a public domain test file is provided ("I place this file in the public domain" is all we need to hear), and regression tests are easily added to the test suite. Our test suite has the final say on commits; commits are reverted if they cause an existing test to fail. This guarantees that cclib can only improve over time.&lt;br /&gt;&lt;br /&gt;The inevitable consequence of this policy is that some reported bugs don't get fixed. Sometimes the reporter simply does not respond to the query to place it in the public domain. On two occasions, the reporter was working in a pharmaceutical company and felt it was more hassle than it was worth to do the necessary paperwork to place it in the public domain. So it goes... On the other hand, we do now have a set of more than 200 comp chem log files which go a long way to ensuring that our parsers can handle anything that is thrown at them. The best way of getting these files is to check the &lt;a href="http://cclib.svn.sourceforge.net/viewvc/cclib/trunk/data/"&gt;data&lt;/a&gt; directory of cclib out of subversion and run wget.sh.&lt;br /&gt;&lt;br /&gt;In conclusion, if you are thinking of writing software that handles comp chem files, either try to collaborate with others who are working on the same problem (e.g. cclib or OpenBabel), or at the very least take into account some of the comments here. Otherwise, you are simply building a house of cards.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-3514966645849351370?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=cLQ4HCCqPuY:0tR2qOfJ8yY:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=cLQ4HCCqPuY:0tR2qOfJ8yY:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=cLQ4HCCqPuY:0tR2qOfJ8yY:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/cLQ4HCCqPuY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/3514966645849351370/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=3514966645849351370" title="7 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/3514966645849351370?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/3514966645849351370?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/06/ill-fix-bugbut-only-if-you-give-me.html" title="I'll fix the bug...but only if you give me a public domain test file" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_x5Hz3F0jd4Q/RoSwNm96JQI/AAAAAAAAAVk/6PbFyht0f60/s72-c/mesh.gif" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">7</thr:total></entry><entry gd:etag="W/&quot;DEECQno9eSp7ImA9WxJWFE8.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-8786195409056253175</id><published>2009-06-19T08:39:00.000-07:00</published><updated>2009-06-19T08:51:03.461-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-06-19T08:51:03.461-07:00</app:edited><title>Using PyActiveResource to access ChemCaster</title><content type="html">&lt;a href="http://chemcaster.com/"&gt;ChemCaster&lt;/a&gt;, from Rich's &lt;a href="http://metamolecular.com/"&gt;Metamolecular&lt;/a&gt;, is a platform for developing web-based cheminformatics applications. The advantage of such a system is that the user does not need to install any special software, nor does the application developer need to maintain a server.&lt;br /&gt;&lt;br /&gt;Rich invited me to take it for a spin, so I signed up for a trial account and moved quickly on to my first problem, how do I access the API through Python? &lt;br /&gt;&lt;br /&gt;It turns out that RESTful APIs tend to have common patterns, a fact which is taken advantage of by &lt;a href="http://api.rubyonrails.org/files/vendor/rails/activeresource/README.html"&gt;Active Resource&lt;/a&gt;, a Ruby library for defining classes which directly map onto the objects implied by a RESTful API. Or something like that - I neglected to read any documentation. Instead I just took Rich's &lt;a href="http://products.metamolecular.com/2009/05/09/the-chemcaster-web-api"&gt;example&lt;/a&gt; and tried to code it up in Python using &lt;a href="http://code.google.com/p/pyactiveresource/"&gt;PyActiveResource&lt;/a&gt; (this is a documentation-free project so using it is quite exciting).&lt;br /&gt;&lt;br /&gt;Et voil&amp;aacute;&lt;script src="http://gist.github.com/125429.js"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-8786195409056253175?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=9kMN3GSqtYA:RliWNxYAxwk:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=9kMN3GSqtYA:RliWNxYAxwk:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=9kMN3GSqtYA:RliWNxYAxwk:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/9kMN3GSqtYA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/8786195409056253175/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=8786195409056253175" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/8786195409056253175?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/8786195409056253175?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/06/using-pyactiveresource-to-access.html" title="Using PyActiveResource to access ChemCaster" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></entry><entry gd:etag="W/&quot;AkcHRnY9cCp7ImA9WxJXF00.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-5885228083612353951</id><published>2009-06-09T01:32:00.000-07:00</published><updated>2009-06-11T01:13:57.868-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-06-11T01:13:57.868-07:00</app:edited><title>From zero to Zotero - One man's journey out of PDF hell</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://farm4.static.flickr.com/3180/3007800629_55a3cf70e1_m.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 240px; height: 180px;" src="http://farm4.static.flickr.com/3180/3007800629_55a3cf70e1_m.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;a href="http://www.zotero.org"&gt;Zotero&lt;/a&gt; is a reference management software. Sorry, let me correct that - Zotero is &lt;b&gt;THE&lt;/b&gt; reference management software.  I had tried Zotero before, and it certainly looked good; but frankly I couldn't figure out how to get it to work and so reverted to my usual system, the 'zero' of the title. Hearing the &lt;a href="http://quintessenceofham.org/2009/06/04/thomson-reuters-lawsuit-dismissed/"&gt;news&lt;/a&gt; that Endnote vs. Zotero was just thrown out of court, I decided to try it again.&lt;br /&gt;&lt;br /&gt;And it's just amazing.&lt;br /&gt;&lt;br /&gt;Let me begin by describing a typical workflow:&lt;br /&gt;(1) Go to the summary page for an ACS paper online&lt;br /&gt;(2) Click on the icon that appears in the address bar (looks like a sheet of paper with writing).&lt;br /&gt;&lt;br /&gt;That's it. You've just saved the PDF, the HTML full-text and the paper's metadata.&lt;br /&gt;&lt;br /&gt;If you've created an account on zotero.org (free of course!), you can synch your library so that multiple computers can share the same data. And best of all you can also synch the attachments (i.e. PDFs, HTML pages) if you have a WebDAV account (e.g. from your university or in my case, &lt;a href="http://jungledisk.com"&gt;JungleDisk Plus&lt;/a&gt;/Amazon S3). If that wasn't enough, it also integrates with Word to make it easy to prepare a publication (&lt;del&gt;though I haven't tested this&lt;/del&gt; &lt;b&gt;Update&lt;/b&gt;: it works just fine, but you first need to install the bibliographic styles you need from Zotero settings/Preferences/Styles/Get additional styles).&lt;br /&gt;&lt;br /&gt;In other words, Zotero makes it easy to download papers, back them up, make them accessible from any computer and reference them in papers.&lt;br /&gt;&lt;br /&gt;Zotero is open source and freely available from &lt;a href="http://www.zotero.org"&gt;www.zotero.org&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Notes:&lt;/b&gt; I'm using Zotero 2.0b5. In the Zotero preferences (click on the gear icon), choose "Automatically attach PDFs and other files when saving items" in the General Tab. JungleDisk and Amazon cost money (we're talking around $1.50 a month), but there may be free alternatives for WebDAV. For any websites that aren't currently supported by Zotero, adding new translators has been made easy. All of the JavaScript files for the translators are stored in a folder on your computer and can easily be extended or added to. That said, I've had no trouble downloading PDFs from Sciencedirect, ACS, RSC, Wiley or BMC.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Image credit:&lt;/b&gt; &lt;a href="http://www.flickr.com/photos/jazzmodeus/"&gt;jazzmodeus&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-5885228083612353951?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=f6XkKrzUoX0:BpU1TYdGDNE:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=f6XkKrzUoX0:BpU1TYdGDNE:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=f6XkKrzUoX0:BpU1TYdGDNE:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/f6XkKrzUoX0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/5885228083612353951/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=5885228083612353951" title="4 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/5885228083612353951?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/5885228083612353951?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/06/from-zero-to-zotero-one-mans-journey.html" title="From zero to Zotero - One man's journey out of PDF hell" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">4</thr:total></entry><entry gd:etag="W/&quot;DUcHQHgyfSp7ImA9WxJXEUQ.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-6336982203021295111</id><published>2009-06-05T03:09:00.000-07:00</published><updated>2009-06-05T03:17:11.695-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-06-05T03:17:11.695-07:00</app:edited><title>The best time to optimise</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://farm2.static.flickr.com/1175/908946494_c37f4e8970_m.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 240px; height: 180px;" src="http://farm2.static.flickr.com/1175/908946494_c37f4e8970_m.jpg" border="0" alt="" /&gt;&lt;/a&gt;As a scientist, I worry more about bugs in software than about speed. Changing correct code to improve speed can introduce errors as well as make it unreadable for others. Sometimes though it's nice to find cases where simple changes can improve the performance.&lt;br /&gt;&lt;br /&gt;The 3D structure generation code in OpenBabel uses templates to handle the geometry of rings. There are about 2500 templates, which are represented by SMARTS patterns and associated coordinates (see fragments.txt in the distribution). The SMARTS patterns are ordered from large to small. Now, testing 2500 SMARTS patterns against a molecule takes a wee while so I was interested in seeing whether the process could be speeded up.&lt;br /&gt;&lt;br /&gt;To begin with, I timed the code for a test set of 1000 PubChem molecules: it took 60ms per structure. Considering that the easiest way to speed something up is to avoid doing it in the first place, I changed the loop to terminate once all ring atoms had been matched. This brought it down to 38ms per structure. Then I changed it so that it skipped any SMARTS patterns that had more atoms than the number of ring atoms in the molecule: now down to 30ms. This is now within an order of magnitude of greased lightning.&lt;br /&gt;&lt;br /&gt;In fact, I could have done slightly better than this; I could have skipped any SMARTS patterns with more atoms than the number of atoms in the largest isolated ring system in the molecule. Calculating this value is a bit of work though and may offset the associated performance gain, and so this has been left as an exercise for the reader.&lt;br /&gt;&lt;br /&gt;How else could this code be speeded up? Well, the SMARTS matcher can itself be improved. It currently uses an exhaustive depth-first search algorithm instead of something more optimal like Vflib2. This would improve performance across the board as the SMARTS code is widely used for a variety of tasks. Alternatively, the SMARTS patterns could be fingerprinted based on particular common patterns, e.g. 5-membered rings. If a molecule had no 5-membered rings, such patterns could be skipped.&lt;br /&gt;&lt;br /&gt;To begin with, though, the code should be profiled more precisely. It may be that 25 of those 30ms have nothing to do with this loop. In that case, further optimisations may be more work than they are worth. &lt;br /&gt;&lt;br /&gt;These are the sorts of small studies that would fit nicely into a summer project for an undergrad computer science or chemistry student. If you want to sponsor OpenBabel development in this way, &lt;a href="mailto:openbabel-devel@lists.sf.net"&gt;contact us&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Image credit:&lt;/b&gt; &lt;a href="http://www.flickr.com/photos/laserstars/"&gt;jpctalbot&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-6336982203021295111?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=SJ9LFPmEaRU:FTbjbXYznJQ:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=SJ9LFPmEaRU:FTbjbXYznJQ:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=SJ9LFPmEaRU:FTbjbXYznJQ:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/SJ9LFPmEaRU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/6336982203021295111/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=6336982203021295111" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/6336982203021295111?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/6336982203021295111?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/06/best-time-to-optimise.html" title="The best time to optimise" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry gd:etag="W/&quot;CkQDRncyeSp7ImA9WxJQFEg.&quot;"><id>tag:blogger.com,1999:blog-7844526396210378482.post-218542366793194929</id><published>2009-05-27T09:13:00.000-07:00</published><updated>2009-05-27T11:52:57.991-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-05-27T11:52:57.991-07:00</app:edited><title>The RSC - Value for money?</title><content type="html">I don't usually advertise for chemical societies, but in these recessionary times I thought the following might be of interest to some readers.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.rsc.org"&gt;RSC&lt;/a&gt; members have:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;free access to Wiley, Elsevier, and Springer chemistry journals&lt;/li&gt;&lt;li&gt;free access to 913 chemistry e-books from a variety of sources&lt;/li&gt;&lt;li&gt;20% off Pearson Education Books, 30% off Wiley, 35% off Blackwell&lt;/li&gt;&lt;li&gt;and most importantly, £5 off Pizza Express Club membership&lt;/li&gt;&lt;/ul&gt;Sure, chemistry societies organise conferences, enable networking, provide travel grants, and lobby politicians; but any society that doesn't look after its most vulnerable members by providing discounted pizza is not a society I want to be a member of.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7844526396210378482-218542366793194929?l=baoilleach.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=xmQqTEoN46I:R2BFrFIjrco:ANkz6nJbUoM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?d=ANkz6nJbUoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/baoilleach?a=xmQqTEoN46I:R2BFrFIjrco:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/baoilleach?i=xmQqTEoN46I:R2BFrFIjrco:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/baoilleach/~4/xmQqTEoN46I" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://baoilleach.blogspot.com/feeds/218542366793194929/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=7844526396210378482&amp;postID=218542366793194929" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/218542366793194929?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7844526396210378482/posts/default/218542366793194929?v=2" /><link rel="alternate" type="text/html" href="http://baoilleach.blogspot.com/2009/05/rsc-value-for-money.html" title="The RSC - Value for money?" /><author><name>baoilleach</name><uri>http://www.blogger.com/profile/03288289351940689018</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="03091106344090647864" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></entry></feed>
