Welcome to my personal website! My name is Hao He (何昊). I’m currently a Ph.D. candidate in Computer Software and Theory at Peking University, supervised by Minghui Zhou. Before that, I received my Bachelors’ Degree on Computer Science at Peking University in 2020. My research interest is to address practical problems and interpret interesting phenomenon in the field of software engineering, using whatever methodology that helps, be it quantitative or qualitative.
Recently, I’m focusing on the general topic of dependency management in software engineering. More specifically, I want to design novel tools to manage, curate and secure software dependencies during software evolution. I have developed an approach for automated mining and recommendation of library migration targets, which have been deployed in a proprietary 3rd-party library management tool at Huawei. I am also participating a side research project in understanding code comment practices.
Besides that, I also love to make something cool by programming. I also enjoy playing games, especially those with complex and in-depth mechanics to study.
For my detailed information please see below. You can also refer to my GitHub for paper code and other projects.
- B.S. in Computer Science, Peking University, 2016-2020, GPA 3.70/4.0 (Top 20%), Thesis.
- Ph.D. Candidate in Computer Software and Theory, Peking University, 2020-2025 (expected). Advisor: Minghui Zhou.
Hao He, Runzhi He, Haiqiao Gu, and Minghui Zhou. A Large-Scale Empirical Study on Java Library Migrations: Prevalence, Trends, and Rationales. Under Review. PDF.
Hao He, Yulin Xu, Xiao Cheng, Guangtai Liang and Minghui Zhou. MigrationAdvisor: Recommending LibraryMigrations from Large-Scale Open-Source Data. Accepted by ICSE 2021 Demonstration Track. Acceptance Rate: 37.1% (23/62). PDF.
Hao He, Yulin Xu, Yixiao Ma, Yifei Xu, Guangtai Liang and Minghui Zhou. A Multi-Metric Ranking Approach for Library Migration Recommendations. Proceedings of the 28th IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER 2021). Acceptance Rate: 25.5% (42/165). PDF. Slides. 中文版.
Chao Wang, Hao He, Uma Paroma, Darko Marinov, and Minghui Zhou. An Extensive Study of Independent Comment Changes in Java Projects. Preparing for Another Submission...
Hao He. Understanding Source Code Comments at Large-Scale. In Proceedings of the 27th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE 2019), August 26–30, 2019, Tallinn, Estonia. ACM, New York, NY, USA, 3 pages.
Yue Wu, Kenuo Xu, Hao He, Zihang Wu and Chenren Xu. Poster: Retroreflective MIMO Communication. In Proceedings of the 20th International Workshop on Mobile Computing Systems and Applications (HotMobile 2019).
- Sept 2020 - Jan 2021, Software Engineer Intern
- Software Analysis Lab, Cloud BU, Huawei Technologies Co., Ltd.
- Responsible for developing Spark™ applications for large-scale mining of internal Java projects, and using the mined data for 3rd-party library risk prediction and migration recommendation.
- Xiao Cheng, Zeyu Wang, Ruowen Chen, Junjie Yu, Hao He, Guangtai Liang, Minghui Zhou. A Service that Upgrades or Replaces Vulnerable Thrid-Party Libraries Automatically (一个漏洞三方库自动升级替换服务). Huawei Technologies Co., Ltd.
Awards and Honors
- 2020 ChinaSoft Software Prototype Contest (Free Topic Track), Thrid Prize
- The Third Prize of Peking University Scholarship, 2018-2019
- Award for Academic Excellence, Peking University, 2018-2019
- Award for Academic Excellence, Peking University, 2017-2018
- Chinese (Native)
- English (Fluent), TOFEL 106/120, CET-6 661/710
- Japanese (Fluent), JLPT N2 Qualified 180/180 (yes, a full score)
- Programming Languages
- Skills for
- Program Analysis and Mining Software Repositories
- Data Analysis: Numpy, Pandas, Matplotlib, Seaborn
- Frontend: HTML, CSS, Vue.js, Bootstrap, Element UI
- Backend: Spring Boot, MongoDB, MySQL, Spark, Hadoop, MapReduce
- Game Development: Unity, Cocos Creator, OpenGL