
One Year Later: Review of PyCharm 2.7 from a Vim User’s Perspective - lauriswtf
http://andrewbrookins.com/tech/one-year-later-an-epic-review-of-pycharm-2-7-from-a-vim-users-perspective/
======
sergiotapia
It's very similar to RubyMine; JetBrains' Ruby (Rails) IDE. For the first time
in my life I said to myself, "I _need_ to buy this software for my
professional toolkit."

It's priceless. The same benefits you mentioned, while being really useful in
exploring model associations, Rails API autocompletes and more. I used to use
Sublime Text, but really; when I'm working on a big project, I _want_ those
extra features to let me know if I'm mucking things up by using the wrong
models or missing associations or exploring the codebase.

Money well spent.

~~~
JanezStupar
RubyMine and PyCharm are both handicapped IntelliJ IDEA spin offs.

You could buy IDEA and run RubyMine and Pycharm as plugins. ;)

~~~
reeses
It's annoying when the specialized versions release before the IDEA plugins
are tested and released. Reading about the cool new features and not being
able to find them in IDEA sucks. :-)

------
buster
I can only agree, PyCharm ist really great work by JetBrains, i love it.

What i think he really missed in features though:

\- VCS integration is really really good

\- Plugins for the Atlassian suite (never open Jira in a browser again!)

\- virtualenv support

\- remote debugging and execution and uploading support

\- vagrant support

~~~
ra
Totally. And as someone who runs a linux and mac machine the "personal
license" is awesomely down to earth.

~~~
buster
Especially when you bought it on black friday or christmas or whenever they
had 75% off :P

I am considering buying IntelliJ next time they have such an offer..

~~~
abrookins
I regret not buying Intellij Ultimate during their End of the World sale.

------
doctorpangloss
WebStorm is my editor of choice, and it has most of the same strengths.

It's amazing though how complicated an IDE can be to develop. I'm not
surprised JetBrains really specializes. TeamCity, while good, does not
approach the sophisticated of something like PyCharm.

Conversely, the joke at WWDC was that Xcode 5 brings Apple's native tools into
the year 2011.

------
shadowmint
One thing that doesn't turn up in that review: default key bindings.

See:
[http://www.jetbrains.com/pycharm/docs/PyCharm_ReferenceCard....](http://www.jetbrains.com/pycharm/docs/PyCharm_ReferenceCard.pdf)

vs:
[http://www.jetbrains.com/pycharm/docs/PyCharm_ReferenceCard_...](http://www.jetbrains.com/pycharm/docs/PyCharm_ReferenceCard_Mac.pdf)

You'll notice a few major differences, like control-N on windows == apple-O on
a mac.

Just weirdly inconsistent and irritating when you're jumping back and forth
between different machines.

I'll totally +1 for the terribly average support for themes too. Copy the xml
files into my colors/ folder by hand? Really...?

Other that that it's fantastic though~

~~~
abrookins
Yeah, I should probably have a "Multiple Platforms" section in there to
discuss issues like that different key bindings. Since I've remapped almost
everything, I don't notice it as much.

~~~
trailfox
IntelliJ and friends are great, but the default keymap is a train smash on
most common Linux distros. Whoever thought ctrl+alt+right arrow was a good
navigation shortcut?

------
reinhardt
Unless they fix their 64bit Linux version [1] I'm not bothering try it out
again and give up within a few minutes.

[http://www.reddit.com/r/Python/comments/182siy/pycharm_27_is...](http://www.reddit.com/r/Python/comments/182siy/pycharm_27_is_out_new_refactorings_integrated/c8bigpc)

~~~
sigzero
Try adding these lines:

    
    
      -Dawt.useSystemAAFontSettings=on 
      -Dswing.aatext=true
      -Dswing.defaultlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel
    

to the pycharm64.vmoptions file.

~~~
Erwin
Hmm, I have a hard time seeing a difference, but this is a large screen and a
decent computer. What uglieness should be fixed by this? I use Oracle Java
1.7.0_21-b11 64-bit. Those hundreds of Java flags are a mystery to me.

~~~
AYBABTME
It tells AWT to use anti-aliased fonts, same for Swing, and then set the
LookAndFeel to GTK.

------
rjzzleep
java swt in linux is still horrible (yes i know there are workarounds such as
patching your font [1]).

but if you use jedi and by extension things like youcompleteme[2], vim-
dispatch etc. the only thing that's really missing is debugging support and
refactorings.

omnisharp[3] does pretty cool refactorings with nrefactory. and the author
youcompleteme is interested in having youcompleteme work as some sort of ide
daemon, where you could for example add stuff like refactorings as ide
features.

vagrant and virtualenv support sounds interesting though.

[1]
[http://gleamynode.net/articles/2280/](http://gleamynode.net/articles/2280/)

[2]
[https://github.com/Valloric/YouCompleteMe/](https://github.com/Valloric/YouCompleteMe/)

[3] [https://github.com/nosami/OmniSharp](https://github.com/nosami/OmniSharp)

------
Myrmornis
I want to believe. I suspect that hacking at large codebases with emacs/vim
isn't the way we're going to build complex codebases over the next few
decades. But I downloaded the free trial and got out of there after about 5
minutes and went back to shell + emacs. I just can't see how I'd ever really
be in control with this complex layer between me and the actual python/django
processes executing on my laptop. Without meaning to be gratuitously insulting
(but being insulting) I do think IDEs like this make sense for code monkeys in
large organizations. But for someone whose job involves actually writing the
infrastructure of their django project (as opposed to relying on another
department), I'm still not seeing it.

~~~
codex
Can you elaborate? How do you feel PyCharm removes control? Does it setup your
environment in a way which prevents customization?

~~~
JanezStupar
It doesn't. It doesn't do anything to your project.

It does offer awesome VCS integration features. It does offer a powerful
debugger. And it gives you an JavaScript IDE that doesn't suck. VIM just cant
handle modern JS code.

PyCharm also gives you PEP8 and JSLint support. And its intelligent
autocomplete is awesome and makes programming in dynamically typed languages a
breeze.

OP just couldn't be bothered to give the product a chance. While he is smugly
juggling dozens of shell instances I let the IDE do the work for me.

Jetbrains is making the best IDE around.

~~~
Myrmornis
Smug attack accepted, I deserved that :) I tried to address some points
related to your reply in my comment above.

------
kclay
I first tried PyCharm when I had to do a project for the Boxee platform , it
was my first time doing anything in python and it helped greatly. Even back
then the autocomplete was great, debugging just worked and for a complete noob
it was perfect. Since then I switched to the full blown IntelliJ IDE and never
again will I use anything else.

------
orf
I've used PyCharm constantly for the last few years and its great. A few
things about the Django integration annoy me (some valid template constructs
are marked as invalid) and the refactoring sometimes causes more headaches
than its worth (changing the wrong things). Other than that its great.

------
coolsunglasses
For those wondering, us Emacs creatures use Rope + ropemacs + rope-mode to
achieve the same thing. Vim has access to the same tooling more or less.

~~~
tl
From the article:

> Rope-based completion was always unreliable, slow or both.

I haven't used rope. Is the author wrong about this?

~~~
jaegerpicker
Not in my experience. On Mac OS X in emacs, vim, and sublime text 2 rope based
auto complete is pretty poor compared to PyCharm, X Code (5 which I've been
using the beta since it's release pretty heavily is really REALLY good at this
compared to 4), and Visual Studio.

------
IzzyMurad
The only major downside I found is its nonnative feel since it's written in
Java. Otherwise, it's the best.

