bluuebunny/crossref_metadata_2025 huggingface dataset:
Open Benchmarks for Cheminformatics: First Performance Comparison Between CDK and MX
Authors: Apodaca Richard L.
Published: December 2024

The previous article in this series discussed Japex in the context of creating open cheminformatics benchmarks. If you’re not familiar with it, Japex is a microbenchmarking framework written in Java that does for benchmarking what Ant does for building projects. Among its many interesting features is the ability to generate bar charts for performance comparisions.
Grand Challenges in Cheminformatics
Authors: Apodaca Richard L.
Published: December 2024

Indiana University will host a workshop titled “eScience for Cheminformatics and Drug Discovery 2008.” Among the topics to be covered is “grand challenges in cheminformatics.” From Wikipedia, a “grand challenge” is “a fundamental problem in science or engineering, with broad applications, whose solution would be enabled by the application of high performance computing resources that could become available in the near future.” The term has also
A Lightweight and Portable Java Interface to InChI
Authors: Apodaca Richard L.
Published: December 2024

If you work in cheminformatics and you use Java, you’ll eventually face the problem of how to generate InChIs in Java. This blog has covered a few approaches to integrating InChI over the years, including the use of SWIG to statically link to the InChI code and NestedVM to compile the InChI C source into Java bytecode. NestedVM ports much better than SWIG, but at the price of a performance penalty on the order of 10-20 fold.
Open Source and Open Data: Why We Should Eat Our Own Dogfood
Authors: Apodaca Richard L.
Published: December 2024

Why did PubChem, the granddaddy of all open chemistry databases, choose a closed, proprietary toolkit for its software infrastructure? A recent Depth-First article highlighted twelve free chemistry databases. Of those for which information is available, many have chosen the same path as PubChem. Why is this? A huge opportunity is being wasted every time this happens.
ACS Versus Leadscope - Leadscope Tells Its Story in Court Document
Authors: Apodaca Richard L.
Published: December 2024

The continuing legal battle between ACS and Leadscope is more than just a longwinded courtroom drama. The documents this case is forcing into the public record raise serious questions about the behavior of ACS, the world’s largest scientific organization, and Chemical Abstracts Service (CAS), its largest source of revenue and a giant in the world of scientific informatics.
Hacking NMRShiftDB
Authors: Apodaca Richard L.
Published: December 2024

NMRShiftDB is an open web database of peer-reviewed NMR chemical shifts compiled by volunteers. As of this writing, it contains 22,429 measured spectra from 18,986 structures, and reports 927 registered users. The database code itself is open source.
An Introduction to Foldit
Authors: Apodaca Richard L.
Published: December 2024

Foldit is a multiplayer video game with the goal of solving unsolved structural biology problems. It’s an example of what Louis Van Ahn calls ‘Games with a Purpose’. Recently Foldit players helped solve the crystal structure M-PMV retroviral protease. Foldit is quite playable and enjoyable in its own right, at least on the training levels I worked through.
Purr: A SMILES Toolkit for Rust
Authors: Apodaca Richard L.
Published: December 2024

Simplified Molecular Input Line Entry System (SMILES) is the de facto standard for compact molecular representation in cheminformatics. Due to this role, users have come to expect SMILES support in the software packages they use. Developers have responded to the demand with a wide range of products capable of reading and writing SMILES. These products form a broad network of tools that can in principle work together through a common language.
A Comprehensive Guide FlexMol, A Modern Language for Chemical Representation Part 1: Outlining the Problem
Authors: Apodaca Richard L.
Published: December 2024

Here’s a simple question: what’s the best way to draw ferrocene? This question was posed in a recent article on Metallome. It turns out there are some differences of opinion. But this problem isn’t limited to ‘drawing’ ferrocene - it extends to storing, transmitting, and manipulating representations of ferrocene with computers. And it isn’t simply limited to ferrocene and multicentered bonding - it extends to stereochemistry as well.
Introducing MX - Lightweight and Free Cheminformatics Tools for Java
Authors: Apodaca Richard L.
Published: December 2024

If you want to build cheminformatics software of any kind, you’ll need a basic toolkit. Ideally, this toolkit contains all of the low-level functionality used over and over in your projects. Tools for building an in-memory molecular representation, exact- and substructure comparison, and reading/writing molfiles all fall into this category. Also ideally, this toolkit should be free.
Follow the Money: American Chemical Society Income at a Glance
Authors: Apodaca Richard L.
Published: December 2024

The chart above was compiled from American Chemical Society (ACS) audited financial statements for the years 2007-2011. Regardless of how you view ACS, one thing is undeniable: “Electronic Services” are a huge and growing part of the annual ACS income. The graph above is shown in percentage terms. To give some perspective, total ACS revenues in 2011 stood at $499.8 million. Electronic services made up 81% of that total, or $403.8 million.
Chrome and a V8: JavaScript Takes a Giant Leap Forward?
Authors: Apodaca Richard L.
Published: December 2024

Back when I started writing Java software in 1997, the Java Virtual Machine was

slow

. It was so slow that for years, many developers abandoned all hope of using the language for “serious” work once it became clear how much slower it was than C and C++. Eleven years of Moore’s Law compounding, and countless JVM optimizations later, Java is so fast today that relative speed is rarely even considered when developing client and server
How I Bought and Estimated the Purity of Sodium Dichloroacetate
Authors: Apodaca Richard L.
Published: December 2024

By early June I’d finished chemoradiotherapy to stop further growth of a terminal brain cancer. There was a scheduled six-week pause to “give my body a break,” but the main questions on my mind were whether or not to take that break and if not, what to do instead. I had no interest in giving the thing that was still left in my brain breathing room, so I looked into treatments that a person with training but limited resources could try.
Electric Cars and Open Access
Authors: Apodaca Richard L.
Published: December 2024

The 2006 documentary

Who Killed the Electric Car?

should give anyone involved with Open Access reason to ponder. The film tells the story of GM’s electric car experiment (the EV1) in California and its eventual failure. Open Access bears a striking resemblance to the electric car, including the ways parties on both sides frame the discussion, the market dynamics involved, and steps by government to mandate a solution.
Simple 3D Conformer Generation with Smi23D
Authors: Apodaca Richard L.
Published: December 2024

Three-dimensional conformer generation is a common problem in cheminformatics. The most convenient and generally-useful method for creating chemical structures is the 2D chemical structure editor; applications that require three-dimensional representations need a way to generate reasonable coordinates from 2D user input. Until recently, there were no options for doing so with Open Source software.
Install PyMOL on Ubuntu Linux
Authors: Apodaca Richard L.
Published: December 2024

PyMOL can be tricky to install on Linux. The tutorial describes two ways to install PyMOL on Ubuntu Oneiric - through the package manager and by compiling source. This video is the first lesson of what I hope will become a free introductory online video course on PyMOL that will be hosted right here. Comments and suggestions are welcome.
Building Chempedia: Deployment with Heroku and EC2
Authors: Apodaca Richard L.
Published: December 2024

Developing a Web application is one thing but deploying it is quite another - and not in a good way. If you’ve ever had to install, configure and maintain a production server from scratch, you may know the job as being both tedious and thankless. That’s why Metamolecular is doing something different for the re-launch Chempedia. Rather than provisioning a server from scratch, as we’ve done with previous applications, we’re giving Heroku a shot.
Edmonds' Blossom Algorithm Part 1: Cast of Characters
Authors: Apodaca Richard L.
Published: December 2024

Many problems in business and science can be cast in terms of

graph matching

. Given an undirected graph, a matching is a subgraph in which every node has a degree of one. It’s often important to find a matching that contains the most possible edges. This is the maximum matching problem. Although the concept is easy to understand, algorithms for finding maximum matchings tend to be complex.
Sixty-Four Free Chemistry Databases
Authors: Apodaca Richard L.
Published: December 2024

It’s been over two years since Thirty-Two Free Chemistry Databases first appeared here. The popularity of this resource has far exceeded my expectations, and continues to be one of the most highly-viewed articles on Depth-First. But a lot has changed in the intervening two years. Many new services have appeared. Old services have evolved.
The ACS Versus Leadscope Case
Authors: Apodaca Richard L.
Published: December 2024

The Ohio Supreme Court recently announced that it will hear an appeal brought by the ACS in its long-running legal conflict with Leadscope. Given the lengthy and complex path this case taken, I thought it might be useful to summarize in one place how ACS and Leadscope got to this point.
InChI Syntax
Authors: Apodaca Richard L.
Published: December 2024

InChI is an IUPAC standard and software package for chemical identification. For most small organic molecules likely to be found in a drug discovery program, a stockroom, or a chemical database, the InChI software creates a unique character sequence. InChI is useful because it enables fast exact-structure lookup within a single database and among different databases.
Googling for Molecules: New and Improved InChIMatic
Authors: Apodaca Richard L.
Published: December 2024

InChIMatic, as described previously, is a new service that lets you perform exact structure searches on the Web using Google. A new version offers searching via several other search engines and features a streamlined interface. The screenshot below shows the the current search engine options with 1-bromonaphthalene in the editor window. There are noticeable differences in the abilities of search engines other than Google to find InChIs.
What the Heck is the Semantic Web?
Authors: Apodaca Richard L.
Published: December 2024

Egon Willighagen has been posting an interesting series of articles on the use of RDF in chemistry, the latest being this one. Being totally ignorant of what RDF is and why it’s important, I challenged Egon to offer a simple explanation, preferably in the form of a video, graphic, or short paragraph. In the meantime, I started doing my own digging. I found what I was looking for.
Molecule of the Day: Carminic Acid
Authors: Apodaca Richard L.
Published: December 2024

Source: Molecule of the Day

Rendering: ChemWriter
Open Babel 2.2.0
Authors: Apodaca Richard L.
Published: December 2024

Open Babel 2.2.0 has been released. This version introduces a variety of new features and improvements. It also includes the Ruby Open Babel interface that allows scripting through the popular Ruby language; Ruby Open Babel can be installed both quickly and easily. Further details are available from the release notes. Future articles will highlight some of the new Open Babel features using Ruby.
ProtoSMILES
Authors: Apodaca Richard L.
Published: December 2024

SMILES is a de facto standard for chemical information exchange. Although there may be broad agreement on the technical underpinnings of SMILES, many important details have been left to individual interpretation. The lack of specificity offers a shaky foundation on which to build desperately-needed data standardization efforts. This article talks about the problem, and offers one possible path forward. What is SMILES?
Graphs in Rust: Introducing Gamma
Authors: Apodaca Richard L.
Published: December 2024

Graphs pervade science and technology. As such, many kinds of software projects rely on a graph library. This article introduces Gamma, a new graph library written in Rust. Motivation Graphs are used heavily within

cheminformatics

, a field concerned with the collection, storage, and retrieval of information about substances. Most cheminformatics systems use a library for manipulating molecular structures.
Cheminformatics Puzzler #2: Planar Chiral Paracyclophanes
Authors: Apodaca Richard L.
Published: December 2024

Without using 3D coordinates, represent the chirality of this class of planar chiral paracyclophanes (hint).
Chemical Markup Language and Ferrocene Part 2 - Cyclopentadienyl Anion
Authors: Apodaca Richard L.
Published: December 2024

The representation of ferrocene is a longstanding problem in cheminformatics. What makes ferrocene a problem is that the deeply entrenched simplification that covalent bonds only ever consist of two atoms sharing a multiple of two electrons simply doesn’t apply. When we try to stick with this model anyway, Bad Things can happen. This is a problem that deserves attention and vigorous debate.
Reading Large SDfiles in Rust
Authors: Apodaca Richard L.
Published: December 2024

Chemical data analysis pipelines often start with reading SDfiles, the field’s de facto standard for information exchange. Given the growing size of many chemistry data sets, efficient methods for reading SDfiles have become ever more important. As part of a continuing series on Rust for Cheminformatics, this article takes a hands-on first look at reading arbitrarily large SDfiles in Rust.
Decoding IUPAC Names With OPSIN
Authors: Apodaca Richard L.
Published: December 2024

IUPAC chemical nomenclature is everywhere. It can be found in journal articles, both new and old, on the Web, in databases, on Material Safety Data Sheets (MSDS), in chemical catalogs, and just about anywhere chemical information is found. The rules of this nomenclature are one of the first things taught in Organic Chemistry classes, and entire books are devoted to the subject.
Bryan Vickery on What's Broken in Cheminformatics
Authors: Apodaca Richard L.
Published: December 2024

Bryan Vickery’s interview is interesting on a number of levels, not the least of which being that it appears in an ACS publication. His comments raise the obvious question of

why

does the academic/research community continue to support existing publishing models, complaints notwithstanding. The answer to this question is the key to fixing what’s broken.
JavaScript for Cheminformatics - Calculate Molecular Mass in Your Browser Without Applets, Flash, or Other Plugins
Authors: Apodaca Richard L.
Published: December 2024

Recently, Duan Lian raised the very interesting possibility of using the Google Web Toolkit to cross-compile Java to JavaScript rather than bytecode. I suggested that MX, the lightweight cheminformatics toolkit, might be a good target due its small size, modular design, and lack of external dependencies.
SMILES Validation in the Browser
Authors: Apodaca Richard L.
Published: December 2024

Sometimes Web applications accept molecular input in the form of SMILES strings. For example, a form may allow a list of newline-delimited SMILES to be submitted for processing. Increasingly, users expect realtime validation during these interactions. One option would be an asynchronous HTTP call in which a server validates SMILES strings. But this requires an API to be both available and properly secured.
Mobile Technologies in Chemistry Session at Spring ACS Meeting in San Diego
Authors: Apodaca Richard L.
Published: December 2024

Are you creating a chemistry mobile app or eBook? Are you using mobile technologies in chemical research or education settings? Do you have an interesting story to tell? If so, you’re invited to share your story at the Spring 2012 American Chemical Society Meeting in lovely San Diego, California.
Goodbye Subversion, Hello Git and GitHub
Authors: Apodaca Richard L.
Published: December 2024

A source code version control system is an essential ingredient of software development. But it’s just low-level technology that doesn’t change the way you think about creating software and so can safely be ignored. At least that’s what I thought a couple of months ago before I started looking into Git, the version control system co-developed by Linus Torvalds.
A Beginner's Guide to Parsing in Rust
Authors: Apodaca Richard L.
Published: December 2024

Parsers are crucial for many data processing tasks. Contrary to what appearances might imply, writing a parser from scratch is not difficult given the right starting point. This article presents a flexible system for writing custom parsers for a wide range of languages. It assumes some experience with Rust, but no experience with language theory. More experienced readers might want to skip directly to the Lyn crate.
A Simple Vector Graphics API for Chemical Structure Output Part 1 - In Search of a Simplifying Approach for ChemPhoto
Authors: Apodaca Richard L.
Published: December 2024

One of the main design goals of ChemPhoto, the chemical structure imaging application, was to support all Web-relevant image output formats, both vector-based and pixel-based. Like most things in software development, there are far more approaches that add complexity to this problem than there are approaches that remove it. And for some reason, the complexity-reducing methods tend to be the last to be considered.
Agile Chemical Informatics Development with CDK and Ruby: RCDK-0.3.0
Authors: Apodaca Richard L.
Published: December 2024

Ruby Chemistry Development Kit (RCDK) version 0.3.0 is now available from RubyForge. RCDK enables the complete CDK API to be accessed from Ruby. This release adds support for IUPAC nomenclature translation and tighter Java integration.
Matched Molecular Pairs
Authors: Apodaca Richard L.
Published: December 2024

Early-phase medicinal chemistry is full of challenges and uncertainties. But despite it all, the entire enterprise can often be boiled down to just one question: which compounds should be tested next? Opinions differ on the role that cheminformatics should play here. One school of thought says to simply supply the answer. Recent advances in machine learning have bolstered this view.
Dispelling Open Source Confusion: An Introduction to Licenses
Authors: Apodaca Richard L.
Published: December 2024

Few subjects cause as much confusion and as many heated debates as Open Source licensing. The Open Source Initiative has approved over 50 licenses compatible with their ten-point definition of “Open Source”. Whenever that many solutions to a problem exist, it’s a sure sign that one size does not fit all. In this article, I’ll introduce some of the key concepts in Open Source licensing.
3D Molecular Visualization on the Web: OpenAstexViewer
Authors: Apodaca Richard L.
Published: December 2024

OpenAstexViewer is an LGPL-licensed 3D molecular visualization tool written in Java. With the obfuscated jarfile weighing in at 1 MB, OpenAstexViewer could make a good choice for use in Web applications. There are now at least two open source, feature-rich 3D molecular visualization tools written in Java (the other being Jmol). Are there any others? Credit: thanks to Noel O’Boyle for spotting this.
The Economics of Free: Chris Anderson on Charlie Rose
Authors: Apodaca Richard L.
Published: December 2024

[Flash Content Scrubbed] Anderson’s comments on the Long Tail and social networks are especially on-target, and relevant to the sciences.
What the Heck is RDF?
Authors: Apodaca Richard L.
Published: December 2024

Following on from the last post in which the Semantic Web was described in plain english, here’s this video, which does the same thing for RDF.
SMILES Formal Grammar Revisited
Authors: Apodaca Richard L.
Published: December 2024

A previous article presented a formal grammar for the SMILES language. Its most notable feature was the lack of left-recursion, which enables simple, efficient parsers to be written. However, that first attempt left some room for improvement. In this article, a new grammar is presented that addresses outstanding points. Limitations of Previous Grammar Limitations of the previous grammar included: Multiple unbounded quantifiers.
The Best API May Be No API At All - PubChem and PDB
Authors: Apodaca Richard L.
Published: December 2024

Both PubChem and the Protein Data Bank (PDB) maintain vast collections of molecular data. Individual users are free to view and search these collections via standard Web browsers. But what are the options if you’re developing software to interact with these databases? Various application programming interfaces (APIs) are available for accessing PubChem and PDB records.
The Chemically-Aware Web: Are We There Yet?
Authors: Apodaca Richard L.
Published: December 2024

Recently, I wrote a tutorial on embedding 2-D molecular renderings into webpages as Scalable Vector Graphics (SVG). This tutorial also contained a small experiment on the current chemical informatics capabilities of the Web. Here is a scenario from the near future: Joe is writing a review on Cephalosporin C that he wants to publish the modern way - directly to the Web. An entirely new concept in scientific publishing has started to take hold.
Physical and Cognitive Impairments
Authors: Apodaca Richard L.
Published: December 2024

It may be hard to believe, but being diagnosed with a terminal illness whose median survival time is measured in months was not my biggest worry by late March 2023. Far more troubling was how far down the physical and mental fitness ladder I’d tumbled. I’d entered the ER just days earlier with coordination problems. Not only were my physical symptoms now much worse than before brain surgery, but new

mental

impairments had surfaced.
Scripting Java Libraries with Ruby Java Bridge
Authors: Apodaca Richard L.
Published: December 2024

Although JRuby solves many Java/Ruby integration issues, in some cases it’s not the right solution. One situation is when you want your Ruby code to use extensions written in C. The JRuby documentation makes very clear that this will never be supported. Another situation is if your code needs full access to Ruby on Rails, or if your hosting service makes it difficult to configure JRuby on Rails.
CampDepict: Building a Simple SMILES Depict Web Application With JRuby, Structure CDK, and Camping
Authors: Apodaca Richard L.
Published: December 2024

Today’s tribute to the power of simplicity comes by way of John Jaeger, who has built one of the simplest cheminformatics Web applications ever written. His creation, CampDepict, interactively produces a raster image of a 2D chemical structure given a SMILES string, not unlike Daylight’s Depict application. CampDepict uses the Ruby Web microframework Camping.
Hacking JSpecView - Creating an HTML Test Harness
Authors: Apodaca Richard L.
Published: December 2024

The previous article in this series discussed the construction of an Ant build environment for JSpecView. This article will show how to use Ant to build an HTML harness to test the resulting Applet and jarfile. Availability of Source Code Robert Lancashire, the lead JSpecView developer, has kindly agreed to host the complete source code for this series of tutorials on the JSpecView SourceForge project page.
The Long Tail and Chemistry - Why So Many ACS Meeting Talks are 'Uninteresting'
Authors: Apodaca Richard L.
Published: December 2024

The Boston ACS provided yet another opportunity to look at chemistry as a social networking phenomenon. Having attended several talks inside my areas of expertise (organic chemistry, medicinal chemistry, and chemical informatics), I was struck by two things: Most talks were laser-focused on one tiny aspect of chemistry that is of little interest to the average chemist, but of great interest to a few chemists.
Building Chempedia - Resizable Structures With ChemWriter
Authors: Apodaca Richard L.
Published: December 2024

One of the difficulties in viewing 2D chemical structures is that molecules vary in size. In particular, larger molecules become difficult to read when confined to a small section of a screen. This article shows how this problem has been addressed in Chempedia using the 2D rendering capabilities of the ChemWriter package. As an example, consider Chempedia’s entry for Aluminon.
Chemical Line Notations for Deep Learning: DeepSMILES and Beyond
Authors: Apodaca Richard L.
Published: December 2024

Last year marked the 30th anniversary of David Weininger’s SMILES paper. Although the computing landscape has changed beyond recognition since 1988, the SMILES language has barely changed at all. Sure, there’s the alternative line notation InChI and the OpenSMILES specification. But the former hasn’t changed SMILES itself, and the latter has mainly narrowed the range of SMILES formulations seen in the wild.
Chempedia at the Spring ACS
Authors: Apodaca Richard L.
Published: December 2024

I’ll be giving a talk at the upcoming ACS on Chempedia - with a dash of Chempedia Lab. If you’re interested in breaking down barriers to using the Web for scientific communication, I’d be interested in meeting with you.
A Brief Introduction to Graph Convolutional Networks
Authors: Apodaca Richard L.
Published: December 2024

The extensive use of graphs in chemistry to model both reactions and molecules creates challenges for machine learning. Most of the previous and ongoing research in the field solves the problem by translating molecular graphs into forms that fit cleanly within existing paradigms and tools: images; text; and binary fingerprints. Graph representations themselves seem out-of-place at first.
Interconvert (Almost) Any SMILES and InChI with Ruby Open Babel
Authors: Apodaca Richard L.
Published: December 2024

SMILES and InChI are the two most widely-used line notations in cheminformatics. Not surprisingly, there are many situations in which it’s useful to interconvert the two. This article shows a simple method for doing so using Ruby Open Babel. Parsing InChIs Version 1.01 of the IUPAC/NIST C InChI toolkit introduced the ability to parse InChIs. This capability has subsequently been incorporated into Open Babel, and by extension, Ruby Open Babel.
Building Chempedia: Global Substance Identifiers (GSIDs) and Search Engines Play Nice Together
Authors: Apodaca Richard L.
Published: December 2024

To create a broadly-applicable Web resource, content needs to be searchable through services such as Google. In designing Chempedia, one goal was to offer a tool that would work

with the grain of the Web

by offering a handle though which the full power of tools like Google could be leveraged.
Planes, Trains, and Organic Syntheses
Authors: Apodaca Richard L.
Published: December 2024

Riders of commuter trains are accustomed to using maps like those produced by the London Underground: These maps are capable of condensing large amounts of information into a useful package. Transit map representations, known more generally as graph or network representations, are especially good at revealing the big picture, although their applications are numerous and can be found these days just about anywhere you find large datasets.
Learning from StackOverflow: Building Chemistry Communities
Authors: Apodaca Richard L.
Published: December 2024

For the unfamiliar, StackOverflow is a programming question and answer service. There are dozens, if not hundreds, of these things on the Web - and most of them are lame. What StackOverflow did differently was to design a service from the bottom up that was specifically tailored to the culture of software developers. Every feature in StackOverflow is designed to maximize productive participation by a very specific community.
Stone Soup
Authors: Apodaca Richard L.
Published: December 2024

Recently eMolecules donated a substantial amount of new code to the Open Babel project. This code, which could help developers of molecular databases write faster query engines, is now free for anyone to use for any purpose. Are eMolecules worried about having parted with something it took them time and money to develop and which could eventually help a competitor?
Indigo: Open Source Cheminformatics for C++ and .Net
Authors: Apodaca Richard L.
Published: December 2024

Dmitry Pavlov of SciTouch writes in to announce the availability of Indigo, an open source suite of cheminformatics tools. Indigo offers an impressive array of capabilities, including graph matching, cycle perception, structure rendering, fingerprinting. The site documentation also indicates that work on interfaces to other languages, including Ruby and Java, is planned.
Never Draw the Same Molecule Twice - Writing PNG Image Metadata with Python
Authors: Apodaca Richard L.
Published: December 2024

A recent D-F article discussed a method for encoding machine-readable molecular structure information as image metadata. This article generated some interest among developers. For example, Noel O’Boyle posted code for reading PNG image metadata with Python. The popularity of Python in cheminformatics makes this approach especially attractive. But how would you write PNG image metadata with Python?
Distributed Chemistry
Authors: Apodaca Richard L.
Published: December 2024

Distributed systems pervade modern computer technology. Examples include multi-core CPUs, GPUs, computer clusters, and the Internet itself. Although many forms of distributed computing have been developed, their main purpose is to increase the utility of individual resources through cooperation, often involving some form of parallelization.
Googling for Molecules with InChIMatic and Firefly
Authors: Apodaca Richard L.
Published: December 2024

A series of D-F articles have discussed InChIMatic, a Web application that lets you structure-search the Web using popular search engines such as Google. Recent articles have also described Firefly, a lightweight 2D structure editor designed especially for the Web. Today, the first alpha release of Firefly is available for use with InChIMatic.
Small Molecule 3D Coordinates From PubChem
Authors: Apodaca Richard L.
Published: December 2024

The PubChem team has quietly introduced a new feature - 3D coordinates for many of the small molecules in its compound collection. To my knowledge, these coordinates are only currently available via FTP.
The Future of PyMOL
Authors: Apodaca Richard L.
Published: December 2024

The pymol.org site is reporting that Schrödinger will now provide maintenance, support, and sales for PyMOL: There are many ways to ‘sell’ open source software. Delano Scientific used a freemium model; the basic PyMOL package was free, but premium services, such as support and “incentive builds”, could be purchased separately. Delano took this one step further by licensing the basic package as open source.
Chemical Substructure Search in SQL
Authors: Apodaca Richard L.
Published: December 2024

Earlier this year, Golovin and Henrick published a novel technique for performing substructure search on large databases using SQL. What makes this approach unique is that it takes advantage of the built-in breadth-first search capabilities of most database engines to do structure matching. At least three public-facing sites now use the system, including this one at EMBL-EBI.
Visualizing Cheminformatics Algorithms
Authors: Apodaca Richard L.
Published: December 2024

The Sorting Algorithm Demo compares four commonly-used sorting algorithms in a unique way: by showing them in action. Watch as each of these four algorithms performs exactly the same task in very different ways and with varying efficiencies. How could tools like The Sorting Algorithm Demo be designed for cheminformatics?
A Clean, Well-Lit Place for Spectra
Authors: Apodaca Richard L.
Published: December 2024

Bonnie Swoger, Science and Technology Librarian at SUNY Geneseo asks a very interesting question on the CHMINF-L mailing list: For those not familiar with the term, “ILL” means “Inter Library Loan” - a method for a library to offer materials by borrowing them from other libraries. There are several services, commercial and free, that I could mention.
Building Rubidium - Creating a RubyForge Project Space
Authors: Apodaca Richard L.
Published: December 2024

Recent articles have discussed Rubidium, the cheminformatics toolkit for Ruby. In this article, the first in a series, I’ll go beyond the Ruby code to discuss the technical aspects of taking an Open Source idea from concept to release. Finding a Home Before setting up your Open Source project, you’ll need to decide on how to host it. Project hosting can be as simple or elaborate as you wish, but the basic services include: a website;
Molecular Identification with TUCAN
Authors: Apodaca Richard L.
Published: December 2024

It’s hard to overstate the importance of molecular identifiers to chemistry. Also called “chemical names,” molecular identifiers enable individuals, laboratories, organizations, and countries to efficiently exchange information about molecules. Given this foundational role, you might expect to find a well-organized and lavishly-funded effort to develop and improve molecular identifiers. This is, of course, not the case.
Scientific Journal to Require Wikipedia Summary Page of New Research Articles
Authors: Apodaca Richard L.
Published: December 2024

From Nature News comes this announcement: It’s unclear how this new initiative will work in practice. The only thing the

RNA Biology

site has to say on the subject is to offer a link back to the

Nature News

article. This is a trend to watch very closely. A journal article is dead the moment it’s published, but a Wikipedia article is a living, breathing document that can adapt as information and interpretations change.
MX at Work: Building a Pure JavaScript Chemical Structure Editor
Authors: Apodaca Richard L.
Published: December 2024

MX is a fast, lightweight cheminformatics toolkit that can be used in many programming environments. Previous articles have shown how easy it is to use MX in Ruby and Python, but that’s just the beginning. Because MX is written in Java and is both small and self-contained, it can also be compiled into pure JavaScript thanks to the Google Web Toolkit.
Chemists: How Do You Keep Current with the Literature?
Authors: Apodaca Richard L.
Published: December 2024

Whether you know it or not, one of your biggest problems as a chemist is keeping current with the chemical literature. Missing one key paper can make the difference between breakthrough and heartbreak. The explosive growth rate of the chemical literature makes it increasingly difficult to keep up. From 1997 to 2007, the number of new documents indexed by Chemical Abstracts Service every year doubled to 1.72 million.
Visualizing IUPAC Names with ChemNomParse
Authors: Apodaca Richard L.
Published: December 2024

Nomenclature translation is the process of converting a human-readable chemical name into a machine-readable notational scheme such as a connection table. It plays a key role in linking the older chemical literature to modern information technologies, such as the Internet. Buried deep within the Chemistry Development Kit (CDK) is a library for nomenclature translation called ChemNomParse.
RESTful Substructure Search
Authors: Apodaca Richard L.
Published: December 2024

REST is an architectural style for Web applications that emphasizes regularity and discoverability. Unlike most other approaches, REST exploits the full power of HTTP, both in terms of expression and performance optimization. This article explores REST from the perspective of cheminformatics Web services, using the specific example of substructure search.
The Elephant in the Room: Should Chemical Abstracts Service Become a For-Profit Company?
Authors: Apodaca Richard L.
Published: December 2024

What role, if any, does a profit-making entity have in a non-profit organization? That’s the question many have been asking for some time about Chemical Abstracts Service (CAS) and its relationship to the American Chemical Society (ACS). Too Big to Be Non-Profit? I was again reminded of this question after having finally been granted access to the ACS LinkedIn Group.
Still More Free Chemistry Databases and Web Services
Authors: Apodaca Richard L.
Published: December 2024

Metamolecular continues to compile its catalog of free chemistry databases and Web services. The newest entry covers SIDER, a remarkable tool that lets you explore the relationships between marketed drugs and their side effects.
BioRails
Authors: Apodaca Richard L.
Published: December 2024

BioRails is an Open Source Biological Information Management System (BIMS) based on Ruby on Rails. The BioRails team expects the first release to be available sometime in December 2006. From the BioRails FAQ: BioRails has a great deal of potential, and it will be interesting to see the system up close when it is released.
Yet Another Free Chemistry Database: Heterocycles Web Edition
Authors: Apodaca Richard L.
Published: December 2024

Yet another free chemistry database comes in the form of a service run by the journal

Heterocycles

. The Heterocycles Web Edition offers two ways to search for heterocylic ring systems: by structure or by synthesis. You may assume that these services would only search the contents of

Heterocycles

. It would then be a pleasant surprise to find a number of highly-regarded journals being covered. Here are some of titles: Angew.
Tech Fridays: PubSubHubbub
Authors: Apodaca Richard L.
Published: December 2024

PubSubHubbub is a “simple, open, server-to-server web-hook-based pubsub (publish/subscribe) protocol as an extension to Atom (and RSS).” Although the presentation below isn’t the most lucid, PubSubHubbub and other work in this area such as XMPP can be thought of as adaptations of the well-known Observer Pattern to a network.
Starting, Quitting, and Finishing
Authors: Apodaca Richard L.
Published: December 2024

As work on the 2D chemical structure editor I’ve codenamed Firefly enters its finishing iteration, I’m reminded of the many things in life that seem to get

exponentially more difficult

the closer they get to completion. There should be a name for this effect. The closest thing I’ve seen to a discussion is Seth Godin’s The Dip. Although every project has its own unique qualities, they all tend to go through the same three stages.
Simple CAS Number Lookup (and More) with Chempedia
Authors: definition By
Published: December 2024

Despite many ingenious and energetic attempts, CAS Registry Numbers® remain chemistry’s only universal method for referencing chemical structures and substances. They’re so woven into the fabric of chemistry and trade that the US Patent and Trademark Office discusses them in the same context as Domain Names, Drivers License Numbers, ZIP Codes, and UPC Barcodes.
Tech Fridays: Titanium Mobile and the Electronic Laboratory Notebook Usability Problem
Authors: Apodaca Richard L.
Published: December 2024

Anyone trying to develop a commercially viable electronic laboratory notebook system needs to address the single biggest usability issue facing this approach: hardware. Mobile devices are not only getting cheaper and more powerful, but they are practically begging for laboratory notebook-like applications to be built specifically for them.
One of These Things is Not Like The Others
Authors: Apodaca Richard L.
Published: December 2024

You can’t get very far in cheminformatics without the ability to compare one molecule to another to find either an exact structure or substructure match. For example, if you want to build chemical databases, a good substructure matcher comes in very handy. As luck would have it, the substructure match problem (a variant of the subgraph isomorphism problem) is both computationally expensive and difficult implement.
What About Chempedia?
Authors: Apodaca Richard L.
Published: December 2024

Every great website requires two things: great content and people interested in using it. Getting there is remarkably difficult, as the countless millions of failed websites and services can attest to. Chempedia is a public-facing chemical substance registry. In plain English, it offers the ability for anyone to assign a unique identifier and one or more names to a pure organic substance.
Ruby CDK One-Liners - Create a Molfile With 2D Atom Coordinates From Arbitrary SMILES Strings
Authors: Apodaca Richard L.
Published: December 2024

A very common operation in cheminformatics is the interconversion of molfiles and SMILES strings. Usually, converting from SMILES gives a molfile in which all atoms have coordinates of (0,0,0). Sometimes you just need more than that.
Strings and Things
Authors: Apodaca Richard L.
Published: December 2024

I ran across John Bradshaw’s excellent presentation Strings and Things. Part historical overview, part explanation of the SMILES/SMARTS line notation systems, Bradshaw’s slides are chock full of interesting tidbits. My favorite: slide 29 - “Line notations are dead.” It’s a wonderful illustration of why predicting the future of technology is so tricky.
Making the Case: Similarity by Compression
Authors: Apodaca Richard L.
Published: December 2024

Yet another appearance of Open Source software in the literature comes by way of a paper from Melville, Riley, and Hirst. This work takes advantage of the alphabet-like nature of SMILES strings and widely-available compression algorithms to perform molecular similarity analyses.
Building WebSpex - Putting Custom Data Types In Their Place
Authors: Apodaca Richard L.
Published: December 2024

The previous article in this series introduced WebSpex, a spectroscopic data visualization tool being designed especially for use in a Web browser. Previously, the platform on which the user interface would be built was discussed. This article will discuss the question of where to put the spectroscopy data that WebSpex will display.
Structure Diagram Generation
Authors: Apodaca Richard L.
Published: December 2024

Given a molecule with no 2D coordinates, how would you render a human-readable view? This problem arises in many situations, but most commonly in the context of interpreting line notations such as IUPAC nomenclature, SMILES, or InChI. Whatever the solution you come up with, you’ll come face-to-face with the structure diagram generation (SDG) problem.
Rethinking the Command Line for Chemistry
Authors: Apodaca Richard L.
Published: December 2024

A recent article discussed the renaissance of the command line. Particularly on the Web, command line interfaces have become so advanced, that most of us don’t even realize we’re using them. Consider the Google search box, which is nothing more than one of the most powerful command line interfaces ever developed. A service called YubNub takes this idea one step further. YubNub is a meta command line interface for the Web.
Getting Started with RDKit and Jupyter
Authors: Apodaca Richard L.
Published: December 2024

RDKit is a cheminformatics toolkit with bindings for Python. It’s packed with functionality, deployed within multiple open source projects, and is widely-used in machine learning applications. RDKit can also be difficult to install. This article discusses the problem and a method for using RDKit within Jupyter notebooks. Installation Options The Python Package Index (aka PyPI, aka pip) is Python’s standard package manager.
Molecular Style Sheets: Combining SVG and CSS
Authors: Apodaca Richard L.
Published: December 2024

Cascading Style Sheets (CSS) are used by Web developers to modify the appearance of an HTML document without requiring changes to the document itself. This approach has become so popular because of the power it offers: developers can achieve a consistent and re-usable look by simply editing and/or copying a single document. 2-D molecular structures are like text documents in that context determines the best presentation style.
Antisocial Journals
Authors: Apodaca Richard L.
Published: December 2024

Bosco recently posted some interesting thoughts on the comments and ratings system for the Public Library of Science (PLoS): Sound familiar? I wrote the following as a comment: There have been a few attempts to create centralized rating/discussion services for the scientific literature. For but one example, consider “The Scientific Debate”, a now defunct service that was originally reviewed here.
Getting Started with DeepChem
Authors: Apodaca Richard L.
Published: December 2024

Like many fields, chemistry is in the midst of a machine learning transformation. Chemistry also has some peculiarities that make getting started with machine learning a challenge. What would be helpful is a workbench that makes it possible to conduct simple but illustrative studies with minimal ceremony. DeepChem is a batteries-included suite that seeks to fill this need.
GitHub for Chemistry: Revision Controlled Datasets?
Authors: Apodaca Richard L.
Published: December 2024

The GitHub Blog has published a writeup about Bioclipse’s method for importing scripts from GitHub. Although there are obvious security issues with allowing arbitrary code to be run directly from the Web without a sandbox, this approach has some potential. GitHub has many other potential uses for chemistry.
Saying No to Browser UI Frameworks
Authors: Apodaca Richard L.
Published: December 2024

The last seven years has treated front-end developers to a banquet of browser UI frameworks. Names including React, Angular, Vue, Ember, and Backbone frequently top annual roundups and job postings. A host of lesser players also makes an appearance. What gets lost in the hype and buzzwords too often is a clear description of the main problem these tools solve.
The Structure Editor: (Forgotten) Link Between Chemistry and Cheminformatics
Authors: Apodaca Richard L.
Published: December 2024

Of the many cheminformatics technologies developed over the last fifty years, which ones can no bench chemist function without today? There are many possibilities to choose from: molecular databases, fast substructure searching, the SD/Molfile format, SMILES and other line notations, a variety of molecular descriptors and in silico property calculations, and QSAR, to name a few. Throw in molecular modeling and 3-D visualization if you’d like.
PubCouch - Streams Aren't Just for Pipeline Pilot
Authors: Apodaca Richard L.
Published: December 2024

If you’ve been following along with the development of PubCouch, the CouchDB interface for PubChem, you’ve probably noticed that only a fraction of the code relates to CouchDB itself. What’s the rest of it doing?
Compiling Rust to WebAssembly: A Simple Example
Authors: Apodaca Richard L.
Published: December 2024

Rust and WebAssembly (Wasm) are often discussed together. The former is a typesafe systems programming language with modern tooling and many high-level features. The latter is a portable, secure execution environment that runs inside and outside the browser. The combination promises many years of progress and utility.
RESTful Web Services, Hypermedia, and (Robot) Scientists
Authors: Apodaca Richard L.
Published: December 2024

Although autonomous Robot Scientsts will probably not be appearing in quantity for some time to come, many labs already host an impressive array of automated technologies used in connection with chemical research. Much of this equipment consists of an autosampler attached to an instrument such as an NMR spectrometer, a mass spectrometer, a chromatogram, or a preparative chromatography system.
Wikipedia for Cheminformatics - A Simple Web API for Finding CAS Numbers in Compound Monographs
Authors: Apodaca Richard L.
Published: December 2024

Good news for cheminformatics: Chemical Abstracts Service (CAS) has agreed to help Wikipedia users curate its collection of CAS numbers. As a result of the diligence of some hard-working volunteers, chemistry’s most universal system for referring to chemicals can now be used far more effectively by the worlds biggest open repository of knowledge. Wouldn’t it be great to be able to pull these CAS numbers from Wikipedia programmatically?