Teaching
Introduction to Bioinformatics
This course serves as a fundamental introduction to the field of bioinformatics. It is designed to help students build a comprehensive knowledge framework, laying a solid foundation for subsequent specialized courses and scientific research.
Core Topics
- Fundamental Concepts: Definition, history, and frontiers of bioinformatics.
- Biological Databases: Proficient use of core databases such as NCBI, Ensembl, and PDB.
- Sequence Alignment: Understanding and applying classic algorithms like BLAST and Smith-Waterman.
- Gene & Function: Methods and tools for gene prediction and functional annotation.
- Protein Analysis: Methods for predicting protein structure and function.
- Evolutionary Analysis: Fundamentals of phylogenetic analysis and molecular evolution.

Advanced Python Programming
This course is designed for students who already have a basic understanding of Python. It aims to comprehensively enhance their programming skills and efficiency in solving complex problems, preparing them to tackle the data-intensive challenges in the field of bioinformatics.
Core Topics
- Advanced Features: In-depth study of decorators, generators, and metaclasses.
- Object-Oriented Programming (OOP): Mastering advanced design patterns and applications.
- Concurrent Programming: Including multi-threading, multi-processing, and asynchronous I/O models.
- Scientific Computing: Advanced usage of libraries such as NumPy, Pandas, and Matplotlib.
- Performance Optimization: Techniques for code profiling, bottleneck identification, and performance tuning.