SE Radio 622: Wolf Vollprecht on Python Tooling in Rust

Topics covered
Popular Clips
Episode Highlights
PKCE Management
introduces PKCE as a modern workflow manager and package manager for the Conda ecosystem, implemented in Rust. It allows developers to manage projects across Windows, macOS, and Linux using operating system agnostic packages, ensuring seamless integration with the Python ecosystem 1. PKCE simplifies continuous integration by allowing developers to specify tasks and dependencies in a Pixie tunnel or Pyproject toml file, eliminating the need for complex GitHub actions scripts 2.
My dream is that for most projects, you wouldn't really have to write a GitHub actions file anymore.
---
This approach ensures consistency between local and CI environments, enhancing the development workflow.
Integration
The integration of Rust-based tools with existing Python tools like Conda and Mamba is pivotal for modern package management. explains that Conda and Mamba, with their binary package support, have a rich history in the scientific Python ecosystem, facilitating compatibility across platforms 3. PKCE extends this by packaging Python and other tools, ensuring reproducible builds across different systems 4.
Conda was one of the first package managers that basically brought binary packages to the Python ecosystem.
---
This ensures that scientific applications behave consistently, regardless of the operating system.
Tool Usage
Installing and using PKCE in Python projects is straightforward, with options like using brew or a simple curl command for installation. highlights that PKCE can initialize projects using a Pixie toml file, allowing developers to define tasks and dependencies, including specifying Python versions 5. The choice of Rust for PKCE's development was driven by its rich ecosystem and performance benefits over C, making it easier to build robust tools without dealing with segmentation faults 6.
It was not initially completely obvious decision, because I already had a lot of experience with C and Mamba, and we could have sticked to the C ecosystem.
---
This decision underscores the advantages of Rust in developing efficient and reliable software tools.
Related Episodes


SE Radio 562: Bastian Gruber on Rust Web Development
Answers 383 questions

SE-Radio Episode 279: Florian Gilcher on Rust
Answers 383 questions

Episode 36: Interview Guy Steele
Answers 383 questions

SE Radio 628: Hans Dockter on Developer Productivity
Answers 383 questions

SE Radio 581: Zach Lloyd on Terminal Emulators
Answers 383 questions
Episode 490: Tim McNamara on Rust 2021 Edition
Answers 383 questions

SE-Radio Episode 315: Jeroen Janssens on Tools for Data Science
Answers 383 questions

Episode 126: Jetbrains MPS with Konstantin Solomatov
Answers 383 questions

SE Radio 617: Frances Buontempo on Modern C++
Answers 383 questions
Episode 173: Feature-Oriented Software Development with Sven Apel – Pt 2
Answers 383 questions

SE Radio 618: Andreas Møller on No-Code Platforms
Answers 383 questions

SE-Radio Episode 291: Morgan Wilde on LLVM
Answers 383 questions

SE Radio 585: Adam Frank on Continuous Delivery vs Continuous Deployment
Answers 383 questions













