A better development experience with PyCharm. Now with AI Assistant
Tags: europython, pycharm
Published: 2023-07-18 14:06:53

> Learn how our tool can help your web development, data science, or machine learning work get done.

Whether you’re a web developer, a data scientist, or a machine learning engineer, you want to get your work done fast and achieve the best possible results. This is exactly where your choice of tooling comes in.

Having everything set up for your work, getting smart assistance and code insight, having a seamless integration with your databases and Git repositories can make a huge difference, both keeping you in the loop and creating extra inspiration.

This is what PyCharm is built for. To help you get your work done. In the most productive way.

PyCharm is an integrated development environment designed for all Python workflows, including full-stack web development, data science, and machine learning engineering.

PyCharm allows you to set your project environment straight out of the box, offering integration with your databases, Git, and other development tools – all without leaving the IDE.

With PyCharm, you can be confident to navigate and refactor large codebases with ease, and even debug complex code sets.

## AI assistant in PyCharm 2023.2
The upcoming release will bring a new AI Assistant tool to PyCharm. Let’s take a closer look at what this new feature has got in store.

### AI chat
We’ve implemented an AI Assistant tool window that you can use to have a conversation with the LLM, ask questions, or iterate on a task. The IDE will provide some project-specific context, such as the languages and technologies used in your project. You will be able to ask the AI about a specific code fragment, with functionality such as _Explain code_, _Suggest refactoring_, and _Find potential problems_.

### Documentation generation
You will be able to generate the documentation for a declaration using an LLM.

### Name suggestions
When you rename a Python declaration, the AI will suggest name ideas variants for the declaration, based on its contents.

### Commit message generation
The commit message dialog will have a Generate Commit Message with AI Assistant button. Clicking it you will be able to send the diffs of your changes to the LLM, which will generate a commit message describing your changes.

You can learn more about AI Assistant in PyCharm in [this blog post](https://jb.gg/89bf9z).

## Never used PyCharm before? Here are some of the features our team recommends!
Mukul Mantosh, PyCharm Content Writer, on his favorite features for Django development:

> In 2017, I made the decision to transition from PHP to Python, embarking on a journey to learn the language. During my exploration, I stumbled upon the Django framework. At the time, I was on the lookout for an IDE that would cater to my specific needs. I experimented with various options, but none of them seemed to fulfill all my requirements. That is, until I discovered PyCharm. Ever since then, I haven't looked back in nearly five years.
> 
> PyCharm offers exceptional support for Django, particularly through features like Live Templates, Run/Debug Configuration, and Python Packaging. One of the standout features is the ability to check for the latest version of packages, such as NumPy, without the need to visit external websites like pypi.org. This functionality can be accessed directly from within the IDE. The design of PyCharm is meticulously crafted to keep everything conveniently in one place, whether it's integrating with version control systems (VCS), utilizing DataGrip for databases, or collaborating with other remote developers (via Code with Me). Personally, one of my favorite aspects is the flexibility of running applications either through a remote interpreter on a cloud server or via the Windows Subsystem for Linux (WSL) on a Windows machine.

Jodie Burchell, JetBrains developer advocate for data science, on the functionality that helps her efficiently work on her data science projects:

> Coming into data science from an academic background, I didn’t think much about my tooling. In fact, I was happy with plain Jupyter notebooks without any extensions for many years! When I started using PyCharm for my data science and machine learning work, I was amazed at how much easier it was to work with both Jupyter notebooks and large code bases. Even core PyCharm features such as setting up a new virtual or Conda environment in a few clicks, code completion, inbuilt documentation, and code introspection made me much more productive and saved me a lot of time, and made me wonder why I hadn’t tried to update my tooling earlier.
> Over time, I started exploring more advanced features, such as the ability to connect to and query databases in SQL right within the IDE and the UI to help me fix my *many* mistakes with Git. PyCharm also saved me when I needed to understand and document a large legacy codebase for a machine learning product. As the entire codebase was indexed when I opened it in PyCharm, it was simple for me to find all uses of methods and piece together what was happening.

## Learn more from PyCharm team at Europython
### Come to our booth!
If you want to learn how you can get your work done faster and stay in the flow longer, come to the JetBrains booth to talk to members of the PyCharm team, such as our developer advocates Paul Everitt, <a href="mailto:jodie.burchell@jetbrains.com">Jodie Burchell</a>, and Helen Scott.

### Join a talk “Power Django with PyCharm”
Join a talk by <a href="mailto:paul.everitt@jetbrains.com">Paul Everitt</a> to learn how your IDE can make your development joyful. Paul will also demonstrate “test-first” development within the IDE, plus how this can apply to frontends. There will be a surprise gift at the end! Catch up with Paul at the PyCharm booth to learn more about full-stack web development and test driven development with Pytest.

### Challenge your knowledge and win a prize
For those of you who are up for a challenge, we will be having two web development and two machine learning quizzes a day at our booth from Wednesday through to Friday. Check the quiz schedule at the booth. The top three scorers in each web development quiz will win a copy of [Boost Your Django DX](https://adamchainz.gumroad.com/l/byddx) by Adam Johnson, while the top three winners in each machine learning quiz will have their choice of Matt Harrison’s [Effective Pandas](https://store.metasnake.com/effective-pandas-book) or [Effective XGBoost](https://store.metasnake.com/xgboost). Best of luck!

---

_Originally posted on https://blog.europython.eu/a-better-development-experience-with-pycharm-now-with-ai-assistant/_