Coding for Chemists

Saving time and solving problems with Python

Announcing a new coding resource for experimental chemists

As chemistry becomes ever more digital, the ability to program becomes an ever more powerful skill. Modern chemistry research will increasingly become reliant on high-throughput workflows and advanced data analysis. Even basic coding skills prepare a researcher to leverage these workflows and emerging analysis techniques, placing a researcher with these skills at the forefront of modern chemistry practice.

This book is targeted to experimental chemists and assumes no prior knowledge of coding. We quickly introduce concepts and workflows that will be applicable to nearly all practicing experimental chemists, using a narrative structure that frames coding concepts in terms of tasks common to chemical research. The book teaches researchers how to plan experiments, automate the generation of publication-quality figures, fit experimental data to any desired model, and process data using advanced data analysis techniques. Students will be empowered to extend the capabilities of their research while also saving a great deal of time.

You can also visit the publisher's page for the book

Topics

The book is structured around common tasks encountered by experimental chemists, and focuses on how to automate and improve them. These include:

Enabling new workflows

  • Fitting complex models to data
  • Managing extremely large data sets
  • Reading data from files
  • Simulating kinetics
  • Integrating signals
  • Smoothing data
  • Interpolating data
  • Creating graphical user interfaces
  • Regression analysis
  • Creation of custom tools

Automating routine workflows

  • Standard data fitting
  • Plotting data
  • Collating data
  • Generating reports
  • Experimental planning
  • Image processing
  • Representing chemical structures

A resource for self-study or the classroom

For those learning to code, the book includes detailed explanations of example code, a glossary of new terms, and an index of coding concepts. The most standard components of Python are explained in the book, while emerging components are explained in an online resource, so that the book remains up to date in the rapidly evolving world of coding. Finally, we provide series of ready-made tools for accomplishing common research tasks. For instructors seeking a resource for their classroom, the book is appropriate for either semesters or quarters. We provide an online resource for instructors that discusses uses of the book, additional problems and exercises, as well as solutions to these problems. Thus, the book is designed to provide a plug-and-play resource for instructors who wish to teach coding to chemistry students, but do not have time to develop the complete resources to do so.

Authors

Christopher J. Johnson is a professor at Stony Brook University, where he teaches a course on coding for chemists, taken by both senior undergraduates and graduate students. He also runs a research group focused on physical chemistry of atomically precise metal clusters and the chemistry of aerosols.

Benjamin J. Lear is a professor at the Pennsylvania State University, where he teaches a course on the design of data visualizations. He also runs a research group focused on physical chemistry of metallic nanoparticles and photothermally driven chemical reactions.

If you have questions about the book, please email us at authors@codingforchemists.com