Live data from Hacker News

Python past, present, and future with Guido van Rossum [audio]

talkpython.fm

41–50 of 151 posts

Re: Python past, present, and future with Guido van Rossum [audio]

#41
post #35
post #22

Earlier quoted context omitted.

This discussion goes now on since Python 3 was released. Python 2 will not be supported or developed after 2020.

Yes, I know. The question is if this decision is correct, given that apparently a lot of people and companies just doesn't plan to switch no matter what.

Well, if you want people to switch to 3, you do need to apply some pressure by end-of-lifing 2.

Re: Python past, present, and future with Guido van Rossum [audio]

#42
post #5

I've recently had to start writing python professionally and I'm not super impressed. My previous python experience was writing small services and fixing others code. Now that I'm working on larger "apps" it feels like a 90's language with all the rough edges and warts. I'd rather being working in a language with better language services and tooling, but python has numpy and all these data viz libraries so whatcha go…

Haskell and OCaml are also 90's languages. The rise of Python at the expense of safer, typed, faster, more principled languages makes me very sad for the state of our industry. I do not even believe it is the best choice for teaching programming to children. It heavily mixes and conflates higher-level ideas like lambdas and list comprehensions with imperative programming and mutation (the assignment syntax "x=x+1" must be especially confusing to high-school kids). It also throws in "object-oriented programming" constructs into the mix too.

Re: Python past, present, and future with Guido van Rossum [audio]

#43
post #5

I've recently had to start writing python professionally and I'm not super impressed. My previous python experience was writing small services and fixing others code. Now that I'm working on larger "apps" it feels like a 90's language with all the rough edges and warts. I'd rather being working in a language with better language services and tooling, but python has numpy and all these data viz libraries so whatcha go…

The other week I've learned a bit of Python history I didn't know about. After listening to Steve Pemberton's talk ([1]), guys in the audience with ties to CWI (Amsterdam uni) pointed out to me that the language he and his team were developing at CWI was the precursor of what came to be Python. Specifically, they did usability studies with non-developers (but still engineers) to come up with ABC/Python's syntax (see…

Minor detail, but CWI (Centrum Wiskunde & Informatica - Centre for Mathematics and Computer Science) isn't a Dutch university. It is a national research institute, and part of the Dutch organization for scientific research NWO. Many members of the research staff teach at a Dutch university though.

Re: Python past, present, and future with Guido van Rossum [audio]

#44
post #35

Earlier quoted context omitted.

Yes, I know. The question is if this decision is correct, given that apparently a lot of people and companies just doesn't plan to switch no matter what.

Well, if you want people to switch to 3, you do need to apply some pressure by end-of-lifing 2.

Or you could offer something in 3 which will make switching enticing enough for people to do so of their own free will.

Re: Python past, present, and future with Guido van Rossum [audio]

#45

Earlier quoted context omitted.

It IS a 90s language! ;-) My main issue with Python is distribution. Oh, you're using it on Windows? No worries, just install matplotlib using pip. Oh wait, you need to install cygwin and a C compiler and for some weird reason it won't compile but no worries there is a website with Unofficial Windows Binaries for Python Extension Packages but it's still not working.... Numerical computations and plotting are also my…

Windows still doesn't come with a C compiler? At least it finally comes with ssh, right?

Windows still doesn't come with a C compiler

Not with the default install, but it's a free download from microsoft if you want one (either as part of an IDE or as a standalone command line tool). An official native port of OpenSSH is in beta and should be ready to ship officially soon.

Re: Python past, present, and future with Guido van Rossum [audio]

#46

Earlier quoted context omitted.

I'm not saying they are, I don't think I've used the language enough to be able to tell what's pythonic and what's not. It's just that I think the language support could be better: why defining a function and calling it right after? That's what lambdas are for.

> why defining a function and calling it right after? Documentation.

You could have named closures, so that's hardly a valid reason.

Re: Python past, present, and future with Guido van Rossum [audio]

#47
post #5

I've recently had to start writing python professionally and I'm not super impressed. My previous python experience was writing small services and fixing others code. Now that I'm working on larger "apps" it feels like a 90's language with all the rough edges and warts. I'd rather being working in a language with better language services and tooling, but python has numpy and all these data viz libraries so whatcha go…

I had to work with Python a few times in the past year and I really have to agree. The lack of proper lambdas, closures, its reliance on mutable data structures and imperative idioms, and the useless distinction between statements and expressions makes it feel like somebody was trying to write a modern language but for some reason stopped halfway. For example: you can't assign the result of an "if" statement. Why? Be…

>For example: you can't assign the result of an "if" statement. Why? Because it's a SyntaxError, no real reason. There is even an "ifExp" in the language grammar, but that's only for inline ifs.

Do you mean something like a ternary operator? You can certainly do: x='foo' if condition else 'bar'.

In fact you can even do multiple assigments: (x,y) = ('foo1','foo2') if condition else ('foo3', 'foo4')

where 'Foo' may also be a function call.

>I think people feel like it's unpythonic and instead pollute the namespace with singleton classes that only have one method.

There's a few pycon talks on "a single method class should not be a class" but I'd say that's the single responsibility principle at its purest along with the community needing to move to more lightweight structures like namedtuples.

Re: Python past, present, and future with Guido van Rossum [audio]

#48

Earlier quoted context omitted.

It IS a 90s language! ;-) My main issue with Python is distribution. Oh, you're using it on Windows? No worries, just install matplotlib using pip. Oh wait, you need to install cygwin and a C compiler and for some weird reason it won't compile but no worries there is a website with Unofficial Windows Binaries for Python Extension Packages but it's still not working.... Numerical computations and plotting are also my…

Windows still doesn't come with a C compiler? At least it finally comes with ssh, right?

Might be an off-topic, but recently I learned that Windows does come with a C# compiler. It's included in the .NET runtime, which is installed by default nowadays. This might be useful if you're extremely lazy to install any language implementation. It is quite amazing since even Ubuntu doesn't ship a C/C++ compiler by default.

Re: Python past, present, and future with Guido van Rossum [audio]

#49

Earlier quoted context omitted.

It IS a 90s language! ;-) My main issue with Python is distribution. Oh, you're using it on Windows? No worries, just install matplotlib using pip. Oh wait, you need to install cygwin and a C compiler and for some weird reason it won't compile but no worries there is a website with Unofficial Windows Binaries for Python Extension Packages but it's still not working.... Numerical computations and plotting are also my…

Windows still doesn't come with a C compiler? At least it finally comes with ssh, right?

It doesn't really matter when it comes to Python, for the most part. Most big packages now distribute wheels which include pre-compiled binaries. I.e. no need for a compilation toolchain on Python. It's been like this for a year or so, I think, and continuously getting better.

Re: Python past, present, and future with Guido van Rossum [audio]

#50
post #4

The unofficial python 2.8 is here: https://github.com/naftaliharris/tauthon

Serious question: What are the reasons people are still preferring Python2 over Python3? (No troll intended)

On most OSes, open a terminal and type 'python', and you get a python2 REPL. That's reason enough to write a lot of scripty admin / automation stuff in python2. And then if you need to extend that, it's easy to just continue on in python2. It's there, it works, it's stable, you don't have to maintain versions in case of security issues, the OS package does it for you.
Post reply on HN