A Curated List of Resources for STEM Ph.D. StudentsUpdated long long ago

undefined View/edit this page on 语雀
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

A curated list of resources for Ph.D. students. It includes both academic resources mainly for Computer Science or Engineering students and other resources (e.g., personal development, communication, and writing) that I personally feel useful and needed during my Ph.D. time.

Disclaimer I have not reviewed all the resources, but all resources are recommended by me or at least one of my advisor, friends, or colleagues.


Visualize data

Collect data

Make sense of data (statistics)


Algorithm and Programming

Art of algorithms

Learn to program interactively

Play Python (玩蛇)

Others’ resources collections

Software engineering

Personal bloggers

  • Eli Bendersky About system level, and AI programming with Python, C/C++, and go

Open-source community

It is always good to participate in open source projects, while we all have benefited a lot from the open source work accomplished by others. During your Ph.D. life, you may find that all the programming scripts you’ve written for your research projects can be turned into some reusable open-source software packages to be shared with others, and at the same time get some citation impact on the work that uses your software packages. Here are some good venues you may consider to publish your open-source software packages.

Artificial Intelligence

Learn machine learning

Learn from the Giants

Learn from Q&A

Start with the state-of-art packages

  • AliPy Latest Active Learning algorithms in a single Python package
  • Flair State-of-the-art Natural Language Processing framework
  • DAWN DAWN is a five-year research project by Stanford to create tools to democratize AI by making it dramatically easier to build AI-powered applications.
  • streamlit “The fastest way to build custom ML tools out of scripts”
  • rlpyt A Research Code Base for Deep Reinforcement Learning in PyTorch

Words from famous scientists

  • Jeffrey P. Bigham CMU professor for Human A.I.
  • The coming A.I. autumn Start to think A.I. from a human’s perspective
  • Adam Geitgey Very hands-on tutorials and blogs about A.I. and machine learning applications. His blog articles are well-written and just fit my personal pace of learning

Explainable machine learning

  • Distill.pub An open-access and web-friendly journal that dedicates to articles that clarify and reveal the insights of deep learning models.

High-performance computing

Health with technologies

Live as a Ph.D. student

Personality and habits

  • Learning to think: Becoming a functional Ph.D. student
  • Some Modest Advice for Graduate Students
  • The Graduate Student Survival Guide
  • NirandFar This is the official website of the author Nir Eyal, who has published famous books (e.g., hooked) about behavioral design that may be used in mobile app design. The book was originally recommended by my advisor during the course. Regardless of using the idea in app design, I find it is also important to understand how our brains and behaviors are affected by the technologies around us, both the positive and the negative sides. It is especially important for STEM Ph.D. students to be aware of the impact, because our lives are about creating new technical gadgets and concepts, and are literally surrounded by them

Communication matters

  • How to take criticism well An article about how to communicate in tough situations (e.g., rebuked by your advisor) written by Sabina Nawaz, who is a famous leadership coach. I once participated in her Ph.D. communication training workshop at Northeastern
  • Unhappy At Work? Persuade Your Boss To Redefine Your Job Another article about how to communicate in touch situations by Sabina Nawaz. It is about getting what you want from your advisor. This seems to be universally useful in all management relationships

Think deeply


Listen to the researchers

  • Serial mentor suggestions of being a successful researcher
  • Philip Guo Philip Guo’s articles, about general research, teaching, and HCI
  • @justsaysinmice Just Say In Mice, a scientific Twitter account that corrects the false promise/missing context of research headlines

Start with Grants

Serve in the community

Conduct research studies

Solve productivity crisis[1]

The crisis of managing the exploding digital stuff fed by your projects.

  • DMPtool Documenting the management plan before doing research
  • How to organize code in Python if you are a scientist Opinionated principles in software engineering for scientific codes. It may also apply to other programming languages
  • Try the following organization diagram + a README file recommended by Northeastern University Library


  • How to name your digital stuff (except for scripts)


Identify the impact of papers[1]

I will exclude well-known Google Scholar, and Microsoft Academic Search from the list because these are not indexing services and do not exclude predatory journals and conferences.

Web of Science is excluded because this requires a subscription. But your school should usually have a subscription. And its citation report is probably the most reliable service to find impactful journals.

Write an impactful paper

  1. This section extracts information from two webinar talks: How can I organize and manage my digital stuff, How can I avoid predatory journals and publishers and How can I determine how impactful my research is from Northeastern University Library Service. ↩︎