Announcing General Availability of PyCharm 2016.2

Today we bring you PyCharm 2016.2, now available for download. This is the second update in the series of releases planned for 2016. Its outstanding new features for professional Python, Web and scientific development work together smoothly to offer you a unique coding experience.

PyCharm_splash20162

As usual, PyCharm 2016.2 is available as a full-featured Professional Edition for Python and Web development, or as a free and open-source Community Edition for pure Python and scientific development.

Here are some notable highlights of this release.

Python-related improvements:

  • vmprof Profiler Support
  • Pandas dataframes viewer
  • Thread suspend option
  • Function return values in the debugger
  • Improvements for package installation from requirements.txt
  • Configuration for optimize imports
  • Enhanced postfix code completion
  • Lettuce scenario outlines

Platform enhancements:

  • Support for ligatures
  • Improved inspection tool
  • Custom background image for the editor
  • Regex support improvement
  • Handling of unversioned files
  • Improvements in working with patches
  • Enhanced VCS Log Viewer
  • Database tool improvements
  • And even more

For more details please watch this short What’s New in PyCharm 2016.2 video:

Read more about what’s new in PyCharm 2016.2 on the product website and download the IDE for your platform.

Your JetBrains Team
The Drive to Develop

Posted in Release Announcements | 14 Comments

PyCharm 2016.2 Release Candidate is available

We are now approaching the final steps towards the PyCharm 2016.2 release. So today we’ve published the PyCharm 2016.2 Release Candidate.

The PyCharm 2016.2 RC build 162.1236 is available for download from the Early Access Preview page. Please take it for a spin and give us your feedback.

PyCharm 2016.2 Release Candidate includes mostly a consolidation of bug fixes as compared to the previous PyCharm 2016.2 EAP build. For the detailed list of notable changes and improvements in this build, please check the Release Notes.

In case you missed what’s new in upcoming PyCharm 2016.2 – please the announcements of previous EAP builds.

The most important highlights are:

  • vmprof Profiler Support
  • Pandas Dataframes Viewer
  • Thread Suspend Option
  • Function Return Values in the Debugger
  • Package Installation from requirements.txt
  • Configuration for Optimize Imports
  • Postfix Code Completion
  • Lettuce Scenario Outlines
  • Support for Ligatures
  • The Inspection Tool Improvements
  • Editor Background Image
  • Regex Support Improvement
  • Unversioned Files Handling
  • Improvements in Working with Patches
  • VCS Log Viewer Enhancements
  • Database Tools Improvements

You can download the build or upgrade from within the IDE without a full re-installation using the patch-based upgrade (make sure you’ve enabled the EAP or RC channel in your update settings).

We hope that there will be no major bugs, however, should you encounter any problems, please report them to YouTrack – we’ll still have a bit of time to fix stuff before the final release.

Stay tuned for a PyCharm 2016.2 release announcement and follow us on Twitter.

-PyCharm team

Posted in Early Access Preview | 6 Comments

“Support Django” Fundraising Campaign Extended to July 20th

Over the last two weeks we’ve been running our joint promotional campaign with Django Software Foundation in order to help:

  • Reach the goal to fully fund the Django Fellow program which is crucial for the future of Django
  • Continue contributing to different outreach and diversity programs such as Django Girls workshops
  • Sponsor official Django conferences
  • And much more

The campaign was meant to end today, July 14th. So far hundreds of supporting developers have purchased PyCharm at a 30% discount, with all proceeds going to help support the Django Software Foundation.

Considering the campaign is so successful, we at JetBrains and the DSF have opted to extend the offer until July 20th! Which, coincidentally, will cover most of DjangoCon 2016.

We would like to thank all of you who are taking advantage of this great offer to help fund Django development and related activities into the future. Please spread the word to your friends and colleagues, and perhaps we can make this fundraiser one of our largest yet!

Contributing to Django is simple:

  1. Click this link to go to the PyCharm annual subscription page.
  2. On the checkout page, сlick “Have a discount code?”.
  3. Enter this 30% discount promo code:
    ISUPPORTDJANGO
  4. Fill in the other required fields on the page and click “Place order.”

Read more details on the special promotion page.

If you have any questions, get in touch with Django at fundraising@djangoproject.com or JetBrains at sales@jetbrains.com.

Posted in Sales and Promotions | 1 Comment

Material for next week’s tutorial at EuroPython

Next Tuesday at EuroPython 2016 in Bilbao, I’m giving a tutorial Productive Coding with PyCharm. I’m not going to resort to begging you to come to it…oh who am I kidding, PICK ME PICK ME!

For my PyCon tutorials over the years, I settled on an approach which is hands-on, broken into sections containing steps or tasks. Each step has an extensive writeup done in Sphinx, with working code for the results of each step available in GitHub. The writeup details the work to do, followed by an analysis section, and an extra credit section (for those that go fast). On each step, I demo what’s to be done, you do it, then we chit-chat when everyone is complete.

It’s a nice way to go through a lot of material fast, without leaving anybody behind. But it takes a LOT of preparation, much more than the normal “8 hours of prep for each hour of class time” rule.

So to give a good taste of why the tutorial is worth attending, here is the current material. I’m at the 2.5 (estimated) mark, so the sections starting with “Debugging” are where I will put in effort beyond the minimum, so to speak. I also need to do another pass through, bullet-proofing things. Finally, I’d like to do a better job of linking to PyCharm help topics and Python/Flask help material. Afterwards, I might try to do screencasts of each section, so people can self-serve on the tutorial.

If you’d like to do the tutorial, please do the “Setup” step in advance. We (the PyCharm team) will be in the hallways 20 or so minutes before start time to help people if needed, to try and save classroom time. If you have any questions or just want to say hi, come by our PyCharm booth on Monday or Tuesday. We’d love to see you.

I have to say, it feels good going to EuroPython again. I went to the first two in Charleroi, the next two in Göteborg. Bilbao should be a lot of fun.

Posted in Conferences & Events, Tutorial | Leave a comment

Webinar Recording: 10 Tips for Pythonic Code

The recording of our July 6th webinar, 10 Tips for Pythonic Code with Michael Kennedy, is now available on the JetBrains YouTube Channel. Michael’s code used in the recording along with the script for each step in the webinar can be found on GitHub and the webinar slides on SlideShare.

Michael did a fantastic job, making this one of the highest-rated JetBrains webinars to date. He’s obviously very good at speaking and teaching, and prepared heavily for this webinar with well-commented sample code.

About “10 Tips on Pythonic Code” with Michael Kennedy

If you’re a Python developer interested in the next step towards Pythonic code, with PyCharm as a productivity boost, then our next webinar is a must-attend. Michael Kennedy, well-known Python podcaster, speaker, writer, and trainer, is our guest for a PyCharm webinar on “10 Tips for Pythonic Code”.

If you like this presentation and want to dig deeper into Pythonic code, check out Michael’s full course Write Pythonic Code Like a Seasoned Developer which covers over 50 Pythonic topics.

Video Contents

  1. (1:03) What is Pythonic?
  2. (2:43) Dictionaries for performance
  3. (11:01) Memory efficiency with __slots__
  4. (20:50) Merge dicts
  5. (29:05) Yield and generator methods
  6. (37:45) Lambda expressions
  7. (42:04) Adding iteration to custom types
  8. (47:26) Comprehensions and expressions
  9. (58:01) JSON back and forth (files and web services)
  10. (1:01:30) Slicing (collections and databases)
  11. (1:05:56) yield + recursion

Keep up with the latest PyCharm news on our blog and follow us on Twitter @PyCharm.

The Drive to Develop
– PyCharm team

Posted in Webinar | 3 Comments

PyCharm 2016.2 EAP 5 (build 162.1121)

Today we announced the PyCharm 2016.2 EAP 5 build 162.1121.

Please download and try it today!

Just as always, this EAP build can be used for 30 days after its release date and it doesn’t require any license.

Comparing to the previous EAP build, this one mostly includes a consolidation of fixes for various bugs and problems, as well as improvements for recently added features. For the detailed list of notable changes and improvements, please check the Release Notes.

We encourage you to give PyCharm 2016.2 EAP 162.1121 a try before its official release. Please change the updates channel to “Early Access Program” in the updates settings (Help|Check for updates…) to get the patch update from the last PyCharm 2016.2 EAP build 162.1121 or download the full installer for your platform. Please report any bugs and feature request to our issue tracker.

-PyCharm team

Posted in Early Access Preview | 3 Comments

PyCharm and Django Announce 30% Discount With All Proceeds Going to DSF

After years of premier support for the Django Framework, JetBrains PyCharm gives a big boost to the Django Software Foundation’s (DSF) fundraising. During a two-week campaign, buy PyCharm Professional Edition with a 30% discount code and all money raised will go to the DSF’s general fundraising and Django Fellowship program. Additionally, JetBrains is sponsoring PEP 484 type hinting in Django through a separate DSF Fellowship grant.

frank-wiles“Django has grown to be a world-class web framework, and coupled with PyCharm’s Django support, we can give tremendous developer productivity,” says Frank Wiles, DSF President. “The DSF helps make this growth happen, and we are delighted to have JetBrains support in our fundraising.”

PyCharm is the leading Python IDE for professional developers, with a long history of first-class support for Django. The two products share common ideals of developer productivity and clean, pragmatic design, and PyCharm’s Django support has evolved through the years as Django expanded and improved.

dmitry-filipov“For six years, Django has been the stable rock in our feature set,” says Dmitry Filippov, JetBrains Product Marketing Manager. “The success of Django is invaluable for us as well as for the whole Python community. This promotion gives us an opportunity to strengthen PyCharm’s relationship with Django by helping the DSF reach its fully-funded campaign goal.”

About the Promotion

During this two-week promotion, you can effectively contribute* to Django by purchasing an Individual PyCharm Professional annual subscription at a 30% discount. It’s very simple:

  1. Click this link to go to the PyCharm annual subscription page.
  2. On the check-out page, сlick “Have a discount code?”.
  3. Enter this 30% discount promo code:
    ISUPPORTDJANGO
  4. Fill in other required fields on the page and click the “Place order” button.

Read more details on the special promotion page.

Again, all proceeds from this promotion will go to the DSF fundraising campaign—not just the profit, but actually the entire sales amount. This campaign will help the DSF continue contributing to different outreach and diversity programs such as Django Girls workshops, the Django Fellowship program, sponsoring official Django conferences, and many others.

*Please note this purchase is not a tax-deductible donation. The promo code is only applicable for buying new Individual PyCharm Professional Edition annual subscriptions. The offer doesn’t apply to other products or types of subscriptions.

Type Hinting (PEP 484) in Django under the Django Fellowship Program

Additionally, the DSF and JetBrains announce a grant for the Django core development activity under the Django Fellowship program in order to bring the new Python Type Hints standard (PEP 484) into future versions of Django.

frank-wiles“Python 3 support has been a strong focus for Django in recent years,” says Wiles. “Python 3.5 and type hinting are a huge step towards developer productivity, especially combined with powerful tools like PyCharm. This JetBrains grant helps our Django Fellows and community bring type hinting to Django.”

The standard is already quite stable, with only a few amendments over the last year. With this work, which starts soon, the DSF will be funding Django core developers and other community members to help with the development.

dmitry-filipov“We believe in Python 3 and the benefits of type hinting, particularly for frameworks like Django,” says Filippov. “Type hints in Django can let PyCharm boost Django developer productivity with better code inspections, code completion, and refactorings. We’re going to pioneer PEP 484 use in Django, making tremendous headway into the future of Django and Python.”

There’s no exact timeline for the project yet, but keep an eye on the django-developers mailing list and the Django blog for updates as work progresses.

If you have any questions, get in touch with Django at fundraising@djangoproject.com or JetBrains at sales@jetbrains.com.

Posted in Cool Feature, Sales and Promotions | Leave a comment

PyCharm 2016.2 EAP 4 (build 162.1120)

Today we continue the weekly delivery of PyCharm 2016.2 preview builds with the PyCharm 2016.2 EAP build 162.1120.

Download and try it today!

Some highlights of the PyCharm 2016.2 EAP build 162.1120 are:

  • A fix for keyboard input in the debug mode
  • A fix for Docker Compose default mapping bug
  • A fix for BDD support using remote interpreters
  • A number of fixes for Django support
  • Various performance improvements
  • Fixes for Python Profiler integration, docstrings support and much more

The list of numerous bug fixes and improvements for this build can be found in the Release Notes.

We encourage you to give PyCharm 2016.2 EAP 162.1120 a try before its official release. Please change the updates channel to “Early Access Program” in the updates settings (Help|Check for updates…) to get the patch update from the last PyCharm 2016.2 EAP build 162.1024 or download the full installer for your platform. Please report any bugs and feature request to our issue tracker.

-PyCharm team

Posted in Early Access Preview | 5 Comments

PyCharm Edu 3 coming soon

Today we’re announcing that PyCharm Edu 3 is coming this August, right before the new school year. Since the previous release we’ve tremendously improved PyCharm Edu for teachers and course authors, implemented new useful functionality, made a lot of small neat improvements, and fixed various problems.

PyCharmUdu3_splash

The best things about PyCharm Edu will stay unchanged – it’s still going to be completely free and open source software, specifically designed to help beginners with little or no previous coding experience to learn programming quickly and efficiently, while using a modern professional tool.

The installation files for PyCharm Edu 3 Preview can be found here:
PyCharm Edu 3 Preview page
Please see the bottom of the page to find a build for your platform.
Installation instructions for Windows, Linux, and Mac OS X platforms are available here.

What’s New in the upcoming PyCharm Edu 3?

Enhanced task description panel

In previous PyCharm Edu versions, as a course author you had to write task descriptions in separate HTML files without being able to preview a task. In PyCharm Edu 3, we’ve reworked this so now you can edit your task descriptions right in the task panel, by clicking the special “Edit” icon:

2

Comparing to previous versions, PyCharm Edu 3 now supports larger task descriptions. You can also put code snippets right inside the task description as shown on the screenshot. The code will be perfectly highlighted like on the following screenshot:

1

In addition to this improvement, you can now choose to write your tasks in Markdown instead of HTML.

The Adaptive Python course

Thanks to integration with Stepic, a learning management platform, in PyCharm Edu 3 we’ve added a brand-new Adaptive Python course which is available by default:

3

Long story short, going through this course, PyCharm Edu and Stepic monitor the student’s progress and pick the next tasks based on how easy or hard the previous one was:

4

As shown on the screenshot above, the student can give hints to the system if the task feels too easy or hard for him or her. Read more about the Adaptive Python course on the Stepic course webpage.

Preview a course from the Сourse Сreation Mode

When creating a course, it’s good to view the course from the student’s perspective and test it while you’re designing. PyCharm Edu 3 makes this task easy with a new action: when designing a course, right-click on the course view and go to Course Creator | Create New Educational Project:

5

Running and debugging custom tests

The custom tests that you write to verify students’ input and solutions can be now run and debugged right from the course creation mode, without having to generate the course or preview it. Right-click the Run button from the test editor and choose the desired action:

6

You can place breakpoints in your test code right inside the editor and see a nice console output along with the variable viewer:

7

Automatic course dependencies

When designing your course, you’ll most likely use some packages and libraries that are not installed on a student’s machine. Now you can list all the dependencies in the requirements.txt file when creating your course. When a student opens the course on their computer, PyCharm Edu will create a separate virtual environment based on the default Python interpreter and install all the dependencies required.

A fix for raw input in debug mode

Not actually a new feature, but a fix for a bug for the widely used case in teaching and learning programming. You can now safely use the input() function in the debug mode, so when you step over the input() function, you get the command line to proceed with the actual keyboard input.

Enhanced course view in course creation mode

Additionally to the mentioned new features and improvements, we’ve reworked the course view in the course creation mode. The course view now represents a course the same way a student would see it. All system, test and hidden files are displayed in light gray:

8

Read more about PyCharm Edu on its website and learn how it works for students and instructors.

Try PyCharm Edu 3.0 Preview and share your thoughts with us. As always, your feedback is very welcome. Please follow us on twitter, report bugs to our public issue tracker, or simply write a comment to this blog post if you have any additional questions. Please feel free to criticise and do let us know about any difficulties you run into or any bugs you notice.

We encourage you to sign up for PyCharm Educational Edition 3.0 Preview to get the updates on the next preview builds and the release itself, so you can use it in the upcoming school year.

Learn and educate with pleasure!
Your PyCharm Edu Team

Posted in Early Access Preview | 6 Comments

Webinar: “10 Tips on Pythonic Code” with Michael Kennedy, July 6

If you’re a Python developer interested in the next step towards Pythonic code, with PyCharm as a productivity boost, then our next webinar is a must-attend. Michael Kennedy, well-known Python podcaster, speaker, writer, and trainer, is our guest for a PyCharm webinar on “10 Tips for Pythonic Code”.

  • WEDNESDAY, JULY 6TH
  • 16:00 CEST / 10:00 AM EDT
  • Registration 

    pycharm_webinar_10_Tips_for_Pythonic_Code_2

One of the special concepts in Python is the idea of writing idiomatic code that is most aligned with the language features and ideals. In Python, we call this idiomatic code Pythonic. While this idea is easy to understand, it turns out to be fairly hard to make concrete.

In this webinar, Michael Kennedy from the Talk Python To Me podcast will take you on a tour of 10 of the more popular and useful code examples demonstrating examples of Pythonic code. In the examples, you’ll first see non-Pythonic code and then the more natural Pythonic version.

Topics covered include the expansive use of dictionaries, hacking Python’s memory usage via slots, using generators, comprehensions, and generator expressions, creating subsets of collections via slices (all the way to the database) and more. Several of these are Python 3 features so you’ll have even more reason to adopt Python 3 for your next project.

Speaking to you

Michael Kennedy is an author, instructor, and speaker. He is the host of the Talk Python To Me podcast and founder of Talk Python Training, an online training company for Python developers. Michael has taught over 100 week-long training courses to professional software development teams throughout the world and is an expert in Python, MongoDB, and .NET among other technologies.

 

Posted in Webinar | 1 Comment