If you're a Python professional, you have probably already thought about rewriting code to another language for the most performance-critical pieces. The choice these days falls on Rust more often than not. Rust is everywhere once you look. Libraries rewriting their hot paths in it: Pydantic v2, Polars, cryptography. Tools like PyO3 and maturin made hybrid Python + Rust projects easy to start. PyCharm is a Python-first tool, and we see more and more Python developers including Rust in their workflows — so we're including it in the product too. In 2026.2 we shipped Rust support in PyCharm Pro. Cross-navigation between Rust and Python stubs, a debugger that attaches to the Rust side when you set breakpoints there, automatic rebuild of Rust components before you run. Enough to keep a hybrid project in one IDE. It's an MVP: not everything is smooth yet — the debugger makes you choose Python or Rust breakpoints in a session, not both at once. We shipped anyway, because "wait until it's perfect" usually means "let users work elsewhere until it's perfect." And it's not bundled: one would need to install the Rust plugin to use the integration. We're not turning PyCharm into a Rust IDE. Most of these developers are Python-first and reach for Rust only where performance demands it. The goal is narrower: keep the whole project in one place. If you build hybrid Python + Rust projects — what makes you switch tools, and what would keep you in one?
Galina Mitricheva’s Post
More Relevant Posts
-
A small quality-of-life improvement for Python backend developers. I often spend 20–30 minutes setting up boilerplate for a new repository. The bigger cost, though, is losing momentum when I just want to test an idea quickly. So I turned my usual setup routine into an open-source coding-agent skill. Now the agent handles the repetitive repository setup, and I can get straight to the experiment. https://lnkd.in/ebemCRur
To view or add a comment, sign in
-
Python isn’t being replaced by Rust (yet). But parts of the Python toolchain increasingly are. We can see this in Claude's generated code today. For example, the code generated by Anthropic Claude now has a default Python quickstart for the Claude Agent SDK now leads with uv: $ uv init $ uv add claude-agent-sdk pip is still being generated by Claude for teaching Python, but the ordering is telling. The "uv" system was created by Astral (now part of OpenAI). uv has already earned more than 87,200 GitHub stars. It combines work traditionally handled by pip, venv, pip-tools, pipx, Poetry, pyenv, and other utilities—all in one fast, compiled tool. Why is it gaining ground so quickly? Because developers managing large Python projects immediately feel the difference: • Faster dependency resolution and installation • Automatic virtual-environment management • Reproducible lockfiles • A global cache that avoids repeated downloads and builds • One consistent tool for Python versions, dependencies, scripts, builds, and publishing Rust also arrived at the right moment. When developer machines and servers had only a few cores, software had less parallel capacity to exploit. Today, physical cloud hosts commonly contain dozens—and sometimes well over 100—processor cores. Tools designed for safe concurrency can take much better advantage of modern hardware. But multicore processing is only part of uv’s advantage. Its speed also comes from compiled Rust, an optimized dependency resolver, aggressive caching, parallel downloads, and efficient reuse of package files. The important trend is not “Rust will replace Python.” Python remains outstanding for learning, experimentation, AI, data science, and rapid application development. The trend is that Rust is becoming a superior implementation choice for performance-sensitive tools around Python. Ruff accelerated linting and formatting. uv is transforming package and project management. Rust is slowly creeping into the Python ecosystem—not as a competitor to Python code, but as the high-performance engine underneath it. That combination may be the future: Python for developer velocity. Rust for tooling velocity. My "Learning Python" textbook now reflects this trend. Have you moved a production Python project from pip to uv yet? What changed? #Python #Rust #uv #Claude #Anthropic #SoftwareDevelopment #DeveloperTools #OpenSource #CloudComputing
To view or add a comment, sign in
-
Why types matter in Python - a brief review Anyone who had any experience with mypy/ty can confirm that working with them is a pain in the back. It's very hard to organize types without "Any" or "ty: ignore". Even the very best libraries usually use these kinds of loopholes. But why do we need types in python at all? Why don't we just forget about mypy and stuff, and live our lives to the fullest. Well, there are several reasons for that: First and foremost, types help other developers to understand contracts, which makes it easier to develop and maintain your code. Secondly, when you check your code with ty or mypy, the chances to catch unnoticed errors and bugs with typed code are higher, since you can find out that you passed (or received) a wrong object, which doesn't have needed methods/attributes. And last but not least, by adding types you can review your architectural decisions, and make links and connections between classes/modules more clear and formal. Having some beautiful and logically true concept in your head is one thing, but facing a harsh reality is completely different. So, it's all that I wanted to share with you today guys! Stay healthy everyone, today's times are grim, but it isn't the first time for humanity to face such hazards! See you tomorrow, and may the Ballmer peak stay with you :) #python #types #mypy
To view or add a comment, sign in
-
We deleted the agent framework a client had paid good money to build on. Replaced it with about 200 lines of plain Python. The system got easier to fix, not harder. The framework promised speed. Pre-built integrations and a tidy graph of nodes you configure instead of code. What it quietly took away was the one thing that actually matters when an agent misbehaves: the exact prompt being sent to the model at each step. And agents misbehave constantly. Far more than the polished demos let on. So every debugging session turned into archaeology, digging through layers of someone else's abstraction to find where the prompt got assembled and what it actually said by the time it left. We pulled it out. Now each step is a function you can read top to bottom, with the prompt sitting right there in the code. The control flow is an if-statement, not a config file describing a graph. Two numbers came out of it. The replacement was around 200 lines. Onboarding a new engineer dropped from about a week to about a day, because there's nothing to learn except Python and the actual problem. I'm not anti-framework. When a dozen teams are running standardized agents, the abstraction earns its keep. Most teams aren't there. They take it on for a problem they don't have yet, and pay for it on every bug until they do. Open your own agent and try to find the exact text it sent the model on its last run. If that takes you more than a minute, you already know what the abstraction cost you.
To view or add a comment, sign in
-
-
It’s still hard to believe that my Python 🐍 type checker Basilisk passed 141 out of 141 PEP tests and is now listed on the canonical Python typing repo. It’s the only one to do it right now, and it’s up against the likes of Pyright (Microsoft), Pyrefly (Meta), and Ty (Astral/OpenAI). You can check the results on the official repo. This started out as an experiment because I was frustrated with Pyright’s configuration system. It exists thanks to the ruff analyzer framework, written by Charlie Marsh. The lesson I learned through this process was that there’s nothing that can’t be achieved with the help of AI when following basic software engineering principles and pursuing quality relentlessly. That’s especially true when there are objective metrics for the AI to work with. If you’re a Python developer, I strongly recommend trying out the Vscode extension or the other platforms like Neovim. It will help you make your Python better and it will prevent hallucinations in the agents that are working on your Python code.
To view or add a comment, sign in
-
For Python developers getting started with InterSystems IRIS, the first question doesn’t need to be: 𝘞𝘩𝘪𝘤𝘩 𝘗𝘺𝘵𝘩𝘰𝘯 𝘰𝘱𝘵𝘪𝘰𝘯 𝘴𝘩𝘰𝘶𝘭𝘥 𝘐 𝘶𝘴𝘦? The better question is: 𝘞𝘩𝘢𝘵 𝘥𝘰 𝘐 𝘸𝘢𝘯𝘵 𝘵𝘰 𝘣𝘶𝘪𝘭𝘥? A web application? An API? A dashboard? A notebook workflow? An AI-enabled application? An integration? Starting with what you want to build provides a simpler way to understand how Python fits into the InterSystems IRIS ecosystem. For many developers, that also leads to the most familiar starting point: connect your Python application to InterSystems IRIS using DB-API and build with the tools and frameworks you already know. From there, you can discover more Python capabilities and InterSystems features as your application evolves, whether that's analytics, integrations, vector search, or lower-level access to InterSystems IRIS data structures. That’s the idea behind our latest learning video, Python and InterSystems IRIS: Getting Oriented—introducing a simple mental model for understanding the Python and InterSystems IRIS landscape. Watch it here: https://lnkd.in/dv92qKmk || #InterSystemsIRIS #Python #Developer #SoftwareDevelopment
To view or add a comment, sign in
-
I’ve been a long-time fan of Python for its simplicity and the massive ecosystem behind it. But as I’ve started diving into system-level tasks and high-concurrency requirements, I’ve found myself reaching for Golang. If you're wondering when to choose one over the other, here is how I’m breaking it down: Performance: Go is a compiled, statically typed language, which makes it significantly faster than Python for CPU-intensive tasks. Concurrency: Go’s "Goroutines" make building highly concurrent systems (like network services) feel almost effortless compared to Python’s threading models. Deployment: Go compiles into a single static binary. No more managing virtual environments or complex dependency trees—you just ship the binary and go. The Python Edge: Python is still my go-to for rapid prototyping, data science, and scripting. Its syntax is hard to beat when you need to get an idea off the ground in minutes. My takeaway? Python is for speed of development; Go is for speed of execution. #Golang #Python #SoftwareEngineering
To view or add a comment, sign in
-
-
🚀Day 14 of 120 – Python Full Stack Journey! 🐍💻 Today, I focused on understanding Python's loop control statements, which help manage the flow of loops more effectively and make programs cleaner and more efficient. 📚 Topics Practiced: ✅ break statement ✅ continue statement ✅ pass statement ✅ Control flow in loops ✅ Real-time practice examples 💡 What I Practiced: ✔️ Used break to immediately exit a loop when a specific condition was met. ✔️ Applied continue to skip particular iterations while allowing the loop to continue executing. ✔️ Practiced pass as a placeholder for blocks of code that will be implemented later. ✔️ Solved multiple practice problems to understand the differences between these control statements. ✔️ Compared the behavior of break, continue, and pass through hands-on coding examples. 🎯 Key Learnings: 🔹 break terminates the loop immediately when a condition is satisfied. 🔹 continue skips the current iteration and proceeds with the next iteration. 🔹 pass performs no action but prevents syntax errors when code is intentionally left empty. 🔹 Choosing the right control statement improves code readability, efficiency, and maintainability. 🔹 Mastering loop control statements is an important step toward writing more structured and optimized Python programs. Every day of practice helps me write better code and strengthens my journey toward becoming a confident Python developer. 🚀💻 #Python #PythonProgramming #Break #Continue #Pass #CodingPractice #LearnPython #Programming #FullStackDevelopment #PythonDeveloper #LearningJourney CodegnanUppugundla SairamSaketh KallepuPooja Chinthakayala
To view or add a comment, sign in
-
-
Every Python developer knows the pain of writing a beautiful block of code, running it, and seeing it instantly crash because of a tiny backend quirk. 🐍💥 Python is incredibly powerful, but its flexibility and design patterns can easily lead to frustrating roadblocks during daily development. Here are the most common everyday issues that trip up Python coders: 🔹 Dependency & Environment Hell: Getting tangled in broken packages and version conflicts across venv, pip, or poetry. 🔹 The Dreaded 'NoneType' Error: Getting AttributeError: 'NoneType' object has no attribute... because a function unexpectedly returned empty data. 🔹 Mutable Default Arguments: Bizarre logic bugs caused by using a list or dict as a default argument def func(data=[]) which unfairly saves state across calls. 🔹 Pathing & Import Disasters: Stumbling over ModuleNotFoundError when trying to reference scripts in sibling directories. 🔹 Silent Failures: Using a blanket except Exception: block that masks the real bug and leaves you completely blind to what broke. 🔹 Performance Bottlenecks: Running slow, heavy loops instead of leveraging optimized vector operations or list comprehensions. Let's fix them together. 👇 Which of these issues are you fighting right now? Drop a comment below with the specific roadblock you're facing, and I will jump into the replies (or slide into your DM) with the exact solution to patch it up! #Python #PythonDeveloper #Programming #SoftwareEngineering #CodingLife #WebDevelopment
To view or add a comment, sign in
-
Explore content categories
- Career
- Productivity
- Finance
- Soft Skills & Emotional Intelligence
- Project Management
- Education
- Technology
- Leadership
- Ecommerce
- User Experience
- Recruitment & HR
- Customer Experience
- Real Estate
- Marketing
- Sales
- Retail & Merchandising
- Science
- Supply Chain Management
- Future Of Work
- Consulting
- Writing
- Economics
- Artificial Intelligence
- Employee Experience
- Workplace Trends
- Fundraising
- Networking
- Corporate Social Responsibility
- Negotiation
- Communication
- Engineering
- Hospitality & Tourism
- Business Strategy
- Change Management
- Organizational Culture
- Design
- Innovation
- Event Planning
- Training & Development
NICE!