These are resources that I found useful in my daily research and life.


  • : collaborative writing and publishing. My collaborators and I write latex manuscript together on this website. It supports using git to keep track of your changes.
  • Google docs: create and edit documents online for free. My collaborators and I use it for collaboratively writing word documents
  • : generate a list of possible acronyms given few keywords.
  • : a web-based hosting service for version control using git. I prefer to install GitHub Desktop as a GUI.
  • : a cloud-based set of proprietary team collaboration tools and services. I use it to communicate with my collaborators and answer questions from users of my softwares (e.g. CNMF-E).


  • Python
  • LaTex
  • Markdown: Markdown is a text-to-HTML conversion tool for web writers.
  • Zotero: Zotero is a free, easy-to-use tool to help you collect, organize, cite, and share research.
  • Jekyll : transform your plain text into static websites and blogs. This webpage is built based on a template of jekyll minima.
  • : a distributed version control system. I used it for organizing my code and manuscripts. It is powerful when combined with GitHub and Overleaf.
  • VS code : a source code editor. You can do almost all writing work with VS code. I used to use VIM and sublime text, but I switched to VS code once I tried it. I still use sublime text occasionally because it has a faster loading speed than VS code.
  • MySQL database management system. I use it to organize the data from my collaborators.


  • mydumper & myloader: back up MySQL database servers. It’s much faster then mysqldump.

  • export_fig: A toolbox for exporting figures from MATLAB to standard image and document formats nicely. You can save figures as what what see appearing on the screen.

  • DataJoint Combined with MySQL, you can manage large scale experimental datasets and access them from MATLAB/Python. Moreover, you can organize your data analysis in a systematic and reproducible pipeline.