
JetBrains releases open-source Python IDE - ternaryoperator
http://www.jetbrains.com/pycharm/
======
fletchowns
I'm fairly new to the Python world but I've been using PyCharm for a couple
months now and it is absolutely amazing. JetBrains makes _really_ great
products, I've been a huge fan of IntelliJ IDEA (Java) for a few years now -
converted many die hard Eclipse users over to it, and they never looked back.

~~~
skelsey
I agree. I've been using IDEA since early 2005. I am currently working on a
project that requires me to use Eclipse, and it's almost unusable.

~~~
saym
Retraining the brain is difficult in almost any facet. I tried switching
keyboard layouts once, suffice it to say I've reverted to ye olde QWERTY.

~~~
yareally
For what it's worth, I used Eclipse for 3-4 years before Intellij (it was what
my university introduced students to for programming in C++ and Java).
Switching to Intellij was pretty painless other than initial configuration
overload (since there's so much more built into it by default than Eclipse).
Having to switch back to Eclipse at times for a few things since was not so
much.

Intellij just as a much more intuitive UI and layout. Eclipse is fine if
you're used to it, but it's much more dissociative by design when switching
languages or usages than Intellij.

~~~
mikevm
IntelliJ has such an ugly font rendering system on Windows that it makes it
very hard for me to dump Eclipse. This prolly has to do with Eclipse's native
font rendering.

~~~
yareally
Yeah, it's not too great due to relying on the JVM for rendering. I use
Liberation Mono with it and it looks pretty good (even with anti-aliasing set
to off). Everything else, not so much.

The top image[1] at the Slant programming font rank list[2] was a screenshot I
took of Liberation Mono when using Intellij on Windows, just to give an
example. I miss having bitmap fonts (which Eclipse does allow), but Liberation
looks close enough to my favorite bitmap font (Dina), that I don't mind
anymore.

[1]
[http://img59.imageshack.us/img59/3066/pythono.jpg](http://img59.imageshack.us/img59/3066/pythono.jpg)
(anti-aliasing was set to off when that was taken; italics suffer, but it's
tolerable to me)

[2] [http://www.slant.co/topics/67/viewpoints/26/~what-are-the-
be...](http://www.slant.co/topics/67/viewpoints/26/~what-are-the-best-
programming-fonts~liberation-mono)

------
_stephan
JetBrains has actually open sourced the complete IntelliJ Community Edition
IDE/platform:

see
[http://www.jetbrains.org/display/IJOS/Home](http://www.jetbrains.org/display/IJOS/Home)
and [https://github.com/JetBrains/intellij-
community](https://github.com/JetBrains/intellij-community)

Incredible!

~~~
codex
Furthermore, they are working on a cross-platform C++ IDE (hopefully using
Clang for parsing):
[http://www.jetbrains.com/objc/features/cpp.html](http://www.jetbrains.com/objc/features/cpp.html).
I can't wait for the release.

~~~
fractalsea
Yes I cannot wait.

I recently started trying to learn some basic C/C++. My usual initial step in
setting up an environment for a new language is to google "intellij plugin for
X", so I was very disappointed to find that C/C++ is very poorly supported
with respect to most other mainstream languages.

I ended up having to go with Visual Studio, which is also impressive, but
there are features I miss coming from the Jetbrains world.

~~~
cmircea
To be fair few IDEs support advanced functionality (like refactoring) with
C++, due to the monstrosity that it is and the amount of UB.

Visual Studio + ReSharper is awesome for C#, IntelliJ is awesome for Java. For
C++ you're pretty much screwed.

~~~
alco
Clang is destined to change that.

[http://clang.llvm.org/features.html#applications](http://clang.llvm.org/features.html#applications)

------
CraigJPerry
I've been using the Anki[1] spaced repetition system to quickly get up to
speed with the PyCharm key bindings.

I've been using the JetBrains screencasts[2] to get up to speed with the IDEs
features. Although these are too thin on the ground currently and i confess
that i keep getting distracted by the JavaScript / AngularJS videos! The
presenter on those i find draws me in more. Some of the PyCharm videos don't
even have narration.

I have explored the Flask integration which was better than i expected but not
life changing for me.

VirtualEnv integration is well enough, but PyCharm <\--> command line <\-->
virtualenv integration is not ideal yet. Getting virtualenvwrapper and PyCharm
playing nicely together was more work than i anticipated. PyCharm doesn't make
it easy to be notified about newly created virtualenvs.

I feel all the default templates for modules and test files are not ideal for
me, i ended up replacing them with my own templates. The only reason this even
registers with me is because some less experienced Python developers persevere
with the default PyCharm templates and end up with __author__ and other cruft
in their modules.

The internal jetbrains supplied static validation (Pep8 / PyLint)
functionality doesn't appear to be vanilla pep8 / pylint. This is only a minor
issue but i don't like that there are potential violations i don't see until
i've pushed to Jenkins and viewed the reports there.

I intend to push further with PyCharm, i'm open to the idea that there's
productivity benefits to be had with python from an IDE that are not available
to me in vim - although i strongly advocate the JEDI plugin with VIM, it's
leaps and bounds over the old ROPE system IMO!

~~~
vitalique
If you are a Vim fan, try using IdeaVim plugin with PyCharm. Plugins can be
installed directly from the in-IDE plugin library.

~~~
rufugee
I tried to like IdeaVim, but simple things like undo/redo were broken by the
mix of vim and intellij shortcuts. When even the basics don't work...

~~~
vlasovskikh
This is a known problem. The multiple undo actions per single 'u' command bug
has been fixed recently. The updated version of IdeaVim will be released soon.
We have been working on making IdeaVim more stable, see the changelog
[https://github.com/JetBrains/ideavim/blob/master/CHANGES.md](https://github.com/JetBrains/ideavim/blob/master/CHANGES.md).

~~~
rufugee
Very glad to hear that. Thanks.

------
JimmyL
I'll happily continue to pay for PyCharm even now that it's open-sourced (I
re-upped for another year last week, and don't feel like I missed anything by
not waiting for this). Aside from the fact that the Pro version has some
killer features - Django support, remote interpreters, diagramming, and a
.less editor - these guys deserve to be paid for an outstanding product.

I'm sure I could assemble a tool chain that does 90% of what I love about
PyCharm in vi, but I'm a-OK with having my company pay $200 to have someone
assemble that for me (or $100, if they didn't pay for it). In the same way
that some people - but not me and my Lenovo - will pay extra for a shiny metal
computer that just works, I'll pay extra for an IDE that gets out of the way
when it should, and gets in the way it needs to.

------
creat3account
Download link for linux version is busted. Here is the correct one (from trial
and error):

[http://download.jetbrains.com/python/pycharm-
community-3.0.t...](http://download.jetbrains.com/python/pycharm-
community-3.0.tar.gz)

~~~
reinhardt
Speaking of linux, has the 64bit version improved at all? Everytime I try it
out I can't stand it more than a few minutes and revert to Eclipse. (previous
discussion:
[https://news.ycombinator.com/item?id=5201366](https://news.ycombinator.com/item?id=5201366)).

~~~
madisp
If you do hacks then its absolutely ok (for me at least).

(I'm the author of the last comment in your linked thread). The idea is to
take a font and modify it by stripping all the hinting info.

------
programminggeek
Does this mean that the PHP, Ruby, and Obj-C versions will be seeing community
editions soon as well?

~~~
yole
No, this is very unlikely. (JetBrains CTO here, by the way.)

~~~
dschuler
I was wondering how it's possible that IntelliJ is free for Android
development? What drives the decision making to make one product free and the
other paid? In a way I like paying for RubyMine, hoping that it won't be
discontinued in the long run, although I'm guessing IntelliJ has a much larger
user base.

~~~
biafra
Android Studio is a rebranded version of the Community Edition of IntelliJ
IDEA which was free and open source for some time already.

The idea probably is to get the people to use (and love) it and then when they
want the non-free features, to buy it.

And with Android Studio: Probably Google is paying a bit for the development.

~~~
yole
Google is not paying anything for the development of Android Studio. Instead,
they've put their own development team to work on the Android features in
Android Studio, which we then integrate into our distribution of IntelliJ
IDEA.

~~~
biafra
Thanks for clearing that up!

And thanks for such a great IDE!

So if I'am using Android Studio I am a bit ahead (Android specific) feature
wise that by using the latest EAP of IntelliJ IDEA?

------
pdknsk
Does it support multi-selection, Sublime style? I just can't use an editor
without it anymore.

This is a bit OT, but Komodo got an update some days ago with multi-selection
support, which I was quite excited to try. Only to find out their
implementation is quite frankly useless.

[http://www.activestate.com/blog/2013/09/komodo-8-5-release](http://www.activestate.com/blog/2013/09/komodo-8-5-release)

'Right-click in the editor and choose "Select --> Multiple Selection --> Add",
then use Ctrl+Click (Cmd+Click on Mac) to quickly make additional selections.'

~~~
gknoy
A sibling mentioned refactoring, but one thing I also use a lot is column-mode
editing. It's something you can toggle just like you can in Eclipse, and can
be very useful. Not quote as useful as selecting multiple regions to edit, I
agree, but still very good.

For me, the killer things in PyCharm are the excellent Python library support,
and the fact that it indexes my codebase so that "Where is this defined?" is
extremely fast. That is the feature I use all the time which is less
convenient to do with many other editors.

~~~
jhawk28
The default key binding for column mode is Alt-Shift-Insert.

------
hayksaakian
Excuse me if I'm being naive, but does Python development need an IDE? In what
ways could it be helpful? I'm under the impression that Python is not compiled
generally.

I'm coming from the Ruby point of view

~~~
heyitsnick
I've tried a lot of IDE's for python development in the past and always went
back to a basic text editor; the extra features never outweighed the bloat.

But then i found PyCharm and never looked back. I feel i develop at least 50%
faster with any serious project; i still use Sublime for the one-off scripts,
but everything else i find the introspection, code completion and refactoring
just so good its now hard to go without.

Props to Jetbrains, and I look forward to v3 pro! (my 2.7 isn't yet telling me
i have an upgrade... i'm hoping this is coming soon!)

~~~
bsaul
See my question above. You don't need your 2.7 to tell you anything. If you've
got a license you can simply install the 3, import the settings and use the
same license.

~~~
heyitsnick
If memory serves, this will install it side-by-side with existing install,
whereas doing it in-app upgrades (windows). Could be wrong though.

------
bsaul
I've bought the 2.7 version a couple of months ago and I don't regret it, but
does anyone know if the 3 (pro edition) will be available as a free update for
people like me ?

I've read on the site that people like me are supposed to receive a free
update by email, but i didn't see anything... Anyone in my case ?

~~~
cgtyoder
From the site: "PyCharm license is permanent and includes one year of free
product upgrades since the purchase date, including even major version
upgrades."

~~~
bsaul
Yes, that's the line I read as well, but nothing in my mail. So i was
wondering if someone did receive that update by mail, or if it's just too
early.

~~~
yole
What exactly do you expect to get in your mail? Just install the new version
and import the settings from the previous one, and it'll work with your
current license.

~~~
bsaul
Ok, cool.. I read this line wrong apparently : "PyCharm license includes the
initial 1-year upgrade subscription qualifying you for the receipt of the new
product releases and technical support (available via email only) free of
charge"

Didn't realize the "via email only" concerned the support only. (non-native
english speaker here).

~~~
frenchy
That's quite understandable, I'd say it's pretty ambiguous.

------
mark_l_watson
I own personal licenses for Idea, RubyMine, and PyCharm - all amazing good
products.

Where I am working now, Eclipse is the supported environment so I am using it.
OK, but not as good...

BTW, when they open sourced Idea for Java, I was pleasantly surprised how easy
it was to build. Nicely packaged.

~~~
TheNom7
Is there any point in owning a license for IntelliJ and RubyMine/PyCharm? I
thought that IntelliJ Ultimate had all the features of RubyMine and PyCharm
but I haven't used them so I could be mistaken.

~~~
topka
You are correct, Ruby and Python plugins add most of RubyMine/PyCharm features
to IntelliJ IDEA Ultimate. You may want to have separate IDEs if you need more
lightweight environment. RubyMine & PyCharm are in general updated more
frequently too.

------
nether
Is this preferable over ipython/pylab notebooks for math/scientific python
programming?

~~~
dagw
For exploratory interactive programming and shorter scripts, not really. For
building larger more complicated systems, very much so.

Personally I use both, continuously switching between the two. I play around
in ipython/pylab until I've gotten all the algorithms and details worked out,
and then use Pycharm to add that code to the larger library or application
which those algorithms will be a part of.

~~~
mapcar
I feel like IPython is better for sharing your final analysis but I do all of
my coding/development in Emacs + python-mode and haven't been able to figure
out all the hype around IPython. And once you start with Pylab it becomes
difficult to map your functions back to their original namespaces (especially
since many are redundant between numpy and scipy) in a bigger project, so I
stopped using it altogether. Could you explain a bit if I'm missing the point?

~~~
tmarthal
What entrypoint are you using to run your programs? REPL function calls / test
runners / main methods from the CLI / local web server w/browser? I think
understanding that matters the most.

If you do a lot of development in the REPL (i.e. exploration), then that is
where iPython (in a notebook, or a shell) really is nice. If you don't, then
you may not see the benefit.

~~~
mapcar
Thanks for the response.

I primarily program with python for shell scripting/text processing, or data
analysis/simulation with numpy/scipy/pandas.

I do a lot of exploration, I rarely ever type anything directly in the
REPL/interpreter - I write all my code in scripts and send them to the REPL
with emacs keystrokes. Afterwards, I'm left with a script that contains my
analysis/processing method. (never had a local web server running except when
playing with emacs ipython notebook).

Am I possibly missing a way to do it better?

~~~
dagw
_Am I possibly missing a way to do it better?_

I find ipython with its magic commands and ability to directly call shell
commands more handy than the standard REPL for interactive shell type
scripting.

Other than that, not really. Inline graphs are nice if you like that sort of
thing, and some of the magic commands are occasionally useful. But beyond that
I don't think you'll gain much if you have a approach that works for you.

I also gather that ipython's parallel processing tools are pretty powerful,
but I've never really played with them.

~~~
mapcar
Are direct shell commands that useful...? I either have a shell running in
emacs or in a separate terminal that I can quickly switch to. I've heard about
the parallel processing tools, but sounds like I'm doing alright with emacs.
Thanks much.

------
d0m
Is it a multi-language editor? I.e. can I switch between html, javascript and
python and expect to have a similar interface, commands, API, etc. ? If so, it
looks like a strong contender against Sublime IMHO.

~~~
brown9-2
No. JetBrains has a different product for Javascript and/or HTML development:
[http://www.jetbrains.com/webstorm/](http://www.jetbrains.com/webstorm/)

~~~
jhawk28
The paid version of PyCharm has the web stuff.

------
mladenkovacevic
So if you're using Django or Flask and need Javascript and HTML/CSS you still
need the professional version?

Also is the professional version any of the paid licenses on this page
[http://www.jetbrains.com/pycharm/buy/index.jsp](http://www.jetbrains.com/pycharm/buy/index.jsp)?

It's just that the term "Professional Version" is used to differentiate it
from the "Community Edition" on all the informational pages and then the terms
are not used anywhere on the Buy page.

~~~
toyg
If you pay for it, it's a Pro version.

------
mixmastamyk

        bin/pycharm.sh 
        ERROR: Cannot start PyCharm
        No JDK found. Please validate either PYCHARM_JDK, JDK_HOME or JAVA_HOME environment variable points to valid JDK installation.
    

I wish this had been mentioned up front, before I spent all that time watching
videos and such. :/ Nothing against java per se, just that it's a giant
runtime/security-surface that has no bearing on my Python work.

I'm still happy with Geany, gvfs, meld, and terminal, etc... though they might
not be as flashy. :)

~~~
speg
Same here, though I've been following JetBrains for a while. I wish there was
some way they could port it to OS X without depending on Java.

~~~
millerm
There is no way they would 'port' away from Java. JetBrains has been building
this platform for more than a decade. This is what has allowed them to support
many operating systems concurrently and with great results. No need for the
FUD on Java. Java is really what they excel at.

------
julikt
Am I the only person thinking that any Java-based IDE demos have been sped up
by the magic of editing by at least 200% and all the SBBOD-ing has been
trimmed out?

------
shire
Python in general is an awesome fun language to work in this just makes the
language even more better and fun to work with. Thanks JetBrains!

------
Demiurge
Hm, so I just tried it. I have the latest Mac mini (i5 8GB RAM), and it was
slow. Switching between files, highlighting lagged. Typing was stuttery. Next,
I couldn't change the font, it was just not selecting. So, looks like cool
software, but I went back to Sublime Text 3 with lint extension.

~~~
glogla
If it's the same as IDEA, you need to create new theme before font change is
available.

~~~
masklinn
It is.

------
zarify
I'd love to know why the OSX version is bugging me to install X11 all the
time. /peeve

------
tharshan09
PyCharm is amazing, and it can only get better with this announcement. The
only issue I have with it is the huge amount of memory it uses. It uses >1GB
of ram on my macbook air, and using pycharm for extended amount of time makes
it sluggish.

~~~
yole
If you can reproduce the problems, please submit a memory snapshot as
described in
[http://devnet.jetbrains.com/docs/DOC-1212](http://devnet.jetbrains.com/docs/DOC-1212)

------
orenbarzilai
Read some comments here and feeling bad that I spent the past ~6 years using
eclipse.

------
galapago
It's already available in the AUR:

[https://aur.archlinux.org/packages/pycharm-
community/](https://aur.archlinux.org/packages/pycharm-community/)

Someone is working on Debian packages for it?

~~~
glesica
It requires the Oracle JRE, so I don't see how Debian could provide packages
for it without a ton of weird hoops to jump through. I tried it on OpenJDK and
it chokes.

------
usav
Considering the growing number of coders out there that usually start with a
language like python or js, this is kind of an obvious thing to do. (more so
than trying to compete with netbeans/eclipse)

------
mutor
What an amazing coincidence, I started learning Python last week and was
trying my hands on PyDev. Yesterday when I saw this news, I immediately
downloaded PyCharm and now I am loving it.

------
vertis
Adding PyCharm to the collection of products is awesome. I do wish JetBrains
would offer some combined licensing. Since I have a tendency to use quite a
few of their products.

------
riquito
Where are the sources? I can't find a link to them

~~~
yole
The source code of PyCharm Community Edition will be added to the IntelliJ
IDEA Community Edition repository in the coming days.

------
chris_mahan
The .exe download is blocked at the office.

Is there a .zip version available?

I also assume the installer doesn't require administrative privileges... Am I
right?

~~~
jhawk28
There doesn't appear to be a .zip version. They have zip versions of the
Intellij so they may add it if you do a feature request. The installer only
requires admin to install to the Program Files. If you say no, it installs to
your local user location (in Roaming).

~~~
chris_mahan
Ah, interesting. Thank you.

~~~
chris_mahan
Managed to download, then installed in alternate location as non-admin.
Working good so far.

------
codexon
How does this compare with pydev? [http://pydev.org/](http://pydev.org/)

~~~
EdwardDiego
Well, at the risk of providing a not very detailed answer: it's better, in my
subjective opinion.

Better at code introspection, better at refactorings, better at debugging.
Also, I prefer the UI.

Of course, you're the final arbiter of these things for yourself, so give it a
short.

------
koudi
The title seems misleading - the IDE is not opensource, but they offer free
license for opensource projects.

~~~
zerovox
Nope, they're now offering PyCharm Community Edition which is free to use for
all and open source under the Apache 2 license.

~~~
polskibus
Have you found the link to the source? I can't find it and so curious :)

~~~
yole
The source code of PyCharm Community Ediion will be added to the IntelliJ IDEA
Community Edition repository in the coming days.

------
qwerta
Congratulations! JetBrains did it again!

------
Walkman
Great... Now I really can't choose between PyCharm vs
Sublime+iTerm2+SourceTree...

------
daureg
Is it just me or the font selection option under Windows is rather convoluted?

~~~
yole
It is, sorry about that. We plan to change the UI back to a simpler version in
one of the coming updates.

------
systems
pascal is making a comeback with free-pascal and lazarus i wonder if it will
catch their attention

all free-pascal need now is a decent web-framework, but for desktop apps, i
think its one the best options at the moment

------
swah
Still waiting for Grok. This should really be done once for all editors.

------
neokya
Just tried Professional one on OSX, CPU goes above 100%.

Anyone having same issue?

~~~
Erwin
Well, It's a multi-threaded program, and when you create a project it will
start out by indexing everything. So while it's doing that, it can spend quite
a lot of CPU time -- "top" etc. typically show the CPU time spent by all the
threads in a process, so you can easily see it go up to N * 100% based on your
cores.

That can get occasionally annoying, if you drop in a a bunch of 1mb text files
in your repository and it insists of examining them.

But, introspection and refactoring capabilities are great.

~~~
EdwardDiego
> That can get occasionally annoying, if you drop in a a bunch of 1mb text
> files in your repository and it insists of examining them.

You can right click the directory and mark it as excluded from the project. We
have an integration test suite that likes to emit gigabytes of XML into its
local directory - which IDEA happily tries to index. Excluding it saves me a
lot of CPU time.

------
inovator
Webstorm will be open-source any minute now...

~~~
yole
If you look at the feature comparison matrix, you'll see that the Community
edition specifically excludes the features which are part of WebStorm. So no,
don't hold your breath.

------
camus
now that's pretty AWESOME ! while eclipse supports python, it feels like a
dinosaur. Jetbrains ide is the sh|t ! Thanks guys.

------
qacker
Unfortunately, PyCharm's pyconsole is a copy-and-paste job of Eclipse PyDev's
pyconsole, and it is quite buggy and lacking in features. This is quite
disappointing since I have high expectations for any JetBrains product. I was
hoping that JetBrains had the effort to properly implement REPL work flow in
their IDE instead of copying the code from its competitor (heck, I just took a
look at PyCharm's pyconsole code, and the code still mentions Eclipse)

The above probably is not a deal breaker for many people, but just as many
people indeed use Python as REPL, so I would like to see more improvement.

Otherwise, no problem with the software so far that I have tried. Thanks,
JetBrains.

~~~
yole
Our code is a fork of pydev's implementation on the back-end and our own
implementation on the front-end, and we've made many improvements to pydev's
code since the fork. If you find anything lacking, please file feature
requests to our issue tracker.

~~~
qacker
Thanks for your reply, and I stand corrected regarding calling the work a
copy-and-paste job.

Out of my curiosity, I was wondering whether you could explain why pydev was
chosen to be the base work.

------
davexunit
Oh look, another community edition program. "Open core is the new shareware."

[http://ebb.org/bkuhn/blog/2009/10/16/open-core-
shareware.htm...](http://ebb.org/bkuhn/blog/2009/10/16/open-core-
shareware.html)

~~~
danieldk
From the article:

 _And, this is true whether the Core is GPL 'd or permissively licensed. In
both cases, the final story is the same: take a proprietary license or be
stuck with cripple-ware._

Except that IntelliJ Community Edition is a perfectly usable and able IDE
already. In fact, Android Studio is based on it. Certainly not crippleware.

And in this case I very much like this model. InteliJ CE is open source
software under the Apache License version 2.0. If JetBrains would disappear
tomorrow (hopefully not!). A non-profit project or another company could
continue where they left off.

That said, I am a very happy user of the Ultimate Edition :).

