17 ms·
Python in the Windows 10 May update
- deleted 7y ago[deleted]
- SketchySeaBeast 7y agoWhile I don't like the "let's teach everyone to become coders!" thing that some companies seem to be pressing, I think this is a great addition for dabblers, or for people who are on their parents computer and want to do something quick without installing a bunch of junk. I really like this. Edit: Oh, I see it's from the store. Well, that doesn't help anything at all.
- wil421 7y agoThere are a lot of electronics hobbyist who may not know much about programming. The Adafruit/Pi community have a lot of python libraries for sensors and such. Some children/students may want to “make the thing work” with electronics rather than “get your dev system built and then program the thing to work”. Dependencies can be a nightmare especially on Windows.
- SketchySeaBeast 7y agoThat's a great extra addition - Pi's are super easy to program in Python.
- bollockitis 7y agoWhen I was 11 years old I was looking at a bit of code in a magazine and, being curious to know what it did, I booted up my parents' old IBM PC. I typed GWBASIC.EXE into the command line and I was astounded that it worked. Maybe that isn't so relevant now that it's easy to find and install software but my journey with programming began that day when I was magically dumped into that BASIC interpreter.
- SketchySeaBeast 7y agoThat's what first got me into coding - finding QBASIC on my grandmother's PC. I think things have changed - it's super easy to get into it now with the internet being such a great source of information and cheap tools, but having the tools available to us is I'm sure what launched a lot of us into this profession.
- GordonS 7y agoThe first coding I ever did was along the same lines, carefully copying dozens of lines of BASIC into a Commodore 64 - I still recall the feeling of wonder that it actually worked!
- mixmastamyk 7y agoEveryone should learn basic programming like they learn math. Not everyone will continue on to become a professional mathematician of course.
- SketchySeaBeast 7y agoI'm not sure I follow that argument - I don't think that the skill of programming is relevant to most people's lives, and I feel like the world of tech is actually getting easier for users to navigate - comparing DOS to a modern Android device, you basically don't need to know anything about command line commands to do whatever you need.
- markjenkinswpg 7y agoProgram or be programmed -- Douglas Rushkoff
- SketchySeaBeast 7y agoThat sure sounds profound, but I don't know what it means. Edit: Ah, somehow programming gives you the ability to direct and master technology, instead of being mastered by it. I'm incredulous - my ability to make web-apps doesn't exactly give me a seat at the same tables Facebook, Google, and the NSA are occupying.
- mixmastamyk 7y agoIt gives one the tools to recognize overreach, important for democracy.
- mixmastamyk 7y ago“Software is eating the world.” Everything is programmable these days, it’s highly relevant. And administration is not programming. Remember the old business folks and politicians we laughed at a few years ago because they couldn’t handle email? Sounds like you’re arguing for that kind of ignorance. Another example, knowing about the Roman Empire or WW2 is not important to daily lives either but we consider that knowledge to be basic literacy.
- Havoc 7y ago>While I don't like the "let's teach everyone to become coders!" thing Why not? I reckon it's a good idea as a shotgun approach. 90% of the people just won't get it and move on...the other 10% probably are suited to be real coders. Expecting everyone to code is unreasonable, but a throw it against wall and see what sticks approach to identifying interest & ability seems reasonable.
- SketchySeaBeast 7y agoI don't know that it has value - coding and computer use many years ago were similar - but now it's so different, I don't know how learning to do basic programming tasks would make most people's lives better.
- AlexeyBrin 7y agoThe title is inaccurate, if you write "python" in a Terminal and you don't have Python installed, the Windows Store will launch and show you the Python app/installer from the store. There will be no Python already installed or included with Windows 10.
- kuu 7y agoIt seems they made it for newbies: Once you discover that you need to get Python, you are quickly faced with many choices. Will you download an installer from python.org? Or perhaps a distribution such as Anaconda? The Visual Studio installer is also an option. And which version? How will you access it after it’s been installed? You quickly find more answers than you need, and depending on your situation, any of them might be correct. We spent time figuring out why someone would hit the error above and what help they need. If you’re already a Python expert with complex needs, you probably know how to install and use it. It’s much more likely that someone will hit this problem the first time they are trying to use Python. Many of the teachers we spoke to confirmed this hypothesis – students encounter this far more often than experienced developers. So we made things easier. First, we helped the community release their distribution of Python to the Microsoft Store. This version of Python is fully maintained by the community, installs easily on Windows 10, and automatically makes common commands such as python, pip and idle available (as well as equivalents with version numbers python3 and python3.7, for all the commands, just like on Linux).
- asveikau 7y agoThis is weird because "making it easier" seems a bit like screwing over people who want more control and specifics. MS is relatively new at packaging open source and doesn't seem to have much experience in the phenomenon of official packages being not what you want.
- mistermann 7y agoThose people are free to install it as they so choose.
- 7y ago
- el_cujo 7y agoIt's interesting seeing this the same week Apple announces it's cutting out of the box Python.
- mcescalante 7y agoYes, I found this very ironic. Apple says this in their deprecations in the release notes for 10.15 beta: https://developer.apple.com/documentation/macos_release_notes/macos_10_15_beta_release_notes#3318248 https://developer.apple.com/documentation/macos_release_note...
- seaborn63 7y agoWow I somehow missed this. Not jazzed about it, but it shouldn't be too bad to install
- king_magic 7y agoI think it's actually a blessing in disguise... managing Python environments on macOS has always been a massive nightmare precisely because of the default Apple Python environment.
- SOLAR_FIELDS 7y agoExactly - in a way that was a blessing in disguise because Python environments on MacOS is such a massive nightmare that it forced me to learn to use venv in all cases.
- shawnz 7y agoNote that the latest version to ship with mac OS was 2.7, so it didn't exactly ship with well-maintained support
- larkost 7y agoThis statement is misleading. Apple kept up with the 2.x versions, the same as almost every linux distro. Only recently have the linux distros started to move on to Python 3.x. And most of them still include Python 2.x (specifically 2.7) as the default `python`, and have added Python 3.x as `python3`. It is not correct to say that Apple did not maintain support for it.
- apacheCamel 7y agoAs a side note: I really enjoy how the imagery at the top shows the rating for Python is E (for everybody). Do all apps receive this type of rating? Who got to test this and decide it was E? I always assumed the ESRB rating system was only attached to video games.
- buildzr 7y agoQuick, someone grep the standard library code, we can at least get some mild profanity and improve that rating!
- kuu 7y agoMaybe it's better to link to the original Microsoft blog announcement? https://devblogs.microsoft.com/python/python-in-the-windows-10-may-2019-update/ https://devblogs.microsoft.com/python/python-in-the-windows-...
- ChrisSD 7y agoIndeed. The blog link gives much more detail and context then the guide.
- deleted 7y ago[deleted]
- ngcc_hk 7y agoSurprise they do. Other than basic (and no longer after bill gate is gone) the only programming language is dos command :-(. Well seem they did not. Otherwise python will be universal. Anyway need pip etc. And also better to use conda. And easier integration with os. As none, probably not that useful. But better than none.
- stestagg 7y agoIt's interesting that as Apple start considering not bundling scripting languages[1], Microsoft start doing so. Both sides may have wildly different reasons for making these changes, but the net result seems quite indicative right now. [1] https://developer.apple.com/documentation/macos_release_notes/macos_10_15_beta_release_notes#3318248 https://developer.apple.com/documentation/macos_release_note...
- romwell 7y agoYou know, when Ballmer chanted "Developer, developers, developers" back in the day, people made fun of him for years. But really, that's where that ship is heading now, and it's paying off.
- PaulHoule 7y agoThe worst thing about Python on Unix is that there is always a system Python you get when you type "python" -- it might have been up to date once, but it will be out of date someday, if only because updating it would break other system dependencies. Thus when you give a coworker instructions how to run something, they wind up using the wrong Python and will waste hours of their own time and your time wondering why it doesn't work. Or maybe they'll get confused about pip vs pip3 or ... I've found it's a lot easier to get it right on Windows since there is no system Python for people to get confused about. Java's xenophobia, its insistence on "100% Pure Java" and the various squabbles that Sun and Oracle have had with other platform companies has actually made Java more reliable across different platforms since people expect to have to manage their Java version and don't have a sense of entitlement that they should just type "python" and have it work.
- jkaplowitz 7y agoRed Hat ditched the user-accessible default system Python in RHEL 8, but offers ways to have several versions of Python available and ways for sysadmins to configure the target of /usr/bin/python. Anyway, we're finally near the end of supported environments caring about Python 2, so the difference between pip and pip3 will stop causing most of us problems soon... (Yeah, I know some people will use Python 2 beyond EOL, but at this point that's their task and the task of whomever they pay for assistance, not everyone else's.)
- vorg 7y ago> I know some people will use Python 2 beyond EOL, but at this point that's their task and the task of whomever they pay for assistance, not everyone else's Virtually every common OS (i.e. Windows, iOS, and Linux) provides Python 2.7 by calling `python`, and Python 3.x by calling `python3` so it's more than "some people" using Python beyond EOL -- it's two languages being used simultaneously. This is what most languages do when they make a breaking upgrade, e.g. Perl 5.x and Perl 6, or Apache Groovy (which ships two compilers in its Groovy 2 download bundle, i.e. the Groovy 1 compliant one used by Gradle and Jenkins etc, and the later 2012 one with the invoke-dynamic capabilities added. Two weeks ago, the Groovy project managers announced that Groovy 3 would keep on doing this, putting the rewritten parser into the compiler which no-one uses, and keeping the main compiler at Groovy 1 capabilities.)
- johnhattan 7y agoJust tried it. Looks like the latest Windows update installs a stub that sends the Windows app-store to the Python installer page if you type "Python" from the command line. FWIW, the publisher for the MS app-store Python is "Python Software Foundation" and it, far as I can tell, is just ordinary Python and not some MS-only weirdness. It adds start menu links to the Python REPL and the IDLE tool.
- makomk 7y agoApparently it does have some quirks due to Microsoft Store limitations, but it is an official and otherwise-complete release of Python: https://docs.python.org/3/using/windows.html#the-microsoft-store-package https://docs.python.org/3/using/windows.html#the-microsoft-s...
- make3 7y agoyou didn't read the article
- johnhattan 7y agoYes I did. I just wanted to relate my personal experience with it. Sometimes I'll see an article about something new just to discover that it's actually for an update that's a couple of weeks away. In this case, I just wanted to verify that it's working as advertised.
- GordonS 7y agoThat actually seems like a pretty good solution to me, lowering the bar to entry for those that want to give it a try, while leaving it optional.
- noname120 7y agoIt looks like this update breaks already-installed Python execution if its position in the PATH environment variable is after the WindowsApps folder. [1] [1] https://devblogs.microsoft.com/python/python-in-the-windows-10-may-2019-update/#comments-35 https://devblogs.microsoft.com/python/python-in-the-windows-...
- ChrisSD 7y agoThat is how PATH works. An installer would have to be doing something seriously wonky to get that wrong.
- noname120 7y agoThey could have used another mechanism than PATH.
- vetinari 7y agobash does exactly that - it has command_not_found_handle function and distributions define it, so they can offer package installation for any command not found.
- vbezhenar 7y agoIMO installer should check existing PATH and warn user that this installation will change his python executable.
- mwcampbell 7y agoYep, I ran into this some months ago with an insider build. IIRC though, I had manually added Python to my PATH. So I just adjusted the order and kept using my existing Python install.
- sametmax 7y agoThat's why any good tutorial on Python for Windows recommend using the "py -x.y" command, and not the "python" command.
- fnord123 7y agoIs this going to freeze everyone at Python 3.7 in the same way that CPython had been stuck on C89 basically forever because Microsoft refuses to fully support C99: https://www.mail-archive.com/python-dev@python.org/msg92514.html https://www.mail-archive.com/python-dev@python.org/msg92514....
- kevin_b_er 7y agoMicrosoft declared back in 2011 that Microsoft will never support the now 20 year old C standard. The MSVC compiler should be considered deprecated and removed in favor of something like llvm with MSVC system headers like Chrome does. The actual compiler isn't really a C Compiler anymore. http://www.drdobbs.com/cpp/interview-with-herb-sutter/231900562 http://www.drdobbs.com/cpp/interview-with-herb-sutter/231900...
- ChrisSD 7y agoNo. This feature is essentially just a link to the Microsoft Store page for Python. The C89 issue is completely unrelated.
- sametmax 7y agoNot only Python is not installed (the command is a stub), but linux distributions have been shipping Python forever, and it never froze anybody. It's a matter of how you support upgrading, now what you provide out of the box.
- fnord123 7y ago>It's a matter of how you support upgrading, now what you provide out of the box. Absolutely!
- ufmace 7y agoI haven't ready anything solid on it yet, but hopefully, since it's in the Windows store, it will be regularly updated.
- pjmlp 7y agoBecause C++ is the future of systems programming on Windows. If you want to hold on to C, there is clang and GCC. There are multiple occurrences of this statements from Microsoft employees blogs and talks, apparently some keep missing it. And actually VC++ compatibility with ISO C has been updated to the extent required by ISO C++, meaning C11 standard library, and some language constructs that were considered relevant by major customers.
- neuland 7y agoA lot of people are mentioning Apple removing scripting languages at the same time as Windows is adding it. The stub is nice for learners. But ultimately I like Apple's decision to remove them. You should not be relying on system installed interpreters, because you end up with an ancient, unmaintained version. And you are co-mingling all your dependencies with whatever else is installed. Everyone should be using virtualenv. And it should be easier to use virtualenv.
- anthony_barker 7y agoDisagree... there is tops of vbs around. why? It's default. Fought with a bank for months to use python but ended up with perl scripts on Solaris back in the day... Why? Perl came with Solaris. Having a trusted base and scripts that are easily auditable is good from a infosec perspective.
- m463 7y agoI've seen lots of companies do what Apple is doing, and it always makes the platform less valuable. Why can't Apple just install a few languages and keep up with them? It will basically kill them on the platform if they're not in common use. I suspect the people making these decisions believe it's good for apple's brand, but I think it will lead to an inward-looking insular culture.
- sys_64738 7y agoTherein lies python’s biggest weakness. You effectively are containerizing the runtime to be sure your code will work. This is why languages like C++ are compiled to platform executable or why Java has byte run code (or whatever it’s called).
- IshKebab 7y agoTo be fair even with C++ you have to distribute some dependencies, e.g. MSVCRT. It's just that that is a lot easier and more efficient than distributing a copy of Python with every program that uses it, which is what currently happens on Windows.
- zer0faith 7y agoDeceptive title.
- nimbius 7y agosort of a selective use case here, but im an automotive mechanic that started learning python to track engine firmware, mileages, and tools at work. I always did this on a raspberry pi, partly because it makes doing computer stuff a bit more approachable than the ole black and beige dell laptop. We have windows desktops for the office area, but I never once considered using them for this. Do people develop python in Windows? is there any distinct advantage? example: the pi costs $30 and a used keyboard/monitor from a pawn shop, but anything with windows is way more expensive.
- joenathanone 7y agoIf you are already using Windows and run into a solution for a problem you are trying to solve that uses Python. This is my use case, there are lots of useful tools and scripts that need Python to run.
- cicero 7y agoI use Windows in my office and I also develop Python software to accomplish some tasks related to my job. If I really had to save money, I might consider a Raspberry Pi, but they are less reliable (SD Card versus robust SSD) and are not as fast. Also, I need Microsoft Office for my job, so Windows makes the most sense all the way around. If you are looking solely at Python software development, a faster, more reliable machine is always helpful, but some may prefer Linux or MacOS over Windows. All that said, the Pi is a great way to break into software development at a low cost.
- enumjorge 7y agoI’m a little confused by your first question. I’m going to guess you’re mostly used to interacting with Windows to browse the web, use Office, or other software specific to your business. In that case, yes, that same computer can be used to program python and people do it all the time. A computer is a computer. Yes there are some advantages, but those aren’t Windows specific. The advantages also apply to traditional desktops/laptops running MacOS or Linux. There are tools written for those platforms that won’t be available on the pi, although the raspberry pi ecosystem is rich enough that that won’t matter much. There’s also the specs of the machine. A beefier machine can power multiple monitors that can let you see more code at a time. That’s just surface level. We can chat more if you’re interested. Having said that, sounds like what you have right now is working for you. There’s no need to switch to something else if you’re making progress. It’s pretty cool that you got started this way. I wasn’t aware that python is used by car mechanics.
- tmaly 7y agoI am still waking up but when I read the title, I thought it was about Python self updating itself. Glad to see some love from Microsoft for Python
- floki999 7y agoBased on experience, I’d rather install my own Python environment than rely on Microsoft’s suggestion of what I should install. This is Microsoft folks - there is >always< a catch.
- wnevets 7y ago> every install of Windows will include python and python3 commands that take you directly to the Python store page. Does that mean its not actually pre-installed but just super easy to install?
- teh_klev 7y agoThat's pretty much what this means.
- MarcScott 7y agoThis is great for learners looking to write their first few lines of code. No more wondering which Python version to install, or having to check the box to have Python added to your path. Now we just need a better bundled IDE. Idle is a horrible first editor, but the added burden of installing a better IDE means it's the one most often used by beginners.
- Mister_Snuggles 7y agoI've been using Visual Studio Code for my Python development lately, it seems like it would be a sensible choice to bundle (or install on demand) with Windows.
- MarcScott 7y agoVS Code has too steep a learning curve for someone who has never even written Hello World! Learning to code is hard enough, without having to learn a new software UI, especially if all you've ever done on a computer is browse Facebook and write Word documents. If you want a great example of a beginner's/child's first IDE, have a look at SonicPi
- pfranz 7y agoI remember in college being thrown into Visual Studio. I got things to work basically from a checklist. For the longest time includes and building/linking were mysteries done in the background. I feel like a lot of people were "programming by coincidence." I think I still hold a grudge and prefer the command line to compile (which is its own mess).
- Mister_Snuggles 7y agoThere is a bit of a learning curve, but some sensible defaults and bundled extensions could go a long way to help new users along. Perhaps a "playground" mode, similar to what XCode has, would help as well.
- electronstudio 7y agoI recently taught a class[0] on Python programming for children where we used the Mu[1] editor. Mu bundles Python with the editor in a single download so it is very easy for beginners to get started. [0] https://github.com/electronstudio/pygame-zero-book/ https://github.com/electronstudio/pygame-zero-book/ [1] https://codewith.mu/ https://codewith.mu/
- jarjoura 7y agoI like that Microsoft is moving more of its stuff to their store in a way that encourages people to use it. The desktop is becoming a powerful tool for getting work done, and I think this is a great move.
- growlist 7y agoOh god, here we go. So now there's yet another way for multiple Python installs to clash.
- floki999 7y agoMicrosoft wants to spoon-feed beginner Python programmers their way, via their ‘community’. It really is unnecessary. In time, this will lead to classic Microsoft lock-in or dependency. I’ve seen this happen time and time again. As much as I’ve been a big fan of Microsoft dev tooling since the mid 90’s, I think Microsoft and other vendor’s newly-found open-source and Linux evangelism will, in the long-run, be a disservice to those communities.
- catchmeifyoucan 7y agoFigured this out by accident yesterday - a pleasant surprise. Didn't realize it was a result of the new feature. Nice work.
- nevi-me 7y agoCan we please have "Stability in the Windows 10 May Update". It's nice that Microsoft's giving us free updates, but Python support, a new terminal, and all the other things would be more appreciated if our machines remained reliable while before the features.
- chaostheory 7y agoLooking at the bigger trend, it feels like recently MS is doing everything it can to engage developers. imo Apple is doing the opposite with bad keyboards and the continued refusal to give developers a reasonably priced, expandable box like the ancient G models or the old cheese grater product line.
- Eli_P 7y agoMicrosoft also provides CNTK and CNTK-GPU[1], which can be used as a backend for Keras. That could make life easier to kick off with machine learning by providing correct libraries for GPU. If you ever tried to install not-the-latest Tensorflow for the oldster graphics card you may know what I'm talking about, all that wading through a variety of lib versions. Nah, good news anyways. [1] https://docs.microsoft.com/en-us/cognitive-toolkit/setup-windows-python?tabs=cntkpy26 https://docs.microsoft.com/en-us/cognitive-toolkit/setup-win...
- todd8 7y agoIn the past when I needed a calculator on someone’s Mac, I just started Python in a terminal and typed in expressions to be evaluated. It was nice to be able to find it on any Mac and it’s much nicer to type into Python’s REPL than clicking on a calculator’s GUI buttons. Now, Windows machines will have Python and Macs may not. On Macs and Linux I can still use the bc command instead (it’s an old Unix command) but it’s far less handy than Python. See the bc man page. There’s also dc, the even less used, reverse Polish notation calculator. It is a standard Unix command that predates bc. Interestingly, the dc “language” is older than C, Awk, Perl, or any other programming language still found on Unix systems. It is implemented in C’s predecessor, the language B. You can tell that bc and dc are early Unix commands from their names, many of the oldest Unix commands are just two characters long.
- j0e1 7y agoI like how this is also your bio (about)!
- ygra 7y agoFor me on Windows that quick command-line calculator has been PowerShell for a while.
- dullgiulio 7y agoOr bash, just $((1+1)).
- yegle 7y agoThis is presumably integer calculation only?
- slig 7y agoFWIW, macOS has Spotlight Search and it works as a calculator as well. (⌘+SPACE to activate it).
- todd8 7y ago
- rileymat2 7y agoThere are a lot of comments talking about how you should not rely on the built in version of python or whatever instead installing it yourself, but it is really nice being able to pass people scripts that you know will work with the stock operating system with no additional installs.
- tracker1 7y agoBut, how dare Microsoft know people go looking for Python... those damned metrics are all evil, evil I say!
- romwell 7y agoMy favorite part about people raging about telemetrics is that for many of them, their primary computer usage is using Facebook and Google services. Somehow, MS missed out on spreading a PSA that any website and web app is 100% telemetrics because that's literally what a web app is (telemetrics with feedback!).
- teekert 7y agoOh lord dat Terminal, it makes my retina bleed. Please hurry with that new shiny goodness [0]. [0] https://www.theverge.com/2019/5/6/18527870/microsoft-windows-terminal-command-line-tool https://www.theverge.com/2019/5/6/18527870/microsoft-windows...
- amnesiac_200 7y agoWhy is there windows python Team and what do they do. Python is 1 of N slow scripting languages that has sod all to do with Windows. This is not a language that should be treated differently to a dozen others.
- prirun 7y agoIf they wanted Python on Windows, why didn't they just include it like they include every other command? It's miniscule in size to have Python stored on every Windows computer compared to the size of Windows. Why go through the "Windows Store" to get it? I hate all these stores. They are the ultimate gatekeepers and give big companies huge amounts of power and control.