Create a new branch, add your commits, and submit a Pull Request.
Wait for other developers’ code review and make requested changes.
Important things I learned from contributing to zulip
You don’t have to (or you won’t have time to?) know everything before you start contributing to a large codebase. Just know enough to get the work done. You can always study the rest when you have extra time.
Follow up quickly with the code reviewers.
Testings are important. I write much more lines of testing code than the production code.
“Monkey see, monkey do”. More formally, follow the convention. You can see how other tests are written to write your tests.
Practices/tools of Zulip that can be adopted by NUS-OSS projects
No coupling with specific IDEs/Editors. Both TEAMMATES and SEEDU are using Eclipse as primary IDE, but some developers prefer to work with an editor because it’s usually faster.
Use Vagrant/Docker. This can potentially avoid lots of questions on GitHub issues for difficulties in setting up TEAMMATES, due to different environment settings.
Comprehensive documentation using readthedocs.io, with handy features like search and version management of documentation.