Hello, and welcome to my Github Repository for where I give access to my materials, source code, and other things I use to learn cheminformatics.
These materials are designed with the idea that the student needing them has a working knowledge of organic chemistry I and II, as well as a computer science course, data structures. There are more advanced tutorials for folk at the graduate level but not completely organized into an official lecture series. I'll work on that component too.
- Teaching Material
- Lecture Series
- 2023 Job Postings
- Organic Chemistry Standard Mechanisms
- Development Operations
- Principal Component Analysis
- Cheminformatics
- Medicinal Chemistry
- Computational Chemistry
- Molecular Dynamics
- Machine Learning
- Large Language Models
- Force Fields
- CHARMM Errors
- Electronic Record Compliance
- Miscellaenous Resources
- Womens Health
- Lifestyle
Lecture Series for Undergraduate-Level Cheminformatics
- Lecture 001 - How to Write SMILES: Introduction to Converting Skeletal Diagrams to 1-D Data String Representation. - Suliman Sharif
- Lecture 002 - Expanding SMILES to more Diverse Functional Groups: Introduction to Alkenes, Alkynes, and Carbonyls. - Suliman Sharif
- Lecture 003 - Designing String Formation Algorithms & Introduction to Canonical SMILES with RDKit - Suliman Sharif
- Lecture 004 - Manipulating SMILES strings with Virtual Atoms and Bonds to create Combinatorial Libraries. - Suliman Sharif
- Lecture 005 - Understanding Chemical Data Formats and Writing Your Own Mol2 Parser Part 1. - Suliman Sharif
- Lecture 006 — Introduction to Stereochemistry in SMILES with RDKit
- Introduction to Cheminformatic Law - Introduction to Cheminformatic Law
Lecture Series for Graduate-Level Cheminformatics
- Lecture 001 - Your 1st Million SMILES - Suliman Sharif
- Lecture 002 - Exploring The Chemical Universe with Potential Energy Functions.
- Lecture 003 - Approaching Machine Learning as an Organic Chemist Part 1
- Lecture 004 - Building your First Cheminformatic Bots with Discord And Github Actions.
*Youtube Lectures
- Introduction to SMILES 001 - Alkanes & Alcohols
- Introduction to RDKit 001 - Molecule Properties
- Introduction to RDKit 002 - Analyzing Cannabis and Taking the Probability Distribution of Molecule Properties
- Introduction into Jupyter Notebook For Scientists - Setup Port Forwarding, And Managing Imports
- Putting Molecular Dynamics Simulations in a Presentation - Putting Molecular Dynamics Simulations in a Presentation
- Universität Hamburg - develop new approaches to identify targets and off-targets for potential drug candidates using modern modelling and AI techniques.
- Uppsala University - you are part of designing the future of synchrotron technology and instrumentation and using these to tackle some of the most significant global challenges the world faces today while acquiring interdisciplinary and intersectoral knowledge.
- Johnson & Johnson - CompChem/ML Summer 2023 Intern -
- Frontier Medicines - Computational Chemistry Intern Summer 2023
- AbbVie - Experiential Internship - Machine Learning/Quantum Chemistry
- Astrazeneca - Computational Chemistry Intern
- Arvinas - Summer Internship, Computer Assisted Drug Design
- American Chemical Society - Summer Internship, Computer Assisted Drug Design
- Nvidia - Verification Summer Intern 2023
- Meta - AI for Science Summer Internship
- Byte Dance - Research Scientist Intern in Computational Chemistry
- Dassault Systems - Biovia and Biologics Drug Design Summer
- Kallyope - Comp Chem Summer 2023 Internship
- Genentech - 2023 Summer Intern for Prescient Design & Machine Learning
- Roche - 2023 Summer Intern for Prescient Design & Machine Learning
- Microsoft - Research Intern - Research for Industry & ML/AI for Food
- Vertex Pharmaceuticals - Computational Toxicology Summer Intern
- Coca Cola - Data Scientist Intern 2023
- Amgen - Grad Intern – Computational Chemistry
- Cellarity - Cheminformatics Summer Intern 2023
- Rivian - Software Engineering Internship 2023
- Aqemia - Research internship - Computational Chemistry and Structural Biology
- NIH - Summer Internship in Biomedical Research
- Enthought - Tokyo Graduate Intern - Scientific Software Developer
- Hydrobromination - Hydrobromination of Styrene in SMILES
- Friedel-Crafts Alkylation - Friedel-Crafts Alkylation in SMILES
- Diers Alder - Diers-Alder Reaction in SMILES
- Diers Alder Bicyclo - Diers-Alder Reaction of Bicyclo Compounds in SMILES
- Python Package Distribution for Scientific Publications - A Comprehensive Overview for releasing a Python Package for Scientific Publication.
- Monitoring your System with Python - Using Python Glances to Monitor Your System
- Modern Github Badges - Modern Github Badges For Open Source Repositories
- Automating Cheminformatics Workflows - Automating Cheminformatics with Apache Airflow — Step 1: Preparing SMILES Transformations on Large Scale
- Downloading the ZincDB Rapidly - Downloading the Zinc Database Rapidly with Aria2
- Useful Github Action Bots - Useful Github Actions Bots to Regulate my Python Package
- Debugging Distribution Bugs - Debugging File Encoding and File Path Distribution Bugs for GlobalChem with Github Action Bots.
- Psi4 on a High Performance Cluster- Using Psi4 on a High Performance Cluster
- Interoperable Chemical Knowledge Graph - Designing an Interoperable Chemical Knowledge Graph
- Managing Open Source Licenses - Managing Open Source Licenses For Python Package Dependencies
- Gitbook Documentation - Python Design Documentation Part I: Goodbye ReadTheDocs, Hello GitBook
- Distribution of Python Package - Distributing Python Main and Submodules on PyPi
- PCA on PihKal Book - Principal Component Analysis on the list of SMILES from Pihkal using GlobalChem and IUPAC
- Using PCA to Detect Aromaticity - Using Principal Component Analysis to distinct Aromatic and Non-Aromatic Compounds and Identify Common Scaffolds for Diverse Communities using SMILES and GlobalChem.
- PCA on Cannabis Sativa - Understanding what is inside of Cannabis Sativa using Principal Component Analysis with Global-Chem
- PCA on Cannabis Sativa and Oral Contraceptives - Mixing Global-Chem Nodes: Cannabis Sativa and Oral Contraceptives for Principal Component Analysis.
- PCA on Alternative Jet Fuels - Principal Component Analysis on Alternative Jet Fuels with Global-Chem
- Understanding Drug Likeness Filters - Understanding drug-likeness filters with RDKit and exploring the WITHDRAWN database.
- Preparing Chemical Data - Preparing Chemical Data in 5 minutes with Cocktail Shaker, RDKit, and Pandas
- Peptide Fingerprints - Trends in fingerprint matching of peptides using Tanimoto, RDKit, and Cocktail Shaker.
- SMILES to PDF - Converting a List of SMILES to PDF form.
- Morgan Fingerprinting - Understanding Morgan and converting the chemical structure to a number.
- Chemical Reference Databases - Using the MiniFrag Database to validate your SMARTS strings
- Variations of SMILES - Validating SMILES with RDKit, PySMILES, MolVS, and PartialSMILES
- Protonating SMILES - Protonating your SMILES strings over a range of pH for Small Molecules and Proteins
- Fast Cheminformatics - Using Modin or GPU to read in massive datasets of molecules.
- Cannabis Compounds - Exploring Promiscuous Tetrahydrocannabinol (THC) Chemical Space
- Sn1, Sn2, E1, E2 Mechanism - Sn1, Sn2, E1, E2 Mechanism Explained in SMILES.
- Azridine - Aziridine
- Organophosphorous Nerve Toxic Agents - Selection of Functional Groups for Chemical Nerve Toxic Agents — Novichok
- Overriding Gasteiger Partial Charges - Overriding Gasteiger Partial Charges in RDKit
- Probability Distribution of Chemical Fingerprints Scores - Probability Distribution of Chemical Fingerprint Similarity Scores with RDKit and Plotly.
- Bostroms Algorithm - Bostrom’s Algorithm in Python For Protein-Ligand Binding.
- Neo4J, Global-Chem Part 1 - Part 1 — Connecting GlobalChem Knowledge Graph to Neo4j Graph Database
- Neo4J, Global-Chem ChatGPT Part 2 - Part 2 — Querying Common Chemicals with ChatGPT From a Neo4j Database
- Chemical Diversity - Principles of Chemical Diversity
- Converting CSV/TSV to RDF - Converting your Knowledge Graph TSV/CSV to a Resource Description Framework (RDF) For Interoperability
- Partial Charge Fingerprints - Partial Charged Fingerprints
- Uploading Chemical Data to Wikidata - Uploading Structured Chemical Data to Wikidata
- Chemical Composition of Holy Water - Chemical Composition of Holy Water
- Converting List of IUPAC names to SMILES - Converting a List of IUPAC names to SMILES
- Retrosynthesis Artificial Intelligence - Retrosynthesis Artificial Intelligence
- Sephora Toxicity Makeup Analysis - Looking at the Chemicals Inside Sephora Makeup Foundations For Any Toxic Alerts
- Convert an Image to SMILES - Converting an Image of a Molecule to SMILES
- Insect Sex Pheromones - Exploring Chemical Space: Insect Sex Pheromones
- Convert CAS to SMILES- Convert a list of CAS numbers to SMILES using Pubmed, Cirpy, or a Recurrent Neural Network
- Desining a Good Injectable Drug - Designing a Good Injectable Drug
- SAPT Theory of Helium - Symmetry-Adapted Perturbation Theory (SAPT) of Helium in Psi4
- Harmonic Analysis in Psi4 - Harmonic Analysis in Psi4
- Optimizing Ligand Geometry - Optimizing A Molecule’s Geometry with Psi4
- Visualizing Molecular Orbitals - Visualizing Frontier Orbitals with Psi4 and Python
- Your First Lennard-Jones Potential Energy Scan - Your First Lennard-Jones Potential Energy Scan
- Converting Coordinate Files - Converting GRO files to PDB using Python - Suliman Sharif
- Calculating End to End Distance Between Atoms - Calculating the End-to-End distance of two atoms using MDAnalysis
- Monitoring your Simulation - Using python to check molecular dynamic simulation log files.
- Coming to Convergence - How I was checking to tell if there was convergence in my simulations.
- Controlling Tumbling - Controlling Tumbling Effects in a Molecular Dynamics Simulation.
- Calculating Dipole Moments - Analyzing Dipole Moments in Molecular Dynamics Simulations
- Multiprocessing for Hydrogen Bonds - Exploring Multi-Processing for Exhaustive Hydrogen Bonding Analysis using MDAnalysis and Futures
- Calculating Density of a Liquid - Calculating Density of a Neat Liquid from a Molecular Dynamics Simulation with NAMD
- Constant Pressure and Temperature Control - Maintaining Constant Pressure and Temperature in NAMD.
- Part 1: Simulating Kinases with CHARMM and Amber - Part 1 Molecular Dynamics: Simulating Kinases using CHARMM and Amber
- Part 2: Simulating Kinases with CHARMM and Amber - Part 2 Molecular Dynamics: Retaining Water in the Crystal Structure.
- Running Molecular Dynamic Simulations on Github Actions with GROMACS - Running Molecular Dynamic Simulations on Github Actions with GROMACS
- Hugging Face Cannabis Chat System - A Hugging Face Chat assistant to tell us what are the chemicals inside of Cannabis Sativa
- Creating an RNN to Convert IUPAC to SMILES - Exploring bridging cheminformatic languages between machines and humans using AI — Part 1
- Probability Density - How to take the probability density of any set of numbers and make an analysis.
- Exploring Chemical Knowledge Graph - Exploring Graph Networks for IUPAC Nomenclature and SMILES.
- Using Sunbursting to Detect Chemical Diversity - Using IUPAC with GlobalChem Sunbursts to determine Chemical Diversity for a list of SMILES with Plotly.
- Sunbursting FDA Colour Additive Lists - Sunbursting the FDA Colour Additive 7 Lists through ToxAlerts.
- Decoding Fingerprints to Chemical Name - Decoding Fingerprints to IUPAC/Natural Chemical Names
- Levenshtein Distance Applied on Common Chemical & IUPAC Names - Applying Levenshtein distance on IUPAC/Preferred names in GlobalChem for Natural Language Processing.
- Newick Trees - A Newick Tree for Protein Families and Relations
- Neo4J GraphDatabases - Part 1 — Connecting GlobalChem Knowledge Graph to Neo4j Graph Database
- Convolutional Neural Network for Cannabis - Designing a Convolutional Neural Network For Cannabis Machine Learning Part 1
- Non-Linear Optimization Problems - An Assignment For Optimizing Non-Linear Functions to Machine Learning Students
- GlobalChem Language with ChatGPT - Combining Chemical Languages with ChatGPT using Large Language Models (LLMs) Part 1
- Alexander Shulgin LLM - Resurrecting the Dead: Alexander Shulgin Large Language Model Agent with Langchain
- Using ChatGPT and FOIA to Gather Drug Seizure Data - Using Chat-GPT and Freedom of Information Act to Gather Imports/Exports of Drug Seizure Data
- Converting Your Knowledge Graph CSV into a Large Language Model With Langchain and ChainLit - Converting Your Knowledge Graph CSV into a Large Language Model With Langchain and ChainLit.
- What are Force Fields - What are force fields? A coder perspective into CHARMM.
- What are Atom Types - How to take the probability density of any set of numbers and make an analysis.
- Atom Types and SMILES to CurlySMILES - Inclusion of Atom Types in Force Fields to produce mixed CXSMILES, CXSMARTS, CurlySMILES
- Mixing CGenFF Atom Types with SMILES - Mixing CGenFF Atom Types to RDKit Mol2SVG Function and Visualizing
- Warning from RDCMND - Charmm Error: Warning from RDCMND, Command Line Too Long.
- Energy Change Tolerance Exceeded - Charmm Error: Energy Change Tolerance Exceeded
- Establishing EU and US Compliance in Your Software - Making Global-Chem Github Repository 21 CFR Part 11 and FAIR compliant for U.S and European Countries.
- Ethical Data Sharing Clauses For AI - Ethical Artificial Intelligence Data Sharing Clauses For B2B Agreements
- Hosting Websites - How to Host Static Websites for Cheap.
- Cloud Development for Academic Labs - Implementing Github Code spaces for an Academic Lab.
- Hair Falling Out - Female Chemistry Question: How to stop a lot of my hair falling out of the shower.
- Pain After I Orgasm - Women’s Health Large Language Model: Extreme Pain after I orgasm, is it endometriosis?
- Looking For Love - Looking for Love at the Airport
- My Transcript Diagram - Using a Sankey Diagram to Plot my Transcript
- Dealing With Death - Dealing with Death during your PhD
- My Old Transcripts - I went through my old transcripts.
- PhD Blog: What I cook for Buy and Plan to Cook for Food for the week - Ph.D. Blog: What I Buy and Plan to Cook when I go Grocery Shopping For the Week