Talk Python To Me

Michael Kennedy (@mkennedy)

Talk Python to Me is a weekly podcast hosted by developer and entrepreneur Michael Kennedy. We dive deep into the popular packages and software developers, data scientists, and incredible hobbyists doing amazing things with Python. If you're new to Python, you'll quickly learn the ins and outs of the community by hearing from the leaders. And if you've been Pythoning for years, you'll learn about your favorite packages and the hot new ones coming out of open source. read less

#399: Monorepos in Python
#399: Monorepos in Python
Monorepos are contrary to how many of us have been taught to use source control. To start a project or app, the first thing we do is create a git repo for it. This leads to many focused and small repositories. A quick check of my GitHub account shows there are 179 non-fork repositories. That's a lot but I think many of us work that way. But it's not like this with monorepos. There you create one (or a couple) repositories for your entire company. This might have 100s or 1,000s of employees working on multiple projects within the single repo. Famously, Google, Meta, Microsoft, and Airbnb all employ very large monorepos with varying strategies of coordination. On this episode, we have David Vujic here to give us his perspective on monorepos as well as highlight an architectural pattern and set of tools for accomplishing this in Python. Links from the show David on Twitter: @davidvujic David on Mastodon: Monorepo definition: git-sizer tool for large repos: git partial clones: git sparse checkout: Polylith architecture: Article: A simple & scalable Python project structure: The last Python Architecture you will ever need?: python-polylith plugin for poetry: Watch this episode on YouTube: Episode transcripts: --- Stay in touch with us --- Subscribe to us on YouTube: Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy Sponsors Microsoft Founders Hub 2023 Brilliant 2023 Talk Python Training