Learn about Python, Data, AI, R, Streamlit, and Apps.

From your first line of Python to your next AI app.
Learn with me through practical examples and real projects.

TUTORIAL EXAMPLE

Small experiments.
Useful discoveries.

Read a little code. Change something. See what happens. That's how we turn Python, data science, and AI into things you can build.

Find your next tutorial
data-analysis.pyPYTHON
  1. import matplotlib.pyplot as plt # Plotting tools
  2. # Set the bar heights and their x-axis labels.
  3. scores = [72, 85, 95] # Change scores
  4. labels = ["A", "B", "C"] # Change bar label
  5. # Create a figure and its plotting area.
  6. fig, ax = plt.subplots()
  7. # Draw three bars with a solid teal fill.
  8. ax.bar(range(3), scores, width=0.52, color="#007c96", zorder=2)
  9. # Label the bars and fix the score scale at 0-100.
  10. ax.set_xticks(range(3), labels)
  11. ax.set(xlim=(-0.7, 2.7), ylim=(0, 100), yticks=[0, 50, 100])
  12. # Put horizontal grid lines behind the bars.
  13. ax.set_axisbelow(True)
  14. ax.grid(axis="y", alpha=0.2)
  15. # Mark the average with an orange dashed line.
  16. ax.axhline(sum(scores) / len(scores), color="#c56408", linestyle="--", zorder=3)
  17. # Print each score just above its bar.
  18. for index, score in enumerate(scores):
  19. ax.text(index, score + 3, str(score), ha="center")
  20. plt.show() # Display the finished chart
Change the code values. Updated lines are highlighted.
Scores plotted from the Python exampleScores A, B, C are 72, 85, 95. The mean is 84. Bars use a solid teal fill.
Illustrative Python. Chart updates in your browser; no Python runtime.

01 / BLOG

Articles & guides.

Things I've learned. Things you can build.

134 articles
Explore all 134 articles

5 shown above. The remaining 129 are listed below by date, newest first. Undated entries appear last.

  1. Getting Started with Snowflake Interactive Analytics
  2. Building an LLM (Large Language Model) Application
  3. Build an AI-Powered Analytics App with Natural Language
  4. Vibe Code a Streamlit App
  5. Build Streamlit Apps with Agent Skills
  6. Build a Cortex Agent from Scratch with Snowflake
  7. Create Shareable Cortex Code Session Replays with cortex-replay
  8. Build a Multi-Tool AI Agent App with Streamlit and Snowflake Cortex
  9. Build AI Apps with LangChain, Streamlit and Snowflake Cortex
  10. Build an LLM Model Comparison App with Streamlit and Snowflake Cortex
  11. Build a Chatbot App with Streamlit and Snowflake Cortex
  12. Build a RAG App with Streamlit and Snowflake Cortex
  13. Build a Voice Assistant App with Streamlit and Snowflake Cortex
  14. Build an Image Analysis App with Streamlit and Snowflake Cortex
  15. Build AI Apps with Streamlit and Snowflake Cortex
  16. Build Semantic Views and Connect to Tableau with Snowflake
  17. Create Snowflake Guides with AGENTS.md
  18. Build Business-Ready Queries with Snowflake Semantic Views
  19. Agentic Analytics with Snowflake Semantic Views
  20. Build Your First Machine Learning Project
  21. Getting Started with Snowflake Interactive Tables
  22. Accelerate Topic Modeling with GPUs in Snowflake ML
  23. How To Accelerate Data Warehouse Migrations With SnowConvert AI
  24. Getting Started with Snowflake Semantic View
  25. Build a Bioinformatics Solubility Dashboard in Snowflake
  26. How to build a DeepSeek-R1 chatbot
  27. The Art of Creating Dashboard Apps
  28. Beginner's Guide to OpenAI API
  29. 12 Mental Models for Data Science
  30. The Art of Learning Data Science
  31. Day 26 of the 66 Days of Data
  32. Day 24 of the 66 Days of Data
  33. Day 25 of the 66 Days of Data
  34. Day 23 of the 66 Days of Data
  35. Day 21 of the 66 Days of Data
  36. Day 22 of the 66 Days of Data
  37. Day 20 of the 66 Days of Data
  38. Day 19 of the 66 Days of Data
  39. Day 18 of the 66 Days of Data
  40. Day 17 of the 66 Days of Data
  41. Day 16 of the 66 Days of Data
  42. Day 14 of the 66 Days of Data
  43. A Deep Dive on the Pandas Index
  44. A Quick Dive on Generative Models
  45. Day 9 of the 66 Days of Data
  46. How to Learn Anything
  47. Day 8 of the 66 Days of Data
  48. Day 4 of the 66 Days of Data
  49. Day 7 of the 66 Days of Data
  50. Day 6 of the 66 Days of Data
  51. Day 5 of the 66 Days of Data
  52. Day 3 of the 66 Days of Data
  53. Day 2 of the 66 Days of Data
  54. Day 1 of the 66 Days of Data
  55. How to Create Animated Plots in R
  56. Data Science Starter Kit
  57. What exactly is Bioinformatics?
  58. About Data Professor
  59. Data Science is like Cooking
  60. The Data Science Process
  61. 101 Data Science Quotes
  62. Learn Data Science in 10 Steps

02 / VIDEO

Learn by doing.

Pull up a chair. Let's build something together.

404 videos
Explore all 404 videos

3 shown above. The remaining 401 are listed below by date, newest first. Undated entries appear last.

  1. Build Streamlit Apps with Cortex Code CLI
  2. Build Streamlit Apps with AI Agents
  3. Streamlit Virtual Meetup
  4. Streamlit Virtual Meetup
  5. Dentist vibe codes a dental app
  6. Build an LLM-Powered Voice Agent in Python
  7. Process DataFrame With Modin And Snowflake Cortex
  8. Demo | Getting Started With Snowflake Semantic View
  9. Interview: Career Transition from Academia to Tech
  10. Build A LLM-powered Data Analysis App With Streamlit
  11. How To Build A DeepSeek-R1 Chatbot In Python
  12. How to Quickly Leverage Computer Vision in Python
  13. Building A Dashboard With Streamlit In Snowflake Notebooks
  14. Using Google Colab for Data Science and AI
  15. Data Science Podcast with Sebastian Flores
  16. Build a Streamlit Dashboard app in Python
  17. How to level up in Gen AI
  18. Code your own YouTube AI assistant in Python
  19. Data Storytelling in Python
  20. Building the Streamlit App Builder
  21. How to use Llama2 locally
  22. Streamlit LLM Hackathon
  23. Streamlit LLM Hackathon
  24. Introducing the Mito Streamlit component
  25. How to build a Llama 2 chatbot
  26. How to use the Llama 2 LLM in Python
  27. How I would learn Python
  28. Streamlit Hackathon - Ready, Set, Build!
  29. How to connect Streamlit to Snowflake
  30. ChatGPT a threat for schools?
  31. How To Build A Machine Learning Application Using Streamlit
  32. How to use ChatGPT to Explain Code
  33. How to use ChatGPT to Generate Code in 90 seconds
  34. How to summarize text using ChatGPT
  35. How to get started with ChatGPT for Beginners
  36. Streamlit Demo & High Level Overview
  37. Streamlit Tutorial | Tools You Can Use to Master Streamlit
  38. How To Build A Streamlit App | Demo
  39. Build machine learning models in Google Sheets
  40. Welcome to the Data Professor YouTube channel
  41. Streamlit at tech conference Build 22
  42. How to quickly prototype your Streamlit web app
  43. Create a free links page using Streamlit
  44. Introduction to Computational Drug Discovery
  45. Data Science Podcast with @misraturp
  46. Faster Data Analysis in Python with Mito
  47. Free computing resource for data science
  48. Introduction to DagsHub for Data Science
  49. How to create graphs using Mito
  50. How to stay up-to-date in data science
  51. Python 101 for Beginners
  52. So how is a machine learning model built?
  53. Python Data Science in a Spreadsheet
  54. How to get started with Pandas for Data Science
  55. How to create your first data science project
  56. How to apply custom CSS styles in Streamlit apps
  57. dabl - A Python library for AutoEDA and AutoML
  58. The Future of this Data Science YouTube Channel
  59. How to Stay Motivated Learning Data Science
  60. Exploring and Analyzing Data with Mito
  61. My journey into data science
  62. How to web scrape data using no code with Octoparse
  63. How to build a Google Scholar App | Streamlit #30
  64. Using Mito to make Machine Learning Easier
  65. How to Use Mito for Data Analysis in Python
  66. An Introduction to Computational Drug Discovery
  67. How to automatically clean data with BitRook
  68. How to automate data processing in Python with Mito
  69. Data Slicing in Python with Mito
  70. AlphaFold 2 Paper with Code
  71. How to handle missing data with Pandas
  72. Data Science for Bioinformatics
  73. How to Master Python for Data Science
  74. How to Create Animated Plots in R
  75. Who is the Data Professor? (KNN Ep. 52)
  76. How to handle imbalanced datasets in Python
  77. How to Build Bioinformatics Tools
  78. How to stack machine learning models in Python
  79. Learn about the R Data Types | R Tutorial #3
  80. Easy webscraping in Python
  81. How to install R packages | R Tutorial #2
  82. How to Build Your Own AutoML App | Streamlit #17
  83. How to Make a Multi-Page Web App | Streamlit #16
  84. How to Build a Machine Learning App | Streamlit #13
  85. Learn AI for FREE (Elements of AI)
  86. How to Build a Machine Learning Model
  87. How to use Spreadsheet in Python with Mito
  88. Build AI Apps with H2O Wave (from H2O.ai)
  89. The Data Science Process - A Visual Guide (Part 2)
  90. The Data Science Process - A Visual Guide (Part 1)
  91. How to Perform Data Splitting (Weka Tutorial #5)
  92. Kite: Free AI Coding Assistant + Giveaway
  93. Ask Me Anything About Bioinformatics #3
  94. Ask Me Anything About Bioinformatics #2
  95. This Book will Help you Land a Data Science Job
  96. Spreadsheets in Python with Mito library
  97. How to Build Regression Models (Weka Tutorial #1)
  98. Ask Me Anything About Bioinformatics #1
  99. Learn Deep Learning from NVIDIA
  100. Learn Data Science with Medium.com
  101. Data Science in Industry (Ft. RichardOnData)
  102. Learn Python for Data Science (with Real Python)
  103. Tons of FREE Data for Data Science (TidyTuesday)
  104. How to use Grepper for Data Science
  105. How to use Pandas Profiling on Kaggle
  106. How to Adjust the Style of Pandas DataFrame
  107. How to Upload Files to Google Colab
  108. Use native R on Google Colab for Data Science
  109. File Handling in Google Colab for Data Science
  110. Compare Machine Learning Classifiers in Python
  111. Interpretable Machine Learning Models
  112. Using Python in R
  113. Data Pre-processing in R: Handling Missing Data
  114. R Programming 101: Read and Write CSV files
  115. R Programming 101: How to Define Variables
  116. Quotes #5 on Big Data and Data Science
  117. Quotes #4 on Big Data and Data Science
  118. Quotes #3 on Big Data and Data Science
  119. Quotes #2 on Big Data and Data Science
  120. Quotes #1 on Big Data and Data Science
  121. How a Biologist became a Data Scientist

03 / COURSES

Build something of your own.

Guided courses and playlists to learn at your own pace.

4 courses & playlists

04 / TALKS

Beyond the screen.

Conversations, workshops, and ideas shared in person.

20 talks
Explore all 20 talks

3 shown above. The remaining 17 are listed below by date, newest first. Undated entries appear last.

  1. From Lab Bench to Big Tech: How transferable skills bridged my research and tech careers
  2. The Ultimate Guide to Vibe Engineering with Streamlit
  3. Build LLM-powered Data Analysis Apps with Streamlit & Snowflake
  4. Career Transition from Academia to Tech
  5. Crafting a Dashboard App in Python using Streamlit
  6. Getting started with Streamlit
  7. AI-Driven Bioinformatics (Drug Design)
  8. Who is the @DataProfessor? (Chanin Nantasenamat) - KNN Ep. 52

05 / RESEARCH

Rooted in research.

From bioinformatics to reproducible machine learning.

167 publications
  1. Book chapterBuilding bioinformatics web applications with Streamlit
  2. Review articleTowards reproducible computational drug discovery
Find me on Google Scholar
Explore all 167 publications

3 shown above. The remaining 164 are listed below by year, newest first.

  1. Research articleiBitter-Fuse: A Novel Sequence-Based Bitter Peptide Predictor by Fusing Multi-View Features
  2. Research articleHCVpred: A web server for predicting the bioactivity of hepatitis C virus NS5B inhibitors
  3. Book chapterBest Practices for Constructing Reproducible QSAR Models
  4. Research articleTargetAntiAngio: a sequence-based tool for the prediction and analysis of anti-angiogenic peptides
  5. Research articleHIVCoR: A sequence-based tool for predicting HIV-1 CRF01_AE coreceptor usage
  6. Research articleTHPep: a machine learning-based approach for predicting tumor homing peptides
  7. Book chapter10. Proteochemometric modeling for drug repositioning
  8. Research articlePAAP: a web server for predicting antihypertensive activity of peptides
  9. Review articleExploring the epigenetic drug discovery landscape
  10. Review articleMolecularly imprinted polymer for human viral pathogens detection
  11. Research articleThe MicroRNA interaction network of lipid diseases
  12. Research articlePepBio: Predicting the bioactivity of host defense peptides
  13. Research articleHemoPred: A web server for predicting the hemolytic activity of peptides
  14. Review articleExploring the chemical space of P-glycoprotein interacting compounds
  15. Book chapterTowards the revival of interpretable QSAR models
  16. Review articleRoles of D-Amino Acids on the Bioactivity of Host Defense Peptides
  17. Research articleExtending Proteochemometric Modeling for Unraveling the Sorption Behavior of Compound-Soil Interaction
  18. Review articleComputer-Aided Drug Design of Bioactive Natural Products
  19. Research articleMaximizing computational tools for successful drug discovery
  20. Research articlePredicting Metabolic Syndrome using The Random Forest Method
  21. Research articleNavigating the chemical space of dipeptidyl peptidase 4 inhibitors
  22. Research articleProbing the origins of anticancer activity of chrysin derivatives
  23. Research articleSynthesis and molecular docking of 1,2,3-triazole-based sulfonamides as aromatase inhibitors
  24. Research articleProteochemometric model for predicting the inhibition of penicillin-binding proteins
  25. Research articleAutoweka: Toward an automated data mining software for QSAR and QSPR studies
  26. Research articleLarge-scale QSAR study of aromatase inhibitors using SMILES-based descriptors
  27. Research articleSynthesis, anticancer activity and QSAR study of 1,4-naphthoquinone derivatives
  28. Research articlePredictive QSAR modeling of aldose reductase inhibitors using Monte Carlo feature selection
  29. Research articleQSAR study of H1N1 neuraminidase inhibitors from influenza A virus
  30. Book chapterElucidating the Structure-Activity Relationship of Curcumin and its Biological Activities
  31. Review articleTrapping of human hemoglobin by haptoglobin: Molecular mechanisms and clinical applications
  32. Research articleExploring the chemical space of aromatase inhibitors
  33. Research articlePredicting antimicrobial activities of benzimidazole derivatives
  34. Research articleGenetic algorithm search space splicing particle swarm optimization as general-purpose optimizer
  35. Research articleQSAR study of anti-prion activity of 2-aminothiazoles
  36. Research articlePredicting the free radical scavenging activity of curcumin derivatives
  37. Research articlePyBact: An algorithm for bacterial identification
  38. Research articleMolecular docking of aromatase inhibitors
  39. Research articleAdvances in computational methods to predict the biological activity of compounds
  40. Research articleData mining of magnetocardiograms for prediction of ischemic heart disease
  41. Research articleIdentification of metabolic syndrome using decision tree analysis
  42. Research articleCopper complexes of pyridine derivatives with superoxide scavenging and antimicrobial activities
  43. Research articleModeling the activity of furin inhibitors using artificial neural network
  44. Research articleRoles of cysteine residue on chimeric green fluorescent protein: Implications on protein solubilization and fluorescent property
  45. Research articleComputational insights on sulfonamide imprinted polymers
  46. Research articlePrediction of bond dissociation enthalpy of antioxidant phenols by support vector machine
  47. Research articleQSAR model of the quorum-quenching N-acyl-homoserine lactone lactonase activity
  48. Research articleRational design of analyte channels of the green fluorescent protein for biosensor applications
  49. Research articleQuantitative structure-imprinting factor relationship of molecularly imprinted polymers
  50. Research articlePrediction of GFP spectral properties using artificial neural network
  51. Research articleMetalloantibiotic Mn(II)-bacitracin complex mimicking manganese superoxide dismutase

06 / OPEN SOURCE

Building in the open.

A year of commits, issues, and pull requests across my personal and work accounts.

2 GitHub accounts
Follow dataprofessor on GitHub
GitHub followers
9,561
across both accounts
Public repositories
345
across both accounts
Contributions
1,766
in the last year
NovDecJanFebMarAprMayJunJulAugSepOctMonWedFriNo contributions on Oct 5, 2025No contributions on Oct 6, 20252 contributions on Oct 7, 20253 contributions on Oct 8, 20256 contributions on Oct 9, 2025No contributions on Oct 10, 2025No contributions on Oct 11, 2025No contributions on Oct 12, 202521 contributions on Oct 13, 2025No contributions on Oct 14, 2025No contributions on Oct 15, 20256 contributions on Oct 16, 202531 contributions on Oct 17, 202525 contributions on Oct 18, 20259 contributions on Oct 19, 2025No contributions on Oct 20, 20252 contributions on Oct 21, 2025No contributions on Oct 22, 202532 contributions on Oct 23, 20257 contributions on Oct 24, 2025No contributions on Oct 25, 2025No contributions on Oct 26, 20253 contributions on Oct 27, 2025No contributions on Oct 28, 20253 contributions on Oct 29, 202528 contributions on Oct 30, 20251 contribution on Oct 31, 2025No contributions on Nov 1, 2025No contributions on Nov 2, 202515 contributions on Nov 3, 202548 contributions on Nov 4, 202525 contributions on Nov 5, 202535 contributions on Nov 6, 202516 contributions on Nov 7, 202522 contributions on Nov 8, 2025No contributions on Nov 9, 202510 contributions on Nov 10, 2025No contributions on Nov 11, 20253 contributions on Nov 12, 20254 contributions on Nov 13, 202513 contributions on Nov 14, 202524 contributions on Nov 15, 202547 contributions on Nov 16, 20254 contributions on Nov 17, 202525 contributions on Nov 18, 202514 contributions on Nov 19, 20251 contribution on Nov 20, 202514 contributions on Nov 21, 2025No contributions on Nov 22, 2025No contributions on Nov 23, 20253 contributions on Nov 24, 2025No contributions on Nov 25, 2025No contributions on Nov 26, 2025No contributions on Nov 27, 2025No contributions on Nov 28, 2025No contributions on Nov 29, 2025No contributions on Nov 30, 20256 contributions on Dec 1, 2025No contributions on Dec 2, 2025No contributions on Dec 3, 2025No contributions on Dec 4, 202521 contributions on Dec 5, 2025No contributions on Dec 6, 2025No contributions on Dec 7, 20256 contributions on Dec 8, 20251 contribution on Dec 9, 202529 contributions on Dec 10, 202510 contributions on Dec 11, 2025No contributions on Dec 12, 20256 contributions on Dec 13, 20252 contributions on Dec 14, 202510 contributions on Dec 15, 20252 contributions on Dec 16, 20254 contributions on Dec 17, 20253 contributions on Dec 18, 20252 contributions on Dec 19, 2025No contributions on Dec 20, 2025No contributions on Dec 21, 2025No contributions on Dec 22, 20252 contributions on Dec 23, 20251 contribution on Dec 24, 2025No contributions on Dec 25, 2025No contributions on Dec 26, 2025No contributions on Dec 27, 2025No contributions on Dec 28, 2025No contributions on Dec 29, 2025No contributions on Dec 30, 2025No contributions on Dec 31, 20253 contributions on Jan 1, 202633 contributions on Jan 2, 202621 contributions on Jan 3, 202614 contributions on Jan 4, 202622 contributions on Jan 5, 20267 contributions on Jan 6, 202610 contributions on Jan 7, 20268 contributions on Jan 8, 202630 contributions on Jan 9, 202613 contributions on Jan 10, 202611 contributions on Jan 11, 202624 contributions on Jan 12, 202612 contributions on Jan 13, 20268 contributions on Jan 14, 202618 contributions on Jan 15, 202627 contributions on Jan 16, 202610 contributions on Jan 17, 20266 contributions on Jan 18, 20267 contributions on Jan 19, 202612 contributions on Jan 20, 20269 contributions on Jan 21, 20269 contributions on Jan 22, 20267 contributions on Jan 23, 202618 contributions on Jan 24, 202617 contributions on Jan 25, 202614 contributions on Jan 26, 202616 contributions on Jan 27, 202611 contributions on Jan 28, 20267 contributions on Jan 29, 20262 contributions on Jan 30, 2026No contributions on Jan 31, 2026No contributions on Feb 1, 2026No contributions on Feb 2, 2026No contributions on Feb 3, 2026No contributions on Feb 4, 2026No contributions on Feb 5, 20265 contributions on Feb 6, 20264 contributions on Feb 7, 20262 contributions on Feb 8, 202613 contributions on Feb 9, 202611 contributions on Feb 10, 2026No contributions on Feb 11, 20263 contributions on Feb 12, 202612 contributions on Feb 13, 202610 contributions on Feb 14, 2026No contributions on Feb 15, 2026No contributions on Feb 16, 202621 contributions on Feb 17, 202612 contributions on Feb 18, 202613 contributions on Feb 19, 202622 contributions on Feb 20, 2026No contributions on Feb 21, 2026No contributions on Feb 22, 20262 contributions on Feb 23, 20267 contributions on Feb 24, 20266 contributions on Feb 25, 202611 contributions on Feb 26, 202611 contributions on Feb 27, 2026No contributions on Feb 28, 2026No contributions on Mar 1, 20266 contributions on Mar 2, 20262 contributions on Mar 3, 2026No contributions on Mar 4, 2026No contributions on Mar 5, 2026No contributions on Mar 6, 20261 contribution on Mar 7, 20262 contributions on Mar 8, 202617 contributions on Mar 9, 20267 contributions on Mar 10, 202619 contributions on Mar 11, 20262 contributions on Mar 12, 20263 contributions on Mar 13, 2026No contributions on Mar 14, 2026No contributions on Mar 15, 2026No contributions on Mar 16, 202613 contributions on Mar 17, 20262 contributions on Mar 18, 20265 contributions on Mar 19, 20261 contribution on Mar 20, 2026No contributions on Mar 21, 2026No contributions on Mar 22, 2026No contributions on Mar 23, 20261 contribution on Mar 24, 202610 contributions on Mar 25, 20261 contribution on Mar 26, 2026No contributions on Mar 27, 2026No contributions on Mar 28, 2026No contributions on Mar 29, 20264 contributions on Mar 30, 2026No contributions on Mar 31, 2026No contributions on Apr 1, 2026No contributions on Apr 2, 2026No contributions on Apr 3, 20263 contributions on Apr 4, 2026No contributions on Apr 5, 202612 contributions on Apr 6, 202655 contributions on Apr 7, 20269 contributions on Apr 8, 20268 contributions on Apr 9, 20262 contributions on Apr 10, 2026No contributions on Apr 11, 20262 contributions on Apr 12, 20262 contributions on Apr 13, 202616 contributions on Apr 14, 2026No contributions on Apr 15, 2026No contributions on Apr 16, 2026No contributions on Apr 17, 2026No contributions on Apr 18, 20262 contributions on Apr 19, 2026No contributions on Apr 20, 2026No contributions on Apr 21, 2026No contributions on Apr 22, 20262 contributions on Apr 23, 2026No contributions on Apr 24, 2026No contributions on Apr 25, 2026No contributions on Apr 26, 2026No contributions on Apr 27, 2026No contributions on Apr 28, 2026No contributions on Apr 29, 2026No contributions on Apr 30, 2026No contributions on May 1, 2026No contributions on May 2, 2026No contributions on May 3, 20262 contributions on May 4, 2026No contributions on May 5, 2026No contributions on May 6, 202613 contributions on May 7, 2026No contributions on May 8, 2026No contributions on May 9, 2026No contributions on May 10, 2026No contributions on May 11, 2026No contributions on May 12, 20261 contribution on May 13, 2026No contributions on May 14, 20262 contributions on May 15, 2026No contributions on May 16, 2026No contributions on May 17, 2026No contributions on May 18, 20262 contributions on May 19, 20264 contributions on May 20, 20262 contributions on May 21, 20261 contribution on May 22, 2026No contributions on May 23, 2026No contributions on May 24, 202616 contributions on May 25, 20261 contribution on May 26, 2026No contributions on May 27, 2026No contributions on May 28, 2026No contributions on May 29, 2026No contributions on May 30, 2026No contributions on May 31, 2026No contributions on Jun 1, 2026No contributions on Jun 2, 2026No contributions on Jun 3, 2026No contributions on Jun 4, 2026No contributions on Jun 5, 2026No contributions on Jun 6, 2026No contributions on Jun 7, 2026No contributions on Jun 8, 2026No contributions on Jun 9, 20261 contribution on Jun 10, 2026No contributions on Jun 11, 20261 contribution on Jun 12, 2026No contributions on Jun 13, 2026No contributions on Jun 14, 20267 contributions on Jun 15, 20266 contributions on Jun 16, 20262 contributions on Jun 17, 20265 contributions on Jun 18, 202615 contributions on Jun 19, 20266 contributions on Jun 20, 2026No contributions on Jun 21, 20263 contributions on Jun 22, 20268 contributions on Jun 23, 202611 contributions on Jun 24, 20263 contributions on Jun 25, 2026No contributions on Jun 26, 2026No contributions on Jun 27, 2026No contributions on Jun 28, 2026No contributions on Jun 29, 2026No contributions on Jun 30, 2026No contributions on Jul 1, 2026No contributions on Jul 2, 2026No contributions on Jul 3, 2026No contributions on Jul 4, 2026No contributions on Jul 5, 2026No contributions on Jul 6, 2026No contributions on Jul 7, 2026No contributions on Jul 8, 2026No contributions on Jul 9, 2026No contributions on Jul 10, 2026No contributions on Jul 11, 2026No contributions on Jul 12, 2026No contributions on Jul 13, 2026No contributions on Jul 14, 2026No contributions on Jul 15, 2026No contributions on Jul 16, 2026No contributions on Jul 17, 2026No contributions on Jul 18, 2026No contributions on Jul 19, 2026No contributions on Jul 20, 2026No contributions on Jul 21, 20262 contributions on Jul 22, 2026No contributions on Jul 23, 2026No contributions on Jul 24, 2026No contributions on Jul 25, 2026No contributions on Jul 26, 2026No contributions on Jul 27, 2026No contributions on Jul 28, 2026No contributions on Jul 29, 20261 contribution on Jul 30, 2026No contributions on Jul 31, 2026No contributions on Aug 1, 2026No contributions on Aug 2, 2026No contributions on Aug 3, 20261 contribution on Aug 4, 2026No contributions on Aug 5, 2026No contributions on Aug 6, 2026No contributions on Aug 7, 2026No contributions on Aug 8, 2026No contributions on Aug 9, 20261 contribution on Aug 10, 20268 contributions on Aug 11, 20261 contribution on Aug 12, 20261 contribution on Aug 13, 202614 contributions on Aug 14, 2026No contributions on Aug 15, 20261 contribution on Aug 16, 2026No contributions on Aug 17, 20262 contributions on Aug 18, 202611 contributions on Aug 19, 20265 contributions on Aug 20, 20263 contributions on Aug 21, 2026No contributions on Aug 22, 2026No contributions on Aug 23, 2026No contributions on Aug 24, 2026No contributions on Aug 25, 2026No contributions on Aug 26, 20262 contributions on Aug 27, 20269 contributions on Aug 28, 2026No contributions on Aug 29, 2026No contributions on Aug 30, 20267 contributions on Aug 31, 20266 contributions on Sep 1, 20268 contributions on Sep 2, 20265 contributions on Sep 3, 2026No contributions on Sep 4, 2026No contributions on Sep 5, 2026No contributions on Sep 6, 2026No contributions on Sep 7, 202611 contributions on Sep 8, 20263 contributions on Sep 9, 20261 contribution on Sep 10, 20265 contributions on Sep 11, 2026No contributions on Sep 12, 20262 contributions on Sep 13, 20263 contributions on Sep 14, 20262 contributions on Sep 15, 202629 contributions on Sep 16, 202627 contributions on Sep 17, 202615 contributions on Sep 18, 20269 contributions on Sep 19, 20261 contribution on Sep 20, 20263 contributions on Sep 21, 2026No contributions on Sep 22, 2026No contributions on Sep 23, 20264 contributions on Sep 24, 20262 contributions on Sep 25, 20261 contribution on Sep 26, 20261 contribution on Sep 27, 20261 contribution on Sep 28, 20268 contributions on Sep 29, 20262 contributions on Sep 30, 20266 contributions on Oct 1, 202621 contributions on Oct 2, 20265 contributions on Oct 3, 20267 contributions on Oct 4, 202610 contributions on Oct 5, 2026

Public GitHub profiles and calendars, snapshot Oct 5, 2026. Private contributions appear only if an account shares them.

A COMMUNITY OF CURIOUS MINDS

Learning, together.

Let's collaborate
Media kit & audience demographics

Audience breakdown (2025). Figures are from the existing media kit, not live analytics.

Top geographies

India30.4%
30.4%
United States12.8%
12.8%
United Kingdom2.9%
2.9%
Pakistan2.2%
2.2%
Germany2.1%
2.1%

Age distribution

18-24 years44.3%
44.3%
25-34 years33.9%
33.9%
35-44 years13.8%
13.8%
45-54 years6%
6%
55-64 years1.6%
1.6%
65+ years0.3%
0.3%

Gender distribution

Male76.9%
76.9%
Female23%
23%
Chanin NantasenamatTHE PERSON BEHIND DATA PROFESSOR
Chanin Nantasenamat, PhD

RESEARCHER. EDUCATOR. BUILDER.

Hi, I'm Chanin.

Research taught me to ask questions.
Code lets me answer them.

I'm a Lead Developer Advocate for Open Source at Snowflake, creating educational content on building data apps with Streamlit and Snowflake. Before tech, I was a Professor of Bioinformatics, using Python to teach and perform research in computational drug discovery.

Since 2019, I've shared data science and AI tutorials on the Data Professor YouTube channel. Those videos have received more than 10 million views.