4 ms·
Minor point, but he puts Python in with software that "almost never breaks" on update. Really? Am I missing something? Maybe he just hasn't tried running Python
by acobster 9y ago
Minor point, but he puts Python in with software that "almost never breaks" on update. Really? Am I missing something? Maybe he just hasn't tried running Python 3 yet...
- orf 9y agoYou're missing that Python 3 is clearly labeled as a breaking change? He is talking about changes that are not labeled as breaking changes but do infact break things.
- mikeash 9y agoPython 3 is a similar language with a similar name to Python 2. It shouldn’t be considered an update, nor applied as one.
- magicalhippo 9y agoYet the Python 3 executable has the same name as the Python 2 executable...
- vetinari 9y agoOnly on Arch and Windows... All other Linux distribution have python3 and macOS binary is also python3.
- computerfriend 9y agoNo they don't. At least one of them has a number after it.
- magicalhippo 9y agoI got both Python 2 and Python 3 installed on my machine, from the official distribution, and both have "python.exe", no numbers.
- majewsky 9y agoYet a huge number of Python modules are both valid Python 2 code and Python 3 code.
- mikeash 9y agoSure, they're similar enough that a single file can be valid in both with less effort than most language pairs. That doesn't mean it's an update, any more than C is an upgrade to Lisp because I can make a file that's valid in both.
- taeric 9y agoI get the idea, but this is user hostile. If it shouldn't be seen as an upgrade, it should have had a new name. :( Especially if it is going to be a forced migration someday? (I'm assuming python2 support will eventually stop?)
- detaro 9y agoOne major breaking release in how many years, clearly announced as such and with parallel support for the old version for a long time (so you didn't just update python and it broke). Fits quite well under "almost never breaks". Or have their been issues with minor releases? I haven't come across any I can remember, but I might be wrong. Maybe some things were deprecated and then removed?
- sieabah 9y agoIf you're talking about Python 2 -> 3, I think you're misunderstanding his point.
- dec0dedab0de 9y agoHe says Python packages, many of which bend over backwards to maintain backwards compatibility. (I wish Django were one of them)
- acobster 9y agoCan't edit orig comment...yes I misunderstood the point about explicit breaking changes. I recently watched Rich Hickey's "spec-ulation" talk referenced elsewhere in this thread, which takes an extreme view (tl;dr SemVer sucks and we shouldn't have breaking changes ever), so that's where my mind was. Thanks for the clarity, all.