
Python Tools for Visual Studio - johndcook
http://blogs.msdn.com/b/somasegar/archive/2011/08/29/python-tools-for-visual-studio.aspx
======
silverbax88
Awesome. Now I can do my robotics programming in the best IDE in existence.
Sorry, Eclipse, I love you and we're great together, but you're no Visual
Studio.

~~~
francoisdevlin
You spelled vi wrong

~~~
sigstop
I'm sure this was meant as a joke, but, the downmods still make me sad. I used
VS for some classes in school and at my first job and it made me a worse
programmer. It took years to undo the damage. In my opinion, as a developer,
and in my experience in working with a lot of other developers, terminal + vim
+ build tools (gcc/javac/python, etc) is far superior compared to VS.

~~~
silverbax88
I'd be curious as to what 'damage' you needed to have undone. I've written in
just about every IDE available (including vim) and quite frankly my opinion is
that, well, tools can make things easier but they won't make anyone a good
programmer.

~~~
sigstop
The debugger is a big one. I had a terrible habit of not thinking through the
code but just running through the debugger until I got it working.

Not thinking about how code looks (especially to other people) since I could
just resize the window to whatever.

A lot of the build complexities were hidden, which was fine as long as
everything worked, but, as soon as something small broke, I spent days reading
documentation and uselessly searching MSDN and the web trying to get the
project to build (so, not understanding my build environment is something else
I had to fix).

There are lots more (source control, collaboration, etc). I know that
switching my tools and my development environment made me a better programmer.

~~~
eropple
I do most of my development in Eclipse or VS, because frankly my time is worth
more than screwing around with Vim for more than basic text editing. Funnily
enough, I only break out the debugger when something's really nasty--maybe
once a week, for half an hour or so. I certainly don't practice debugger-
driven development, and I don't know anyone who does. Personal problem, not a
tooling problem.

"Not thinking about how the code looks"--personal and cultural problem, not
that of the tools; whether I'm in Vim or Coda or VS2010, I run a guideline at
100 characters (because 80 character lines is dumb in the age of the smallest
dev monitor being 1280 pixels wide) and wrap to it. Never heard a complaint
from anyone I work with.

Build complexity--here, you have something of a point, but MSBuild or Maven or
whatever isn't appreciably different than tooling with makefiles (except that
MSBuild probably has better documentation and there's some semblance of a
standard way to do things).

Source control? I use Hg and Git, seamlessly, from within VS2010 or Eclipse.
Not a problem at all. Collaboration? I've used VSTS for it before, but I just
hang a Chrome window in my second monitor and keep Redmine (at home--Bugzilla,
at work) and an IRC channel open. None of this is appreciably easier in the
Land of the Holy Terminal--it's just _different_.

I've used both heavily IDE-driven stuff and the stone knives and bearskins
that vi-land suggests, and my practices do not fundamental change from one to
the other--because I understand what I am doing and how and why to do it.
Changing your environment doesn't help you become a better programmer unless
you understand _why_ you did what you did and have developed the discipline to
not do it regardless of tooling. Your problem existed between keyboard and
chair, and it doesn't sound like you've fixed it--just hid it away.

~~~
sigstop
I'm glad the tools you use work well for you.

I have coworkers who use Eclipse (for Java). It's a CPU hog; often it locks up
entirely, crashes are infrequent but, happen. I've tried it; I know I'm much
faster with vim. For me, my time is worth more than putting up with Eclipse.

I use 80 characters per line because if I am at a larger monitor, I can have 2
or 3 split windows side by side. If I'm at a smaller terminal, everything's
still readable. I find narrower code is more readable anyway. Most developers
I admire write like that. In any case, this is a major flame war topic; if you
don't like it, I'm glad that your system works for you.

As far as build systems, I'll take autotools and its learning curve and pain
over VS any day. I can fix it when it breaks.

What are you trying to accomplish by saying that my problem is not the tools
but that I'm bad at programming? Why is it that because you think you can
write decent code in VS, that means that I didn't learn anything new when I
switched from it? I know I certainly did; in fact, if I could give myself any
advice back when I started any sort of formal programming, it would be: get
off VS and Windows immediately! I would be three years ahead of where I am
now.

~~~
eropple
I'm not saying you're bad at programming, I'm saying you're blaming the tools
for your lack of discipline. Plenty of good programmers I know are
undisciplined. But you can learn, and it's not the tools' fault that you
didn't do so before. Hell, I'm a VS2010/Eclipse driver but I write MSBuild
scripts by hand and I spent time the other day debugging the make/ant
monstrosity. Limiting yourself because it's the only way to make yourself
learn what you need to learn may work, but why not just _learn it_?

(And re: Eclipse--yeah, it's a bit of a hog, but _hardware is cheap_.
Developer time isn't. And the features it provides have no equivalent in vim
et al.--just look in the Source dropdown menu for a number of significant
productivity enhancers. Those are some of the more minor ones, even; Open Type
probably saves me half an hour a day in the monster of a codebase I have to
work in. Eclipse is by no means perfect, but it's geared toward reducing
boilerplate and stepping on the annoyances involved in Getting Things Done.)

~~~
sigstop
Most of my peers in school used the same "compile, debug" approach as well.
Most of them are still doing it and I can't see any serious software company
ever hiring them (there is no shortage of positions for mediocre programmers
though, so, they're doing just fine). I don't think this symptom is unique to
me and my lack of discipline. As to why I didn't just "learn" to use VS or
"learn" to program better? It wasn't for the lack of trying. MSDN was
worthless, written documentation (yeah, it was that far back) was worthless
and all of the code that other people wrote in VS that I had to interact with
was absolutely terrible. It wasn't until I switched my environment until that
I got any better. I got more from a man page in an hour than I did from a week
of reading MSDN.

As far as Eclipse; I've worked with large codebases and I was faster with vim
and knew my APIs better than any of my colleagues who used Eclipse. I heard
them complain about Eclipse freezing pretty much daily (as well as doing
something wrong when it came to interacting with perforce, often in a
devastating way). I know that I Got more things Done than any of them.

------
joeyespo
This is fantastic. Been using it for a few weeks now. Coming from a bare bones
editor (Crimson Editor :), it's been a wonderful experience.

------
rbanffy
How many people here use Python on Windows? What are you using it for?

~~~
skrebbel
You're asking that like it's special. Why is that? I mean, Python works great
on Windows. Has an installer and all that; next next next finish. Package
management is something of a hell (esp if you're used to ruby gems) but all in
all it works fine.

I for one, prefer win as a dev platform, no matter the deployment platform.
That means if the language of choice is Python, I use Python on Windows. I
always assumed that this is rather common..

~~~
rbanffy
Most of the pythonistas I know are more or less evenly divided between Mac and
various flavors of Unix. Windows users are somewhat rare, but present. I was
curious if other groups have different profiles.

~~~
dagw
"Pythonistas" might not use windows, but a lot of programmers who work on
Windows use python. Python on windows has been actively used at every place
I've ever worked.

~~~
rbanffy
Why would pythonistas not use Windows? I know I don't, but not everyone agrees
with me.

~~~
RyanMcGreal
Why would any programmer who isn't actually programming for Windows use
Windows? Unless you're writing .net applications in VS, Windows isn't a
developer-friendly operating environment.

~~~
rbanffy
Windows seems popular among programmers who also want to run PC games, even if
they don't program for Windows.

~~~
RyanMcGreal
I could see programmers running a dual boot with Windows and *nix.

~~~
dagw
I used to do that, but booting between two OS's was always kind of a pain and
really Windows 7 generally just kind of works. I haven't booted into my Linux
partition for month. For the times I need Linux there's vmware, but there are
relatively few things that I can't get done on windows.

Server side on the other hand I'm all *nix all the time.

~~~
RyanMcGreal
I also used to do that, but I landed on the other side - Linux generally just
kind of works, and I dropped my Windows partition a couple of years ago. For
the times I need Windows there's Virtualbox, but there are relatively few
things that I can't get done on Linux. :)

------
tansey
Pretty awesome that numpy and scipy are now supported by .NET. Does anyone
know if the nltk is supported yet?

~~~
runevault
Kinda makes me wonder how easy it'd be to use them with c# and other .net
languages, for anyone who was coming over from Python and already comfortable
with those libs.

------
mhb
Can I use it for remote debugging of an AWS server? Like Komodo IDE?

~~~
mhb
Doesn't look like it:

 _Our remote debugging solution depends on msvsmon to provide the attach-to-
process functionality, so remote debugging doesn't work on linux out of the
box. However, given a process attach infrastructure on linux you could reuse
our debugger.py to talk back to Visual Studio, as that is a simple socket
connection. If you wanted to implement that and contribute it back we'd
definitely look at taking it._

<http://pytools.codeplex.com/discussions/259591>

------
joeyespo
The _only_ complaint I have is that the installer hijacks the Python icons. I
don't exactly care what program .py files open with since I usually drag/drop
them into the appropriate editor and run Python apps from the command line.
But I grew quite fond of CPython's file icons and they're much different after
Python Tools installation.

The workaround is to reinstall Python after installing Python Tools.

------
samyvilar
Interesting, I guess this shows how popular python has become, tried a couple
IDEs, so far pycharm, based on intellij, is one of the better ones if any one
has a better one would love to try it ...

------
alok-g
See also: <http://news.ycombinator.com/item?id=2938632>

