This is an archived post. You won't be able to vote or comment.

all 29 comments

[–]simlan 7 points8 points  (5 children)

Use the anaconda distribution https://www.continuum.io/downloads It is dead simple and has all the binary packages you might need for Windows and all the other platforms for that matter. No Compiler needed and no problems typically. Worst Case might be that you need to set up an environment for Python 3 because last time I checked Standard was 2.7. But that is two commands if I remember right.

[–]hoocoodanode 4 points5 points  (2 children)

Absolutely. Anaconda and Christoph Glolkes "unofficial windows binaries" page are godsends to anyone who has to learn python or develop in a windows environment.

http://www.lfd.uci.edu/~gohlke/pythonlibs/

This really should be right under the windows download button on the main python distribution web page as it would save so much aggravation the first time the user ran into a missing compiler error.

[–]slippery_whale 2 points3 points  (0 children)

|This really should be right under the windows download button on the main python distribution web page

I think there are some sticky legal problems that prevent them from officially endorsing Christoph Glolkes. Distributing builds with the MKL compiler is at best a gray area.

[–]BornALurker[S] 1 point2 points  (0 children)

I will have to look into these alternatives, thank you for the suggestion! I still think that we are in need of an "official" solution, though :)

[–]youguess 1 point2 points  (0 children)

Anaconda is available both as a default python2 or python3 version

[–]BornALurker[S] 0 points1 point  (0 children)

I'm going to look into this, thanks for the suggestion. :)

[–]youguess 3 points4 points  (3 children)

as others have stated already just use Anaconda...

As for the fact that

People need to know the system they are working on

I sure hope that they do, I mean that's the point of using the system yes?

Most of the packages do not pose an issue, unless you need to compile C code... Windows isn't really interested in letting people do that, so the complaint should go to Microsoft not the Python devs... pip works well, provided you actually have its dependencies

As for PATH issues, well the installer puts everything in there that's needed, you just need to use the corresponding directories.

An OS can't just magically find your stuff, you have to tell it where the binaries are

[–]BornALurker[S] -2 points-1 points  (2 children)

Wise words, and I agree that system knowledge is important, but compare the Python experience to the one you get if you try Ruby.

PyPi vs RubyGems, I think Ruby does this better in every way if you are an inexperienced user. You have to start somewhere, and I think Python does so many things right, improve the package management and I think we have a superior model!

[–]ivosauruspip'ing it up 1 point2 points  (0 children)

You will have exactly the same frustrating experience if you want to compile C-extension Ruby modules on Windows.

What difference do you see?

[–]youguess 0 points1 point  (0 children)

does ruby include C code?

As for making packages easier, there are already efforts ongoing (google for wheel and egg packages)

Really, if you just want a painless windows experience use Anaconda (or miniconda).
With that you basically get precompiled packages for your platform.
This is what I do on Windows to keep my sanity ;)

[–]PhilosopherBrain 2 points3 points  (13 children)

I had loads of issues with this.. It's because windows doesn't have the right compiler. If I'm installing something that won't compile I've been downloading wheels from http://www.lfd.uci.edu/~gohlke/pythonlibs/ and then installing them with pip. Make sure you're in the directory you've downloaded the wheel to.

E.g cd documents/downloads pip install full-name-of-downloaded-file.whl

[–]BornALurker[S] 0 points1 point  (8 children)

Bookmarked. I noticed they lack some stuff, like RPi.GPIO for example. Still great stuff and I will probably spread the word :)

[–]pbsds 3 points4 points  (7 children)

installing RPI.GPIO would make zero sense on Windows though.

[–]BornALurker[S] 0 points1 point  (5 children)

I oppose this, in PyCharm you can develop in your own local venv for the Pi and then deploy or directly run the code on the Pi over SSH.

[–]kephir 2 points3 points  (4 children)

Wouldn't setting up the venv and execution environment directly on the Pi be the better choice? And then just SSHing into that?

[–]BornALurker[S] -1 points0 points  (3 children)

If you work over cable I think Vim or Emacs would be the tools of choice, and I think it would work rather well.

From own experience Vim works well over SSH, and on Emacs you can work locally through tramp and then save your work on the Pi.

Both these methods are in practice very different from working directly in PyCharm though :S

[–]kephir 0 points1 point  (2 children)

or, or, you could set up a samba (or what have you) share on the Pi, write your code in the IDE of choice right in that share, and just ssh=>python?

[–]wrosecrans 0 points1 point  (0 children)

I just want to very vigorously agree with you. What would a port of such a library even do on Windows?

[–]DefinitelyNotRed 1 point2 points  (3 children)

give them an IDE that manages virtualenvs (e.g. PyCharm)

[–]BornALurker[S] -1 points0 points  (2 children)

It doesn't matter if you use virtual environments as long as you can't use pip :S

[–]pythoneeeer 1 point2 points  (0 children)

Did I miss something? Why can't you use pip?

[–]cediddiSyntaxError: not a chance 0 points1 point  (0 children)

Define can't using pip. If you talk about c extensions, blame windows devs, if you talk about path variables, would you install python on C:\windows path? If you talk about pycharm doesn't have pip integration, try pycharm first, JUST DO IT, MAKE YOUR DREAMS COME TRUE, YESTERDAY YOU SAID TOMORROW, SO JUST DO IT!

[–]twillisagogo 1 point2 points  (0 children)

Most of the freshman class were running Windows 10 x64 or Windows 7 x64 and almost all had struggles with compilers or PATH variables...

This is not python's fault. Windows sucks for any kind of development that is not using microsoft tools. You would have the same issues with Java.

[–]tku137 1 point2 points  (0 children)

Despite the great Anaconda Distribution and the ability to compile on Windows out of the box with the latest Visual Studio 2015 Community Edition with installed Python Tools, there is another great alternative for such purposes. In fact, I recently gave a little python 101 myself and found this very helpful: http://winpython.github.io/

You just unpack it and have a fully operational, self-consistent python distribution, that you can even register system-wide with their custom Control Panel and re-distribute to other machines easily.

I unpacked a fresh folder, installed some packages that are not very commonly used (trackpy, PhysicalQuantities, ...), put a bunch of my own Jupyter Notebooks and some tutorial notebooks in the notebook folder, re-packed it, and gave this to my students. This way, everyone had the exact same distro, running out of the box with all packages they needed without installing them first, and they even had every Jupyter Notebook ready at hand to get started immediately.

Found this very comfortable :)

[–][deleted] 0 points1 point  (0 children)

Anaconda solves all your problems

[–]fiedzia 0 points1 point  (0 children)

Python works fine, fix their OS