Summary Our thought patterns are rarely linear or hierarchical, instead following threads of related topics in unpredictable directions. Topic modeling is an approach to knowledge management which allows for forming a graph of associations to make capturing and organizing your thoughts more natural. In this episode Brett Kromkamp shares his work on the Contextualize project and how you can use it for building your own topic models. He explains why he wrote a new topic modeling engine, how it is architected, and how it compares to other systems for organizing information. Once you are done listening you can take Contextualize for a test run for free with his hosted instance. Announcements Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great. When you’re ready to launch your next app or want to try a project you hear about on the show, you’ll need somewhere to deploy it, so take a look at our friends over at Linode. With the launch of their managed Kubernetes platform it’s easy to get started with the next generation of deployment and scaling, powered by the battle tested Linode platform, including simple pricing, node balancers, 40Gbit networking, dedicated CPU and GPU instances, and worldwide data centers. Go to pythonpodcast.com/linode and get a $60 credit to try out a Kubernetes cluster of your own. And don’t forget to thank them for their continued support of this show! Your host as usual is Tobias Macey and today I’m interviewing Brett Kromkamp about Contextualise, a topic modeling application that helps you build a mind map for information-heavy projects Interview Introductions How did you get introduced to Python? Can you start by describing what Contextualize is and some of the types of projects that it can be used for? What was your motivation for creating it? How do you use topic maps in your own work and creative endeavors? The space of personal note-taking and knowledge management is vast and varied. What does Contextualize do well that you have been unable to find or implement in other tools? For someone using Contextualize, what does that workflow look like? How are you approaching integration with different creative contexts (e.g. text editors, graphics editors, word processing, etc.)? Can you describe how Contextualize is implemented? How has the design evolved since you first began working on it? In the documentation for Contextualize it mentions that this is the latest in a string of topic mapping platforms that you have built. What are some of the lessons that you have learned from previous efforts that have influenced the design of this one? One of the challenges with many knowledge management tools is that they are proscriptive in how to work with them. In what ways has your own preference for how to interact with information influenced the direction of Contextualize? Being an open source application, how has its exposure to the public directed your software and user design? How do you approach the challenge of reducing friction in adding content and relations while allowing for flexibility and context management? What are some of the projects that you are using Contextualize for? What are your thoughts on the utility of something like Contextualize for capturing and organizing the collective knowledge of a team of collaborators, whether in a work or casual context? What have you found to be the most interesting, complex, or complicated aspects of building a topic mapping platform? When is Contextualize the wrong choice? What do you have planned for the future of the project? Keep In Touch Website @brettkromkamp on Twitter brettkromkamp on GitHub Picks Tobias Pydantic Podcast Episode MyPy Podcast Episode Brett Black Lives Matter Closing Announcements Thank you for listening! Don’t forget to check out our other show, the Data Engineering Podcast for the latest on modern data management. Visit the site to subscribe to the show, sign up for the mailing list, and read the show notes. If you’ve learned something or tried out a project from the show then tell us about it! Email hosts@podcastinit.com) with your story. To help other people find the show please leave a review on iTunes and tell your friends and co-workers Join the community in the new Zulip chat workspace at pythonpodcast.com/chat Links Contextualise GitHub Repository Norway IBM Rexx Java Semantic Web Topic Map ISO standard for topic maps RDF Spain Knowledge Management Graph Database Worldbuilding Roam Research TopicDB Twitter Bootstrap Hypergraph Digital Gardening Notion TiddlyWiki The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA