Amy Tzuyu Chen

Notes on Making an Internal R Package for Team

Amy Tzu-Yu Chen / 2019-07-26


A month ago, Malcolm asked on Slack about how to make internal R packages for company/organization/team. I ended up summarizing some useful practices that I learned from System1 DS team.

The Conversation | June 26, 2019

Malcolm Barrett: Anyone have resources or best practices they like for making internal packages? …

Amy Tzu-Yu Chen: I don’t really have any written resources but i learned some “better” practices while building internal packages with the team. I’ll try to write them down but really, I learned by reviewing Gergely and my other teammates’ codes

What should be in the package?

First of all, an internal package is sth you build for all R users in your company. So it’s important to understand what they need. A lot of helper functions are not too fancy. They could be

Collaboration

Second, code reviews is important. Main useRs in the company should code review each other’s edits on the internal package and be a contributor.

Be open-source minded

Third, design internal pkg to streamline your and your co-workers’ work processes, but it’s nice to be open-source minded. Ask yourself if you can open-source parts of your work and make it available to the public. https://system1.com/open-source is a result of being open-source minded

Disclaimer

I am mainly a user of these internal/open-source packages. Wanna attribute credits to Gergely @daroczig and Neal Fultz @nfultz who made these happen in the first place. Follow them on Github to make them happy